Imports System.ComponentModel Imports System.IO Imports DigitalData.Controls.SQLConfig Imports DigitalData.GUIs.Common Imports DigitalData.Modules.Config Imports DigitalData.Modules.Database Imports DigitalData.Modules.Logging Imports MultiTool.Shared.Schemas Public Class frmMain Private LogConfig As LogConfig Private Logger As Logger Private ConfigManager As ConfigManager(Of [Shared].Config) Private Database As MSSQLServer Private SchemaLoader As SchemaLoader Private GridBuilder As GridBuilder Private Async Sub frmMain_Load(sender As Object, e As EventArgs) Handles MyBase.Load LogConfig = New LogConfig(LogConfig.PathType.AppData, Nothing, Nothing, Application.CompanyName, Application.ProductName) Logger = LogConfig.GetLogger() Logger.Info("Starting {0}, Version [{1}]", Application.ProductName, Application.ProductVersion) Text = String.Format(My.Resources.frmShared._0____WebService_Multitool_für_WinLine, My.Resources.frmShared.Auswahl_der_Vorlage) ConfigManager = New ConfigManager(Of [Shared].Config)(LogConfig, Application.UserAppDataPath, Application.CommonAppDataPath, Application.StartupPath ) GridBuilder = New GridBuilder(GridViewTemplates) GridBuilder.WithDefaults.WithReadOnlyOptions.WithClipboardHandler() GridViewTemplates.OptionsView.ShowAutoFilterRow = False ' If ConnectionString does not exist, show SQL Config Form If ConfigManager.Config.ConnectionString = String.Empty Then Dim oForm As New frmSQLConfig(LogConfig) With { .FormTitle = Application.ProductName } Dim oResult = oForm.ShowDialog() If oResult = DialogResult.OK Then ConfigManager.Config.ConnectionString = oForm.ConnectionString ConfigManager.Save() End If End If ' Initialize Database Dim oConnectionString = MSSQLServer.DecryptConnectionString(ConfigManager.Config.ConnectionString) Database = New MSSQLServer(LogConfig, oConnectionString) ' Initialize Schemas SchemaLoader = New SchemaLoader(LogConfig, Database, ConfigManager.Config.SchemaDirectory) Await SchemaLoader.LoadTemplates() Await SchemaLoader.LoadTemplateConfiguration() Dim oBindingSource = New BindingList(Of Schema) For Each oSchema As Schema In SchemaLoader.SchemaList oBindingSource.Add(oSchema) Next GridControl1.DataSource = oBindingSource End Sub Private Sub BarButtonItem1_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem1.ItemClick Dim oSchema = GridViewTemplates.GetRow(GridViewTemplates.FocusedRowHandle) If oSchema Is Nothing Then MsgBox("Keine Vorlage ausgewählt! Bitte wählen Sie eine Vorlage aus!", MsgBoxStyle.Exclamation, Text) Exit Sub End If oSchema = SchemaLoader.UpdateSchemaFromFile(oSchema, ConfigManager.Config.SchemaDirectory) oSchema = SchemaLoader.UpdateSchemaFromDatabase(oSchema, SchemaLoader.TemplateConfiguration) Dim oForm As New frmImportMain(LogConfig, ConfigManager, oSchema) oForm.ShowDialog() End Sub Private Sub RibbonControl1_Click(sender As Object, e As EventArgs) Handles RibbonControl1.Click End Sub End Class