This commit is contained in:
2022-07-28 16:08:48 +02:00
parent 28254c99f7
commit 3795c8fd74
12 changed files with 371 additions and 337 deletions

View File

@@ -89,42 +89,59 @@ Public Class ClassDOC_SEARCH
End If
ElseIf CURRENT_SEARCH_TYPE = "RECORD" Then
SQL_DOC_SEARCH = $"SELECT T.* ," & vbNewLine &
$"ISNULL(T1.VALUE,'') AS OPTION1," & vbNewLine &
$"ISNULL(T2.VALUE,'') AS OPTION2," & vbNewLine &
$"ISNULL(T3.VALUE,'') AS OPTION3," & vbNewLine &
$"ISNULL(T4.VALUE,'') AS OPTION4," & vbNewLine &
$"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX1') AS DOCIDX1," & vbNewLine &
$"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX2') AS DOCIDX2," & vbNewLine &
$"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX3') AS DOCIDX3," & vbNewLine &
$"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX4') AS DOCIDX4," & vbNewLine &
$"[dbo].[FNPMO_DOC_GET_DROPDOWN_VALUE] (T.DocID,{1},'DROPDOWN1','{7}',TRL.RECORD_ID) AS DROPDOWN1," & vbNewLine &
$"[dbo].[FNPMO_DOC_GET_DROPDOWN_VALUE] (T.DocID,{1},'DROPDOWN2','{7}',TRL.RECORD_ID) AS DROPDOWN2," & vbNewLine &
$"[dbo].[FNPMO_DOC_GET_DROPDOWN_VALUE] (T.DocID,{1},'DROPDOWN3','{7}',TRL.RECORD_ID) AS DROPDOWN3," & vbNewLine &
$"[dbo].[FNPMO_DOC_GET_DROPDOWN_VALUE] (T.DocID,{1},'DROPDOWN4','{7}',TRL.RECORD_ID) AS DROPDOWN4," & vbNewLine &
$"COALESCE([dbo].[FNPMO_DOC_GET_DOC_VALUE] (T.DocID,TRL.RECORD_ID,TRC.GUID),'') AS VALUE1," & vbNewLine &
$"COALESCE([dbo].[FNPMO_DOC_GET_DOC_VALUE] (T.DocID,TRL.RECORD_ID,TRC1.GUID),'') AS VALUE2," & vbNewLine &
$"COALESCE([dbo].[FNPMO_DOC_GET_DOC_VALUE] (T.DocID,TRL.RECORD_ID,TRC2.GUID),'') AS VALUE3," & vbNewLine &
$"COALESCE([dbo].[FNPMO_DOC_GET_DOC_VALUE] (T.DocID,TRL.RECORD_ID,TRC3.GUID),'') AS VALUE4," & vbNewLine &
$"COALESCE([dbo].[FNPMO_DOC_GET_DOC_VALUE] (T.DocID,TRL.RECORD_ID,TRC4.GUID),'') AS VALUE5," & vbNewLine &
$"COALESCE([dbo].[FNPMO_DOC_GET_DOC_VALUE] (T.DocID,TRL.RECORD_ID,TRC5.GUID),'') AS VALUE6," & vbNewLine &
$"dwAccessRight AS ACCESS_RIGHT" & vbNewLine &
$"FROM " & vbNewLine &
$"VWPMO_DOC_SEARCH T " & vbNewLine &
$"INNER JOIN TBPMO_DOC_RECORD_LINK TRL ON T.DocID = TRL.DOC_ID" & vbNewLine &
$"INNER JOIN TBPMO_RECORD TR ON TRL.RECORD_ID = TR.GUID" & vbNewLine &
$"INNER JOIN VWPMO_WD_OBJECT_RIGHTS TRIGHTS ON T.DocID = TRIGHTS.dwObjectID" & vbNewLine &
$"LEFT JOIN TBPMO_DOCSEARCH_RESULTLIST_CONFIG TRC ON TR.FORM_ID = TRC.ENTITY_ID AND TRC.LANGUAGE = '{USER_LANGUAGE}' AND TRC.GUID = {VALUE_CONF1}" & vbNewLine &
$"LEFT JOIN TBPMO_DOCSEARCH_RESULTLIST_CONFIG TRC1 ON TR.FORM_ID = TRC1.ENTITY_ID AND TRC1.LANGUAGE = '{USER_LANGUAGE}' AND TRC1.GUID = {VALUE_CONF2}" & vbNewLine &
$"LEFT JOIN TBPMO_DOCSEARCH_RESULTLIST_CONFIG TRC2 ON TR.FORM_ID = TRC2.ENTITY_ID AND TRC2.LANGUAGE = '{USER_LANGUAGE}' AND TRC2.GUID = {VALUE_CONF3}" & vbNewLine &
$"LEFT JOIN TBPMO_DOCSEARCH_RESULTLIST_CONFIG TRC3 ON TR.FORM_ID = TRC3.ENTITY_ID AND TRC3.LANGUAGE = '{USER_LANGUAGE}' AND TRC3.GUID = {VALUE_CONF4}" & vbNewLine &
$"LEFT JOIN TBPMO_DOCSEARCH_RESULTLIST_CONFIG TRC4 ON TR.FORM_ID = TRC4.ENTITY_ID AND TRC4.LANGUAGE = '{USER_LANGUAGE}' AND TRC4.GUID = {VALUE_CONF5}" & vbNewLine &
$"LEFT JOIN TBPMO_DOCSEARCH_RESULTLIST_CONFIG TRC5 ON TR.FORM_ID = TRC5.ENTITY_ID AND TRC5.LANGUAGE = '{USER_LANGUAGE}' AND TRC5.GUID = {VALUE_CONF6}" & vbNewLine &
$"LEFT JOIN TBPMO_CONTROL_VALUE T1 ON TRL.RECORD_ID = T1.RECORD_ID AND T1.CONTROL_ID = {OPTION1} " & vbNewLine &
$"LEFT JOIN TBPMO_CONTROL_VALUE T2 ON TRL.RECORD_ID = T2.RECORD_ID AND T2.CONTROL_ID = {OPTION2} " & vbNewLine &
$"LEFT JOIN TBPMO_CONTROL_VALUE T3 ON TRL.RECORD_ID = T3.RECORD_ID AND T3.CONTROL_ID = {OPTION3} " & vbNewLine &
$"LEFT JOIN TBPMO_CONTROL_VALUE T4 ON TRL.RECORD_ID = T4.RECORD_ID AND T4.CONTROL_ID = {OPTION4} " & vbNewLine &
$"WHERE TRL.RECORD_ID = {RECORD_ID} AND TR.FORM_ID = {ENTITY_ID} AND TRIGHTS.dwUserOrGroupID = {USERID_FK_INT_ECM}"
SQL_DOC_SEARCH = SQL_DOC_RESULT_RECORD
SQL_DOC_SEARCH = SQL_DOC_SEARCH.ToString
SQL_DOC_SEARCH = SQL_DOC_SEARCH.ToString.Replace("@ENTITY_ID", ENTITY_ID)
SQL_DOC_SEARCH = SQL_DOC_SEARCH.ToString.Replace("@USER_LANGUAGE", USER_LANGUAGE)
SQL_DOC_SEARCH = SQL_DOC_SEARCH.ToString.Replace("@VALUE_CONF1", VALUE_CONF1)
SQL_DOC_SEARCH = SQL_DOC_SEARCH.ToString.Replace("@VALUE_CONF2", VALUE_CONF2)
SQL_DOC_SEARCH = SQL_DOC_SEARCH.ToString.Replace("@VALUE_CONF3", VALUE_CONF3)
SQL_DOC_SEARCH = SQL_DOC_SEARCH.ToString.Replace("@VALUE_CONF4", VALUE_CONF4)
SQL_DOC_SEARCH = SQL_DOC_SEARCH.ToString.Replace("@VALUE_CONF5", VALUE_CONF5)
SQL_DOC_SEARCH = SQL_DOC_SEARCH.ToString.Replace("@VALUE_CONF6", VALUE_CONF6)
SQL_DOC_SEARCH = SQL_DOC_SEARCH.ToString.Replace("@OPTION1", OPTION1)
SQL_DOC_SEARCH = SQL_DOC_SEARCH.ToString.Replace("@OPTION2", OPTION2)
SQL_DOC_SEARCH = SQL_DOC_SEARCH.ToString.Replace("@OPTION3", OPTION3)
SQL_DOC_SEARCH = SQL_DOC_SEARCH.ToString.Replace("@OPTION4", OPTION4)
SQL_DOC_SEARCH = SQL_DOC_SEARCH.ToString.Replace("@RECORD_ID", RECORD_ID)
SQL_DOC_SEARCH = SQL_DOC_SEARCH.ToString.Replace("@USERID_FK_INT_ECM", USERID_FK_INT_ECM)
' SQL_DOC_SEARCH = $"SELECT T.* ," & vbNewLine &
' $"ISNULL(T1.VALUE,'') AS OPTION1," & vbNewLine &
' $"ISNULL(T2.VALUE,'') AS OPTION2," & vbNewLine &
' $"ISNULL(T3.VALUE,'') AS OPTION3," & vbNewLine &
' $"ISNULL(T4.VALUE,'') AS OPTION4," & vbNewLine &
' $"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX1') AS DOCIDX1," & vbNewLine &
' $"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX2') AS DOCIDX2," & vbNewLine &
' $"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX3') AS DOCIDX3," & vbNewLine &
' $"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX4') AS DOCIDX4," & vbNewLine &
' $"[dbo].[FNPMO_DOC_GET_DROPDOWN_VALUE] (T.DocID,{1},'DROPDOWN1','{7}',TRL.RECORD_ID) AS DROPDOWN1," & vbNewLine &
' $"[dbo].[FNPMO_DOC_GET_DROPDOWN_VALUE] (T.DocID,{1},'DROPDOWN2','{7}',TRL.RECORD_ID) AS DROPDOWN2," & vbNewLine &
' $"[dbo].[FNPMO_DOC_GET_DROPDOWN_VALUE] (T.DocID,{1},'DROPDOWN3','{7}',TRL.RECORD_ID) AS DROPDOWN3," & vbNewLine &
' $"[dbo].[FNPMO_DOC_GET_DROPDOWN_VALUE] (T.DocID,{1},'DROPDOWN4','{7}',TRL.RECORD_ID) AS DROPDOWN4," & vbNewLine &
' $"COALESCE([dbo].[FNPMO_DOC_GET_DOC_VALUE] (T.DocID,TRL.RECORD_ID,TRC.GUID),'') AS VALUE1," & vbNewLine &
' $"COALESCE([dbo].[FNPMO_DOC_GET_DOC_VALUE] (T.DocID,TRL.RECORD_ID,TRC1.GUID),'') AS VALUE2," & vbNewLine &
' $"COALESCE([dbo].[FNPMO_DOC_GET_DOC_VALUE] (T.DocID,TRL.RECORD_ID,TRC2.GUID),'') AS VALUE3," & vbNewLine &
' $"COALESCE([dbo].[FNPMO_DOC_GET_DOC_VALUE] (T.DocID,TRL.RECORD_ID,TRC3.GUID),'') AS VALUE4," & vbNewLine &
'$"COALESCE([dbo].[FNPMO_DOC_GET_DOC_VALUE] (T.DocID,TRL.RECORD_ID,TRC4.GUID),'') AS VALUE5," & vbNewLine &
'$"COALESCE([dbo].[FNPMO_DOC_GET_DOC_VALUE] (T.DocID,TRL.RECORD_ID,TRC5.GUID),'') AS VALUE6," & vbNewLine &
'$"dwAccessRight AS ACCESS_RIGHT" & vbNewLine &
'$"FROM " & vbNewLine &
'$"VWPMO_DOC_SEARCH T " & vbNewLine &
'$"INNER JOIN TBPMO_DOC_RECORD_LINK TRL ON T.DocID = TRL.DOC_ID" & vbNewLine &
'$"INNER JOIN TBPMO_RECORD TR ON TRL.RECORD_ID = TR.GUID" & vbNewLine &
' $"INNER JOIN VWPMO_WD_OBJECT_RIGHTS TRIGHTS ON T.DocID = TRIGHTS.dwObjectID" & vbNewLine &
' $"LEFT JOIN TBPMO_DOCSEARCH_RESULTLIST_CONFIG TRC ON TR.FORM_ID = TRC.ENTITY_ID AND TRC.LANGUAGE = '{USER_LANGUAGE}' AND TRC.GUID = {VALUE_CONF1}" & vbNewLine &
' $"LEFT JOIN TBPMO_DOCSEARCH_RESULTLIST_CONFIG TRC1 ON TR.FORM_ID = TRC1.ENTITY_ID AND TRC1.LANGUAGE = '{USER_LANGUAGE}' AND TRC1.GUID = {VALUE_CONF2}" & vbNewLine &
' $"LEFT JOIN TBPMO_DOCSEARCH_RESULTLIST_CONFIG TRC2 ON TR.FORM_ID = TRC2.ENTITY_ID AND TRC2.LANGUAGE = '{USER_LANGUAGE}' AND TRC2.GUID = {VALUE_CONF3}" & vbNewLine &
' $"LEFT JOIN TBPMO_DOCSEARCH_RESULTLIST_CONFIG TRC3 ON TR.FORM_ID = TRC3.ENTITY_ID AND TRC3.LANGUAGE = '{USER_LANGUAGE}' AND TRC3.GUID = {VALUE_CONF4}" & vbNewLine &
' $"LEFT JOIN TBPMO_DOCSEARCH_RESULTLIST_CONFIG TRC4 ON TR.FORM_ID = TRC4.ENTITY_ID AND TRC4.LANGUAGE = '{USER_LANGUAGE}' AND TRC4.GUID = {VALUE_CONF5}" & vbNewLine &
' $"LEFT JOIN TBPMO_DOCSEARCH_RESULTLIST_CONFIG TRC5 ON TR.FORM_ID = TRC5.ENTITY_ID AND TRC5.LANGUAGE = '{USER_LANGUAGE}' AND TRC5.GUID = {VALUE_CONF6}" & vbNewLine &
' $"LEFT JOIN TBPMO_CONTROL_VALUE T1 ON TRL.RECORD_ID = T1.RECORD_ID AND T1.CONTROL_ID = {OPTION1} " & vbNewLine &
' $"LEFT JOIN TBPMO_CONTROL_VALUE T2 ON TRL.RECORD_ID = T2.RECORD_ID AND T2.CONTROL_ID = {OPTION2} " & vbNewLine &
' $"LEFT JOIN TBPMO_CONTROL_VALUE T3 ON TRL.RECORD_ID = T3.RECORD_ID AND T3.CONTROL_ID = {OPTION3} " & vbNewLine &
' $"LEFT JOIN TBPMO_CONTROL_VALUE T4 ON TRL.RECORD_ID = T4.RECORD_ID AND T4.CONTROL_ID = {OPTION4} " & vbNewLine &
' $"WHERE TRL.RECORD_ID = {RECORD_ID} AND TR.FORM_ID = {ENTITY_ID} AND TRIGHTS.dwUserOrGroupID = {USERID_FK_INT_ECM}"
ElseIf CURRENT_SEARCH_TYPE = "FULLTEXT" Then
Dim sqlft = SQL_FULLTEXT
sqlft = sqlft.Replace("@FULLTEXT", CURRENT_FULLTEXT_PATTERN)
@@ -461,8 +478,14 @@ Public Class ClassDOC_SEARCH
oNewRow.Item(i) = CBool(rowvalue)
ElseIf oType = "System.Int32" Then
If Len(rowvalue) = 0 Then
oNewRow.Item(i) = 0
Else
oNewRow.Item(i) = CInt(rowvalue)
End If
Else
oNewRow.Item(i) = rowvalue.ToString
oNewRow.Item(i) = rowvalue.ToString
End If
Catch ex As Exception
@@ -516,7 +539,7 @@ Public Class ClassDOC_SEARCH
Return False
End Try
End Function
Public Shared Function SET_WD_RIGHTS(ByVal RESULT_DOCID, ByVal RESULT_DOC_PATH)
Public Shared Function SET_WD_RIGHTS(RESULT_DOCID As Integer, RESULT_DOC_PATH As String, DeleteRightsBefore As Boolean)
Try
If CURRENT_RECORD_ID = 0 Then
MsgBox("No Record selected - Please select one!", MsgBoxStyle.Exclamation)
@@ -524,7 +547,7 @@ Public Class ClassDOC_SEARCH
End If
LOGGER.Debug("#### SETTING RIGHTS FOR FILE ######", False)
If ClassWDRights.Init = True Then
If ClassWDRights.Doc_Renew_Rights(RESULT_DOCID, RESULT_DOC_PATH, True) Then
If ClassWDRights.Doc_Renew_Rights(RESULT_DOCID, RESULT_DOC_PATH, DeleteRightsBefore) Then
If ClassWDRights.MSG_RESULT <> "" Then
Dim msg = "Achtung: einige Rechte konnten nicht gesetzt werden: " & vbNewLine & ClassWDRights.MSG_RESULT
If USER_LANGUAGE <> "de-DE" Then

