This commit is contained in:
SchreiberM 2020-03-16 17:21:25 +01:00
parent 813cc148ef
commit b3330ad1cc
8 changed files with 97 additions and 14 deletions

View File

@ -38,6 +38,8 @@ Module ModuleRuntimeVariables
Public USER_USERNAME As String
Public DT_USER2MODULE As DataTable
Public CHANGES_IN_ADMINISTRATION As Boolean = False
Public USER_IS_ADMIN As Boolean = False
Public USER_ID
Public USER_PRENAME

View File

@ -38,7 +38,7 @@ Public Class clsPatterns
Public Const MAX_TRY_COUNT = 500
Private Shared regex As Regex = New Regex("{#(\w+)#([\w\s_-]+)}+")
Private Shared MyRegex As Regex = New Regex("{#(\w+)#([\:\.\w\s_-]+)}+")
Private Shared allPatterns As New List(Of String) From {PATTERN_WMI, PATTERN_CTRL, PATTERN_IDBA, PATTERN_USER, PATTERN_INT}
Private Shared complexPatterns As New List(Of String) From {PATTERN_WMI, PATTERN_CTRL, PATTERN_IDBA}
Private Shared simplePatterns As New List(Of String) From {PATTERN_USER, PATTERN_INT}
@ -131,7 +131,7 @@ Public Class clsPatterns
While ContainsPatternAndValue(result, PATTERN_USER, USER_VALUE_EMAIL)
result = ReplacePattern(result, PATTERN_USER, email)
End While
While ContainsPatternAndValue(result, PATTERN_USER, USER_VALUE_PROFILE_ID)
result = ReplacePattern(result, PATTERN_USER, profileId)
End While
@ -236,7 +236,7 @@ Public Class clsPatterns
End Function
Private Shared Function ContainsPattern(input As String, type As String) As String
Dim elements As MatchCollection = regex.Matches(input)
Dim elements As MatchCollection = MyRegex.Matches(input)
For Each element As Match In elements
Dim t As String = element.Groups(1).Value
@ -250,7 +250,7 @@ Public Class clsPatterns
End Function
Public Shared Function GetNextPattern(input As String, type As String) As Pattern
Dim elements As MatchCollection = regex.Matches(input)
Dim elements As MatchCollection = MyRegex.Matches(input)
For Each element As Match In elements
' Pattern in input
@ -266,7 +266,7 @@ Public Class clsPatterns
End Function
Public Shared Function GetAllPatterns(input As String) As List(Of Pattern)
Dim elements As MatchCollection = regex.Matches(input)
Dim elements As MatchCollection = MyRegex.Matches(input)
Dim results As New List(Of Pattern)
For Each element As Match In elements
@ -281,7 +281,7 @@ Public Class clsPatterns
End Function
Public Shared Function ReplacePattern(input As String, type As String, replacement As String) As String
Dim elements As MatchCollection = regex.Matches(input)
Dim elements As MatchCollection = MyRegex.Matches(input)
If IsNothing(replacement) Then
Return input
@ -300,7 +300,7 @@ Public Class clsPatterns
End Function
Private Shared Function ContainsPatternAndValue(input As String, type As String, value As String) As Boolean
Dim elements As MatchCollection = regex.Matches(input)
Dim elements As MatchCollection = MyRegex.Matches(input)
For Each element As Match In elements
' Pattern in input
@ -332,7 +332,7 @@ Public Class clsPatterns
End Function
Public Shared Function HasPattern(input As String, type As String) As Boolean
Dim matches = regex.Matches(input)
Dim matches = MyRegex.Matches(input)
For Each match As Match In matches
For Each group As Group In match.Groups
@ -355,7 +355,7 @@ Public Class clsPatterns
End Sub
Public Sub New(stringRepresentation As String)
Dim elements As MatchCollection = regex.Matches(stringRepresentation)
Dim elements As MatchCollection = MyRegex.Matches(stringRepresentation)
Dim first As Match = elements.Item(0)
Dim t As String = first.Groups(1).Value

View File

