Add Template Selection, load templates from Database
This commit is contained in:
@@ -1,11 +1,9 @@
|
||||
Imports System.ComponentModel
|
||||
Imports System.IO
|
||||
Imports System.IO
|
||||
Imports System.Net.Http
|
||||
Imports System.Xml
|
||||
Imports DevExpress.Utils.Behaviors.Common
|
||||
Imports DevExpress.XtraGrid
|
||||
Imports DevExpress.XtraGrid.Views.Grid
|
||||
Imports DigitalData.Controls.SQLConfig
|
||||
Imports DigitalData.GUIs.Common
|
||||
Imports DigitalData.Modules.Config
|
||||
Imports DigitalData.Modules.Database
|
||||
@@ -18,31 +16,36 @@ Imports MultiTool.Shared.Constants
|
||||
Imports MultiTool.Shared.Exceptions
|
||||
Imports DevExpress.XtraReports.UI
|
||||
Imports MultiTool.Shared.Documents.DocumentRow
|
||||
Imports DevExpress.XtraGrid.Columns
|
||||
|
||||
Public Class frmImportMain
|
||||
Private LogConfig As LogConfig
|
||||
Public LogConfig As LogConfig
|
||||
Public ConfigManager As ConfigManager(Of Config)
|
||||
|
||||
Private Logger As Logger
|
||||
Private ConfigManager As ConfigManager(Of Config)
|
||||
Private Database As MSSQLServer
|
||||
Private Winline As WinlineData
|
||||
Private FileEx As DigitalData.Modules.Filesystem.File
|
||||
Private WebService As WebService
|
||||
Private DocumentLoader As DocumentLoader
|
||||
Private SchemaLoader As SchemaLoader
|
||||
Private FormHelper As FormHelper
|
||||
|
||||
Private Grids As List(Of GridControl)
|
||||
Private GridLoader As GridLoader
|
||||
Private GridBuilder As GridBuilder
|
||||
|
||||
Private CurrentSchemaName As String = Nothing
|
||||
Private CurrentSchema As Schema = Nothing
|
||||
Private ReadOnly CurrentSchema As Schema = Nothing
|
||||
|
||||
' Runtime variables
|
||||
Private CurrentGrid As GridControl = Nothing
|
||||
Private CurrentDocument As Document = Nothing
|
||||
|
||||
Public Sub New()
|
||||
Public Sub New(pLogConfig As LogConfig, pConfigManager As ConfigManager(Of Config), pSchema As Schema)
|
||||
InitializeComponent()
|
||||
|
||||
LogConfig = pLogConfig
|
||||
ConfigManager = pConfigManager
|
||||
CurrentSchema = pSchema
|
||||
|
||||
BehaviorManager.Attach(Of PersistenceBehavior)(Me, AddressOf LoadPersistenceSettings)
|
||||
End Sub
|
||||
|
||||
@@ -59,42 +62,18 @@ Public Class frmImportMain
|
||||
|
||||
Private Sub frmImportMain_Load(sender As Object, e As EventArgs) Handles MyBase.Load
|
||||
Try
|
||||
txtVersion.Caption = String.Format(txtVersion.Caption, Application.ProductVersion)
|
||||
|
||||
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)
|
||||
|
||||
ConfigManager = New ConfigManager(Of Config)(LogConfig,
|
||||
Application.UserAppDataPath,
|
||||
Application.CommonAppDataPath,
|
||||
Application.StartupPath
|
||||
)
|
||||
|
||||
FormHelper = New FormHelper(LogConfig)
|
||||
|
||||
GridBuilder = New GridBuilder(GridViewFiles)
|
||||
GridBuilder.WithDefaults.WithClipboardHandler()
|
||||
GridViewFiles.OptionsView.ShowAutoFilterRow = False
|
||||
|
||||
FileEx = New DigitalData.Modules.Filesystem.File(LogConfig)
|
||||
|
||||
' 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)
|
||||
|
||||
GridBuilder = New GridBuilder(GridViewFiles)
|
||||
GridBuilder.WithDefaults.WithReadOnlyOptions.WithClipboardHandler()
|
||||
GridViewFiles.OptionsView.ShowAutoFilterRow = False
|
||||
|
||||
FileEx = New DigitalData.Modules.Filesystem.File(LogConfig)
|
||||
Winline = New WinlineData(LogConfig, Database, ConfigManager.Config)
|
||||
WebService = New WebService(LogConfig, ConfigManager.Config, Application.UserAppDataPath)
|
||||
AddHandler WebService.WebServiceProgress, AddressOf WebService_Progress
|
||||
@@ -106,6 +85,7 @@ Public Class frmImportMain
|
||||
|
||||
txtVersion.Caption = String.Format(My.Resources.frmImportMainExtra.Version__0_, My.Application.Info.Version.ToString)
|
||||
txtCulture.Caption = String.Format(My.Resources.frmImportMainExtra.Culture___0_, My.Application.UICulture.ToString)
|
||||
Text = String.Format(My.Resources.frmShared._0____WebService_Multitool_für_WinLine, CurrentSchema.Name)
|
||||
End Sub
|
||||
|
||||
Private Async Sub frmImportMain_Shown(sender As Object, e As EventArgs) Handles MyBase.Shown
|
||||
@@ -119,13 +99,6 @@ Public Class frmImportMain
|
||||
Winline.LoadEconomicYears()
|
||||
Await Winline.LoadMandators()
|
||||
|
||||
' TODO: Comment in when we finally use the database for additional configuration
|
||||
SplashScreenManager.SetWaitFormDescription("Lade Schema Informationen")
|
||||
If Await Winline.LoadTemplateConfiguration() = False Then
|
||||
Logger.Warn("Template Configuration was not loaded!")
|
||||
Winline.TemplateConfiguration = Nothing
|
||||
End If
|
||||
|
||||
For Each oMandator As Mandator In Winline.Mandators
|
||||
SplashScreenManager.SetWaitFormDescription(String.Format(My.Resources.frmImportMainExtra.Lade__0__Konten, oMandator.Id))
|
||||
Await Winline.LoadAccounts(oMandator)
|
||||
@@ -142,18 +115,14 @@ Public Class frmImportMain
|
||||
lookupMandator.Properties.View.BestFitColumns()
|
||||
|
||||
DocumentLoader = New DocumentLoader(LogConfig, Winline)
|
||||
SchemaLoader = New SchemaLoader(LogConfig)
|
||||
GridLoader = New GridLoader(LogConfig)
|
||||
|
||||
SplashScreenManager.SetWaitFormDescription(My.Resources.frmImportMainExtra.Lade_Vorlagen)
|
||||
|
||||
SchemaLoader.LoadFiles(ConfigManager.Config.SchemaDirectory)
|
||||
CurrentSchemaName = SchemaLoader.SchemaList.First().FullName
|
||||
|
||||
CurrentSchema = SchemaLoader.GetSchemaFromFile(CurrentSchemaName)
|
||||
CurrentSchema = SchemaLoader.UpdateSchemaWithDatabaseConfiguration(CurrentSchema, Winline.TemplateConfiguration)
|
||||
|
||||
|
||||
'SchemaLoader.LoadFiles(ConfigManager.Config.SchemaDirectory)
|
||||
'CurrentSchemaName = SchemaLoader.SchemaList.First().FullName
|
||||
'CurrentSchema = SchemaLoader.GetSchemaFromFile(CurrentSchemaName)
|
||||
'CurrentSchema = SchemaLoader.UpdateSchemaWithDatabaseConfiguration(CurrentSchema, SchemaLoader.TemplateConfiguration)
|
||||
|
||||
Grids = CreateGridsAndColumns(CurrentSchema)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user