MS Administration

This commit is contained in:
2021-12-08 10:53:03 +01:00
parent 6be8b1bdb5
commit f9d5d8adb7
10 changed files with 3269 additions and 435 deletions

View File

@@ -1,4 +1,5 @@
Imports DevExpress.XtraLayout
Imports System.Text.RegularExpressions
Imports DevExpress.XtraLayout
Imports DigitalData.Modules.Logging
Public Class frmAdmin_Globix
@@ -19,13 +20,14 @@ Public Class frmAdmin_Globix
End Sub
Private Sub frmAdmin_Globix_Load(sender As Object, e As EventArgs) Handles MyBase.Load
'TODO: Diese Codezeile lädt Daten in die Tabelle "DSIDB_Stammdaten.VWIDB_OBJECT_STORE". Sie können sie bei Bedarf verschieben oder entfernen.
'TODO: Diese Codezeile lädt Daten in die Tabelle "GlobixDataset.TBGI_REGEX_DOCTYPE". Sie können sie bei Bedarf verschieben oder entfernen.
InitializeBaseForm(My.LogConfig)
Try
TBDD_DOKUMENTARTTableAdapter.Connection.ConnectionString = My.DatabaseECM.CurrentSQLConnectionString
TBDD_DOKUMENTARTTableAdapter.Fill(Me.GlobixDataset.TBDD_DOKUMENTART, PrimaryKey)
TBDD_INDEX_MANTableAdapter.Connection.ConnectionString = My.DatabaseECM.CurrentSQLConnectionString
Me.TBGI_REGEX_DOCTYPETableAdapter.Connection.ConnectionString = My.DatabaseECM.CurrentSQLConnectionString
Me.VWIDB_OBJECT_STORETableAdapter.Connection.ConnectionString = My.DatabaseIDB.CurrentSQLConnectionString
Me.VWIDB_OBJECT_STORETableAdapter.Fill(Me.DSIDB_Stammdaten.VWIDB_OBJECT_STORE)
Me.VWIDB_BE_ATTRIBUTETableAdapter.Connection.ConnectionString = My.DatabaseIDB.CurrentSQLConnectionString
@@ -59,6 +61,22 @@ Public Class frmAdmin_Globix
.DataTable = GlobixDataset.TBDD_INDEX_AUTOM,
.AddedWhoEdit = ADDED_WHOTextBoxAutoAttribut,
.ChangedWhoEdit = CHANGED_WHOTextEditAutoAttribut
},
New ClassDetailPages.DetailPage With {
.Name = "Auto Attributes",
.TabPage = XtraTabPageAutoSelect,
.BindingSource = TBGI_REGEX_DOCTYPEBindingSource,
.DataTable = GlobixDataset.TBGI_REGEX_DOCTYPE,
.AddedWhoEdit = AddedWhoAutoSelect,
.ChangedWhoEdit = ChangedWhoAutoSelect
},
New ClassDetailPages.DetailPage With {
.Name = "Dynamic Folder",
.TabPage = XtraTabPageDynamicFolder,
.BindingSource = TBDD_DOKUMENTARTBindingSource,
.DataTable = GlobixDataset.TBDD_DOKUMENTART,
.AddedWhoEdit = TextEditErstelltWer,
.ChangedWhoEdit = TextEditGeandertWer
}
})
@@ -69,6 +87,11 @@ Public Class frmAdmin_Globix
Else
TextEditChangedWho_ManIndex.EditValue = My.Application.User.UserName
End If
Dim oDragDropManager As New ClassDragDrop(My.LogConfig)
oDragDropManager.AddGridView(viewAssignedGroups)
oDragDropManager.AddGridView(viewAvailableGroups)
oDragDropManager.AddGridView(viewAssignedUsers)
oDragDropManager.AddGridView(viewAvailableUsers)
Catch ex As Exception
ShowErrorMessage(ex)
End Try
@@ -95,9 +118,6 @@ Public Class frmAdmin_Globix
RibbonPageGroup1.Text = e.Page.Name
End If
End Sub
Private Sub ResetMessages()
labelStatus.Visibility = DevExpress.XtraBars.BarItemVisibility.Never
End Sub
@@ -146,7 +166,10 @@ Public Class frmAdmin_Globix
Case XtraTabPageAutoIndexe.Name
Save_AutoIndexe(oPage)
Load_Attribute_Auto()
Case XtraTabPageAutoSelect.Name
Save_AutoSelect(oPage)
Case XtraTabPageDynamicFolder.Name
Update_Doctype()
End Select
oPage.IsInsert = False
@@ -193,7 +216,23 @@ Public Class frmAdmin_Globix
Return False
End Try
End Function
Private Function Save_AutoSelect(oPage As ClassDetailPages.DetailPage) As Boolean
Try
TBGI_REGEX_DOCTYPEBindingSource.EndEdit()
If GlobixDataset.TBGI_REGEX_DOCTYPE.GetChanges() IsNot Nothing Then
If Pages.Current.IsInsert Then
AddedWhoAutoSelect.Text = My.Application.User.UserName
Else
ChangedWhoAutoSelect.Text = My.Application.User.UserName
End If
TBGI_REGEX_DOCTYPEBindingSource.EndEdit()
TBGI_REGEX_DOCTYPETableAdapter.Update(Pages.Current.DataTable)
End If
Return True
Catch ex As Exception
Return False
End Try
End Function
Private Function Insert_Doctype() As Boolean
Try
Dim oIns = $"INSERT INTO [TBDD_DOKUMENTART] ([BEZEICHNUNG] ,[OBJEKTTYP] ,[EINGANGSART_ID] ,[KURZNAME] ,[ZIEL_PFAD] ,[BESCHREIBUNG]
@@ -223,7 +262,7 @@ Public Class frmAdmin_Globix
Try
Dim oUpd = $"UPDATE TBDD_DOKUMENTART SET [BEZEICHNUNG] = '{TextEditBezeichnung.Text}' ,[KURZNAME] = '{TextEditKurzname.Text}' ,[BESCHREIBUNG] = '{TextEditBeschreibung.Text}'
,[DUPLICATE_HANDLING] = '{ComboBoxEditDupl_handling.EditValue}',[AKTIV] = '{AKTIVCheckBox.Checked}',[SEQUENCE] = {SEQUENCENumericUpDown.Value}
,[NAMENKONVENTION] = '{TextEditNamenkonvention.Text}',[GEANDERTWER] = '{My.Application.User.UserName}',IDB_OBJECT_STORE_ID = {IDB_OBJECT_STORE_IDComboBox.SelectedValue} WHERE GUID = {TextEditDoctypeID.Text}"
,[NAMENKONVENTION] = '{TextEditNamenkonvention.Text}', [FOLDER_FOR_INDEX] = '{FOLDER_FOR_INDEXTextEdit.Text}',[GEANDERTWER] = '{My.Application.User.UserName}',IDB_OBJECT_STORE_ID = {IDB_OBJECT_STORE_IDComboBox.SelectedValue} WHERE GUID = {TextEditDoctypeID.Text}"
Return My.DatabaseECM.ExecuteNonQuery(oUpd)
@@ -249,6 +288,8 @@ Public Class frmAdmin_Globix
Select Case oPage.TabPage.Name
Case XtraTabPageAutoIndexe.Name
oPage.DataTable.Columns.Item("DOCTYPE_ID").DefaultValue = PrimaryKey
Case XtraTabPageAutoSelect.Name
oPage.DataTable.Columns.Item("DOCTYPE_ID").DefaultValue = PrimaryKey
Case Else
oPage.DataTable.Columns.Item("DOK_ID").DefaultValue = PrimaryKey
End Select
@@ -262,6 +303,8 @@ Public Class frmAdmin_Globix
TextEditAddedWho_ManIndex.Text = My.Application.User.UserName
Case XtraTabPageAutoIndexe.Name
ADDED_WHOTextBoxAutoAttribut.Text = My.Application.User.UserName
Case XtraTabPageAutoSelect.Name
End Select
Dim oNewRecord As DataRowView = oPage.BindingSource.AddNew()
@@ -302,19 +345,41 @@ Public Class frmAdmin_Globix
End Try
End Sub
Private Sub Load_AutoSelect()
Try
Me.TBGI_REGEX_DOCTYPETableAdapter.Fill(Me.GlobixDataset.TBGI_REGEX_DOCTYPE, TextEditDoctypeID.Text)
Catch ex As System.Exception
System.Windows.Forms.MessageBox.Show(ex.Message)
End Try
End Sub
Private Sub XtraTabControl2_SelectedPageChanged(sender As Object, e As DevExpress.XtraTab.TabPageChangedEventArgs) Handles XtraTabControl2.SelectedPageChanged
Dim oPage = Pages.GetDetailPage(e.Page)
If oPage IsNot Nothing Then
Pages.Current = oPage
Select Case oPage.TabPage.Name
Case XtraTabPageAutoIndexe.Name
Load_Attribute_Auto()
Case XtraTabPageManIndexe.Name
Load_INDEXMAN()
Case XtraTabPageAutoSelect.Name
Load_AutoSelect()
Case XtraTabPageDynamicFolder.Name
cmbAllAttributes.Items.Clear()
For Each oRowMan As DataRow In Me.GlobixDataset.TBDD_INDEX_MAN.Rows
cmbAllAttributes.Items.Add(oRowMan.Item("WD_INDEX") & "#M")
Next
For Each oRowMan As DataRow In Me.GlobixDataset.TBDD_INDEX_AUTOM.Rows
cmbAllAttributes.Items.Add(oRowMan.Item("INDEXNAME") & "#A")
Next
End Select
'Else
' If XtraTabControl2.SelectedTabPageIndex = 3 Then
' sd
' End If
End If
Select Case oPage.TabPage.Name
Case XtraTabPageAutoIndexe.Name
Load_Attribute_Auto()
Case XtraTabPageManIndexe.Name
Load_INDEXMAN()
End Select
End Sub
@@ -324,7 +389,7 @@ Public Class frmAdmin_Globix
Dim oForm As New frmSQLDesigner() With {
.SQLCommand = oSQLbefore, .DesignType = "GI_ATTRIBUTE_AUTO",
.ConnectionID = CONNECTION_IDTextBox1.Text,
.AutoAttributID = GUID_AUTOATTRIBUTETextBox.Text
.AutoAttributID = GUIDTextBoxAutoAttribute.Text
}
Dim oResult = oForm.ShowDialog()
If oSQLbefore <> oForm.SQLCommand Then
@@ -337,4 +402,208 @@ Public Class frmAdmin_Globix
End If
End Sub
Private Sub XtraTabControl1_SelectedPageChanged(sender As Object, e As DevExpress.XtraTab.TabPageChangedEventArgs) Handles XtraTabControl1.SelectedPageChanged
Select Case XtraTabControl1.SelectedTabPageIndex
Case 1
gridAssignedGroups.DataSource = ClassGIDatatables.GetAssignedGroups(TextEditDoctypeID.Text)
gridAvailableGroups.DataSource = ClassGIDatatables.GetAvailableGroups(TextEditDoctypeID.Text)
gridAssignedUsers.DataSource = ClassGIDatatables.GetAssignedUsers(TextEditDoctypeID.Text)
gridAvailableUsers.DataSource = ClassGIDatatables.GetAvailableUsers(TextEditDoctypeID.Text)
End Select
End Sub
Private Sub gridAssignedUsers_DragDrop(sender As Object, e As DragEventArgs) Handles gridAssignedUsers.DragDrop
Try
Dim data As String = e.Data.GetData(DataFormats.Text)
Dim userId As Integer = data.Split("|")(0)
Dim profileId As Integer = TextEditDoctypeID.Text
ClassGIDatatables.AddUserToProfile(userId, profileId)
gridAssignedUsers.DataSource = ClassGIDatatables.GetAssignedUsers(profileId)
gridAvailableUsers.DataSource = ClassGIDatatables.GetAvailableUsers(profileId)
Catch ex As Exception
Logger.Error(ex)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler beim Hinzufügen eines Users:")
End Try
End Sub
Private Sub gridAvailableUsers_DragDrop(sender As Object, e As DragEventArgs) Handles gridAvailableUsers.DragDrop
Try
Dim data As String = e.Data.GetData(DataFormats.Text)
Dim userId As Integer = data.Split("|")(0)
Dim profileId As Integer = TextEditDoctypeID.Text
ClassGIDatatables.RemoveUserFromProfile(userId, profileId)
gridAssignedUsers.DataSource = ClassGIDatatables.GetAssignedUsers(profileId)
gridAvailableUsers.DataSource = ClassGIDatatables.GetAvailableUsers(profileId)
Catch ex As Exception
Logger.Error(ex)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler beim Hinzufügen eines Users:")
End Try
End Sub
Private Sub gridAssignedGroups_DragDrop(sender As Object, e As DragEventArgs) Handles gridAssignedGroups.DragDrop
Try
Dim data As String = e.Data.GetData(DataFormats.Text)
Dim groupId As Integer = data.Split("|")(0)
Dim profileId As Integer = TextEditDoctypeID.Text
ClassGIDatatables.AddGroupToProfile(groupId, profileId)
gridAssignedGroups.DataSource = ClassGIDatatables.GetAssignedGroups(profileId)
gridAvailableGroups.DataSource = ClassGIDatatables.GetAvailableGroups(profileId)
Catch ex As Exception
Logger.Error(ex)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler beim Hinzufügen einer Gruppe:")
End Try
End Sub
Private Sub gridAvailableGroups_DragDrop(sender As Object, e As DragEventArgs) Handles gridAvailableGroups.DragDrop
Try
Dim data As String = e.Data.GetData(DataFormats.Text)
Dim groupId As Integer = data.Split("|")(0)
Dim profileId As Integer = TextEditDoctypeID.Text
ClassGIDatatables.RemoveGroupFromProfile(groupId, profileId)
gridAssignedGroups.DataSource = ClassGIDatatables.GetAssignedGroups(profileId)
gridAvailableGroups.DataSource = ClassGIDatatables.GetAvailableGroups(profileId)
Catch ex As Exception
Logger.Error(ex)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler beim Hinzufügen einer Gruppe:")
End Try
End Sub
Private Sub SimpleButton1_Click(sender As Object, e As EventArgs) Handles SimpleButton1.Click
If Not ComboBoxEditAAttrFileParam.SelectedItem Is Nothing Then
If GUIDTextBoxAutoAttribute.Text <> "" Then
Dim value As String
Select Case ComboBoxEditAAttrFileParam.SelectedIndex
Case 0 : value = "$filename_ext"
Case 1 : value = "$filename"
Case 2 : value = "$extension"
Case 3 : value = "$FileCreateDate"
Case 4 : value = "$FileCreatedWho"
Case 5 : value = "$DateDDMMYYY"
Case 6 : value = "$Username"
Case 7 : value = "$Usercode"
End Select
If value <> "" Then
VALUETextBox.Text = value
End If
End If
End If
End Sub
Private Sub SimpleButton3_Click(sender As Object, e As EventArgs) Handles SimpleButton3.Click
Dim str As String
If (FOLDER_FOR_INDEXTextEdit.Text = "") = False Then
str = FOLDER_FOR_INDEXTextEdit.Text & "\"
End If
If cmbAllAttributes.SelectedIndex <> -1 Then
Dim oPattern As String
If cmbAllAttributes.Text.EndsWith("#M") Then
oPattern = clsPatterns.WrapPatternValue(clsPatterns.PATTERN_ATTR_MAN, cmbAllAttributes.Text)
Else
oPattern = clsPatterns.WrapPatternValue(clsPatterns.PATTERN_ATTR_AUTO, cmbAllAttributes.Text)
End If
Me.FOLDER_FOR_INDEXTextEdit.Text = str & oPattern
cmbAllAttributes.SelectedIndex = -1
ElseIf cmbCrFolderDate.SelectedIndex <> -1 Then
Dim oPattern As String = clsPatterns.WrapPatternValue(clsPatterns.PATTERN_INT, cmbCrFolderDate.Text)
Me.FOLDER_FOR_INDEXTextEdit.Text = str & oPattern
cmbCrFolderDate.SelectedIndex = -1
ElseIf txtcrFoldermanuell.Text <> "" Then
Me.FOLDER_FOR_INDEXTextEdit.Text = str & txtcrFoldermanuell.Text
txtcrFoldermanuell.Text = ""
End If
Dim oPage = Pages.Current
Save_AutoIndexe(oPage)
End Sub
Private Sub SimpleButton4_Click(sender As Object, e As EventArgs) Handles SimpleButton4.Click
Try
If Regex.IsMatch(REGEXTextBox.Text, txtDateinameTest.Text) Then
MsgBox("The RegEx resulted in a proper match!", MsgBoxStyle.Information, "Perfect:")
Else
MsgBox("No Match- There might be an error in the RegEx!", MsgBoxStyle.Information, "Something wrong:")
End If
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Exclamation, "Error in Testing Regex: ")
End Try
End Sub
Private Sub BarButtonItem2_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItemDelete.ItemClick
ResetMessages()
Dim result As MsgBoxResult
Try
Dim oPage = Pages.Current
Select Case oPage.TabPage.Name
Case XtraTabPageProfile.Name
If My.Application.User.Language = "de-DE" Then
result = MessageBox.Show("Sind Sie sicher dass Sie das ausgewählte Profil löschen wollen?", Text, MessageBoxButtons.YesNo, MessageBoxIcon.Question)
Else
result = MessageBox.Show("Are you sure you want to delete the selected profile?", Text, MessageBoxButtons.YesNo, MessageBoxIcon.Question)
End If
If result = MsgBoxResult.Yes Then
Dim oSQL = $"EXEC PRDD_GLOBIX_DELETE_DOCTYPE {TextEditDoctypeID.Text}"
If My.DatabaseECM.ExecuteNonQuery(oSQL) Then
TBDD_DOKUMENTARTTableAdapter.Fill(Me.GlobixDataset.TBDD_DOKUMENTART, PrimaryKey)
Load_TabData()
End If
End If
Case XtraTabPageManIndexe.Name
If My.Application.User.Language = "de-DE" Then
result = MessageBox.Show("Sind Sie sicher dass Sie das ausgewählte manuelle Attribut löschen wollen?", Text, MessageBoxButtons.YesNo, MessageBoxIcon.Question)
Else
result = MessageBox.Show("Are you sure you want to delete this manual attribute?", Text, MessageBoxButtons.YesNo, MessageBoxIcon.Question)
End If
If result = MsgBoxResult.Yes Then
TBDD_INDEX_MANTableAdapter.Delete(GUIDTextBoxMANINDEX.Text)
Load_INDEXMAN()
End If
Case XtraTabPageAutoIndexe.Name
If My.Application.User.Language = "de-DE" Then
result = MessageBox.Show("Sind Sie sicher dass Sie das ausgewählte automatische Attribut löschen wollen?", Text, MessageBoxButtons.YesNo, MessageBoxIcon.Question)
Else
result = MessageBox.Show("Are you sure you want to delete the selected auto attribute?", Text, MessageBoxButtons.YesNo, MessageBoxIcon.Question)
End If
If result = MsgBoxResult.Yes Then
TBDD_INDEX_AUTOMTableAdapter.Delete(GUIDTextBoxAutoAttribute.Text)
Load_Attribute_Auto()
End If
Case XtraTabPageAutoSelect.Name
If My.Application.User.Language = "de-DE" Then
result = MessageBox.Show("Sind Sie sicher dass Sie die ausgewählte Regex löschen wollen?", Text, MessageBoxButtons.YesNo, MessageBoxIcon.Question)
Else
result = MessageBox.Show("Are you sure you want to delete the selected regex?", Text, MessageBoxButtons.YesNo, MessageBoxIcon.Question)
End If
If result = MsgBoxResult.Yes Then
TBGI_REGEX_DOCTYPETableAdapter.Delete(GUIDTextBoxAutoSelect.Text)
Load_AutoSelect()
End If
End Select
oPage.IsInsert = False
ShowStatus($"{oPage.Name} deleted!")
Catch ex As Exception
ShowErrorMessage(ex)
End Try
End Sub
End Class