@ -190,6 +190,7 @@ Partial Class frmAdministration
Me.tsbStaticInfo = New DevExpress.XtraBars.BarStaticItem()
Me.BarButtonItem20 = New DevExpress.XtraBars.BarButtonItem()
Me.BarButtonItem21 = New DevExpress.XtraBars.BarButtonItem()
Me.bbtnItemFinishSQL = New DevExpress.XtraBars.BarButtonItem()
Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroup2 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
@ -1256,9 +1257,9 @@ Partial Class frmAdministration
'RibbonControl1
'
Me.RibbonControl1.ExpandCollapseItem.Id = 0
Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.BarButtonItem1, Me.BarButtonItem2, Me.BarButtonItem3, Me.BarButtonItem4, Me.BarButtonItem5, Me.BarButtonItem6, Me.BarButtonItem7, Me.BarButtonItem8, Me.BarButtonItem9, Me.BarButtonItem10, Me.BarButtonItem11, Me.BarButtonItem12, Me.BarButtonItem13, Me.BarButtonItem14, Me.BarButtonItem15, Me.BarButtonItem16, Me.BarButtonItem17, Me.BarButtonItem18, Me.BarButtonItem19, Me.tsbStaticInfo, Me.BarButtonItem20, Me.BarButtonItem21})
Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.BarButtonItem1, Me.BarButtonItem2, Me.BarButtonItem3, Me.BarButtonItem4, Me.BarButtonItem5, Me.BarButtonItem6, Me.BarButtonItem7, Me.BarButtonItem8, Me.BarButtonItem9, Me.BarButtonItem10, Me.BarButtonItem11, Me.BarButtonItem12, Me.BarButtonItem13, Me.BarButtonItem14, Me.BarButtonItem15, Me.BarButtonItem16, Me.BarButtonItem17, Me.BarButtonItem18, Me.BarButtonItem19, Me.tsbStaticInfo, Me.BarButtonItem20, Me.BarButtonItem21, Me.bbtnItemFinishSQL})
resources.ApplyResources(Me.RibbonControl1, "RibbonControl1")
Me.RibbonControl1.MaxItemId = 23
Me.RibbonControl1.MaxItemId = 24
Me.RibbonControl1.Name = "RibbonControl1"
Me.RibbonControl1.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage1})
Me.RibbonControl1.StatusBar = Me.RibbonStatusBar1
@ -1433,6 +1434,13 @@ Partial Class frmAdministration
Me.BarButtonItem21.Name = "BarButtonItem21"
Me.BarButtonItem21.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonItemStyles.Large
'
'bbtnItemFinishSQL
'
resources.ApplyResources(Me.bbtnItemFinishSQL, "bbtnItemFinishSQL")
Me.bbtnItemFinishSQL.Id = 23
Me.bbtnItemFinishSQL.ImageOptions.SvgImage = CType(resources.GetObject("bbtnItemFinishSQL.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.bbtnItemFinishSQL.Name = "bbtnItemFinishSQL"
'
'RibbonPage1
'
Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1, Me.RibbonPageGroup2, Me.RibbonPageGroup3})
@ -1449,6 +1457,7 @@ Partial Class frmAdministration
Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonItem5)
Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonItem6)
Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonItem21)
Me.RibbonPageGroup1.ItemLinks.Add(Me.bbtnItemFinishSQL)
Me.RibbonPageGroup1.Name = "RibbonPageGroup1"
resources.ApplyResources(Me.RibbonPageGroup1, "RibbonPageGroup1")
'
@ -1732,4 +1741,5 @@ Partial Class frmAdministration
Friend WithEvents BarButtonItem20 As DevExpress.XtraBars.BarButtonItem
Friend WithEvents BarButtonItem21 As DevExpress.XtraBars.BarButtonItem
Friend WithEvents lblPriority As Label
Friend WithEvents bbtnItemFinishSQL As DevExpress.XtraBars.BarButtonItem
End Class

View File

