MS 1 GV AppServer

This commit is contained in:
2020-12-17 16:12:02 +01:00
parent 152ff43f43
commit b4e41e22f3
6 changed files with 68 additions and 22 deletions

View File

@@ -4,6 +4,7 @@ Imports DigitalData.Modules.Logging
Imports DigitalData.Modules.Config
Imports DigitalData.Modules.Database
Imports DigitalData.Modules.EDMI.API
Imports DigitalData.Modules.EDMI.API.EDMIServiceReference
Public Class ClassInit
Public _lizenzManager As clsLicenseManager
@@ -69,6 +70,21 @@ Public Class ClassInit
Return False
End Try
End Function
Public Function InitAppDatabase() As Boolean
Try
DatabaseAppServ = New MSSQLServer(LogConfig, MyConStringAppserv)
If DatabaseAppServ.DBInitialized = True Then
Return True
Else
Return False
End If
Catch ex As Exception
Logger.Error(ex)
Return False
End Try
End Function
Public Function InitBasics()
Dim UserAppDataPath = Application.UserAppDataPath
@@ -84,14 +100,17 @@ Public Class ClassInit
With ConfigManager.Config
MyConnectionString = DecryptConnectionString(.ConnectionString)
LogErrorsOnly = .LogErrorsOnly
HotkeyFunctionKey = .HotkeyFunctionKey
HotkeySearchKey = .HotkeySearchKey
LogConfig.Debug = Not .LogErrorsOnly
End With
If HotkeySearchKey_via_Server = False Then
HotkeyFunctionKey = ConfigManager.Config.HotkeyFunctionKey
End If
If ConfigManager.Config.ConnectionStringAppServer <> String.Empty Then
Logger.Debug("ConnectionStringAppServer will be used")
CONNECTION_STRING_APP_SERVER = DecryptConnectionString(ConfigManager.Config.ConnectionStringAppServer)
MyConStringAppserv = DecryptConnectionString(ConfigManager.Config.ConnectionStringAppServer)
If InitAppDatabase() Then
Logger.Debug("ConnectionStringAppServer will be used")
End If
End If
If ConfigManager.Config.AppServerConfig <> String.Empty Then
@@ -187,7 +206,14 @@ Public Class ClassInit
Catch ex As Exception
NOMATCH_INFO = False
End Try
ElseIf oMode.StartsWith("HotkeySearchKey") Then
Try
Dim oResult = oMode.Replace("HotkeySearchKeyO=", "")
HotkeySearchKey = oResult
HotkeySearchKey_via_Server = True
Catch ex As Exception
NOMATCH_INFO = "d"
End Try
Else
Logger.Info($"Wrong oMode: {oMode}")
@@ -208,7 +234,7 @@ Public Class ClassInit
End Try
End Function
Public Shared Function InitUserLogin(Optional _User As String = "")
Public Async Function InitUserLogin(Optional _User As String = "") As Task(Of Boolean)
Try
If _User = "" Then
USER_USERNAME = Environment.UserName
@@ -216,25 +242,41 @@ Public Class ClassInit
USER_USERNAME = _User
End If
Try
DT_CLIENT_USER = Database.GetDatatable(String.Format("SELECT * FROM VWDD_USER_CLIENT WHERE UPPER(USERNAME) = UPPER('{0}')", Environment.UserName))
If DT_CLIENT_USER.Rows.Count > 1 Then
frmClientLogin.ShowDialog()
ElseIf DT_CLIENT_USER.Rows.Count = 1 Then
CLIENT_SELECTED = DT_CLIENT_USER.Rows(0).Item("CLIENT_ID")
If CheckModuleData() = False Then
Return False
End If
If APPSERVER_ACTIVE = True Then
Dim oTableResult As TableResult = Await _Client.GetDatatableByNameAsync("VWDD_USER_CLIENT", $"USER_ID = {USER_ID}")
DT_CLIENT_USER = oTableResult.Table
Else
DT_CLIENT_USER = Database.GetDatatable(String.Format("SELECT * FROM VWDD_USER_CLIENT WHERE UPPER(USERNAME) = UPPER('{0}')", Environment.UserName))
End If
If Not IsNothing(DT_CLIENT_USER) Then
If DT_CLIENT_USER.Rows.Count > 1 Then
frmClientLogin.ShowDialog()
ElseIf DT_CLIENT_USER.Rows.Count = 1 Then
CLIENT_SELECTED = DT_CLIENT_USER.Rows(0).Item("CLIENT_ID")
Else
Logger.Info("User '" & USER_USERNAME & "' not related to a client", True)
ERROR_INIT = "NO CLIENT"
'ERROR_STATE = "NO CLIENT"
Return False
End If
Else
Logger.Info("User '" & USER_USERNAME & "' not related to a client", True)
ERROR_INIT = "NO CLIENT"
'ERROR_STATE = "NO CLIENT"
Return False
End If
Catch ex As Exception
Logger.Info("Unexpected error in checking CLIENT: " & ex.Message)
CLIENT_SELECTED = 1
End Try
If CheckModuleData() = False Then
Return False
End If
If USER_IN_MODULE = False Then