TaskFlow/app/DD_PM_WINDREAM/frmAdministration.vb

1349 lines
60 KiB
VB.net

Imports System.ComponentModel
Imports System.Data.SqlClient
Imports System.IO
Imports DD_LIB_Standards
Imports DevExpress.XtraGrid
Imports DevExpress.XtraGrid.Views.Grid
Public Class frmAdministration
Private UNSAVED_CHANGES_PROFILE As Boolean = False
Private UNSAVED_CHANGES_FI As Boolean = False
Private email As New ClassEmail
Public profile_guid As Integer = 0
Dim formloaded As Boolean
Private INSERT_ACTIVE As Boolean = False
Private Sub frmFormDesigner_Load(sender As Object, e As System.EventArgs) Handles Me.Load
formloaded = False
UNSAVED_CHANGES_PROFILE = False
Try
TBPM_KONFIGURATIONTableAdapter.Connection.ConnectionString = CONNECTION_STRING
TBPM_PROFILETableAdapter.Connection.ConnectionString = CONNECTION_STRING
TBPM_TYPETableAdapter.Connection.ConnectionString = CONNECTION_STRING
TBDD_USERTableAdapter.Connection.ConnectionString = CONNECTION_STRING
FNPM_GET_FREE_USER_FOR_PROFILETableAdapter.Connection.ConnectionString = CONNECTION_STRING
TBDD_GROUPSTableAdapter.Connection.ConnectionString = CONNECTION_STRING
TBPROFILE_USERTableAdapter.Connection.ConnectionString = CONNECTION_STRING
TBPROFILE_GROUPTableAdapter.Connection.ConnectionString = CONNECTION_STRING
TBPM_PROFILE_FINAL_INDEXINGTableAdapter.Connection.ConnectionString = CONNECTION_STRING
TBPM_PROFILE_CONTROLSTableAdapter.Connection.ConnectionString = CONNECTION_STRING
TBPM_PROFILE_FILESTableAdapter.Connection.ConnectionString = CONNECTION_STRING
TBDD_CONNECTIONTableAdapter.Connection.ConnectionString = CONNECTION_STRING
TBDD_CONNECTIONTableAdapter.Fill(DD_DMSLiteDataSet.TBDD_CONNECTION)
Refresh_Profildaten()
Dim dragDropManager = New ClassDragDrop()
dragDropManager.AddGridView(viewAssignedUsers)
dragDropManager.AddGridView(viewAvailableUsers)
dragDropManager.AddGridView(viewAvailableGroups)
dragDropManager.AddGridView(viewAssignedGroups)
tabctrl_Profilkonfig.SelectedIndex = 0
Catch ex As Exception
LOGGER.Error(ex)
MsgBox("Fehler bei Laden der Wertehilfen und Konfig-Daten: " & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Achtung:")
End Try
If IDB_ACTIVE = True Then
IDBData.Init()
lblSearch.Text = "Datei-Suche (SQL):"
btnWMopenSuche.Visible = False
SORT_BY_LATESTCheckBox.Visible = False
PRIORITYNumericUpDown.Visible = False
lblPriority.Visible = False
Else
lblSearch.Text = "windream-Suche:"
btnWMopenSuche.Visible = True
SORT_BY_LATESTCheckBox.Visible = True
PRIORITYNumericUpDown.Visible = True
lblPriority.Visible = True
End If
ObjekttypenEintragen()
Indexe_eintragen()
End Sub
Sub Indexe_eintragen()
If cmbObjekttypen.Text <> "" Then
Me.PM_VEKTOR_INDEXComboBox.Items.Clear()
Me.cmbLOGIndex.Items.Clear()
Me.PM_VEKTOR_INDEXComboBox.Items.Add("")
Me.cmbLOGIndex.Items.Add("")
cmbLOGIndex.Enabled = True
Label9.Enabled = True
If IDB_ACTIVE = False Then
PM_VEKTOR_INDEXComboBox.Enabled = True
Label4.Enabled = True
If cmbObjekttypen.Text = "DEFAULT" And IDB_ACTIVE = False Then
MsgBox("The Objecttype is invalid!", MsgBoxStyle.Exclamation)
Exit Sub
End If
Try
MyIndicies_Types = New List(Of Integer)
MyIndicies = New List(Of String)
MyIndicies = WINDREAM.GetIndicesByObjecttype(cmbObjekttypen.Text).ToList()
If MyIndicies IsNot Nothing Then
Dim i As Integer = 0
For Each index As String In MyIndicies
Dim _vektorString As Boolean = False
Dim oIndexType = WINDREAM.GetTypeOfIndex(i)
i += 1
MyIndicies_Types.Add(oIndexType)
Select Case oIndexType
Case 4097
_vektorString = True
Case 36865
_vektorString = True
Case Else
_vektorString = False
End Select
If _vektorString = True Then
Me.PM_VEKTOR_INDEXComboBox.Items.Add(index)
Me.cmbLOGIndex.Items.Add(index)
End If
Next
End If
'MyIndicies_Types = New List(Of Integer)
'MyIndicies = WINDREAM.GetIndicesByObjecttype(cmbObjekttypen.Text).ToList()
'For Each i In MyIndicies
' Dim type = WINDREAM.GetTypeOfIndex(i)
' MyIndicies_Types.Add(type)
'Next
Catch ex As Exception
LOGGER.Error(ex)
MsgBox("Error in GetIndices windream: " & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Achtung:")
PM_VEKTOR_INDEXComboBox.SelectedIndex = -1
cmbLOGIndex.SelectedIndex = -1
End Try
If Me.PM_VEKTOR_INDEXComboBox.Text <> "" Then
PM_VEKTOR_INDEXComboBox.SelectedIndex = PM_VEKTOR_INDEXComboBox.FindStringExact(Me.PM_VEKTOR_INDEXComboBox.Text)
Else
PM_VEKTOR_INDEXComboBox.SelectedIndex = -1
End If
If Me.cmbLOGIndex.Text <> "" Then
cmbLOGIndex.SelectedIndex = cmbLOGIndex.FindStringExact(Me.cmbLOGIndex.Text)
Else
cmbLOGIndex.SelectedIndex = -1
End If
Else '############## IDB ACTIVE #################
PM_VEKTOR_INDEXComboBox.Enabled = False
Label4.Enabled = False
Try
For Each oRow As DataRow In IDBData.DTVWIDB_BE_ATTRIBUTE.Rows
Select Case CInt(oRow.Item("TYP_ID"))
Case 8
Me.PM_VEKTOR_INDEXComboBox.Items.Add(oRow.Item("ATTR_TITLE"))
Me.cmbLOGIndex.Items.Add(oRow.Item("ATTR_TITLE"))
End Select
Next
MyIndicies_Types = New List(Of Integer)
MyIndicies = IDBData.GetIndicesByBE(cmbObjekttypen.Text).ToList()
For Each oIndex In MyIndicies
Dim type = IDBData.GetTypeOfIndex(oIndex)
MyIndicies_Types.Add(type)
Next
Catch ex As Exception
LOGGER.Error(ex)
MsgBox("Error in GetIndices IDB: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End Try
End If
End If
End Sub
Sub Refresh_Profildaten()
Try
TBPM_PROFILETableAdapter.Fill(DD_DMSLiteDataSet.TBPM_PROFILE)
TBPM_TYPETableAdapter.Fill(DD_DMSLiteDataSet.TBPM_TYPE)
TBPM_KONFIGURATIONTableAdapter.Fill(DD_DMSLiteDataSet.TBPM_KONFIGURATION)
'Me.TBPM_USERTableAdapter.Fill(Me.DD_DMSLiteDataSet.TBDD_USER)
'TBDD_GROUPSTableAdapter.FillByProfileId_NotAssigned(DD_DMSLiteDataSet.TBDD_GROUPS, PROFILGUIDTextBox.Text)
If tabctrl_Profilkonfig.SelectedIndex = 1 Then
CURRENT_OBJECTTYPE = cmbObjekttypen.Text
If TabControl2.SelectedIndex = 1 Then
Refresh_Final_indexe()
End If
End If
Catch ex As Exception
LOGGER.Error(ex)
MsgBox("Fehler bei Refresh_Profildaten: " & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Achtung:")
End Try
End Sub
Private Sub ObjekttypenEintragen()
Me.cmbObjekttypen.Items.Clear()
If IDB_ACTIVE = False Then
Try
Dim oDokumentTypen As WINDREAMLib.WMObjects = WINDREAM.GetObjecttypesAsObjects()
If oDokumentTypen Is Nothing Then Exit Sub
For Each aType In oDokumentTypen
Me.cmbObjekttypen.Items.Add(aType.aName)
Next
Catch ex As Exception
LOGGER.Error(ex)
MsgBox("Es konnte keine Verbindung zum windream-Server hergestellt werden.", MsgBoxStyle.Critical, "Fehler beim Zugriff auf windream-Server")
End Try
Else
Dim oSQL = "SELECT GUID, TITLE FROM TBIDB_BUSINESS_ENTITY"
Dim oDT As DataTable = ClassDatabase.Return_Datatable_ConStr(oSQL, CONNECTION_STRING_IDB)
For Each oROW As DataRow In oDT.Rows
Me.cmbObjekttypen.Items.Add(oROW.Item(1))
Next
End If
End Sub
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles btnWMSuche.Click
If IDB_ACTIVE = True Then
CURRENT_DESIGN_TYPE = "IDB_SEARCH"
Dim oForm As New frmSQL_DESIGNER() With {.SQLCommand = Me.WD_SEARCHTextBox.Text}
Dim oResult = oForm.ShowDialog()
Me.WD_SEARCHTextBox.Text = oForm.SQLCommand
Else
If Not Me.WD_SEARCHTextBox.Text = "" Then
Me.dlgWindreamsuche.FileName = Me.WD_SEARCHTextBox.Text
End If
If Me.dlgWindreamsuche.ShowDialog = Windows.Forms.DialogResult.OK Then
Me.WD_SEARCHTextBox.Text = Me.dlgWindreamsuche.FileName
End If
End If
End Sub
Private Sub btnopenSuche_Click(sender As System.Object, e As System.EventArgs) Handles btnWMopenSuche.Click
Try
If Not Me.WD_SEARCHTextBox.Text = "" Then
Dim p As New Process()
p.StartInfo.FileName = Me.WD_SEARCHTextBox.Text
p.StartInfo.WindowStyle = ProcessWindowStyle.Normal
p.Start()
p.WaitForExit()
p.Close()
End If
Catch ex As Exception
LOGGER.Error(ex)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler bei öffnen der windream-Suche:")
End Try
End Sub
Private Sub TBPM_PROFILEBindingSource_AddingNew(sender As Object, e As System.ComponentModel.AddingNewEventArgs) Handles TBPM_PROFILEBindingSource.AddingNew
DD_DMSLiteDataSet.TBPM_PROFILE.ADDED_WHOColumn.DefaultValue = USER_USERNAME
DD_DMSLiteDataSet.TBPM_PROFILE.ADDED_WHENColumn.DefaultValue = Date.Now
DD_DMSLiteDataSet.TBPM_PROFILE.TYPEColumn.DefaultValue = 1
End Sub
Private Sub TBPM_PROFILEBindingSource_PositionChanged(sender As System.Object, e As System.EventArgs) Handles TBPM_PROFILEBindingSource.PositionChanged
If formloaded = False Then
Exit Sub
End If
If UNSAVED_CHANGES_PROFILE = True Or UNSAVED_CHANGES_FI = True Then
Dim oQuestion As String
If USER_LANGUAGE <> "de-DE" Then
oQuestion = "You have unsaved changes! Do You want to save them now?"
Else
oQuestion = "Achtung es gibt noch ungespeicherte Änderungen! Wollen Sie diese nun speichern?"
End If
Dim result As MsgBoxResult = MsgBox(oQuestion, MsgBoxStyle.YesNo, ADDITIONAL_TITLE)
'wenn Speichern ja
If result = MsgBoxResult.Yes Then
If UNSAVED_CHANGES_PROFILE = True Then
Save_Profile()
End If
If UNSAVED_CHANGES_FI = True Then
Save_FI()
End If
End If
End If
tsbStaticInfo.Caption = ""
Indexe_eintragen()
If tabctrl_Profilkonfig.SelectedIndex = 1 And TBPM_PROFILEBindingSource.Position <> -1 Then
Refresh_Final_indexe()
End If
End Sub
Private Sub btnmovetoFolderDialog_Click(sender As System.Object, e As System.EventArgs)
' wenn im Formular der OK-Button geklickt wurde
If Me.FolderBrowserDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then
' den Speicherort der windream-Suche in die TextBox eintragen
Me.MOVE2FOLDERTextBox.Text = Me.FolderBrowserDialog1.SelectedPath
End If
End Sub
Private Sub ADDED_WHOLabel_Click(sender As System.Object, e As System.EventArgs)
End Sub
Sub FillProfile_User(profileId As Integer)
Try
If Not IsNothing(profileId) Then
TBPROFILE_USERTableAdapter.Fill(DD_DMSLiteDataSet.TBPROFILE_USER, profileId)
TBPROFILE_GROUPTableAdapter.Fill(DD_DMSLiteDataSet.TBPROFILE_GROUP, profileId)
Me.FNPM_GET_FREE_USER_FOR_PROFILETableAdapter.Fill(Me.DD_DMSLiteDataSet.FNPM_GET_FREE_USER_FOR_PROFILE, profileId)
TBDD_GROUPSTableAdapter.FillByProfileId_NotAssigned(DD_DMSLiteDataSet.TBDD_GROUPS, profileId)
End If
Catch ex As Exception
LOGGER.Error(ex)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler beim Laden der User zu Profil:")
End Try
End Sub
Private Sub TBPM_USERBindingSource_AddingNew(sender As System.Object, e As System.ComponentModel.AddingNewEventArgs) Handles TBDD_USERBindingSource.AddingNew
DD_DMSLiteDataSet.TBDD_USER.ADDED_WHOColumn.DefaultValue = USER_USERNAME
End Sub
Private Function GetCurrentProfileId() As Integer
Dim rowView As DataRowView = viewAvailableProfiles.GetFocusedRow()
If IsNothing(rowView) = False Then
Dim profileId As Integer = rowView.Item("GUID")
Return profileId
Else : Return Nothing
End If
End Function
Private Sub viewAvailableProfiles_FocusedRowChanged(sender As Object, e As DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs) Handles viewAvailableProfiles.FocusedRowChanged
If TabControl1.SelectedIndex = 1 And formloaded Then
Try
Dim profileId As Integer = GetCurrentProfileId()
If Not IsNothing(profileId) Then
FillProfile_User(profileId)
End If
Catch ex As Exception
LOGGER.Error(ex)
MsgBox($"Error while calling FillProfile_User", MsgBoxStyle.Critical)
End Try
End If
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 = GetCurrentProfileId()
TBPROFILE_USERTableAdapter.CMDInsert(profileId, userId, USER_USERNAME)
FillProfile_User(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 = GetCurrentProfileId()
TBPROFILE_USERTableAdapter.CmdDelete(profileId, userId)
FillProfile_User(profileId)
Catch ex As Exception
LOGGER.Error(ex)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler beim Entfernen 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 = GetCurrentProfileId()
TBPROFILE_GROUPTableAdapter.CmdInsert(profileId, groupId, USER_USERNAME)
' TBPROFILE_USERTableAdapter.CMDInsert(profileId, userId, USER_USERNAME)
FillProfile_User(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 = GetCurrentProfileId()
TBPROFILE_GROUPTableAdapter.CmdDelete(profileId, groupId)
'TBPROFILE_USERTableAdapter.cmdDelete(userId)
FillProfile_User(profileId)
Catch ex As Exception
LOGGER.Error(ex)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler beim Entfernen einer Gruppe:")
End Try
End Sub
'Private Sub BindingNavigatorDeleteItem_Click(sender As System.Object, e As System.EventArgs)
' If viewAssignedUsers.GetSelectedRows().Length > 0 Then
' For Each rowHandle In viewAssignedUsers.GetSelectedRows()
' Dim rowView As DataRowView = viewAssignedUsers.GetRow(rowHandle)
' Dim userId As Integer = rowView.Item("GUID")
' TBPROFILE_USERTableAdapter.cmdDelete(userId)
' Next
' End If
'End Sub
'Sub Save_Konfiguration()
' TBPM_KONFIGURATIONBindingSource.EndEdit()
' If DD_DMSLiteDataSet.TBPM_KONFIGURATION.GetChanges Is Nothing = False Then
' GEAENDERTWERTextBox.Text = USER_USERNAME
' TBPM_KONFIGURATIONBindingSource.EndEdit()
' TBPM_KONFIGURATIONTableAdapter.Update(DD_DMSLiteDataSet.TBPM_KONFIGURATION)
' tstrpinfo.Text = "Konfiguration wurde erfolgreich gespeichert"
' tstrpinfo.Visible = True
' Else
' tstrpinfo.Visible = False
' End If
'End Sub
Private Sub frmProfileDesigner_Shown(sender As Object, e As System.EventArgs) Handles Me.Shown
TabControl1.SelectedIndex = 0
formloaded = True
RibbonPageGroup2.Enabled = False
End Sub
Private Sub Refresh_Final_indexe()
Try
'Me.lblSaveFinalIndex.Visible = False
If formloaded = False Then Exit Sub
If NAMETextBox.Text <> String.Empty Then
TBPM_PROFILE_FINAL_INDEXINGTableAdapter.Fill(FinalIndexDataSet.TBPM_PROFILE_FINAL_INDEXING, NAMETextBox.Text)
End If
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler bei Refresh_Final_indexe:")
End Try
End Sub
Private Sub TabControl2_SelectedIndexChanged(sender As System.Object, e As System.EventArgs) Handles tabctrl_Profilkonfig.SelectedIndexChanged
Select Case tabctrl_Profilkonfig.SelectedIndex
Case 0
RibbonPageGroup2.Enabled = False
Case 1
CURRENT_OBJECTTYPE = cmbObjekttypen.Text
Refresh_Final_indexe()
CancelFinalIndexInsert()
End Select
End Sub
Private Sub TabControl1_SelectedIndexChanged(sender As System.Object, e As System.EventArgs) Handles TabControl1.SelectedIndexChanged
Select Case TabControl1.SelectedIndex
Case 0
RibbonPageGroup1.Enabled = True
Case 1
RibbonPageGroup1.Enabled = False
RibbonPageGroup2.Enabled = False
If PROFILGUIDTextBox.Text = String.Empty Then
MsgBox("Kein Profil angelegt oder ausgeählt", MsgBoxStyle.Critical)
Else
FillProfile_User(PROFILGUIDTextBox.Text)
End If
End Select
End Sub
'Private Sub cmbIndexe_SelectedIndexChanged(sender As System.Object, e As System.EventArgs)
' If cmbIndexe.SelectedIndex <> -1 Then
' 'MsgBox(_windreamPM.GetTypeOfIndex(cmbIndexe.Text))
' btnInsert_FinalIndex.Enabled = True
' Me.btnStampDate.Visible = False
' Me.btnStampDate.Visible = False
' Dim type = _windreamPM.GetTypeOfIndex(cmbIndexe.Text)
' Select Case type
' Case 1 'String
' Me.lblIndex.Text = "Definieren Sie den festen Wert: (Text)"
' Me.lblIndex.Visible = True
' Me.txtindexwert_final.Visible = True
' Me.grbxSystemStamps.Visible = True
' Me.btnStampDate.Visible = True
' Me.btnStampDate.Visible = True
' Me.txtindexwert_final.Text = ""
' Me.chkbxfinalIndex.Visible = False
' Case 2 'Integer
' Me.lblIndex.Text = "Definieren Sie den festen Wert: (Zahl)"
' Me.lblIndex.Visible = True
' Me.txtindexwert_final.Visible = True
' Me.grbxSystemStamps.Visible = True
' Me.btnStampDate.Visible = True
' Me.btnStampDate.Visible = True
' Me.txtindexwert_final.Text = ""
' Me.chkbxfinalIndex.Visible = False
' Case 3 'Float
' Me.lblIndex.Text = "Definieren Sie den festen Wert: (Decimal)"
' Me.lblIndex.Visible = True
' Me.txtindexwert_final.Visible = True
' Me.grbxSystemStamps.Visible = False
' Me.txtindexwert_final.Text = ""
' Me.chkbxfinalIndex.Visible = False
' Case 4 ' Boolean
' Me.lblIndex.Text = "Wählen Sie den Boolean-Wert: (Ja/Nein)"
' Me.lblIndex.Visible = True
' Me.txtindexwert_final.Visible = False
' Me.grbxSystemStamps.Visible = False
' Me.chkbxfinalIndex.CheckState = CheckState.Checked
' Me.chkbxfinalIndex.Visible = True
' Case 5 'Date
' Me.lblIndex.Text = "Definieren Sie den festen Wert: (Date)"
' Me.lblIndex.Visible = True
' Me.txtindexwert_final.Visible = True
' Me.grbxSystemStamps.Visible = True
' Me.txtindexwert_final.Text = ""
' Me.chkbxfinalIndex.Visible = False
' Case 4107 'Vektor Zahl
' Me.lblIndex.Text = "Definieren Sie den festen Wert - Vektorfeld: (Zahl)"
' Me.lblIndex.Visible = True
' Me.txtindexwert_final.Visible = True
' Me.grbxSystemStamps.Visible = False
' Me.txtindexwert_final.Text = ""
' Me.chkbxfinalIndex.Visible = False
' Case 4097 'Vektor String
' Me.lblIndex.Text = "Definieren Sie den festen Wert - Vektorfeld: (Text)"
' Me.lblIndex.Visible = True
' Me.txtindexwert_final.Visible = True
' Me.grbxSystemStamps.Visible = True
' Me.btnStampDate.Visible = True
' Me.btnStampDate.Visible = True
' Me.txtindexwert_final.Text = ""
' Me.chkbxfinalIndex.Visible = False
' Case 4100 'Vektor Bool
' Me.lblIndex.Text = "Definieren Sie den festen Wert - Vektorfeld: (Boolean)"
' Me.lblIndex.Visible = True
' Me.txtindexwert_final.Visible = True
' Me.grbxSystemStamps.Visible = False
' Me.btnStampDate.Visible = False
' Me.txtindexwert_final.Text = ""
' Me.chkbxfinalIndex.Visible = False
' Case 4101 'Vektor Date
' Me.lblIndex.Text = "Definieren Sie den festen Wert - Vektorfeld: (Date)"
' Me.lblIndex.Visible = True
' Me.txtindexwert_final.Visible = True
' Me.grbxSystemStamps.Visible = True
' Me.btnStampDate.Visible = True
' Me.txtindexwert_final.Text = ""
' Me.chkbxfinalIndex.Visible = False
' Case 4104
' Me.lblIndex.Text = "Definieren Sie den festen Wert - Vektorfeld: (Currency)"
' Me.lblIndex.Visible = True
' Me.txtindexwert_final.Visible = True
' Me.grbxSystemStamps.Visible = False
' Me.txtindexwert_final.Text = ""
' Me.chkbxfinalIndex.Visible = False
' Case Else
' btnInsert_FinalIndex.Enabled = False
' End Select
' End If
'End Sub
'Private Sub btnInsert_FinalIndex_Click(sender As System.Object, e As System.EventArgs)
' Me.lblSaveFinalIndex.Visible = False
' If CheckBoxPMVEKTOR.Checked = False Then
' If cmbIndexe.SelectedIndex <> -1 Then
' Dim indexwert As String = ""
' If txtindexwert_final.Visible = True Then
' indexwert = txtindexwert_final.Text
' Else
' If chkbxfinalIndex.CheckState = CheckState.Checked Then
' indexwert = 1
' Else
' indexwert = 0
' End If
' End If
' Try
' TBPM_PROFILE_FINAL_INDEXINGTableAdapter.CmdInsert(PROFILGUIDTextBox.Text, cmbIndexe.Text, indexwert, USER_USERNAME, 0, "")
' Me.lblSaveFinalIndex.Text = "Der Index wurde erfolgreich angelegt - " & Now
' Me.lblSaveFinalIndex.Visible = True
' Catch ex As Exception
' MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler bei Anlage Final Index:")
' End Try
' End If
' Else
' If txtBezeichner.Text <> "" Then
' Dim indexwert As String = ""
' If txtindexwert_final.Visible = True Then
' indexwert = txtindexwert_final.Text
' Else
' If chkbxfinalIndex.CheckState = CheckState.Checked Then
' indexwert = "True"
' Else
' indexwert = "False"
' End If
' End If
' Try
' TBPM_PROFILE_FINAL_INDEXINGTableAdapter.CmdInsert(PROFILGUIDTextBox.Text, "[%VKT" & txtBezeichner.Text, indexwert, USER_USERNAME, 0, "")
' Me.lblSaveFinalIndex.Text = "Der Index wurde erfolgreich angelegt - " & Now
' Me.lblSaveFinalIndex.Visible = True
' Catch ex As Exception
' MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler bei Anlage Final Index in VEKTORFELD:")
' End Try
' End If
' End If
' Refresh_Final_indexe()
' INSERT_ACTIVE = False
' TabControlFinalIndices.Enabled = False
'End Sub
'Private Sub ToolStripButton1_Click_1(sender As System.Object, e As System.EventArgs)
' Refresh_Final_indexe()
' INSERT_ACTIVE = False
' TabControlFinalIndices.Enabled = False
' txtBezeichner.Text = String.Empty
' txtindexwert_final.Text = String.Empty
'End Sub
Private Sub tsbtnProfilkopieren_Click(sender As System.Object, e As System.EventArgs)
End Sub
Private Function Execute_SQL(SQL As String)
Try
Dim SQLconnection As New SqlClient.SqlConnection(CONNECTION_STRING)
Dim SQLcommand As New SqlCommand(SQL, SQLconnection)
SQLconnection.Open()
SQLcommand.ExecuteNonQuery()
SQLcommand.Dispose()
SQLconnection.Close()
Return True
Catch ex As Exception
LOGGER.Error(ex)
MsgBox("Fehler in Execute_SQL: " & vbNewLine & ex.Message & vbNewLine & vbNewLine & " SQL: " & SQL)
Return False
End Try
End Function
Private Sub CancelFinalIndexInsert()
INSERT_ACTIVE = False
BarButtonItem19.Visibility = DevExpress.XtraBars.BarItemVisibility.Never
BarButtonItem16.Visibility = DevExpress.XtraBars.BarItemVisibility.Always
TBPM_PROFILE_FINAL_INDEXINGBindingSource.CancelEdit()
End Sub
Private Sub ACTIVECheckBox_CheckedChanged(sender As Object, e As EventArgs) Handles ACTIVECheckBox.CheckedChanged
If ACTIVECheckBox.Checked Then
ACTIVECheckBox.BackColor = Color.Lime
Else
ACTIVECheckBox.BackColor = Color.Transparent
End If
End Sub
Private Sub ToolStripButton4_Click(sender As Object, e As EventArgs)
Cursor = Cursors.WaitCursor
frmUserKonfig_AddUsers.ShowDialog()
Load_User()
Cursor = Cursors.Default
End Sub
Private Sub ToolStripButton12_Click(sender As Object, e As EventArgs)
Load_User()
End Sub
Sub Load_User()
Try
Me.TBDD_USERTableAdapter.Fill(Me.DD_DMSLiteDataSet.TBDD_USER)
Catch ex As Exception
LOGGER.Error(ex)
MsgBox("Fehler bei LoadUsers: " & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler:")
End Try
End Sub
Private Sub cmbObjekttypen_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cmbObjekttypen.SelectedIndexChanged
If formloaded = False Then
Exit Sub
End If
If cmbObjekttypen.SelectedIndex <> -1 Then
Indexe_eintragen()
End If
End Sub
Private Sub Button3_Click_1(sender As Object, e As EventArgs)
Dim indexe = WINDREAM.GetIndicesByObjecttype(cmbObjekttypen.Text)
If indexe IsNot Nothing Then
For Each index As String In indexe
MsgBox(index & vbNewLine & WINDREAM.GetTypeOfIndex(index))
Select Case WINDREAM.GetTypeOfIndex(index)
Case 4107 'Vektor Zahl
Case 4097
Case Else
End Select
Next
End If
End Sub
'Private Sub TabControlFinalIndices_SelectedIndexChanged(sender As Object, e As EventArgs)
' If TabControlFinalIndices.SelectedIndex = 1 Then
' Me.cmbIndexe2.Enabled = False
' If INSERT_ACTIVE = True Then
' Me.cmbIndexe2.Enabled = True
' End If
' End If
'End Sub
'Private Sub btnSaveSQLCommand_Click(sender As Object, e As EventArgs)
' If INSERT_ACTIVE = True Then
' If cmbConnection.SelectedIndex = -1 Or SQL_COMMANDTextBox.Text = String.Empty Or cmbIndexe2.SelectedIndex = -1 Then
' MsgBox("Bitte wählen Sie eine Connection und definieren einen SQL-Befehl!", MsgBoxStyle.Exclamation)
' Exit Sub
' End If
' TBPM_PROFILE_FINAL_INDEXINGTableAdapter.CmdInsert(PROFILGUIDTextBox.Text, cmbIndexe2.Text, "SQL-Command", USER_USERNAME, cmbConnection.SelectedValue, SQL_COMMANDTextBox.Text)
' INSERT_ACTIVE = False
' Else
' Dim i, ID As Integer
' i = TBPM_PROFILE_FINAL_INDEXINGDataGridView.CurrentRow.Index
' ID = TBPM_PROFILE_FINAL_INDEXINGDataGridView.Item(0, i).Value
' If ID > 0 Then
' TBPM_PROFILE_FINAL_INDEXINGTableAdapter.cmdUpdateSQL(cmbConnection.SelectedValue, SQL_COMMANDTextBox.Text, USER_USERNAME, ID)
' End If
' End If
' Refresh_Final_indexe()
'End Sub
'Private Sub btnEditor_Click(sender As Object, e As EventArgs)
' Try
' Dim CONID = 0
' If cmbConnection.SelectedValue > 0 Then
' CONID = cmbConnection.SelectedValue
' End If
' If INSERT_ACTIVE = True Then
' If cmbIndexe2.SelectedIndex = -1 Then
' MsgBox("Bitte wählen Sie einen Index!", MsgBoxStyle.Exclamation)
' Exit Sub
' End If
' TBPM_PROFILE_FINAL_INDEXINGTableAdapter.CmdInsert(PROFILGUIDTextBox.Text, cmbIndexe2.Text, "SQL-Command", USER_USERNAME, CONID, SQL_COMMANDTextBox.Text)
' End If
' Dim i, ID As Integer
' Try
' i = TBPM_PROFILE_FINAL_INDEXINGDataGridView.CurrentRow.Index
' ID = TBPM_PROFILE_FINAL_INDEXINGDataGridView.Item(0, i).Value
' If ID > 0 Then
' CURRENT_INDEX_ID = ID
' CURRENT_DESIGN_TYPE = "FINAL_INDEX"
' CURRENT_SQL_COMAMND = SQL_COMMANDTextBox.Text
' CURRENT_SQL_CON = CONID
' CURRENT_ProfilGUID = PROFILGUIDTextBox.Text
' frmSQL_DESIGNER.ShowDialog()
' End If
' Catch ex As Exception
' clsLogger.Add("Error while operating on TBPM_PROFILE_FINAL_INDEXINGDataGridView: " & ex.Message)
' End Try
' Refresh_Final_indexe()
' Catch ex As Exception
' MsgBox("Error while opening SQLEditor: " & ex.Message, MsgBoxStyle.Critical)
' clsLogger.Add("Error while opening SQLEditor: " & ex.Message)
' End Try
'End Sub
'Private Sub TBPM_PROFILE_FINAL_INDEXINGDataGridView_CellClick(sender As Object, e As DataGridViewCellEventArgs)
' Try
' TabControlFinalIndices.Enabled = False
' TabControlFinalIndices.SelectedIndex = 0
' Dim i, ID As Integer
' i = TBPM_PROFILE_FINAL_INDEXINGDataGridView.CurrentRow.Index
' ID = TBPM_PROFILE_FINAL_INDEXINGDataGridView.Item(0, i).Value
' If ID > 0 Then
' Dim sql = String.Format("SELECT T.*, T1.BEZEICHNUNG AS CON_STRING FROM TBPM_PROFILE_FINAL_INDEXING T,TBDD_CONNECTION T1 WHERE T.GUID = {0} AND T.CONNECTION_ID = T1.GUID ", ID)
' CURRENT_DT_SQL_CONFIG_TABLE = ClassDatabase.Return_Datatable(sql, True)
' Dim Type = TBPM_PROFILE_FINAL_INDEXINGDataGridView.Item(2, i).Value
' If Type = "SQL-Command" Then
' Dim Indexname = TBPM_PROFILE_FINAL_INDEXINGDataGridView.Item(1, i).Value
' TabControlFinalIndices.Enabled = True
' TabControlFinalIndices.SelectedIndex = 1
' cmbIndexe2.Text = Indexname
' cmbConnection.SelectedValue = CURRENT_DT_SQL_CONFIG_TABLE.Rows(0).Item("CONNECTION_ID")
' cmbConnection.FindStringExact(CURRENT_DT_SQL_CONFIG_TABLE.Rows(0).Item("CON_STRING"))
' SQL_COMMANDTextBox.Text = CURRENT_DT_SQL_CONFIG_TABLE.Rows(0).Item("SQL_COMMAND")
' End If
' End If
' Catch ex As Exception
' MsgBox("Error while loading final Index: " & ex.Message, MsgBoxStyle.Critical)
' clsLogger.Add("Error while loading final Index: " & ex.Message)
' End Try
'End Sub
'Private Sub btnShowConnections_Click(sender As Object, e As EventArgs)
' frmConnection.ShowDialog()
'End Sub
'Private Sub btnUserManager_Click(sender As Object, e As EventArgs) Handles btnUserManager.Click
' Try
' 'Dim userManagerPath As String = clsModules.GetModulePath("User Manager")
' 'If userManagerPath Is Nothing Then
' ' MsgBox("Pfad zu User Manager konnte nicht gefunden werden!", MsgBoxStyle.Critical)
' 'Else
' ' Dim exePath As String = Path.Combine(userManagerPath, "DDUserManager.exe")
' ' If File.Exists(exePath) Then
' ' Dim psi As New ProcessStartInfo(exePath)
' ' Process.Start(psi)
' ' Else
' ' MsgBox("Programm User Manager konnte nicht gefunden werden!", MsgBoxStyle.Critical)
' ' End If
' 'End If
' If USER_MANAGER_PATH = "" Then
' With OpenFileDialog1
' ' Do
' .Filter = "DDUserManager.Exe|*.exe"
' .FilterIndex = 1
' .Title = "search DDUserManager.exe:"
' If .ShowDialog() = DialogResult.OK Then
' USER_MANAGER_PATH = .FileName
' CONFIG.Config.UserManagerPath = USER_MANAGER_PATH
' CONFIG.Save()
' 'SaveMySettingsValue("USRMNGRPATH", .FileName)
' End If
' End With
' End If
' If File.Exists(USER_MANAGER_PATH) Then
' Process.Start(USER_MANAGER_PATH)
' End If
' Catch ex As Exception
' LOGGER.Error(ex)
' MsgBox("Error while startign User Manager:" & vbCrLf & ex.Message, MsgBoxStyle.Critical)
' End Try
'End Sub
Private Sub frmProfileDesigner_Closing(sender As Object, e As CancelEventArgs) Handles Me.Closing
If UNSAVED_CHANGES_PROFILE = True Or UNSAVED_CHANGES_FI = True Then
Dim oQuestion As String
If USER_LANGUAGE <> "de-DE" Then
oQuestion = "You have unsaved changes! Do You want to save them now?"
Else
oQuestion = "Achtung es gibt noch ungespeicherte Änderungen! Wollen Sie diese nun speichern?"
End If
Dim result As MsgBoxResult = MsgBox(oQuestion, MsgBoxStyle.YesNo, ADDITIONAL_TITLE)
'wenn Speichern ja
If result = MsgBoxResult.Yes Then
If UNSAVED_CHANGES_PROFILE = True Then
Save_Profile()
End If
If UNSAVED_CHANGES_FI = True Then
Save_FI()
End If
e.Cancel = True
End If
End If
CancelFinalIndexInsert()
End Sub
Private Sub TabControl2_SelectedIndexChanged_1(sender As Object, e As EventArgs) Handles TabControl2.SelectedIndexChanged
Select Case TabControl2.SelectedIndex
Case 0
RibbonPageGroup2.Enabled = True
Case Else
RibbonPageGroup2.Enabled = False
End Select
CancelFinalIndexInsert()
End Sub
Private Sub GridView2_FocusedRowChanged(sender As Object, e As Views.Base.FocusedRowChangedEventArgs) Handles viewFinalIndex.FocusedRowChanged
Try
Dim view As GridView = sender
Dim focusedRow As DataRow = view.GetFocusedDataRow()
If IsNothing(focusedRow) Then
Exit Sub
End If
Dim guid As Integer = focusedRow.Item("GUID")
Dim index As String = NotNull(focusedRow.Item("INDEXNAME"), Nothing)
Dim sqlCommand As String = NotNull(focusedRow.Item("SQL_COMMAND"), "")
Dim connectionId As Integer = NotNull(focusedRow.Item("CONNECTION_ID"), 0)
Dim value As String = NotNull(focusedRow.Item("VALUE"), "")
Dim active As Boolean = NotNull(focusedRow.Item("ACTIVE"), True)
Dim description As String = NotNull(focusedRow.Item("DESCRIPTION"), "")
Dim preventDuplicates As Boolean = NotNull(focusedRow.Item("PREVENT_DUPLICATES"), False)
Dim allowNewValues As Boolean = NotNull(focusedRow.Item("ALLOW_NEW_VALUES"), False)
Dim VectorBehaviour As String = NotNull(focusedRow.Item("IF_VEKTOR_BEHAVIOUR"), "Add")
CURRENT_INDEX_ID = guid
CURRENT_SQL_CON = connectionId
Dim obj As New FinalIndexProperties()
obj.GUID = guid
obj.IndexName = index
obj.SQLCommand = New SQLValue(sqlCommand)
obj.ConnectionId = connectionId
obj.Description = description
obj.Active = active
obj.AllowAddNewValues = allowNewValues
obj.PreventDuplicates = preventDuplicates
obj.VectorBehaviour = VectorBehaviour
' Wenn eine neue Zeile hinzugefügt wird, auf StringValue setzen
If e.FocusedRowHandle <> GridControl.NewItemRowHandle Then
obj = FINALINDICES.SetValue(value, obj, index, MyIndicies, MyIndicies_Types)
End If
If IDB_ACTIVE Then
obj.Indicies = MyIndicies.Except(IDBData.IDBSystemIndices).ToList
Else
obj.Indicies = MyIndicies
End If
obj.IndiciesType = MyIndicies_Types
obj.IndexName = index
obj.VectorBehaviourType = New List(Of String) From {
"Add",
"Overwrite"
}
If Not index Is Nothing Then
Dim indexType As Integer = FINALINDICES.GetIndexType(index, MyIndicies, MyIndicies_Types)
obj.VectorIndex = FINALINDICES.IsVectorIndex(indexType)
End If
PropertyGrid1.SelectedObject = obj
PropertyGrid1.Refresh()
Catch ex As Exception
LOGGER.Error(ex)
MsgBox($"Error while loading Final Index properties: {ex.Message}", MsgBoxStyle.Critical)
LOGGER.Info($"Error while loading Final Index properties: {ex.Message}")
End Try
End Sub
Private Sub PropertyGrid1_PropertyValueChanged(s As Object, e As PropertyValueChangedEventArgs) Handles PropertyGrid1.PropertyValueChanged
If formloaded = False Then
Exit Sub
End If
Dim propertyGrid As PropertyGrid = s
Dim obj As FinalIndexProperties = propertyGrid.SelectedObject
If TypeOf (e.ChangedItem.Value) Is SQLValue Then
Dim value As SQLValue = e.ChangedItem.Value
If value.Value <> String.Empty Then
obj.ConnectionId = CURRENT_SQL_CON
obj.StringValue = "SQL-Command"
End If
propertyGrid.Refresh()
Else
Dim lbl = e.ChangedItem.Label
If e.ChangedItem.Label = "Description" Then
obj.Description = e.ChangedItem.Value
ElseIf e.ChangedItem.Label = "IndexName" Then
Dim type As Integer = FINALINDICES.GetIndexType(e.ChangedItem.Value, MyIndicies, MyIndicies_Types)
obj.VectorIndex = FINALINDICES.IsVectorIndex(type)
End If
propertyGrid.Refresh()
End If
UNSAVED_CHANGES_FI = True
End Sub
Private Sub tsBtnCancel_Click_1(sender As Object, e As EventArgs)
CancelFinalIndexInsert()
End Sub
Private Sub PM_VEKTOR_INDEXComboBox_MouseHover(sender As Object, e As EventArgs) Handles PM_VEKTOR_INDEXComboBox.MouseHover
ToolTip1.Show("Bitte wählen Sie hier den Vektor-Index den Sie für die Kennzeichnung der PM-Indizes verwenden wollen:", PM_VEKTOR_INDEXComboBox)
End Sub
Private Sub cmbLOGIndex_MouseHover(sender As Object, e As EventArgs) Handles cmbLOGIndex.MouseHover
ToolTip1.Show("Bitte wählen Sie hier den Vektor-Index den Sie für das Loggen der Wertänderungen nutzen wollen:", cmbLOGIndex)
End Sub
Private Sub BarButtonItem2_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem2.ItemClick
If CInt(PROFILGUIDTextBox.Text) > 0 Then
profile_guid = PROFILGUIDTextBox.Text
CURRENT_ProfilGUID = PROFILGUIDTextBox.Text
My.Settings.Save()
CURRENT_OBJECTTYPE = cmbObjekttypen.Text
CURRENT_ProfilName = NAMETextBox.Text
frmFormDesigner.ProfileId = CURRENT_ProfilGUID
frmFormDesigner.ProfileName = CURRENT_ProfilName
frmFormDesigner.ProfileObjectType = cmbObjekttypen.Text
frmFormDesigner.ShowDialog()
Else
MsgBox("Eindeutiges Profil konnte nicht an den FormDesigner weitergegeben werden:", MsgBoxStyle.Exclamation)
End If
End Sub
Private Sub BarButtonItem1_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem1.ItemClick
Refresh_Profildaten()
End Sub
Private Sub BarButtonItem3_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem3.ItemClick
Dim result As MsgBoxResult = MsgBox("Wollen Sie das gesamte Profil kopieren?" & vbNewLine & "Alle Einstellungen werden übernommen, das Profil wird angelegt und inaktiv gesetzt!", MsgBoxStyle.YesNo, "Bestätigung erforderlich:")
'wenn Speichern ja
If result = MsgBoxResult.Yes Then
Try
Dim oEXECSQL As String = $"EXEC PRPM_COPY_PROFILE {PROFILGUIDTextBox.Text},'{USER_USERNAME}'"
If ClassDatabase.Execute_non_Query(oEXECSQL) = True Then
MsgBox("Das Profil " & NAMETextBox.Text & " wurde erfolgreich kopiert!", MsgBoxStyle.Information, "Erfolgsmeldung")
Refresh_Profildaten()
Else
MsgBox("Error creating a profileCopy - Please check Your log!", MsgBoxStyle.Exclamation)
End If
Catch ex As Exception
LOGGER.Error(ex)
MsgBox("Fehler bei Anlage Profilkopie:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler:")
End Try
End If
End Sub
Private Sub BarButtonItem5_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem5.ItemClick
Dim result As MsgBoxResult = MsgBox("Sind Sie sicher, dass Sie das Profil " & NAMETextBox.Text & " löschen wollen?", MsgBoxStyle.YesNo, "Bestätigung erforderlich:")
' wenn Speichern ja
If result = MsgBoxResult.Yes Then
Try
Dim profileID = PROFILGUIDTextBox.Text
Dim del As String = $"EXEC PRPM_DELETE_PROFILE {profileID}"
If ClassDatabase.Execute_non_Query(del) = True Then
MsgBox("Das Profil " & NAMETextBox.Text & " wurde erfolgreich gelöscht!", MsgBoxStyle.Information, "Erfolgsmeldung")
Refresh_Profildaten()
End If
Catch ex As Exception
LOGGER.Error(ex)
MsgBox("Fehler bei Löschen des Profils:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler:")
End Try
End If
End Sub
Private Sub BarButtonItem6_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem6.ItemClick
Dim result As MsgBoxResult = MsgBox("Wollen Sie die Dateien für dieses Profil wirklich entfernen?" & vbNewLine & "Wenn ja müssen Sie auf die Aktualisierung des Jobs warten bis wieder Dateien zur Bearbeitung frei sind.", MsgBoxStyle.YesNo, "Bestätigung erforderlich:")
'wenn Speichern ja
If result = MsgBoxResult.Yes Then
If ClassDatabase.Execute_non_Query("DELETE FROM TBPM_PROFILE_FILES WHERE PROFIL_ID = " & PROFILGUIDTextBox.Text) = True Then
MsgBox("Die Dateien zum Profil wurden erfolgreich gelöscht!", MsgBoxStyle.Information)
End If
End If
End Sub
Private Sub BarButtonItem7_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem7.ItemClick
Save_Profile()
End Sub
Sub Save_Profile()
Try
Me.TBPM_PROFILEBindingSource.EndEdit()
If DD_DMSLiteDataSet.TBPM_PROFILE.GetChanges Is Nothing = False Or UNSAVED_CHANGES_PROFILE = True Then
CHANGED_WHOTextBox.Text = USER_USERNAME
Me.TBPM_PROFILEBindingSource.EndEdit()
Me.TBPM_PROFILETableAdapter.Update(DD_DMSLiteDataSet.TBPM_PROFILE)
tsbStaticInfo.Caption = $"ProfileData saved - {Now.ToLongTimeString}"
CHANGES_FORM_DESIGN = True
UNSAVED_CHANGES_PROFILE = False
Else
tsbStaticInfo.Caption = ""
End If
Catch ex As Exception
LOGGER.Error(ex)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler bei Speichern des Profils:")
End Try
End Sub
Private Sub BarButtonItem8_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem8.ItemClick
If TBPM_PROFILETableAdapter.cmdAnzProfile + 1 > LICENSE_PROFILES Then
MsgBox("Sie haben die maximale Anzahl (" & LICENSE_PROFILES & ") von lizensierten Profilen erreicht!" & vbNewLine & "Bitte löschen Sie Profile oder setzen sich mit Digital Data in Verbindung!", MsgBoxStyle.Exclamation, "Achtung Lizenzhinweis:")
Else
TBPM_PROFILEBindingSource.AddNew()
End If
End Sub
Private Sub BarButtonItem9_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem9.ItemClick
frmLicense.ShowDialog()
End Sub
Private Sub BarButtonItem10_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem10.ItemClick
Dim result As MsgBoxResult = MsgBox("Do You really want to delete all workflow-Jobs?" & vbNewLine & "If yes You have to wait for the next Sync-Job for the jobs.", MsgBoxStyle.YesNo, "Bestätigung erforderlich:")
'wenn Speichern ja
If result = MsgBoxResult.Yes Then
If ClassDatabase.Execute_non_Query("DELETE FROM TBPM_PROFILE_FILES") = True Then
MsgBox("All workflow-jobs have been erased!", MsgBoxStyle.Information)
End If
End If
End Sub
Private Sub BarButtonItem11_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem11.ItemClick
frmConnection.ShowDialog()
End Sub
Private Sub BarButtonItem14_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem14.ItemClick
frmSQL_Admin.ShowDialog()
End Sub
Private Sub BarButtonItem13_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem13.ItemClick
Try
Dim oSQL = BASEDATA_DT_CONFIG.Rows(0).Item("SQL_PROFILE_MAIN_VIEW")
Dim oForm As New frmSQL_DESIGNER() With {.SQLCommand = oSQL}
Dim oResult = oForm.ShowDialog()
If oResult = DialogResult.OK Then
ClassDatabase.Execute_non_Query(String.Format("UPDATE TBPM_KONFIGURATION SET SQL_PROFILE_MAIN_VIEW = '{0}' WHERE GUID = 1", oForm.SQLCommand.Replace("'", "''")))
BASEDATA_DT_CONFIG.Rows(0).Item("SQL_PROFILE_MAIN_VIEW") = oForm.SQLCommand
End If
Catch ex As Exception
MsgBox("Fehler beim Speichern: " & vbNewLine & vbNewLine & ex.Message)
LOGGER.Error(ex)
End Try
End Sub
Private Sub BarButtonItem15_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem15.ItemClick
Refresh_Final_indexe()
End Sub
Private Sub BarButtonItem16_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem16.ItemClick
INSERT_ACTIVE = True
BarButtonItem19.Visibility = DevExpress.XtraBars.BarItemVisibility.Always
BarButtonItem16.Visibility = DevExpress.XtraBars.BarItemVisibility.Never
TBPM_PROFILE_FINAL_INDEXINGBindingSource.AddNew()
End Sub
Private Sub BarButtonItem17_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem17.ItemClick
Dim selectedRowHandle = viewFinalIndex.GetSelectedRows().First()
Dim row As DataRow = viewFinalIndex.GetDataRow(selectedRowHandle)
If Not IsNothing(row) Then
If MsgBox("Wollen Sie den Index wirklich löschen?", MsgBoxStyle.YesNo Or MsgBoxStyle.Question) = MsgBoxResult.Yes Then
TBPM_PROFILE_FINAL_INDEXINGTableAdapter.DeleteFinalIndex(row.Item("GUID"))
Refresh_Final_indexe()
MsgBox("Index erfolgreich gelöscht!", MsgBoxStyle.Information, "Hinweis:")
End If
End If
End Sub
Private Sub BarButtonItem18_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem18.ItemClick
Save_FI
End Sub
Private Sub Save_FI()
Try
Dim obj As FinalIndexProperties = PropertyGrid1.SelectedObject
If Not IsNothing(obj) Then
Dim value
If obj.SQLCommand.Value <> String.Empty Then
value = "SQL-Command"
Else
value = FINALINDICES.GetValue(obj, obj.IndexName, MyIndicies, MyIndicies_Types, obj.VectorIndex)
End If
value = NotNull(value, String.Empty)
Dim guid = obj.GUID
Dim profileId As Integer = PROFILGUIDTextBox.Text
Dim connectionId As Integer = obj.ConnectionId
Dim sqlCommand As String = NotNull(obj.SQLCommand.Value, String.Empty).Replace("'", "''")
Dim indexName As String = NotNull(obj.IndexName, String.Empty)
Dim isVectorIndex As Boolean = obj.VectorIndex
Dim addedWho As String = USER_USERNAME
Dim description As String = obj.Description
Dim active As Integer = IIf(obj.Active, 1, 0)
Dim preventDuplicates As Integer = IIf(obj.PreventDuplicates, 1, 0)
Dim AllowAddNewValues As Integer = IIf(obj.AllowAddNewValues, 1, 0)
Dim IF_VEKTOR_BEHAVIOUR As String = NotNull(obj.VectorBehaviour, String.Empty)
Dim oDescription As String = NotNull(obj.Description, String.Empty)
If indexName = String.Empty Then
MsgBox("We need an index!", MsgBoxStyle.Exclamation)
Exit Sub
End If
If sqlCommand = String.Empty And value = String.Empty Then
MsgBox("SQLCommand or StaticValue need to be filled!", MsgBoxStyle.Exclamation)
Exit Sub
End If
' Add the vector prefix to the value if index is a vector index
' and value is NOT an SQL-Command
If obj.VectorIndex And value <> "SQL-Command" Then
value = $"{FINALINDICES.PREFIX_VECTOR}{value}"
End If
If INSERT_ACTIVE = True Then
Dim sql As String = $"INSERT INTO TBPM_PROFILE_FINAL_INDEXING (PROFIL_ID, CONNECTION_ID, SQL_COMMAND, INDEXNAME, VALUE, ACTIVE, PREVENT_DUPLICATES, ALLOW_NEW_VALUES, ADDED_WHO,IF_VEKTOR_BEHAVIOUR)
VALUES ({profileId}, {connectionId}, '{sqlCommand}', '{indexName}', '{value}', {active}, {preventDuplicates}, {AllowAddNewValues}, '{addedWho}','{IF_VEKTOR_BEHAVIOUR}')"
If ClassDatabase.Execute_non_Query(sql, True) Then
tsbStaticInfo.Caption = $"Final index added - {Now.ToLongTimeString}"
INSERT_ACTIVE = False
End If
Else
Dim sql As String = $"UPDATE TBPM_PROFILE_FINAL_INDEXING
SET CONNECTION_ID = {connectionId}, SQL_COMMAND = '{sqlCommand}', INDEXNAME = '{indexName}', CHANGED_WHO = '{addedWho}', DESCRIPTION = '{oDescription}',
VALUE = '{value}', ACTIVE = {active}, ALLOW_NEW_VALUES = {AllowAddNewValues}, PREVENT_DUPLICATES = {preventDuplicates},IF_VEKTOR_BEHAVIOUR = '{IF_VEKTOR_BEHAVIOUR}'
WHERE GUID = {guid}"
If ClassDatabase.Execute_non_Query(sql, True) Then
tsbStaticInfo.Caption = $"Final index saved - {Now.ToLongTimeString} - RESTART NECESSARY"
End If
End If
Refresh_Final_indexe()
End If
Catch ex As Exception
LOGGER.Error(ex)
MsgBox("Error while Saving Final Index: " & ex.Message, MsgBoxStyle.Critical)
LOGGER.Info("Error while Saving Final Index: " & ex.Message)
Finally
BarButtonItem19.Visibility = DevExpress.XtraBars.BarItemVisibility.Never
BarButtonItem16.Visibility = DevExpress.XtraBars.BarItemVisibility.Always
INSERT_ACTIVE = False
UNSAVED_CHANGES_FI = False
End Try
End Sub
Private Sub BarButtonItem19_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem19.ItemClick
CancelFinalIndexInsert()
End Sub
Private Sub gridFinalIndex_MouseHover(sender As Object, e As EventArgs) Handles gridFinalIndex.MouseHover
RibbonPageGroup2.Enabled = True
End Sub
Private Sub CHANGED_WHENLabel_Click(sender As Object, e As EventArgs)
End Sub
Private Sub BarButtonItem20_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem20.ItemClick
Try
Dim oSQL = BASEDATA_DT_CONFIG.Rows(0).Item("SQL_PROFILE_MAIN_VIEW")
CURRENT_DESIGN_TYPE = "SQL_OVERVIEW"
Dim oForm As New frmSQL_DESIGNER() With {.SQLCommand = oSQL}
Dim oResult = oForm.ShowDialog()
If oResult = DialogResult.OK Then
ClassDatabase.Execute_non_Query(String.Format("UPDATE TBPM_KONFIGURATION SET SQL_PROFILE_MAIN_VIEW = '{0}' WHERE GUID = 1", oForm.SQLCommand.Replace("'", "''")))
BASEDATA_DT_CONFIG.Rows(0).Item("SQL_PROFILE_MAIN_VIEW") = oForm.SQLCommand
End If
Catch ex As Exception
MsgBox("Error in Saving SQL Overview: " & vbNewLine & vbNewLine & ex.Message)
LOGGER.Error(ex)
End Try
End Sub
Private Sub BarButtonItem21_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem21.ItemClick
Try
profile_guid = PROFILGUIDTextBox.Text
CURRENT_ProfilGUID = PROFILGUIDTextBox.Text
CURRENT_DESIGN_TYPE = "SQL_PROFILE"
Dim oSQL = $"SELECT [SQL_VIEW] 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_VIEW = '{oForm.SQLCommand.Replace("'", "''")}' WHERE GUID = {CURRENT_ProfilGUID}"
If ClassDatabase.Execute_non_Query(oUpdate) = True Then
tsbStaticInfo.Caption = $"Profile SQL saved - {Now.ToLongTimeString}"
CHANGES_FORM_DESIGN = True
End If
End If
End If
Catch ex As Exception
MsgBox("Error in Saving Profile SQL: " & vbNewLine & vbNewLine & ex.Message)
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_FORM_DESIGN = 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
Private Sub TBPM_PROFILEBindingSource_CurrentItemChanged(sender As Object, e As EventArgs) Handles TBPM_PROFILEBindingSource.CurrentItemChanged
Check_Changes()
End Sub
Private Sub Check_Changes()
If formloaded = False Then
Exit Sub
End If
If UNSAVED_CHANGES_PROFILE = True Then
Exit Sub
End If
TBPM_PROFILEBindingSource.EndEdit()
If Not IsNothing(DD_DMSLiteDataSet.TBPM_PROFILE.GetChanges) Then
UNSAVED_CHANGES_PROFILE = True
End If
End Sub
End Class