diff --git a/app/DD_Clipboard_Searcher/App.config b/app/DD_Clipboard_Searcher/App.config
index 8351848..ac3f765 100644
--- a/app/DD_Clipboard_Searcher/App.config
+++ b/app/DD_Clipboard_Searcher/App.config
@@ -12,7 +12,7 @@
- False
+ True
@@ -84,7 +84,9 @@
-
+
diff --git a/app/DD_Clipboard_Searcher/ClassInit.vb b/app/DD_Clipboard_Searcher/ClassInit.vb
index e6f07f4..9e83ed2 100644
--- a/app/DD_Clipboard_Searcher/ClassInit.vb
+++ b/app/DD_Clipboard_Searcher/ClassInit.vb
@@ -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
diff --git a/app/DD_Clipboard_Searcher/My Project/Settings.Designer.vb b/app/DD_Clipboard_Searcher/My Project/Settings.Designer.vb
index c473a47..111595c 100644
--- a/app/DD_Clipboard_Searcher/My Project/Settings.Designer.vb
+++ b/app/DD_Clipboard_Searcher/My Project/Settings.Designer.vb
@@ -76,7 +76,7 @@ Namespace My
_
+ Global.System.Configuration.DefaultSettingValueAttribute("True")> _
Public ReadOnly Property UseAppConfigConString() As Boolean
Get
Return CType(Me("UseAppConfigConString"),Boolean)
diff --git a/app/DD_Clipboard_Searcher/My Project/Settings.settings b/app/DD_Clipboard_Searcher/My Project/Settings.settings
index ac75691..9167628 100644
--- a/app/DD_Clipboard_Searcher/My Project/Settings.settings
+++ b/app/DD_Clipboard_Searcher/My Project/Settings.settings
@@ -14,7 +14,7 @@
- False
+ True
\ No newline at end of file
diff --git a/app/DD_Clipboard_Searcher/frmSplash.vb b/app/DD_Clipboard_Searcher/frmSplash.vb
index 887384e..340d85b 100644
--- a/app/DD_Clipboard_Searcher/frmSplash.vb
+++ b/app/DD_Clipboard_Searcher/frmSplash.vb
@@ -32,7 +32,7 @@ Public NotInheritable Class frmSplash
Return _step * (100 / InitSteps)
End Function
- Private Sub bw_DoWork(sender As Object, e As System.ComponentModel.DoWorkEventArgs)
+ Private Async Function bw_DoWork(sender As Object, e As System.ComponentModel.DoWorkEventArgs) As Task
Try
Dim Init = New ClassInit()
Worker.ReportProgress(CalcProgress(1), "Initializing Logger")
@@ -48,7 +48,7 @@ Public NotInheritable Class frmSplash
Thread.Sleep(200)
Worker.ReportProgress(CalcProgress(4), "Initializing User-Configuration")
- If ClassInit.InitUserLogin = False Then
+ If Await Init.InitUserLogin = False Then
If ERROR_INIT = "" Then
ERROR_INIT = "INVALID USER"
End If
@@ -63,7 +63,7 @@ Public NotInheritable Class frmSplash
Catch ex As Exception
MsgBox("Unexpected Error in bw_DoWork: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End Try
- End Sub
+ End Function
Private Sub bw_ProgressChanged(sender As Object, e As ProgressChangedEventArgs)
pbStatus.Value = e.ProgressPercentage
diff --git a/app/DD_Clipboard_Searcher/modCurrent.vb b/app/DD_Clipboard_Searcher/modCurrent.vb
index f141f6d..a94bb3c 100644
--- a/app/DD_Clipboard_Searcher/modCurrent.vb
+++ b/app/DD_Clipboard_Searcher/modCurrent.vb
@@ -8,15 +8,17 @@ Module modCurrent
Public LogConfig As LogConfig
Public Logger As Logger
Public Database As MSSQLServer
+ Public DatabaseAppServ As MSSQLServer
Public Automation As ClassAutomation
Public ConfigManager As ConfigManager(Of ClassConfig)
Public MyConnectionString As String = ""
- Public CONNECTION_STRING_APP_SERVER As String = ""
+ Public MyConStringAppserv As String = ""
Public HotkeyFunctionKey As String = ClassConstants.HOTKEY_CTRL
Public HotkeySearchKey As String = "d"
+ Public HotkeySearchKey_via_Server As Boolean = False
Public LogErrorsOnly As Boolean = True
Public CURRENT_WINDOW_NAME As String