View File

@@ -135,6 +135,13 @@ Public Class ClassInit
SQL_FULLTEXT = KONFIG_DT.Rows(0).Item("SQL_FULLTEXT")
End If
sql = "SELECT * FROM TBDD_SQL_COMMANDS"
Dim oDTSQL_COMMANDS As DataTable = ClassDatabase.Return_Datatable(sql, True)
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)
sql = String.Format("SELECT * FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE VISIBLE = 1")
@@ -281,10 +288,11 @@ WHERE (LOWER(USERNAME) = LOWER('{0}')) AND T2.SHORT_NAME = 'ADDI'", USER_USERNAM
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)
USERS_LOGGED_IN = CInt(anzahl)
LOGGER.Debug("User# logged in: " & anzahl.ToString)
LOGGER.Info("User# logged in: " & anzahl.ToString)
LOGGER.Info("LICENSE_COUNT: " & LICENSE_COUNT.ToString)
'####
If LICENSE_COUNT < USERS_LOGGED_IN And LICENSE_EXPIRED = False Then
If LICENSE_COUNT <= (USERS_LOGGED_IN + 1) And LICENSE_EXPIRED = False Then
Dim msg = String.Format("Die Anzahl der aktuell angemeldeten User (" & USERS_LOGGED_IN.ToString & ") überschreitet die Anzahl der aktuellen Lizenzen!" & vbNewLine & "Anzahl der Lizenzen: " & LICENSE_COUNT.ToString & vbNewLine & "Bitte setzen Sie sich mit dem Systembetreuer in Verbindung!")
If USER_LANGUAGE <> "de-DE" Then

