DAtabase integriert

This commit is contained in:
2023-05-22 16:55:44 +02:00
parent 2db575d944
commit c2deb54f11
114 changed files with 8526 additions and 14722 deletions

View File

@@ -3,6 +3,7 @@ Imports System.IO
Imports DD_LIB_Standards
Imports DevExpress.DataAccess.Native
Imports DigitalData.Modules.Config
Imports DigitalData.Modules.Database
Imports DigitalData.Modules.Logging
Public Class ClassInit
@@ -84,7 +85,7 @@ Public Class ClassInit
End Function
Public Shared Function InitDatabase()
Try
Dim dbResult As Boolean
'Dim dbResult As Boolean
MySettings_Load()
@@ -97,10 +98,14 @@ Public Class ClassInit
MyConnectionString = DecryptConnectionString(CONFIG.Config.ConnectionString)
End If
If MyConnectionString <> String.Empty Then
dbResult = clsDatabase.Init(MyConnectionString)
MYDB_ECM = New MSSQLServer(LOGCONFIG, MyConnectionString)
If MYDB_ECM.DBInitialized = False Then
frmConfig_Basic.ShowDialog()
End If
' dbResult = clsDatabase.Init(MyConnectionString)
Else
frmConfig_Basic.ShowDialog()
dbResult = clsDatabase.Init(MyConnectionString)
' dbResult = clsDatabase.Init(MyConnectionString)
End If
If ClassProxy.MyPROXYConnectionString <> String.Empty Then
If clsDatabase.Init(ClassProxy.MyPROXYConnectionString, True) = False Then
@@ -111,15 +116,19 @@ Public Class ClassInit
ClassHelper.InsertEssential_Log(USER_GUID, "USER-ID", String.Format("Proxy-Server {0} - Database {1} is used", csb.DataSource, csb.InitialCatalog))
End If
End If
ClassDatabase.Init()
If dbResult = False Then
If clsLogger.LOGG_MSG <> String.Empty Then
Throw New Exception("Error while Initializing database:" & vbNewLine & clsLogger.LOGG_MSG)
Else
Throw New Exception("Find more information in the logfile.")
End If
If Not IsNothing(MYDB_ECM) Then
If MYDB_ECM.DBInitialized = False Then
If clsLogger.LOGG_MSG <> String.Empty Then
Throw New Exception("Error while Initializing database:" & vbNewLine & clsLogger.LOGG_MSG)
Else
Throw New Exception("Find more information in the logfile.")
End If
End If
Else
Return False
End If
Return True
Catch ex As Exception
MsgBox("Unexpected Error in Init Database:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
@@ -132,7 +141,7 @@ Public Class ClassInit
Try
Dim CurrentDir As String = My.Application.Info.DirectoryPath
Dim AddonPath As String = MY_ADDON_PATH ' ClassDatabase.Execute_Scalar(Sql)
Dim AddonPath As String = MY_ADDON_PATH ' MYDB_ECM.GetScalarValue(SQL)
Dim Dev_AddonPath As String = System.IO.Path.GetFullPath(System.IO.Path.Combine(CurrentDir, "..\..\..\..\app"))
If AddonPath Is Nothing OrElse AddonPath = "" Then
@@ -178,7 +187,7 @@ Public Class ClassInit
End If
Dim sql = String.Format("SELECT * FROM TBPMO_KONFIGURATION WHERE GUID = 1")
Dim KONFIG_DT As DataTable = ClassDatabase.Return_Datatable(sql, False)
Dim KONFIG_DT As DataTable = MYDB_ECM.GetDatatable(sql)
If KONFIG_DT.Rows.Count = 1 Then
Try
MY_WIKISTRING = KONFIG_DT.Rows(0).Item("WIKI_STRING")
@@ -192,30 +201,31 @@ Public Class ClassInit
WMPATH_PREFIX = KONFIG_DT.Rows(0).Item("WMPATH_PREFIX")
If Not WMPATH_PREFIX.ToUpper.StartsWith("\\WINDREAM\OBJECTS") Then
SHARE_DRIVE_ACTIVE = True
LOGGER.Info("WM SHARE_DRIVE via TBPMO_KONFIGURATION is active")
End If
End If
sql = "SELECT * FROM TBDD_SQL_COMMANDS"
Dim oDTSQL_COMMANDS As DataTable = ClassDatabase.Return_Datatable(sql, True)
Dim oDTSQL_COMMANDS As DataTable = MYDB_ECM.GetDatatable(sql)
For Each oRow As DataRow In oDTSQL_COMMANDS.Rows
If oRow.Item("TITLE") = "ADDI_DOC_SEARCH_RECORD" Then
SQL_DOC_RESULT_RECORD = oRow.Item("SQL_COMMAND")
End If
Next
sql = "SELECT * FROM TBPMO_CONTROL"
CURRENT_TBPMO_CONTROL = ClassDatabase.Return_Datatable(sql, True)
CURRENT_TBPMO_CONTROL = MYDB_ECM.GetDatatable(sql)
sql = String.Format("SELECT * FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE VISIBLE = 1")
CURRENT_RESULTLIST_CONFIG = ClassDatabase.Return_Datatable(sql, True)
DT_DOCSEARCH_RESULTLIST_CONFIG = MYDB_ECM.GetDatatable(sql)
sql = String.Format("SELECT * FROM TBPMO_DOCSEARCH_VARIABLE_CONTROLS")
CURRENT_VARIABLE_CONTROLS = ClassDatabase.Return_Datatable(sql, True)
CURRENT_VARIABLE_CONTROLS = MYDB_ECM.GetDatatable(sql)
sql = String.Format("SELECT * FROM TBPMO_FORM_VIEW")
CURRENT_TBPMO_FORM_VIEW = ClassDatabase.Return_Datatable(sql, True)
CURRENT_TBPMO_FORM_VIEW = MYDB_ECM.GetDatatable(sql)
sql = String.Format("select T.*, T1.HEADER_CAPTION,T1.TYPE_ID ,T1.ENTITY_ID,T1.LANGUAGE from TBPMO_DOCRESULT_DROPDOWN_ITEMS T, TBPMO_DOCSEARCH_RESULTLIST_CONFIG T1 WHERE T.CONFIG_ID = T1.GUID")
CURRENT_TBPMO_DOCRESULT_DROPDOWN_ITEMS = ClassDatabase.Return_Datatable(sql, True)
CURRENT_TBPMO_DOCRESULT_DROPDOWN_ITEMS = MYDB_ECM.GetDatatable(sql)
clsCURRENT.LOG_ERRORS_ONLY = DEBUG
sql = String.Format("select* from TBPMO_FILE_FORMATS_CHANGE")
Dim oDTFF_CHANGE As DataTable = ClassDatabase.Return_Datatable(sql, True)
Dim oDTFF_CHANGE As DataTable = MYDB_ECM.GetDatatable(sql)
For Each oRow As DataRow In oDTFF_CHANGE.Rows
FILE_FORMATS_CHANGE_DURING_EDIT.Add(oRow.Item("FILE_EXT"))
Next
@@ -231,7 +241,7 @@ Public Class ClassInit
Dim sql = String.Format("SELECT T1.GUID, T.DESCRIPTION, T.SQL_CONNECTION, T.SQL_CONNECTION_PROXY, T.WM_ALIAS,T1.ACTIVE FROM " &
"TBPMO_CLIENT_CONNECTION_SWITCH T, TBPMO_CLIENT_CONN_SWITCH_USER T1 WHERE T.GUID = T1.CONN_SWITCH_ID " &
"And T.ACTIVE = 1 And T1.USER_ID = {0}", USER_GUID)
CURRENT_TBPMO_CONN_SWITCH = ClassDatabase.Return_Datatable(sql)
CURRENT_TBPMO_CONN_SWITCH = MYDB_ECM.GetDatatable(sql)
Catch ex As Exception
LOGGER.Warn("Unexpected Error in Init_CONN_SWITCH: " & ex.Message)
End Try
@@ -250,7 +260,7 @@ Public Class ClassInit
WHERE (USERNAME = '{0}') AND T2.SHORT_NAME = 'ADDI'", USER_USERNAME)
LOGGER.Info("Login at: " & Now.ToString)
LOGGER.Info("Username: " & USER_USERNAME)
Dim USER_DT As DataTable = ClassDatabase.Return_Datatable(sql, True)
Dim USER_DT As DataTable = MYDB_ECM.GetDatatable(sql)
If USER_DT.Rows.Count = 0 Then
LOGGER.Warn(" - User '" & USER_USERNAME & "' not listed in Useradministration!")
@@ -292,12 +302,11 @@ WHERE (USERNAME = '{0}') AND T2.SHORT_NAME = 'ADDI'", USER_USERNAME)
'Me.Close()
Else
sql = String.Format("select * from TBPMO_RIGHT_USER WHERE USER_ID = " & USER_GUID)
CURRENT_TBPMO_RIGHT_USER = ClassDatabase.Return_Datatable(sql, True)
CURRENT_TBPMO_RIGHT_USER = MYDB_ECM.GetDatatable(sql)
Init_CONN_SWITCH()
'USER_LANGUAGE = ClassDatabase.Execute_Scalar("SELECT LANGUAGE FROM TBDD_USER WHERE GUID = " & USER_GUID, False)
DT_CLIENT_USER = ClassDatabase.Return_Datatable("SELECT T.*, T1.LICENSE_PMO, T1.CLIENT_NAME FROM TBDD_CLIENT_USER T,TBDD_CLIENT T1 WHERE T.CLIENT_ID = T1.GUID AND T.USER_ID = " & USER_GUID, False)
DT_CLIENT_USER = MYDB_ECM.GetDatatable("SELECT T.*, T1.LICENSE_PMO, T1.CLIENT_NAME FROM TBDD_CLIENT_USER T,TBDD_CLIENT T1 WHERE T.CLIENT_ID = T1.GUID AND T.USER_ID = " & USER_GUID)
If DT_CLIENT_USER.Rows.Count > 1 Then
frmClientLogin.ShowDialog()
ElseIf DT_CLIENT_USER.Rows.Count = 1 Then
@@ -317,9 +326,9 @@ WHERE (USERNAME = '{0}') AND T2.SHORT_NAME = 'ADDI'", USER_USERNAME)
ClassLicence.Refresh_Licence(CLIENT_SELECTED)
'Am System anmelden
'sql = String.Format("UPDATE TBDD_USER SET LOGGED_IN = 1, LOGGED_WHERE = '{0}' WHERE GUID = {1}", Environment.MachineName, USER_GUID)
ClassDatabase.Execute_non_Query(sql)
MYDB_ECM.ExecuteNonQuery(sql)
sql = "DELETE FROM TBDD_USER_MODULE_LOG_IN WHERE USER_ID = " & USER_GUID & " AND UPPER(MODULE)= UPPER('Record-Organizer')"
If ClassDatabase.Execute_non_Query(sql) = True Then
If MYDB_ECM.ExecuteNonQuery(sql) = True Then
End If
Dim ConStringMain As String
@@ -329,7 +338,7 @@ WHERE (USERNAME = '{0}') AND T2.SHORT_NAME = 'ADDI'", USER_USERNAME)
ConStringMain = "Main: " & MyConnectionString
End If
sql = String.Format("INSERT INTO TBDD_USER_MODULE_LOG_IN (USER_ID,CLIENT_ID,MODULE,VERSION_CLIENT,MACHINE_NAME,CONNECTION_STRING) VALUES ({0},{1},'Record-Organizer','{2}','{3}','{4}')", USER_GUID, CLIENT_SELECTED, My.Application.Info.Version.ToString, Environment.MachineName, ConStringMain)
ClassDatabase.Execute_non_Query(sql)
MYDB_ECM.ExecuteNonQuery(sql)
USER_IS_ADMIN = USER_DT.Rows(0).Item("IS_ADMIN") 'vorher RECORD_ADMIN
If USER_IS_ADMIN = True Then
@@ -372,7 +381,7 @@ WHERE (USERNAME = '{0}') AND T2.SHORT_NAME = 'ADDI'", USER_USERNAME)
End Try
sql = String.Format("SELECT COUNT(*) AS Expr1 FROM TBDD_USER_MODULE_LOG_IN WHERE UPPER(MODULE) = UPPER('Record-Organizer') AND CLIENT_ID = {0}", CLIENT_SELECTED)
Dim anzahl = ClassDatabase.Execute_Scalar(sql, False)
Dim anzahl = MYDB_ECM.GetScalarValue(sql)
USERS_LOGGED_IN = CInt(anzahl)
LOGGER.Info("User# logged in: " & anzahl.ToString)
LOGGER.Info("LICENSE_COUNT: " & LICENSE_COUNT.ToString)
@@ -390,7 +399,7 @@ WHERE (USERNAME = '{0}') AND T2.SHORT_NAME = 'ADDI'", USER_USERNAME)
If USER_IS_ADMIN = False Then
'Anmeldung wieder herausnehmen
sql = "DELETE FROM TBDD_USER_MODULE_LOG_IN WHERE USER_ID = " & USER_GUID & " AND MODULE= 'Record-Organizer'"
ClassDatabase.Execute_non_Query(sql)
MYDB_ECM.ExecuteNonQuery(sql)
LOGGER.Warn(" - logged out the user")
Return False
End If
@@ -398,7 +407,7 @@ WHERE (USERNAME = '{0}') AND T2.SHORT_NAME = 'ADDI'", USER_USERNAME)
Try
'Die FolderWatch starten
Dim sql1 = "SELECT FOLDER_PATH FROM TBPMO_FOLDERWATCH_USER WHERE FOLDER_TYPE = 'SCAN' AND USER_ID = " & USER_GUID
Dim folderwatch_SCAN = ClassDatabase.Execute_Scalar(sql1, False)
Dim folderwatch_SCAN = MYDB_ECM.GetScalarValue(sql1)
If Not folderwatch_SCAN Is Nothing Then
CURRENT_SCAN_FOLDERWATCH = folderwatch_SCAN
@@ -416,7 +425,7 @@ WHERE (USERNAME = '{0}') AND T2.SHORT_NAME = 'ADDI'", USER_USERNAME)
SQL_FULLTEXT = "SELECT DISTINCT [dwDocID] FROM [dbo].FullText WHERE CONTAINS([Text], '""*@FULLTEXT*""') "
End If
Dim oSQL = $"SELECT COUNT(GU.GUID) FROM TBDD_GROUPS_USER GU INNER JOIN TBDD_GROUPS G ON GU.GROUP_ID = G.GUID WHERE G.NAME = 'ORGFLOW-Supervisor' AND GU.USER_ID = {USER_GUID}"
USER_IS_SUPERVISOR = ClassDatabase.Execute_Scalar(oSQL, False)
USER_IS_SUPERVISOR = MYDB_ECM.GetScalarValue(oSQL)
Return True
'LabelLoggedIn.Caption = "Anzahl Angemeldete User: " & anzahl.ToString
End If