MultiTool/MultiTool.Form/frmConfig.vb

100 lines
4.0 KiB
VB.net

Imports System.Data.SqlClient
Imports DevExpress.XtraGrid
Imports DevExpress.XtraGrid.Views.Grid
Imports DigitalData.Modules.Config
Imports DigitalData.Modules.Database
Imports DigitalData.Modules.Logging
Public Class frmConfig
Private ReadOnly ConfigManager As ConfigManager(Of MultiTool.Shared.Config)
Private ReadOnly FormHelper As FormHelper
Private BindingSource As BindingSource = TBEDIXMLITEMSBindingSource
Private View As GridView = GridViewSchema
Private ReadOnly Property Config As MultiTool.Shared.Config
Get
Return ConfigManager?.Config
End Get
End Property
Public Sub New(pLogConfig As LogConfig, pConfigManager As ConfigManager(Of MultiTool.Shared.Config))
' Dieser Aufruf ist für den Designer erforderlich.
InitializeComponent()
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
FormHelper = New FormHelper(pLogConfig, Me)
ConfigManager = pConfigManager
End Sub
Private Sub frmConfig_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim oConnectionString = MSSQLServer.DecryptConnectionString(Config.ConnectionString)
Dim oBuilder As New SqlConnectionStringBuilder(oConnectionString) With {
.InitialCatalog = "DD_ECM"
}
' Default Values
DS_DD_ECM.TBEDI_XML_CONFIG.ADDED_WHOColumn.DefaultValue = Environment.UserName
DS_DD_ECM.TBEDI_XML_CONFIG.CHANGED_WHOColumn.DefaultValue = Environment.UserName
DS_DD_ECM.TBEDI_XML_TEMPLATE_ITEMS.ADDED_WHOColumn.DefaultValue = Environment.UserName
DS_DD_ECM.TBEDI_XML_TEMPLATE_ITEMS.CHANGED_WHOColumn.DefaultValue = Environment.UserName
TBEDI_XML_TEMPLATE_ITEMSTableAdapter.Connection.ConnectionString = oBuilder.ToString()
TBEDI_XML_TEMPLATE_ITEMSTableAdapter.Fill(DS_DD_ECM.TBEDI_XML_TEMPLATE_ITEMS)
TBEDI_XML_CONFIGTableAdapter.Connection.ConnectionString = oBuilder.ToString()
TBEDI_XML_CONFIGTableAdapter.Fill(DS_DD_ECM.TBEDI_XML_CONFIG)
End Sub
Private Sub Save()
TBEDI_XML_CONFIGTableAdapter.Update(DS_DD_ECM.TBEDI_XML_CONFIG)
DS_DD_ECM.TBEDI_XML_CONFIG.AcceptChanges()
TBEDI_XML_TEMPLATE_ITEMSTableAdapter.Update(DS_DD_ECM.TBEDI_XML_TEMPLATE_ITEMS)
DS_DD_ECM.TBEDI_XML_TEMPLATE_ITEMS.AcceptChanges()
End Sub
Private Sub BarButtonItem1_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem1.ItemClick
Try
TBEDI_XML_CONFIGBindingSource.EndEdit()
TBEDIXMLITEMSBindingSource.EndEdit()
Save()
Catch ex As Exception
FormHelper.ShowError(ex, "Speichern der Konfiguration")
End Try
End Sub
Private Sub BarButtonItem2_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem2.ItemClick
BindingSource.AddNew()
End Sub
Private Sub XtraTabControl1_SelectedPageChanged(sender As Object, e As DevExpress.XtraTab.TabPageChangedEventArgs) Handles XtraTabControl1.SelectedPageChanged
Select Case e.Page.Name
Case tabPageSchema.Name
BindingSource = TBEDIXMLITEMSBindingSource
View = GridViewSchema
Case tabPageConfig.Name
BindingSource = TBEDI_XML_CONFIGBindingSource
View = GridViewConfig
End Select
End Sub
Private Sub BarButtonItem3_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem3.ItemClick
If View.FocusedRowHandle <> GridControl.InvalidRowHandle Then
Dim oResult = MsgBox("Wollen Sie den ausgewählten Eintrag löschen?", MsgBoxStyle.Question Or MsgBoxStyle.YesNo, "Eintrag löschen?")
If oResult = MsgBoxResult.Yes Then
Dim oRow As DataRow = View.GetDataRow(View.FocusedRowHandle)
BindingSource.RemoveCurrent()
BindingSource.EndEdit()
Save()
End If
End If
End Sub
End Class