@ -3420,6 +3420,33 @@
LjdsMS44LDEuM2wxLjQtMS40bC0xLjMtMS44ICBjMC4zLTAuNSwwLjYtMS4yLDAuOC0xLjhMMzIsMjV6
IE0yNCwyNmMtMS4xLDAtMi0wLjktMi0yczAuOS0yLDItMmMxLjEsMCwyLDAuOSwyLDJTMjUuMSwyNiwy
NCwyNnoiIGNsYXNzPSJCbHVlIiAvPg0KPC9zdmc+Cw==
</value>
</data>
<data name="bbtnItemFinishSQL.Caption" xml:space="preserve">
<value>SQL Abschluss</value>
</data>
<data name="bbtnItemFinishSQL.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAN4DAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9Cgku
WWVsbG93e2ZpbGw6I0ZGQjExNTt9CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQoJLkdyZWVue2ZpbGw6IzAz
OUMyMzt9CgkuUmVke2ZpbGw6I0QxMUMxQzt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh
Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQo8L3N0eWxl
Pg0KICA8ZyBpZD0iRmluaXNoTWVyZ2UiPg0KICAgIDxwYXRoIGQ9Ik0xMy4yLDE4Yy0wLjMsMC42LTAu
NiwxLjMtMC44LDJINnYtMkgxMy4yeiBNMTIuMSwyNEg0VjJoMTZ2MTAuNGMwLjYtMC4yLDEuMy0wLjMs
Mi0wLjRWMWMwLTAuNS0wLjUtMS0xLTEgICBIM0MyLjUsMCwyLDAuNSwyLDF2MjRjMCwwLjUsMC41LDEs
MSwxaDkuNEMxMi4yLDI1LjQsMTIuMSwyNC43LDEyLjEsMjR6IE02LDE2aDguNWMwLjYtMC44LDEuNC0x
LjQsMi4yLTJINlYxNnogTTYsOGgxMlY2SDZWOHoiIGNsYXNzPSJCbGFjayIgLz4NCiAgICA8cmVjdCB4
PSI2IiB5PSIxMCIgd2lkdGg9IjEyIiBoZWlnaHQ9IjIiIHJ4PSIwIiByeT0iMCIgY2xhc3M9IlllbGxv
dyIgLz4NCiAgICA8cGF0aCBkPSJNMjMsMTRjLTUsMC05LDQtOSw5YzAsNSw0LDksOSw5czktNCw5LTlD
MzIsMTgsMjgsMTQsMjMsMTR6IE0yMiwyOGwtNS01bDItMmwzLDNsNS01bDIsMkwyMiwyOHoiIGNsYXNz
PSJHcmVlbiIgLz4NCiAgPC9nPg0KPC9zdmc+Cw==
</value>
</data>
<data name="RibbonControl1.Location" type="System.Drawing.Point, System.Drawing">
@ -4111,6 +4138,12 @@
<data name="&gt;&gt;BarButtonItem21.Type" xml:space="preserve">
<value>DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;bbtnItemFinishSQL.Name" xml:space="preserve">
<value>bbtnItemFinishSQL</value>
</data>
<data name="&gt;&gt;bbtnItemFinishSQL.Type" xml:space="preserve">
<value>DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;RibbonPage1.Name" xml:space="preserve">
<value>RibbonPage1</value>
</data>

View File

@ -1033,7 +1033,7 @@ Public Class frmAdministration
Me.TBPM_PROFILEBindingSource.EndEdit()
Me.TBPM_PROFILETableAdapter.Update(DD_DMSLiteDataSet.TBPM_PROFILE)
tsbStaticInfo.Caption = $"ProfileData saved - {Now.ToLongTimeString}"
CHANGES_IN_ADMINISTRATION = True
Else
tsbStaticInfo.Caption = ""
End If
@ -1174,7 +1174,7 @@ Public Class frmAdministration
WHERE GUID = {guid}"
If ClassDatabase.Execute_non_Query(sql, True) Then
tsbStaticInfo.Caption = $"Final index saved - {Now.ToLongTimeString}"
tsbStaticInfo.Caption = $"Final index saved - {Now.ToLongTimeString} - RESTART NECESSARY"
End If
End If
@ -1235,6 +1235,7 @@ Public Class frmAdministration
Dim oUpdate As String = $"Update TBPM_PROFILE SET CHANGED_WHO = '{USER_USERNAME}', SQL_VIEW = '{oForm.SQLCommand.Replace("'", "''")}' WHERE GUID = {CURRENT_ProfilGUID}"
If ClassDatabase.Execute_non_Query(oUpdate) = True Then
tsbStaticInfo.Caption = $"Profile SQL saved - {Now.ToLongTimeString}"
CHANGES_IN_ADMINISTRATION = True
End If
End If
@ -1244,4 +1245,30 @@ Public Class frmAdministration
LOGGER.Error(ex)
End Try
End Sub
Private Sub bbtnItemFinishSQL_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles bbtnItemFinishSQL.ItemClick
Try
profile_guid = PROFILGUIDTextBox.Text
CURRENT_ProfilGUID = PROFILGUIDTextBox.Text
CURRENT_DESIGN_TYPE = "SQL_BTNFINISH"
Dim oSQL = $"SELECT SQL_BTN_FINISH FROM TBPM_PROFILE WHERE GUID = {CURRENT_ProfilGUID}"
Dim oldSQL = ClassDatabase.Execute_Scalar(oSQL, CONNECTION_STRING)
Dim oForm As New frmSQL_DESIGNER() With {.SQLCommand = oldSQL}
Dim oResult = oForm.ShowDialog()
If oResult = DialogResult.OK Then
If oldSQL <> oForm.SQLCommand Then
Dim oUpdate As String = $"Update TBPM_PROFILE SET CHANGED_WHO = '{USER_USERNAME}', SQL_BTN_FINISH = '{oForm.SQLCommand.Replace("'", "''")}' WHERE GUID = {CURRENT_ProfilGUID}"
If ClassDatabase.Execute_non_Query(oUpdate) = True Then
tsbStaticInfo.Caption = $"Profile SQLFinish saved - {Now.ToLongTimeString}"
CHANGES_IN_ADMINISTRATION = True
End If
End If
End If
Catch ex As Exception
MsgBox("Error in Saving Profile SQLFinish: " & vbNewLine & vbNewLine & ex.Message)
LOGGER.Error(ex)
End Try
End Sub
End Class

