Public Class frmAdmin_IDBObjectStore Implements IAdminForm Public Property PrimaryKey As Integer Implements IAdminForm.PrimaryKey Public Property HasChanges As Boolean Implements IAdminForm.HasChanges Public Property IsInsert As Boolean Implements IAdminForm.IsInsert Dim oStorePath As String = String.Empty Public Function DeleteData() As Boolean Implements IAdminForm.DeleteData Throw New NotImplementedException() End Function Public Sub New(PrimaryKey As Integer, Optional IsInsert As Boolean = False) ' Dieser Aufruf ist für den Designer erforderlich. InitializeComponent() ' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu. InitializeBaseForm(My.LogConfig) Me.PrimaryKey = PrimaryKey Me.IsInsert = IsInsert End Sub Private Sub BarButtonItem3_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem3.ItemClick End Sub Private Sub frmAdmin_IDBObjectStore_Load(sender As Object, e As EventArgs) Handles MyBase.Load 'TODO: Diese Codezeile lädt Daten in die Tabelle "DSIDB_Stammdaten.TBIDB_OBJECT_STORE". Sie können sie bei Bedarf verschieben oder entfernen. Me.TBIDB_OBJECT_STORETableAdapter.Connection.ConnectionString = My.DatabaseIDB.CurrentSQLConnectionString Me.TBIDB_CATALOGTableAdapter.Connection.ConnectionString = My.DatabaseIDB.CurrentSQLConnectionString Me.TBIDB_OBJECT_STORETableAdapter.Fill(Me.DSIDB_Stammdaten.TBIDB_OBJECT_STORE) If IsInsert Then TBIDB_OBJECT_STOREBindingSource.AddNew() ADDED_WHOTextBox.Text = My.Application.User.UserName Else If CAT_IDTextBox.Text <> String.Empty Then Me.TBIDB_CATALOGTableAdapter.Fill(Me.DSIDB_Stammdaten.TBIDB_CATALOG, CType(CAT_IDTextBox.Text, Integer)) oStorePath = CAT_TITLETextBox.Text End If End If End Sub Private Sub BarButtonItem1_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem1.ItemClick ResetMessages() If SaveData() Then Close() End If End Sub Private Sub BarButtonItem2_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem2.ItemClick ResetMessages() If SaveData() And HasChanges Then ShowStatus("ObjectStore gespeichert!") End If End Sub Private Sub ResetMessages() labelStatus.Visibility = DevExpress.XtraBars.BarItemVisibility.Never End Sub Private Sub ShowStatus(Message As String) labelStatus.Caption = Message labelStatus.Visibility = DevExpress.XtraBars.BarItemVisibility.Always End Sub Public Function SaveData() As Boolean Try TBIDB_OBJECT_STOREBindingSource.EndEdit() If DSIDB_Stammdaten.TBIDB_OBJECT_STORE.GetChanges() IsNot Nothing Then HasChanges = True If IsInsert Then Dim oSQL = $"INSERT INTO TBIDB_CATALOG (CAT_TITLE, CAT_STRING, ADDED_WHO) VALUES ('FILESTORE_' + '{OBJECT_TITLETextBox.Text}','{CAT_TITLETextBox.Text}','{My.Application.User.UserName}')" If My.DatabaseIDB.ExecuteNonQuery(oSQL) Then Dim oID = $"SELECT GUID FROM TBIDB_CATALOG WHERE CAT_TITLE = 'FILESTORE_' + '{OBJECT_TITLETextBox.Text}'" oID = My.DatabaseIDB.GetScalarValue(oID) CAT_IDTextBox.Text = oID TBIDB_OBJECT_STOREBindingSource.EndEdit() End If Else If oStorePath <> CAT_TITLETextBox.Text Then Dim oSQL = $"UPDATE TBIDB_CATALOG SET CAT_TITLE = 'FILESTORE_' & '{OBJECT_TITLETextBox.Text}', CAT_STRING = {CAT_TITLETextBox.Text}, ADDED_WHO = '{My.Application.User.UserName}'" & $"WHERE (GUID = {CAT_IDTextBox.Text})" My.DatabaseIDB.ExecuteNonQuery(oSQL) End If CHANGED_WHOTextBox.Text = My.Application.User.UserName End If TBIDB_OBJECT_STOREBindingSource.EndEdit() ' TODO: Update Database TBIDB_OBJECT_STORETableAdapter.Update(DSIDB_Stammdaten.TBIDB_OBJECT_STORE) End If Return True Catch ex As Exception ShowErrorMessage(ex) Return False End Try End Function End Class