83 lines
3.4 KiB
VB.net
83 lines
3.4 KiB
VB.net
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 |