View File

@ -1082,6 +1082,7 @@ Public Class frmFormDesigner
tslblAenderungen.Visible = True
tslblAenderungen.Text = "Änderungen gespeichert - " & Now
CHANGES_IN_ADMINISTRATION = True
Return True
Catch ex As Exception
@ -1112,6 +1113,7 @@ Public Class frmFormDesigner
Dim oSQL = $"EXEC PRPM_CHANGE_CONTROL_CAPTION {guid},{escapedValue},'{USER_USERNAME}','{USER_LANGUAGE}'"
ClassDatabase.Execute_non_Query(oSQL)
End If
CHANGES_IN_ADMINISTRATION = True
Return True
End If

View File

@ -834,6 +834,13 @@ Public Class frmMain
TimerRefresh.Enabled = False
End If
If CHANGES_IN_ADMINISTRATION = True Then
CURRENT_DT_PROFILES = ClassDatabase.Return_Datatable("select * from TBPM_PROFILE where ACTIVE = 1")
Dim oSQL = $"SELECT * FROM VWPM_CONTROL_INDEX ORDER BY PROFIL_ID,Y_LOC, X_LOC"
DTVWCONTROLS_INDEX = ClassDatabase.Return_Datatable(oSQL)
CHANGES_IN_ADMINISTRATION = False
End If
Dim oExpression = $"GUID = {CURRENT_ProfilGUID}"
CURRENT_DT_PROFILE.Clear()
CURRENT_DT_PROFILES.Select(oExpression).CopyToDataTable(CURRENT_DT_PROFILE, LoadOption.PreserveChanges)
@ -851,6 +858,8 @@ Public Class frmMain
BASEDATA_DT_PROFILE_SEARCHES_SQL.Clear()
BASEDATA_DT_PROFILES_SEARCHES_SQL.Select(oExpression, "TAB_INDEX").CopyToDataTable(BASEDATA_DT_PROFILE_SEARCHES_SQL, LoadOption.PreserveChanges)
'CURRENT_DT_PROFILE_SEARCHES_SQL = ClassDatabase.Return_Datatable(String.Format("select * from TBPM_PROFILE_SEARCH where PROFILE_ID = {0} AND TYPE = 'SQL' AND ACTIVE = 1 ORDER BY TAB_INDEX", CURRENT_ProfilGUID))
frmValidator.Show()
'Decide_Load()

View File

@ -43,7 +43,7 @@ Public Class frmSQL_DESIGNER
End If
If (CURRENT_DESIGN_TYPE = "INPUT_INDEX") Or CURRENT_DESIGN_TYPE = "FINAL_INDEX" Then
If (CURRENT_DESIGN_TYPE = "INPUT_INDEX") Or CURRENT_DESIGN_TYPE = "FINAL_INDEX" Or CURRENT_DESIGN_TYPE = "SQL_BTNFINISH" Then
If CURRENT_DT_SQL_CONFIG_TABLE.Rows.Count = 1 Then
cmbConnection.SelectedValue = CURRENT_DT_SQL_CONFIG_TABLE.Rows(0).Item("CONNECTION_ID")
cmbConnection.FindStringExact(CURRENT_DT_SQL_CONFIG_TABLE.Rows(0).Item("CON_STRING"))