View File

@@ -186,9 +186,9 @@ Public Class ClassWindreamDocGrid
Dim type As Integer = row.Item("TYPE_ID")
If type = 4 And isConfig = False Then
If type = 3 And isConfig = False Then
DATE_COLUMNS.Add(columnTitle)
ElseIf type = 4 And isConfig = True Then
ElseIf type = 3 And isConfig = True Then
DATE_COLUMNS_CONFIG.Add(columnTitle)
End If
@@ -311,7 +311,7 @@ Public Class ClassWindreamDocGrid
Dim type As Integer = row.Item("TYPE_ID")
Dim isConfig As Boolean = row.Item("CONFIG_COLUMNS")
If Not IsNothing(col) And type = 4 And isConfig Then
If Not IsNothing(col) And type = 3 And isConfig Then
LOGGER.Debug($"Adapting DisplayFormat (DATETIME for Column {colCaption}")
col.DisplayFormat.FormatType = FormatType.DateTime
col.DisplayFormat.FormatString = CURRENT_DATE_FORMAT & " HH:MM:ss"
@@ -373,9 +373,7 @@ Public Class ClassWindreamDocGrid
AddHandler textedit.Leave, _textValueChangedHandler
e.RepositoryItem = textedit
End If
If typeId = 2 Then
ElseIf typeId = 2 Then
Dim checkEdit As New RepositoryItemCheckEdit()
checkEdit.ValueChecked = "True"
checkEdit.ValueUnchecked = "False"
@@ -385,9 +383,7 @@ Public Class ClassWindreamDocGrid
AddHandler checkEdit.CheckedChanged, _checkValueChangedHandler
e.RepositoryItem = checkEdit
End If
If typeId = 3 Then
ElseIf typeId = 3 Then
Dim dateedit As New RepositoryItemDateEdit()
dateedit.DisplayFormat.FormatType = FormatType.DateTime
@@ -415,22 +411,28 @@ Public Class ClassWindreamDocGrid
AddHandler dateedit.EditValueChanged, _datepickerValueChangedHandler
e.RepositoryItem = dateedit
End If
'ElseIf typeId = 4 And editable = F Then
' Dim dropdown As New RepositoryItemComboBox()
' Dim matchingRows() As DataRow = DT_DROPDOWN_ITEMS.Select(String.Format("CONFIG_ID = {0}", configId), "SEQUENCE")
If typeId = 4 Then
Dim dropdown As New RepositoryItemComboBox()
Dim matchingRows() As DataRow = DT_DROPDOWN_ITEMS.Select(String.Format("CONFIG_ID = {0}", configId), "SEQUENCE")
' For Each matchingRow As DataRow In matchingRows
' Dim item As New WindreamDocGridComboboxItem()
' item.ConfigID = matchingRow.Item("CONFIG_ID")
' item.Value = matchingRow.Item("VALUE")
' dropdown.Items.Add(item)
' Next
For Each matchingRow As DataRow In matchingRows
Dim item As New WindreamDocGridComboboxItem()
item.ConfigID = matchingRow.Item("CONFIG_ID")
item.Value = matchingRow.Item("VALUE")
dropdown.Items.Add(item)
Next
' AddHandler dropdown.SelectedValueChanged, _dropdownValueChangedHandler
AddHandler dropdown.SelectedValueChanged, _dropdownValueChangedHandler
' e.RepositoryItem = dropdown
e.RepositoryItem = dropdown
'End If
ElseIf typeId = 4 And editable Then
Dim textedit As New RepositoryItemTextEdit()
AddHandler textedit.Leave, _textValueChangedHandler
e.RepositoryItem = textedit
End If
ElseIf (e.Column.Name <> "colVALUE") Then