Compare commits
7 Commits
784d954441
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1469063ad7 | ||
|
|
a50e7e3c55 | ||
|
|
3a44abf77b | ||
|
|
570d1161f8 | ||
|
|
a88af162b5 | ||
|
|
93645962a6 | ||
|
|
5dfa7d1421 |
@@ -1,67 +1,67 @@
|
|||||||
Public Class ClassConstructors
|
Public Class ClassConstructorsf
|
||||||
Public Shared ConstructorsTuple_TreeView As Object
|
'Public Shared ConstructorsTuple_TreeView As Object
|
||||||
Public Shared Function Init_Tuple()
|
'Public Shared Function Init_Tuple()
|
||||||
|
|
||||||
Dim ConstructTreeViewTuple = New Dictionary(Of Tuple(Of TreeView), Integer)()
|
' Dim ConstructTreeViewTuple = New Dictionary(Of Tuple(Of TreeView), Integer)()
|
||||||
Dim sql = String.Format("Select DISTINCT T.GUID, T2.ENTITY_ID FROM TBPMO_FORM_CONSTRUCTOR T, TBPMO_FORM_CONSTRUCTOR_DETAIL T1, " &
|
' Dim sql = String.Format("Select DISTINCT T.GUID, T2.ENTITY_ID FROM TBPMO_FORM_CONSTRUCTOR T, TBPMO_FORM_CONSTRUCTOR_DETAIL T1, " &
|
||||||
"TBPMO_STRUCTURE_NODES_CONFIGURATION T2 WHERE T.GUID = T1.CONSTRUCT_ID And T1.FORM_ID = T2.ENTITY_ID " &
|
' "TBPMO_STRUCTURE_NODES_CONFIGURATION T2 WHERE T.GUID = T1.CONSTRUCT_ID And T1.FORM_ID = T2.ENTITY_ID " &
|
||||||
"And T.GUID In (Select CONSTRUCT_ID FROM TBPMO_CONSTRUCTOR_USER WHERE USER_ID = {0})", USER_GUID)
|
' "And T.GUID In (Select CONSTRUCT_ID FROM TBPMO_CONSTRUCTOR_USER WHERE USER_ID = {0})", USER_GUID)
|
||||||
Dim DT As DataTable = MYDB_ECM.GetDatatable(sql)
|
' Dim DT As DataTable = MYDB_ECM.GetDatatable(sql)
|
||||||
For Each rowconstruct As DataRow In DT.Rows
|
' For Each rowconstruct As DataRow In DT.Rows
|
||||||
Try
|
' Try
|
||||||
Dim sqlnodes = String.Format("select * from VWPMO_STRUCTURE_NODES where ENTITY_ID IN (SELECT FORM_ID FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = {0})", rowconstruct.Item(0))
|
' Dim sqlnodes = String.Format("select * from VWPMO_STRUCTURE_NODES where ENTITY_ID IN (SELECT FORM_ID FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = {0})", rowconstruct.Item(0))
|
||||||
Dim DTNODES As DataTable = MYDB_ECM.GetDatatable(sqlnodes)
|
' Dim DTNODES As DataTable = MYDB_ECM.GetDatatable(sqlnodes)
|
||||||
|
|
||||||
Dim sqlimage = String.Format("select * from TBPMO_STRUCTURE_NODES_CONFIGURATION where ENTITY_ID IN (SELECT FORM_ID FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = {0})", rowconstruct.Item(0))
|
' Dim sqlimage = String.Format("select * from TBPMO_STRUCTURE_NODES_CONFIGURATION where ENTITY_ID IN (SELECT FORM_ID FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = {0})", rowconstruct.Item(0))
|
||||||
Dim DT_TREEVIEW_CONFIGURATION = MYDB_ECM.GetDatatable(sql)
|
' Dim DT_TREEVIEW_CONFIGURATION = MYDB_ECM.GetDatatable(sql)
|
||||||
Dim TREEVIEW_IMAGELIST = New ImageList
|
' Dim TREEVIEW_IMAGELIST = New ImageList
|
||||||
|
|
||||||
For Each row As DataRow In DT_TREEVIEW_CONFIGURATION.Rows
|
' For Each row As DataRow In DT_TREEVIEW_CONFIGURATION.Rows
|
||||||
Try
|
' Try
|
||||||
Dim bimage = row.Item("NODE_IMAGE")
|
' Dim bimage = row.Item("NODE_IMAGE")
|
||||||
If Not IsDBNull(bimage) Then
|
' If Not IsDBNull(bimage) Then
|
||||||
Dim Node_image = ByteArrayToBitmap(bimage)
|
' Dim Node_image = ByteArrayToBitmap(bimage)
|
||||||
TREEVIEW_IMAGELIST.Images.Add(row.Item("GUID").ToString, Node_image) 'row.Item("GUID").ToString & "#" & row.Item("ENTITY_ID")
|
' TREEVIEW_IMAGELIST.Images.Add(row.Item("GUID").ToString, Node_image) 'row.Item("GUID").ToString & "#" & row.Item("ENTITY_ID")
|
||||||
End If
|
' End If
|
||||||
Catch ex As Exception
|
' Catch ex As Exception
|
||||||
|
|
||||||
End Try
|
' End Try
|
||||||
|
|
||||||
Next
|
' Next
|
||||||
|
|
||||||
'Dim async As New ClassAsyncNodeBuild(DTNODES, TREEVIEW_IMAGELIST)
|
' 'Dim async As New ClassAsyncNodeBuild(DTNODES, TREEVIEW_IMAGELIST)
|
||||||
'async.bw.RunWorkerAsync()
|
' 'async.bw.RunWorkerAsync()
|
||||||
'While async.bw.IsBusy
|
' 'While async.bw.IsBusy
|
||||||
' Application.DoEvents()
|
' ' Application.DoEvents()
|
||||||
'End While
|
' 'End While
|
||||||
Dim MyTreeview As TreeView = ClassNodeNavigation.CreateTreeViewNodes(DTNODES, TREEVIEW_IMAGELIST)
|
' Dim MyTreeview As TreeView = ClassNodeNavigation.CreateTreeViewNodes(DTNODES, TREEVIEW_IMAGELIST, DT_CON)
|
||||||
ConstructTreeViewTuple.Add(Tuple.Create(MyTreeview), rowconstruct.Item(0))
|
' ConstructTreeViewTuple.Add(Tuple.Create(MyTreeview), rowconstruct.Item(0))
|
||||||
Catch ex As Exception
|
' Catch ex As Exception
|
||||||
ClassHelper.MSGBOX_Handler("ERROR", "Unexpected Error", ex.Message, "Error in Adding TreeView to Dictionary: ")
|
' ClassHelper.MSGBOX_Handler("ERROR", "Unexpected Error", ex.Message, "Error in Adding TreeView to Dictionary: ")
|
||||||
End Try
|
' End Try
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Next
|
' Next
|
||||||
|
|
||||||
ConstructorsTuple_TreeView = ConstructTreeViewTuple
|
' ConstructorsTuple_TreeView = ConstructTreeViewTuple
|
||||||
|
|
||||||
End Function
|
'End Function
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Public Shared Function Check_TreeViewLoaded(CONSTRUCTID As Integer)
|
'Public Shared Function Check_TreeViewLoaded(CONSTRUCTID As Integer)
|
||||||
Try
|
' Try
|
||||||
For Each constrid As Integer In ConstructorsTuple_TreeView.keys
|
' For Each constrid As Integer In ConstructorsTuple_TreeView.keys
|
||||||
If constrid = CONSTRUCTID Then
|
' If constrid = CONSTRUCTID Then
|
||||||
Return True
|
' Return True
|
||||||
End If
|
' End If
|
||||||
Next
|
' Next
|
||||||
Return False
|
' Return False
|
||||||
Catch ex As Exception
|
' Catch ex As Exception
|
||||||
LOGGER.Warn("Error in Check_TreeViewLoaded: " & ex.Message)
|
' LOGGER.Warn("Error in Check_TreeViewLoaded: " & ex.Message)
|
||||||
Return False
|
' Return False
|
||||||
End Try
|
' End Try
|
||||||
End Function
|
'End Function
|
||||||
|
|
||||||
End Class
|
End Class
|
||||||
|
|||||||
@@ -52,24 +52,24 @@ Public Class ClassDOC_SEARCH
|
|||||||
|
|
||||||
Dim SQL_DOC_SEARCH
|
Dim SQL_DOC_SEARCH
|
||||||
If CURRENT_SEARCH_TYPE = "ENTITY" Then
|
If CURRENT_SEARCH_TYPE = "ENTITY" Then
|
||||||
SQL_DOC_SEARCH = String.Format("SELECT DISTINCT T.*," & vbNewLine &
|
SQL_DOC_SEARCH = String.Format("SELECT DISTINCT T.*," & vbCrLf &
|
||||||
"'NO OPTION IN ENTITY-SEARCH' AS OPTION1," & vbNewLine &
|
"'NO OPTION IN ENTITY-SEARCH' AS OPTION1," & vbCrLf &
|
||||||
"'NO OPTION IN ENTITY-SEARCH' AS OPTION2," & vbNewLine &
|
"'NO OPTION IN ENTITY-SEARCH' AS OPTION2," & vbCrLf &
|
||||||
"'NO INDEX IN ENTITY-SEARCH' AS DOCIDX1," & vbNewLine &
|
"'NO INDEX IN ENTITY-SEARCH' AS DOCIDX1," & vbCrLf &
|
||||||
"'NO INDEX IN ENTITY-SEARCH' AS DOCIDX2," & vbNewLine &
|
"'NO INDEX IN ENTITY-SEARCH' AS DOCIDX2," & vbCrLf &
|
||||||
"'NO INDEX IN ENTITY-SEARCH' AS DOCIDX3," & vbNewLine &
|
"'NO INDEX IN ENTITY-SEARCH' AS DOCIDX3," & vbCrLf &
|
||||||
"'NO INDEX IN ENTITY-SEARCH' AS DOCIDX4," & vbNewLine &
|
"'NO INDEX IN ENTITY-SEARCH' AS DOCIDX4," & vbCrLf &
|
||||||
"'NO DROPDOWN IN ENTITY-SEARCH' AS DROPDOWN1," & vbNewLine &
|
"'NO DROPDOWN IN ENTITY-SEARCH' AS DROPDOWN1," & vbCrLf &
|
||||||
"'NO DROPDOWN IN ENTITY-SEARCH' AS DROPDOWN2," & vbNewLine &
|
"'NO DROPDOWN IN ENTITY-SEARCH' AS DROPDOWN2," & vbCrLf &
|
||||||
"'NO DROPDOWN IN ENTITY-SEARCH' AS DROPDOWN3," & vbNewLine &
|
"'NO DROPDOWN IN ENTITY-SEARCH' AS DROPDOWN3," & vbCrLf &
|
||||||
"'NO DROPDOWN IN ENTITY-SEARCH' AS DROPDOWN4" & vbNewLine &
|
"'NO DROPDOWN IN ENTITY-SEARCH' AS DROPDOWN4" & vbCrLf &
|
||||||
"FROM " & vbNewLine &
|
"FROM " & vbCrLf &
|
||||||
"VWPMO_DOC_SEARCH T" & vbNewLine &
|
"VWPMO_DOC_SEARCH T" & vbCrLf &
|
||||||
"WHERE T.DocID IN (select DISTINCT T.DOC_ID from TBPMO_DOC_RECORD_LINK T, TBPMO_RECORD T1 WHERE T.RECORD_ID = T1.GUID AND T1.FORM_ID = {0}) " & vbNewLine &
|
"WHERE T.DocID IN (select DISTINCT T.DOC_ID from TBPMO_DOC_RECORD_LINK T, TBPMO_RECORD T1 WHERE T.RECORD_ID = T1.GUID AND T1.FORM_ID = {0}) " & vbCrLf &
|
||||||
"AND T.DocID IN (SELECT dwObjectID FROM VWPMO_WD_OBJECT_RIGHTS WHERE dwUserOrGroupID = {2} AND dwObjectID = T.DocID)", ENTITY_ID, USER_LANGUAGE, USERID_FK_INT_ECM, OPTION1, OPTION2)
|
"AND T.DocID IN (SELECT dwObjectID FROM VWPMO_WD_OBJECT_RIGHTS WHERE dwUserOrGroupID = {2} AND dwObjectID = T.DocID)", ENTITY_ID, USER_LANGUAGE, USERID_FK_INT_ECM, OPTION1, OPTION2)
|
||||||
If CURRENT_ENTITYSQL_WHERE <> "" Then
|
If CURRENT_ENTITYSQL_WHERE <> "" Then
|
||||||
Dim where = CURRENT_ENTITYSQL_WHERE.Replace("WHERE [RECORD-ID] IN ", "")
|
Dim where = CURRENT_ENTITYSQL_WHERE.Replace("WHERE [RECORD-ID] IN ", "")
|
||||||
SQL_DOC_SEARCH = SQL_DOC_SEARCH & " " & vbNewLine & String.Format("AND T.DocID IN (SELECT DISTINCT DOC_ID from TBPMO_DOC_RECORD_LINK WHERE RECORD_ID IN ({0}))", where)
|
SQL_DOC_SEARCH = SQL_DOC_SEARCH & " " & vbCrLf & String.Format("AND T.DocID IN (SELECT DISTINCT DOC_ID from TBPMO_DOC_RECORD_LINK WHERE RECORD_ID IN ({0}))", where)
|
||||||
End If
|
End If
|
||||||
If BG = True Then
|
If BG = True Then
|
||||||
If IsNothing(CURRENT_DT_DOC_ENTITY_SEARCH) Then
|
If IsNothing(CURRENT_DT_DOC_ENTITY_SEARCH) Then
|
||||||
@@ -106,120 +106,120 @@ Public Class ClassDOC_SEARCH
|
|||||||
SQL_DOC_SEARCH = SQL_DOC_SEARCH.ToString.Replace("@RECORD_ID", RECORD_ID)
|
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 = SQL_DOC_SEARCH.ToString.Replace("@USERID_FK_INT_ECM", USERID_FK_INT_ECM)
|
||||||
|
|
||||||
' SQL_DOC_SEARCH = $"SELECT T.* ," & vbNewLine &
|
' SQL_DOC_SEARCH = $"SELECT T.* ," & vBCrlf &
|
||||||
' $"ISNULL(T1.VALUE,'') AS OPTION1," & vbNewLine &
|
' $"ISNULL(T1.VALUE,'') AS OPTION1," & vBCrlf &
|
||||||
' $"ISNULL(T2.VALUE,'') AS OPTION2," & vbNewLine &
|
' $"ISNULL(T2.VALUE,'') AS OPTION2," & vBCrlf &
|
||||||
' $"ISNULL(T3.VALUE,'') AS OPTION3," & vbNewLine &
|
' $"ISNULL(T3.VALUE,'') AS OPTION3," & vBCrlf &
|
||||||
' $"ISNULL(T4.VALUE,'') AS OPTION4," & vbNewLine &
|
' $"ISNULL(T4.VALUE,'') AS OPTION4," & vBCrlf &
|
||||||
' $"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX1') AS DOCIDX1," & vbNewLine &
|
' $"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX1') AS DOCIDX1," & vBCrlf &
|
||||||
' $"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX2') AS DOCIDX2," & vbNewLine &
|
' $"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX2') AS DOCIDX2," & vBCrlf &
|
||||||
' $"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX3') AS DOCIDX3," & vbNewLine &
|
' $"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX3') AS DOCIDX3," & vBCrlf &
|
||||||
' $"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX4') AS DOCIDX4," & vbNewLine &
|
' $"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX4') AS DOCIDX4," & vBCrlf &
|
||||||
' $"[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},'DROPDOWN1','{7}',TRL.RECORD_ID) AS DROPDOWN1," & vBCrlf &
|
||||||
' $"[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},'DROPDOWN2','{7}',TRL.RECORD_ID) AS DROPDOWN2," & vBCrlf &
|
||||||
' $"[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},'DROPDOWN3','{7}',TRL.RECORD_ID) AS DROPDOWN3," & vBCrlf &
|
||||||
' $"[dbo].[FNPMO_DOC_GET_DROPDOWN_VALUE] (T.DocID,{1},'DROPDOWN4','{7}',TRL.RECORD_ID) AS DROPDOWN4," & vbNewLine &
|
' $"[dbo].[FNPMO_DOC_GET_DROPDOWN_VALUE] (T.DocID,{1},'DROPDOWN4','{7}',TRL.RECORD_ID) AS DROPDOWN4," & vBCrlf &
|
||||||
' $"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,TRC.GUID),'') AS VALUE1," & vBCrlf &
|
||||||
' $"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,TRC1.GUID),'') AS VALUE2," & vBCrlf &
|
||||||
' $"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,TRC2.GUID),'') AS VALUE3," & vBCrlf &
|
||||||
' $"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,TRC3.GUID),'') AS VALUE4," & vBCrlf &
|
||||||
'$"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,TRC4.GUID),'') AS VALUE5," & vBCrlf &
|
||||||
'$"COALESCE([dbo].[FNPMO_DOC_GET_DOC_VALUE] (T.DocID,TRL.RECORD_ID,TRC5.GUID),'') AS VALUE6," & vbNewLine &
|
'$"COALESCE([dbo].[FNPMO_DOC_GET_DOC_VALUE] (T.DocID,TRL.RECORD_ID,TRC5.GUID),'') AS VALUE6," & vBCrlf &
|
||||||
'$"dwAccessRight AS ACCESS_RIGHT" & vbNewLine &
|
'$"dwAccessRight AS ACCESS_RIGHT" & vBCrlf &
|
||||||
'$"FROM " & vbNewLine &
|
'$"FROM " & vBCrlf &
|
||||||
'$"VWPMO_DOC_SEARCH T " & vbNewLine &
|
'$"VWPMO_DOC_SEARCH T " & vBCrlf &
|
||||||
'$"INNER JOIN TBPMO_DOC_RECORD_LINK TRL ON T.DocID = TRL.DOC_ID" & vbNewLine &
|
'$"INNER JOIN TBPMO_DOC_RECORD_LINK TRL ON T.DocID = TRL.DOC_ID" & vBCrlf &
|
||||||
'$"INNER JOIN TBPMO_RECORD TR ON TRL.RECORD_ID = TR.GUID" & vbNewLine &
|
'$"INNER JOIN TBPMO_RECORD TR ON TRL.RECORD_ID = TR.GUID" & vBCrlf &
|
||||||
' $"INNER JOIN VWPMO_WD_OBJECT_RIGHTS TRIGHTS ON T.DocID = TRIGHTS.dwObjectID" & vbNewLine &
|
' $"INNER JOIN VWPMO_WD_OBJECT_RIGHTS TRIGHTS ON T.DocID = TRIGHTS.dwObjectID" & vBCrlf &
|
||||||
' $"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 TRC ON TR.FORM_ID = TRC.ENTITY_ID AND TRC.LANGUAGE = '{USER_LANGUAGE}' AND TRC.GUID = {VALUE_CONF1}" & vBCrlf &
|
||||||
' $"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 TRC1 ON TR.FORM_ID = TRC1.ENTITY_ID AND TRC1.LANGUAGE = '{USER_LANGUAGE}' AND TRC1.GUID = {VALUE_CONF2}" & vBCrlf &
|
||||||
' $"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 TRC2 ON TR.FORM_ID = TRC2.ENTITY_ID AND TRC2.LANGUAGE = '{USER_LANGUAGE}' AND TRC2.GUID = {VALUE_CONF3}" & vBCrlf &
|
||||||
' $"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 TRC3 ON TR.FORM_ID = TRC3.ENTITY_ID AND TRC3.LANGUAGE = '{USER_LANGUAGE}' AND TRC3.GUID = {VALUE_CONF4}" & vBCrlf &
|
||||||
' $"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 TRC4 ON TR.FORM_ID = TRC4.ENTITY_ID AND TRC4.LANGUAGE = '{USER_LANGUAGE}' AND TRC4.GUID = {VALUE_CONF5}" & vBCrlf &
|
||||||
' $"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_DOCSEARCH_RESULTLIST_CONFIG TRC5 ON TR.FORM_ID = TRC5.ENTITY_ID AND TRC5.LANGUAGE = '{USER_LANGUAGE}' AND TRC5.GUID = {VALUE_CONF6}" & vBCrlf &
|
||||||
' $"LEFT JOIN TBPMO_CONTROL_VALUE T1 ON TRL.RECORD_ID = T1.RECORD_ID AND T1.CONTROL_ID = {OPTION1} " & vbNewLine &
|
' $"LEFT JOIN TBPMO_CONTROL_VALUE T1 ON TRL.RECORD_ID = T1.RECORD_ID AND T1.CONTROL_ID = {OPTION1} " & vBCrlf &
|
||||||
' $"LEFT JOIN TBPMO_CONTROL_VALUE T2 ON TRL.RECORD_ID = T2.RECORD_ID AND T2.CONTROL_ID = {OPTION2} " & vbNewLine &
|
' $"LEFT JOIN TBPMO_CONTROL_VALUE T2 ON TRL.RECORD_ID = T2.RECORD_ID AND T2.CONTROL_ID = {OPTION2} " & vBCrlf &
|
||||||
' $"LEFT JOIN TBPMO_CONTROL_VALUE T3 ON TRL.RECORD_ID = T3.RECORD_ID AND T3.CONTROL_ID = {OPTION3} " & vbNewLine &
|
' $"LEFT JOIN TBPMO_CONTROL_VALUE T3 ON TRL.RECORD_ID = T3.RECORD_ID AND T3.CONTROL_ID = {OPTION3} " & vBCrlf &
|
||||||
' $"LEFT JOIN TBPMO_CONTROL_VALUE T4 ON TRL.RECORD_ID = T4.RECORD_ID AND T4.CONTROL_ID = {OPTION4} " & vbNewLine &
|
' $"LEFT JOIN TBPMO_CONTROL_VALUE T4 ON TRL.RECORD_ID = T4.RECORD_ID AND T4.CONTROL_ID = {OPTION4} " & vBCrlf &
|
||||||
' $"WHERE TRL.RECORD_ID = {RECORD_ID} AND TR.FORM_ID = {ENTITY_ID} AND TRIGHTS.dwUserOrGroupID = {USERID_FK_INT_ECM}"
|
' $"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
|
ElseIf CURRENT_SEARCH_TYPE = "FULLTEXT" Then
|
||||||
Dim sqlft = SQL_FULLTEXT
|
Dim sqlft = SQL_FULLTEXT
|
||||||
sqlft = sqlft.Replace("@FULLTEXT", CURRENT_FULLTEXT_PATTERN)
|
sqlft = sqlft.Replace("@FULLTEXT", CURRENT_FULLTEXT_PATTERN)
|
||||||
SQL_DOC_SEARCH = String.Format("SELECT DISTINCT T.*," & vbNewLine &
|
SQL_DOC_SEARCH = String.Format("SELECT DISTINCT T.*," & vbCrLf &
|
||||||
"[dbo].[FNPMO_GET_CONTROL_VALUES_DOC_ENTITY] ({3},T.DocID,{0}) AS OPTION1," & vbNewLine &
|
"[dbo].[FNPMO_GET_CONTROL_VALUES_DOC_ENTITY] ({3},T.DocID,{0}) AS OPTION1," & vbCrLf &
|
||||||
"[dbo].[FNPMO_GET_CONTROL_VALUES_DOC_ENTITY] ({4},T.DocID,{0}) AS OPTION2," & vbNewLine &
|
"[dbo].[FNPMO_GET_CONTROL_VALUES_DOC_ENTITY] ({4},T.DocID,{0}) AS OPTION2," & vbCrLf &
|
||||||
"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{0},'DOCIDX1') AS DOCIDX1," & vbNewLine &
|
"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{0},'DOCIDX1') AS DOCIDX1," & vbCrLf &
|
||||||
"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{0},'DOCIDX2') AS DOCIDX2," & vbNewLine &
|
"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{0},'DOCIDX2') AS DOCIDX2," & vbCrLf &
|
||||||
"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{0},'DOCIDX3') AS DOCIDX3," & vbNewLine &
|
"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{0},'DOCIDX3') AS DOCIDX3," & vbCrLf &
|
||||||
"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{0},'DOCIDX4') AS DOCIDX4," & vbNewLine &
|
"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{0},'DOCIDX4') AS DOCIDX4," & vbCrLf &
|
||||||
"[dbo].[FNPMO_DOC_GET_DROPDOWN_VALUE] (T.DocID,{0},'DROPDOWN1','{1}',TRL.RECORD_ID) AS DROPDOWN1," & vbNewLine &
|
"[dbo].[FNPMO_DOC_GET_DROPDOWN_VALUE] (T.DocID,{0},'DROPDOWN1','{1}',TRL.RECORD_ID) AS DROPDOWN1," & vbCrLf &
|
||||||
"[dbo].[FNPMO_DOC_GET_DROPDOWN_VALUE] (T.DocID,{0},'DROPDOWN2','{1}',TRL.RECORD_ID) AS DROPDOWN2," & vbNewLine &
|
"[dbo].[FNPMO_DOC_GET_DROPDOWN_VALUE] (T.DocID,{0},'DROPDOWN2','{1}',TRL.RECORD_ID) AS DROPDOWN2," & vbCrLf &
|
||||||
"[dbo].[FNPMO_DOC_GET_DROPDOWN_VALUE] (T.DocID,{0},'DROPDOWN3','{1}',TRL.RECORD_ID) AS DROPDOWN3," & vbNewLine &
|
"[dbo].[FNPMO_DOC_GET_DROPDOWN_VALUE] (T.DocID,{0},'DROPDOWN3','{1}',TRL.RECORD_ID) AS DROPDOWN3," & vbCrLf &
|
||||||
"[dbo].[FNPMO_DOC_GET_DROPDOWN_VALUE] (T.DocID,{0},'DROPDOWN4','{1}',TRL.RECORD_ID) AS DROPDOWN4" & vbNewLine &
|
"[dbo].[FNPMO_DOC_GET_DROPDOWN_VALUE] (T.DocID,{0},'DROPDOWN4','{1}',TRL.RECORD_ID) AS DROPDOWN4" & vbCrLf &
|
||||||
"FROM " & vbNewLine &
|
"FROM " & vbCrLf &
|
||||||
"VWPMO_DOC_SEARCH T" & vbNewLine &
|
"VWPMO_DOC_SEARCH T" & vbCrLf &
|
||||||
"INNER JOIN TBPMO_DOC_RECORD_LINK TRL ON T.DocID = TRL.DOC_ID" & vbNewLine &
|
"INNER JOIN TBPMO_DOC_RECORD_LINK TRL ON T.DocID = TRL.DOC_ID" & vbCrLf &
|
||||||
"INNER JOIN TBPMO_RECORD TR ON TRL.RECORD_ID = TR.GUID" & vbNewLine &
|
"INNER JOIN TBPMO_RECORD TR ON TRL.RECORD_ID = TR.GUID" & vbCrLf &
|
||||||
"INNER JOIN VWPMO_WD_OBJECT_RIGHTS TRIGHTS ON T.DocID = TRIGHTS.dwObjectID" & vbNewLine &
|
"INNER JOIN VWPMO_WD_OBJECT_RIGHTS TRIGHTS ON T.DocID = TRIGHTS.dwObjectID" & vbCrLf &
|
||||||
"LEFT OUTER JOIN TBPMO_CONTROL_VALUE TCTRL ON TR.GUID = TCTRL.RECORD_ID" & vbNewLine &
|
"LEFT OUTER JOIN TBPMO_CONTROL_VALUE TCTRL ON TR.GUID = TCTRL.RECORD_ID" & vbCrLf &
|
||||||
"WHERE TR.FORM_ID = {0} AND TRIGHTS.dwUserOrGroupID = {2} AND (" & vbNewLine &
|
"WHERE TR.FORM_ID = {0} AND TRIGHTS.dwUserOrGroupID = {2} AND (" & vbCrLf &
|
||||||
"TCTRL.VALUE LIKE '%{6}%' OR" & vbNewLine &
|
"TCTRL.VALUE LIKE '%{6}%' OR" & vbCrLf &
|
||||||
"T.DocID IN ({5}" & vbNewLine &
|
"T.DocID IN ({5}" & vbCrLf &
|
||||||
"))", ENTITY_ID, USER_LANGUAGE, USERID_FK_INT_ECM, OPTION1, OPTION2, sqlft, CURRENT_FULLTEXT_PATTERN)
|
"))", ENTITY_ID, USER_LANGUAGE, USERID_FK_INT_ECM, OPTION1, OPTION2, sqlft, CURRENT_FULLTEXT_PATTERN)
|
||||||
ElseIf CURRENT_SEARCH_TYPE = "NODE_DOWN" Then
|
ElseIf CURRENT_SEARCH_TYPE = "NODE_DOWN" Then
|
||||||
SQL_DOC_SEARCH = String.Format("SELECT DISTINCT T.* ," & vbNewLine &
|
SQL_DOC_SEARCH = String.Format("SELECT DISTINCT T.* ," & vbCrLf &
|
||||||
"ISNULL(T1.VALUE,'') AS OPTION1," & vbNewLine &
|
"ISNULL(T1.VALUE,'') AS OPTION1," & vbCrLf &
|
||||||
"ISNULL(T2.VALUE,'') AS OPTION2," & vbNewLine &
|
"ISNULL(T2.VALUE,'') AS OPTION2," & vbCrLf &
|
||||||
"ISNULL(T3.VALUE,'') AS OPTION3," & vbNewLine &
|
"ISNULL(T3.VALUE,'') AS OPTION3," & vbCrLf &
|
||||||
"ISNULL(T4.VALUE,'') AS OPTION4," & vbNewLine &
|
"ISNULL(T4.VALUE,'') AS OPTION4," & vbCrLf &
|
||||||
"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX1') AS DOCIDX1," & vbNewLine &
|
"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX1') AS DOCIDX1," & vbCrLf &
|
||||||
"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX2') AS DOCIDX2," & vbNewLine &
|
"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX2') AS DOCIDX2," & vbCrLf &
|
||||||
"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX3') AS DOCIDX3," & vbNewLine &
|
"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX3') AS DOCIDX3," & vbCrLf &
|
||||||
"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX4') AS DOCIDX4," & vbNewLine &
|
"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX4') AS DOCIDX4," & vbCrLf &
|
||||||
"[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},'DROPDOWN1','{7}',TRL.RECORD_ID) AS DROPDOWN1," & vbCrLf &
|
||||||
"[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},'DROPDOWN2','{7}',TRL.RECORD_ID) AS DROPDOWN2," & vbCrLf &
|
||||||
"[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},'DROPDOWN3','{7}',TRL.RECORD_ID) AS DROPDOWN3," & vbCrLf &
|
||||||
"[dbo].[FNPMO_DOC_GET_DROPDOWN_VALUE] (T.DocID,{1},'DROPDOWN4','{7}',TRL.RECORD_ID) AS DROPDOWN4," & vbNewLine &
|
"[dbo].[FNPMO_DOC_GET_DROPDOWN_VALUE] (T.DocID,{1},'DROPDOWN4','{7}',TRL.RECORD_ID) AS DROPDOWN4," & vbCrLf &
|
||||||
"[dbo].[FNPMO_DOC_GET_DOC_VALUE] (T.DocID,TRL.RECORD_ID,TRC.GUID) AS VALUE1," & vbNewLine &
|
"[dbo].[FNPMO_DOC_GET_DOC_VALUE] (T.DocID,TRL.RECORD_ID,TRC.GUID) AS VALUE1," & vbCrLf &
|
||||||
"[dbo].[FNPMO_DOC_GET_DOC_VALUE] (T.DocID,TRL.RECORD_ID,TRC1.GUID) AS VALUE2," & vbNewLine &
|
"[dbo].[FNPMO_DOC_GET_DOC_VALUE] (T.DocID,TRL.RECORD_ID,TRC1.GUID) AS VALUE2," & vbCrLf &
|
||||||
"[dbo].[FNPMO_DOC_GET_DOC_VALUE] (T.DocID,TRL.RECORD_ID,TRC2.GUID) AS VALUE3," & vbNewLine &
|
"[dbo].[FNPMO_DOC_GET_DOC_VALUE] (T.DocID,TRL.RECORD_ID,TRC2.GUID) AS VALUE3," & vbCrLf &
|
||||||
"[dbo].[FNPMO_DOC_GET_DOC_VALUE] (T.DocID,TRL.RECORD_ID,TRC3.GUID) AS VALUE4" & vbNewLine &
|
"[dbo].[FNPMO_DOC_GET_DOC_VALUE] (T.DocID,TRL.RECORD_ID,TRC3.GUID) AS VALUE4" & vbCrLf &
|
||||||
"FROM " & vbNewLine &
|
"FROM " & vbCrLf &
|
||||||
"VWPMO_DOC_SEARCH T " & vbNewLine &
|
"VWPMO_DOC_SEARCH T " & vbCrLf &
|
||||||
"INNER JOIN TBPMO_DOC_RECORD_LINK TRL ON T.DocID = TRL.DOC_ID" & vbNewLine &
|
"INNER JOIN TBPMO_DOC_RECORD_LINK TRL ON T.DocID = TRL.DOC_ID" & vbCrLf &
|
||||||
"INNER JOIN TBPMO_RECORD TR ON TRL.RECORD_ID = TR.GUID" & vbNewLine &
|
"INNER JOIN TBPMO_RECORD TR ON TRL.RECORD_ID = TR.GUID" & vbCrLf &
|
||||||
"INNER JOIN TBPMO_STRUCTURE_NODES_USER_TEMP TTEMP ON TR.GUID = TTEMP.RECORD_ID" & vbNewLine &
|
"INNER JOIN TBPMO_STRUCTURE_NODES_USER_TEMP TTEMP ON TR.GUID = TTEMP.RECORD_ID" & vbCrLf &
|
||||||
"INNER JOIN VWPMO_WD_OBJECT_RIGHTS TRIGHTS ON T.DocID = TRIGHTS.dwObjectID" & vbNewLine &
|
"INNER JOIN VWPMO_WD_OBJECT_RIGHTS TRIGHTS ON T.DocID = TRIGHTS.dwObjectID" & vbCrLf &
|
||||||
"LEFT JOIN TBPMO_DOCSEARCH_RESULTLIST_CONFIG TRC ON TR.FORM_ID = TRC.ENTITY_ID AND TRC.LANGUAGE = '{7}' AND TRC.GUID = {8}" & vbNewLine &
|
"LEFT JOIN TBPMO_DOCSEARCH_RESULTLIST_CONFIG TRC ON TR.FORM_ID = TRC.ENTITY_ID AND TRC.LANGUAGE = '{7}' AND TRC.GUID = {8}" & vbCrLf &
|
||||||
"LEFT JOIN TBPMO_DOCSEARCH_RESULTLIST_CONFIG TRC1 ON TR.FORM_ID = TRC1.ENTITY_ID AND TRC1.LANGUAGE = '{7}' AND TRC1.GUID = {9}" & vbNewLine &
|
"LEFT JOIN TBPMO_DOCSEARCH_RESULTLIST_CONFIG TRC1 ON TR.FORM_ID = TRC1.ENTITY_ID AND TRC1.LANGUAGE = '{7}' AND TRC1.GUID = {9}" & vbCrLf &
|
||||||
"LEFT JOIN TBPMO_DOCSEARCH_RESULTLIST_CONFIG TRC2 ON TR.FORM_ID = TRC2.ENTITY_ID AND TRC2.LANGUAGE = '{7}' AND TRC2.GUID = {10}" & vbNewLine &
|
"LEFT JOIN TBPMO_DOCSEARCH_RESULTLIST_CONFIG TRC2 ON TR.FORM_ID = TRC2.ENTITY_ID AND TRC2.LANGUAGE = '{7}' AND TRC2.GUID = {10}" & vbCrLf &
|
||||||
"LEFT JOIN TBPMO_DOCSEARCH_RESULTLIST_CONFIG TRC3 ON TR.FORM_ID = TRC3.ENTITY_ID AND TRC3.LANGUAGE = '{7}' AND TRC3.GUID = {11}" & vbNewLine &
|
"LEFT JOIN TBPMO_DOCSEARCH_RESULTLIST_CONFIG TRC3 ON TR.FORM_ID = TRC3.ENTITY_ID AND TRC3.LANGUAGE = '{7}' AND TRC3.GUID = {11}" & vbCrLf &
|
||||||
"LEFT JOIN TBPMO_CONTROL_VALUE T1 ON TRL.RECORD_ID = T1.RECORD_ID AND T1.CONTROL_ID = {2} " & vbNewLine &
|
"LEFT JOIN TBPMO_CONTROL_VALUE T1 ON TRL.RECORD_ID = T1.RECORD_ID AND T1.CONTROL_ID = {2} " & vbCrLf &
|
||||||
"LEFT JOIN TBPMO_CONTROL_VALUE T2 ON TRL.RECORD_ID = T2.RECORD_ID AND T2.CONTROL_ID = {3} " & vbNewLine &
|
"LEFT JOIN TBPMO_CONTROL_VALUE T2 ON TRL.RECORD_ID = T2.RECORD_ID AND T2.CONTROL_ID = {3} " & vbCrLf &
|
||||||
"LEFT JOIN TBPMO_CONTROL_VALUE T3 ON TRL.RECORD_ID = T3.RECORD_ID AND T3.CONTROL_ID = {4} " & vbNewLine &
|
"LEFT JOIN TBPMO_CONTROL_VALUE T3 ON TRL.RECORD_ID = T3.RECORD_ID AND T3.CONTROL_ID = {4} " & vbCrLf &
|
||||||
"LEFT JOIN TBPMO_CONTROL_VALUE T4 ON TRL.RECORD_ID = T4.RECORD_ID AND T4.CONTROL_ID = {5} " & vbNewLine &
|
"LEFT JOIN TBPMO_CONTROL_VALUE T4 ON TRL.RECORD_ID = T4.RECORD_ID AND T4.CONTROL_ID = {5} " & vbCrLf &
|
||||||
"WHERE TR.FORM_ID = {1} AND TTEMP.USER_ID = {0} AND TRIGHTS.dwUserOrGroupID = {6}", USER_GUID, ENTITY_ID, OPTION1, OPTION2, OPTION3, OPTION4, USERID_FK_INT_ECM, USER_LANGUAGE, VALUE_CONF1, VALUE_CONF2, VALUE_CONF3, VALUE_CONF4)
|
"WHERE TR.FORM_ID = {1} AND TTEMP.USER_ID = {0} AND TRIGHTS.dwUserOrGroupID = {6}", USER_GUID, ENTITY_ID, OPTION1, OPTION2, OPTION3, OPTION4, USERID_FK_INT_ECM, USER_LANGUAGE, VALUE_CONF1, VALUE_CONF2, VALUE_CONF3, VALUE_CONF4)
|
||||||
ElseIf CURRENT_SEARCH_TYPE = "FULLTEXT_SUBNODES" Then
|
ElseIf CURRENT_SEARCH_TYPE = "FULLTEXT_SUBNODES" Then
|
||||||
Dim sqlft = SQL_FULLTEXT
|
Dim sqlft = SQL_FULLTEXT
|
||||||
sqlft = sqlft.Replace("@FULLTEXT", CURRENT_FULLTEXT_PATTERN)
|
sqlft = sqlft.Replace("@FULLTEXT", CURRENT_FULLTEXT_PATTERN)
|
||||||
SQL_DOC_SEARCH = String.Format("SELECT DISTINCT T.*," & vbNewLine &
|
SQL_DOC_SEARCH = String.Format("SELECT DISTINCT T.*," & vbCrLf &
|
||||||
"[dbo].[FNPMO_GET_CONTROL_VALUES_DOC_ENTITY] ({4},T.DocID,{1}) AS OPTION1," & vbNewLine &
|
"[dbo].[FNPMO_GET_CONTROL_VALUES_DOC_ENTITY] ({4},T.DocID,{1}) AS OPTION1," & vbCrLf &
|
||||||
"[dbo].[FNPMO_GET_CONTROL_VALUES_DOC_ENTITY] ({5},T.DocID,{1}) AS OPTION2," & vbNewLine &
|
"[dbo].[FNPMO_GET_CONTROL_VALUES_DOC_ENTITY] ({5},T.DocID,{1}) AS OPTION2," & vbCrLf &
|
||||||
"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX1') AS DOCIDX1," & vbNewLine &
|
"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX1') AS DOCIDX1," & vbCrLf &
|
||||||
"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX2') AS DOCIDX2," & vbNewLine &
|
"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX2') AS DOCIDX2," & vbCrLf &
|
||||||
"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX3') AS DOCIDX3," & vbNewLine &
|
"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX3') AS DOCIDX3," & vbCrLf &
|
||||||
"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX4') AS DOCIDX4," & vbNewLine &
|
"[dbo].[FNPMO_DOC_GET_IDX] (T.DocID,{1},'DOCIDX4') AS DOCIDX4," & vbCrLf &
|
||||||
"[dbo].[FNPMO_DOC_GET_DROPDOWN_VALUE] (T.DocID,{1},'DROPDOWN1','{0}',TRL.RECORD_ID) AS DROPDOWN1," & vbNewLine &
|
"[dbo].[FNPMO_DOC_GET_DROPDOWN_VALUE] (T.DocID,{1},'DROPDOWN1','{0}',TRL.RECORD_ID) AS DROPDOWN1," & vbCrLf &
|
||||||
"[dbo].[FNPMO_DOC_GET_DROPDOWN_VALUE] (T.DocID,{1},'DROPDOWN2','{0}',TRL.RECORD_ID) AS DROPDOWN2," & vbNewLine &
|
"[dbo].[FNPMO_DOC_GET_DROPDOWN_VALUE] (T.DocID,{1},'DROPDOWN2','{0}',TRL.RECORD_ID) AS DROPDOWN2," & vbCrLf &
|
||||||
"[dbo].[FNPMO_DOC_GET_DROPDOWN_VALUE] (T.DocID,{1},'DROPDOWN3','{0}',TRL.RECORD_ID) AS DROPDOWN3," & vbNewLine &
|
"[dbo].[FNPMO_DOC_GET_DROPDOWN_VALUE] (T.DocID,{1},'DROPDOWN3','{0}',TRL.RECORD_ID) AS DROPDOWN3," & vbCrLf &
|
||||||
"[dbo].[FNPMO_DOC_GET_DROPDOWN_VALUE] (T.DocID,{1},'DROPDOWN4','{0}',TRL.RECORD_ID) AS DROPDOWN4" & vbNewLine &
|
"[dbo].[FNPMO_DOC_GET_DROPDOWN_VALUE] (T.DocID,{1},'DROPDOWN4','{0}',TRL.RECORD_ID) AS DROPDOWN4" & vbCrLf &
|
||||||
"FROM " & vbNewLine &
|
"FROM " & vbCrLf &
|
||||||
"VWPMO_DOC_SEARCH T" & vbNewLine &
|
"VWPMO_DOC_SEARCH T" & vbCrLf &
|
||||||
"INNER JOIN TBPMO_DOC_RECORD_LINK TRL ON T.DocID = TRL.DOC_ID" & vbNewLine &
|
"INNER JOIN TBPMO_DOC_RECORD_LINK TRL ON T.DocID = TRL.DOC_ID" & vbCrLf &
|
||||||
"INNER JOIN TBPMO_RECORD TR ON TRL.RECORD_ID = TR.GUID" & vbNewLine &
|
"INNER JOIN TBPMO_RECORD TR ON TRL.RECORD_ID = TR.GUID" & vbCrLf &
|
||||||
"INNER JOIN TBPMO_STRUCTURE_NODES_USER_TEMP TTEMP ON TR.GUID = TTEMP.RECORD_ID" & vbNewLine &
|
"INNER JOIN TBPMO_STRUCTURE_NODES_USER_TEMP TTEMP ON TR.GUID = TTEMP.RECORD_ID" & vbCrLf &
|
||||||
"INNER JOIN VWPMO_WD_OBJECT_RIGHTS TRIGHTS ON T.DocID = TRIGHTS.dwObjectID" & vbNewLine &
|
"INNER JOIN VWPMO_WD_OBJECT_RIGHTS TRIGHTS ON T.DocID = TRIGHTS.dwObjectID" & vbCrLf &
|
||||||
"WHERE TR.FORM_ID = {1} AND TTEMP.USER_ID = {2} AND TRIGHTS.dwUserOrGroupID = {3}" & vbNewLine &
|
"WHERE TR.FORM_ID = {1} AND TTEMP.USER_ID = {2} AND TRIGHTS.dwUserOrGroupID = {3}" & vbCrLf &
|
||||||
"AND T.DocID IN ({6})", USER_LANGUAGE, ENTITY_ID, USER_GUID, USERID_FK_INT_ECM, OPTION1, OPTION2, sqlft)
|
"AND T.DocID IN ({6})", USER_LANGUAGE, ENTITY_ID, USER_GUID, USERID_FK_INT_ECM, OPTION1, OPTION2, sqlft)
|
||||||
End If
|
End If
|
||||||
LOGGER.Debug("SQL_DOC_SEARCH: " & SQL_DOC_SEARCH)
|
LOGGER.Debug("SQL_DOC_SEARCH: " & SQL_DOC_SEARCH)
|
||||||
@@ -266,7 +266,7 @@ Public Class ClassDOC_SEARCH
|
|||||||
Dim DT_FILE_RESULT As DataTable = GET_DOCSEARCH_DATATABLE(BG)
|
Dim DT_FILE_RESULT As DataTable = GET_DOCSEARCH_DATATABLE(BG)
|
||||||
CURRENT_DOC_RESULTS = DT_FILE_RESULT
|
CURRENT_DOC_RESULTS = DT_FILE_RESULT
|
||||||
If IsNothing(DT_FILE_RESULT) Then
|
If IsNothing(DT_FILE_RESULT) Then
|
||||||
' MsgBox("ATTENTION: GET_DOCSEARCH_DATATABLE IS NOTHING" & vbNewLine & "Please inform Your Sysadmin", MsgBoxStyle.Exclamation, "Attention")
|
' MsgBox("ATTENTION: GET_DOCSEARCH_DATATABLE IS NOTHING" & vBCrlf & "Please inform Your Sysadmin", MsgBoxStyle.Exclamation, "Attention")
|
||||||
LOGGER.Warn("ATTENTION: GET_DOCSEARCH_DATATABLE IS NOTHING!!")
|
LOGGER.Warn("ATTENTION: GET_DOCSEARCH_DATATABLE IS NOTHING!!")
|
||||||
Return Nothing
|
Return Nothing
|
||||||
End If
|
End If
|
||||||
@@ -371,7 +371,7 @@ Public Class ClassDOC_SEARCH
|
|||||||
End If
|
End If
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
LOGGER.Warn("Unexpected Error in Construct Datatable: " & ex.Message)
|
LOGGER.Warn("Unexpected Error in Construct Datatable: " & ex.Message)
|
||||||
MsgBox("Unexpected Error in Construct Datatable for GridResult: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
MsgBox("Unexpected Error in Construct Datatable for GridResult: " & vbCrLf & ex.Message, MsgBoxStyle.Critical)
|
||||||
End Try
|
End Try
|
||||||
sw.Done()
|
sw.Done()
|
||||||
|
|
||||||
@@ -486,7 +486,7 @@ Public Class ClassDOC_SEARCH
|
|||||||
oNewRow.Item(i) = CInt(rowvalue)
|
oNewRow.Item(i) = CInt(rowvalue)
|
||||||
End If
|
End If
|
||||||
Else
|
Else
|
||||||
oNewRow.Item(i) = rowvalue.ToString
|
oNewRow.Item(i) = rowvalue.ToString
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
@@ -508,22 +508,22 @@ Public Class ClassDOC_SEARCH
|
|||||||
|
|
||||||
sw.Done()
|
sw.Done()
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
MsgBox("Unexpected Error in Get_DOC_RESULTTABLE (Step " & _step & "): " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
MsgBox("Unexpected Error in Get_DOC_RESULTTABLE (Step " & _step & "): " & vbCrLf & ex.Message, MsgBoxStyle.Critical)
|
||||||
LOGGER.Warn("Unexpected Error in Get_DOC_RESULTTABLE (Step " & _step & "): " & ex.Message)
|
LOGGER.Warn("Unexpected Error in Get_DOC_RESULTTABLE (Step " & _step & "): " & ex.Message)
|
||||||
Return Nothing
|
Return Nothing
|
||||||
End Try
|
End Try
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
Public Shared Function CREATE_DOC_RELATED_LINKS(DOC_ID As Integer, RECORD_ID As Integer)
|
Public Shared Function PROF_DOC_CREATE_UPDATE(pDOC_ID As Integer, pRECORD_ID As Integer, pFILE_HASH As String)
|
||||||
Try
|
Try
|
||||||
Dim execute = String.Format("EXEC PROF_DOC_CREATE_UPDATE {0},{1},'{2}','{3}'", DOC_ID, RECORD_ID, USER_USERNAME, CURRENT_FILE_HASH)
|
Dim execute = String.Format("EXEC PROF_DOC_CREATE_UPDATE {0},{1},'{2}','{3}'", pDOC_ID, pRECORD_ID, USER_USERNAME, pFILE_HASH)
|
||||||
If MYDB_ECM.ExecuteNonQuery(execute) = True Then
|
If MYDB_ECM.ExecuteNonQuery(execute) = True Then
|
||||||
Return True
|
Return True
|
||||||
Else
|
Else
|
||||||
Return False
|
Return False
|
||||||
End If
|
End If
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
MsgBox("Unexpected Error in CREATE_DOC_RELATED_LINKS: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
MsgBox("Unexpected Error in PROF_DOC_CREATE_UPDATE: " & vbCrLf & ex.Message, MsgBoxStyle.Critical)
|
||||||
Return False
|
Return False
|
||||||
End Try
|
End Try
|
||||||
End Function
|
End Function
|
||||||
@@ -537,9 +537,9 @@ Public Class ClassDOC_SEARCH
|
|||||||
If ClassWDRights.Init = True Then
|
If ClassWDRights.Init = True Then
|
||||||
If ClassWDRights.Doc_Renew_Rights(oWMObject, RESULT_DOCID, RESULT_DOC_PATH, DeleteRightsBefore) Then
|
If ClassWDRights.Doc_Renew_Rights(oWMObject, RESULT_DOCID, RESULT_DOC_PATH, DeleteRightsBefore) Then
|
||||||
If ClassWDRights.MSG_RESULT <> "" Then
|
If ClassWDRights.MSG_RESULT <> "" Then
|
||||||
Dim msg = "Achtung: einige Rechte konnten nicht gesetzt werden: " & vbNewLine & ClassWDRights.MSG_RESULT
|
Dim msg = "Achtung: einige Rechte konnten nicht gesetzt werden: " & vbCrLf & ClassWDRights.MSG_RESULT
|
||||||
If USER_LANGUAGE <> "de-DE" Then
|
If USER_LANGUAGE <> "de-DE" Then
|
||||||
msg = "Attention: some rights could not be set: " & vbNewLine & ClassWDRights.MSG_RESULT
|
msg = "Attention: some rights could not be set: " & vbCrLf & ClassWDRights.MSG_RESULT
|
||||||
End If
|
End If
|
||||||
ClassHelper.MSGBOX_Handler("INFO", "Information:", msg)
|
ClassHelper.MSGBOX_Handler("INFO", "Information:", msg)
|
||||||
End If
|
End If
|
||||||
@@ -553,7 +553,7 @@ Public Class ClassDOC_SEARCH
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
MsgBox("Unexpected Error in SET_WD_RIGHTS: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
MsgBox("Unexpected Error in SET_WD_RIGHTS: " & vbCrLf & ex.Message, MsgBoxStyle.Critical)
|
||||||
Return False
|
Return False
|
||||||
End Try
|
End Try
|
||||||
End Function
|
End Function
|
||||||
|
|||||||
111
app/DD-Record-Organizer/Classes/ClassDataCache.vb
Normal file
111
app/DD-Record-Organizer/Classes/ClassDataCache.vb
Normal file
@@ -0,0 +1,111 @@
|
|||||||
|
|
||||||
|
Imports System.Data
|
||||||
|
|
||||||
|
''' <summary>
|
||||||
|
''' Zentraler Cache für häufig abgerufene Datenbank-Queries
|
||||||
|
''' Reduziert DB-Roundtrips um bis zu 90%
|
||||||
|
''' </summary>
|
||||||
|
Public Class ClassDataCache
|
||||||
|
Private Shared ReadOnly _cache As New Dictionary(Of String, CachedItem)
|
||||||
|
Private Shared ReadOnly _lockObject As New Object()
|
||||||
|
Private Shared _defaultTimeout As TimeSpan = TimeSpan.FromMinutes(5)
|
||||||
|
|
||||||
|
Private Class CachedItem
|
||||||
|
Public Data As DataTable
|
||||||
|
Public Timestamp As DateTime
|
||||||
|
Public Timeout As TimeSpan
|
||||||
|
|
||||||
|
Public ReadOnly Property IsExpired As Boolean
|
||||||
|
Get
|
||||||
|
Return DateTime.Now - Timestamp > Timeout
|
||||||
|
End Get
|
||||||
|
End Property
|
||||||
|
End Class
|
||||||
|
|
||||||
|
''' <summary>
|
||||||
|
''' Daten aus Cache holen oder neu laden
|
||||||
|
''' </summary>
|
||||||
|
Public Shared Function GetOrLoad(cacheKey As String,
|
||||||
|
loadFunction As Func(Of DataTable),
|
||||||
|
Optional timeout As TimeSpan? = Nothing) As DataTable
|
||||||
|
SyncLock _lockObject
|
||||||
|
' Cache-Check
|
||||||
|
If _cache.ContainsKey(cacheKey) Then
|
||||||
|
Dim item = _cache(cacheKey)
|
||||||
|
|
||||||
|
If Not item.IsExpired Then
|
||||||
|
LOGGER.Debug($"Cache HIT: {cacheKey} (Age: {(DateTime.Now - item.Timestamp).TotalSeconds:F1}s)")
|
||||||
|
Return item.Data.Copy() ' Kopie zurückgeben!
|
||||||
|
Else
|
||||||
|
' Abgelaufen - entfernen
|
||||||
|
_cache.Remove(cacheKey)
|
||||||
|
LOGGER.Debug($"Cache EXPIRED: {cacheKey}")
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
' Cache MISS - neu laden
|
||||||
|
LOGGER.Debug($"Cache MISS: {cacheKey} - Loading from DB...")
|
||||||
|
Dim result = loadFunction()
|
||||||
|
|
||||||
|
If result IsNot Nothing Then
|
||||||
|
_cache(cacheKey) = New CachedItem With {
|
||||||
|
.Data = result.Copy(),
|
||||||
|
.Timestamp = DateTime.Now,
|
||||||
|
.Timeout = If(timeout, _defaultTimeout)
|
||||||
|
}
|
||||||
|
End If
|
||||||
|
|
||||||
|
Return result
|
||||||
|
End SyncLock
|
||||||
|
End Function
|
||||||
|
|
||||||
|
''' <summary>
|
||||||
|
''' Bestimmten Cache-Eintrag invalidieren
|
||||||
|
''' </summary>
|
||||||
|
Public Shared Sub Invalidate(cacheKey As String)
|
||||||
|
SyncLock _lockObject
|
||||||
|
If _cache.ContainsKey(cacheKey) Then
|
||||||
|
_cache.Remove(cacheKey)
|
||||||
|
LOGGER.Debug($"Cache INVALIDATED: {cacheKey}")
|
||||||
|
End If
|
||||||
|
End SyncLock
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
''' <summary>
|
||||||
|
''' Alle Cache-Einträge löschen
|
||||||
|
''' </summary>
|
||||||
|
Public Shared Sub ClearAll()
|
||||||
|
SyncLock _lockObject
|
||||||
|
Dim count = _cache.Count
|
||||||
|
_cache.Clear()
|
||||||
|
LOGGER.Info($"Cache CLEARED: {count} entries removed")
|
||||||
|
End SyncLock
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
''' <summary>
|
||||||
|
''' Abgelaufene Einträge entfernen
|
||||||
|
''' </summary>
|
||||||
|
Public Shared Sub CleanupExpired()
|
||||||
|
SyncLock _lockObject
|
||||||
|
Dim expiredKeys = _cache.Where(Function(kvp) kvp.Value.IsExpired).
|
||||||
|
Select(Function(kvp) kvp.Key).ToList()
|
||||||
|
|
||||||
|
For Each key In expiredKeys
|
||||||
|
_cache.Remove(key)
|
||||||
|
Next
|
||||||
|
|
||||||
|
If expiredKeys.Count > 0 Then
|
||||||
|
LOGGER.Debug($"Cache CLEANUP: {expiredKeys.Count} expired entries removed")
|
||||||
|
End If
|
||||||
|
End SyncLock
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
''' <summary>
|
||||||
|
''' Cache-Statistiken
|
||||||
|
''' </summary>
|
||||||
|
Public Shared Function GetStatistics() As String
|
||||||
|
SyncLock _lockObject
|
||||||
|
Return $"Cache Entries: {_cache.Count}, Default Timeout: {_defaultTimeout.TotalMinutes:F1} min"
|
||||||
|
End SyncLock
|
||||||
|
End Function
|
||||||
|
End Class
|
||||||
@@ -64,7 +64,8 @@ Public Class ClassDocGrid
|
|||||||
Private Shared _datepickerValueChangedHandler As EventHandler
|
Private Shared _datepickerValueChangedHandler As EventHandler
|
||||||
Private Shared _textValueChangedHandler As EventHandler
|
Private Shared _textValueChangedHandler As EventHandler
|
||||||
Private Shared _checkValueChangedHandler As EventHandler
|
Private Shared _checkValueChangedHandler As EventHandler
|
||||||
|
Private Shared EnableVerboseGridLogging As Boolean = False ' PRODUKTIV: FALSE!
|
||||||
|
Private Shared _isGridRefreshing As Boolean = False
|
||||||
Private Shared Function Init_Table()
|
Private Shared Function Init_Table()
|
||||||
Try
|
Try
|
||||||
Dim table As New DataTable With {
|
Dim table As New DataTable With {
|
||||||
@@ -273,11 +274,20 @@ Public Class ClassDocGrid
|
|||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Shared Sub FillColumns(pDocGridView As GridView,
|
Public Shared Sub FillColumns(pDocGridView As GridView,
|
||||||
DT_RESULT As DataTable, DT_WINDREAM_RESULTLIST As DataTable, DT_DOCRESULT_DROPDOWN_ITEMS As DataTable,
|
DT_RESULT As DataTable, DT_WINDREAM_RESULTLIST As DataTable, DT_DOCRESULT_DROPDOWN_ITEMS As DataTable,
|
||||||
DropdownValueChangedHandler As EventHandler, DatepickerValueChangedHandler As EventHandler, TextValueChangedHandler As EventHandler, CheckValueChangedHandler As EventHandler,
|
DropdownValueChangedHandler As EventHandler, DatepickerValueChangedHandler As EventHandler, TextValueChangedHandler As EventHandler, CheckValueChangedHandler As EventHandler,
|
||||||
SearchType As String, RECORD_ID As Integer)
|
SearchType As String, RECORD_ID As Integer)
|
||||||
|
|
||||||
|
' ── 1. KRITISCH: Event-Handler ENTFERNEN vor Neuregistrierung ───────────
|
||||||
|
RemoveHandler pDocGridView.MasterRowExpanded, AddressOf gridView_MasterRowExpanded
|
||||||
|
RemoveHandler pDocGridView.CustomColumnDisplayText, AddressOf gridView_CustomColumnDisplayText
|
||||||
|
RemoveHandler pDocGridView.FocusedRowChanged, AddressOf GVDoc_Values_FocusedRowChanged
|
||||||
|
|
||||||
|
' ── 2. DATE_COLUMNS Listen leeren (verhindert Duplikate) ────────────────
|
||||||
|
DATE_COLUMNS.Clear()
|
||||||
|
DATE_COLUMNS_CONFIG.Clear()
|
||||||
|
|
||||||
' Handler speichern
|
' Handler speichern
|
||||||
_dropdownValueChangedHandler = DropdownValueChangedHandler
|
_dropdownValueChangedHandler = DropdownValueChangedHandler
|
||||||
_datepickerValueChangedHandler = DatepickerValueChangedHandler
|
_datepickerValueChangedHandler = DatepickerValueChangedHandler
|
||||||
@@ -298,7 +308,6 @@ Public Class ClassDocGrid
|
|||||||
Dim columnTitle As String = row.Item("HEADER_CAPTION")
|
Dim columnTitle As String = row.Item("HEADER_CAPTION")
|
||||||
Dim type As Integer = row.Item("TYPE_ID")
|
Dim type As Integer = row.Item("TYPE_ID")
|
||||||
|
|
||||||
|
|
||||||
If type = 3 And isConfig = False Then
|
If type = 3 And isConfig = False Then
|
||||||
DATE_COLUMNS.Add(columnTitle)
|
DATE_COLUMNS.Add(columnTitle)
|
||||||
ElseIf type = 3 And isConfig = True Then
|
ElseIf type = 3 And isConfig = True Then
|
||||||
@@ -318,20 +327,41 @@ Public Class ClassDocGrid
|
|||||||
' Neues Dataset für Master- und Detail-Tabelle erstellen
|
' Neues Dataset für Master- und Detail-Tabelle erstellen
|
||||||
Dim ds As New DataSet()
|
Dim ds As New DataSet()
|
||||||
Dim DT_DETAILS_SQL
|
Dim DT_DETAILS_SQL
|
||||||
|
' ── Cache-optimiertes Laden der Detail-Values ─────────────────────────
|
||||||
|
Dim cacheKey As String
|
||||||
|
Dim DT_DETAIL_VALUES As DataTable
|
||||||
|
|
||||||
Select Case CURRENT_SEARCH_TYPE
|
Select Case CURRENT_SEARCH_TYPE
|
||||||
Case "NODE_DOWN"
|
Case "NODE_DOWN"
|
||||||
DT_DETAILS_SQL = String.Format("SELECT T.[GUID],T.[DocID],T.[CONFIG_ID],T1.HEADER_CAPTION,T.[VALUE],T1.[LANGUAGE], T1.COLUMN_VIEW,T1.EDITABLE,T1.TYPE_ID,T1.VISIBLE,T.CHANGED_WHEN,T.CHANGED_WHO " &
|
cacheKey = $"DocDetailValues_NodeDown_E{CURRENT_ENTITY_ID}_L{USER_LANGUAGE}"
|
||||||
"FROM TBPMO_DOC_VALUES T INNER JOIN TBPMO_STRUCTURE_NODES_USER_TEMP TTEMP ON T.RECORD_ID = TTEMP.RECORD_ID RIGHT JOIN TBPMO_DOCSEARCH_RESULTLIST_CONFIG T1 ON T.CONFIG_ID = T1.GUID WHERE T1.ENTITY_ID = {0} AND LANGUAGE = '{1}' AND T1.CONFIG_COLUMNS = 1", CURRENT_ENTITY_ID, USER_LANGUAGE)
|
|
||||||
|
DT_DETAIL_VALUES = ClassDataCache.GetOrLoad(cacheKey, Function()
|
||||||
|
Dim sql = String.Format(
|
||||||
|
"SELECT T.[GUID],T.[DocID],T.[CONFIG_ID],T1.HEADER_CAPTION,T.[VALUE],T1.[LANGUAGE], " &
|
||||||
|
"T1.COLUMN_VIEW,T1.EDITABLE,T1.TYPE_ID,T1.VISIBLE,T.CHANGED_WHEN,T.CHANGED_WHO " &
|
||||||
|
"FROM TBPMO_DOC_VALUES T " &
|
||||||
|
"INNER JOIN TBPMO_STRUCTURE_NODES_USER_TEMP TTEMP ON T.RECORD_ID = TTEMP.RECORD_ID " &
|
||||||
|
"RIGHT JOIN TBPMO_DOCSEARCH_RESULTLIST_CONFIG T1 ON T.CONFIG_ID = T1.GUID " &
|
||||||
|
"WHERE T1.ENTITY_ID = {0} AND LANGUAGE = '{1}' AND T1.CONFIG_COLUMNS = 1",
|
||||||
|
CURRENT_ENTITY_ID, USER_LANGUAGE)
|
||||||
|
Return MYDB_ECM.GetDatatable(sql)
|
||||||
|
End Function, TimeSpan.FromMinutes(2))
|
||||||
|
|
||||||
Case Else
|
Case Else
|
||||||
DT_DETAILS_SQL = String.Format("SELECT T.[GUID],T.[DocID],T.[CONFIG_ID],T1.HEADER_CAPTION,T.[VALUE],T1.[LANGUAGE], T1.COLUMN_VIEW,T1.EDITABLE,T1.TYPE_ID,T1.VISIBLE,T.CHANGED_WHEN,T.CHANGED_WHO " &
|
cacheKey = $"DocDetailValues_E{CURRENT_ENTITY_ID}_R{RECORD_ID}_L{USER_LANGUAGE}"
|
||||||
"FROM TBPMO_DOC_VALUES T RIGHT JOIN TBPMO_DOCSEARCH_RESULTLIST_CONFIG T1 ON T.CONFIG_ID = T1.GUID WHERE T1.ENTITY_ID = {0} AND LANGUAGE = '{1}' AND T1.CONFIG_COLUMNS = 1 AND T.RECORD_ID = {2}", CURRENT_ENTITY_ID, USER_LANGUAGE, RECORD_ID)
|
|
||||||
|
|
||||||
|
DT_DETAIL_VALUES = ClassDataCache.GetOrLoad(cacheKey, Function()
|
||||||
|
Dim sql = String.Format(
|
||||||
|
"SELECT T.[GUID],T.[DocID],T.[CONFIG_ID],T1.HEADER_CAPTION,T.[VALUE],T1.[LANGUAGE], " &
|
||||||
|
"T1.COLUMN_VIEW,T1.EDITABLE,T1.TYPE_ID,T1.VISIBLE,T.CHANGED_WHEN,T.CHANGED_WHO " &
|
||||||
|
"FROM TBPMO_DOC_VALUES T " &
|
||||||
|
"RIGHT JOIN TBPMO_DOCSEARCH_RESULTLIST_CONFIG T1 ON T.CONFIG_ID = T1.GUID " &
|
||||||
|
"WHERE T1.ENTITY_ID = {0} AND LANGUAGE = '{1}' AND T1.CONFIG_COLUMNS = 1 AND T.RECORD_ID = {2}",
|
||||||
|
CURRENT_ENTITY_ID, USER_LANGUAGE, RECORD_ID)
|
||||||
|
Return MYDB_ECM.GetDatatable(sql)
|
||||||
|
End Function, TimeSpan.FromMinutes(2))
|
||||||
End Select
|
End Select
|
||||||
'"FROM TBPMO_DOC_VALUES T INNER JOIN TBPMO_DOCSEARCH_RESULTLIST_CONFIG T1 ON T.CONFIG_ID = T1.GUID WHERE T1.ENTITY_ID = {0} AND T1.LANGUAGE = '{1}' AND T.RECORD_ID = {2} ORDER BY T.DocID, T1.SEQUENCE", CURRENT_ENTITY_ID, USER_LANGUAGE, RECORD_ID)
|
|
||||||
|
|
||||||
Dim DT_DETAIL_VALUES As DataTable = MYDB_ECM.GetDatatable(DT_DETAILS_SQL)
|
|
||||||
Dim oDocID As Integer
|
Dim oDocID As Integer
|
||||||
Dim oConfigID As Integer
|
Dim oConfigID As Integer
|
||||||
Dim recordId As Integer
|
Dim recordId As Integer
|
||||||
@@ -352,9 +382,6 @@ Public Class ClassDocGrid
|
|||||||
If oFlteredRows.Length > 0 Then
|
If oFlteredRows.Length > 0 Then
|
||||||
value = oFlteredRows(0)("VALUE").ToString()
|
value = oFlteredRows(0)("VALUE").ToString()
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
'value = MYDB_ECM.GetScalarValue(String.Format("SELECT VALUE FROM TBPMO_DOC_VALUES WHERE CONFIG_ID = {0} AND DocID = {1} AND RECORD_ID = {2}", oConfigID, oDocID, RECORD_ID))
|
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
LOGGER.Warn(String.Format("Attention: Could not get Value from TBPMO_DOC_VALUES for ConfigId[{0}], DocId[{1}]: ", oConfigID, oDocID) & ex.Message)
|
LOGGER.Warn(String.Format("Attention: Could not get Value from TBPMO_DOC_VALUES for ConfigId[{0}], DocId[{1}]: ", oConfigID, oDocID) & ex.Message)
|
||||||
End Try
|
End Try
|
||||||
@@ -367,6 +394,7 @@ Public Class ClassDocGrid
|
|||||||
LOGGER.Warn($"Attention: Could not load values from TBPMO_DOC_VALUES: " & ex.Message & vbNewLine & $"SELECT VALUE FROM TBPMO_DOC_VALUES WHERE CONFIG_ID = {oConfigID} AND DocID = {oDocID} AND RECORD_ID = {RECORD_ID}")
|
LOGGER.Warn($"Attention: Could not load values from TBPMO_DOC_VALUES: " & ex.Message & vbNewLine & $"SELECT VALUE FROM TBPMO_DOC_VALUES WHERE CONFIG_ID = {oConfigID} AND DocID = {oDocID} AND RECORD_ID = {RECORD_ID}")
|
||||||
End Try
|
End Try
|
||||||
LOGGER.Debug("Values loaded...")
|
LOGGER.Debug("Values loaded...")
|
||||||
|
|
||||||
Try
|
Try
|
||||||
' Tabellen zum DataSet hinzufügen
|
' Tabellen zum DataSet hinzufügen
|
||||||
ds.Tables.Add(DT_RESULT)
|
ds.Tables.Add(DT_RESULT)
|
||||||
@@ -400,15 +428,26 @@ Public Class ClassDocGrid
|
|||||||
|
|
||||||
Dim gridControl As GridControl = pDocGridView.GridControl
|
Dim gridControl As GridControl = pDocGridView.GridControl
|
||||||
|
|
||||||
|
' ── 3. KRITISCH: Performance-optimiertes DataSource-Setzen ───────────
|
||||||
|
_isGridRefreshing = True ' Flag setzen VOR DataSource-Änderung
|
||||||
|
Try
|
||||||
|
pDocGridView.BeginDataUpdate() ' Events unterdrücken
|
||||||
|
pDocGridView.BeginUpdate() ' UI-Updates unterdrücken
|
||||||
|
|
||||||
' Datasource auf Master-Tabelle setzen
|
' Datasource auf Master-Tabelle setzen
|
||||||
'gridView.GridControl.DataSource = DT_RESULT
|
gridControl.DataSource = ds.Tables(0)
|
||||||
gridControl.DataSource = ds.Tables(0)
|
gridControl.ForceInitialize()
|
||||||
gridControl.ForceInitialize()
|
|
||||||
|
pDocGridView.EndUpdate() ' UI-Updates reaktivieren
|
||||||
|
pDocGridView.EndDataUpdate() ' Events reaktivieren
|
||||||
|
Catch ex As Exception
|
||||||
|
LOGGER.Error($"Error setting DataSource: {ex.Message}")
|
||||||
|
Finally
|
||||||
|
' Flag NICHT hier zurücksetzen - erst NACH allen Grid-Operationen!
|
||||||
|
End Try
|
||||||
|
|
||||||
' Detail View anlegen und der Relation `docIdDetails` zuweisen
|
' Detail View anlegen und der Relation `docIdDetails` zuweisen
|
||||||
Dim GVDoc_Values As New GridView(gridControl)
|
Dim GVDoc_Values As New GridView(gridControl)
|
||||||
'grvwDetail.OptionsBehavior.Editable = False
|
|
||||||
GVDoc_Values.OptionsView.ShowGroupPanel = False
|
GVDoc_Values.OptionsView.ShowGroupPanel = False
|
||||||
GVDoc_Values.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.Style3D
|
GVDoc_Values.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.Style3D
|
||||||
GVDoc_Values.OptionsView.EnableAppearanceEvenRow = True
|
GVDoc_Values.OptionsView.EnableAppearanceEvenRow = True
|
||||||
@@ -416,18 +455,17 @@ Public Class ClassDocGrid
|
|||||||
GVDoc_Values.Appearance.HeaderPanel.BackColor = Color.Orange
|
GVDoc_Values.Appearance.HeaderPanel.BackColor = Color.Orange
|
||||||
GVDoc_Values.Appearance.HeaderPanel.Options.UseBackColor = True
|
GVDoc_Values.Appearance.HeaderPanel.Options.UseBackColor = True
|
||||||
|
|
||||||
|
|
||||||
gridControl.LevelTree.Nodes.Add("docIdDetails", GVDoc_Values)
|
gridControl.LevelTree.Nodes.Add("docIdDetails", GVDoc_Values)
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
MsgBox("Error in FillColumns: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
MsgBox("Error in FillColumns: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
||||||
LOGGER.Warn("Attention: Could not load converted datatable DocSearch: " & ex.Message)
|
LOGGER.Warn("Attention: Could not load converted datatable DocSearch: " & ex.Message)
|
||||||
End Try
|
End Try
|
||||||
|
|
||||||
|
' ── 4. KRITISCH: Handler NACH DataSource-Setzen registrieren ─────────────
|
||||||
AddHandler pDocGridView.MasterRowExpanded, AddressOf gridView_MasterRowExpanded
|
AddHandler pDocGridView.MasterRowExpanded, AddressOf gridView_MasterRowExpanded
|
||||||
AddHandler pDocGridView.CustomColumnDisplayText, AddressOf gridView_CustomColumnDisplayText
|
AddHandler pDocGridView.CustomColumnDisplayText, AddressOf gridView_CustomColumnDisplayText
|
||||||
AddHandler pDocGridView.FocusedRowChanged, AddressOf GVDoc_Values_FocusedRowChanged
|
AddHandler pDocGridView.FocusedRowChanged, AddressOf GVDoc_Values_FocusedRowChanged
|
||||||
|
|
||||||
|
|
||||||
For Each row As DataRow In DT_WINDREAM_RESULTLIST.Rows
|
For Each row As DataRow In DT_WINDREAM_RESULTLIST.Rows
|
||||||
Dim col As GridColumn = pDocGridView.Columns(row.Item("HEADER_CAPTION"))
|
Dim col As GridColumn = pDocGridView.Columns(row.Item("HEADER_CAPTION"))
|
||||||
Dim colCaption = row.Item("HEADER_CAPTION")
|
Dim colCaption = row.Item("HEADER_CAPTION")
|
||||||
@@ -470,11 +508,22 @@ Public Class ClassDocGrid
|
|||||||
oChangedColumn.DisplayFormat.FormatString = CURRENT_DATE_FORMAT & " HH:MM:ss"
|
oChangedColumn.DisplayFormat.FormatString = CURRENT_DATE_FORMAT & " HH:MM:ss"
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
' ── 5. BestFitColumns mit gesetztem Flag ──────────────────────────────────
|
||||||
If GridDocResult_BestFitColumns Then
|
If GridDocResult_BestFitColumns Then
|
||||||
pDocGridView.OptionsView.BestFitMaxRowCount = -1
|
' _isGridRefreshing ist bereits True
|
||||||
pDocGridView.BestFitColumns(True)
|
Try
|
||||||
|
pDocGridView.BeginUpdate()
|
||||||
|
pDocGridView.OptionsView.BestFitMaxRowCount = -1
|
||||||
|
pDocGridView.BestFitColumns(True)
|
||||||
|
pDocGridView.EndUpdate()
|
||||||
|
Catch ex As Exception
|
||||||
|
LOGGER.Error($"Error in BestFitColumns: {ex.Message}")
|
||||||
|
End Try
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
' ── 6. KRITISCH: Flag ERST JETZT zurücksetzen! ────────────────────────────
|
||||||
|
_isGridRefreshing = False
|
||||||
|
|
||||||
' Alle Spalten aus ReadOnly setzen, danach werden alle passenden auf nicht ReadOnly gesetzt
|
' Alle Spalten aus ReadOnly setzen, danach werden alle passenden auf nicht ReadOnly gesetzt
|
||||||
For Each column As GridColumn In pDocGridView.Columns
|
For Each column As GridColumn In pDocGridView.Columns
|
||||||
column.OptionsColumn.AllowEdit = False
|
column.OptionsColumn.AllowEdit = False
|
||||||
@@ -570,42 +619,69 @@ Public Class ClassDocGrid
|
|||||||
|
|
||||||
Private Shared Sub gridView_CustomColumnDisplayText(sender As Object, e As CustomColumnDisplayTextEventArgs)
|
Private Shared Sub gridView_CustomColumnDisplayText(sender As Object, e As CustomColumnDisplayTextEventArgs)
|
||||||
Try
|
Try
|
||||||
Dim view As ColumnView = sender
|
' ── Performance-Check 1: Während Refresh nichts tun ──────────────────
|
||||||
|
If _isGridRefreshing Then Return
|
||||||
|
|
||||||
|
' ── Performance-Check 2: Ungültige Row-Handles ignorieren ────────────
|
||||||
|
If e.ListSourceRowIndex = DevExpress.XtraGrid.GridControl.InvalidRowHandle Then
|
||||||
|
Return
|
||||||
|
End If
|
||||||
|
|
||||||
|
' ── Performance-Check 3: Leere Werte schnell verarbeiten ─────────────
|
||||||
|
If e.Value Is Nothing OrElse String.IsNullOrWhiteSpace(e.Value.ToString()) Then
|
||||||
|
e.DisplayText = ""
|
||||||
|
Return
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim fieldName As String = e.Column.FieldName
|
||||||
|
Dim valueString As String = e.Value.ToString()
|
||||||
|
|
||||||
|
' ── WICHTIG: Verhindere rekursive Aufrufe ────────────────────────────
|
||||||
|
' Wenn DisplayText bereits korrekt ist, nichts ändern
|
||||||
|
If e.DisplayText = valueString Then Return
|
||||||
|
|
||||||
Dim parsedDate As DateTime
|
Dim parsedDate As DateTime
|
||||||
If Not IsNothing(DATE_COLUMNS) Then
|
|
||||||
If DATE_COLUMNS.Contains(e.Column.FieldName) And e.ListSourceRowIndex <> DevExpress.XtraGrid.GridControl.InvalidRowHandle Then
|
' ── Datumskonvertierung für Standard-Datumsspalten ───────────────────
|
||||||
LOGGER.Debug($"gridView_CustomColumnDisplayText1 [{e.Column.FieldName}] ")
|
If DATE_COLUMNS IsNot Nothing AndAlso DATE_COLUMNS.Contains(fieldName) Then
|
||||||
If e.Value.ToString() = String.Empty Then
|
Try
|
||||||
e.DisplayText = ""
|
If DateTime.TryParse(valueString, parsedDate) Then
|
||||||
Exit Sub
|
Dim formattedDate As String = parsedDate.ToString(CURRENT_DATE_FORMAT & " HH:mm:ss")
|
||||||
|
' Nur setzen wenn unterschiedlich
|
||||||
|
If e.DisplayText <> formattedDate Then
|
||||||
|
e.DisplayText = formattedDate
|
||||||
|
End If
|
||||||
End If
|
End If
|
||||||
|
Catch ex As FormatException
|
||||||
If Not DateTime.TryParse(e.Value, parsedDate) Then
|
' Bei Fehler Original-Wert belassen (NICHT setzen!)
|
||||||
parsedDate = DateTime.ParseExact(e.Value, CURRENT_DATE_FORMAT & " HH:MM:ss", System.Globalization.DateTimeFormatInfo.InvariantInfo)
|
If EnableVerboseGridLogging Then
|
||||||
|
LOGGER.Debug($"Date parsing failed for [{fieldName}]: {valueString}")
|
||||||
End If
|
End If
|
||||||
|
End Try
|
||||||
e.DisplayText = parsedDate.ToString(CURRENT_DATE_FORMAT & " HH:MM:ss")
|
Return
|
||||||
|
|
||||||
End If
|
|
||||||
End If
|
End If
|
||||||
If Not IsNothing(DATE_COLUMNS_CONFIG) Then
|
|
||||||
If DATE_COLUMNS_CONFIG.Contains(e.Column.FieldName) And e.ListSourceRowIndex <> DevExpress.XtraGrid.GridControl.InvalidRowHandle Then
|
|
||||||
If e.Value.ToString() = String.Empty Then
|
|
||||||
e.DisplayText = ""
|
|
||||||
Exit Sub
|
|
||||||
End If
|
|
||||||
LOGGER.Debug($"gridView_CustomColumnDisplayText2 [{e.Column.FieldName}] ")
|
|
||||||
If Not DateTime.TryParse(e.Value, parsedDate) Then
|
|
||||||
parsedDate = DateTime.ParseExact(e.Value, CURRENT_DATE_FORMAT, System.Globalization.DateTimeFormatInfo.InvariantInfo)
|
|
||||||
End If
|
|
||||||
|
|
||||||
e.DisplayText = parsedDate.ToString(CURRENT_DATE_FORMAT)
|
' ── Datumskonvertierung für Config-Datumsspalten ──────────────────────
|
||||||
End If
|
If DATE_COLUMNS_CONFIG IsNot Nothing AndAlso DATE_COLUMNS_CONFIG.Contains(fieldName) Then
|
||||||
|
Try
|
||||||
|
If DateTime.TryParse(valueString, parsedDate) Then
|
||||||
|
Dim formattedDate As String = parsedDate.ToString(CURRENT_DATE_FORMAT)
|
||||||
|
' Nur setzen wenn unterschiedlich
|
||||||
|
If e.DisplayText <> formattedDate Then
|
||||||
|
e.DisplayText = formattedDate
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
Catch ex As FormatException
|
||||||
|
' Bei Fehler Original-Wert belassen
|
||||||
|
If EnableVerboseGridLogging Then
|
||||||
|
LOGGER.Debug($"Date parsing failed for [{fieldName}]: {valueString}")
|
||||||
|
End If
|
||||||
|
End Try
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
LOGGER.Warn("Unexpected error in gridView_CustomColumnDisplayText: " & ex.Message)
|
LOGGER.Error($"gridView_CustomColumnDisplayText Error [{e.Column?.FieldName}]: {ex.Message}")
|
||||||
End Try
|
End Try
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
Public Shared Sub GVDoc_Values_FocusedRowChanged(sender As GridView, e As DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs)
|
Public Shared Sub GVDoc_Values_FocusedRowChanged(sender As GridView, e As DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs)
|
||||||
Try
|
Try
|
||||||
|
|||||||
@@ -1,181 +1,301 @@
|
|||||||
Imports System.IO
|
Imports System.IO
|
||||||
Imports Microsoft.Office.Interop
|
Imports Microsoft.Office.Interop
|
||||||
|
Imports Microsoft.Office.Interop.Outlook
|
||||||
|
|
||||||
Public Class ClassDragDrop
|
Public Class ClassDragDrop
|
||||||
Public Shared files_dropped As String()
|
Public Shared files_dropped As String()
|
||||||
|
Public Shared Event FilesDroppedReady(ByVal files As String())
|
||||||
Public Shared Function Drop_File(e As DragEventArgs)
|
Public Shared Function Drop_File(e As DragEventArgs)
|
||||||
Try
|
Try
|
||||||
LOGGER.Debug("In Drop_File....")
|
LOGGER.Debug("In Drop_File....")
|
||||||
files_dropped = Nothing
|
ClassHelper.DELETE_PMO_FILE_USER_OPEN_FILES()
|
||||||
|
|
||||||
Dim Sql As String = "DELETE FROM TBPMO_FILES_USER WHERE HANDLE_TYPE <> 'SCAN' AND USER_WORK = '" & USER_USERNAME & "'"
|
files_dropped = New String() {}
|
||||||
MYDB_ECM.ExecuteNonQuery(sql)
|
|
||||||
|
|
||||||
|
' WICHTIG: DB-Löschung NICHT im UI-Thread erzwingen.
|
||||||
|
' => Verschiebe in aufrufenden Code per BeginInvoke/Task.Run (siehe Kommentar unten).
|
||||||
|
' MYDB_ECM?.ExecuteNonQuery(Sql)
|
||||||
|
|
||||||
If e.Data.GetDataPresent(DataFormats.FileDrop) Then
|
Dim hasOutlookUnicode As Boolean = e.Data.GetDataPresent("FileGroupDescriptorW")
|
||||||
LOGGER.Debug("Simple File Drop")
|
Dim hasOutlookAnsi As Boolean = e.Data.GetDataPresent("FileGroupDescriptor")
|
||||||
Dim MyFiles() As String
|
Dim hasOutlookContents As Boolean = e.Data.GetDataPresent("FileContents")
|
||||||
Dim i As Integer
|
Dim hasChromiumMime As Boolean = e.Data.GetDataPresent("Chromium Web Custom MIME Data Format")
|
||||||
' Assign the files to an array.
|
Dim hasFileNameW As Boolean = e.Data.GetDataPresent("FileNameW") OrElse e.Data.GetDataPresent("FileName")
|
||||||
MyFiles = e.Data.GetData(DataFormats.FileDrop)
|
Dim hasFileDrop As Boolean = e.Data.GetDataPresent(DataFormats.FileDrop)
|
||||||
' Loop through the array and add the files to the list.
|
|
||||||
For i = 0 To MyFiles.Length - 1
|
|
||||||
LOGGER.Info("Simple FileDrop - File: " & MyFiles(i))
|
|
||||||
ReDim Preserve files_dropped(i)
|
|
||||||
files_dropped(i) = "@DROPFROMFSYSTEM@" & MyFiles(i)
|
|
||||||
' ListBox1.Items.Add(MyFiles(i))
|
|
||||||
Next
|
|
||||||
Return True
|
|
||||||
ElseIf (e.Data.GetDataPresent("FileGroupDescriptor")) AndAlso (e.Data.GetDataPresent("FileContents")) Then
|
|
||||||
'// the first step here is to get the stbFileName
|
|
||||||
'// of the attachment and
|
|
||||||
'// build a full-path name so we can store it
|
|
||||||
'// in the temporary folder
|
|
||||||
'//
|
|
||||||
'// set up to obtain the aryFileGroupDescriptor
|
|
||||||
'// and extract the file name
|
|
||||||
Dim stmInput As IO.Stream = CType(e.Data.GetData("FileGroupDescriptor"), IO.Stream)
|
|
||||||
Dim aryFileGroupDescriptor(512) As Byte ' = new byte[512]
|
|
||||||
stmInput.Read(aryFileGroupDescriptor, 0, 512)
|
|
||||||
'// used to build the stbFileName from the aryFileGroupDescriptor block
|
|
||||||
Dim stbFileName As System.Text.StringBuilder = New System.Text.StringBuilder("")
|
|
||||||
'// this trick gets the stbFileName of the passed attached file
|
|
||||||
Dim intCnt As Integer = 76
|
|
||||||
Do While aryFileGroupDescriptor(intCnt) <> 0
|
|
||||||
stbFileName.Append(Convert.ToChar(aryFileGroupDescriptor(intCnt), System.Globalization.CultureInfo.CreateSpecificCulture("de-DE")))
|
|
||||||
intCnt += 1
|
|
||||||
Loop
|
|
||||||
stmInput.Close()
|
|
||||||
|
|
||||||
Dim anhaenge = e.Data.GetDataPresent("FileContents")
|
'1) Klassische Outlook-Attachments: Descriptor + Contents
|
||||||
'Dim path As String = "C:\VBProjekte\Dateien"
|
If (hasOutlookUnicode OrElse hasOutlookAnsi) AndAlso hasOutlookContents Then
|
||||||
'// put the zip file into the temp directory
|
' ... dein bestehender Descriptor/Contents-Code ...
|
||||||
Dim strOutFile As String = Path.GetTempPath() & stbFileName.ToString()
|
' Return True wenn erfolgreich
|
||||||
'// create the full-path name
|
|
||||||
'//
|
|
||||||
'// Second step: we have the file name.
|
|
||||||
'// Now we need to get the actual raw
|
|
||||||
'// data for the attached file and copy it to disk so we work on it.
|
|
||||||
'//
|
|
||||||
'// get the actual raw file into memory
|
|
||||||
Dim msInput As IO.MemoryStream = CType(e.Data.GetData("FileContents", True), IO.MemoryStream) 'This returns nothing for an Email
|
|
||||||
If msInput Is Nothing = False Then
|
|
||||||
LOGGER.Debug("Drag of Outlook Attachment")
|
|
||||||
'// allocate enough bytes to hold the raw date
|
|
||||||
Dim aryFileBytes(CType(msInput.Length, Int32)) As Byte
|
|
||||||
'// set starting position at first byte and read in the raw data
|
|
||||||
msInput.Position = 0
|
|
||||||
msInput.Read(aryFileBytes, 0, CType(msInput.Length, Int32))
|
|
||||||
'// create a file and save the raw zip file to it
|
|
||||||
Dim fsOutput As IO.FileStream = New IO.FileStream(strOutFile, IO.FileMode.Create) ';
|
|
||||||
fsOutput.Write(aryFileBytes, 0, aryFileBytes.Length)
|
|
||||||
fsOutput.Close() ' // close the file
|
|
||||||
Dim resultVersion = ClassHelper.Versionierung_Datei(strOutFile)
|
|
||||||
If resultVersion <> "" Then
|
|
||||||
strOutFile = resultVersion
|
|
||||||
End If
|
|
||||||
Dim finTemp As IO.FileInfo = New IO.FileInfo(strOutFile)
|
|
||||||
'// always good to make sure we actually created the file
|
|
||||||
If (finTemp.Exists = True) Then
|
|
||||||
ReDim Preserve files_dropped(0)
|
|
||||||
files_dropped(0) = "@OUTLOOK_ATTACHMENT@" & strOutFile
|
|
||||||
LOGGER.Debug("Drop an Attachment - File: " & strOutFile)
|
|
||||||
Return True
|
|
||||||
Else
|
|
||||||
LOGGER.Warn("Attachment File from Outlook could not be created")
|
|
||||||
End If
|
|
||||||
Else
|
|
||||||
LOGGER.Warn("No simple drag and drop.", True)
|
|
||||||
For Each fmt As String In e.Data.GetFormats()
|
|
||||||
' Output format name and type
|
|
||||||
LOGGER.Warn("e.Data is: " & fmt + " (" +
|
|
||||||
e.Data.GetData(fmt).ToString() + ")", True)
|
|
||||||
Next
|
|
||||||
|
|
||||||
End If
|
|
||||||
End If
|
End If
|
||||||
If e.Data.GetDataPresent("FileGroupDescriptor") Then
|
|
||||||
Dim oApp
|
'2) ATTACHMENT oder komplette Mail aus Outlook/WebView2: KEIN Descriptor+Contents, ABER FileDrop vorhanden
|
||||||
|
' => zuerst FileDrop verarbeiten. Wenn leer (delayed rendering), dann Fallback über Outlook COM Selection/Inspector
|
||||||
|
If hasFileDrop AndAlso (hasChromiumMime OrElse hasFileNameW) AndAlso Not hasOutlookContents Then
|
||||||
|
LOGGER?.Debug("WebView2/Outlook Attachment or Mail: try FileDrop, skip Outlook COM initially")
|
||||||
|
Dim ok As Boolean = HandleFileDrop(e)
|
||||||
|
If ok Then Return True
|
||||||
|
|
||||||
|
' FileDrop leer -> Fallback: versuche ausgewählte Mail via Outlook COM zu speichern
|
||||||
|
LOGGER?.Warn("FileDrop vorhanden, aber leer. Fallback auf Outlook COM für komplette Mail.")
|
||||||
|
ScheduleOutlookComFallback()
|
||||||
|
Return True ' Wichtig: UI-Thread nicht blockieren; wir verarbeiten asynchron.
|
||||||
|
End If
|
||||||
|
|
||||||
|
'3) Outlook Mail (.msg): Descriptor ohne Contents ODER Chromium/WebView2 Indikatoren – nur wenn KEIN FileDrop vorhanden
|
||||||
|
If Not hasFileDrop AndAlso ((hasOutlookAnsi OrElse hasOutlookUnicode) OrElse hasChromiumMime OrElse hasFileNameW) Then
|
||||||
Try
|
Try
|
||||||
oApp = New Outlook.Application()
|
Dim oApp As Outlook.Application = Nothing
|
||||||
Catch ex As Exception
|
|
||||||
MsgBox("Unexpected error in Initialisieren von Outlook-API:" & vbNewLine & ex.Message & vbNewLine & vbNewLine & "Evtl ist Outlook nicht in der dafür vorgesehenen For")
|
|
||||||
Return False
|
|
||||||
End Try
|
|
||||||
LOGGER.Debug("Drop of msg")
|
|
||||||
'supports a drop of a Outlook message
|
|
||||||
Dim myobj As Object
|
|
||||||
For i As Integer = 1 To oApp.ActiveExplorer.Selection.Count
|
|
||||||
myobj = oApp.ActiveExplorer.Selection.Item(i)
|
|
||||||
Dim subj As String = myobj.Subject
|
|
||||||
If subj = "" Then
|
|
||||||
subj = "NO_SUBJECT"
|
|
||||||
End If
|
|
||||||
If subj.Contains("\") Then
|
|
||||||
subj = subj.Replace("\", "-")
|
|
||||||
End If
|
|
||||||
If subj.Contains("/") Then
|
|
||||||
subj = subj.Replace("/", "-")
|
|
||||||
End If
|
|
||||||
'hardcode a destination path for testing
|
|
||||||
Dim strFile As String = IO.Path.Combine(Path.GetTempPath, (subj + ".msg").Replace(":", ""))
|
|
||||||
strFile = strFile.Replace("?", "")
|
|
||||||
strFile = strFile.Replace("!", "")
|
|
||||||
strFile = strFile.Replace("%", "")
|
|
||||||
strFile = strFile.Replace("$", "")
|
|
||||||
LOGGER.Info("Drop of msg - File:" & strFile)
|
|
||||||
Try
|
Try
|
||||||
myobj.SaveAs(strFile)
|
oApp = New Outlook.Application()
|
||||||
Catch ex As Exception
|
Catch ex As System.Exception
|
||||||
MsgBox("Error in Save Email2Tempfile" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
MsgBox("Fehler beim Initialisieren der Outlook-API:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
||||||
Return False
|
GoTo CheckFileDrop
|
||||||
End Try
|
End Try
|
||||||
|
|
||||||
ReDim Preserve files_dropped(i)
|
Dim explorer = oApp.ActiveExplorer
|
||||||
files_dropped(i) = "@OUTLOOK_MESSAGE@" & strFile
|
If explorer IsNot Nothing AndAlso explorer.Selection IsNot Nothing AndAlso explorer.Selection.Count > 0 Then
|
||||||
Next
|
LOGGER?.Debug("Drop of msg (Outlook Explorer Selection)")
|
||||||
Return True
|
For i As Integer = 1 To explorer.Selection.Count
|
||||||
'Drop eines Outlook Attachments
|
Dim myobj As Object = explorer.Selection.Item(i)
|
||||||
|
If myobj Is Nothing Then Continue For
|
||||||
|
SaveMailItemToTemp(myobj)
|
||||||
|
Next
|
||||||
|
Return True
|
||||||
|
Else
|
||||||
|
Dim inspector = oApp.ActiveInspector
|
||||||
|
If inspector IsNot Nothing AndAlso inspector.CurrentItem IsNot Nothing Then
|
||||||
|
LOGGER?.Debug("Drop of msg (ActiveInspector.CurrentItem) Fallback")
|
||||||
|
SaveMailItemToTemp(inspector.CurrentItem)
|
||||||
|
Return True
|
||||||
|
Else
|
||||||
|
LOGGER?.Warn("Outlook: Keine Auswahl im Explorer und kein ActiveInspector.CurrentItem verfügbar.")
|
||||||
|
' Namen loggen – aber zurück zum FileDrop-Fallback
|
||||||
|
If hasFileNameW Then
|
||||||
|
Dim namesObj As Object = e.Data.GetData(If(e.Data.GetDataPresent("FileNameW"), "FileNameW", "FileName"), True)
|
||||||
|
Dim names As String() = TryCast(namesObj, String())
|
||||||
|
If names Is Nothing Then
|
||||||
|
Dim nameSingle As String = TryCast(namesObj, String)
|
||||||
|
If Not String.IsNullOrWhiteSpace(nameSingle) Then
|
||||||
|
LOGGER?.Warn("Vorgeschlagener Name (ohne Inhalt): " & nameSingle)
|
||||||
|
End If
|
||||||
|
Else
|
||||||
|
LOGGER?.Warn("Vorgeschlagene Namen (ohne Inhalt): " & String.Join("; ", names))
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
GoTo CheckFileDrop
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
Catch ex As System.Exception
|
||||||
|
LOGGER?.Warn("Outlook MSG-Drop Fehler: " & ex.Message)
|
||||||
|
End Try
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Catch ex As Exception
|
CheckFileDrop:
|
||||||
|
'4) Filesystem FileDrop (klassisch ODER WebView2 delayed rendering)
|
||||||
|
If hasFileDrop Then
|
||||||
|
If HandleFileDrop(e) Then Return True
|
||||||
|
ScheduleOutlookComFallback()
|
||||||
|
Return True
|
||||||
|
End If
|
||||||
|
|
||||||
|
'5) SCAN-StringFormat
|
||||||
|
If e.Data.GetDataPresent(DataFormats.StringFormat) Then
|
||||||
|
Dim Wert As String = TryCast(e.Data.GetData(DataFormats.StringFormat), String)
|
||||||
|
If Not String.IsNullOrEmpty(Wert) Then
|
||||||
|
Dim idx As Integer = files_dropped.Length
|
||||||
|
ReDim Preserve files_dropped(idx)
|
||||||
|
files_dropped(idx) = "@SCAN@" & Wert
|
||||||
|
Return True
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
Catch ex As System.Exception
|
||||||
MsgBox("Unexpected Error in Drop_File: " & ex.Message, MsgBoxStyle.Critical)
|
MsgBox("Unexpected Error in Drop_File: " & ex.Message, MsgBoxStyle.Critical)
|
||||||
End Try
|
End Try
|
||||||
If e.Data.GetDataPresent(DataFormats.StringFormat) Then
|
|
||||||
Dim Wert As String = CType(e.Data.GetData(DataFormats.StringFormat), Object)
|
LOGGER?.Warn("Drop_File: Kein extrahierbarer Inhalt. Bitte Attachment aus der Nachrichtenliste ziehen oder zunächst speichern.")
|
||||||
Console.WriteLine(Wert)
|
Return False
|
||||||
ReDim Preserve files_dropped(0)
|
|
||||||
files_dropped(0) = "@SCAN@" & Wert
|
|
||||||
Return True
|
|
||||||
End If
|
|
||||||
|
|
||||||
|
|
||||||
End Function
|
End Function
|
||||||
|
' FileDrop defensiv behandeln – erst ohne, dann mit autoConvert
|
||||||
|
Private Shared Function HandleFileDrop(e As DragEventArgs) As Boolean
|
||||||
|
Try
|
||||||
|
' Versuch1: ohne AutoConvert
|
||||||
|
Dim rawObj As Object = e.Data.GetData(DataFormats.FileDrop)
|
||||||
|
Dim rawFiles As String() = TryCast(rawObj, String())
|
||||||
|
If Not (rawFiles Is Nothing OrElse rawFiles.Length = 0) Then
|
||||||
|
For Each f In rawFiles
|
||||||
|
LOGGER?.Info("FileDrop (raw) - File: " & f)
|
||||||
|
AppendDroppedFile("@DROPFROMFSYSTEM@", f)
|
||||||
|
Next
|
||||||
|
Return True
|
||||||
|
End If
|
||||||
|
|
||||||
|
' Versuch2: mit AutoConvert (delayed rendering)
|
||||||
|
Dim convObj As Object = e.Data.GetData(DataFormats.FileDrop, True)
|
||||||
|
Dim convFiles As String() = TryCast(convObj, String())
|
||||||
|
If Not (convFiles Is Nothing OrElse convFiles.Length = 0) Then
|
||||||
|
For Each f In convFiles
|
||||||
|
LOGGER?.Info("FileDrop (autoConvert) - File: " & f)
|
||||||
|
AppendDroppedFile("@DROPFROMFSYSTEM@", f)
|
||||||
|
Next
|
||||||
|
Return True
|
||||||
|
End If
|
||||||
|
|
||||||
|
LOGGER?.Warn("FileDrop vorhanden, aber keine Dateien (raw/autoConvert leer).")
|
||||||
|
Return False
|
||||||
|
Catch ex As System.Exception
|
||||||
|
LOGGER?.Warn("HandleFileDrop Fehler: " & ex.Message)
|
||||||
|
Return False
|
||||||
|
End Try
|
||||||
|
End Function
|
||||||
|
Private Shared Sub AppendDroppedFile(prefix As String, filePath As String)
|
||||||
|
Dim idx As Integer = files_dropped.Length
|
||||||
|
ReDim Preserve files_dropped(idx)
|
||||||
|
files_dropped(idx) = prefix & filePath
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
Private Shared Sub SaveMailItemToTemp(ByVal mailObj As Object)
|
||||||
|
Dim subj As String = ""
|
||||||
|
Try
|
||||||
|
subj = mailObj.Subject
|
||||||
|
Catch
|
||||||
|
subj = "NO_SUBJECT"
|
||||||
|
End Try
|
||||||
|
If String.IsNullOrWhiteSpace(subj) Then subj = "NO_SUBJECT"
|
||||||
|
|
||||||
|
Dim safeName = subj.Replace("\", "-").Replace("/", "-").Replace(":", "") _
|
||||||
|
.Replace("?", "").Replace("!", "").Replace("%", "").Replace("$", "")
|
||||||
|
Dim strFile As String = IO.Path.Combine(Path.GetTempPath(), safeName & ".msg")
|
||||||
|
LOGGER?.Info("Drop of msg - File:" & strFile)
|
||||||
|
Try
|
||||||
|
mailObj.SaveAs(strFile)
|
||||||
|
AppendDroppedFile("@OUTLOOK_MESSAGE@", strFile)
|
||||||
|
Catch ex As System.Exception
|
||||||
|
MsgBox("Error in Save Email2Tempfile" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
||||||
|
End Try
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
Private Shared Sub ScheduleOutlookComFallback()
|
||||||
|
Try
|
||||||
|
Dim t As New Threading.Thread(
|
||||||
|
Sub()
|
||||||
|
Try
|
||||||
|
Threading.Thread.Sleep(200)
|
||||||
|
Dim maxRetries As Integer = 10
|
||||||
|
Dim saved As Boolean = False
|
||||||
|
For attempt As Integer = 1 To maxRetries
|
||||||
|
If TrySaveSelectedMailViaOutlook() Then
|
||||||
|
LOGGER?.Info("Outlook COM Fallback: Mail gespeichert. Versuch " & attempt)
|
||||||
|
saved = True
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
LOGGER?.Debug("Outlook COM Fallback: Keine Auswahl, Retry " & attempt)
|
||||||
|
Threading.Thread.Sleep(200)
|
||||||
|
Next
|
||||||
|
|
||||||
|
If saved Then
|
||||||
|
' UI-Thread benachrichtigen
|
||||||
|
Dim uiForm = If(System.Windows.Forms.Application.OpenForms.Count > 0, System.Windows.Forms.Application.OpenForms(0), Nothing)
|
||||||
|
If uiForm IsNot Nothing Then
|
||||||
|
uiForm.BeginInvoke(
|
||||||
|
Sub()
|
||||||
|
Try
|
||||||
|
RaiseEvent FilesDroppedReady(files_dropped)
|
||||||
|
Catch ex2 As System.Exception
|
||||||
|
LOGGER?.Warn("FilesDroppedReady Invoke Fehler: " & ex2.Message)
|
||||||
|
End Try
|
||||||
|
End Sub)
|
||||||
|
Else
|
||||||
|
' Falls kein Form verfügbar, zumindest Event auslösen (Listener müssen ggf. selbst marshalen)
|
||||||
|
RaiseEvent FilesDroppedReady(files_dropped)
|
||||||
|
End If
|
||||||
|
Else
|
||||||
|
LOGGER?.Warn("Outlook COM Fallback: Nach Retries keine Mail gespeichert.")
|
||||||
|
End If
|
||||||
|
Catch ex As System.Exception
|
||||||
|
LOGGER?.Warn("Outlook COM Fallback Thread Fehler: " & ex.Message)
|
||||||
|
End Try
|
||||||
|
End Sub
|
||||||
|
)
|
||||||
|
t.IsBackground = True
|
||||||
|
t.SetApartmentState(Threading.ApartmentState.STA)
|
||||||
|
t.Start()
|
||||||
|
Catch ex As System.Exception
|
||||||
|
LOGGER?.Warn("ScheduleOutlookComFallback Fehler: " & ex.Message)
|
||||||
|
End Try
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
Private Shared Function TrySaveSelectedMailViaOutlook() As Boolean
|
||||||
|
Try
|
||||||
|
Dim oApp As Outlook.Application = Nothing
|
||||||
|
Try
|
||||||
|
oApp = New Outlook.Application()
|
||||||
|
Catch ex As System.Exception
|
||||||
|
LOGGER?.Warn("Outlook COM Init fehlgeschlagen: " & ex.Message)
|
||||||
|
Return False
|
||||||
|
End Try
|
||||||
|
|
||||||
|
Dim savedAny As Boolean = False
|
||||||
|
|
||||||
|
Dim inspector = oApp.ActiveInspector
|
||||||
|
If inspector IsNot Nothing AndAlso inspector.CurrentItem IsNot Nothing Then
|
||||||
|
LOGGER?.Debug("Fallback: ActiveInspector.CurrentItem speichern")
|
||||||
|
SaveMailItemToTemp(inspector.CurrentItem)
|
||||||
|
savedAny = True
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Not savedAny Then
|
||||||
|
Dim explorer = oApp.ActiveExplorer
|
||||||
|
If explorer IsNot Nothing AndAlso explorer.Selection IsNot Nothing AndAlso explorer.Selection.Count > 0 Then
|
||||||
|
LOGGER?.Debug("Fallback: Explorer.Selection speichern")
|
||||||
|
For i As Integer = 1 To explorer.Selection.Count
|
||||||
|
Dim myobj As Object = explorer.Selection.Item(i)
|
||||||
|
If myobj Is Nothing Then Continue For
|
||||||
|
SaveMailItemToTemp(myobj)
|
||||||
|
savedAny = True
|
||||||
|
Next
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
Return savedAny
|
||||||
|
Catch ex As System.Exception
|
||||||
|
LOGGER?.Warn("TrySaveSelectedMailViaOutlook Fehler: " & ex.Message)
|
||||||
|
Return False
|
||||||
|
End Try
|
||||||
|
End Function
|
||||||
|
|
||||||
Public Shared Sub Drag_enter(e As DragEventArgs)
|
Public Shared Sub Drag_enter(e As DragEventArgs)
|
||||||
Try
|
Try
|
||||||
My.Settings.WD_INDEXDOKART_SAVE = ""
|
My.Settings.WD_INDEXDOKART_SAVE = ""
|
||||||
If e.Data.GetDataPresent(DataFormats.FileDrop) Then
|
|
||||||
e.Effect = DragDropEffects.All
|
Dim hasOutlookUnicode As Boolean = e.Data.GetDataPresent("FileGroupDescriptorW")
|
||||||
LOGGER.Debug("DragEnter ... SimpleFileDrop")
|
Dim hasOutlookAnsi As Boolean = e.Data.GetDataPresent("FileGroupDescriptor")
|
||||||
'frmForm_Constructor_Main_2.tslblStatusMain_show(True, "DragEnter ... SimpleFileDrop")
|
Dim hasOutlookDescriptor As Boolean = hasOutlookUnicode OrElse hasOutlookAnsi
|
||||||
ElseIf (e.Data.GetDataPresent("FileGroupDescriptor")) AndAlso (e.Data.GetDataPresent("FileContents")) Then
|
|
||||||
|
Dim hasChromiumMime As Boolean = e.Data.GetDataPresent("Chromium Web Custom MIME Data Format")
|
||||||
|
Dim hasFileNameW As Boolean = e.Data.GetDataPresent("FileNameW") OrElse e.Data.GetDataPresent("FileName")
|
||||||
|
Dim hasOutlookLike As Boolean = hasOutlookDescriptor OrElse hasChromiumMime OrElse hasFileNameW
|
||||||
|
|
||||||
|
Dim hasFileDrop As Boolean = e.Data.GetDataPresent(DataFormats.FileDrop)
|
||||||
|
|
||||||
|
If hasOutlookLike Then
|
||||||
e.Effect = DragDropEffects.Copy
|
e.Effect = DragDropEffects.Copy
|
||||||
'frmForm_Constructor_Main_2.tslblStatusMain_show(True, "DragEnter ... Attachment from Outlook")
|
LOGGER?.Debug("DragEnter ... Outlook/WebView2 erkannt (Descriptor/Chromium/FileNameW)")
|
||||||
LOGGER.Debug("DragEnter ... Attachment from Outlook")
|
ElseIf hasFileDrop Then
|
||||||
ElseIf e.Data.GetDataPresent("FileGroupDescriptor") Then
|
|
||||||
'handle a message dragged from Outlook
|
|
||||||
e.Effect = DragDropEffects.Copy
|
e.Effect = DragDropEffects.Copy
|
||||||
'frmForm_Constructor_Main_2.tslblStatusMain_show(True, "DragEnter ... OutlookMessage")
|
LOGGER?.Debug("DragEnter ... SimpleFileDrop")
|
||||||
LOGGER.Debug("DragEnter ... OutlookMessage")
|
|
||||||
Else
|
Else
|
||||||
'otherwise, do not handle
|
e.Effect = DragDropEffects.None
|
||||||
e.Effect = DragDropEffects.Copy
|
LOGGER?.Debug("DragEnter ... Other FileFormat")
|
||||||
'frmForm_Constructor.tslblStatusMain_show(True, "DragEnter ... Other FileFormat")
|
|
||||||
LOGGER.Debug("DragEnter ... Other FileFormat")
|
|
||||||
End If
|
End If
|
||||||
Catch ex As Exception
|
|
||||||
|
LOGGER?.Debug("DragEnter Formats: " & String.Join(", ", e.Data.GetFormats()))
|
||||||
|
Catch ex As System.Exception
|
||||||
|
|
||||||
End Try
|
End Try
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
End Class
|
End Class
|
||||||
|
|||||||
@@ -1,151 +0,0 @@
|
|||||||
Imports System.IO
|
|
||||||
Imports Independentsoft
|
|
||||||
Imports System.Threading
|
|
||||||
|
|
||||||
|
|
||||||
Public Class ClassFolderWatcher
|
|
||||||
Public Shared FolderWatcher_SCAN As FileSystemWatcher
|
|
||||||
Public Shared NEW_FILES As Boolean = True
|
|
||||||
Public Shared Function Restart_FolderWatchSCAN()
|
|
||||||
|
|
||||||
Try
|
|
||||||
If FolderWatcher_SCAN.EnableRaisingEvents = True Then
|
|
||||||
'Gestartet also Stoppen
|
|
||||||
FolderWatcher_SCAN.EnableRaisingEvents = False
|
|
||||||
FWSCAN_started = False
|
|
||||||
'FolderWatch neu instanzieren
|
|
||||||
FolderWatcher_SCAN = New System.IO.FileSystemWatcher(CURRENT_SCAN_FOLDERWATCH, "*.*")
|
|
||||||
LOGGER.Warn("FolderWatchScan neu instanziert")
|
|
||||||
FolderWatcher_SCAN.IncludeSubdirectories = CURRENT_SCAN_FOLDERWATCH_SD
|
|
||||||
FolderWatcher_SCAN.EnableRaisingEvents = True
|
|
||||||
AddHandler FolderWatcher_SCAN.Created, AddressOf OnCreated
|
|
||||||
FWSCAN_started = True
|
|
||||||
SaveMySettingsValue("FWSCAN_started", "True", "ConfigMain")
|
|
||||||
|
|
||||||
End If
|
|
||||||
Catch ex As Exception
|
|
||||||
MsgBox("Error in Restart_FolderWatchSCAN:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
|
||||||
End Try
|
|
||||||
|
|
||||||
End Function
|
|
||||||
Public Shared Function StartStop_FolderWatchSCAN()
|
|
||||||
Try
|
|
||||||
If CURRENT_SCAN_FOLDERWATCH = "" Then
|
|
||||||
MsgBox("Bitte definieren Sie einen Überwachungsordner für Scan-Eingänge:", MsgBoxStyle.Exclamation)
|
|
||||||
Return False
|
|
||||||
End If
|
|
||||||
If FolderWatcher_SCAN Is Nothing Then
|
|
||||||
FolderWatcher_SCAN = New System.IO.FileSystemWatcher(CURRENT_SCAN_FOLDERWATCH, "*.*")
|
|
||||||
LOGGER.Info("FolderWatch Scan Gestartet")
|
|
||||||
FolderWatcher_SCAN.IncludeSubdirectories = CURRENT_SCAN_FOLDERWATCH_SD
|
|
||||||
FolderWatcher_SCAN.EnableRaisingEvents = True
|
|
||||||
AddHandler FolderWatcher_SCAN.Created, AddressOf OnCreated
|
|
||||||
FWSCAN_started = True
|
|
||||||
SaveMySettingsValue("FWSCAN_started", "True", "ConfigMain")
|
|
||||||
Return 1
|
|
||||||
End If
|
|
||||||
If FolderWatcher_SCAN.EnableRaisingEvents = False Then
|
|
||||||
' Dim watcher As New FileSystemWatcher()
|
|
||||||
' watcher.Path = CURRENT_FOLDERWATCH
|
|
||||||
FolderWatcher_SCAN = New System.IO.FileSystemWatcher(CURRENT_SCAN_FOLDERWATCH, "*.*")
|
|
||||||
LOGGER.Info("FolderWatch Scan Gestartet")
|
|
||||||
FolderWatcher_SCAN.IncludeSubdirectories = CURRENT_SCAN_FOLDERWATCH_SD
|
|
||||||
FolderWatcher_SCAN.EnableRaisingEvents = True
|
|
||||||
AddHandler FolderWatcher_SCAN.Created, AddressOf OnCreated
|
|
||||||
FWSCAN_started = True
|
|
||||||
SaveMySettingsValue("FWSCAN_started", "True", "ConfigMain")
|
|
||||||
Return 1
|
|
||||||
Else
|
|
||||||
'Gestartet also Stoppen
|
|
||||||
FolderWatcher_SCAN.EnableRaisingEvents = False
|
|
||||||
FWSCAN_started = False
|
|
||||||
LOGGER.Info("FolderWatch Scan gestoppt")
|
|
||||||
SaveMySettingsValue("FWSCAN_started", "False", "ConfigMain")
|
|
||||||
Return 0
|
|
||||||
End If
|
|
||||||
|
|
||||||
Catch ex As Exception
|
|
||||||
MsgBox("Error in StartStop_FolderWatchSCAN:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
|
||||||
Return 99
|
|
||||||
End Try
|
|
||||||
End Function
|
|
||||||
Private Shared Sub OnCreated(source As Object, e As FileSystemEventArgs)
|
|
||||||
Try
|
|
||||||
For Each row As DataRow In DTEXCLUDE_FILES.Rows
|
|
||||||
Dim content As String = row.Item(0).ToString.ToLower
|
|
||||||
If e.FullPath.ToLower.Contains(content) Then
|
|
||||||
Exit Sub
|
|
||||||
End If
|
|
||||||
Next
|
|
||||||
|
|
||||||
Dim handleType As String
|
|
||||||
If e.FullPath.EndsWith(".msg") Then
|
|
||||||
handleType = "SCAN_OUTLOOK_MESSAGE"
|
|
||||||
Else
|
|
||||||
handleType = "SCAN"
|
|
||||||
End If
|
|
||||||
'Die Datei übergeben
|
|
||||||
LOGGER.Debug("OnCreated-File:" & e.FullPath)
|
|
||||||
If FileExistsinDropTable(CURRENT_FILENAME) = False Then
|
|
||||||
If ClassHelper.Insert_USER_File(e.FullPath, handleType) = False Then
|
|
||||||
Exit Sub
|
|
||||||
End If
|
|
||||||
Else
|
|
||||||
Console.WriteLine("File existiert bereits")
|
|
||||||
End If
|
|
||||||
ClassHelper.Create_USER_FILE_TABLE()
|
|
||||||
NEW_FILES = True
|
|
||||||
Catch ex As Exception
|
|
||||||
MsgBox(ex.Message, MsgBoxStyle.Critical, "Error in folder_watch_Created")
|
|
||||||
End Try
|
|
||||||
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Public Shared Function FileExistsinDropTable(Filename As String)
|
|
||||||
Dim check As String
|
|
||||||
Try
|
|
||||||
check = "SELECT COUNT(*) FROM TBPMO_FILES_USER WHERE FILENAME2WORK = '" & Filename & "' AND WORKED = 0"
|
|
||||||
Dim result = MYDB_ECM.GetScalarValue(check)
|
|
||||||
Return result
|
|
||||||
Catch ex As Exception
|
|
||||||
MsgBox("Error in FileExistsinDropTable - Error-Message:" & vbNewLine & ex.Message & vbNewLine & "SQL-Command:" & vbNewLine & check, MsgBoxStyle.Critical)
|
|
||||||
Return Nothing
|
|
||||||
End Try
|
|
||||||
|
|
||||||
End Function
|
|
||||||
Public Shared Function DELETE_SCAN_File(filename As String)
|
|
||||||
Try
|
|
||||||
Dim filename_only As String = Path.GetFileName(filename)
|
|
||||||
Dim del As String = String.Format("DELETE FROM TBPMO_FILES_USER WHERE FILENAME2WORK = '{0}'", filename)
|
|
||||||
Return MYDB_ECM.ExecuteNonQuery(del)
|
|
||||||
Catch ex As Exception
|
|
||||||
MsgBox("Unexpected Error in DELETE_SCAN_File: " & ex.Message, MsgBoxStyle.Critical)
|
|
||||||
Return False
|
|
||||||
End Try
|
|
||||||
End Function
|
|
||||||
Public Shared Function DELETE_SCAN_File_User()
|
|
||||||
Try
|
|
||||||
Dim del As String = String.Format("DELETE FROM TBPMO_FILES_USER WHERE USER_WORK = '{0}' AND HANDLE_TYPE = 'SCAN'", USER_USERNAME)
|
|
||||||
Return MYDB_ECM.ExecuteNonQuery(del)
|
|
||||||
Catch ex As Exception
|
|
||||||
MsgBox("Unexpected Error in DELETE_SCAN_File_User: " & ex.Message, MsgBoxStyle.Critical)
|
|
||||||
Return False
|
|
||||||
End Try
|
|
||||||
End Function
|
|
||||||
|
|
||||||
Public Shared Function Check_Scan_Files()
|
|
||||||
Try
|
|
||||||
Dim sql As String = String.Format("select * from TBPMO_FILES_USER where HANDLE_TYPE = 'SCAN' and WORKED = 0 AND USER_WORK = '{0}'", USER_USERNAME)
|
|
||||||
Dim DT As DataTable = MYDB_ECM.GetDatatable(sql)
|
|
||||||
For Each row As DataRow In DT.Rows
|
|
||||||
If System.IO.File.Exists(row.Item("FILENAME2WORK")) = False Then
|
|
||||||
DELETE_SCAN_File(row.Item("FILENAME2WORK"))
|
|
||||||
End If
|
|
||||||
Next
|
|
||||||
CURRENT_SCAN_TABLE = MYDB_ECM.GetDatatable(sql)
|
|
||||||
Catch ex As Exception
|
|
||||||
MsgBox("Unexpected Error in DELETE_SCAN_File_User: " & ex.Message, MsgBoxStyle.Critical)
|
|
||||||
Return Nothing
|
|
||||||
End Try
|
|
||||||
End Function
|
|
||||||
End Class
|
|
||||||
@@ -7,46 +7,37 @@ Public Class ClassHelper
|
|||||||
Private Shared BW_DocID As Integer
|
Private Shared BW_DocID As Integer
|
||||||
Private Shared BW_ParentID As Integer
|
Private Shared BW_ParentID As Integer
|
||||||
Private Shared BW_Filename As String
|
Private Shared BW_Filename As String
|
||||||
Public Shared Function FORMAT_WM_PATH(WMpath As String)
|
Public Shared Function FORMAT_WM_PATH(WMpath As String) As String
|
||||||
Try
|
Try
|
||||||
If Not IsNothing(WMpath) Then
|
If IsNothing(WMpath) Then
|
||||||
Dim ochanged As Boolean = False
|
|
||||||
If WMpath.StartsWith("W:") Then
|
|
||||||
WMpath = WMpath.Replace("W:", WMPATH_PREFIX)
|
|
||||||
ochanged = True
|
|
||||||
ElseIf WMpath.StartsWith("\") Then
|
|
||||||
If WMpath.StartsWith(WMPATH_PREFIX) = False Then
|
|
||||||
WMpath = WMPATH_PREFIX & WMpath
|
|
||||||
ochanged = True
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
LOGGER.Debug("WMpath is: " & WMpath)
|
|
||||||
Return WMpath
|
|
||||||
Else
|
|
||||||
Return Nothing
|
Return Nothing
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Catch ex As Exception
|
|
||||||
Return WMpath
|
|
||||||
End Try
|
|
||||||
|
|
||||||
End Function
|
|
||||||
Public Shared Function GetRelPath(WMpath As String)
|
|
||||||
Try
|
|
||||||
If WMpath.StartsWith("W:") Then
|
If WMpath.StartsWith("W:") Then
|
||||||
WMpath = WMpath.Replace("W:", "")
|
WMpath = WMpath.Replace("W:", WMPATH_PREFIX)
|
||||||
|
ElseIf WMpath.StartsWith("\") AndAlso Not WMpath.StartsWith(WMPATH_PREFIX) Then
|
||||||
ElseIf WMpath.StartsWith("\") Then
|
WMpath = WMPATH_PREFIX & WMpath
|
||||||
If WMpath.StartsWith(WMPATH_PREFIX) = False Then
|
|
||||||
WMpath = WMpath.Replace("WMPATH_PREFIX:", "")
|
|
||||||
End If
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
LOGGER.Debug("WMpath is: " & WMpath)
|
LOGGER.Debug("WMpath is: " & WMpath)
|
||||||
Return WMpath
|
Return WMpath
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
Return WMpath
|
Return WMpath
|
||||||
End Try
|
End Try
|
||||||
|
End Function
|
||||||
|
Public Shared Function GetRelPath(WMpath As String) As String
|
||||||
|
Try
|
||||||
|
If WMpath.StartsWith("W:") Then
|
||||||
|
WMpath = WMpath.Replace("W:", "")
|
||||||
|
ElseIf WMpath.StartsWith(WMPATH_PREFIX) Then
|
||||||
|
WMpath = WMpath.Replace(WMPATH_PREFIX, "")
|
||||||
|
End If
|
||||||
|
|
||||||
|
LOGGER.Debug("WMpath is: " & WMpath)
|
||||||
|
Return WMpath
|
||||||
|
Catch ex As Exception
|
||||||
|
Return WMpath
|
||||||
|
End Try
|
||||||
End Function
|
End Function
|
||||||
Public Shared Function Format_Currency(value As String, language As String)
|
Public Shared Function Format_Currency(value As String, language As String)
|
||||||
Try
|
Try
|
||||||
@@ -118,53 +109,28 @@ Public Class ClassHelper
|
|||||||
End If
|
End If
|
||||||
Return tempName
|
Return tempName
|
||||||
End Function
|
End Function
|
||||||
Public Shared Function CheckFileIsInUse(ByVal filename) As Boolean
|
Public Shared Function Versionierung_Datei(pDateiname As String) As String
|
||||||
Dim fs As Integer = FreeFile()
|
|
||||||
Dim inuse As Boolean = False
|
|
||||||
If File.Exists(filename) Then
|
|
||||||
Try
|
|
||||||
Using f As New IO.FileStream(filename, FileMode.Open, FileAccess.ReadWrite, FileShare.None)
|
|
||||||
' thisFileInUse = False
|
|
||||||
End Using
|
|
||||||
Catch
|
|
||||||
inuse = True
|
|
||||||
End Try
|
|
||||||
|
|
||||||
Try
|
|
||||||
FileOpen(fs, filename, OpenMode.Binary, OpenAccess.ReadWrite, OpenShare.LockReadWrite)
|
|
||||||
Catch ex As Exception
|
|
||||||
LOGGER.Warn("File " & filename & " inuse or not able to open - message: " & ex.Message)
|
|
||||||
inuse = True
|
|
||||||
Finally
|
|
||||||
FileClose(fs)
|
|
||||||
End Try
|
|
||||||
End If
|
|
||||||
Return inuse
|
|
||||||
End Function
|
|
||||||
Public Shared Function Versionierung_Datei(Dateiname As String)
|
|
||||||
Dim extension
|
|
||||||
Dim _NewFileString
|
|
||||||
Try
|
Try
|
||||||
Dim version As Integer = 1
|
pDateiname = FORMAT_WM_PATH(pDateiname)
|
||||||
|
Dim dir As String = Path.GetDirectoryName(pDateiname)
|
||||||
|
Dim baseName As String = Path.GetFileNameWithoutExtension(pDateiname)
|
||||||
|
Dim ext As String = Path.GetExtension(pDateiname)
|
||||||
|
Dim stammname As String = Path.Combine(dir, baseName)
|
||||||
|
|
||||||
Dim Stammname As String = Path.GetDirectoryName(Dateiname) & "\" & Path.GetFileNameWithoutExtension(Dateiname)
|
If Not File.Exists(pDateiname) Then
|
||||||
extension = Path.GetExtension(Dateiname)
|
Return ""
|
||||||
|
|
||||||
Dim _neuername As String = Stammname
|
|
||||||
'Dim MoveFilename As String = DATEINAME.Replace(element.Value, "")
|
|
||||||
'Überprüfen ob File existiert
|
|
||||||
If File.Exists(_neuername & extension) = False Then
|
|
||||||
_NewFileString = _neuername
|
|
||||||
Else
|
|
||||||
Do While File.Exists(_neuername & extension)
|
|
||||||
version = version + 1
|
|
||||||
_neuername = Stammname & "~" & version
|
|
||||||
_NewFileString = _neuername
|
|
||||||
Loop
|
|
||||||
End If
|
End If
|
||||||
Return _NewFileString & extension
|
|
||||||
|
Dim version As Integer = 2
|
||||||
|
Dim candidate As String
|
||||||
|
Do
|
||||||
|
candidate = stammname & "~" & version & ext
|
||||||
|
version += 1
|
||||||
|
Loop While File.Exists(candidate)
|
||||||
|
|
||||||
|
Return candidate
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
LOGGER.Warn(" - Error in versioning file - error: " & vbNewLine & ex.Message)
|
LOGGER.Warn(" - Error in versioning file - error: " & vbCrLf & ex.Message)
|
||||||
MsgBox(ex.Message, MsgBoxStyle.Critical, "Error in versioning file:")
|
MsgBox(ex.Message, MsgBoxStyle.Critical, "Error in versioning file:")
|
||||||
Return ""
|
Return ""
|
||||||
End Try
|
End Try
|
||||||
@@ -209,12 +175,13 @@ Public Class ClassHelper
|
|||||||
Return True
|
Return True
|
||||||
Else
|
Else
|
||||||
MSGBOX_Handler("ERROR", "", "Sorry, but the docpath for doc-id: " & DocID & " is nothing!")
|
MSGBOX_Handler("ERROR", "", "Sorry, but the docpath for doc-id: " & DocID & " is nothing!")
|
||||||
Return False
|
|
||||||
LOGGER.Debug("RESULT_DOC_PATH IS NOTHING")
|
LOGGER.Debug("RESULT_DOC_PATH IS NOTHING")
|
||||||
|
Return False
|
||||||
|
|
||||||
End If
|
End If
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
MsgBox("Unexpected Error in File_open:" & vbNewLine & ex.Message & vbNewLine & RESULT_DOC_PATH & vbNewLine & "DocID: " & DocID, MsgBoxStyle.Critical)
|
MsgBox("Unexpected Error in File_open:" & vbCrLf & ex.Message & vbCrLf & RESULT_DOC_PATH & vbCrLf & "DocID: " & DocID, MsgBoxStyle.Critical)
|
||||||
LOGGER.Warn("Error in File_open: " & ex.Message & vbNewLine & " - Path: " & RESULT_DOC_PATH & " - DocID: " & DocID)
|
LOGGER.Warn("Error in File_open: " & ex.Message & vbCrLf & " - Path: " & RESULT_DOC_PATH & " - DocID: " & DocID)
|
||||||
Return False
|
Return False
|
||||||
End Try
|
End Try
|
||||||
End Function
|
End Function
|
||||||
@@ -228,8 +195,8 @@ Public Class ClassHelper
|
|||||||
LOGGER.Debug("RESULT_DOC_PATH IS NOTHING")
|
LOGGER.Debug("RESULT_DOC_PATH IS NOTHING")
|
||||||
End If
|
End If
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
MsgBox("Unexpected Error in Open_Folder:" & vbNewLine & ex.Message & vbNewLine & RESULT_DOC_PATH & vbNewLine & "DocID: " & DocID, MsgBoxStyle.Critical)
|
MsgBox("Unexpected Error in Open_Folder:" & vbCrLf & ex.Message & vbCrLf & RESULT_DOC_PATH & vbCrLf & "DocID: " & DocID, MsgBoxStyle.Critical)
|
||||||
LOGGER.Warn("Error in Open_Folder: " & ex.Message & vbNewLine & " - Path: " & RESULT_DOC_PATH & " - DocID: " & DocID)
|
LOGGER.Warn("Error in Open_Folder: " & ex.Message & vbCrLf & " - Path: " & RESULT_DOC_PATH & " - DocID: " & DocID)
|
||||||
End Try
|
End Try
|
||||||
End Sub
|
End Sub
|
||||||
Private Shared Sub File_SYSOPEN(RESULT_DOC_PATH As Object, DocID As String, pParentID As Integer)
|
Private Shared Sub File_SYSOPEN(RESULT_DOC_PATH As Object, DocID As String, pParentID As Integer)
|
||||||
@@ -247,8 +214,8 @@ Public Class ClassHelper
|
|||||||
LOGGER.Warn("File_SYSOPEN RESULT_DOC_PATH is nothing")
|
LOGGER.Warn("File_SYSOPEN RESULT_DOC_PATH is nothing")
|
||||||
End If
|
End If
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
MsgBox("Unexpected Error in File_SYSOPEN:" & vbNewLine & ex.Message & vbNewLine & RESULT_DOC_PATH & vbNewLine & "DocID: " & DocID, MsgBoxStyle.Critical)
|
MsgBox("Unexpected Error in File_SYSOPEN:" & vbCrLf & ex.Message & vbCrLf & RESULT_DOC_PATH & vbCrLf & "DocID: " & DocID, MsgBoxStyle.Critical)
|
||||||
LOGGER.Warn("Error in File_SYSOPEN: " & ex.Message & vbNewLine & " - Path: " & RESULT_DOC_PATH & " - DocID: " & DocID)
|
LOGGER.Warn("Error in File_SYSOPEN: " & ex.Message & vbCrLf & " - Path: " & RESULT_DOC_PATH & " - DocID: " & DocID)
|
||||||
End Try
|
End Try
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
@@ -313,15 +280,15 @@ Public Class ClassHelper
|
|||||||
|
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
' Fehler im Prozessstart oder während des Wartens
|
' Fehler im Prozessstart oder während des Wartens
|
||||||
LOGGER.Warn("Error in Process.Start(): " & ex.Message & vbNewLine & " - Path: " & BW_DocPath & " - DocID: " & BW_DocID)
|
LOGGER.Warn("Error in Process.Start(): " & ex.Message & vbCrLf & " - Path: " & BW_DocPath & " - DocID: " & BW_DocID)
|
||||||
MsgBox("Error in OpenFile: " & ex.Message & vbNewLine &
|
MsgBox("Error in OpenFile: " & ex.Message & vbCrLf &
|
||||||
"Path: " & BW_DocPath & vbNewLine & "DocID: " & BW_DocID,
|
"Path: " & BW_DocPath & vbCrLf & "DocID: " & BW_DocID,
|
||||||
MsgBoxStyle.Exclamation, "Open File Error")
|
MsgBoxStyle.Exclamation, "Open File Error")
|
||||||
End Try
|
End Try
|
||||||
|
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
' Fehler im gesamten Worker (z. B. Path nicht vorhanden)
|
' Fehler im gesamten Worker (z. B. Path nicht vorhanden)
|
||||||
LOGGER.Warn("General error in BWFileHandler_DoWork: " & ex.Message & vbNewLine &
|
LOGGER.Warn("General error in BWFileHandler_DoWork: " & ex.Message & vbCrLf &
|
||||||
" - Path: " & BW_DocPath & " - DocID: " & BW_DocID)
|
" - Path: " & BW_DocPath & " - DocID: " & BW_DocID)
|
||||||
|
|
||||||
' Letzter Versuch: Öffne mit Standardprogramm
|
' Letzter Versuch: Öffne mit Standardprogramm
|
||||||
@@ -329,73 +296,12 @@ Public Class ClassHelper
|
|||||||
Process.Start(BW_DocPath)
|
Process.Start(BW_DocPath)
|
||||||
LOGGER.Debug("Fallback: Document opened with default application.")
|
LOGGER.Debug("Fallback: Document opened with default application.")
|
||||||
Catch ex1 As Exception
|
Catch ex1 As Exception
|
||||||
LOGGER.Warn("Fallback error in Process.Start(): " & ex1.Message & vbNewLine &
|
LOGGER.Warn("Fallback error in Process.Start(): " & ex1.Message & vbCrLf &
|
||||||
" - Path: " & BW_DocPath & " - DocID: " & BW_DocID)
|
" - Path: " & BW_DocPath & " - DocID: " & BW_DocID)
|
||||||
End Try
|
End Try
|
||||||
End Try
|
End Try
|
||||||
End Sub
|
End Sub
|
||||||
'Private Shared Sub BWFileHandler_DoWork()
|
|
||||||
' Try
|
|
||||||
' Dim oOverrideRunPath As String = ""
|
|
||||||
' Dim oExtension = Path.GetExtension(BW_DocPath).ToLower
|
|
||||||
' For Each oROW As DataRow In CURRENT_TBFILE_EXTENSION_OVERRIDE.Rows
|
|
||||||
' If oExtension.Replace(".", "") = oROW.Item("FILE_EXTENSION") Then
|
|
||||||
' LOGGER.Debug($"Specific fileextension override for extension [{oExtension}] found! ")
|
|
||||||
' oOverrideRunPath = oROW.Item("PROCESS")
|
|
||||||
' End If
|
|
||||||
' Next
|
|
||||||
' Dim oMyProcess = New Process()
|
|
||||||
' Dim oSql
|
|
||||||
' Try
|
|
||||||
' '######
|
|
||||||
' Dim startInfo As New ProcessStartInfo()
|
|
||||||
' If oOverrideRunPath <> "" Then
|
|
||||||
' startInfo.FileName = oOverrideRunPath
|
|
||||||
' startInfo.Arguments = """" & BW_DocPath & """"
|
|
||||||
' startInfo.UseShellExecute = True
|
|
||||||
' startInfo.RedirectStandardOutput = False
|
|
||||||
' Else
|
|
||||||
' startInfo.FileName = BW_DocPath
|
|
||||||
' startInfo.UseShellExecute = True
|
|
||||||
' startInfo.RedirectStandardOutput = False
|
|
||||||
' End If
|
|
||||||
' '#####
|
|
||||||
' oMyProcess.Start(startInfo)
|
|
||||||
' Dim myViewerProcessID = oMyProcess.Id
|
|
||||||
' oMyProcess.WaitForExit()
|
|
||||||
' oExtension = Path.GetExtension(BW_DocPath).ToLower
|
|
||||||
' LOGGER.Debug($"Checking oExtension [{oExtension}]...")
|
|
||||||
' If FILE_FORMATS_CHANGE_DURING_EDIT.Contains(oExtension) Then
|
|
||||||
' oSql = $"SELECT * FROM VWOF_DOCID_HANDLE WHERE dwParentID = {BW_ParentID} and [Filename] = '{BW_Filename}'"
|
|
||||||
' Dim oDTNEWDoc As DataTable = MYDB_ECM.GetDatatable(oSql)
|
|
||||||
|
|
||||||
' If Not IsNothing(oDTNEWDoc) Then
|
|
||||||
' If oDTNEWDoc.Rows.Count = 1 Then
|
|
||||||
|
|
||||||
' Dim oInsert = $"INSERT INTO TBPMO_DOC_ID_CHANGED (USER_ID,PROCESS_ID,VERSION_ID,OLD_DOC_ID,NEW_DOC_ID, DOC_PATH) VALUES (
|
|
||||||
' {USER_GUID},'{myViewerProcessID.ToString}',{oDTNEWDoc.Rows(0).Item("dwVersionID")},{BW_DocID},{oDTNEWDoc.Rows(0).Item("NewDocID")}, '{BW_DocPath}')"
|
|
||||||
' MYDB_ECM.ExecuteNonQuery(oInsert)
|
|
||||||
' End If
|
|
||||||
|
|
||||||
|
|
||||||
' End If
|
|
||||||
' End If
|
|
||||||
|
|
||||||
' Catch ex As Exception
|
|
||||||
' LOGGER.Warn("Error in Process1.Start(): " & ex.Message & vbNewLine & " - Path: " & BW_DocPath & " - DocID: " & BW_DocID)
|
|
||||||
' MsgBox("Error in OpenFile: " & ex.Message & vbNewLine & " - Path: " & BW_DocPath & " - DocID: " & BW_DocID, MsgBoxStyle.Exclamation)
|
|
||||||
' Exit Sub
|
|
||||||
' End Try
|
|
||||||
|
|
||||||
' Catch ex As Exception
|
|
||||||
' LOGGER.Warn("Error in Process.Start(): " & ex.Message & vbNewLine & " - Path: " & BW_DocPath & " - DocID: " & BW_DocID)
|
|
||||||
' Try
|
|
||||||
' Process.Start(BW_DocPath)
|
|
||||||
' Catch ex1 As Exception
|
|
||||||
' LOGGER.Warn("Error in Process.Start(1): " & ex1.Message & vbNewLine & " - Path: " & BW_DocPath & " - DocID: " & BW_DocID)
|
|
||||||
' End Try
|
|
||||||
' End Try
|
|
||||||
'End Sub
|
|
||||||
Private Shared Sub FOLDER_OPEN(PATH As Object, DocID As String)
|
Private Shared Sub FOLDER_OPEN(PATH As Object, DocID As String)
|
||||||
Try
|
Try
|
||||||
If PATH <> Nothing Then
|
If PATH <> Nothing Then
|
||||||
@@ -407,14 +313,11 @@ Public Class ClassHelper
|
|||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
MsgBox("Unexpected Error in FOLDER_OPEN:" & vbNewLine & ex.Message & vbNewLine & PATH & vbNewLine & "DocID: " & DocID, MsgBoxStyle.Critical)
|
MsgBox("Unexpected Error in FOLDER_OPEN:" & vbCrLf & ex.Message & vbCrLf & PATH & vbCrLf & "DocID: " & DocID, MsgBoxStyle.Critical)
|
||||||
LOGGER.Warn("Error in FOLDER_OPEN: " & ex.Message & vbNewLine & " - Path: " & PATH & " - DocID: " & DocID)
|
LOGGER.Warn("Error in FOLDER_OPEN: " & ex.Message & vbCrLf & " - Path: " & PATH & " - DocID: " & DocID)
|
||||||
End Try
|
End Try
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
Shared Function Convert_Date_2_Form_Format(p1 As Date) As Date
|
|
||||||
Throw New NotImplementedException
|
|
||||||
End Function
|
|
||||||
Public Shared Function InsertEssential_Log(REFERENCE_KEY As Integer, REFERENCE_STRING As String, COMMENT As String)
|
Public Shared Function InsertEssential_Log(REFERENCE_KEY As Integer, REFERENCE_STRING As String, COMMENT As String)
|
||||||
Try
|
Try
|
||||||
COMMENT = COMMENT.Replace("'", "")
|
COMMENT = COMMENT.Replace("'", "")
|
||||||
@@ -449,7 +352,7 @@ Public Class ClassHelper
|
|||||||
Public Shared Sub MSGBOX_Handler(type As String, Caption As String, info1 As String, Optional info2 As String = "")
|
Public Shared Sub MSGBOX_Handler(type As String, Caption As String, info1 As String, Optional info2 As String = "")
|
||||||
Dim msg = info1
|
Dim msg = info1
|
||||||
If info2 <> "" Then
|
If info2 <> "" Then
|
||||||
msg &= vbNewLine & vbNewLine & info2
|
msg &= vbCrLf & vbCrLf & info2
|
||||||
End If
|
End If
|
||||||
If type = "ERROR" Then
|
If type = "ERROR" Then
|
||||||
MessageBox.Show(msg, Caption, MessageBoxButtons.OK, MessageBoxIcon.Error)
|
MessageBox.Show(msg, Caption, MessageBoxButtons.OK, MessageBoxIcon.Error)
|
||||||
@@ -495,11 +398,58 @@ Public Class ClassHelper
|
|||||||
Return False
|
Return False
|
||||||
End Try
|
End Try
|
||||||
End Function
|
End Function
|
||||||
|
Public Shared Sub REMOVE_OLD_DROP_FILES()
|
||||||
|
Try
|
||||||
|
' ✅ NEU: Pre-Check - welche Dateien sind betroffen?
|
||||||
|
Dim preCheckSQL = $"SELECT GUID, FILENAME_ONLY, ADDED_WHEN, DATEDIFF(MINUTE, ADDED_WHEN, GETDATE()) AS AGE_MINUTES " &
|
||||||
|
$"FROM TBPMO_FILES_USER " &
|
||||||
|
$"WHERE ADDED_WHEN < DATEADD(MINUTE, -15, GETDATE()) " &
|
||||||
|
$"AND WORKED = 0 AND USER_WORK = '{USER_USERNAME}'"
|
||||||
|
|
||||||
|
Dim preCheckDT = MYDB_ECM.GetDatatable(preCheckSQL)
|
||||||
|
|
||||||
|
If preCheckDT IsNot Nothing AndAlso preCheckDT.Rows.Count > 0 Then
|
||||||
|
LOGGER.Warn($"REMOVE_OLD_DROP_FILES: {preCheckDT.Rows.Count} Dateien werden als TIMEOUT markiert:")
|
||||||
|
For Each row As DataRow In preCheckDT.Rows
|
||||||
|
LOGGER.Warn($" - GUID={row("GUID")}, Datei={row("FILENAME_ONLY")}, Alter={row("AGE_MINUTES")} Minuten")
|
||||||
|
Next
|
||||||
|
Else
|
||||||
|
LOGGER.Debug($"REMOVE_OLD_DROP_FILES: Keine Dateien älter als 15 Minuten (User: {USER_USERNAME})")
|
||||||
|
End If
|
||||||
|
|
||||||
|
' ✅ Dann UPDATE
|
||||||
|
Dim oDEL = String.Format("UPDATE [DD_ECM].[dbo].[TBPMO_FILES_USER]
|
||||||
|
SET [USER_WORK] = [USER_WORK] + '_TIMEOUT',
|
||||||
|
WORKED = 1
|
||||||
|
WHERE ADDED_WHEN < DATEADD(MINUTE, -15, GETDATE())
|
||||||
|
AND WORKED = 0 AND USER_WORK = '{0}' ;", USER_USERNAME)
|
||||||
|
|
||||||
|
Dim rowsAffected = MYDB_ECM.ExecuteNonQuery(oDEL)
|
||||||
|
|
||||||
|
If rowsAffected > 0 Then
|
||||||
|
LOGGER.Warn($"REMOVE_OLD_DROP_FILES: {rowsAffected} Dateien wurden als TIMEOUT markiert")
|
||||||
|
End If
|
||||||
|
Catch ex As Exception
|
||||||
|
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error while REMOVE_OLD_DROP_FILES")
|
||||||
|
End Try
|
||||||
|
End Sub
|
||||||
Public Shared Sub Create_USER_FILE_TABLE()
|
Public Shared Sub Create_USER_FILE_TABLE()
|
||||||
Try
|
Try
|
||||||
Dim sql = String.Format("SELECT *, CONVERT(BIT,0) AS DELETE_FILE FROM TBPMO_FILES_USER WHERE (USER_WORK = '{0}') AND WORKED = 0", USER_USERNAME)
|
Dim sql = String.Format("SELECT *, CONVERT(BIT,0) AS DELETE_FILE FROM TBPMO_FILES_USER WHERE (USER_WORK = '{0}') AND WORKED = 0", USER_USERNAME)
|
||||||
CURRENT_TBPMO_FILES_USER = MYDB_ECM.GetDatatable(sql)
|
CURRENT_TBPMO_FILES_USER = MYDB_ECM.GetDatatable(sql)
|
||||||
|
' ✅ NEU: Logging
|
||||||
|
If CURRENT_TBPMO_FILES_USER Is Nothing Then
|
||||||
|
LOGGER.Warn($"Create_USER_FILE_TABLE: GetDatatable gab Nothing zurück (User: {USER_USERNAME})")
|
||||||
|
Else
|
||||||
|
LOGGER.Debug($"Create_USER_FILE_TABLE: {CURRENT_TBPMO_FILES_USER.Rows.Count} Dateien geladen (User: {USER_USERNAME})")
|
||||||
|
|
||||||
|
' ✅ DEBUG: Zeige GUIDs der geladenen Dateien
|
||||||
|
For Each row As DataRow In CURRENT_TBPMO_FILES_USER.Rows
|
||||||
|
LOGGER.Debug($" - GUID={row("GUID")}, WORKED={row("WORKED")}, Datei={row("FILENAME2WORK")}")
|
||||||
|
Next
|
||||||
|
End If
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
|
LOGGER.Error($"Create_USER_FILE_TABLE Exception: {ex.Message}")
|
||||||
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error while creating User_File_Table")
|
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected error while creating User_File_Table")
|
||||||
End Try
|
End Try
|
||||||
End Sub
|
End Sub
|
||||||
@@ -512,6 +462,15 @@ Public Class ClassHelper
|
|||||||
Return False
|
Return False
|
||||||
End Try
|
End Try
|
||||||
End Function
|
End Function
|
||||||
|
Public Shared Function DELETE_PMO_FILE_USER_OPEN_FILES()
|
||||||
|
Try
|
||||||
|
Dim del As String = String.Format("DELETE FROM TBPMO_FILES_USER WHERE (USER_WORK = '{0}') AND WORKED = 0", USER_USERNAME)
|
||||||
|
Return MYDB_ECM.ExecuteNonQuery(del)
|
||||||
|
Catch ex As Exception
|
||||||
|
MsgBox("Unexpected Error in DELETE_PMO_FILE_USER_OPEN_FILES: " & ex.Message, MsgBoxStyle.Critical)
|
||||||
|
Return False
|
||||||
|
End Try
|
||||||
|
End Function
|
||||||
Public Shared Function DecryptString(ciphertext As String, MethodName As String)
|
Public Shared Function DecryptString(ciphertext As String, MethodName As String)
|
||||||
Dim result As String
|
Dim result As String
|
||||||
Dim wrapper As New ClassEncryption("!35452didalog=")
|
Dim wrapper As New ClassEncryption("!35452didalog=")
|
||||||
@@ -530,7 +489,6 @@ Public Class ClassHelper
|
|||||||
Dim filteredData As DataTable = BaseDatatable.Clone()
|
Dim filteredData As DataTable = BaseDatatable.Clone()
|
||||||
'Einfügevariante
|
'Einfügevariante
|
||||||
BaseDatatable.Select(expression, sortstring).CopyToDataTable(filteredData, LoadOption.PreserveChanges)
|
BaseDatatable.Select(expression, sortstring).CopyToDataTable(filteredData, LoadOption.PreserveChanges)
|
||||||
Console.WriteLine("Found {0} rows.", filteredData.Rows.Count)
|
|
||||||
'Dim filteredData = BaseDatatable.Select(expression).CopyToDataTable()
|
'Dim filteredData = BaseDatatable.Select(expression).CopyToDataTable()
|
||||||
Return filteredData
|
Return filteredData
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
@@ -551,38 +509,102 @@ Public Class ClassHelper
|
|||||||
Public Shared Function Insert_USER_File(pFilename As String, handleType As String)
|
Public Shared Function Insert_USER_File(pFilename As String, handleType As String)
|
||||||
Try
|
Try
|
||||||
Dim filename_only As String = Path.GetFileName(pFilename)
|
Dim filename_only As String = Path.GetFileName(pFilename)
|
||||||
CURRENT_FILE_HASH = ""
|
Dim CURRENT_FILE_HASH = ""
|
||||||
|
|
||||||
If File.Exists(pFilename) Then
|
If File.Exists(pFilename) Then
|
||||||
|
Dim oFileInfo As New FileInfo(pFilename)
|
||||||
|
LOGGER.Debug($"File exists: [{pFilename}] | Size: {oFileInfo.Length} bytes | Extension: {oFileInfo.Extension}")
|
||||||
|
|
||||||
If (pFilename.ToUpper.EndsWith(".MSG") Or pFilename.ToUpper.EndsWith(".EML")) And (handleType = "|OUTLOOK_MESSAGE|" Or handleType = "|MSGONLY|") Then
|
If (pFilename.ToUpper.EndsWith(".MSG") Or pFilename.ToUpper.EndsWith(".EML")) And (handleType = "|OUTLOOK_MESSAGE|" Or handleType = "|MSGONLY|") Then
|
||||||
CURRENT_FILE_HASH = FILESYSTEM.GetChecksumFromString(pFilename)
|
CURRENT_FILE_HASH = FILESYSTEM.GetChecksumFromString(pFilename)
|
||||||
|
LOGGER.Debug($"Hash method: GetChecksumFromString | Hash: [{CURRENT_FILE_HASH}]")
|
||||||
Else
|
Else
|
||||||
CURRENT_FILE_HASH = FILESYSTEM.GetChecksum(pFilename)
|
CURRENT_FILE_HASH = FILESYSTEM.GetChecksum(pFilename)
|
||||||
|
LOGGER.Debug($"Hash method: GetChecksum | Hash: [{CURRENT_FILE_HASH}]")
|
||||||
End If
|
End If
|
||||||
|
Else
|
||||||
|
LOGGER.Warn($"File does not exist: [{pFilename}] - Cannot compute hash.")
|
||||||
End If
|
End If
|
||||||
Dim oSQL = $"SELECT ADDED_WHO, FORMAT(ADDED_WHEN, 'dd-MM-yyyy HH:mm') AS ADDED_WHEN_STRING FROM TBPMO_DOCRESULT_LIST WHERE FILE_HASH = '{CURRENT_FILE_HASH}' ORDER BY ADDED_WHEN DESC"
|
|
||||||
|
Dim oSQL = $"SELECT Filename, ADDED_WHO, FORMAT(ADDED_WHEN, 'dd-MM-yyyy HH:mm') AS ADDED_WHEN_STRING FROM TBPMO_DOCRESULT_LIST WHERE FILE_HASH = '{CURRENT_FILE_HASH}' ORDER BY ADDED_WHEN DESC"
|
||||||
LOGGER.Debug($"Inserting File - hash is [{CURRENT_FILE_HASH}]")
|
LOGGER.Debug($"Inserting File - hash is [{CURRENT_FILE_HASH}]")
|
||||||
Dim oDTCHECK As DataTable = MYDB_ECM.GetDatatable(oSQL)
|
Dim oDTCHECK As DataTable = MYDB_ECM.GetDatatable(oSQL)
|
||||||
|
|
||||||
If Not IsNothing(oDTCHECK) Then
|
If Not IsNothing(oDTCHECK) Then
|
||||||
If oDTCHECK.Rows.Count >= 1 Then
|
If oDTCHECK.Rows.Count >= 1 Then
|
||||||
LOGGER.Info($"We got a file with the same hash [{CURRENT_FILE_HASH}]")
|
LOGGER.Info($"We got a file with the same hash [{CURRENT_FILE_HASH}]")
|
||||||
Dim oUSER = oDTCHECK.Rows(0).Item(0)
|
Dim oFilename = oDTCHECK.Rows(0).Item(0)
|
||||||
Dim oADDED_WHEN = oDTCHECK.Rows(0).Item(1)
|
Dim oUSER = oDTCHECK.Rows(0).Item(1)
|
||||||
Dim oMSG = $"Achtung:" & vbNewLine & "Die Datei wurde bereits nach orgFLOW importiert. Anzahl: " & oDTCHECK.Rows.Count.ToString & vbNewLine &
|
Dim oADDED_WHEN = oDTCHECK.Rows(0).Item(2)
|
||||||
$"Importiert wann: {oADDED_WHEN}" & vbNewLine &
|
Dim oMSG As String
|
||||||
$"Importiert wer: {oUSER}" & vbNewLine &
|
|
||||||
"Wollen Sie die Datei dennoch importieren?"
|
If USER_LANGUAGE <> "de-DE" Then
|
||||||
|
oMSG = $"This file has already been imported into orgFLOW!" & vbCrLf &
|
||||||
|
$"File: [{oFilename}]" & vbCrLf &
|
||||||
|
$"Imported on: {oADDED_WHEN}" & vbCrLf &
|
||||||
|
$"Imported by: {oUSER}" & vbCrLf &
|
||||||
|
$"Total imports with identical content: {oDTCHECK.Rows.Count}" & vbCrLf & vbCrLf &
|
||||||
|
"Do you want to import this file again?" & vbCrLf &
|
||||||
|
"NO → Teh complete Import will be cancelled."
|
||||||
|
Else
|
||||||
|
oMSG = $"Diese Datei wurde bereits in orgFLOW importiert!" & vbCrLf &
|
||||||
|
$"Datei: [{oFilename}]" & vbCrLf &
|
||||||
|
$"Importiert am: {oADDED_WHEN}" & vbCrLf &
|
||||||
|
$"Importiert von: {oUSER}" & vbCrLf &
|
||||||
|
$"Anzahl Importe mit identischem Inhalt: {oDTCHECK.Rows.Count}" & vbCrLf & vbCrLf &
|
||||||
|
"Möchten Sie die Datei dennoch erneut importieren?" & vbCrLf &
|
||||||
|
"NEIN → Der gesamte Import (alle folgenden) wird abgebrochen."
|
||||||
|
End If
|
||||||
|
|
||||||
Dim result As MsgBoxResult
|
Dim result As MsgBoxResult
|
||||||
result = MessageBox.Show(oMSG, CAPTION_CONFIRMATION, MessageBoxButtons.YesNo, MessageBoxIcon.Question)
|
result = MessageBox.Show(oMSG, CAPTION_CONFIRMATION, MessageBoxButtons.YesNo, MessageBoxIcon.Question)
|
||||||
|
|
||||||
If result = MsgBoxResult.No Then
|
If result = MsgBoxResult.No Then
|
||||||
|
LOGGER.Info($"User wählte NEIN bei Hash-Duplikat-Check für [{filename_only}] - Import abgebrochen")
|
||||||
Return False
|
Return False
|
||||||
|
Else
|
||||||
|
LOGGER.Info($"User wählte JA bei Hash-Duplikat-Check für [{filename_only}] - fahre fort")
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Dim ins As String = String.Format("INSERT INTO TBPMO_FILES_USER (FILENAME2WORK, USER_WORK,HANDLE_TYPE,FILENAME_ONLY) VALUES ('{0}','{1}','{2}','{3}')", pFilename, USER_USERNAME, handleType, filename_only)
|
' ✅ NEU: Pre-Check - gibt es bereits einen Eintrag mit diesem Hash?
|
||||||
Return MYDB_ECM.ExecuteNonQuery(ins)
|
Dim preCheckSQL = $"SELECT GUID, USER_WORK, WORKED FROM TBPMO_FILES_USER WHERE FILE_HASH = '{CURRENT_FILE_HASH}' AND USER_WORK = '{USER_USERNAME}'"
|
||||||
|
Dim preCheckDT = MYDB_ECM.GetDatatable(preCheckSQL)
|
||||||
|
|
||||||
|
If preCheckDT IsNot Nothing AndAlso preCheckDT.Rows.Count > 0 Then
|
||||||
|
LOGGER.Warn($"WARNUNG: Datei mit Hash [{CURRENT_FILE_HASH}] bereits in TBPMO_FILES_USER vorhanden:")
|
||||||
|
For Each row As DataRow In preCheckDT.Rows
|
||||||
|
LOGGER.Warn($" - GUID={row("GUID")}, USER_WORK={row("USER_WORK")}, WORKED={row("WORKED")}")
|
||||||
|
Next
|
||||||
|
End If
|
||||||
|
|
||||||
|
' ✅ INSERT mit explizitem Logging
|
||||||
|
Dim ins As String = String.Format("INSERT INTO TBPMO_FILES_USER (FILENAME2WORK, USER_WORK, HANDLE_TYPE, FILENAME_ONLY, FILE_HASH) VALUES ('{0}','{1}','{2}','{3}','{4}')", pFilename, USER_USERNAME, handleType, filename_only, CURRENT_FILE_HASH)
|
||||||
|
|
||||||
|
LOGGER.Debug($"Führe INSERT aus: [{ins}]")
|
||||||
|
Dim insertResult = MYDB_ECM.ExecuteNonQuery(ins)
|
||||||
|
|
||||||
|
If insertResult Then
|
||||||
|
' ✅ VERIFY - wurde wirklich eingefügt?
|
||||||
|
Dim verifySQL = $"SELECT TOP 1 GUID, ADDED_WHEN FROM TBPMO_FILES_USER WHERE FILE_HASH = '{CURRENT_FILE_HASH}' AND USER_WORK = '{USER_USERNAME}' ORDER BY GUID DESC"
|
||||||
|
Dim verifyDT = MYDB_ECM.GetDatatable(verifySQL)
|
||||||
|
|
||||||
|
If verifyDT IsNot Nothing AndAlso verifyDT.Rows.Count > 0 Then
|
||||||
|
Dim insertedGUID = verifyDT.Rows(0)("GUID")
|
||||||
|
Dim insertedADDED_WHEN = verifyDT.Rows(0)("ADDED_WHEN")
|
||||||
|
LOGGER.Info($"INSERT ERFOLGREICH: GUID={insertedGUID}, ADDED_WHEN={insertedADDED_WHEN}, Datei=[{filename_only}]")
|
||||||
|
Else
|
||||||
|
LOGGER.Error($"INSERT fehlgeschlagen (VERIFY)! Datei=[{filename_only}], Hash=[{CURRENT_FILE_HASH}]")
|
||||||
|
End If
|
||||||
|
Else
|
||||||
|
LOGGER.Error($"INSERT fehlgeschlagen (ExecuteNonQuery)! Datei=[{filename_only}]")
|
||||||
|
End If
|
||||||
|
|
||||||
|
Return insertResult
|
||||||
|
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
|
LOGGER.Error($"Insert_USER_File Exception: {ex.Message}")
|
||||||
MsgBox("Unexpected Error in Insert file for user (TBPMO_FILES_USER): " & ex.Message, MsgBoxStyle.Critical)
|
MsgBox("Unexpected Error in Insert file for user (TBPMO_FILES_USER): " & ex.Message, MsgBoxStyle.Critical)
|
||||||
Return False
|
Return False
|
||||||
End Try
|
End Try
|
||||||
|
|||||||
@@ -96,7 +96,7 @@ Public Class ClassImport_Windream
|
|||||||
|
|
||||||
|
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
MsgBox("Unexpected error in Import_File ClassImport_windream: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
MsgBox("Unexpected error in Import_File ClassImport_windream: " & vbCrLf & ex.Message, MsgBoxStyle.Critical)
|
||||||
Return False
|
Return False
|
||||||
End Try
|
End Try
|
||||||
|
|
||||||
@@ -367,9 +367,9 @@ Public Class ClassImport_Windream
|
|||||||
End If
|
End If
|
||||||
Else
|
Else
|
||||||
Dim msg As String
|
Dim msg As String
|
||||||
msg = "In der Namenkonvention wurde ein Element gefunden welches nicht zugeordnet werden kann!" & vbNewLine & "Elementname: " & element.Value.ToUpper
|
msg = "In der Namenkonvention wurde ein Element gefunden welches nicht zugeordnet werden kann!" & vbCrLf & "Elementname: " & element.Value.ToUpper
|
||||||
If USER_LANGUAGE <> "de-DE" Then
|
If USER_LANGUAGE <> "de-DE" Then
|
||||||
msg = "In nameconvention an element was defined which could not be replaced." & vbNewLine & "Elementname: " & element.Value.ToUpper
|
msg = "In nameconvention an element was defined which could not be replaced." & vbCrLf & "Elementname: " & element.Value.ToUpper
|
||||||
End If
|
End If
|
||||||
myLogger.Warn(msg)
|
myLogger.Warn(msg)
|
||||||
MsgBox(msg, MsgBoxStyle.Exclamation, "Error in Name Convention:")
|
MsgBox(msg, MsgBoxStyle.Exclamation, "Error in Name Convention:")
|
||||||
@@ -390,7 +390,7 @@ Public Class ClassImport_Windream
|
|||||||
oNewWM_Filename = oNewWM_Filename.Replace("\\", "\")
|
oNewWM_Filename = oNewWM_Filename.Replace("\\", "\")
|
||||||
|
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
myLogger.Warn(" - Error in Versioning file - Error: " & vbNewLine & ex.Message)
|
myLogger.Warn(" - Error in Versioning file - Error: " & vbCrLf & ex.Message)
|
||||||
MsgBox(ex.Message, MsgBoxStyle.Critical, "Error in Versioning file:")
|
MsgBox(ex.Message, MsgBoxStyle.Critical, "Error in Versioning file:")
|
||||||
err = True
|
err = True
|
||||||
End Try
|
End Try
|
||||||
@@ -411,8 +411,8 @@ Public Class ClassImport_Windream
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
myLogger.Warn(" - Unexpected Error in FileName-Creating: " & vbNewLine & ex.Message)
|
myLogger.Warn(" - Unexpected Error in FileName-Creating: " & vbCrLf & ex.Message)
|
||||||
MsgBox(" - Unexpected Error in FileName-Creating: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
MsgBox(" - Unexpected Error in FileName-Creating: " & vbCrLf & ex.Message, MsgBoxStyle.Critical)
|
||||||
Return False
|
Return False
|
||||||
End Try
|
End Try
|
||||||
|
|
||||||
@@ -495,8 +495,8 @@ Public Class ClassImport_Windream
|
|||||||
End If
|
End If
|
||||||
Return oReturnValue
|
Return oReturnValue
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
LOGGER.Warn(" - Unexpected Error in GET_CTRLData: " & vbNewLine & ex.Message)
|
LOGGER.Warn(" - Unexpected Error in GET_CTRLData: " & vbCrLf & ex.Message)
|
||||||
MsgBox("Unexpected Error in GET_CTRLData: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
MsgBox("Unexpected Error in GET_CTRLData: " & vbCrLf & ex.Message, MsgBoxStyle.Critical)
|
||||||
Return ""
|
Return ""
|
||||||
End Try
|
End Try
|
||||||
End Function
|
End Function
|
||||||
@@ -714,8 +714,8 @@ Public Class ClassImport_Windream
|
|||||||
|
|
||||||
|
|
||||||
Case Else
|
Case Else
|
||||||
LOGGER.Warn(" -Undefined pattern found in folderconvention" & vbNewLine & "Elementname: " & element.Value.ToUpper)
|
LOGGER.Warn(" -Undefined pattern found in folderconvention" & vbCrLf & "Elementname: " & element.Value.ToUpper)
|
||||||
MsgBox("Achtung - in der Namenkonvention wurde ein Element gefunden welches nicht zugeordnet werden kann!" & vbNewLine & "Elementname: " & element.Value.ToUpper, MsgBoxStyle.Exclamation, "Unexpected error in Name generieren:")
|
MsgBox("Achtung - in der Namenkonvention wurde ein Element gefunden welches nicht zugeordnet werden kann!" & vbCrLf & "Elementname: " & element.Value.ToUpper, MsgBoxStyle.Exclamation, "Unexpected error in Name generieren:")
|
||||||
End Select
|
End Select
|
||||||
LOGGER.Debug($"FolderConvention so far is: '{FolderConvention}'")
|
LOGGER.Debug($"FolderConvention so far is: '{FolderConvention}'")
|
||||||
Next
|
Next
|
||||||
@@ -723,7 +723,7 @@ Public Class ClassImport_Windream
|
|||||||
Return True
|
Return True
|
||||||
|
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
MsgBox("Unexpected Error in CreateFolderforIndex-Method:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
MsgBox("Unexpected Error in CreateFolderforIndex-Method:" & vbCrLf & ex.Message, MsgBoxStyle.Critical)
|
||||||
LOGGER.Warn("Fehler in CrFolderForIndex: " & ex.Message, True)
|
LOGGER.Warn("Fehler in CrFolderForIndex: " & ex.Message, True)
|
||||||
Return False
|
Return False
|
||||||
End Try
|
End Try
|
||||||
@@ -752,7 +752,7 @@ Public Class ClassImport_Windream
|
|||||||
CURRENT_NEWFILENAME = _NewFileString & extension
|
CURRENT_NEWFILENAME = _NewFileString & extension
|
||||||
Return True
|
Return True
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
LOGGER.Warn(" - Error in versioning file - error: " & vbNewLine & ex.Message)
|
LOGGER.Warn(" - Error in versioning file - error: " & vbCrLf & ex.Message)
|
||||||
MsgBox(ex.Message, MsgBoxStyle.Critical, "Error in versioning file:")
|
MsgBox(ex.Message, MsgBoxStyle.Critical, "Error in versioning file:")
|
||||||
Return False
|
Return False
|
||||||
End Try
|
End Try
|
||||||
|
|||||||
@@ -513,22 +513,6 @@ Public Class ClassInit
|
|||||||
oFNSQL = "DELETE FROM TBDD_USER_MODULE_LOG_IN WHERE USER_ID = " & USER_GUID & " AND MODULE= 'Record-Organizer'"
|
oFNSQL = "DELETE FROM TBDD_USER_MODULE_LOG_IN WHERE USER_ID = " & USER_GUID & " AND MODULE= 'Record-Organizer'"
|
||||||
MYDB_ECM.ExecuteNonQuery(oFNSQL)
|
MYDB_ECM.ExecuteNonQuery(oFNSQL)
|
||||||
Return False
|
Return False
|
||||||
Else
|
|
||||||
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 = MYDB_ECM.GetScalarValue(sql1)
|
|
||||||
|
|
||||||
If Not folderwatch_SCAN Is Nothing Then
|
|
||||||
CURRENT_SCAN_FOLDERWATCH = folderwatch_SCAN
|
|
||||||
If FWSCAN_started = True Then
|
|
||||||
ClassFolderWatcher.StartStop_FolderWatchSCAN()
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
Catch ex As Exception
|
|
||||||
LOGGER.Warn("Unexpected Error in Init_Folderwatch: " & ex.Message, True)
|
|
||||||
Return False
|
|
||||||
End Try
|
|
||||||
|
|
||||||
End If
|
End If
|
||||||
'If LICENSE_PROXY = True And clsDatabase.DB_PROXY_INITIALIZED Then
|
'If LICENSE_PROXY = True And clsDatabase.DB_PROXY_INITIALIZED Then
|
||||||
@@ -536,6 +520,7 @@ Public Class ClassInit
|
|||||||
'End If
|
'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}"
|
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 = MYDB_ECM.GetScalarValue(oSQL)
|
USER_IS_SUPERVISOR = MYDB_ECM.GetScalarValue(oSQL)
|
||||||
|
ClassHelper.DELETE_PMO_FILE_USER_OPEN_FILES()
|
||||||
Return True
|
Return True
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
LOGGER.Error(ex)
|
LOGGER.Error(ex)
|
||||||
|
|||||||
@@ -91,7 +91,7 @@ Public Class ClassNodeNavigation
|
|||||||
' ParentNode.Nodes.Add(NEW_NODE)
|
' ParentNode.Nodes.Add(NEW_NODE)
|
||||||
' Next '
|
' Next '
|
||||||
'End Function
|
'End Function
|
||||||
Public Shared Sub Check_NODE_CONFIG_ID(ENTITY_ID As Integer, myTreeNode As TreeNode)
|
Public Shared Sub Check_NODE_CONFIG_ID(ENTITY_ID As Integer, myTreeNode As TreeNode, pDatatable As DataTable)
|
||||||
Try
|
Try
|
||||||
If myTreeNode Is Nothing Then
|
If myTreeNode Is Nothing Then
|
||||||
Exit Sub
|
Exit Sub
|
||||||
@@ -108,9 +108,9 @@ Public Class ClassNodeNavigation
|
|||||||
Else
|
Else
|
||||||
LOGGER.Debug($"Attention no NODE-TYPE in staticListItems(0) [{staticListItems(0).ToString}]")
|
LOGGER.Debug($"Attention no NODE-TYPE in staticListItems(0) [{staticListItems(0).ToString}]")
|
||||||
End If
|
End If
|
||||||
If NODE_CONFIGURABLE_NODES_DT.Rows.Count > 0 And IsNumeric(NODE_ID) Then
|
If pDatatable.Rows.Count > 0 And IsNumeric(NODE_ID) Then
|
||||||
'Prüfen ob es für dieses Level einen konfigurierbaren Knoten gibt
|
'Prüfen ob es für dieses Level einen konfigurierbaren Knoten gibt
|
||||||
Dim oTable As DataTable = NODE_CONFIGURABLE_NODES_DT
|
Dim oTable As DataTable = pDatatable
|
||||||
' Get rows with PARENT_ID = NODE_ID
|
' Get rows with PARENT_ID = NODE_ID
|
||||||
Dim result() As DataRow = oTable.Select("PARENT_NODE = " & NODE_CONFIG_ID)
|
Dim result() As DataRow = oTable.Select("PARENT_NODE = " & NODE_CONFIG_ID)
|
||||||
Dim count As Integer
|
Dim count As Integer
|
||||||
@@ -169,7 +169,7 @@ Public Class ClassNodeNavigation
|
|||||||
Return TagString
|
Return TagString
|
||||||
End Try
|
End Try
|
||||||
End Function
|
End Function
|
||||||
Public Shared Function CreateTreeViewNodes(DT_TREEVIEW_NODES As DataTable, TREEVIEW_IMAGELIST As ImageList)
|
Public Shared Function CreateTreeViewNodes(DT_TREEVIEW_NODES As DataTable, TREEVIEW_IMAGELIST As ImageList, pDT_CONFIGURABLE_NODES As DataTable)
|
||||||
Try
|
Try
|
||||||
LOGGER.Debug($"NODES: DT_TREEVIEW_NODES-Count: {DT_TREEVIEW_NODES.Rows.Count}")
|
LOGGER.Debug($"NODES: DT_TREEVIEW_NODES-Count: {DT_TREEVIEW_NODES.Rows.Count}")
|
||||||
Dim sw As New SW("CreateTreeViewNodes")
|
Dim sw As New SW("CreateTreeViewNodes")
|
||||||
@@ -184,7 +184,7 @@ Public Class ClassNodeNavigation
|
|||||||
For i = 0 To MAIN_NODES.GetUpperBound(0)
|
For i = 0 To MAIN_NODES.GetUpperBound(0)
|
||||||
If ENTITY_ID <> MAIN_NODES(i)("ENTITY_ID") Then
|
If ENTITY_ID <> MAIN_NODES(i)("ENTITY_ID") Then
|
||||||
ENTITY_ID = MAIN_NODES(i)("ENTITY_ID")
|
ENTITY_ID = MAIN_NODES(i)("ENTITY_ID")
|
||||||
ClassNodeNavigation.Check_NODE_CONFIG_ID(MAIN_NODES(i)("ENTITY_ID"), Nothing)
|
ClassNodeNavigation.Check_NODE_CONFIG_ID(MAIN_NODES(i)("ENTITY_ID"), Nothing, pDT_CONFIGURABLE_NODES)
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Dim NODE_Tag = CreateNODE_TAG(MAIN_NODES(i)("ENTITY_ID"), MAIN_NODES(i)("GUID"), MAIN_NODES(i)("RECORD_ID"), MAIN_NODES(i)("NODE_CONFIG_ID"))
|
Dim NODE_Tag = CreateNODE_TAG(MAIN_NODES(i)("ENTITY_ID"), MAIN_NODES(i)("GUID"), MAIN_NODES(i)("RECORD_ID"), MAIN_NODES(i)("NODE_CONFIG_ID"))
|
||||||
@@ -222,7 +222,7 @@ Public Class ClassNodeNavigation
|
|||||||
End Try
|
End Try
|
||||||
|
|
||||||
|
|
||||||
MAIN_NODE = CheckSubNodes(DT_TREEVIEW_NODES, MAIN_NODES(i)("GUID"), TREEVIEW_IMAGELIST, MAIN_NODE, MAIN_NODES(i)("EXPAND_NODE"))
|
MAIN_NODE = CheckSubNodes(DT_TREEVIEW_NODES, MAIN_NODES(i)("GUID"), TREEVIEW_IMAGELIST, MAIN_NODE, MAIN_NODES(i)("EXPAND_NODE"), pDT_CONFIGURABLE_NODES)
|
||||||
'Add the node
|
'Add the node
|
||||||
mytrv.Nodes.Add(MAIN_NODE)
|
mytrv.Nodes.Add(MAIN_NODE)
|
||||||
|
|
||||||
@@ -235,7 +235,7 @@ Public Class ClassNodeNavigation
|
|||||||
Return Nothing
|
Return Nothing
|
||||||
End Try
|
End Try
|
||||||
End Function
|
End Function
|
||||||
Private Shared Function CheckSubNodes(DT_TREEVIEW_NODES As DataTable, PARENT_GUID As Integer, TREEVIEW_IMAGELIST As ImageList, MY_NODE As TreeNode, EXPAND As Boolean)
|
Private Shared Function CheckSubNodes(DT_TREEVIEW_NODES As DataTable, PARENT_GUID As Integer, TREEVIEW_IMAGELIST As ImageList, MY_NODE As TreeNode, EXPAND As Boolean, pDT_CONFIGURABLE_NODES As DataTable)
|
||||||
Dim ENTITY_ID As Integer
|
Dim ENTITY_ID As Integer
|
||||||
Dim expression As String
|
Dim expression As String
|
||||||
expression = "PARENT_GUID = " & PARENT_GUID.ToString
|
expression = "PARENT_GUID = " & PARENT_GUID.ToString
|
||||||
@@ -246,7 +246,7 @@ Public Class ClassNodeNavigation
|
|||||||
For i = 0 To SUB_NODE_ROW.GetUpperBound(0)
|
For i = 0 To SUB_NODE_ROW.GetUpperBound(0)
|
||||||
If ENTITY_ID <> SUB_NODE_ROW(i)("ENTITY_ID") Then
|
If ENTITY_ID <> SUB_NODE_ROW(i)("ENTITY_ID") Then
|
||||||
ENTITY_ID = SUB_NODE_ROW(i)("ENTITY_ID")
|
ENTITY_ID = SUB_NODE_ROW(i)("ENTITY_ID")
|
||||||
ClassNodeNavigation.Check_NODE_CONFIG_ID(SUB_NODE_ROW(i)("ENTITY_ID"), MY_NODE)
|
ClassNodeNavigation.Check_NODE_CONFIG_ID(SUB_NODE_ROW(i)("ENTITY_ID"), MY_NODE, pDT_CONFIGURABLE_NODES)
|
||||||
End If
|
End If
|
||||||
Dim NODE_Tag = CreateNODE_TAG(SUB_NODE_ROW(i)("ENTITY_ID"), SUB_NODE_ROW(i)("GUID"), SUB_NODE_ROW(i)("RECORD_ID"), SUB_NODE_ROW(i)("NODE_CONFIG_ID"))
|
Dim NODE_Tag = CreateNODE_TAG(SUB_NODE_ROW(i)("ENTITY_ID"), SUB_NODE_ROW(i)("GUID"), SUB_NODE_ROW(i)("RECORD_ID"), SUB_NODE_ROW(i)("NODE_CONFIG_ID"))
|
||||||
If SUB_NODE_ROW(i)("NODE_CAPTION").ToString.Contains("Neuer") Then
|
If SUB_NODE_ROW(i)("NODE_CAPTION").ToString.Contains("Neuer") Then
|
||||||
@@ -290,7 +290,7 @@ Public Class ClassNodeNavigation
|
|||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
LOGGER.Warn("Unexpected Error in Formatting NodeColor (Subnodes): " & ex.Message)
|
LOGGER.Warn("Unexpected Error in Formatting NodeColor (Subnodes): " & ex.Message)
|
||||||
End Try
|
End Try
|
||||||
CheckSubNodes(DT_TREEVIEW_NODES, SUB_NODE_ROW(i)("GUID"), TREEVIEW_IMAGELIST, SUB_NODE, SUB_NODE_ROW(i)("EXPAND_NODE"))
|
CheckSubNodes(DT_TREEVIEW_NODES, SUB_NODE_ROW(i)("GUID"), TREEVIEW_IMAGELIST, SUB_NODE, SUB_NODE_ROW(i)("EXPAND_NODE"), pDT_CONFIGURABLE_NODES)
|
||||||
'Add the node
|
'Add the node
|
||||||
MY_NODE.Nodes.Add(SUB_NODE)
|
MY_NODE.Nodes.Add(SUB_NODE)
|
||||||
'If EXPAND = True Then
|
'If EXPAND = True Then
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
Imports System.Text.RegularExpressions
|
Imports System.Text.RegularExpressions
|
||||||
|
|
||||||
Public Class ClassControlValues
|
Public Class ClassControlValues
|
||||||
|
|
||||||
Public Shared Function ControlHasValue(control As Control) As Boolean
|
Public Shared Function ControlHasValue(control As Control) As Boolean
|
||||||
Try
|
Try
|
||||||
Select Case control.GetType()
|
Select Case control.GetType()
|
||||||
@@ -390,6 +390,83 @@ Public Class ClassControlValues
|
|||||||
|
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
|
Public Shared Sub LoadControlValues_Optimized(RecordId As Integer, ParentRecordId As Integer, FormId As Integer, controls As Control.ControlCollection, Entity_ID As Integer, Optional isGroupbox As Boolean = False)
|
||||||
|
Try
|
||||||
|
If RecordId = 0 Then Exit Sub
|
||||||
|
|
||||||
|
' ✅ 1. Alle Daten in EINEM Rutsch laden
|
||||||
|
' EINE Query für Values + Hints via JOIN
|
||||||
|
Dim SQL = $"
|
||||||
|
SELECT
|
||||||
|
cv.CONTROL_ID,
|
||||||
|
cv.VALUE,
|
||||||
|
ch.HINT
|
||||||
|
FROM VWPMO_VALUES cv
|
||||||
|
LEFT JOIN VWPMO_CONTROL_HINT ch ON cv.CONTROL_ID = ch.CONTROL_ID
|
||||||
|
AND ch.FORM_ID = {FormId}
|
||||||
|
WHERE cv.RECORD_ID = {RecordId}"
|
||||||
|
|
||||||
|
Dim dtBatch = MYDB_ECM.GetDatatable(SQL)
|
||||||
|
|
||||||
|
' ✅ 2. Dictionary für O(1) Lookups statt O(n) LINQ
|
||||||
|
Dim valueDict As New Dictionary(Of Integer, List(Of Object))
|
||||||
|
Dim hintDict As New Dictionary(Of Integer, String)
|
||||||
|
|
||||||
|
For Each row As DataRow In dtBatch.Rows
|
||||||
|
Dim ctrlId = row.Field(Of Integer)("CONTROL_ID")
|
||||||
|
|
||||||
|
' Values gruppieren
|
||||||
|
If Not valueDict.ContainsKey(ctrlId) Then
|
||||||
|
valueDict(ctrlId) = New List(Of Object)
|
||||||
|
End If
|
||||||
|
valueDict(ctrlId).Add(row.Item("VALUE"))
|
||||||
|
|
||||||
|
' Hints cachen
|
||||||
|
Dim hint = row.Field(Of String)("HINT")
|
||||||
|
If Not String.IsNullOrEmpty(hint) Then
|
||||||
|
hintDict(ctrlId) = hint
|
||||||
|
ClassControlValueCache.SaveHint(ctrlId, hint)
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
|
||||||
|
' ✅ 3. Paralleles UI-Update mit BeginUpdate/EndUpdate
|
||||||
|
' GroupBox separat behandeln
|
||||||
|
Dim regularControls As New List(Of Control)
|
||||||
|
Dim groupBoxes As New List(Of GroupBox)
|
||||||
|
|
||||||
|
For Each ctrl As Control In controls
|
||||||
|
If TypeOf ctrl Is GroupBox Then
|
||||||
|
groupBoxes.Add(DirectCast(ctrl, GroupBox))
|
||||||
|
Else
|
||||||
|
regularControls.Add(ctrl)
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
|
||||||
|
' Batch-Update für reguläre Controls
|
||||||
|
For Each control As Control In regularControls
|
||||||
|
Dim ctrlId = DirectCast(control.Tag, ClassControlMetadata).Id
|
||||||
|
|
||||||
|
PerfomanceHelper.SuspendDraw(control)
|
||||||
|
|
||||||
|
' Dictionary-Lookup statt LINQ (O(1) vs O(n))
|
||||||
|
Dim values As List(Of Object) = Nothing
|
||||||
|
If valueDict.TryGetValue(ctrlId, values) Then
|
||||||
|
LoadControlValue(RecordId, ParentRecordId, ctrlId, control, values, Entity_ID)
|
||||||
|
End If
|
||||||
|
|
||||||
|
PerfomanceHelper.ResumeDraw(control)
|
||||||
|
Next
|
||||||
|
|
||||||
|
' Rekursiv für GroupBoxes
|
||||||
|
For Each gb As GroupBox In groupBoxes
|
||||||
|
LoadControlValues_Optimized(RecordId, ParentRecordId, FormId, gb.Controls, Entity_ID, True)
|
||||||
|
Next
|
||||||
|
|
||||||
|
Catch ex As Exception
|
||||||
|
LOGGER.Error(ex, "LoadControlValues_Optimized failed")
|
||||||
|
Throw
|
||||||
|
End Try
|
||||||
|
End Sub
|
||||||
|
|
||||||
Public Shared Sub LoadControlValuesListWithPlaceholders(FormId As Integer, RecordId As Integer, ParentRecordId As Integer, controls As Control.ControlCollection, entity_ID As Integer)
|
Public Shared Sub LoadControlValuesListWithPlaceholders(FormId As Integer, RecordId As Integer, ParentRecordId As Integer, controls As Control.ControlCollection, entity_ID As Integer)
|
||||||
Try
|
Try
|
||||||
|
|||||||
@@ -1,19 +1,21 @@
|
|||||||
Imports System.ComponentModel
|
Imports System.ComponentModel
|
||||||
Public Class ClassAsyncNodeBuild
|
Public Class ClassAsyncNodeBuild
|
||||||
Private DTNODES As DataTable
|
Private DTNODES As DataTable
|
||||||
|
Private DT_CONFIGURABLE_NODES As DataTable
|
||||||
Private ImgList As ImageList
|
Private ImgList As ImageList
|
||||||
Public WithEvents bw As BackgroundWorker
|
Public WithEvents bw As BackgroundWorker
|
||||||
Public newTreeview As TreeView
|
Public newTreeview As TreeView
|
||||||
|
|
||||||
Public Sub New(DT_TREEVIEW_NODES As DataTable, TREEVIEW_IMAGELIST As ImageList)
|
Public Sub New(DT_TREEVIEW_NODES As DataTable, TREEVIEW_IMAGELIST As ImageList, pDT_CONFIGURABLE_NODES As DataTable)
|
||||||
Me.bw = New BackgroundWorker()
|
Me.bw = New BackgroundWorker()
|
||||||
bw.WorkerReportsProgress = False
|
bw.WorkerReportsProgress = False
|
||||||
bw.WorkerSupportsCancellation = False
|
bw.WorkerSupportsCancellation = False
|
||||||
Me.DTNODES = DT_TREEVIEW_NODES
|
Me.DTNODES = DT_TREEVIEW_NODES
|
||||||
Me.ImgList = TREEVIEW_IMAGELIST
|
Me.ImgList = TREEVIEW_IMAGELIST
|
||||||
|
DT_CONFIGURABLE_NODES = pDT_CONFIGURABLE_NODES
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub bw_DoWork(ByVal sender As Object, ByVal e As DoWorkEventArgs) Handles bw.DoWork
|
Private Sub bw_DoWork(ByVal sender As Object, ByVal e As DoWorkEventArgs) Handles bw.DoWork
|
||||||
Me.newTreeview = ClassNodeNavigation.CreateTreeViewNodes(DTNODES, ImgList)
|
Me.newTreeview = ClassNodeNavigation.CreateTreeViewNodes(DTNODES, ImgList, DT_CONFIGURABLE_NODES)
|
||||||
End Sub
|
End Sub
|
||||||
End Class
|
End Class
|
||||||
|
|||||||
BIN
app/DD-Record-Organizer/Log_ewa.txt
Normal file
BIN
app/DD-Record-Organizer/Log_ewa.txt
Normal file
Binary file not shown.
@@ -62,7 +62,6 @@ Module ModuleRuntimeVariables
|
|||||||
Public CURRENT_CONSTRUCTOR_DETAIL_ID As Integer
|
Public CURRENT_CONSTRUCTOR_DETAIL_ID As Integer
|
||||||
Public CURRENT_FILEID As Integer
|
Public CURRENT_FILEID As Integer
|
||||||
Public CURRENT_FILENAME As String
|
Public CURRENT_FILENAME As String
|
||||||
Public CURRENT_FILE_HASH As String = ""
|
|
||||||
Public CURRENT_OFFICE_FILE_CHANGED As Boolean = False
|
Public CURRENT_OFFICE_FILE_CHANGED As Boolean = False
|
||||||
Public CURRENT_NEWFILENAME As String
|
Public CURRENT_NEWFILENAME As String
|
||||||
Public CURRENT_CONTROL_DOCTYPE_MATCH As String = ""
|
Public CURRENT_CONTROL_DOCTYPE_MATCH As String = ""
|
||||||
@@ -104,8 +103,6 @@ Module ModuleRuntimeVariables
|
|||||||
|
|
||||||
Public CONNECTION_CHANGED As Boolean = False
|
Public CONNECTION_CHANGED As Boolean = False
|
||||||
|
|
||||||
Public CURRENT_SCAN_FOLDERWATCH As String
|
|
||||||
Public CURRENT_SCAN_FOLDERWATCH_SD As Boolean = False
|
|
||||||
Public DTEXCLUDE_FILES As DataTable
|
Public DTEXCLUDE_FILES As DataTable
|
||||||
Public LANGUAGE_CHANGED As Boolean = False
|
Public LANGUAGE_CHANGED As Boolean = False
|
||||||
'DATATABLES
|
'DATATABLES
|
||||||
@@ -118,6 +115,7 @@ Module ModuleRuntimeVariables
|
|||||||
Public CURRENT_TBPMO_FORM_VIEW As DataTable
|
Public CURRENT_TBPMO_FORM_VIEW As DataTable
|
||||||
Public CURRENT_TBPMO_DOCRESULT_DROPDOWN_ITEMS As DataTable
|
Public CURRENT_TBPMO_DOCRESULT_DROPDOWN_ITEMS As DataTable
|
||||||
Public CURRENT_TBFILE_EXTENSION_OVERRIDE As DataTable
|
Public CURRENT_TBFILE_EXTENSION_OVERRIDE As DataTable
|
||||||
|
Public CURRENT_DOC_RESULTS As DataTable
|
||||||
|
|
||||||
Public CURRENT_TBPMO_RIGHT_USER As DataTable
|
Public CURRENT_TBPMO_RIGHT_USER As DataTable
|
||||||
|
|
||||||
@@ -131,8 +129,7 @@ Module ModuleRuntimeVariables
|
|||||||
Public CURRENT_TBPMO_INDEX_MAN As DataTable
|
Public CURRENT_TBPMO_INDEX_MAN As DataTable
|
||||||
Public CURRENT_DT_TBPMO_ENTITY_RIGHT_CONTROLS As DataTable
|
Public CURRENT_DT_TBPMO_ENTITY_RIGHT_CONTROLS As DataTable
|
||||||
Public CURRENT_DT_DOC_ENTITY_SEARCH As DataTable
|
Public CURRENT_DT_DOC_ENTITY_SEARCH As DataTable
|
||||||
Public NODE_CONFIGURABLE_NODES_DT As DataTable
|
|
||||||
Public CURRENT_DOC_RESULTS As DataTable
|
|
||||||
Public CURRENT_DOC_DROPDOWN As DataTable
|
Public CURRENT_DOC_DROPDOWN As DataTable
|
||||||
Public CURRENT_PARENT_DT As DataTable
|
Public CURRENT_PARENT_DT As DataTable
|
||||||
|
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ Imports System.Runtime.InteropServices
|
|||||||
<Assembly: AssemblyDescription("")>
|
<Assembly: AssemblyDescription("")>
|
||||||
<Assembly: AssemblyCompany("Digital Data")>
|
<Assembly: AssemblyCompany("Digital Data")>
|
||||||
<Assembly: AssemblyProduct("orgFLOW")>
|
<Assembly: AssemblyProduct("orgFLOW")>
|
||||||
<Assembly: AssemblyCopyright("Copyright 2025")>
|
<Assembly: AssemblyCopyright("2026")>
|
||||||
<Assembly: AssemblyTrademark("")>
|
<Assembly: AssemblyTrademark("")>
|
||||||
|
|
||||||
<Assembly: ComVisible(False)>
|
<Assembly: ComVisible(False)>
|
||||||
@@ -33,7 +33,7 @@ Imports System.Runtime.InteropServices
|
|||||||
' übernehmen, indem Sie "*" eingeben:
|
' übernehmen, indem Sie "*" eingeben:
|
||||||
' <Assembly: AssemblyVersion("1.0.*")>
|
' <Assembly: AssemblyVersion("1.0.*")>
|
||||||
|
|
||||||
<Assembly: AssemblyVersion("3.6.0.0")>
|
<Assembly: AssemblyVersion("3.7.2.0")>
|
||||||
<Assembly: AssemblyFileVersion("1.0.0.0")>
|
<Assembly: AssemblyFileVersion("1.0.0.0")>
|
||||||
|
|
||||||
<Assembly: NeutralResourcesLanguageAttribute("")>
|
<Assembly: NeutralResourcesLanguageAttribute("")>
|
||||||
@@ -33,7 +33,7 @@
|
|||||||
</NuGetPackageImportStamp>
|
</NuGetPackageImportStamp>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
<PlatformTarget>x64</PlatformTarget>
|
||||||
<DebugSymbols>true</DebugSymbols>
|
<DebugSymbols>true</DebugSymbols>
|
||||||
<DebugType>full</DebugType>
|
<DebugType>full</DebugType>
|
||||||
<DefineDebug>true</DefineDebug>
|
<DefineDebug>true</DefineDebug>
|
||||||
@@ -70,6 +70,27 @@
|
|||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<ApplicationIcon>ORGFLOW_Icon_256x256.ico</ApplicationIcon>
|
<ApplicationIcon>ORGFLOW_Icon_256x256.ico</ApplicationIcon>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
|
||||||
|
<DebugSymbols>true</DebugSymbols>
|
||||||
|
<DefineDebug>true</DefineDebug>
|
||||||
|
<DefineTrace>true</DefineTrace>
|
||||||
|
<OutputPath>bin\x64\Debug\</OutputPath>
|
||||||
|
<DocumentationFile>orgFLOW.xml</DocumentationFile>
|
||||||
|
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
|
||||||
|
<DebugType>full</DebugType>
|
||||||
|
<PlatformTarget>x64</PlatformTarget>
|
||||||
|
<Prefer32Bit>true</Prefer32Bit>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
|
||||||
|
<DefineTrace>true</DefineTrace>
|
||||||
|
<OutputPath>bin\x64\Release\</OutputPath>
|
||||||
|
<DocumentationFile>orgFLOW.xml</DocumentationFile>
|
||||||
|
<Optimize>true</Optimize>
|
||||||
|
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
|
||||||
|
<DebugType>pdbonly</DebugType>
|
||||||
|
<PlatformTarget>x64</PlatformTarget>
|
||||||
|
<Prefer32Bit>true</Prefer32Bit>
|
||||||
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Reference Include="BouncyCastle.Cryptography, Version=2.0.0.0, Culture=neutral, PublicKeyToken=072edcf4a5328938, processorArchitecture=MSIL">
|
<Reference Include="BouncyCastle.Cryptography, Version=2.0.0.0, Culture=neutral, PublicKeyToken=072edcf4a5328938, processorArchitecture=MSIL">
|
||||||
<HintPath>..\packages\BouncyCastle.Cryptography.2.5.0\lib\net461\BouncyCastle.Cryptography.dll</HintPath>
|
<HintPath>..\packages\BouncyCastle.Cryptography.2.5.0\lib\net461\BouncyCastle.Cryptography.dll</HintPath>
|
||||||
@@ -172,9 +193,9 @@
|
|||||||
<Reference Include="DevExpress.XtraWizard.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
|
<Reference Include="DevExpress.XtraWizard.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
|
||||||
<SpecificVersion>False</SpecificVersion>
|
<SpecificVersion>False</SpecificVersion>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="DigitalData.Controls.DocumentViewer, Version=1.9.6.0, Culture=neutral, processorArchitecture=MSIL">
|
<Reference Include="DigitalData.Controls.DocumentViewer, Version=2.6.0.0, Culture=neutral, processorArchitecture=MSIL">
|
||||||
<SpecificVersion>False</SpecificVersion>
|
<SpecificVersion>False</SpecificVersion>
|
||||||
<HintPath>..\..\..\..\2_DLL Projekte\DDMonorepo\Controls.DocumentViewer\bin\Debug\DigitalData.Controls.DocumentViewer.dll</HintPath>
|
<HintPath>..\..\..\..\2_DLL Projekte\Controls.DocumentViewer\bin\Debug\DigitalData.Controls.DocumentViewer.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="DigitalData.GUIs.Common">
|
<Reference Include="DigitalData.GUIs.Common">
|
||||||
<HintPath>..\..\..\..\2_DLL Projekte\DDMonorepo\GUIs.Common\bin\Debug\DigitalData.GUIs.Common.dll</HintPath>
|
<HintPath>..\..\..\..\2_DLL Projekte\DDMonorepo\GUIs.Common\bin\Debug\DigitalData.GUIs.Common.dll</HintPath>
|
||||||
@@ -365,6 +386,7 @@
|
|||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Compile Include="Classes\ClassConfig.vb" />
|
<Compile Include="Classes\ClassConfig.vb" />
|
||||||
|
<Compile Include="Classes\ClassDataCache.vb" />
|
||||||
<Compile Include="Classes\ClassTreeListViewState.vb" />
|
<Compile Include="Classes\ClassTreeListViewState.vb" />
|
||||||
<Compile Include="Classes\Commands\ClassNodeCommands.vb" />
|
<Compile Include="Classes\Commands\ClassNodeCommands.vb" />
|
||||||
<Compile Include="Classes\NodeNavigation\ClassAsyncNodeBuild.vb" />
|
<Compile Include="Classes\NodeNavigation\ClassAsyncNodeBuild.vb" />
|
||||||
@@ -380,7 +402,6 @@
|
|||||||
<SubType>Component</SubType>
|
<SubType>Component</SubType>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="Classes\ClassFileResult.vb" />
|
<Compile Include="Classes\ClassFileResult.vb" />
|
||||||
<Compile Include="Classes\ClassFolderWatcher.vb" />
|
|
||||||
<Compile Include="Classes\ClassGridFormatter.vb" />
|
<Compile Include="Classes\ClassGridFormatter.vb" />
|
||||||
<Compile Include="Classes\ClassInactivity.vb" />
|
<Compile Include="Classes\ClassInactivity.vb" />
|
||||||
<Compile Include="Classes\ClassJumpRecord.vb" />
|
<Compile Include="Classes\ClassJumpRecord.vb" />
|
||||||
@@ -746,12 +767,6 @@
|
|||||||
<Compile Include="frmRecord_Changes.vb">
|
<Compile Include="frmRecord_Changes.vb">
|
||||||
<SubType>Form</SubType>
|
<SubType>Form</SubType>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="frmScanFiles.Designer.vb">
|
|
||||||
<DependentUpon>frmScanFiles.vb</DependentUpon>
|
|
||||||
</Compile>
|
|
||||||
<Compile Include="frmScanFiles.vb">
|
|
||||||
<SubType>Form</SubType>
|
|
||||||
</Compile>
|
|
||||||
<Compile Include="frmSplash.Designer.vb">
|
<Compile Include="frmSplash.Designer.vb">
|
||||||
<DependentUpon>frmSplash.vb</DependentUpon>
|
<DependentUpon>frmSplash.vb</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
@@ -1190,12 +1205,6 @@
|
|||||||
<DependentUpon>frmRecord_Changes.vb</DependentUpon>
|
<DependentUpon>frmRecord_Changes.vb</DependentUpon>
|
||||||
<SubType>Designer</SubType>
|
<SubType>Designer</SubType>
|
||||||
</EmbeddedResource>
|
</EmbeddedResource>
|
||||||
<EmbeddedResource Include="frmScanFiles.en-US.resx">
|
|
||||||
<DependentUpon>frmScanFiles.vb</DependentUpon>
|
|
||||||
</EmbeddedResource>
|
|
||||||
<EmbeddedResource Include="frmScanFiles.resx">
|
|
||||||
<DependentUpon>frmScanFiles.vb</DependentUpon>
|
|
||||||
</EmbeddedResource>
|
|
||||||
<EmbeddedResource Include="frmSplash.resx">
|
<EmbeddedResource Include="frmSplash.resx">
|
||||||
<DependentUpon>frmSplash.vb</DependentUpon>
|
<DependentUpon>frmSplash.vb</DependentUpon>
|
||||||
</EmbeddedResource>
|
</EmbeddedResource>
|
||||||
@@ -1708,6 +1717,7 @@
|
|||||||
<None Include="MailLicense.xml">
|
<None Include="MailLicense.xml">
|
||||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||||
</None>
|
</None>
|
||||||
|
<Content Include="Log_ewa.txt" />
|
||||||
<Content Include="ORGFLOW_Icon_16x16.ico" />
|
<Content Include="ORGFLOW_Icon_16x16.ico" />
|
||||||
<Content Include="ORGFLOW_Icon_256x256.ico" />
|
<Content Include="ORGFLOW_Icon_256x256.ico" />
|
||||||
<Content Include="Resources\cube.ico" />
|
<Content Include="Resources\cube.ico" />
|
||||||
@@ -1747,6 +1757,10 @@
|
|||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<Error Condition="!Exists('..\packages\GdPicture.runtimes.windows.14.3.3\build\net462\GdPicture.runtimes.windows.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\GdPicture.runtimes.windows.14.3.3\build\net462\GdPicture.runtimes.windows.targets'))" />
|
<Error Condition="!Exists('..\packages\GdPicture.runtimes.windows.14.3.3\build\net462\GdPicture.runtimes.windows.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\GdPicture.runtimes.windows.14.3.3\build\net462\GdPicture.runtimes.windows.targets'))" />
|
||||||
</Target>
|
</Target>
|
||||||
|
<PropertyGroup>
|
||||||
|
<PostBuildEvent>
|
||||||
|
</PostBuildEvent>
|
||||||
|
</PropertyGroup>
|
||||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||||
Other similar extension points exist, see Microsoft.Common.targets.
|
Other similar extension points exist, see Microsoft.Common.targets.
|
||||||
<Target Name="BeforeBuild">
|
<Target Name="BeforeBuild">
|
||||||
|
|||||||
102
app/DD-Record-Organizer/frmConfig_Basic.Designer.vb
generated
102
app/DD-Record-Organizer/frmConfig_Basic.Designer.vb
generated
@@ -22,7 +22,6 @@ Partial Class frmConfig_Basic
|
|||||||
'Das Bearbeiten mit dem Code-Editor ist nicht möglich.
|
'Das Bearbeiten mit dem Code-Editor ist nicht möglich.
|
||||||
<System.Diagnostics.DebuggerStepThrough()>
|
<System.Diagnostics.DebuggerStepThrough()>
|
||||||
Private Sub InitializeComponent()
|
Private Sub InitializeComponent()
|
||||||
Dim DataGridViewCellStyle2 As System.Windows.Forms.DataGridViewCellStyle = New System.Windows.Forms.DataGridViewCellStyle()
|
|
||||||
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmConfig_Basic))
|
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmConfig_Basic))
|
||||||
Me.TabControl1 = New System.Windows.Forms.TabControl()
|
Me.TabControl1 = New System.Windows.Forms.TabControl()
|
||||||
Me.TabPage1 = New System.Windows.Forms.TabPage()
|
Me.TabPage1 = New System.Windows.Forms.TabPage()
|
||||||
@@ -39,6 +38,7 @@ Partial Class frmConfig_Basic
|
|||||||
Me.txtPasswort = New System.Windows.Forms.TextBox()
|
Me.txtPasswort = New System.Windows.Forms.TextBox()
|
||||||
Me.BtnConnect = New System.Windows.Forms.Button()
|
Me.BtnConnect = New System.Windows.Forms.Button()
|
||||||
Me.TabPage2 = New System.Windows.Forms.TabPage()
|
Me.TabPage2 = New System.Windows.Forms.TabPage()
|
||||||
|
Me.CheckBox_ForceTemporaryMode = New System.Windows.Forms.CheckBox()
|
||||||
Me.GroupBox5 = New System.Windows.Forms.GroupBox()
|
Me.GroupBox5 = New System.Windows.Forms.GroupBox()
|
||||||
Me.Label11 = New System.Windows.Forms.Label()
|
Me.Label11 = New System.Windows.Forms.Label()
|
||||||
Me.Label10 = New System.Windows.Forms.Label()
|
Me.Label10 = New System.Windows.Forms.Label()
|
||||||
@@ -58,15 +58,6 @@ Partial Class frmConfig_Basic
|
|||||||
Me.Button1 = New System.Windows.Forms.Button()
|
Me.Button1 = New System.Windows.Forms.Button()
|
||||||
Me.btnApplicationFolder = New System.Windows.Forms.Button()
|
Me.btnApplicationFolder = New System.Windows.Forms.Button()
|
||||||
Me.LinkLabel1 = New System.Windows.Forms.LinkLabel()
|
Me.LinkLabel1 = New System.Windows.Forms.LinkLabel()
|
||||||
Me.TabPage3 = New System.Windows.Forms.TabPage()
|
|
||||||
Me.chkSubfolder = New System.Windows.Forms.CheckBox()
|
|
||||||
Me.Label9 = New System.Windows.Forms.Label()
|
|
||||||
Me.DataGridView1 = New System.Windows.Forms.DataGridView()
|
|
||||||
Me.btnSaveExclusionFiles = New System.Windows.Forms.Button()
|
|
||||||
Me.Button2 = New System.Windows.Forms.Button()
|
|
||||||
Me.txtScanFolderWatch = New System.Windows.Forms.TextBox()
|
|
||||||
Me.Label8 = New System.Windows.Forms.Label()
|
|
||||||
Me.btnstartstop2 = New System.Windows.Forms.Button()
|
|
||||||
Me.TabPage4 = New System.Windows.Forms.TabPage()
|
Me.TabPage4 = New System.Windows.Forms.TabPage()
|
||||||
Me.Label6 = New System.Windows.Forms.Label()
|
Me.Label6 = New System.Windows.Forms.Label()
|
||||||
Me.Button4 = New System.Windows.Forms.Button()
|
Me.Button4 = New System.Windows.Forms.Button()
|
||||||
@@ -79,7 +70,6 @@ Partial Class frmConfig_Basic
|
|||||||
Me.btncheckWDFolderexists = New System.Windows.Forms.Button()
|
Me.btncheckWDFolderexists = New System.Windows.Forms.Button()
|
||||||
Me.txtwdFolder = New System.Windows.Forms.TextBox()
|
Me.txtwdFolder = New System.Windows.Forms.TextBox()
|
||||||
Me.Label12 = New System.Windows.Forms.Label()
|
Me.Label12 = New System.Windows.Forms.Label()
|
||||||
Me.CheckBox_ForceTemporaryMode = New System.Windows.Forms.CheckBox()
|
|
||||||
Me.TabControl1.SuspendLayout()
|
Me.TabControl1.SuspendLayout()
|
||||||
Me.TabPage1.SuspendLayout()
|
Me.TabPage1.SuspendLayout()
|
||||||
Me.TabPage2.SuspendLayout()
|
Me.TabPage2.SuspendLayout()
|
||||||
@@ -87,8 +77,6 @@ Partial Class frmConfig_Basic
|
|||||||
Me.GroupBox1.SuspendLayout()
|
Me.GroupBox1.SuspendLayout()
|
||||||
Me.GroupBox4.SuspendLayout()
|
Me.GroupBox4.SuspendLayout()
|
||||||
Me.GroupBox3.SuspendLayout()
|
Me.GroupBox3.SuspendLayout()
|
||||||
Me.TabPage3.SuspendLayout()
|
|
||||||
CType(Me.DataGridView1, System.ComponentModel.ISupportInitialize).BeginInit()
|
|
||||||
Me.TabPage4.SuspendLayout()
|
Me.TabPage4.SuspendLayout()
|
||||||
Me.GroupBox2.SuspendLayout()
|
Me.GroupBox2.SuspendLayout()
|
||||||
Me.SuspendLayout()
|
Me.SuspendLayout()
|
||||||
@@ -97,7 +85,6 @@ Partial Class frmConfig_Basic
|
|||||||
'
|
'
|
||||||
Me.TabControl1.Controls.Add(Me.TabPage1)
|
Me.TabControl1.Controls.Add(Me.TabPage1)
|
||||||
Me.TabControl1.Controls.Add(Me.TabPage2)
|
Me.TabControl1.Controls.Add(Me.TabPage2)
|
||||||
Me.TabControl1.Controls.Add(Me.TabPage3)
|
|
||||||
Me.TabControl1.Controls.Add(Me.TabPage4)
|
Me.TabControl1.Controls.Add(Me.TabPage4)
|
||||||
resources.ApplyResources(Me.TabControl1, "TabControl1")
|
resources.ApplyResources(Me.TabControl1, "TabControl1")
|
||||||
Me.TabControl1.Name = "TabControl1"
|
Me.TabControl1.Name = "TabControl1"
|
||||||
@@ -206,6 +193,12 @@ Partial Class frmConfig_Basic
|
|||||||
Me.TabPage2.Name = "TabPage2"
|
Me.TabPage2.Name = "TabPage2"
|
||||||
Me.TabPage2.UseVisualStyleBackColor = True
|
Me.TabPage2.UseVisualStyleBackColor = True
|
||||||
'
|
'
|
||||||
|
'CheckBox_ForceTemporaryMode
|
||||||
|
'
|
||||||
|
resources.ApplyResources(Me.CheckBox_ForceTemporaryMode, "CheckBox_ForceTemporaryMode")
|
||||||
|
Me.CheckBox_ForceTemporaryMode.Name = "CheckBox_ForceTemporaryMode"
|
||||||
|
Me.CheckBox_ForceTemporaryMode.UseVisualStyleBackColor = True
|
||||||
|
'
|
||||||
'GroupBox5
|
'GroupBox5
|
||||||
'
|
'
|
||||||
Me.GroupBox5.Controls.Add(Me.Label11)
|
Me.GroupBox5.Controls.Add(Me.Label11)
|
||||||
@@ -337,69 +330,6 @@ Partial Class frmConfig_Basic
|
|||||||
Me.LinkLabel1.Name = "LinkLabel1"
|
Me.LinkLabel1.Name = "LinkLabel1"
|
||||||
Me.LinkLabel1.TabStop = True
|
Me.LinkLabel1.TabStop = True
|
||||||
'
|
'
|
||||||
'TabPage3
|
|
||||||
'
|
|
||||||
Me.TabPage3.Controls.Add(Me.chkSubfolder)
|
|
||||||
Me.TabPage3.Controls.Add(Me.Label9)
|
|
||||||
Me.TabPage3.Controls.Add(Me.DataGridView1)
|
|
||||||
Me.TabPage3.Controls.Add(Me.btnSaveExclusionFiles)
|
|
||||||
Me.TabPage3.Controls.Add(Me.Button2)
|
|
||||||
Me.TabPage3.Controls.Add(Me.txtScanFolderWatch)
|
|
||||||
Me.TabPage3.Controls.Add(Me.Label8)
|
|
||||||
Me.TabPage3.Controls.Add(Me.btnstartstop2)
|
|
||||||
resources.ApplyResources(Me.TabPage3, "TabPage3")
|
|
||||||
Me.TabPage3.Name = "TabPage3"
|
|
||||||
Me.TabPage3.UseVisualStyleBackColor = True
|
|
||||||
'
|
|
||||||
'chkSubfolder
|
|
||||||
'
|
|
||||||
resources.ApplyResources(Me.chkSubfolder, "chkSubfolder")
|
|
||||||
Me.chkSubfolder.Name = "chkSubfolder"
|
|
||||||
Me.chkSubfolder.UseVisualStyleBackColor = True
|
|
||||||
'
|
|
||||||
'Label9
|
|
||||||
'
|
|
||||||
resources.ApplyResources(Me.Label9, "Label9")
|
|
||||||
Me.Label9.Name = "Label9"
|
|
||||||
'
|
|
||||||
'DataGridView1
|
|
||||||
'
|
|
||||||
DataGridViewCellStyle2.BackColor = System.Drawing.Color.Aqua
|
|
||||||
Me.DataGridView1.AlternatingRowsDefaultCellStyle = DataGridViewCellStyle2
|
|
||||||
resources.ApplyResources(Me.DataGridView1, "DataGridView1")
|
|
||||||
Me.DataGridView1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize
|
|
||||||
Me.DataGridView1.Name = "DataGridView1"
|
|
||||||
'
|
|
||||||
'btnSaveExclusionFiles
|
|
||||||
'
|
|
||||||
resources.ApplyResources(Me.btnSaveExclusionFiles, "btnSaveExclusionFiles")
|
|
||||||
Me.btnSaveExclusionFiles.Name = "btnSaveExclusionFiles"
|
|
||||||
Me.btnSaveExclusionFiles.UseVisualStyleBackColor = True
|
|
||||||
'
|
|
||||||
'Button2
|
|
||||||
'
|
|
||||||
resources.ApplyResources(Me.Button2, "Button2")
|
|
||||||
Me.Button2.Name = "Button2"
|
|
||||||
Me.Button2.UseVisualStyleBackColor = True
|
|
||||||
'
|
|
||||||
'txtScanFolderWatch
|
|
||||||
'
|
|
||||||
Me.txtScanFolderWatch.BackColor = System.Drawing.Color.LemonChiffon
|
|
||||||
resources.ApplyResources(Me.txtScanFolderWatch, "txtScanFolderWatch")
|
|
||||||
Me.txtScanFolderWatch.Name = "txtScanFolderWatch"
|
|
||||||
'
|
|
||||||
'Label8
|
|
||||||
'
|
|
||||||
resources.ApplyResources(Me.Label8, "Label8")
|
|
||||||
Me.Label8.Name = "Label8"
|
|
||||||
'
|
|
||||||
'btnstartstop2
|
|
||||||
'
|
|
||||||
Me.btnstartstop2.Image = Global.DD_Record_Organizer.My.Resources.Resources.bell_go
|
|
||||||
resources.ApplyResources(Me.btnstartstop2, "btnstartstop2")
|
|
||||||
Me.btnstartstop2.Name = "btnstartstop2"
|
|
||||||
Me.btnstartstop2.UseVisualStyleBackColor = True
|
|
||||||
'
|
|
||||||
'TabPage4
|
'TabPage4
|
||||||
'
|
'
|
||||||
Me.TabPage4.Controls.Add(Me.Label6)
|
Me.TabPage4.Controls.Add(Me.Label6)
|
||||||
@@ -480,12 +410,6 @@ Partial Class frmConfig_Basic
|
|||||||
resources.ApplyResources(Me.Label12, "Label12")
|
resources.ApplyResources(Me.Label12, "Label12")
|
||||||
Me.Label12.Name = "Label12"
|
Me.Label12.Name = "Label12"
|
||||||
'
|
'
|
||||||
'CheckBox_ForceTemporaryMode
|
|
||||||
'
|
|
||||||
resources.ApplyResources(Me.CheckBox_ForceTemporaryMode, "CheckBox_ForceTemporaryMode")
|
|
||||||
Me.CheckBox_ForceTemporaryMode.Name = "CheckBox_ForceTemporaryMode"
|
|
||||||
Me.CheckBox_ForceTemporaryMode.UseVisualStyleBackColor = True
|
|
||||||
'
|
|
||||||
'frmConfig_Basic
|
'frmConfig_Basic
|
||||||
'
|
'
|
||||||
resources.ApplyResources(Me, "$this")
|
resources.ApplyResources(Me, "$this")
|
||||||
@@ -505,9 +429,6 @@ Partial Class frmConfig_Basic
|
|||||||
Me.GroupBox4.ResumeLayout(False)
|
Me.GroupBox4.ResumeLayout(False)
|
||||||
Me.GroupBox3.ResumeLayout(False)
|
Me.GroupBox3.ResumeLayout(False)
|
||||||
Me.GroupBox3.PerformLayout()
|
Me.GroupBox3.PerformLayout()
|
||||||
Me.TabPage3.ResumeLayout(False)
|
|
||||||
Me.TabPage3.PerformLayout()
|
|
||||||
CType(Me.DataGridView1, System.ComponentModel.ISupportInitialize).EndInit()
|
|
||||||
Me.TabPage4.ResumeLayout(False)
|
Me.TabPage4.ResumeLayout(False)
|
||||||
Me.TabPage4.PerformLayout()
|
Me.TabPage4.PerformLayout()
|
||||||
Me.GroupBox2.ResumeLayout(False)
|
Me.GroupBox2.ResumeLayout(False)
|
||||||
@@ -538,14 +459,6 @@ Partial Class frmConfig_Basic
|
|||||||
Friend WithEvents CheckBox1 As System.Windows.Forms.CheckBox
|
Friend WithEvents CheckBox1 As System.Windows.Forms.CheckBox
|
||||||
Friend WithEvents Label7 As System.Windows.Forms.Label
|
Friend WithEvents Label7 As System.Windows.Forms.Label
|
||||||
Friend WithEvents cmbConstructor As System.Windows.Forms.ComboBox
|
Friend WithEvents cmbConstructor As System.Windows.Forms.ComboBox
|
||||||
Friend WithEvents TabPage3 As System.Windows.Forms.TabPage
|
|
||||||
Friend WithEvents Button2 As System.Windows.Forms.Button
|
|
||||||
Friend WithEvents txtScanFolderWatch As System.Windows.Forms.TextBox
|
|
||||||
Friend WithEvents Label8 As System.Windows.Forms.Label
|
|
||||||
Friend WithEvents btnstartstop2 As System.Windows.Forms.Button
|
|
||||||
Friend WithEvents Label9 As System.Windows.Forms.Label
|
|
||||||
Friend WithEvents DataGridView1 As System.Windows.Forms.DataGridView
|
|
||||||
Friend WithEvents btnSaveExclusionFiles As System.Windows.Forms.Button
|
|
||||||
Friend WithEvents GroupBox4 As System.Windows.Forms.GroupBox
|
Friend WithEvents GroupBox4 As System.Windows.Forms.GroupBox
|
||||||
Friend WithEvents Button3 As System.Windows.Forms.Button
|
Friend WithEvents Button3 As System.Windows.Forms.Button
|
||||||
Friend WithEvents cmbLanguage As System.Windows.Forms.ComboBox
|
Friend WithEvents cmbLanguage As System.Windows.Forms.ComboBox
|
||||||
@@ -553,7 +466,6 @@ Partial Class frmConfig_Basic
|
|||||||
Friend WithEvents Label11 As System.Windows.Forms.Label
|
Friend WithEvents Label11 As System.Windows.Forms.Label
|
||||||
Friend WithEvents Label10 As System.Windows.Forms.Label
|
Friend WithEvents Label10 As System.Windows.Forms.Label
|
||||||
Friend WithEvents txtTask_Popup As System.Windows.Forms.TextBox
|
Friend WithEvents txtTask_Popup As System.Windows.Forms.TextBox
|
||||||
Friend WithEvents chkSubfolder As System.Windows.Forms.CheckBox
|
|
||||||
Friend WithEvents TabPage4 As System.Windows.Forms.TabPage
|
Friend WithEvents TabPage4 As System.Windows.Forms.TabPage
|
||||||
Friend WithEvents btncheckWDFolderexists As System.Windows.Forms.Button
|
Friend WithEvents btncheckWDFolderexists As System.Windows.Forms.Button
|
||||||
Friend WithEvents txtwdFolder As System.Windows.Forms.TextBox
|
Friend WithEvents txtwdFolder As System.Windows.Forms.TextBox
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -214,140 +214,14 @@ Public Class frmConfig_Basic
|
|||||||
Case 1
|
Case 1
|
||||||
cmbLanguage.SelectedIndex = cmbLanguage.FindStringExact(USER_LANGUAGE)
|
cmbLanguage.SelectedIndex = cmbLanguage.FindStringExact(USER_LANGUAGE)
|
||||||
CheckBox_ForceTemporaryMode.Checked = CONFIG.Config.Viewer_ForceTemporaryMode
|
CheckBox_ForceTemporaryMode.Checked = CONFIG.Config.Viewer_ForceTemporaryMode
|
||||||
Case 2
|
|
||||||
Dim DTSCAN_folderwatch As Data.DataTable = MYDB_ECM.GetDatatable("SELECT FOLDER_PATH,SUBDIRECTORIES FROM TBPMO_FOLDERWATCH_USER WHERE FOLDER_TYPE = 'SCAN' AND USER_ID = " & USER_GUID)
|
|
||||||
If Not DTSCAN_folderwatch Is Nothing Then
|
|
||||||
If DTSCAN_folderwatch.Rows.Count = 1 Then
|
|
||||||
CURRENT_SCAN_FOLDERWATCH = DTSCAN_folderwatch.Rows(0).Item(0)
|
|
||||||
CURRENT_SCAN_FOLDERWATCH_SD = DTSCAN_folderwatch.Rows(0).Item(1)
|
|
||||||
End If
|
|
||||||
|
|
||||||
End If
|
|
||||||
Me.txtScanFolderWatch.Text = CURRENT_SCAN_FOLDERWATCH
|
|
||||||
|
|
||||||
If Not ClassFolderWatcher.FolderWatcher_SCAN Is Nothing Then
|
|
||||||
If ClassFolderWatcher.FolderWatcher_SCAN.EnableRaisingEvents = True Then
|
|
||||||
'If USER_LANGUAGE = "de-DE" Then
|
|
||||||
btnstartstop2.Text = "Überwachung stoppen"
|
|
||||||
'Else
|
|
||||||
' btnstartstop2.Text = "Stop hotfolder"
|
|
||||||
'End If
|
|
||||||
|
|
||||||
btnstartstop2.Image = My.Resources.bell_delete
|
|
||||||
Else
|
|
||||||
' If USER_LANGUAGE = "de-DE" Then
|
|
||||||
btnstartstop2.Text = "Überwachung starten"
|
|
||||||
'Else
|
|
||||||
'btnstartstop2.Text = "Stop hotfolder"
|
|
||||||
'End If
|
|
||||||
|
|
||||||
btnstartstop2.Image = My.Resources.bell_go
|
|
||||||
End If
|
|
||||||
Else
|
|
||||||
' If USER_LANGUAGE = "de-DE" Then
|
|
||||||
btnstartstop2.Text = "Überwachung starten"
|
|
||||||
'Else
|
|
||||||
' btnstartstop2.Text = "Stop hotfolder"
|
|
||||||
'End If
|
|
||||||
|
|
||||||
btnstartstop2.Image = My.Resources.bell_go
|
|
||||||
End If
|
|
||||||
Me.DataGridView1.DataSource = DTEXCLUDE_FILES
|
|
||||||
|
|
||||||
End Select
|
End Select
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
|
|
||||||
Dim fbdialog As New FolderBrowserDialog
|
|
||||||
If txtScanFolderWatch.Text <> "" Then
|
|
||||||
fbdialog.SelectedPath = txtScanFolderWatch.Text
|
|
||||||
End If
|
|
||||||
If fbdialog.ShowDialog() = DialogResult.OK Then
|
|
||||||
CheckScanFolder(fbdialog.SelectedPath, chkSubfolder.Checked)
|
|
||||||
End If
|
|
||||||
End Sub
|
|
||||||
Sub CheckScanFolder(mypath As String, SUBDIRECTORIES As Boolean)
|
|
||||||
Try
|
|
||||||
If mypath <> "" Then
|
|
||||||
Try
|
|
||||||
If (Not System.IO.Directory.Exists(mypath)) Then
|
|
||||||
System.IO.Directory.CreateDirectory(mypath)
|
|
||||||
End If
|
|
||||||
Catch ex As Exception
|
|
||||||
LOGGER.Warn("Fehler beim Erstellen des Folderwatchordners: " & mypath)
|
|
||||||
LOGGER.Warn("" & ex.Message)
|
|
||||||
MsgBox("Error in creating Hotfolder: " & mypath & vbNewLine & "Please check the rights!" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
|
||||||
Exit Sub
|
|
||||||
End Try
|
|
||||||
End If
|
|
||||||
|
|
||||||
Dim _SUBDIRECTORIES
|
|
||||||
If SUBDIRECTORIES = False Then
|
|
||||||
_SUBDIRECTORIES = 0
|
|
||||||
Else
|
|
||||||
_SUBDIRECTORIES = 1
|
|
||||||
End If
|
|
||||||
|
|
||||||
Dim folderwatch = MYDB_ECM.GetScalarValue("SELECT GUID FROM TBPMO_FOLDERWATCH_USER WHERE USER_ID = " & USER_GUID & " AND FOLDER_TYPE = 'SCAN'")
|
|
||||||
Dim oSql As String
|
|
||||||
If folderwatch Is Nothing And mypath <> "" Then
|
|
||||||
oSql = "INSERT INTO TBPMO_FOLDERWATCH_USER (USER_ID, FOLDER_PATH, FOLDER_TYPE,SUBDIRECTORIES, ADDED_WHO) VALUES (" & USER_GUID & ",'" & mypath & "','SCAN', " & _SUBDIRECTORIES & ",'" & USER_USERNAME & "')"
|
|
||||||
Else
|
|
||||||
oSql = "UPDATE TBPMO_FOLDERWATCH_USER SET FOLDER_PATH = '" & mypath & "', SUBDIRECTORIES = " & _SUBDIRECTORIES & ", CHANGED_WHO = '" & USER_USERNAME & "' where GUID = " & folderwatch
|
|
||||||
End If
|
|
||||||
If MYDB_ECM.ExecuteNonQuery(oSql) Then
|
|
||||||
Dim DT As Data.DataTable = MYDB_ECM.GetDatatable("SELECT FOLDER_PATH, SUBDIRECTORIES FROM TBPMO_FOLDERWATCH_USER WHERE USER_ID = " & USER_GUID & " AND FOLDER_TYPE = 'SCAN'")
|
|
||||||
|
|
||||||
CURRENT_SCAN_FOLDERWATCH = DT.Rows(0).Item(0)
|
|
||||||
CURRENT_SCAN_FOLDERWATCH_SD = DT.Rows(0).Item(1)
|
|
||||||
Me.txtScanFolderWatch.Text = CURRENT_SCAN_FOLDERWATCH
|
|
||||||
Me.chkSubfolder.Checked = CURRENT_SCAN_FOLDERWATCH_SD
|
|
||||||
End If
|
|
||||||
If FWSCAN_started = True Then
|
|
||||||
ClassFolderWatcher.Restart_FolderWatchSCAN()
|
|
||||||
End If
|
|
||||||
Catch ex As Exception
|
|
||||||
MsgBox(ex.Message, MsgBoxStyle.Critical, "Error in CheckFolder:")
|
|
||||||
End Try
|
|
||||||
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Private Sub btnSaveExclusionFiles_Click(sender As Object, e As EventArgs) Handles btnSaveExclusionFiles.Click
|
|
||||||
Try
|
|
||||||
DTEXCLUDE_FILES.AcceptChanges()
|
|
||||||
DTEXCLUDE_FILES.WriteXml(PATH_FileExclusions)
|
|
||||||
MsgBox("Changes saved.", MsgBoxStyle.Information)
|
|
||||||
Catch ex As Exception
|
|
||||||
MsgBox(ex.Message, MsgBoxStyle.Critical, "Error in Saving Exclusion files:")
|
|
||||||
End Try
|
|
||||||
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Private Sub btnstartstop2_Click(sender As Object, e As EventArgs) Handles btnstartstop2.Click
|
|
||||||
If CURRENT_SCAN_FOLDERWATCH <> "" Then
|
|
||||||
ClassFolderWatcher.DELETE_SCAN_File_User()
|
|
||||||
CheckScanFolder(CURRENT_SCAN_FOLDERWATCH, chkSubfolder.Checked)
|
|
||||||
CheckFWSCAN_State()
|
|
||||||
End If
|
|
||||||
End Sub
|
|
||||||
Sub CheckFWSCAN_State()
|
|
||||||
Select Case ClassFolderWatcher.StartStop_FolderWatchSCAN()
|
|
||||||
Case 1
|
|
||||||
'If USER_LANGUAGE = "de-DE" Then
|
|
||||||
btnstartstop2.Text = "Überwachung stoppen"
|
|
||||||
' Else
|
|
||||||
'btnstartstop2.Text = "Stop Hotfolder"
|
|
||||||
' End If
|
|
||||||
btnstartstop2.Image = My.Resources.bell_delete
|
|
||||||
Case 0
|
|
||||||
' If USER_LANGUAGE = "de-DE" Then
|
|
||||||
btnstartstop2.Text = "Überwachung starten"
|
|
||||||
'Else
|
|
||||||
' btnstartstop2.Text = "Start Hotfolder"
|
|
||||||
'End If
|
|
||||||
btnstartstop2.Image = My.Resources.bell_go
|
|
||||||
End Select
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
|
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
|
||||||
Dim result As MsgBoxResult
|
Dim result As MsgBoxResult
|
||||||
@@ -415,13 +289,6 @@ Public Class frmConfig_Basic
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
Private Sub txtScanFolderWatch_TextChanged(sender As Object, e As EventArgs) Handles txtScanFolderWatch.TextChanged
|
|
||||||
CheckScanFolder(txtScanFolderWatch.Text, chkSubfolder.Checked)
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Private Sub chkSubfolder_CheckedChanged(sender As Object, e As EventArgs) Handles chkSubfolder.CheckedChanged
|
|
||||||
CheckScanFolder(txtScanFolderWatch.Text, chkSubfolder.Checked)
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Private Sub txtPasswort_TextChanged(sender As Object, e As EventArgs) Handles txtPasswort.TextChanged
|
Private Sub txtPasswort_TextChanged(sender As Object, e As EventArgs) Handles txtPasswort.TextChanged
|
||||||
|
|
||||||
@@ -550,4 +417,5 @@ Public Class frmConfig_Basic
|
|||||||
CONFIG.Config.Viewer_ForceTemporaryMode = CheckBox_ForceTemporaryMode.Checked
|
CONFIG.Config.Viewer_ForceTemporaryMode = CheckBox_ForceTemporaryMode.Checked
|
||||||
CONFIG.Save()
|
CONFIG.Save()
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
End Class
|
End Class
|
||||||
@@ -64,9 +64,9 @@ Public Class frmConstructor_Main
|
|||||||
Private DT_TREEVIEW_NODES_ALL As DataTable
|
Private DT_TREEVIEW_NODES_ALL As DataTable
|
||||||
Private DT_TREEVIEW_NODES_FIRST As DataTable
|
Private DT_TREEVIEW_NODES_FIRST As DataTable
|
||||||
Private DT_TREEVIEW_NODES_DEVEXPRESS As DataTable
|
Private DT_TREEVIEW_NODES_DEVEXPRESS As DataTable
|
||||||
|
|
||||||
Private DT_TREEVIEW_CONFIGURATION As DataTable
|
Private DT_TREEVIEW_CONFIGURATION As DataTable
|
||||||
Private DT_CONTROLS_ENTITY As DataTable
|
Private DT_CONTROLS_ENTITY As DataTable
|
||||||
|
Private DT_CONFIGURABLE_NODES As DataTable
|
||||||
|
|
||||||
|
|
||||||
Private DT_ADDING_USERS As DataTable
|
Private DT_ADDING_USERS As DataTable
|
||||||
@@ -268,7 +268,7 @@ Public Class frmConstructor_Main
|
|||||||
Private Sub Load_Configurable_Nodes()
|
Private Sub Load_Configurable_Nodes()
|
||||||
Try
|
Try
|
||||||
Dim oSql = String.Format("SELECT * FROM TBPMO_STRUCTURE_NODES_CONFIGURATION where TYPE_NODE = 1000 AND ENTITY_ID IN (SELECT FORM_ID FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = {0})", CONSTRUCTORID)
|
Dim oSql = String.Format("SELECT * FROM TBPMO_STRUCTURE_NODES_CONFIGURATION where TYPE_NODE = 1000 AND ENTITY_ID IN (SELECT FORM_ID FROM VWPMO_CONSTRUCTOR_FORMS WHERE CONSTRUCT_ID = {0})", CONSTRUCTORID)
|
||||||
NODE_CONFIGURABLE_NODES_DT = MYDB_ECM.GetDatatable(oSql)
|
DT_CONFIGURABLE_NODES = MYDB_ECM.GetDatatable(oSql)
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
ClassHelper.MSGBOX_Handler("ERROR", "Unexpected Error", ex.Message, "Error in Load_Configurable_Nodes")
|
ClassHelper.MSGBOX_Handler("ERROR", "Unexpected Error", ex.Message, "Error in Load_Configurable_Nodes")
|
||||||
End Try
|
End Try
|
||||||
@@ -1338,7 +1338,7 @@ Public Class frmConstructor_Main
|
|||||||
If SelectedNode IsNot Nothing Then
|
If SelectedNode IsNot Nothing Then
|
||||||
Update_Status_Label(True, SelectedNode.Tag)
|
Update_Status_Label(True, SelectedNode.Tag)
|
||||||
|
|
||||||
ClassNodeNavigation.Check_NODE_CONFIG_ID(ENTITY_ID, SelectedNode)
|
ClassNodeNavigation.Check_NODE_CONFIG_ID(ENTITY_ID, SelectedNode, DT_CONFIGURABLE_NODES)
|
||||||
|
|
||||||
If SelectedNode.Tag.ToString.Contains("RECORD-ID") Then
|
If SelectedNode.Tag.ToString.Contains("RECORD-ID") Then
|
||||||
Dim Record = ClassNodeNavigation.Return_RECORD_forTag(SelectedNode.Tag)
|
Dim Record = ClassNodeNavigation.Return_RECORD_forTag(SelectedNode.Tag)
|
||||||
@@ -1404,7 +1404,7 @@ Public Class frmConstructor_Main
|
|||||||
'Else
|
'Else
|
||||||
Try
|
Try
|
||||||
LOGGER.Debug($"NODES: DT_TREEVIEW_NODES_ALL-Count: {DT_TREEVIEW_NODES_ALL.Rows.Count}")
|
LOGGER.Debug($"NODES: DT_TREEVIEW_NODES_ALL-Count: {DT_TREEVIEW_NODES_ALL.Rows.Count}")
|
||||||
Dim async As New ClassAsyncNodeBuild(DT_TREEVIEW_NODES_ALL, TREEVIEW_IMAGELIST)
|
Dim async As New ClassAsyncNodeBuild(DT_TREEVIEW_NODES_ALL, TREEVIEW_IMAGELIST, DT_CONFIGURABLE_NODES)
|
||||||
async.bw.RunWorkerAsync()
|
async.bw.RunWorkerAsync()
|
||||||
While async.bw.IsBusy
|
While async.bw.IsBusy
|
||||||
Application.DoEvents()
|
Application.DoEvents()
|
||||||
@@ -1418,7 +1418,7 @@ Public Class frmConstructor_Main
|
|||||||
MyTreeview = async.newTreeview
|
MyTreeview = async.newTreeview
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
ClassHelper.MSGBOX_Handler("ERROR", "Unexpected Error in Async NodeBuild", ex.Message & vbNewLine & "orgFLOW will try an alternative method!", ex.StackTrace)
|
ClassHelper.MSGBOX_Handler("ERROR", "Unexpected Error in Async NodeBuild", ex.Message & vbNewLine & "orgFLOW will try an alternative method!", ex.StackTrace)
|
||||||
MyTreeview = ClassNodeNavigation.CreateTreeViewNodes(DT_TREEVIEW_NODES_ALL, TREEVIEW_IMAGELIST)
|
MyTreeview = ClassNodeNavigation.CreateTreeViewNodes(DT_TREEVIEW_NODES_ALL, TREEVIEW_IMAGELIST, DT_CONFIGURABLE_NODES)
|
||||||
End Try
|
End Try
|
||||||
|
|
||||||
|
|
||||||
@@ -6647,7 +6647,7 @@ WHERE T2.SHORT_NAME = 'ADDI' AND T.EMAIL IS NOT NULL order by USERNAME")
|
|||||||
expression = "ENTITY_ID = " & ENTITY_ID & " AND GUID = " & CURRENT_NODE_CONFIGURABLE_ID
|
expression = "ENTITY_ID = " & ENTITY_ID & " AND GUID = " & CURRENT_NODE_CONFIGURABLE_ID
|
||||||
Dim foundRowsLevel0() As DataRow
|
Dim foundRowsLevel0() As DataRow
|
||||||
' Use the Select method to find all rows matching the filter.
|
' Use the Select method to find all rows matching the filter.
|
||||||
foundRowsLevel0 = NODE_CONFIGURABLE_NODES_DT.Select(expression)
|
foundRowsLevel0 = DT_CONFIGURABLE_NODES.Select(expression)
|
||||||
Dim i As Integer
|
Dim i As Integer
|
||||||
Dim RECORD_CREATE As Boolean
|
Dim RECORD_CREATE As Boolean
|
||||||
' For each row create a Node
|
' For each row create a Node
|
||||||
@@ -6700,7 +6700,7 @@ WHERE T2.SHORT_NAME = 'ADDI' AND T.EMAIL IS NOT NULL order by USERNAME")
|
|||||||
|
|
||||||
Dim NEW_GUID = ClassNodeNavigation.CreateNodeProcedure(NEWRECORD, CURRENT_NODE_CONFIGURABLE_ID, tsmINewText.Text, "CONFIG " & NEWRECORD & "-" & CURRENT_NODE_CONFIGURABLE_ID, PARENT_ID, USER_USERNAME)
|
Dim NEW_GUID = ClassNodeNavigation.CreateNodeProcedure(NEWRECORD, CURRENT_NODE_CONFIGURABLE_ID, tsmINewText.Text, "CONFIG " & NEWRECORD & "-" & CURRENT_NODE_CONFIGURABLE_ID, PARENT_ID, USER_USERNAME)
|
||||||
If NEW_GUID > 0 Then
|
If NEW_GUID > 0 Then
|
||||||
ClassNodeNavigation.Check_NODE_CONFIG_ID(ENTITY_ID, Nothing)
|
ClassNodeNavigation.Check_NODE_CONFIG_ID(ENTITY_ID, Nothing, DT_CONFIGURABLE_NODES)
|
||||||
NEWNODE.Tag = ClassNodeNavigation.CreateNODE_TAG(ENTITY_ID, NEW_GUID, NEWRECORD, CURRENT_NODE_CONFIGURABLE_ID)
|
NEWNODE.Tag = ClassNodeNavigation.CreateNODE_TAG(ENTITY_ID, NEW_GUID, NEWRECORD, CURRENT_NODE_CONFIGURABLE_ID)
|
||||||
|
|
||||||
If where = "HERE" Then
|
If where = "HERE" Then
|
||||||
@@ -6952,7 +6952,6 @@ WHERE T2.SHORT_NAME = 'ADDI' AND T.EMAIL IS NOT NULL order by USERNAME")
|
|||||||
End If
|
End If
|
||||||
Next
|
Next
|
||||||
CURRENT_TBPMO_FILES_USER.AcceptChanges()
|
CURRENT_TBPMO_FILES_USER.AcceptChanges()
|
||||||
ClassFolderWatcher.Check_Scan_Files()
|
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
ClassHelper.MSGBOX_Handler("ERROR", "", "Unexpected Error in clearing User-Files: " & ex.Message, ex.StackTrace)
|
ClassHelper.MSGBOX_Handler("ERROR", "", "Unexpected Error in clearing User-Files: " & ex.Message, ex.StackTrace)
|
||||||
Finally
|
Finally
|
||||||
|
|||||||
@@ -99,7 +99,7 @@ Public Class frmDocSearchResult
|
|||||||
Refresh_DocID()
|
Refresh_DocID()
|
||||||
If SplitContainerControl1.Collapsed = False Then
|
If SplitContainerControl1.Collapsed = False Then
|
||||||
Dim OFilePath = ClassHelper.FORMAT_WM_PATH(SelectedFULL_FILEPATH)
|
Dim OFilePath = ClassHelper.FORMAT_WM_PATH(SelectedFULL_FILEPATH)
|
||||||
DocumentViewer1.LoadFile(OFilePath)
|
DocumentViewer1.LoadFile_FromPath(OFilePath)
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
Sub Refresh_DocID()
|
Sub Refresh_DocID()
|
||||||
|
|||||||
@@ -156,12 +156,6 @@
|
|||||||
<metadata name="ToolStripRecords.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
<metadata name="ToolStripRecords.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
<value>17, 17</value>
|
<value>17, 17</value>
|
||||||
</metadata>
|
</metadata>
|
||||||
<data name="tslblRecordsResult.Size" type="System.Drawing.Size, System.Drawing">
|
|
||||||
<value>0, 22</value>
|
|
||||||
</data>
|
|
||||||
<data name="ToolStripSeparator1.Size" type="System.Drawing.Size, System.Drawing">
|
|
||||||
<value>6, 25</value>
|
|
||||||
</data>
|
|
||||||
<data name="ToolStripRecords.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="ToolStripRecords.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>0, 0</value>
|
<value>0, 0</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -234,12 +228,6 @@
|
|||||||
<data name="ToolStripDokumente.Font" type="System.Drawing.Font, System.Drawing">
|
<data name="ToolStripDokumente.Font" type="System.Drawing.Font, System.Drawing">
|
||||||
<value>Tahoma, 9pt</value>
|
<value>Tahoma, 9pt</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="tslblDocView.Font" type="System.Drawing.Font, System.Drawing">
|
|
||||||
<value>Segoe UI, 8.25pt, style=Bold, Italic</value>
|
|
||||||
</data>
|
|
||||||
<data name="tslblDocView.Size" type="System.Drawing.Size, System.Drawing">
|
|
||||||
<value>0, 22</value>
|
|
||||||
</data>
|
|
||||||
<data name="ToolStripDokumente.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="ToolStripDokumente.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>0, 0</value>
|
<value>0, 0</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -300,6 +288,18 @@
|
|||||||
<data name=">>SplitContainerMain.ZOrder" xml:space="preserve">
|
<data name=">>SplitContainerMain.ZOrder" xml:space="preserve">
|
||||||
<value>0</value>
|
<value>0</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="tslblRecordsResult.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>0, 22</value>
|
||||||
|
</data>
|
||||||
|
<data name="ToolStripSeparator1.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>6, 25</value>
|
||||||
|
</data>
|
||||||
|
<data name="tslblDocView.Font" type="System.Drawing.Font, System.Drawing">
|
||||||
|
<value>Segoe UI, 8.25pt, style=Bold, Italic</value>
|
||||||
|
</data>
|
||||||
|
<data name="tslblDocView.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>0, 22</value>
|
||||||
|
</data>
|
||||||
<data name="Label1.AutoSize" type="System.Boolean, mscorlib">
|
<data name="Label1.AutoSize" type="System.Boolean, mscorlib">
|
||||||
<value>True</value>
|
<value>True</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -738,21 +738,6 @@
|
|||||||
<data name="RibbonControl1.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="RibbonControl1.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>0, 0</value>
|
<value>0, 0</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="RibbonPageGroup1.Text" xml:space="preserve">
|
|
||||||
<value>Aktionen</value>
|
|
||||||
</data>
|
|
||||||
<data name="RibbonPageGroupRecords.Text" xml:space="preserve">
|
|
||||||
<value>Datensatz</value>
|
|
||||||
</data>
|
|
||||||
<data name="RibbonPageGroupFiles.Text" xml:space="preserve">
|
|
||||||
<value>Datei(en)</value>
|
|
||||||
</data>
|
|
||||||
<data name="RibbonPageGroupExcel.Text" xml:space="preserve">
|
|
||||||
<value>Funktionen Tabelle</value>
|
|
||||||
</data>
|
|
||||||
<data name="RibbonPageGroup3.Text" xml:space="preserve">
|
|
||||||
<value>Suchvariante</value>
|
|
||||||
</data>
|
|
||||||
<data name="RibbonPage1.Text" xml:space="preserve">
|
<data name="RibbonPage1.Text" xml:space="preserve">
|
||||||
<value>Globale Suche</value>
|
<value>Globale Suche</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -789,6 +774,21 @@
|
|||||||
<data name=">>RibbonControl1.ZOrder" xml:space="preserve">
|
<data name=">>RibbonControl1.ZOrder" xml:space="preserve">
|
||||||
<value>3</value>
|
<value>3</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="RibbonPageGroup1.Text" xml:space="preserve">
|
||||||
|
<value>Aktionen</value>
|
||||||
|
</data>
|
||||||
|
<data name="RibbonPageGroupRecords.Text" xml:space="preserve">
|
||||||
|
<value>Datensatz</value>
|
||||||
|
</data>
|
||||||
|
<data name="RibbonPageGroupFiles.Text" xml:space="preserve">
|
||||||
|
<value>Datei(en)</value>
|
||||||
|
</data>
|
||||||
|
<data name="RibbonPageGroupExcel.Text" xml:space="preserve">
|
||||||
|
<value>Funktionen Tabelle</value>
|
||||||
|
</data>
|
||||||
|
<data name="RibbonPageGroup3.Text" xml:space="preserve">
|
||||||
|
<value>Suchvariante</value>
|
||||||
|
</data>
|
||||||
<data name="RibbonPage2.Text" xml:space="preserve">
|
<data name="RibbonPage2.Text" xml:space="preserve">
|
||||||
<value>RibbonPage2</value>
|
<value>RibbonPage2</value>
|
||||||
</data>
|
</data>
|
||||||
|
|||||||
@@ -121,7 +121,7 @@
|
|||||||
<value>17, 17</value>
|
<value>17, 17</value>
|
||||||
</metadata>
|
</metadata>
|
||||||
<metadata name="cmsSystray.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
<metadata name="cmsSystray.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
<value>17, 56</value>
|
<value>1483, 17</value>
|
||||||
</metadata>
|
</metadata>
|
||||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
<data name="ADDIBeendenToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="ADDIBeendenToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
@@ -1999,10 +1999,10 @@
|
|||||||
<value>StatusVersion</value>
|
<value>StatusVersion</value>
|
||||||
</data>
|
</data>
|
||||||
<metadata name="TimerInformation.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
<metadata name="TimerInformation.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
<value>129, 56</value>
|
<value>1596, 17</value>
|
||||||
</metadata>
|
</metadata>
|
||||||
<metadata name="ContextMenuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
<metadata name="ContextMenuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
<value>275, 56</value>
|
<value>17, 54</value>
|
||||||
</metadata>
|
</metadata>
|
||||||
<data name="ContextMenuStrip1.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="ContextMenuStrip1.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>61, 4</value>
|
<value>61, 4</value>
|
||||||
@@ -2014,7 +2014,7 @@
|
|||||||
<value>System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
<value>System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
</data>
|
</data>
|
||||||
<metadata name="Timer5mins.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
<metadata name="Timer5mins.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
<value>432, 56</value>
|
<value>173, 54</value>
|
||||||
</metadata>
|
</metadata>
|
||||||
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||||
<value>True</value>
|
<value>True</value>
|
||||||
|
|||||||
@@ -11,8 +11,6 @@ Imports Microsoft.Office.Core
|
|||||||
|
|
||||||
Public Class frmMain
|
Public Class frmMain
|
||||||
Dim strIPAddress As String
|
Dim strIPAddress As String
|
||||||
|
|
||||||
Public Shared TIMER_SCAN As New System.Windows.Forms.Timer
|
|
||||||
Public TIMER_INACTIVITY As ClassInactivity
|
Public TIMER_INACTIVITY As ClassInactivity
|
||||||
|
|
||||||
Public Sub OpenRibbon()
|
Public Sub OpenRibbon()
|
||||||
@@ -23,47 +21,6 @@ Public Class frmMain
|
|||||||
ribbonMain.Minimized = True
|
ribbonMain.Minimized = True
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Shared Sub Scan_TickHandler(sender As Object, e As EventArgs)
|
|
||||||
Try
|
|
||||||
If ClassFolderWatcher.NEW_FILES = False Then Exit Sub
|
|
||||||
ClassFolderWatcher.Check_Scan_Files()
|
|
||||||
Dim open As Boolean = False
|
|
||||||
If Not IsNothing(CURRENT_SCAN_TABLE) Then
|
|
||||||
If CURRENT_SCAN_TABLE.Rows.Count > 0 Then
|
|
||||||
For Each form In My.Application.OpenForms
|
|
||||||
If (form.name = frmScanFiles.Name) Then
|
|
||||||
'form is loaded so can do work
|
|
||||||
'if you need to check wether it is actually visible
|
|
||||||
If form.Visible Then
|
|
||||||
open = True
|
|
||||||
'do work when visible
|
|
||||||
If My.Settings.User_InBoxScan_NotinFront = False Then
|
|
||||||
frmScanFiles.BringToFront()
|
|
||||||
End If
|
|
||||||
Else
|
|
||||||
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
Next
|
|
||||||
If open = False Then
|
|
||||||
Dim frm As New frmScanFiles
|
|
||||||
frm = frmScanFiles.Instance()
|
|
||||||
frm.Show()
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
If CURRENT_SCAN_TABLE.Rows.Count = 0 And open = True Then
|
|
||||||
frmScanFiles.Close()
|
|
||||||
End If
|
|
||||||
ClassFolderWatcher.NEW_FILES = False
|
|
||||||
End If
|
|
||||||
Catch ex As Exception
|
|
||||||
MsgBox("Unexpected Error in Scan_TickHandler:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
|
||||||
TIMER_SCAN.Enabled = False
|
|
||||||
End Try
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Private Sub frmMain_Load(sender As Object, e As EventArgs) Handles Me.Load
|
Private Sub frmMain_Load(sender As Object, e As EventArgs) Handles Me.Load
|
||||||
' Referenz zu frmMain speichern
|
' Referenz zu frmMain speichern
|
||||||
MAIN_FORM = Me
|
MAIN_FORM = Me
|
||||||
@@ -102,7 +59,7 @@ Public Class frmMain
|
|||||||
LabelLanguage.Caption = "Language: " & USER_LANGUAGE
|
LabelLanguage.Caption = "Language: " & USER_LANGUAGE
|
||||||
Load_Connection_Dep_Data()
|
Load_Connection_Dep_Data()
|
||||||
|
|
||||||
Display_ConString
|
Display_ConString()
|
||||||
|
|
||||||
'Wenn Argumente übergeben wurden, wird Formular geladen und zu record gesprungen
|
'Wenn Argumente übergeben wurden, wird Formular geladen und zu record gesprungen
|
||||||
ClassJumpRecord.ParseArgs()
|
ClassJumpRecord.ParseArgs()
|
||||||
@@ -164,31 +121,6 @@ Public Class frmMain
|
|||||||
' End Try
|
' End Try
|
||||||
|
|
||||||
'End Sub
|
'End Sub
|
||||||
Public Sub RUN_TIMER()
|
|
||||||
Try
|
|
||||||
If TIMER_SCAN.Enabled = False And CURRENT_SCAN_FOLDERWATCH <> "" And FWSCAN_started = True Then
|
|
||||||
If System.IO.Directory.Exists(CURRENT_SCAN_FOLDERWATCH) = False Then
|
|
||||||
LOGGER.Warn("SCAN PATH '" & CURRENT_SCAN_FOLDERWATCH & "'not accessable!")
|
|
||||||
Exit Sub
|
|
||||||
End If
|
|
||||||
TIMER_SCAN.Interval = 30000
|
|
||||||
TIMER_SCAN.Enabled = True
|
|
||||||
AddHandler TIMER_SCAN.Tick, AddressOf Scan_TickHandler
|
|
||||||
Else
|
|
||||||
If TIMER_SCAN.Enabled = True And CURRENT_SCAN_FOLDERWATCH <> "" And FWSCAN_started = True Then
|
|
||||||
TIMER_SCAN.Enabled = False
|
|
||||||
|
|
||||||
itemScanInbox.Visibility = BarItemVisibility.Always
|
|
||||||
RUN_TIMER()
|
|
||||||
Else
|
|
||||||
TIMER_SCAN.Enabled = False
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
Catch ex As Exception
|
|
||||||
MsgBox("Unexpected Error in RUN_TIMER:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
|
||||||
End Try
|
|
||||||
|
|
||||||
End Sub
|
|
||||||
Sub Load_Connection_Dep_Data()
|
Sub Load_Connection_Dep_Data()
|
||||||
SetBackground()
|
SetBackground()
|
||||||
If ERROR_INIT = "NONE" Then
|
If ERROR_INIT = "NONE" Then
|
||||||
@@ -571,8 +503,6 @@ Public Class frmMain
|
|||||||
TimerTasks.Start()
|
TimerTasks.Start()
|
||||||
'Refresh_TaskReminder()
|
'Refresh_TaskReminder()
|
||||||
End If
|
End If
|
||||||
|
|
||||||
RUN_TIMER()
|
|
||||||
Timer5mins.Start()
|
Timer5mins.Start()
|
||||||
|
|
||||||
If Sett_ConstructorStart <> 0 Then
|
If Sett_ConstructorStart <> 0 Then
|
||||||
@@ -746,9 +676,6 @@ Public Class frmMain
|
|||||||
TimerTasks.Enabled = False
|
TimerTasks.Enabled = False
|
||||||
TimerTasks.Stop()
|
TimerTasks.Stop()
|
||||||
End If
|
End If
|
||||||
'Proxy_Server_Controls()
|
|
||||||
RUN_TIMER()
|
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
Private Sub BarButtonItem3_ItemClick(sender As Object, e As ItemClickEventArgs) Handles BarButtonItem3.ItemClick
|
Private Sub BarButtonItem3_ItemClick(sender As Object, e As ItemClickEventArgs) Handles BarButtonItem3.ItemClick
|
||||||
Cursor = Cursors.WaitCursor
|
Cursor = Cursors.WaitCursor
|
||||||
|
|||||||
@@ -46,15 +46,12 @@ Partial Class frmNodeNavigation
|
|||||||
Me.tsitmDMSReadOnly = New DevExpress.XtraBars.BarStaticItem()
|
Me.tsitmDMSReadOnly = New DevExpress.XtraBars.BarStaticItem()
|
||||||
Me.bsiNotification = New DevExpress.XtraBars.BarStaticItem()
|
Me.bsiNotification = New DevExpress.XtraBars.BarStaticItem()
|
||||||
Me.bsiDocIDChanged = New DevExpress.XtraBars.BarStaticItem()
|
Me.bsiDocIDChanged = New DevExpress.XtraBars.BarStaticItem()
|
||||||
Me.BarEditItem1 = New DevExpress.XtraBars.BarEditItem()
|
|
||||||
Me.RepositoryItemTextEdit1 = New DevExpress.XtraEditors.Repository.RepositoryItemTextEdit()
|
|
||||||
Me.FindNode = New DevExpress.XtraBars.BarButtonItem()
|
|
||||||
Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage()
|
Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage()
|
||||||
Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
|
Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
|
||||||
Me.RPGNodes = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
|
Me.RPGNodes = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
|
||||||
Me.RibbonPageGroupRecord = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
|
Me.RibbonPageGroupRecord = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
|
||||||
Me.RibbonPageGroupDocResult = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
|
Me.RibbonPageGroupDocResult = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
|
||||||
Me.RibbonPageGroup2 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
|
Me.RepositoryItemTextEdit1 = New DevExpress.XtraEditors.Repository.RepositoryItemTextEdit()
|
||||||
Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar()
|
Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar()
|
||||||
Me.RibbonPage2 = New DevExpress.XtraBars.Ribbon.RibbonPage()
|
Me.RibbonPage2 = New DevExpress.XtraBars.Ribbon.RibbonPage()
|
||||||
Me.SplitContainerTreeList = New DevExpress.XtraEditors.SplitContainerControl()
|
Me.SplitContainerTreeList = New DevExpress.XtraEditors.SplitContainerControl()
|
||||||
@@ -169,7 +166,7 @@ Partial Class frmNodeNavigation
|
|||||||
'ribbonNodeNavigation
|
'ribbonNodeNavigation
|
||||||
'
|
'
|
||||||
Me.ribbonNodeNavigation.ExpandCollapseItem.Id = 0
|
Me.ribbonNodeNavigation.ExpandCollapseItem.Id = 0
|
||||||
Me.ribbonNodeNavigation.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.ribbonNodeNavigation.ExpandCollapseItem, Me.ribbonNodeNavigation.SearchEditItem, Me.bbtnitmRecEdit, Me.bsiInfo, Me.bbtnitmRecSave, Me.bsiDocID, Me.bsitmRecordID, Me.bbtnitmDocResultExport, Me.bbtnitmDocResultLayoutSave, Me.bbtnitmDocResultLayoutReset, Me.bbtnitmDocResultRefresh, Me.BarStaticItemLocked, Me.bsitmtInfoDoc, Me.BarButtonItem1, Me.bbtnitmReloadView, Me.BbtnitmNodeReorder, Me.bbtnItm_TV_Collape_Expand, Me.checkShowPreview, Me.btnCreateNewNode, Me.tsitmDMSReadOnly, Me.bsiNotification, Me.bsiDocIDChanged, Me.BarEditItem1, Me.FindNode})
|
Me.ribbonNodeNavigation.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.ribbonNodeNavigation.ExpandCollapseItem, Me.ribbonNodeNavigation.SearchEditItem, Me.bbtnitmRecEdit, Me.bsiInfo, Me.bbtnitmRecSave, Me.bsiDocID, Me.bsitmRecordID, Me.bbtnitmDocResultExport, Me.bbtnitmDocResultLayoutSave, Me.bbtnitmDocResultLayoutReset, Me.bbtnitmDocResultRefresh, Me.BarStaticItemLocked, Me.bsitmtInfoDoc, Me.BarButtonItem1, Me.bbtnitmReloadView, Me.BbtnitmNodeReorder, Me.bbtnItm_TV_Collape_Expand, Me.checkShowPreview, Me.btnCreateNewNode, Me.tsitmDMSReadOnly, Me.bsiNotification, Me.bsiDocIDChanged})
|
||||||
Me.ribbonNodeNavigation.Location = New System.Drawing.Point(0, 0)
|
Me.ribbonNodeNavigation.Location = New System.Drawing.Point(0, 0)
|
||||||
Me.ribbonNodeNavigation.MaxItemId = 30
|
Me.ribbonNodeNavigation.MaxItemId = 30
|
||||||
Me.ribbonNodeNavigation.Name = "ribbonNodeNavigation"
|
Me.ribbonNodeNavigation.Name = "ribbonNodeNavigation"
|
||||||
@@ -336,27 +333,9 @@ Partial Class frmNodeNavigation
|
|||||||
Me.bsiDocIDChanged.Name = "bsiDocIDChanged"
|
Me.bsiDocIDChanged.Name = "bsiDocIDChanged"
|
||||||
Me.bsiDocIDChanged.Visibility = DevExpress.XtraBars.BarItemVisibility.OnlyInCustomizing
|
Me.bsiDocIDChanged.Visibility = DevExpress.XtraBars.BarItemVisibility.OnlyInCustomizing
|
||||||
'
|
'
|
||||||
'BarEditItem1
|
|
||||||
'
|
|
||||||
Me.BarEditItem1.Caption = "NodeGUID"
|
|
||||||
Me.BarEditItem1.Edit = Me.RepositoryItemTextEdit1
|
|
||||||
Me.BarEditItem1.Id = 28
|
|
||||||
Me.BarEditItem1.Name = "BarEditItem1"
|
|
||||||
'
|
|
||||||
'RepositoryItemTextEdit1
|
|
||||||
'
|
|
||||||
Me.RepositoryItemTextEdit1.AutoHeight = False
|
|
||||||
Me.RepositoryItemTextEdit1.Name = "RepositoryItemTextEdit1"
|
|
||||||
'
|
|
||||||
'FindNode
|
|
||||||
'
|
|
||||||
Me.FindNode.Caption = "BarButtonItem19"
|
|
||||||
Me.FindNode.Id = 29
|
|
||||||
Me.FindNode.Name = "FindNode"
|
|
||||||
'
|
|
||||||
'RibbonPage1
|
'RibbonPage1
|
||||||
'
|
'
|
||||||
Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1, Me.RPGNodes, Me.RibbonPageGroupRecord, Me.RibbonPageGroupDocResult, Me.RibbonPageGroup2})
|
Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1, Me.RPGNodes, Me.RibbonPageGroupRecord, Me.RibbonPageGroupDocResult})
|
||||||
Me.RibbonPage1.Name = "RibbonPage1"
|
Me.RibbonPage1.Name = "RibbonPage1"
|
||||||
Me.RibbonPage1.Text = "Node Navigation"
|
Me.RibbonPage1.Text = "Node Navigation"
|
||||||
'
|
'
|
||||||
@@ -395,12 +374,10 @@ Partial Class frmNodeNavigation
|
|||||||
Me.RibbonPageGroupDocResult.Name = "RibbonPageGroupDocResult"
|
Me.RibbonPageGroupDocResult.Name = "RibbonPageGroupDocResult"
|
||||||
Me.RibbonPageGroupDocResult.Text = "Dateien"
|
Me.RibbonPageGroupDocResult.Text = "Dateien"
|
||||||
'
|
'
|
||||||
'RibbonPageGroup2
|
'RepositoryItemTextEdit1
|
||||||
'
|
'
|
||||||
Me.RibbonPageGroup2.ItemLinks.Add(Me.BarEditItem1)
|
Me.RepositoryItemTextEdit1.AutoHeight = False
|
||||||
Me.RibbonPageGroup2.ItemLinks.Add(Me.FindNode)
|
Me.RepositoryItemTextEdit1.Name = "RepositoryItemTextEdit1"
|
||||||
Me.RibbonPageGroup2.Name = "RibbonPageGroup2"
|
|
||||||
Me.RibbonPageGroup2.Text = "RibbonPageGroup2"
|
|
||||||
'
|
'
|
||||||
'RibbonStatusBar1
|
'RibbonStatusBar1
|
||||||
'
|
'
|
||||||
@@ -1242,8 +1219,5 @@ Partial Class frmNodeNavigation
|
|||||||
Friend WithEvents DD_DMSDataSet1 As DD_DMSDataSet
|
Friend WithEvents DD_DMSDataSet1 As DD_DMSDataSet
|
||||||
Friend WithEvents bsiDocIDChanged As DevExpress.XtraBars.BarStaticItem
|
Friend WithEvents bsiDocIDChanged As DevExpress.XtraBars.BarStaticItem
|
||||||
Friend WithEvents TsmitmJumpToFilestore As ToolStripMenuItem
|
Friend WithEvents TsmitmJumpToFilestore As ToolStripMenuItem
|
||||||
Friend WithEvents BarEditItem1 As DevExpress.XtraBars.BarEditItem
|
|
||||||
Friend WithEvents RepositoryItemTextEdit1 As DevExpress.XtraEditors.Repository.RepositoryItemTextEdit
|
Friend WithEvents RepositoryItemTextEdit1 As DevExpress.XtraEditors.Repository.RepositoryItemTextEdit
|
||||||
Friend WithEvents FindNode As DevExpress.XtraBars.BarButtonItem
|
|
||||||
Friend WithEvents RibbonPageGroup2 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
|
|
||||||
End Class
|
End Class
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
454
app/DD-Record-Organizer/frmScanFiles.Designer.vb
generated
454
app/DD-Record-Organizer/frmScanFiles.Designer.vb
generated
@@ -1,454 +0,0 @@
|
|||||||
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
|
|
||||||
Partial Class frmScanFiles
|
|
||||||
Inherits System.Windows.Forms.Form
|
|
||||||
|
|
||||||
'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen.
|
|
||||||
<System.Diagnostics.DebuggerNonUserCode()> _
|
|
||||||
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
|
|
||||||
Try
|
|
||||||
If disposing AndAlso components IsNot Nothing Then
|
|
||||||
components.Dispose()
|
|
||||||
End If
|
|
||||||
Finally
|
|
||||||
MyBase.Dispose(disposing)
|
|
||||||
End Try
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'Wird vom Windows Form-Designer benötigt.
|
|
||||||
Private components As System.ComponentModel.IContainer
|
|
||||||
|
|
||||||
'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich.
|
|
||||||
'Das Bearbeiten ist mit dem Windows Form-Designer möglich.
|
|
||||||
'Das Bearbeiten mit dem Code-Editor ist nicht möglich.
|
|
||||||
<System.Diagnostics.DebuggerStepThrough()> _
|
|
||||||
Private Sub InitializeComponent()
|
|
||||||
Me.components = New System.ComponentModel.Container()
|
|
||||||
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmScanFiles))
|
|
||||||
Me.ListView1 = New System.Windows.Forms.ListView()
|
|
||||||
Me.ColumnHeader2 = CType(New System.Windows.Forms.ColumnHeader(),System.Windows.Forms.ColumnHeader)
|
|
||||||
Me.ImageList1 = New System.Windows.Forms.ImageList(Me.components)
|
|
||||||
Me.Panel1 = New System.Windows.Forms.Panel()
|
|
||||||
Me.PdfViewer1 = New DevExpress.XtraPdfViewer.PdfViewer()
|
|
||||||
Me.StatusStrip2 = New System.Windows.Forms.StatusStrip()
|
|
||||||
Me.pdfstatuslblPageNumber = New System.Windows.Forms.ToolStripStatusLabel()
|
|
||||||
Me.ToolStripDropDownButton1 = New System.Windows.Forms.ToolStripDropDownButton()
|
|
||||||
Me.RibbonControl1 = New DevExpress.XtraBars.Ribbon.RibbonControl()
|
|
||||||
Me.PdfFileOpenBarItem1 = New DevExpress.XtraPdfViewer.Bars.PdfFileOpenBarItem()
|
|
||||||
Me.PdfFileSaveAsBarItem1 = New DevExpress.XtraPdfViewer.Bars.PdfFileSaveAsBarItem()
|
|
||||||
Me.PdfFilePrintBarItem1 = New DevExpress.XtraPdfViewer.Bars.PdfFilePrintBarItem()
|
|
||||||
Me.PdfPreviousPageBarItem1 = New DevExpress.XtraPdfViewer.Bars.PdfPreviousPageBarItem()
|
|
||||||
Me.PdfNextPageBarItem1 = New DevExpress.XtraPdfViewer.Bars.PdfNextPageBarItem()
|
|
||||||
Me.PdfFindTextBarItem1 = New DevExpress.XtraPdfViewer.Bars.PdfFindTextBarItem()
|
|
||||||
Me.PdfZoomOutBarItem1 = New DevExpress.XtraPdfViewer.Bars.PdfZoomOutBarItem()
|
|
||||||
Me.PdfZoomInBarItem1 = New DevExpress.XtraPdfViewer.Bars.PdfZoomInBarItem()
|
|
||||||
Me.PdfExactZoomListBarSubItem1 = New DevExpress.XtraPdfViewer.Bars.PdfExactZoomListBarSubItem()
|
|
||||||
Me.PdfZoom10CheckItem1 = New DevExpress.XtraPdfViewer.Bars.PdfZoom10CheckItem()
|
|
||||||
Me.PdfZoom25CheckItem1 = New DevExpress.XtraPdfViewer.Bars.PdfZoom25CheckItem()
|
|
||||||
Me.PdfZoom50CheckItem1 = New DevExpress.XtraPdfViewer.Bars.PdfZoom50CheckItem()
|
|
||||||
Me.PdfZoom75CheckItem1 = New DevExpress.XtraPdfViewer.Bars.PdfZoom75CheckItem()
|
|
||||||
Me.PdfZoom100CheckItem1 = New DevExpress.XtraPdfViewer.Bars.PdfZoom100CheckItem()
|
|
||||||
Me.PdfZoom125CheckItem1 = New DevExpress.XtraPdfViewer.Bars.PdfZoom125CheckItem()
|
|
||||||
Me.PdfZoom150CheckItem1 = New DevExpress.XtraPdfViewer.Bars.PdfZoom150CheckItem()
|
|
||||||
Me.PdfZoom200CheckItem1 = New DevExpress.XtraPdfViewer.Bars.PdfZoom200CheckItem()
|
|
||||||
Me.PdfZoom400CheckItem1 = New DevExpress.XtraPdfViewer.Bars.PdfZoom400CheckItem()
|
|
||||||
Me.PdfZoom500CheckItem1 = New DevExpress.XtraPdfViewer.Bars.PdfZoom500CheckItem()
|
|
||||||
Me.PdfSetActualSizeZoomModeCheckItem1 = New DevExpress.XtraPdfViewer.Bars.PdfSetActualSizeZoomModeCheckItem()
|
|
||||||
Me.PdfSetPageLevelZoomModeCheckItem1 = New DevExpress.XtraPdfViewer.Bars.PdfSetPageLevelZoomModeCheckItem()
|
|
||||||
Me.PdfSetFitWidthZoomModeCheckItem1 = New DevExpress.XtraPdfViewer.Bars.PdfSetFitWidthZoomModeCheckItem()
|
|
||||||
Me.PdfSetFitVisibleZoomModeCheckItem1 = New DevExpress.XtraPdfViewer.Bars.PdfSetFitVisibleZoomModeCheckItem()
|
|
||||||
Me.PdfExportFormDataBarItem1 = New DevExpress.XtraPdfViewer.Bars.PdfExportFormDataBarItem()
|
|
||||||
Me.PdfImportFormDataBarItem1 = New DevExpress.XtraPdfViewer.Bars.PdfImportFormDataBarItem()
|
|
||||||
Me.PdfRibbonPage1 = New DevExpress.XtraPdfViewer.Bars.PdfRibbonPage()
|
|
||||||
Me.PdfFileRibbonPageGroup1 = New DevExpress.XtraPdfViewer.Bars.PdfFileRibbonPageGroup()
|
|
||||||
Me.PdfNavigationRibbonPageGroup1 = New DevExpress.XtraPdfViewer.Bars.PdfNavigationRibbonPageGroup()
|
|
||||||
Me.PdfZoomRibbonPageGroup1 = New DevExpress.XtraPdfViewer.Bars.PdfZoomRibbonPageGroup()
|
|
||||||
Me.PdfFormDataRibbonPage1 = New DevExpress.XtraPdfViewer.Bars.PdfFormDataRibbonPage()
|
|
||||||
Me.PdfFormDataBarPageGroup1 = New DevExpress.XtraPdfViewer.Bars.PdfFormDataBarPageGroup()
|
|
||||||
Me.btnrefresh = New System.Windows.Forms.Button()
|
|
||||||
Me.PdfBarController1 = New DevExpress.XtraPdfViewer.Bars.PdfBarController()
|
|
||||||
Me.PdfBarController2 = New DevExpress.XtraPdfViewer.Bars.PdfBarController()
|
|
||||||
Me.btndelete = New System.Windows.Forms.Button()
|
|
||||||
Me.chkInFront = New System.Windows.Forms.CheckBox()
|
|
||||||
Me.TimerCheckScanFiles = New System.Windows.Forms.Timer(Me.components)
|
|
||||||
Me.Timer2 = New System.Windows.Forms.Timer(Me.components)
|
|
||||||
Me.Button1 = New System.Windows.Forms.Button()
|
|
||||||
Me.ToolTip1 = New System.Windows.Forms.ToolTip(Me.components)
|
|
||||||
Me.Panel1.SuspendLayout
|
|
||||||
Me.StatusStrip2.SuspendLayout
|
|
||||||
CType(Me.RibbonControl1,System.ComponentModel.ISupportInitialize).BeginInit
|
|
||||||
CType(Me.PdfBarController1,System.ComponentModel.ISupportInitialize).BeginInit
|
|
||||||
CType(Me.PdfBarController2,System.ComponentModel.ISupportInitialize).BeginInit
|
|
||||||
Me.SuspendLayout
|
|
||||||
'
|
|
||||||
'ListView1
|
|
||||||
'
|
|
||||||
Me.ListView1.Columns.AddRange(New System.Windows.Forms.ColumnHeader() {Me.ColumnHeader2})
|
|
||||||
resources.ApplyResources(Me.ListView1, "ListView1")
|
|
||||||
Me.ListView1.FullRowSelect = true
|
|
||||||
Me.ListView1.GridLines = true
|
|
||||||
Me.ListView1.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable
|
|
||||||
Me.ListView1.LargeImageList = Me.ImageList1
|
|
||||||
Me.ListView1.MultiSelect = false
|
|
||||||
Me.ListView1.Name = "ListView1"
|
|
||||||
Me.ListView1.SmallImageList = Me.ImageList1
|
|
||||||
Me.ListView1.UseCompatibleStateImageBehavior = false
|
|
||||||
Me.ListView1.View = System.Windows.Forms.View.Details
|
|
||||||
'
|
|
||||||
'ColumnHeader2
|
|
||||||
'
|
|
||||||
resources.ApplyResources(Me.ColumnHeader2, "ColumnHeader2")
|
|
||||||
'
|
|
||||||
'ImageList1
|
|
||||||
'
|
|
||||||
Me.ImageList1.ImageStream = CType(resources.GetObject("ImageList1.ImageStream"),System.Windows.Forms.ImageListStreamer)
|
|
||||||
Me.ImageList1.TransparentColor = System.Drawing.Color.Transparent
|
|
||||||
Me.ImageList1.Images.SetKeyName(0, "doc_pdf.png")
|
|
||||||
'
|
|
||||||
'Panel1
|
|
||||||
'
|
|
||||||
resources.ApplyResources(Me.Panel1, "Panel1")
|
|
||||||
Me.Panel1.Controls.Add(Me.PdfViewer1)
|
|
||||||
Me.Panel1.Controls.Add(Me.StatusStrip2)
|
|
||||||
Me.Panel1.Controls.Add(Me.RibbonControl1)
|
|
||||||
Me.Panel1.Name = "Panel1"
|
|
||||||
'
|
|
||||||
'PdfViewer1
|
|
||||||
'
|
|
||||||
resources.ApplyResources(Me.PdfViewer1, "PdfViewer1")
|
|
||||||
Me.PdfViewer1.Name = "PdfViewer1"
|
|
||||||
'
|
|
||||||
'StatusStrip2
|
|
||||||
'
|
|
||||||
Me.StatusStrip2.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.pdfstatuslblPageNumber, Me.ToolStripDropDownButton1})
|
|
||||||
resources.ApplyResources(Me.StatusStrip2, "StatusStrip2")
|
|
||||||
Me.StatusStrip2.Name = "StatusStrip2"
|
|
||||||
'
|
|
||||||
'pdfstatuslblPageNumber
|
|
||||||
'
|
|
||||||
resources.ApplyResources(Me.pdfstatuslblPageNumber, "pdfstatuslblPageNumber")
|
|
||||||
Me.pdfstatuslblPageNumber.Image = Global.DD_Record_Organizer.My.Resources.Resources.page_red
|
|
||||||
Me.pdfstatuslblPageNumber.Name = "pdfstatuslblPageNumber"
|
|
||||||
'
|
|
||||||
'ToolStripDropDownButton1
|
|
||||||
'
|
|
||||||
Me.ToolStripDropDownButton1.Image = Global.DD_Record_Organizer.My.Resources.Resources.magifier_zoom_out
|
|
||||||
resources.ApplyResources(Me.ToolStripDropDownButton1, "ToolStripDropDownButton1")
|
|
||||||
Me.ToolStripDropDownButton1.Name = "ToolStripDropDownButton1"
|
|
||||||
'
|
|
||||||
'RibbonControl1
|
|
||||||
'
|
|
||||||
Me.RibbonControl1.ExpandCollapseItem.Id = 0
|
|
||||||
Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.PdfFileOpenBarItem1, Me.PdfFileSaveAsBarItem1, Me.PdfFilePrintBarItem1, Me.PdfPreviousPageBarItem1, Me.PdfNextPageBarItem1, Me.PdfFindTextBarItem1, Me.PdfZoomOutBarItem1, Me.PdfZoomInBarItem1, Me.PdfExactZoomListBarSubItem1, Me.PdfZoom10CheckItem1, Me.PdfZoom25CheckItem1, Me.PdfZoom50CheckItem1, Me.PdfZoom75CheckItem1, Me.PdfZoom100CheckItem1, Me.PdfZoom125CheckItem1, Me.PdfZoom150CheckItem1, Me.PdfZoom200CheckItem1, Me.PdfZoom400CheckItem1, Me.PdfZoom500CheckItem1, Me.PdfSetActualSizeZoomModeCheckItem1, Me.PdfSetPageLevelZoomModeCheckItem1, Me.PdfSetFitWidthZoomModeCheckItem1, Me.PdfSetFitVisibleZoomModeCheckItem1, Me.PdfExportFormDataBarItem1, Me.PdfImportFormDataBarItem1})
|
|
||||||
resources.ApplyResources(Me.RibbonControl1, "RibbonControl1")
|
|
||||||
Me.RibbonControl1.MaxItemId = 26
|
|
||||||
Me.RibbonControl1.Name = "RibbonControl1"
|
|
||||||
Me.RibbonControl1.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.PdfRibbonPage1, Me.PdfFormDataRibbonPage1})
|
|
||||||
Me.RibbonControl1.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonControlStyle.Office2010
|
|
||||||
Me.RibbonControl1.ToolbarLocation = DevExpress.XtraBars.Ribbon.RibbonQuickAccessToolbarLocation.Above
|
|
||||||
'
|
|
||||||
'PdfFileOpenBarItem1
|
|
||||||
'
|
|
||||||
Me.PdfFileOpenBarItem1.Id = 1
|
|
||||||
Me.PdfFileOpenBarItem1.ItemShortcut = New DevExpress.XtraBars.BarShortcut((System.Windows.Forms.Keys.Control Or System.Windows.Forms.Keys.O))
|
|
||||||
Me.PdfFileOpenBarItem1.Name = "PdfFileOpenBarItem1"
|
|
||||||
'
|
|
||||||
'PdfFileSaveAsBarItem1
|
|
||||||
'
|
|
||||||
Me.PdfFileSaveAsBarItem1.Id = 2
|
|
||||||
Me.PdfFileSaveAsBarItem1.ItemShortcut = New DevExpress.XtraBars.BarShortcut((System.Windows.Forms.Keys.Control Or System.Windows.Forms.Keys.S))
|
|
||||||
Me.PdfFileSaveAsBarItem1.Name = "PdfFileSaveAsBarItem1"
|
|
||||||
'
|
|
||||||
'PdfFilePrintBarItem1
|
|
||||||
'
|
|
||||||
Me.PdfFilePrintBarItem1.Id = 3
|
|
||||||
Me.PdfFilePrintBarItem1.ItemShortcut = New DevExpress.XtraBars.BarShortcut((System.Windows.Forms.Keys.Control Or System.Windows.Forms.Keys.P))
|
|
||||||
Me.PdfFilePrintBarItem1.Name = "PdfFilePrintBarItem1"
|
|
||||||
'
|
|
||||||
'PdfPreviousPageBarItem1
|
|
||||||
'
|
|
||||||
Me.PdfPreviousPageBarItem1.Id = 4
|
|
||||||
Me.PdfPreviousPageBarItem1.Name = "PdfPreviousPageBarItem1"
|
|
||||||
'
|
|
||||||
'PdfNextPageBarItem1
|
|
||||||
'
|
|
||||||
Me.PdfNextPageBarItem1.Id = 5
|
|
||||||
Me.PdfNextPageBarItem1.Name = "PdfNextPageBarItem1"
|
|
||||||
'
|
|
||||||
'PdfFindTextBarItem1
|
|
||||||
'
|
|
||||||
Me.PdfFindTextBarItem1.Id = 6
|
|
||||||
Me.PdfFindTextBarItem1.ItemShortcut = New DevExpress.XtraBars.BarShortcut((System.Windows.Forms.Keys.Control Or System.Windows.Forms.Keys.F))
|
|
||||||
Me.PdfFindTextBarItem1.Name = "PdfFindTextBarItem1"
|
|
||||||
'
|
|
||||||
'PdfZoomOutBarItem1
|
|
||||||
'
|
|
||||||
Me.PdfZoomOutBarItem1.Id = 7
|
|
||||||
Me.PdfZoomOutBarItem1.Name = "PdfZoomOutBarItem1"
|
|
||||||
'
|
|
||||||
'PdfZoomInBarItem1
|
|
||||||
'
|
|
||||||
Me.PdfZoomInBarItem1.Id = 8
|
|
||||||
Me.PdfZoomInBarItem1.Name = "PdfZoomInBarItem1"
|
|
||||||
'
|
|
||||||
'PdfExactZoomListBarSubItem1
|
|
||||||
'
|
|
||||||
Me.PdfExactZoomListBarSubItem1.Id = 9
|
|
||||||
Me.PdfExactZoomListBarSubItem1.LinksPersistInfo.AddRange(New DevExpress.XtraBars.LinkPersistInfo() {New DevExpress.XtraBars.LinkPersistInfo(Me.PdfZoom10CheckItem1, true), New DevExpress.XtraBars.LinkPersistInfo(Me.PdfZoom25CheckItem1), New DevExpress.XtraBars.LinkPersistInfo(Me.PdfZoom50CheckItem1), New DevExpress.XtraBars.LinkPersistInfo(Me.PdfZoom75CheckItem1), New DevExpress.XtraBars.LinkPersistInfo(Me.PdfZoom100CheckItem1), New DevExpress.XtraBars.LinkPersistInfo(Me.PdfZoom125CheckItem1), New DevExpress.XtraBars.LinkPersistInfo(Me.PdfZoom150CheckItem1), New DevExpress.XtraBars.LinkPersistInfo(Me.PdfZoom200CheckItem1), New DevExpress.XtraBars.LinkPersistInfo(Me.PdfZoom400CheckItem1), New DevExpress.XtraBars.LinkPersistInfo(Me.PdfZoom500CheckItem1), New DevExpress.XtraBars.LinkPersistInfo(Me.PdfSetActualSizeZoomModeCheckItem1, true), New DevExpress.XtraBars.LinkPersistInfo(Me.PdfSetPageLevelZoomModeCheckItem1), New DevExpress.XtraBars.LinkPersistInfo(Me.PdfSetFitWidthZoomModeCheckItem1), New DevExpress.XtraBars.LinkPersistInfo(Me.PdfSetFitVisibleZoomModeCheckItem1)})
|
|
||||||
Me.PdfExactZoomListBarSubItem1.Name = "PdfExactZoomListBarSubItem1"
|
|
||||||
Me.PdfExactZoomListBarSubItem1.PaintStyle = DevExpress.XtraBars.BarItemPaintStyle.CaptionInMenu
|
|
||||||
'
|
|
||||||
'PdfZoom10CheckItem1
|
|
||||||
'
|
|
||||||
Me.PdfZoom10CheckItem1.Id = 10
|
|
||||||
Me.PdfZoom10CheckItem1.Name = "PdfZoom10CheckItem1"
|
|
||||||
'
|
|
||||||
'PdfZoom25CheckItem1
|
|
||||||
'
|
|
||||||
Me.PdfZoom25CheckItem1.Id = 11
|
|
||||||
Me.PdfZoom25CheckItem1.Name = "PdfZoom25CheckItem1"
|
|
||||||
'
|
|
||||||
'PdfZoom50CheckItem1
|
|
||||||
'
|
|
||||||
Me.PdfZoom50CheckItem1.Id = 12
|
|
||||||
Me.PdfZoom50CheckItem1.Name = "PdfZoom50CheckItem1"
|
|
||||||
'
|
|
||||||
'PdfZoom75CheckItem1
|
|
||||||
'
|
|
||||||
Me.PdfZoom75CheckItem1.Id = 13
|
|
||||||
Me.PdfZoom75CheckItem1.Name = "PdfZoom75CheckItem1"
|
|
||||||
'
|
|
||||||
'PdfZoom100CheckItem1
|
|
||||||
'
|
|
||||||
Me.PdfZoom100CheckItem1.Id = 14
|
|
||||||
Me.PdfZoom100CheckItem1.Name = "PdfZoom100CheckItem1"
|
|
||||||
'
|
|
||||||
'PdfZoom125CheckItem1
|
|
||||||
'
|
|
||||||
Me.PdfZoom125CheckItem1.Id = 15
|
|
||||||
Me.PdfZoom125CheckItem1.Name = "PdfZoom125CheckItem1"
|
|
||||||
'
|
|
||||||
'PdfZoom150CheckItem1
|
|
||||||
'
|
|
||||||
Me.PdfZoom150CheckItem1.Id = 16
|
|
||||||
Me.PdfZoom150CheckItem1.Name = "PdfZoom150CheckItem1"
|
|
||||||
'
|
|
||||||
'PdfZoom200CheckItem1
|
|
||||||
'
|
|
||||||
Me.PdfZoom200CheckItem1.Id = 17
|
|
||||||
Me.PdfZoom200CheckItem1.Name = "PdfZoom200CheckItem1"
|
|
||||||
'
|
|
||||||
'PdfZoom400CheckItem1
|
|
||||||
'
|
|
||||||
Me.PdfZoom400CheckItem1.Id = 18
|
|
||||||
Me.PdfZoom400CheckItem1.Name = "PdfZoom400CheckItem1"
|
|
||||||
'
|
|
||||||
'PdfZoom500CheckItem1
|
|
||||||
'
|
|
||||||
Me.PdfZoom500CheckItem1.Id = 19
|
|
||||||
Me.PdfZoom500CheckItem1.Name = "PdfZoom500CheckItem1"
|
|
||||||
'
|
|
||||||
'PdfSetActualSizeZoomModeCheckItem1
|
|
||||||
'
|
|
||||||
Me.PdfSetActualSizeZoomModeCheckItem1.Id = 20
|
|
||||||
Me.PdfSetActualSizeZoomModeCheckItem1.Name = "PdfSetActualSizeZoomModeCheckItem1"
|
|
||||||
'
|
|
||||||
'PdfSetPageLevelZoomModeCheckItem1
|
|
||||||
'
|
|
||||||
Me.PdfSetPageLevelZoomModeCheckItem1.Id = 21
|
|
||||||
Me.PdfSetPageLevelZoomModeCheckItem1.Name = "PdfSetPageLevelZoomModeCheckItem1"
|
|
||||||
'
|
|
||||||
'PdfSetFitWidthZoomModeCheckItem1
|
|
||||||
'
|
|
||||||
Me.PdfSetFitWidthZoomModeCheckItem1.Id = 22
|
|
||||||
Me.PdfSetFitWidthZoomModeCheckItem1.Name = "PdfSetFitWidthZoomModeCheckItem1"
|
|
||||||
'
|
|
||||||
'PdfSetFitVisibleZoomModeCheckItem1
|
|
||||||
'
|
|
||||||
Me.PdfSetFitVisibleZoomModeCheckItem1.Id = 23
|
|
||||||
Me.PdfSetFitVisibleZoomModeCheckItem1.Name = "PdfSetFitVisibleZoomModeCheckItem1"
|
|
||||||
'
|
|
||||||
'PdfExportFormDataBarItem1
|
|
||||||
'
|
|
||||||
Me.PdfExportFormDataBarItem1.Id = 24
|
|
||||||
Me.PdfExportFormDataBarItem1.Name = "PdfExportFormDataBarItem1"
|
|
||||||
'
|
|
||||||
'PdfImportFormDataBarItem1
|
|
||||||
'
|
|
||||||
Me.PdfImportFormDataBarItem1.Id = 25
|
|
||||||
Me.PdfImportFormDataBarItem1.Name = "PdfImportFormDataBarItem1"
|
|
||||||
'
|
|
||||||
'PdfRibbonPage1
|
|
||||||
'
|
|
||||||
Me.PdfRibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.PdfFileRibbonPageGroup1, Me.PdfNavigationRibbonPageGroup1, Me.PdfZoomRibbonPageGroup1})
|
|
||||||
Me.PdfRibbonPage1.Name = "PdfRibbonPage1"
|
|
||||||
'
|
|
||||||
'PdfFileRibbonPageGroup1
|
|
||||||
'
|
|
||||||
Me.PdfFileRibbonPageGroup1.ItemLinks.Add(Me.PdfFileOpenBarItem1)
|
|
||||||
Me.PdfFileRibbonPageGroup1.ItemLinks.Add(Me.PdfFileSaveAsBarItem1)
|
|
||||||
Me.PdfFileRibbonPageGroup1.ItemLinks.Add(Me.PdfFilePrintBarItem1)
|
|
||||||
Me.PdfFileRibbonPageGroup1.Name = "PdfFileRibbonPageGroup1"
|
|
||||||
'
|
|
||||||
'PdfNavigationRibbonPageGroup1
|
|
||||||
'
|
|
||||||
Me.PdfNavigationRibbonPageGroup1.ItemLinks.Add(Me.PdfPreviousPageBarItem1)
|
|
||||||
Me.PdfNavigationRibbonPageGroup1.ItemLinks.Add(Me.PdfNextPageBarItem1)
|
|
||||||
Me.PdfNavigationRibbonPageGroup1.ItemLinks.Add(Me.PdfFindTextBarItem1)
|
|
||||||
Me.PdfNavigationRibbonPageGroup1.Name = "PdfNavigationRibbonPageGroup1"
|
|
||||||
'
|
|
||||||
'PdfZoomRibbonPageGroup1
|
|
||||||
'
|
|
||||||
Me.PdfZoomRibbonPageGroup1.ItemLinks.Add(Me.PdfZoomOutBarItem1)
|
|
||||||
Me.PdfZoomRibbonPageGroup1.ItemLinks.Add(Me.PdfZoomInBarItem1)
|
|
||||||
Me.PdfZoomRibbonPageGroup1.ItemLinks.Add(Me.PdfExactZoomListBarSubItem1)
|
|
||||||
Me.PdfZoomRibbonPageGroup1.Name = "PdfZoomRibbonPageGroup1"
|
|
||||||
'
|
|
||||||
'PdfFormDataRibbonPage1
|
|
||||||
'
|
|
||||||
Me.PdfFormDataRibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.PdfFormDataBarPageGroup1})
|
|
||||||
Me.PdfFormDataRibbonPage1.Name = "PdfFormDataRibbonPage1"
|
|
||||||
Me.PdfFormDataRibbonPage1.Visible = false
|
|
||||||
'
|
|
||||||
'PdfFormDataBarPageGroup1
|
|
||||||
'
|
|
||||||
Me.PdfFormDataBarPageGroup1.ItemLinks.Add(Me.PdfExportFormDataBarItem1)
|
|
||||||
Me.PdfFormDataBarPageGroup1.ItemLinks.Add(Me.PdfImportFormDataBarItem1)
|
|
||||||
Me.PdfFormDataBarPageGroup1.Name = "PdfFormDataBarPageGroup1"
|
|
||||||
'
|
|
||||||
'btnrefresh
|
|
||||||
'
|
|
||||||
Me.btnrefresh.Image = Global.DD_Record_Organizer.My.Resources.Resources.refresh_16xLG
|
|
||||||
resources.ApplyResources(Me.btnrefresh, "btnrefresh")
|
|
||||||
Me.btnrefresh.Name = "btnrefresh"
|
|
||||||
Me.btnrefresh.UseVisualStyleBackColor = true
|
|
||||||
'
|
|
||||||
'PdfBarController2
|
|
||||||
'
|
|
||||||
Me.PdfBarController2.BarItems.Add(Me.PdfFileOpenBarItem1)
|
|
||||||
Me.PdfBarController2.BarItems.Add(Me.PdfFileSaveAsBarItem1)
|
|
||||||
Me.PdfBarController2.BarItems.Add(Me.PdfFilePrintBarItem1)
|
|
||||||
Me.PdfBarController2.BarItems.Add(Me.PdfPreviousPageBarItem1)
|
|
||||||
Me.PdfBarController2.BarItems.Add(Me.PdfNextPageBarItem1)
|
|
||||||
Me.PdfBarController2.BarItems.Add(Me.PdfFindTextBarItem1)
|
|
||||||
Me.PdfBarController2.BarItems.Add(Me.PdfZoomOutBarItem1)
|
|
||||||
Me.PdfBarController2.BarItems.Add(Me.PdfZoomInBarItem1)
|
|
||||||
Me.PdfBarController2.BarItems.Add(Me.PdfExactZoomListBarSubItem1)
|
|
||||||
Me.PdfBarController2.BarItems.Add(Me.PdfZoom10CheckItem1)
|
|
||||||
Me.PdfBarController2.BarItems.Add(Me.PdfZoom25CheckItem1)
|
|
||||||
Me.PdfBarController2.BarItems.Add(Me.PdfZoom50CheckItem1)
|
|
||||||
Me.PdfBarController2.BarItems.Add(Me.PdfZoom75CheckItem1)
|
|
||||||
Me.PdfBarController2.BarItems.Add(Me.PdfZoom100CheckItem1)
|
|
||||||
Me.PdfBarController2.BarItems.Add(Me.PdfZoom125CheckItem1)
|
|
||||||
Me.PdfBarController2.BarItems.Add(Me.PdfZoom150CheckItem1)
|
|
||||||
Me.PdfBarController2.BarItems.Add(Me.PdfZoom200CheckItem1)
|
|
||||||
Me.PdfBarController2.BarItems.Add(Me.PdfZoom400CheckItem1)
|
|
||||||
Me.PdfBarController2.BarItems.Add(Me.PdfZoom500CheckItem1)
|
|
||||||
Me.PdfBarController2.BarItems.Add(Me.PdfSetActualSizeZoomModeCheckItem1)
|
|
||||||
Me.PdfBarController2.BarItems.Add(Me.PdfSetPageLevelZoomModeCheckItem1)
|
|
||||||
Me.PdfBarController2.BarItems.Add(Me.PdfSetFitWidthZoomModeCheckItem1)
|
|
||||||
Me.PdfBarController2.BarItems.Add(Me.PdfSetFitVisibleZoomModeCheckItem1)
|
|
||||||
Me.PdfBarController2.BarItems.Add(Me.PdfExportFormDataBarItem1)
|
|
||||||
Me.PdfBarController2.BarItems.Add(Me.PdfImportFormDataBarItem1)
|
|
||||||
Me.PdfBarController2.Control = Me.PdfViewer1
|
|
||||||
'
|
|
||||||
'btndelete
|
|
||||||
'
|
|
||||||
Me.btndelete.Image = Global.DD_Record_Organizer.My.Resources.Resources.delete
|
|
||||||
resources.ApplyResources(Me.btndelete, "btndelete")
|
|
||||||
Me.btndelete.Name = "btndelete"
|
|
||||||
Me.ToolTip1.SetToolTip(Me.btndelete, resources.GetString("btndelete.ToolTip"))
|
|
||||||
Me.btndelete.UseVisualStyleBackColor = true
|
|
||||||
'
|
|
||||||
'chkInFront
|
|
||||||
'
|
|
||||||
resources.ApplyResources(Me.chkInFront, "chkInFront")
|
|
||||||
Me.chkInFront.Checked = Global.DD_Record_Organizer.My.MySettings.Default.User_InBoxScan_NotinFront
|
|
||||||
Me.chkInFront.DataBindings.Add(New System.Windows.Forms.Binding("Checked", Global.DD_Record_Organizer.My.MySettings.Default, "User_InBoxScan_NotinFront", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged))
|
|
||||||
Me.chkInFront.Name = "chkInFront"
|
|
||||||
Me.chkInFront.UseVisualStyleBackColor = true
|
|
||||||
'
|
|
||||||
'TimerCheckScanFiles
|
|
||||||
'
|
|
||||||
Me.TimerCheckScanFiles.Interval = 5000
|
|
||||||
'
|
|
||||||
'Button1
|
|
||||||
'
|
|
||||||
Me.Button1.Image = Global.DD_Record_Organizer.My.Resources.Resources.delete
|
|
||||||
resources.ApplyResources(Me.Button1, "Button1")
|
|
||||||
Me.Button1.Name = "Button1"
|
|
||||||
Me.ToolTip1.SetToolTip(Me.Button1, resources.GetString("Button1.ToolTip"))
|
|
||||||
Me.Button1.UseVisualStyleBackColor = true
|
|
||||||
'
|
|
||||||
'frmScanFiles
|
|
||||||
'
|
|
||||||
resources.ApplyResources(Me, "$this")
|
|
||||||
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
|
|
||||||
Me.Controls.Add(Me.Button1)
|
|
||||||
Me.Controls.Add(Me.chkInFront)
|
|
||||||
Me.Controls.Add(Me.btndelete)
|
|
||||||
Me.Controls.Add(Me.Panel1)
|
|
||||||
Me.Controls.Add(Me.btnrefresh)
|
|
||||||
Me.Controls.Add(Me.ListView1)
|
|
||||||
Me.MaximizeBox = false
|
|
||||||
Me.Name = "frmScanFiles"
|
|
||||||
Me.Panel1.ResumeLayout(false)
|
|
||||||
Me.Panel1.PerformLayout
|
|
||||||
Me.StatusStrip2.ResumeLayout(false)
|
|
||||||
Me.StatusStrip2.PerformLayout
|
|
||||||
CType(Me.RibbonControl1,System.ComponentModel.ISupportInitialize).EndInit
|
|
||||||
CType(Me.PdfBarController1,System.ComponentModel.ISupportInitialize).EndInit
|
|
||||||
CType(Me.PdfBarController2,System.ComponentModel.ISupportInitialize).EndInit
|
|
||||||
Me.ResumeLayout(false)
|
|
||||||
Me.PerformLayout
|
|
||||||
|
|
||||||
End Sub
|
|
||||||
Friend WithEvents ColumnHeader2 As System.Windows.Forms.ColumnHeader
|
|
||||||
Friend WithEvents ImageList1 As System.Windows.Forms.ImageList
|
|
||||||
Friend WithEvents btnrefresh As System.Windows.Forms.Button
|
|
||||||
Friend WithEvents Panel1 As System.Windows.Forms.Panel
|
|
||||||
Friend WithEvents StatusStrip2 As System.Windows.Forms.StatusStrip
|
|
||||||
Friend WithEvents pdfstatuslblPageNumber As System.Windows.Forms.ToolStripStatusLabel
|
|
||||||
Friend WithEvents ToolStripDropDownButton1 As System.Windows.Forms.ToolStripDropDownButton
|
|
||||||
Friend WithEvents PdfBarController1 As DevExpress.XtraPdfViewer.Bars.PdfBarController
|
|
||||||
Friend WithEvents PdfViewer1 As DevExpress.XtraPdfViewer.PdfViewer
|
|
||||||
Friend WithEvents RibbonControl1 As DevExpress.XtraBars.Ribbon.RibbonControl
|
|
||||||
Friend WithEvents PdfFileOpenBarItem1 As DevExpress.XtraPdfViewer.Bars.PdfFileOpenBarItem
|
|
||||||
Friend WithEvents PdfFileSaveAsBarItem1 As DevExpress.XtraPdfViewer.Bars.PdfFileSaveAsBarItem
|
|
||||||
Friend WithEvents PdfFilePrintBarItem1 As DevExpress.XtraPdfViewer.Bars.PdfFilePrintBarItem
|
|
||||||
Friend WithEvents PdfPreviousPageBarItem1 As DevExpress.XtraPdfViewer.Bars.PdfPreviousPageBarItem
|
|
||||||
Friend WithEvents PdfNextPageBarItem1 As DevExpress.XtraPdfViewer.Bars.PdfNextPageBarItem
|
|
||||||
Friend WithEvents PdfFindTextBarItem1 As DevExpress.XtraPdfViewer.Bars.PdfFindTextBarItem
|
|
||||||
Friend WithEvents PdfZoomOutBarItem1 As DevExpress.XtraPdfViewer.Bars.PdfZoomOutBarItem
|
|
||||||
Friend WithEvents PdfZoomInBarItem1 As DevExpress.XtraPdfViewer.Bars.PdfZoomInBarItem
|
|
||||||
Friend WithEvents PdfExactZoomListBarSubItem1 As DevExpress.XtraPdfViewer.Bars.PdfExactZoomListBarSubItem
|
|
||||||
Friend WithEvents PdfZoom10CheckItem1 As DevExpress.XtraPdfViewer.Bars.PdfZoom10CheckItem
|
|
||||||
Friend WithEvents PdfZoom25CheckItem1 As DevExpress.XtraPdfViewer.Bars.PdfZoom25CheckItem
|
|
||||||
Friend WithEvents PdfZoom50CheckItem1 As DevExpress.XtraPdfViewer.Bars.PdfZoom50CheckItem
|
|
||||||
Friend WithEvents PdfZoom75CheckItem1 As DevExpress.XtraPdfViewer.Bars.PdfZoom75CheckItem
|
|
||||||
Friend WithEvents PdfZoom100CheckItem1 As DevExpress.XtraPdfViewer.Bars.PdfZoom100CheckItem
|
|
||||||
Friend WithEvents PdfZoom125CheckItem1 As DevExpress.XtraPdfViewer.Bars.PdfZoom125CheckItem
|
|
||||||
Friend WithEvents PdfZoom150CheckItem1 As DevExpress.XtraPdfViewer.Bars.PdfZoom150CheckItem
|
|
||||||
Friend WithEvents PdfZoom200CheckItem1 As DevExpress.XtraPdfViewer.Bars.PdfZoom200CheckItem
|
|
||||||
Friend WithEvents PdfZoom400CheckItem1 As DevExpress.XtraPdfViewer.Bars.PdfZoom400CheckItem
|
|
||||||
Friend WithEvents PdfZoom500CheckItem1 As DevExpress.XtraPdfViewer.Bars.PdfZoom500CheckItem
|
|
||||||
Friend WithEvents PdfSetActualSizeZoomModeCheckItem1 As DevExpress.XtraPdfViewer.Bars.PdfSetActualSizeZoomModeCheckItem
|
|
||||||
Friend WithEvents PdfSetPageLevelZoomModeCheckItem1 As DevExpress.XtraPdfViewer.Bars.PdfSetPageLevelZoomModeCheckItem
|
|
||||||
Friend WithEvents PdfSetFitWidthZoomModeCheckItem1 As DevExpress.XtraPdfViewer.Bars.PdfSetFitWidthZoomModeCheckItem
|
|
||||||
Friend WithEvents PdfSetFitVisibleZoomModeCheckItem1 As DevExpress.XtraPdfViewer.Bars.PdfSetFitVisibleZoomModeCheckItem
|
|
||||||
Friend WithEvents PdfExportFormDataBarItem1 As DevExpress.XtraPdfViewer.Bars.PdfExportFormDataBarItem
|
|
||||||
Friend WithEvents PdfImportFormDataBarItem1 As DevExpress.XtraPdfViewer.Bars.PdfImportFormDataBarItem
|
|
||||||
Friend WithEvents PdfRibbonPage1 As DevExpress.XtraPdfViewer.Bars.PdfRibbonPage
|
|
||||||
Friend WithEvents PdfFileRibbonPageGroup1 As DevExpress.XtraPdfViewer.Bars.PdfFileRibbonPageGroup
|
|
||||||
Friend WithEvents PdfNavigationRibbonPageGroup1 As DevExpress.XtraPdfViewer.Bars.PdfNavigationRibbonPageGroup
|
|
||||||
Friend WithEvents PdfZoomRibbonPageGroup1 As DevExpress.XtraPdfViewer.Bars.PdfZoomRibbonPageGroup
|
|
||||||
Friend WithEvents PdfFormDataRibbonPage1 As DevExpress.XtraPdfViewer.Bars.PdfFormDataRibbonPage
|
|
||||||
Friend WithEvents PdfFormDataBarPageGroup1 As DevExpress.XtraPdfViewer.Bars.PdfFormDataBarPageGroup
|
|
||||||
Friend WithEvents PdfBarController2 As DevExpress.XtraPdfViewer.Bars.PdfBarController
|
|
||||||
Friend WithEvents btndelete As System.Windows.Forms.Button
|
|
||||||
Friend WithEvents chkInFront As System.Windows.Forms.CheckBox
|
|
||||||
Private WithEvents ListView1 As System.Windows.Forms.ListView
|
|
||||||
Friend WithEvents TimerCheckScanFiles As System.Windows.Forms.Timer
|
|
||||||
Friend WithEvents Timer2 As System.Windows.Forms.Timer
|
|
||||||
Friend WithEvents Button1 As System.Windows.Forms.Button
|
|
||||||
Friend WithEvents ToolTip1 As System.Windows.Forms.ToolTip
|
|
||||||
End Class
|
|
||||||
@@ -1,641 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<root>
|
|
||||||
<!--
|
|
||||||
Microsoft ResX Schema
|
|
||||||
|
|
||||||
Version 2.0
|
|
||||||
|
|
||||||
The primary goals of this format is to allow a simple XML format
|
|
||||||
that is mostly human readable. The generation and parsing of the
|
|
||||||
various data types are done through the TypeConverter classes
|
|
||||||
associated with the data types.
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
... ado.net/XML headers & schema ...
|
|
||||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
|
||||||
<resheader name="version">2.0</resheader>
|
|
||||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
|
||||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
|
||||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
|
||||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
|
||||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
|
||||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
|
||||||
</data>
|
|
||||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
|
||||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
|
||||||
<comment>This is a comment</comment>
|
|
||||||
</data>
|
|
||||||
|
|
||||||
There are any number of "resheader" rows that contain simple
|
|
||||||
name/value pairs.
|
|
||||||
|
|
||||||
Each data row contains a name, and value. The row also contains a
|
|
||||||
type or mimetype. Type corresponds to a .NET class that support
|
|
||||||
text/value conversion through the TypeConverter architecture.
|
|
||||||
Classes that don't support this are serialized and stored with the
|
|
||||||
mimetype set.
|
|
||||||
|
|
||||||
The mimetype is used for serialized objects, and tells the
|
|
||||||
ResXResourceReader how to depersist the object. This is currently not
|
|
||||||
extensible. For a given mimetype the value must be set accordingly:
|
|
||||||
|
|
||||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
|
||||||
that the ResXResourceWriter will generate, however the reader can
|
|
||||||
read any of the formats listed below.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.binary.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.soap.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
|
||||||
value : The object must be serialized into a byte array
|
|
||||||
: using a System.ComponentModel.TypeConverter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
-->
|
|
||||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
|
||||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
|
||||||
<xsd:element name="root" msdata:IsDataSet="true">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:choice maxOccurs="unbounded">
|
|
||||||
<xsd:element name="metadata">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="assembly">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:attribute name="alias" type="xsd:string" />
|
|
||||||
<xsd:attribute name="name" type="xsd:string" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="data">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="resheader">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:choice>
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:schema>
|
|
||||||
<resheader name="resmimetype">
|
|
||||||
<value>text/microsoft-resx</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="version">
|
|
||||||
<value>2.0</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="reader">
|
|
||||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="writer">
|
|
||||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<data name="ColumnHeader2.Text" xml:space="preserve">
|
|
||||||
<value>Scanfile - Drag and drop here</value>
|
|
||||||
</data>
|
|
||||||
<data name="ImageList1.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
|
|
||||||
<value>
|
|
||||||
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
|
||||||
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
|
||||||
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADm
|
|
||||||
BwAAAk1TRnQBSQFMAwEBAAHgAQAB4AEAARABAAEQAQAE/wEJAQAI/wFCAU0BNgEEBgABNgEEAgABKAMA
|
|
||||||
AUADAAEQAwABAQEAAQgGAAEEGAABgAIAAYADAAKAAQABgAMAAYABAAGAAQACgAIAA8ABAAHAAdwBwAEA
|
|
||||||
AfABygGmAQABMwUAATMBAAEzAQABMwEAAjMCAAMWAQADHAEAAyIBAAMpAQADVQEAA00BAANCAQADOQEA
|
|
||||||
AYABfAH/AQACUAH/AQABkwEAAdYBAAH/AewBzAEAAcYB1gHvAQAB1gLnAQABkAGpAa0CAAH/ATMDAAFm
|
|
||||||
AwABmQMAAcwCAAEzAwACMwIAATMBZgIAATMBmQIAATMBzAIAATMB/wIAAWYDAAFmATMCAAJmAgABZgGZ
|
|
||||||
AgABZgHMAgABZgH/AgABmQMAAZkBMwIAAZkBZgIAApkCAAGZAcwCAAGZAf8CAAHMAwABzAEzAgABzAFm
|
|
||||||
AgABzAGZAgACzAIAAcwB/wIAAf8BZgIAAf8BmQIAAf8BzAEAATMB/wIAAf8BAAEzAQABMwEAAWYBAAEz
|
|
||||||
AQABmQEAATMBAAHMAQABMwEAAf8BAAH/ATMCAAMzAQACMwFmAQACMwGZAQACMwHMAQACMwH/AQABMwFm
|
|
||||||
AgABMwFmATMBAAEzAmYBAAEzAWYBmQEAATMBZgHMAQABMwFmAf8BAAEzAZkCAAEzAZkBMwEAATMBmQFm
|
|
||||||
AQABMwKZAQABMwGZAcwBAAEzAZkB/wEAATMBzAIAATMBzAEzAQABMwHMAWYBAAEzAcwBmQEAATMCzAEA
|
|
||||||
ATMBzAH/AQABMwH/ATMBAAEzAf8BZgEAATMB/wGZAQABMwH/AcwBAAEzAv8BAAFmAwABZgEAATMBAAFm
|
|
||||||
AQABZgEAAWYBAAGZAQABZgEAAcwBAAFmAQAB/wEAAWYBMwIAAWYCMwEAAWYBMwFmAQABZgEzAZkBAAFm
|
|
||||||
ATMBzAEAAWYBMwH/AQACZgIAAmYBMwEAA2YBAAJmAZkBAAJmAcwBAAFmAZkCAAFmAZkBMwEAAWYBmQFm
|
|
||||||
AQABZgKZAQABZgGZAcwBAAFmAZkB/wEAAWYBzAIAAWYBzAEzAQABZgHMAZkBAAFmAswBAAFmAcwB/wEA
|
|
||||||
AWYB/wIAAWYB/wEzAQABZgH/AZkBAAFmAf8BzAEAAcwBAAH/AQAB/wEAAcwBAAKZAgABmQEzAZkBAAGZ
|
|
||||||
AQABmQEAAZkBAAHMAQABmQMAAZkCMwEAAZkBAAFmAQABmQEzAcwBAAGZAQAB/wEAAZkBZgIAAZkBZgEz
|
|
||||||
AQABmQEzAWYBAAGZAWYBmQEAAZkBZgHMAQABmQEzAf8BAAKZATMBAAKZAWYBAAOZAQACmQHMAQACmQH/
|
|
||||||
AQABmQHMAgABmQHMATMBAAFmAcwBZgEAAZkBzAGZAQABmQLMAQABmQHMAf8BAAGZAf8CAAGZAf8BMwEA
|
|
||||||
AZkBzAFmAQABmQH/AZkBAAGZAf8BzAEAAZkC/wEAAcwDAAGZAQABMwEAAcwBAAFmAQABzAEAAZkBAAHM
|
|
||||||
AQABzAEAAZkBMwIAAcwCMwEAAcwBMwFmAQABzAEzAZkBAAHMATMBzAEAAcwBMwH/AQABzAFmAgABzAFm
|
|
||||||
ATMBAAGZAmYBAAHMAWYBmQEAAcwBZgHMAQABmQFmAf8BAAHMAZkCAAHMAZkBMwEAAcwBmQFmAQABzAKZ
|
|
||||||
AQABzAGZAcwBAAHMAZkB/wEAAswCAALMATMBAALMAWYBAALMAZkBAAPMAQACzAH/AQABzAH/AgABzAH/
|
|
||||||
ATMBAAGZAf8BZgEAAcwB/wGZAQABzAH/AcwBAAHMAv8BAAHMAQABMwEAAf8BAAFmAQAB/wEAAZkBAAHM
|
|
||||||
ATMCAAH/AjMBAAH/ATMBZgEAAf8BMwGZAQAB/wEzAcwBAAH/ATMB/wEAAf8BZgIAAf8BZgEzAQABzAJm
|
|
||||||
AQAB/wFmAZkBAAH/AWYBzAEAAcwBZgH/AQAB/wGZAgAB/wGZATMBAAH/AZkBZgEAAf8CmQEAAf8BmQHM
|
|
||||||
AQAB/wGZAf8BAAH/AcwCAAH/AcwBMwEAAf8BzAFmAQAB/wHMAZkBAAH/AswBAAH/AcwB/wEAAv8BMwEA
|
|
||||||
AcwB/wFmAQAC/wGZAQAC/wHMAQACZgH/AQABZgH/AWYBAAFmAv8BAAH/AmYBAAH/AWYB/wEAAv8BZgEA
|
|
||||||
ASEBAAGlAQADXwEAA3cBAAOGAQADlgEAA8sBAAOyAQAD1wEAA90BAAPjAQAD6gEAA/EBAAP4AQAB8AH7
|
|
||||||
Af8BAAGkAqABAAOAAwAB/wIAAf8DAAL/AQAB/wMAAf8BAAH/AQAC/wIAA/8DAAEHDBIBBzIAARIM/wES
|
|
||||||
MAAKIAP0AfMB/wHqMAAKIAH0A/MB/wHqMAACIAG9AW8GIATzAf8BbTAAAiABRgH0AZQBbwGUAb0CIATz
|
|
||||||
Af8BbTAAAyABFwGUAUYBvQEXAiAE8wH/AeswAAQgApQBFgMgBPMB/wHrMAAEIAFHAf8EIATzAf8B7DAA
|
|
||||||
BfkB/wT5A/MB8gH/AewwAAr5Bf8B7DAACvkB/wLyAfMB7QG8MgAB7QH/A/MD8gH/AfIB8wHtAfAzAAGS
|
|
||||||
Af8B8wXyAf8B8wGSAfA0AAGSCP8BkgHwNQAB8Aj3AfA0AAFCAU0BPgcAAT4DAAEoAwABQAMAARADAAEB
|
|
||||||
AQABAQUAAYAXAAP/AQABwAcAAcBXAAHAAQEGAAHAAQMGAAHAAQcGAAHAAQ8GAAs=
|
|
||||||
</value>
|
|
||||||
</data>
|
|
||||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
|
||||||
<data name="PdfViewer1.Location" type="System.Drawing.Point, System.Drawing">
|
|
||||||
<value>0, 140</value>
|
|
||||||
</data>
|
|
||||||
<data name="PdfViewer1.Size" type="System.Drawing.Size, System.Drawing">
|
|
||||||
<value>591, 391</value>
|
|
||||||
</data>
|
|
||||||
<data name="ToolStripDropDownButton1.Size" type="System.Drawing.Size, System.Drawing">
|
|
||||||
<value>133, 20</value>
|
|
||||||
</data>
|
|
||||||
<data name="ToolStripDropDownButton1.Text" xml:space="preserve">
|
|
||||||
<value>Pageview Minimal</value>
|
|
||||||
</data>
|
|
||||||
<data name="RibbonControl1.Size" type="System.Drawing.Size, System.Drawing">
|
|
||||||
<value>591, 140</value>
|
|
||||||
</data>
|
|
||||||
<data name="btnrefresh.Text" xml:space="preserve">
|
|
||||||
<value>Refresh</value>
|
|
||||||
</data>
|
|
||||||
<data name="btndelete.Text" xml:space="preserve">
|
|
||||||
<value>Delete</value>
|
|
||||||
</data>
|
|
||||||
<data name="chkInFront.Size" type="System.Drawing.Size, System.Drawing">
|
|
||||||
<value>163, 17</value>
|
|
||||||
</data>
|
|
||||||
<data name="chkInFront.Text" xml:space="preserve">
|
|
||||||
<value>Deactivate "Always on top"</value>
|
|
||||||
</data>
|
|
||||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
|
||||||
<value>
|
|
||||||
AAABAAgAEBAAAAEACABoBQAAhgAAABAQAAABACAAaAQAAO4FAAAYGAAAAQAIAMgGAABWCgAAGBgAAAEA
|
|
||||||
IACICQAAHhEAACAgAAABAAgAqAgAAKYaAAAgIAAAAQAgAKgQAABOIwAAMDAAAAEACACoDgAA9jMAADAw
|
|
||||||
AAABACAAqCUAAJ5CAAAoAAAAEAAAACAAAAABAAgAAAAAAEABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//
|
|
||||||
/wDyjAAAlZWVAJFDKgD+xG4AysrJALuCTwC/WgAA/+fDAMymiACJcGYA/685ANKBIgCvr68A5ubmAObN
|
|
||||||
qgCwjnYAoGNHANOgWgCePggA/6IZAOWbNwDKu68A1HIJAOS2iACFhYUAoXNgAOaPIQDY2NgAwZdmAP/2
|
|
||||||
6gCioqIA+dmrANe4mgD/t00A/+7WAOR+AAC+vr4A/poGAMOxoAB6enoArUcCAMZnDQDPj18A2M/AAPKe
|
|
||||||
LADVpmoApkoPAJQ5EgDMw7wAzmgAAO6SFQD3rEUA5N/YAO7u7gD+pyUAtZh8ALe3twCOjo4A+OjQAMeY
|
|
||||||
XQCma0oAvJdvAObRswD6lAAAnZ2dAOiFAwD/qi0A1G4AAPTz8QD+ng0A29fRANXOxwC6e1IAzptXAM1/
|
|
||||||
JwDc3NwAioqKAMe7tQD6wGwAzc3NAMLBwAC3gFIA1dXVAOeQJgC0tLQAkZGRAKWlpQDshgAA4N7aAPzs
|
|
||||||
1QDjtIUA7OzsAJOTkwCfn58A9q1IAPjXqQDl5eQAy8vLAL5YAAD/5sEAsbCvAI+PjwCUlJQArq6uAKCg
|
|
||||||
oADk3tcA/ufEAMnJyQCwsLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAABOaE4AAAAAAAAAAAAAAANqTVE6O1cAAAAAAAAAAF5tXVpIHSZYGgAA
|
|
||||||
AAAAX2kPYjZbbEBJYw5nGgAAAG43VEYfJAkhGQoyJl8pAAAAIFYGazxlYVwsSk9SCwAAAAAAAFhmLRAi
|
|
||||||
FyhTMAQAAAAAAAAAAEI5Lw0zZDEAAAAAAAAAAAA/QwIlRRQAAAAAAAAAAAAeNEdBWSoAAAAAAAAAAAA9
|
|
||||||
LkQVJwgbAAAAAAAAAABLYCMMOBgSAAAAAAAAAAATUAU1VSs+AAAAAAAAAAAAFhxMBxEAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAD//wAA/H8AAPAfAADgDwAAgAMAAIABAADAAQAA+AEAAP4DAAD+BwAA/A8AAPgP
|
|
||||||
AADwHwAA4D8AAOD/AAD//wAAKAAAABAAAAAgAAAAAQAgAAAAAABABAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAGBgYB17e3uxlJSU9mtra4VcXFwLAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
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
|
|
||||||
z//r2Lf/zMS2/9TW2f/j5eb9x8fH/LCwsP6wsLD/k5OT/3V1dc9ycnJKAAAAAAAAAAAAAAAAAAAAALu7
|
|
||||||
u6e8vLz96enp+/n5+f7r6+v/wcHD/9vX0f//+ej///DZ///szP//58D//+Oz/+fGmv/HtqX/0dPW/9/h
|
|
||||||
4/3BwcL8qKio/qenp/+Kior+dHR0wXBwcDoAAAAAAAAAAMXFxfz39/f9+vr6/8DAwP/MzMz////////+
|
|
||||||
9f//9eX//+/Y///qy///57///eCz//HMnP/mtIL/0pxt/7+jj//P0tT/2dze/bi4uf2hoaH+np6f/3h4
|
|
||||||
ePoAAAAAAAAAAMjIyEfExMSpy8vL9Nvb2//Ly8v/ysnJ/93Y0v//9uX///LZ///rzP//5b7//d+y//DJ
|
|
||||||
nP/js4P/1pxr/8qBTv+5ZzP/tYx0/9HU1f/W2dr9s7i5/YOHif8AAAAAAAAAAAAAAAAAAAAAv7+/DMXF
|
|
||||||
xVnDw8OwycrK99DR0f/Hx8b/0svA/+rZwP//6b///+Cv//HJmf/jsYD/1Zhn/8GScP/Dr6P/zdXZ/8TM
|
|
||||||
0f+vmYz/nWA9/4MuFN8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAx8fHEMDAwF/AwMC3xMXG+sbH
|
|
||||||
yf/Kx8T/18ew/9u+nP/Luqv/yc7V/8jS3v+5qZj/qnJC/6dIAP+lPgD/kigA/ocYAGUAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAy8vLFLq6vGaxt7++vMTP+8y7rf/CtaP/uYZJ/7pi
|
|
||||||
Av+5VwD/tFQA/7BQAP+XMQD+kh4AggAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAADJXQAIzmgBtM9uAP/NcgD/yG0A/8FnAP+9YQD/uVwA/5s3AP+QIQCUAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPWBABTXbwDE14AG/9aC
|
|
||||||
AP/QewD/ynMA/8ZtAP/CaAD/oD0A/4snAKOPAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
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
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK2trQWqqqp3n5+f87m5uf3m5ub69fX1/fPz
|
|
||||||
8//09PT/1NXW/7Syrv/l1sL/4tO5/7u2rv/MztD/6+zt/+bm5vzKysr7srKy/rKysv+1tbX/pKSk/3t7
|
|
||||||
e/xtbW2gcXFxIQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADCwsI+pqam07CwsP7b29v69fX1+/T0
|
|
||||||
9P/19fX/3Nzd/7Oxsf/c1Mf///Td///u0///68n//+rA/+rTr//At6n/yMvN/+fo6v/i4uL9xcXF/K2t
|
|
||||||
rf6srKz/rq6u/5ubm/92dnb3b29vkmpqahgAAAAAAAAAAAAAAAAAAAAAvr6+hbGxsf3Ozs778vLy+vb2
|
|
||||||
9v729vb/4uLi/7Kysv/T0Mz///zv///25P//79n//+zQ///px///5cD//+W2//rYp//jwJb/v62d/8XI
|
|
||||||
y//h5OX/3+Dg/MHBwfyoqKj9p6en/6qqqv+Tk5P/c3Nz829vb4RlZWUQAAAAAAAAAAC9vb378PDw+vn5
|
|
||||||
+f319fX/6Ojo/7a2tv/Pz8/////////99///9+z///Pi///v2f//7ND//+jH///lvv//4rb/99Sm/+3E
|
|
||||||
lf/ms4L/1aF0/7yhjP/Fx8n/3ODi/9vc3P29vb38oqKi/qKiov+kpKT/jo6O/21tbdYAAAAAAAAAAMnJ
|
|
||||||
yZ3Gxsb62tra//Dw8P/Y2Nj/tLS0/8jIyP/28/P////4///57f//9OL//+/Y///sz///6Mb//+W9//3i
|
|
||||||
tP/106X/7MKU/+Kyg//aoXL/0JBe/8R/Tv+2j3f/xMLC/9ja2//Y2Nj9ubm5/J2dnf6fn5//d3d38wAA
|
|
||||||
AAAAAAAAAAAAANXV1RPHx8dlwcHBvMTExPra2tr/5ubm/8LCwv+5ubf/0s3F//3x3v//89r//+zP///p
|
|
||||||
x///5r3//eGz//TSpf/rwZP/4rGB/9igcP/Qj1//xn1K/7tkLf+vXzH/tqqk/9LS0//b3N3/0NXW/aWr
|
|
||||||
r/16fHz9AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzMzMGMPDw2q+vr7AxMTE/NfX1//c3N3/vb/A/8G8
|
|
||||||
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
|
|
||||||
AAAAAQAAgAAAAAABAADAAAAAAAEAAPgAAAAAAQAA/wAAAAABAAD/4AAAAAMAAP/8AAAAAwAA//+AAAAH
|
|
||||||
AAD///AAAA8AAP///gAAHwAA////gAA/AAD///8AAH8AAP///gAA/wAA///8AAH/AAD///gAAf8AAP//
|
|
||||||
8AAD/wAA///AAAf/AAD//4AAD/8AAP//AAAf/wAA//4AAD//AAD//AAAf/8AAP/4AAD//wAA/+AAAf//
|
|
||||||
AAD/wAAD//8AAP+AAA///wAA/wAAP///AAD/AAf///8AAP8A/////wAA/9//////AAD///////8AAP//
|
|
||||||
/////wAA////////AAAoAAAAMAAAAGAAAAABACAAAAAAAIAlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4eHgfcnJyWG9v
|
|
||||||
b1pxcXEcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAg4ODKnh4
|
|
||||||
eLFycnL7iYmJ/oODg/5paWn2bm5ujnBwcBcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIiI
|
|
||||||
iBGBgYGOdnZ2+JKSkv3MzMz9zc3N/83Nzf6/v7/+i4uL/mhoaPFubm6Dd3d3EQAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AACRkZEEiYmJZX19feiFhYX+srKy/szMzP3IyMj/xsbG/8XFxf/ExMT/x8fH/ri4uP6FhYX+aGho7G9v
|
|
||||||
b3h5eXkMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAJqamjyFhYXLhISE/qWlpf7Ozs786enp9u/v7/jZ2dn5xMTE/cPDw//Dw8P/wcHB/8HB
|
|
||||||
wf/ExMT+sbGx/n9/f/5paWnlb29vbWtrawgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAACdnZ0Yk5OToIiIiPybm5v+w8PD/uDg4Pfy8vL58PDw/+/v7//w8PD+7Ozs+9XV
|
|
||||||
1frAwMD9v7+//7+/v/+9vb3/vr6+/8DAwP6rq6v+enp6/mdnZ95xcXFidHR0BQAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAsLCwBZubm26QkJDtl5eX/ru7u/7a2tr48PDw9/Ly8v7w8PD/7u7u/+/v
|
|
||||||
7//x8fH/7+/v/+7u7v7p6en809PT+r29vf27u7v/u7u7/7u7u/+6urr/vLy8/qSkpP53d3f+aWlp1nBw
|
|
||||||
cFdeXl4DAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACsrKw+l5eXz5WVlf6wsLD+1NTU+uzs7Pfz8/P98fHx/+/v
|
|
||||||
7//v7+//8/Pz/+jo6P+ztbb/w8TG/+vr7P/u7u7/7Ozs/+np6fvR0dH6urq6/Li4uP+3t7f/t7e3/7a2
|
|
||||||
tv+4uLj+nZ2d/nNzc/5paWnNeXl5TAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAu7u7Gaenp6Kbm5v8qamp/srKyvzo6Oj38/Pz+/Ly
|
|
||||||
8v/x8fH/8PDw//Ly8v/s7O3/tbW3/6OgnP/m18D/18q2/6Oinv+7vcD/5ebm/+vr6//p6en/5+fn+87O
|
|
||||||
zvu3t7f8tLS0/7S0tP+zs7P/tLS0/7S0tP6Wlpb+cHBw/m5ubsR2dnZCAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK2trQWysrJvoqKi7qWlpf/BwcH+4ODg+PPz
|
|
||||||
8/ny8vL/8vLy//Hx8f/z8/P/8PDw/7u7vP+dnJr/3tTE///02f//79H//+zM///sxv/fzrL/q6eg/7a4
|
|
||||||
vP/f4OH/6erq/+fn5//k5OT8zs7O+rOzs/2wsLD/sLCw/7CwsP+wsLD/sLCw/pCQkP5ubm79bm5uunZ2
|
|
||||||
djgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwsLCPaysrM+mpqb+ubm5/9nZ
|
|
||||||
2fnw8PD49PT0/vLy8v/y8vL/8/Pz//Pz8//CwsL/mZmX/9fQxv//+eX///Pc///v1v//7M///+nJ///o
|
|
||||||
w///57///+e5/+jQrP+yqp//s7a4/9na3P/m5+f/5OTk/+Li4vzJycn6sLCw/a2trf+srKz/rKys/62t
|
|
||||||
rf+qqqr+jIyM/mxsbPxvb2+vd3d3LgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL6+vg29vb2bra2t/LKy
|
|
||||||
sv/Pz8/77Ozs+PX19f3z8/P/8vLy//T09P/19fX/xsbH/5aWl//Oy8j///zw///36f//8+H///Da///u
|
|
||||||
1P//687//+nJ///nw///5b3//+S3///gsf/61qX/5MKa/7iqm/+xtLb/09XX/+Pk5P/i4uL/4eHh/MbG
|
|
||||||
xvqurq78qamp/6mpqf+oqKj/qamp/6ampv6Ghob+ampq+29vb6RxcXEmAAAAAAAAAAAAAAAAAAAAALS0
|
|
||||||
tJu0tLT+xsbG/ebm5vj29vb79PT0//Pz8//09PT/9vb2/83Nzf+VlZX/x8fG/////P///fX///js///0
|
|
||||||
5f//8uD///Da///t1P//687//+nI///nwv//5b3//+S3//vdr//106T/8MmZ/+2+jf/esYX/u6aT/7K0
|
|
||||||
tf/O0dP/4eLi/+Hh4f/e3t79xcXF+qurq/ympqb/paWl/6Wlpf+lpaX/oaGh/oKCgv5qamr4cXFxmW9v
|
|
||||||
bxsAAAAAAAAAALe3t+zf39/59/f3+vf39/709PT/8vLy//T09P/W1tb/mZmZ/8DAwP/////////////8
|
|
||||||
+P//+fH///br///05f//8t///+/Z///t0///687//+nI///nwv//5Lz//+K4//zesP/10qT/7seZ/+i8
|
|
||||||
jf/jsYL/3qd2/9Scbf+7nIb/s7Kz/8rN0P/d3t7/3t7e/9zc3P3ExMT6qKio/KKiov+ioqL/oaGh/6Ki
|
|
||||||
ov+bm5v+fHx8/mtra60AAAAAAAAAALu7u67Gxsb+2dnZ/u/v7/729vb+9PT0/+jo6P+Dg4P/ra2t/+zs
|
|
||||||
7P/////////////99///+vD///br///05f//8t///+/Z///t0///683//+nH///nwv//5Lz//uK2//rc
|
|
||||||
rv/00aP/7saY/+i7jf/isYH/26Z2/9aba//QkF7/yoRT/7qQdP+1r63/yM3Q/9nb2//b29z/2tra/cLC
|
|
||||||
wvujo6P8nZ2d/56env+enp7/lJSU/mtra8EAAAAAAAAAAM/PzwTJyclTxsbGp7m5ufHDw8P+2NjY/u3t
|
|
||||||
7f76+vr+29vb/6urq/+Xl5f/wMC///Pv6/////f///nt///15f//8d7//+/Y///t0///683//+nH///m
|
|
||||||
wf//5Lv//uK3//vbrf/00KL/7saX/+e7jP/hsIH/26V2/9Waav/Pj1//yIRU/8N4Rv+7azf/tH1d/7Wp
|
|
||||||
o//Gycv/1dbW/9nZ2f/Y2Nj9v7+/+6GhofycnJz/lZWV/29vb9EAAAAAAAAAAAAAAAAAAAAAAAAAANvb
|
|
||||||
2wzIyMhVxcXFqre3t/LAwMD+2NjY/u/v7/7z8/T+0NDQ/6Wmpv+hoJ7/z8vC//zw4v//9uP///La///u
|
|
||||||
0///68z//+jH///mwf//5Lv//uK1//ncrP/z0KH/7cWW/+e6i//hr4D/26R1/9SZav/Oj1//yINT/8F4
|
|
||||||
R/+7azf/tFoj/65fMv+zopn/vr+//9bW1v/W1tb/2NjZ/9PV1v2vs7X7lpqb/nR2duAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAANzc3AzExMRYwcHBrbW1tfTAwMD+1dXV/uzs7P7s7Oz+x8jI/6Ok
|
|
||||||
pf+uqqX/29HA///u0///7s///+rH///nwP//5Lv//uO2//narf/zz6H/7cSV/+e5iv/grn//2qN0/9SZ
|
|
||||||
af/PjVz/yIBN/799T/+3kHb/uK+s/8XLzv/S1NX/2dnZ/9PU1v/EyMv/rbS3/5uRjf+XZUv/iCsO/3hk
|
|
||||||
XZUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANDQ0A7Dw8NawMDAsbOz
|
|
||||||
s/a+vr7+09PT/unp6f7k5OX+wcLD/6Slpf+6sqn/5dW7///qwv//57v//+K1//rZq//yzqD/7MOV/+e4
|
|
||||||
iv/hrn3/3aNw/9KXav/Am37/tqqg/7/EyP/Q09X/29zd/9bY2f/IzM7/sLa8/5+Vj/+aakz/nkUP/580
|
|
||||||
AP+bMwD+hh4A/n8XADoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAANfX1w/ExMRbvr6+s7Gxsfe8vLz+0dHR/ubm5v7c3d7+vL2//6mnp//HvKn/79ew//7c
|
|
||||||
qv/1z5//8MSU/+e3iP/NrIz/tqmd/7m7v//LztH/3N3e/9ja3P/JzdH/tLm//6KYkv+gcU3/plEP/6k/
|
|
||||||
AP+lQAD/oz8A/585AP6MJwD+gRsAxIgAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAM7OzhG+vr5fvLy8tbCwsPm7u7v+zs7O/uLi
|
|
||||||
4/7U1df/t7q8/7GsqP/MuaD/vbCf/7O1tv/Hycz/2tzd/9rd3v/N0dX/t73D/6eck/+neEz/r1wO/7JO
|
|
||||||
AP+wTQD/rEwA/6lIAP+oRgD/oT4A/o8pAP6DHADXiBsAFQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANTU
|
|
||||||
1BK7u7tiu7u7tq6urvm6urr9zMzM/t3d3/7O0NP/19vf/93f4v/Q1Nj/usDI/6uhlf+tgE3/t2YP/7tZ
|
|
||||||
AP+5WQD/tVgA/7NVAP+wUQD/r04A/6xLAP+jQAD+kSsA/oUdAN+PHAAeAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAMzMzBS8vLxkt7i5uaqwtvm7sav+x6SD/rCklv+zh07/v3AO/8Vm
|
|
||||||
AP/CZgD/vmQA/7xgAP+5XQD/t1oA/7VXAP+yUwD/sFIA/6ZEAP+SLQD+hyAA5o8dACYAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANR8Jl7LYgD9y2kA/s90
|
|
||||||
AP/LcgD/yXAA/8VsAP/DaQD/wGYA/75iAP+7XwD/uFwA/7ZZAP+2WAD/qUgA/5QtAP6IIQDskh4ALwAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7XkAa9Bo
|
|
||||||
APnRdQD90n0A/s96AP/MdQD/ynIA/8dvAP/EawD/wmgA/79lAP+9YQD/ul4A/7pdAP+uTwD/lC4A/osj
|
|
||||||
APCYIgA5AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANhC
|
|
||||||
AATjdwCS0WsA/dV9Av3WggD+034A/9B7AP/OdwD/y3QA/8lxAP/GbQD/w2oA/8FnAP++YwD/vmIA/7FR
|
|
||||||
AP+VMAD+jCUA9ZknAEIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
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
|
|
||||||
Z//4qz3/9JkZ/+6HAP/nfQD/3XUA/9VuAP7MZQD80GIA4M9gAK7IWgB7yFcARcBRABUAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAD/mwBY74UA+vCIAP/ogQD/4XkA/Od5AOPldQCy4HAAedlsAETsbgAVAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAA/5QAJ/WFAFzzhQBE+4MAFgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
||||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////AAD///////8AAP///////wAA///5////
|
|
||||||
AAD//+B///8AAP//gB///wAA//4AB///AAD//AAB//8AAP/wAAB//wAA/8AAAB//AAD/gAAAD/8AAP4A
|
|
||||||
AAAD/wAA+AAAAAD/AADwAAAAAD8AAMAAAAAADwAAgAAAAAADAACAAAAAAAEAAIAAAAAAAQAAwAAAAAAB
|
|
||||||
AAD4AAAAAAEAAP8AAAAAAQAA/+AAAAADAAD//AAAAAMAAP//gAAABwAA///wAAAPAAD///4AAB8AAP//
|
|
||||||
/4AAPwAA////AAB/AAD///4AAP8AAP///AAB/wAA///4AAH/AAD///AAA/8AAP//wAAH/wAA//+AAA//
|
|
||||||
AAD//wAAH/8AAP/+AAA//wAA//wAAH//AAD/+AAA//8AAP/gAAH//wAA/8AAA///AAD/gAAP//8AAP8A
|
|
||||||
AD///wAA/wAH////AAD/AP////8AAP/f/////wAA////////AAD///////8AAP///////wAA
|
|
||||||
</value>
|
|
||||||
</data>
|
|
||||||
</root>
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -1,227 +0,0 @@
|
|||||||
Imports System.IO
|
|
||||||
|
|
||||||
Public Class frmScanFiles
|
|
||||||
|
|
||||||
Dim DragID
|
|
||||||
Dim MouseIsDown As Boolean = False
|
|
||||||
Private Shared _Instance As frmScanFiles = Nothing
|
|
||||||
|
|
||||||
Public Shared Function Instance() As frmScanFiles
|
|
||||||
If _Instance Is Nothing OrElse _Instance.IsDisposed = True Then
|
|
||||||
_Instance = New frmScanFiles
|
|
||||||
End If
|
|
||||||
_Instance.BringToFront()
|
|
||||||
Return _Instance
|
|
||||||
End Function
|
|
||||||
Private Sub frmScanFiles_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
|
|
||||||
ClassWindowLocation.SaveFormLocationSize(Me, 9999, CURRENT_SCREEN_ID, Me.Name)
|
|
||||||
End Sub
|
|
||||||
Private Sub frmScanFiles_Load(sender As Object, e As EventArgs) Handles Me.Load
|
|
||||||
Load_Files()
|
|
||||||
ClassWindowLocation.LoadFormLocationSize(Me, 9999, CURRENT_SCREEN_ID, Me.Name)
|
|
||||||
End Sub
|
|
||||||
Sub Clear_and_Reload_Files()
|
|
||||||
Try
|
|
||||||
PdfViewer1.DocumentFilePath = ""
|
|
||||||
Dim del = "DELETE FROM TBPMO_FILES_USER where HANDLE_TYPE = 'SCAN' AND UPPER(USER_WORK) = UPPER('" & USER_USERNAME & "')"
|
|
||||||
If MYDB_ECM.ExecuteNonQuery(del) Then
|
|
||||||
' Make a reference to a directory.
|
|
||||||
Dim di As New DirectoryInfo(CURRENT_SCAN_FOLDERWATCH)
|
|
||||||
' Get a reference to each file in that directory.
|
|
||||||
Dim fiArr As FileInfo() = di.GetFiles()
|
|
||||||
' Display the names of the files.
|
|
||||||
|
|
||||||
Dim fri As FileInfo
|
|
||||||
For Each fri In fiArr
|
|
||||||
Dim irregular As Boolean = False
|
|
||||||
For Each row As DataRow In DTEXCLUDE_FILES.Rows
|
|
||||||
Dim content As String = row.Item(0).ToString.ToLower
|
|
||||||
If fri.Name.ToLower.Contains(content) Then
|
|
||||||
irregular = True
|
|
||||||
Exit For
|
|
||||||
End If
|
|
||||||
Next
|
|
||||||
If irregular = False Then
|
|
||||||
Dim handletype As String
|
|
||||||
If fri.FullName.EndsWith(".msg") Then
|
|
||||||
handletype = "SCAN_OUTLOOK_MESSAGE"
|
|
||||||
Else
|
|
||||||
handletype = "SCAN"
|
|
||||||
End If
|
|
||||||
ClassHelper.Insert_USER_File(fri.FullName, handletype)
|
|
||||||
End If
|
|
||||||
Next fri
|
|
||||||
ClassFolderWatcher.Check_Scan_Files()
|
|
||||||
Load_Files()
|
|
||||||
End If
|
|
||||||
Catch ex As Exception
|
|
||||||
|
|
||||||
End Try
|
|
||||||
End Sub
|
|
||||||
Sub Load_Files()
|
|
||||||
Try
|
|
||||||
ListView1.Items.Clear()
|
|
||||||
Dim i = 0
|
|
||||||
For Each row As DataRow In CURRENT_SCAN_TABLE.Rows
|
|
||||||
Dim extension = Path.GetExtension(row.Item("FILENAME2WORK").ToString)
|
|
||||||
Dim filestring = row.Item("FILENAME2WORK")
|
|
||||||
If ClassHelper.CheckFileIsInUse(filestring) = False Then
|
|
||||||
Dim filename = row.Item("FILENAME_ONLY").ToString
|
|
||||||
Dim ID = row.Item("GUID").ToString
|
|
||||||
'We can only find associated exes by extension, so don't show any files that have no extension
|
|
||||||
If IsNothing(extension) Then
|
|
||||||
Else
|
|
||||||
If extension.Contains("pdf") Then
|
|
||||||
'Add the file to the ListView, with the executable path as the key to the ImageList's image
|
|
||||||
ListView1.Items.Add(filename, 0)
|
|
||||||
Else
|
|
||||||
ListView1.Items.Add(filename)
|
|
||||||
End If
|
|
||||||
ListView1.Items(i).Tag = ID
|
|
||||||
i += 1
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
Next
|
|
||||||
If CURRENT_SCAN_TABLE.Rows.Count = 0 Then
|
|
||||||
Me.Close()
|
|
||||||
End If
|
|
||||||
Catch ex As Exception
|
|
||||||
MsgBox("unexpected Error in Load Scanfiles:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
|
||||||
End Try
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Private Sub btnrefresh_Click(sender As Object, e As EventArgs) Handles btnrefresh.Click
|
|
||||||
Clear_and_Reload_Files()
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Private Sub PdfViewer1_CurrentPageChanged(sender As Object, e As DevExpress.XtraPdfViewer.PdfCurrentPageChangedEventArgs) Handles PdfViewer1.CurrentPageChanged
|
|
||||||
PDF_Pagenumber()
|
|
||||||
End Sub
|
|
||||||
Sub PDF_Pagenumber()
|
|
||||||
Try
|
|
||||||
pdfstatuslblPageNumber.Text = "Page " & PdfViewer1.CurrentPageNumber & "/" & PdfViewer1.PageCount
|
|
||||||
Catch ex As Exception
|
|
||||||
|
|
||||||
End Try
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Private Sub ListView1_ItemSelectionChanged(sender As Object, e As ListViewItemSelectionChangedEventArgs) Handles ListView1.ItemSelectionChanged
|
|
||||||
If ListView1.SelectedItems.Count = 1 Then
|
|
||||||
Dim i = ListView1.FocusedItem
|
|
||||||
Dim i1 = i.Text
|
|
||||||
If Not IsNothing(i) Then
|
|
||||||
If i.Text.ToLower.EndsWith("pdf") Then
|
|
||||||
Me.Cursor = Cursors.WaitCursor
|
|
||||||
Panel1.Visible = True
|
|
||||||
PdfViewer1.DocumentFilePath = ""
|
|
||||||
Dim docpath = CURRENT_SCAN_FOLDERWATCH & "\" & i.Text
|
|
||||||
PdfViewer1.LoadDocument(docpath)
|
|
||||||
'PdfViewer1.HorizontalScroll.Visible = True
|
|
||||||
Else
|
|
||||||
Panel1.Visible = False
|
|
||||||
PdfViewer1.DocumentFilePath = ""
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
Me.Cursor = Cursors.Default
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Private Sub ToolStripDropDownButton1_Click(sender As Object, e As EventArgs) Handles ToolStripDropDownButton1.Click
|
|
||||||
PdfViewer1.ZoomFactor = 30
|
|
||||||
End Sub
|
|
||||||
'Private Sub ListView1_MouseDown(sender As Object, e As MouseEventArgs) Handles ListView1.MouseDown
|
|
||||||
' If ListView1.SelectedItems.Count = 1 Then
|
|
||||||
' Dim i = ListView1.FocusedItem
|
|
||||||
' Dim i1 = i.Text
|
|
||||||
' If Not IsNothing(i) Then
|
|
||||||
' MouseIsDown = True
|
|
||||||
' DragID = i.Tag
|
|
||||||
' Console.WriteLine("Mouse Down")
|
|
||||||
' End If
|
|
||||||
' End If
|
|
||||||
'End Sub
|
|
||||||
|
|
||||||
Private Sub ListView1_MouseMove(sender As Object, e As MouseEventArgs) Handles ListView1.MouseMove
|
|
||||||
If MouseIsDown Then
|
|
||||||
'Initiate dragging.
|
|
||||||
PdfViewer1.DocumentFilePath = ""
|
|
||||||
ListView1.DoDragDrop(DragID, DragDropEffects.Copy)
|
|
||||||
|
|
||||||
End If
|
|
||||||
MouseIsDown = False
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Private Sub ListView1_ItemDrag(sender As Object, e As ItemDragEventArgs) Handles ListView1.ItemDrag
|
|
||||||
If ListView1.SelectedItems.Count = 1 Then
|
|
||||||
Dim i = ListView1.FocusedItem
|
|
||||||
Dim i1 = i.Text
|
|
||||||
If Not IsNothing(i) Then
|
|
||||||
MouseIsDown = True
|
|
||||||
DragID = i.Tag
|
|
||||||
'Console.WriteLine("Mouse Down")
|
|
||||||
PdfViewer1.DocumentFilePath = ""
|
|
||||||
ListView1.DoDragDrop("SCAN;" & DragID.ToString, DragDropEffects.Copy)
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Private Sub PdfViewer1_DocumentChanged(sender As Object, e As DevExpress.XtraPdfViewer.PdfDocumentChangedEventArgs) Handles PdfViewer1.DocumentChanged
|
|
||||||
PDF_Pagenumber()
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Private Sub btndelete_Click(sender As Object, e As EventArgs) Handles btndelete.Click
|
|
||||||
Try
|
|
||||||
If ListView1.SelectedItems.Count = 1 Then
|
|
||||||
PdfViewer1.DocumentFilePath = ""
|
|
||||||
Dim i = ListView1.FocusedItem
|
|
||||||
Dim i1 = i.Text
|
|
||||||
If Not IsNothing(i) Then
|
|
||||||
Dim del = "DELETE FROM TBPMO_FILES_USER where GUID = " & i.Tag
|
|
||||||
If MYDB_ECM.ExecuteNonQuery(del) Then
|
|
||||||
ClassFolderWatcher.Check_Scan_Files()
|
|
||||||
Load_Files()
|
|
||||||
Else
|
|
||||||
MsgBox("Could not delete the entry. Check the logfile!", MsgBoxStyle.Information)
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
Else
|
|
||||||
MsgBox("Please choose a file!", MsgBoxStyle.Information)
|
|
||||||
End If
|
|
||||||
Catch ex As Exception
|
|
||||||
MsgBox("Unexpected Error in Delete Scanfile:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
|
||||||
End Try
|
|
||||||
|
|
||||||
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Private Sub frmScanFiles_Shown(sender As Object, e As EventArgs) Handles Me.Shown
|
|
||||||
Me.BringToFront()
|
|
||||||
TimerCheckScanFiles.Start()
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Private Sub chkInFront_CheckedChanged(sender As Object, e As EventArgs) Handles chkInFront.CheckedChanged
|
|
||||||
My.Settings.Save()
|
|
||||||
End Sub
|
|
||||||
Private Sub Timer1_Tick_1(sender As Object, e As EventArgs) Handles TimerCheckScanFiles.Tick
|
|
||||||
If CURRENT_SCAN_TABLE.Rows.Count <> ListView1.Items.Count Then
|
|
||||||
'Dim result As MsgBoxResult
|
|
||||||
'Dim msg = "Neue Dateien wurden gescann"
|
|
||||||
'result = MessageBox.Show(msg, "Confirmation needed:", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
|
|
||||||
'If result = MsgBoxResult.No Then
|
|
||||||
|
|
||||||
'End If
|
|
||||||
Load_Files()
|
|
||||||
End If
|
|
||||||
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
|
|
||||||
PdfViewer1.DocumentFilePath = ""
|
|
||||||
Dim del = "DELETE FROM TBPMO_FILES_USER where HANDLE_TYPE = 'SCAN' AND UPPER(USER_WORK) = UPPER('" & USER_USERNAME & "')"
|
|
||||||
If MYDB_ECM.ExecuteNonQuery(del) Then
|
|
||||||
ClassFolderWatcher.Check_Scan_Files()
|
|
||||||
Load_Files()
|
|
||||||
End If
|
|
||||||
End Sub
|
|
||||||
End Class
|
|
||||||
@@ -126,10 +126,10 @@
|
|||||||
</data>
|
</data>
|
||||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
<data name="OBJECT_TYPELabel.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="OBJECT_TYPELabel.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>6, 25</value>
|
<value>7, 33</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="OBJECT_TYPELabel.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="OBJECT_TYPELabel.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>62, 15</value>
|
<value>74, 20</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="OBJECT_TYPELabel.TabIndex" type="System.Int32, mscorlib">
|
<data name="OBJECT_TYPELabel.TabIndex" type="System.Int32, mscorlib">
|
||||||
<value>5</value>
|
<value>5</value>
|
||||||
@@ -160,10 +160,10 @@
|
|||||||
<value>True</value>
|
<value>True</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="FW_DOCTYPE_IDLabel.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="FW_DOCTYPE_IDLabel.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>428, 25</value>
|
<value>489, 33</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="FW_DOCTYPE_IDLabel.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="FW_DOCTYPE_IDLabel.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>70, 15</value>
|
<value>86, 20</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="FW_DOCTYPE_IDLabel.TabIndex" type="System.Int32, mscorlib">
|
<data name="FW_DOCTYPE_IDLabel.TabIndex" type="System.Int32, mscorlib">
|
||||||
<value>6</value>
|
<value>6</value>
|
||||||
@@ -190,10 +190,10 @@
|
|||||||
<value>True</value>
|
<value>True</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="PATHLabel.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="PATHLabel.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>6, 54</value>
|
<value>7, 72</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="PATHLabel.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="PATHLabel.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>73, 15</value>
|
<value>84, 20</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="PATHLabel.TabIndex" type="System.Int32, mscorlib">
|
<data name="PATHLabel.TabIndex" type="System.Int32, mscorlib">
|
||||||
<value>8</value>
|
<value>8</value>
|
||||||
@@ -217,10 +217,10 @@
|
|||||||
<value>True</value>
|
<value>True</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Label1.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="Label1.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>12, 9</value>
|
<value>14, 12</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Label1.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="Label1.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>61, 15</value>
|
<value>79, 20</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Label1.TabIndex" type="System.Int32, mscorlib">
|
<data name="Label1.TabIndex" type="System.Int32, mscorlib">
|
||||||
<value>0</value>
|
<value>0</value>
|
||||||
@@ -244,10 +244,13 @@
|
|||||||
<value>Top, Left, Right</value>
|
<value>Top, Left, Right</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="txtFilepath.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="txtFilepath.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>15, 27</value>
|
<value>17, 36</value>
|
||||||
|
</data>
|
||||||
|
<data name="txtFilepath.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||||
|
<value>3, 4, 3, 4</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="txtFilepath.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="txtFilepath.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>559, 23</value>
|
<value>655, 27</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="txtFilepath.TabIndex" type="System.Int32, mscorlib">
|
<data name="txtFilepath.TabIndex" type="System.Int32, mscorlib">
|
||||||
<value>1</value>
|
<value>1</value>
|
||||||
@@ -271,10 +274,10 @@
|
|||||||
<value>Segoe UI Semibold, 9.75pt, style=Bold</value>
|
<value>Segoe UI Semibold, 9.75pt, style=Bold</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Label2.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="Label2.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>12, 58</value>
|
<value>14, 77</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Label2.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="Label2.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>188, 17</value>
|
<value>238, 23</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Label2.TabIndex" type="System.Int32, mscorlib">
|
<data name="Label2.TabIndex" type="System.Int32, mscorlib">
|
||||||
<value>2</value>
|
<value>2</value>
|
||||||
@@ -294,21 +297,24 @@
|
|||||||
<data name=">>Label2.ZOrder" xml:space="preserve">
|
<data name=">>Label2.ZOrder" xml:space="preserve">
|
||||||
<value>8</value>
|
<value>8</value>
|
||||||
</data>
|
</data>
|
||||||
<metadata name="ToolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
|
||||||
<value>891, 17</value>
|
|
||||||
</metadata>
|
|
||||||
<data name="cmbDokumentart.Font" type="System.Drawing.Font, System.Drawing">
|
<data name="cmbDokumentart.Font" type="System.Drawing.Font, System.Drawing">
|
||||||
<value>Segoe UI Semibold, 9.75pt, style=Bold</value>
|
<value>Segoe UI Semibold, 9.75pt, style=Bold</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="cmbDokumentart.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="cmbDokumentart.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>15, 78</value>
|
<value>17, 104</value>
|
||||||
|
</data>
|
||||||
|
<data name="cmbDokumentart.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||||
|
<value>3, 4, 3, 4</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="cmbDokumentart.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="cmbDokumentart.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>203, 25</value>
|
<value>231, 29</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="cmbDokumentart.TabIndex" type="System.Int32, mscorlib">
|
<data name="cmbDokumentart.TabIndex" type="System.Int32, mscorlib">
|
||||||
<value>3</value>
|
<value>3</value>
|
||||||
</data>
|
</data>
|
||||||
|
<metadata name="ToolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>891, 17</value>
|
||||||
|
</metadata>
|
||||||
<data name="cmbDokumentart.ToolTip" xml:space="preserve">
|
<data name="cmbDokumentart.ToolTip" xml:space="preserve">
|
||||||
<value>Auswahl der Dokumentart - Wird für nächste Eingabe gespeichert</value>
|
<value>Auswahl der Dokumentart - Wird für nächste Eingabe gespeichert</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -340,10 +346,13 @@
|
|||||||
<value>MiddleLeft</value>
|
<value>MiddleLeft</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="btnindex.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="btnindex.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>416, 592</value>
|
<value>493, 592</value>
|
||||||
|
</data>
|
||||||
|
<data name="btnindex.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||||
|
<value>3, 4, 3, 4</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="btnindex.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="btnindex.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>158, 28</value>
|
<value>181, 37</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="btnindex.TabIndex" type="System.Int32, mscorlib">
|
<data name="btnindex.TabIndex" type="System.Int32, mscorlib">
|
||||||
<value>4</value>
|
<value>4</value>
|
||||||
@@ -370,10 +379,13 @@
|
|||||||
<value>Top, Left, Right</value>
|
<value>Top, Left, Right</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="OBJECT_TYPETextBox.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="OBJECT_TYPETextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>85, 22</value>
|
<value>97, 29</value>
|
||||||
|
</data>
|
||||||
|
<data name="OBJECT_TYPETextBox.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||||
|
<value>3, 4, 3, 4</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="OBJECT_TYPETextBox.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="OBJECT_TYPETextBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>281, 23</value>
|
<value>321, 27</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="OBJECT_TYPETextBox.TabIndex" type="System.Int32, mscorlib">
|
<data name="OBJECT_TYPETextBox.TabIndex" type="System.Int32, mscorlib">
|
||||||
<value>6</value>
|
<value>6</value>
|
||||||
@@ -390,65 +402,17 @@
|
|||||||
<data name=">>OBJECT_TYPETextBox.ZOrder" xml:space="preserve">
|
<data name=">>OBJECT_TYPETextBox.ZOrder" xml:space="preserve">
|
||||||
<value>5</value>
|
<value>5</value>
|
||||||
</data>
|
</data>
|
||||||
<data name=">>PATHTextBox.Name" xml:space="preserve">
|
|
||||||
<value>PATHTextBox</value>
|
|
||||||
</data>
|
|
||||||
<data name=">>PATHTextBox.Type" xml:space="preserve">
|
|
||||||
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</data>
|
|
||||||
<data name=">>PATHTextBox.Parent" xml:space="preserve">
|
|
||||||
<value>GroupBox1</value>
|
|
||||||
</data>
|
|
||||||
<data name=">>PATHTextBox.ZOrder" xml:space="preserve">
|
|
||||||
<value>1</value>
|
|
||||||
</data>
|
|
||||||
<data name=">>DOCTYPE_IDTextBox.Name" xml:space="preserve">
|
|
||||||
<value>DOCTYPE_IDTextBox</value>
|
|
||||||
</data>
|
|
||||||
<data name=">>DOCTYPE_IDTextBox.Type" xml:space="preserve">
|
|
||||||
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</data>
|
|
||||||
<data name=">>DOCTYPE_IDTextBox.Parent" xml:space="preserve">
|
|
||||||
<value>GroupBox1</value>
|
|
||||||
</data>
|
|
||||||
<data name=">>DOCTYPE_IDTextBox.ZOrder" xml:space="preserve">
|
|
||||||
<value>3</value>
|
|
||||||
</data>
|
|
||||||
<data name="GroupBox1.Font" type="System.Drawing.Font, System.Drawing">
|
|
||||||
<value>Segoe UI, 9pt, style=Italic</value>
|
|
||||||
</data>
|
|
||||||
<data name="GroupBox1.Location" type="System.Drawing.Point, System.Drawing">
|
|
||||||
<value>15, 117</value>
|
|
||||||
</data>
|
|
||||||
<data name="GroupBox1.Size" type="System.Drawing.Size, System.Drawing">
|
|
||||||
<value>560, 80</value>
|
|
||||||
</data>
|
|
||||||
<data name="GroupBox1.TabIndex" type="System.Int32, mscorlib">
|
|
||||||
<value>7</value>
|
|
||||||
</data>
|
|
||||||
<data name="GroupBox1.Text" xml:space="preserve">
|
|
||||||
<value>Gewählte Indexierungsdaten - Automatik:</value>
|
|
||||||
</data>
|
|
||||||
<data name=">>GroupBox1.Name" xml:space="preserve">
|
|
||||||
<value>GroupBox1</value>
|
|
||||||
</data>
|
|
||||||
<data name=">>GroupBox1.Type" xml:space="preserve">
|
|
||||||
<value>System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</data>
|
|
||||||
<data name=">>GroupBox1.Parent" xml:space="preserve">
|
|
||||||
<value>$this</value>
|
|
||||||
</data>
|
|
||||||
<data name=">>GroupBox1.ZOrder" xml:space="preserve">
|
|
||||||
<value>5</value>
|
|
||||||
</data>
|
|
||||||
<data name="PATHTextBox.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
|
<data name="PATHTextBox.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
|
||||||
<value>Top, Left, Right</value>
|
<value>Top, Left, Right</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="PATHTextBox.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="PATHTextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>85, 51</value>
|
<value>97, 68</value>
|
||||||
|
</data>
|
||||||
|
<data name="PATHTextBox.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||||
|
<value>3, 4, 3, 4</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="PATHTextBox.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="PATHTextBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>469, 23</value>
|
<value>535, 27</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="PATHTextBox.TabIndex" type="System.Int32, mscorlib">
|
<data name="PATHTextBox.TabIndex" type="System.Int32, mscorlib">
|
||||||
<value>9</value>
|
<value>9</value>
|
||||||
@@ -469,10 +433,13 @@
|
|||||||
<value>Top, Right</value>
|
<value>Top, Right</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="DOCTYPE_IDTextBox.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="DOCTYPE_IDTextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>504, 22</value>
|
<value>576, 29</value>
|
||||||
|
</data>
|
||||||
|
<data name="DOCTYPE_IDTextBox.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||||
|
<value>3, 4, 3, 4</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="DOCTYPE_IDTextBox.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="DOCTYPE_IDTextBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>50, 23</value>
|
<value>57, 27</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="DOCTYPE_IDTextBox.TabIndex" type="System.Int32, mscorlib">
|
<data name="DOCTYPE_IDTextBox.TabIndex" type="System.Int32, mscorlib">
|
||||||
<value>7</value>
|
<value>7</value>
|
||||||
@@ -489,6 +456,39 @@
|
|||||||
<data name=">>DOCTYPE_IDTextBox.ZOrder" xml:space="preserve">
|
<data name=">>DOCTYPE_IDTextBox.ZOrder" xml:space="preserve">
|
||||||
<value>3</value>
|
<value>3</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="GroupBox1.Font" type="System.Drawing.Font, System.Drawing">
|
||||||
|
<value>Segoe UI, 9pt, style=Italic</value>
|
||||||
|
</data>
|
||||||
|
<data name="GroupBox1.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
|
<value>17, 156</value>
|
||||||
|
</data>
|
||||||
|
<data name="GroupBox1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||||
|
<value>3, 4, 3, 4</value>
|
||||||
|
</data>
|
||||||
|
<data name="GroupBox1.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||||
|
<value>3, 4, 3, 4</value>
|
||||||
|
</data>
|
||||||
|
<data name="GroupBox1.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>640, 107</value>
|
||||||
|
</data>
|
||||||
|
<data name="GroupBox1.TabIndex" type="System.Int32, mscorlib">
|
||||||
|
<value>7</value>
|
||||||
|
</data>
|
||||||
|
<data name="GroupBox1.Text" xml:space="preserve">
|
||||||
|
<value>Gewählte Indexierungsdaten - Automatik:</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>GroupBox1.Name" xml:space="preserve">
|
||||||
|
<value>GroupBox1</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>GroupBox1.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>GroupBox1.Parent" xml:space="preserve">
|
||||||
|
<value>$this</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>GroupBox1.ZOrder" xml:space="preserve">
|
||||||
|
<value>5</value>
|
||||||
|
</data>
|
||||||
<data name="chkdelete_origin.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
|
<data name="chkdelete_origin.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
|
||||||
<value>Bottom, Left</value>
|
<value>Bottom, Left</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -499,10 +499,13 @@
|
|||||||
<value>Verdana, 9.75pt, style=Italic</value>
|
<value>Verdana, 9.75pt, style=Italic</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="chkdelete_origin.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="chkdelete_origin.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>24, 598</value>
|
<value>27, 603</value>
|
||||||
|
</data>
|
||||||
|
<data name="chkdelete_origin.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||||
|
<value>3, 4, 3, 4</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="chkdelete_origin.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="chkdelete_origin.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>177, 20</value>
|
<value>226, 24</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="chkdelete_origin.TabIndex" type="System.Int32, mscorlib">
|
<data name="chkdelete_origin.TabIndex" type="System.Int32, mscorlib">
|
||||||
<value>8</value>
|
<value>8</value>
|
||||||
@@ -510,9 +513,6 @@
|
|||||||
<data name="chkdelete_origin.Text" xml:space="preserve">
|
<data name="chkdelete_origin.Text" xml:space="preserve">
|
||||||
<value>Lösche Ursprungsdatei</value>
|
<value>Lösche Ursprungsdatei</value>
|
||||||
</data>
|
</data>
|
||||||
<metadata name="ToolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
|
||||||
<value>891, 17</value>
|
|
||||||
</metadata>
|
|
||||||
<data name="chkdelete_origin.ToolTip" xml:space="preserve">
|
<data name="chkdelete_origin.ToolTip" xml:space="preserve">
|
||||||
<value>Die gedroppte Datei wird nach Ablage in windream gelöscht - Wird für nächste Eingabe gespeichert</value>
|
<value>Die gedroppte Datei wird nach Ablage in windream gelöscht - Wird für nächste Eingabe gespeichert</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -538,10 +538,13 @@
|
|||||||
<value>Verdana, 9.75pt, style=Bold, Italic</value>
|
<value>Verdana, 9.75pt, style=Bold, Italic</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="chkMultiIndexer.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="chkMultiIndexer.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>24, 624</value>
|
<value>27, 638</value>
|
||||||
|
</data>
|
||||||
|
<data name="chkMultiIndexer.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||||
|
<value>3, 4, 3, 4</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="chkMultiIndexer.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="chkMultiIndexer.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>519, 20</value>
|
<value>688, 24</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="chkMultiIndexer.TabIndex" type="System.Int32, mscorlib">
|
<data name="chkMultiIndexer.TabIndex" type="System.Int32, mscorlib">
|
||||||
<value>9</value>
|
<value>9</value>
|
||||||
@@ -574,10 +577,16 @@
|
|||||||
<value>Top, Bottom, Left, Right</value>
|
<value>Top, Bottom, Left, Right</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="grbxControls.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="grbxControls.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>15, 203</value>
|
<value>17, 271</value>
|
||||||
|
</data>
|
||||||
|
<data name="grbxControls.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||||
|
<value>3, 4, 3, 4</value>
|
||||||
|
</data>
|
||||||
|
<data name="grbxControls.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||||
|
<value>3, 4, 3, 4</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="grbxControls.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="grbxControls.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>559, 336</value>
|
<value>656, 255</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="grbxControls.TabIndex" type="System.Int32, mscorlib">
|
<data name="grbxControls.TabIndex" type="System.Int32, mscorlib">
|
||||||
<value>10</value>
|
<value>10</value>
|
||||||
@@ -610,10 +619,10 @@
|
|||||||
<value>Segoe UI Semibold, 9pt, style=Bold, Italic</value>
|
<value>Segoe UI Semibold, 9pt, style=Bold, Italic</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="lblSubfolder.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="lblSubfolder.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>21, 545</value>
|
<value>24, 529</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="lblSubfolder.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="lblSubfolder.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>134, 15</value>
|
<value>172, 20</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="lblSubfolder.TabIndex" type="System.Int32, mscorlib">
|
<data name="lblSubfolder.TabIndex" type="System.Int32, mscorlib">
|
||||||
<value>11</value>
|
<value>11</value>
|
||||||
@@ -643,10 +652,13 @@
|
|||||||
<value>Segoe UI Semibold, 9pt, style=Bold, Italic</value>
|
<value>Segoe UI Semibold, 9pt, style=Bold, Italic</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="txtSubfolder.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="txtSubfolder.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>24, 563</value>
|
<value>27, 553</value>
|
||||||
|
</data>
|
||||||
|
<data name="txtSubfolder.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||||
|
<value>3, 4, 3, 4</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="txtSubfolder.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="txtSubfolder.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>551, 24</value>
|
<value>629, 28</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="txtSubfolder.TabIndex" type="System.Int32, mscorlib">
|
<data name="txtSubfolder.TabIndex" type="System.Int32, mscorlib">
|
||||||
<value>12</value>
|
<value>12</value>
|
||||||
@@ -670,10 +682,10 @@
|
|||||||
<value>True</value>
|
<value>True</value>
|
||||||
</metadata>
|
</metadata>
|
||||||
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
|
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
|
||||||
<value>7, 15</value>
|
<value>8, 20</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
|
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>589, 661</value>
|
<value>690, 684</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="$this.Font" type="System.Drawing.Font, System.Drawing">
|
<data name="$this.Font" type="System.Drawing.Font, System.Drawing">
|
||||||
<value>Segoe UI, 9pt</value>
|
<value>Segoe UI, 9pt</value>
|
||||||
@@ -1127,6 +1139,9 @@
|
|||||||
wAH//wAA///AAf//AAD//8AB//8AAP//wAH//wAA///AD///AAD///H///8AAP///////wAA
|
wAH//wAA///AAf//AAD//8AB//8AAP//wAH//wAA///AD///AAD///H///8AAP///////wAA
|
||||||
</value>
|
</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="$this.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||||
|
<value>3, 4, 3, 4</value>
|
||||||
|
</data>
|
||||||
<data name="$this.Text" xml:space="preserve">
|
<data name="$this.Text" xml:space="preserve">
|
||||||
<value>Import nach windream:</value>
|
<value>Import nach windream:</value>
|
||||||
</data>
|
</data>
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ Imports System.Security.Principal
|
|||||||
Imports System.Data.SqlClient
|
Imports System.Data.SqlClient
|
||||||
Imports Oracle.ManagedDataAccess.Client
|
Imports Oracle.ManagedDataAccess.Client
|
||||||
Imports DigitalData.Modules.Windream
|
Imports DigitalData.Modules.Windream
|
||||||
|
Imports System.ComponentModel
|
||||||
|
|
||||||
Public Class frmWM_IndexFile
|
Public Class frmWM_IndexFile
|
||||||
Dim droptype As String
|
Dim droptype As String
|
||||||
@@ -11,7 +12,8 @@ Public Class frmWM_IndexFile
|
|||||||
Dim MULTIFILES As Integer = 0
|
Dim MULTIFILES As Integer = 0
|
||||||
Dim formloaded As Boolean = False
|
Dim formloaded As Boolean = False
|
||||||
Dim DTVWPMO_DOKUMENTTYPES As DataTable
|
Dim DTVWPMO_DOKUMENTTYPES As DataTable
|
||||||
|
Dim FILE_WORKED As Boolean = False
|
||||||
|
Dim FILE_HASH As String = ""
|
||||||
Public Class SW
|
Public Class SW
|
||||||
Public label As String
|
Public label As String
|
||||||
Public stopwatch As Stopwatch
|
Public stopwatch As Stopwatch
|
||||||
@@ -32,14 +34,25 @@ Public Class frmWM_IndexFile
|
|||||||
|
|
||||||
|
|
||||||
End Class
|
End Class
|
||||||
|
Private _multiIndexDecisionMade As Boolean = False
|
||||||
|
Private _multiIndexOverwriteExisting As Boolean = False
|
||||||
|
Private _processedFileIds As New List(Of Integer)
|
||||||
|
|
||||||
Function WORK_FILE(ImportFilePath As String, VerzeichnisZiel As String, vDokart_ID As Integer, vDokart As String, multiindex As Boolean)
|
Function WORK_FILE(ImportFilePath As String, VerzeichnisZiel As String, vDokart_ID As Integer, vDokart As String, multiindex As Boolean)
|
||||||
'Dim swWORK_FILE As New SW("WORK_FILE: " & DOCTYPE_IDTextBox.Text)
|
'Dim swWORK_FILE As New SW("WORK_FILE: " & DOCTYPE_IDTextBox.Text)
|
||||||
Try
|
Try
|
||||||
|
LOGGER.Debug($" WORK_FILE aufgerufen: CURRENT_FILEID={CURRENT_FILEID}, Datei={Me.txtFilepath.Text}")
|
||||||
|
LOGGER.Debug($"=== WORK_FILE START: multiindex={multiindex} ===")
|
||||||
|
LOGGER.Debug($" Datei: {ImportFilePath}")
|
||||||
|
LOGGER.Debug($" Flags: _multiIndexDecisionMade={_multiIndexDecisionMade}, _multiIndexOverwriteExisting={_multiIndexOverwriteExisting}")
|
||||||
|
|
||||||
CURRENT_DOC_ID = Nothing
|
CURRENT_DOC_ID = Nothing
|
||||||
Dim odeleteRights As Boolean = True
|
Dim odeleteRights As Boolean = True
|
||||||
Dim oSQL = $"SELECT GUID FROM TBPMO_FILES_USER WHERE FILENAME2WORK = '{ImportFilePath}' AND WORKED = 0 AND USER_WORK = '{Environment.UserName}'"
|
|
||||||
CURRENT_FILEID = MYDB_ECM.GetScalarValue(oSQL)
|
|
||||||
|
|
||||||
|
If CURRENT_FILEID = 0 OrElse CURRENT_FILEID = Nothing Then
|
||||||
|
LOGGER.Error("WORK_FILE: CURRENT_FILEID ist ungültig (0 oder Nothing)!")
|
||||||
|
Return False
|
||||||
|
End If
|
||||||
CURRENT_DOKARTSTRING = vDokart
|
CURRENT_DOKARTSTRING = vDokart
|
||||||
Dim err As Boolean = False
|
Dim err As Boolean = False
|
||||||
'#################################################################
|
'#################################################################
|
||||||
@@ -52,35 +65,88 @@ Public Class frmWM_IndexFile
|
|||||||
End If
|
End If
|
||||||
sw.Done()
|
sw.Done()
|
||||||
sw = New SW("CheckFileExists")
|
sw = New SW("CheckFileExists")
|
||||||
Dim existsonlyasMaster = False
|
|
||||||
|
|
||||||
If WMMOD.TestFileExists(CURRENT_NEWFILENAME) = True Then
|
If WMMOD.TestFileExists(CURRENT_NEWFILENAME) = True Then
|
||||||
Dim msg = "Eine Datei mit identischem Namen existiert bereits! Wollen Sie die bestehende Datei ersetzen? (KEINE VERSIONIERUNG)" & vbNewLine & "Beachten Sie das vorhandene Versionen beim Ersetzen mit gelöscht werden!"
|
' ── Multi-Index-Logik: Entscheidung nur einmal fragen ─────────
|
||||||
If USER_LANGUAGE <> "de-DE" Then
|
Dim shouldOverwrite As Boolean
|
||||||
msg = "There is already a file with the same name! Would You like to replace the file?" & vbNewLine & "All versions will also be deleted!"
|
|
||||||
|
If multiindex = True Then
|
||||||
|
If _multiIndexDecisionMade = False Then
|
||||||
|
LOGGER.Debug(" ZEIGE DIALOG für Multi-Index-Entscheidung")
|
||||||
|
' Erste Kollision → Benutzer fragen
|
||||||
|
Dim msg As String
|
||||||
|
If USER_LANGUAGE <> "de-DE" Then
|
||||||
|
msg = "A file with the same name already exists!" & vbCrLf &
|
||||||
|
"This decision will apply to ALL remaining files in Multi-Indexing." & vbCrLf & vbCrLf &
|
||||||
|
"YES → Replace existing files (all former versions will be deleted)" & vbCrLf &
|
||||||
|
"NO → Keep both files (files will be versioned automatically)"
|
||||||
|
Else
|
||||||
|
msg = "Eine Datei mit identischem Namen existiert bereits!" & vbCrLf &
|
||||||
|
"Diese Entscheidung gilt für ALLE weiteren Dateien im Multi-Indexing." & vbCrLf & vbCrLf &
|
||||||
|
"JA → Bestehende Dateien ersetzen (alle vorherigen Versionen werden dabei gelöscht)" & vbCrLf &
|
||||||
|
"NEIN → Dateien versionieren (beide Dateien werden behalten)"
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim result As MsgBoxResult = MessageBox.Show(msg, "File already exists (Multi-Indexing):",
|
||||||
|
MessageBoxButtons.YesNo, MessageBoxIcon.Question)
|
||||||
|
|
||||||
|
_multiIndexOverwriteExisting = (result = MsgBoxResult.Yes)
|
||||||
|
_multiIndexDecisionMade = True
|
||||||
|
|
||||||
|
LOGGER.Debug($" Benutzer-Entscheidung: {If(_multiIndexOverwriteExisting, "OVERWRITE", "VERSION")}")
|
||||||
|
LOGGER.Debug($" Flags NACH Dialog: _multiIndexDecisionMade={_multiIndexDecisionMade}, _multiIndexOverwriteExisting={_multiIndexOverwriteExisting}")
|
||||||
|
Else
|
||||||
|
LOGGER.Debug($" Verwende GESPEICHERTE Entscheidung: {If(_multiIndexOverwriteExisting, "OVERWRITE", "VERSION")}")
|
||||||
|
End If
|
||||||
|
|
||||||
|
shouldOverwrite = _multiIndexOverwriteExisting
|
||||||
|
Else
|
||||||
|
' Einzeldatei → wie bisher
|
||||||
|
LOGGER.Debug(" Einzeldatei: Zeige Dialog")
|
||||||
|
Dim msg As String
|
||||||
|
If USER_LANGUAGE <> "de-DE" Then
|
||||||
|
msg = "A file with the same name already exists!" & vbCrLf &
|
||||||
|
"YES → Replace the existing file (all former versions will be deleted)" & vbCrLf &
|
||||||
|
"NO → Keep both files (your file will be versioned automatically)"
|
||||||
|
Else
|
||||||
|
msg = "Eine Datei mit identischem Namen existiert bereits!" & vbCrLf &
|
||||||
|
"JA → Bestehende Datei ersetzen (alle vorherigen Versionen werden dabei gelöscht)" & vbCrLf &
|
||||||
|
"NEIN → Beide Dateien behalten (Ihre Datei wird automatisch versioniert)"
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim result As MsgBoxResult = MessageBox.Show(msg, "File already exists:",
|
||||||
|
MessageBoxButtons.YesNo, MessageBoxIcon.Question)
|
||||||
|
shouldOverwrite = (result = MsgBoxResult.Yes)
|
||||||
|
LOGGER.Debug($" Einzeldatei-Entscheidung: {If(shouldOverwrite, "OVERWRITE", "VERSION")}")
|
||||||
End If
|
End If
|
||||||
Dim result As MsgBoxResult
|
|
||||||
result = MessageBox.Show(msg, "File already exists:", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
|
' ── Entscheidung ausführen ────────────────────────────────────
|
||||||
If result = MsgBoxResult.Yes Then
|
If shouldOverwrite Then
|
||||||
If WMMOD.RemoveFile(CURRENT_NEWFILENAME) Then
|
LOGGER.Debug(" Führe OVERWRITE aus")
|
||||||
'swWORK_FILE.Done()
|
If WMMOD.RemoveFile(CURRENT_NEWFILENAME) = False Then
|
||||||
Return False
|
Return False
|
||||||
|
Else
|
||||||
|
Dim oNormPath = WMMOD.GetNormalizedPath(CURRENT_NEWFILENAME, 0)
|
||||||
|
Dim oGetDoc = String.Format(
|
||||||
|
"SELECT DOC_ID,RECORD_ID FROM TBPMO_DOC_RECORD_LINK RL " &
|
||||||
|
"INNER JOIN TBPMO_DOCRESULT_LIST DRL WITH (NOLOCK) ON RL.DOC_ID = DRL.DocID " &
|
||||||
|
"WHERE FULL_FILENAME = '{0}'", oNormPath)
|
||||||
|
Dim oDT As DataTable = MYDB_ECM.GetDatatable(oGetDoc)
|
||||||
|
|
||||||
|
For Each oRow As DataRow In oDT.Rows
|
||||||
|
Dim oDoc = New With {
|
||||||
|
.DocId = oRow("DOC_ID"),
|
||||||
|
.RecordId = oRow("RECORD_ID")
|
||||||
|
}
|
||||||
|
ClassFileResult.Delete_ResultFile(oDoc.DocId, oDoc.RecordId, 1)
|
||||||
|
Next
|
||||||
End If
|
End If
|
||||||
Else
|
Else
|
||||||
|
LOGGER.Debug(" Führe VERSIONIERUNG aus")
|
||||||
CURRENT_NEWFILENAME = ClassHelper.Versionierung_Datei(CURRENT_NEWFILENAME)
|
CURRENT_NEWFILENAME = ClassHelper.Versionierung_Datei(CURRENT_NEWFILENAME)
|
||||||
|
LOGGER.Debug($" Neuer Dateiname: {CURRENT_NEWFILENAME}")
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Else
|
Else
|
||||||
If WMMOD.TestFileExists(CURRENT_NEWFILENAME) = True Then
|
LOGGER.Debug(" Datei existiert NICHT, kein Konflikt")
|
||||||
ClassHelper.InsertEssential_Log(CURRENT_RECORD_ID, "RECORD-ID", "FILE ALREADY EXISTED WITH NON-USER RIGHTS: " & CURRENT_NEWFILENAME)
|
|
||||||
CURRENT_NEWFILENAME = ClassHelper.Versionierung_Datei(CURRENT_NEWFILENAME)
|
|
||||||
existsonlyasMaster = True
|
|
||||||
Dim msg = "Eine Datei mit identischem Namen existiert bereits!" & vbNewLine & "Sie besitzen allerdings nicht die Rechte diese Datei zu bearbeiten." & vbNewLine & "Aus diesem Grund wird Ihre Datei versioniert!"
|
|
||||||
If USER_LANGUAGE <> "de-DE" Then
|
|
||||||
msg = "There is already a file with the same name!" & vbNewLine & "But You do not own the rights to work it." & vbNewLine & "Therefore Your file will be versioned!"
|
|
||||||
End If
|
|
||||||
MsgBox(msg, MsgBoxStyle.Information)
|
|
||||||
End If
|
|
||||||
End If
|
End If
|
||||||
sw.Done()
|
sw.Done()
|
||||||
'#################################################################
|
'#################################################################
|
||||||
@@ -140,10 +206,10 @@ Public Class frmWM_IndexFile
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
sw.Done()
|
sw.Done()
|
||||||
If DT_AUTO_INDEXE Is Nothing = False Then 'CHECK DD
|
If DT_AUTO_INDEXE Is Nothing = False Then 'CHECK DD
|
||||||
If DT_AUTO_INDEXE.Rows.Count > 0 Then
|
If DT_AUTO_INDEXE.Rows.Count > 0 Then
|
||||||
Dim Count As Integer = 0
|
Dim Count As Integer = 0
|
||||||
For Each row As DataRow In DT_AUTO_INDEXE.Rows
|
For Each row As DataRow In DT_AUTO_INDEXE.Rows
|
||||||
Dim oAutoIndexname = row.Item("INDEXNAME").ToString
|
Dim oAutoIndexname = row.Item("INDEXNAME").ToString
|
||||||
Dim oAutoIndexValue = row.Item("VALUE")
|
Dim oAutoIndexValue = row.Item("VALUE")
|
||||||
If oAutoIndexValue.ToString.StartsWith("@") Then
|
If oAutoIndexValue.ToString.StartsWith("@") Then
|
||||||
@@ -207,7 +273,7 @@ Public Class frmWM_IndexFile
|
|||||||
err = True
|
err = True
|
||||||
Exit For
|
Exit For
|
||||||
End If
|
End If
|
||||||
|
_processedFileIds.Add(CURRENT_FILEID)
|
||||||
Next
|
Next
|
||||||
If err = True Then
|
If err = True Then
|
||||||
'swWORK_FILE.Done()
|
'swWORK_FILE.Done()
|
||||||
@@ -215,12 +281,12 @@ Public Class frmWM_IndexFile
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
Else
|
Else
|
||||||
'MsgBox("Attention in Work-File:" & vbNewLine & "No indices were defined (1)!", MsgBoxStyle.Critical)
|
'MsgBox("Attention in Work-File:" & vBCrlf & "No indices were defined (1)!", MsgBoxStyle.Critical)
|
||||||
'Return False
|
'Return False
|
||||||
End If
|
End If
|
||||||
Else
|
Else
|
||||||
'swWORK_FILE.Done()
|
'swWORK_FILE.Done()
|
||||||
MsgBox("Attention in Work-File:" & vbNewLine & "No indices were defined (0)!", MsgBoxStyle.Critical)
|
MsgBox("Attention in Work-File:" & vbCrLf & "No indices were defined (0)!", MsgBoxStyle.Critical)
|
||||||
|
|
||||||
Return False
|
Return False
|
||||||
End If
|
End If
|
||||||
@@ -232,7 +298,7 @@ Public Class frmWM_IndexFile
|
|||||||
LOGGER.Info("oReldocpath: " & oReldocpath)
|
LOGGER.Info("oReldocpath: " & oReldocpath)
|
||||||
CURRENT_WM_OBJECT = WMMOD.GetFileByPath(oReldocpath)
|
CURRENT_WM_OBJECT = WMMOD.GetFileByPath(oReldocpath)
|
||||||
If IsNothing(CURRENT_WM_OBJECT) Then
|
If IsNothing(CURRENT_WM_OBJECT) Then
|
||||||
MsgBox("Attention in Work-File:" & vbNewLine & "Could not create final windream-object!", MsgBoxStyle.Critical)
|
MsgBox("Attention in Work-File:" & vbCrLf & "Could not create final windream-object!", MsgBoxStyle.Critical)
|
||||||
Return False
|
Return False
|
||||||
End If
|
End If
|
||||||
LOGGER.Info("...CURRENT_WM_OBJECT created: " & oReldocpath)
|
LOGGER.Info("...CURRENT_WM_OBJECT created: " & oReldocpath)
|
||||||
@@ -243,15 +309,23 @@ Public Class frmWM_IndexFile
|
|||||||
stg1 = "Success:"
|
stg1 = "Success:"
|
||||||
End If
|
End If
|
||||||
If multiindex = False Then CURRENT_NOTIFICATION_MSG = stg
|
If multiindex = False Then CURRENT_NOTIFICATION_MSG = stg
|
||||||
MYDB_ECM.GetScalarValue("UPDATE TBPMO_FILES_USER SET WORKED = 1 WHERE GUID = " & CURRENT_FILEID)
|
|
||||||
For Each row As DataRow In CURRENT_TBPMO_FILES_USER.Rows
|
' Neu - NUR wenn NICHT im Multi-Index-Modus:
|
||||||
If row.Item("GUID") = CURRENT_FILEID Then
|
If multiindex = False Then
|
||||||
row.Item("WORKED") = 1
|
MYDB_ECM.ExecuteNonQuery("UPDATE TBPMO_FILES_USER SET WORKED = 1 WHERE GUID = " & CURRENT_FILEID)
|
||||||
If IsNothing(droptype) Then
|
LOGGER.Debug($" Einzeldatei als WORKED markiert: GUID={CURRENT_FILEID}")
|
||||||
droptype = row.Item("HANDLE_TYPE")
|
|
||||||
End If
|
' ✅ DEBUG: Was steht JETZT in der DB?
|
||||||
End If
|
Dim debugSQL = $"SELECT GUID, WORKED, FILENAME_ONLY FROM TBPMO_FILES_USER WHERE USER_WORK = '{USER_USERNAME}' ORDER BY GUID DESC"
|
||||||
Next
|
Dim debugDT = MYDB_ECM.GetDatatable(debugSQL)
|
||||||
|
LOGGER.Debug($" ═══ DEBUG NACH UPDATE ═══")
|
||||||
|
LOGGER.Debug($" Anzahl Dateien in DB: {debugDT.Rows.Count}")
|
||||||
|
For Each row As DataRow In debugDT.Rows
|
||||||
|
LOGGER.Debug($" - GUID={row("GUID")}, WORKED={row("WORKED")}, Datei={row("FILENAME_ONLY")}")
|
||||||
|
Next
|
||||||
|
LOGGER.Debug($" ═══════════════════════")
|
||||||
|
End If
|
||||||
|
|
||||||
If IsNothing(CURRENT_DOC_ID) Then
|
If IsNothing(CURRENT_DOC_ID) Then
|
||||||
sw = New SW("GettingDocID")
|
sw = New SW("GettingDocID")
|
||||||
sql = String.Format("SELECT DocID FROM VWPMO_DOC_SYNC WHERE FULL_FILENAME = '{0}' AND CONVERT(DATE,Change_DateTime) = CONVERT(DATE,GETDATE())", CURRENT_FILEIN_WD)
|
sql = String.Format("SELECT DocID FROM VWPMO_DOC_SYNC WHERE FULL_FILENAME = '{0}' AND CONVERT(DATE,Change_DateTime) = CONVERT(DATE,GETDATE())", CURRENT_FILEIN_WD)
|
||||||
@@ -291,7 +365,7 @@ Public Class frmWM_IndexFile
|
|||||||
FAU_AD_USER = ""
|
FAU_AD_USER = ""
|
||||||
ClassFileResult.DocID = CURRENT_DOC_ID
|
ClassFileResult.DocID = CURRENT_DOC_ID
|
||||||
ClassFileResult.SET_DOCID_INDICES()
|
ClassFileResult.SET_DOCID_INDICES()
|
||||||
If ClassDOC_SEARCH.CREATE_DOC_RELATED_LINKS(CURRENT_DOC_ID, CURRENT_RECORD_ID) = False Then
|
If ClassDOC_SEARCH.PROF_DOC_CREATE_UPDATE(CURRENT_DOC_ID, CURRENT_RECORD_ID, FILE_HASH) = False Then
|
||||||
|
|
||||||
stg = "Unerwarteter Fehler: Der Record-Link konnte nicht erzeugt werden! Überprüfen Sie das Log."
|
stg = "Unerwarteter Fehler: Der Record-Link konnte nicht erzeugt werden! Überprüfen Sie das Log."
|
||||||
If USER_LANGUAGE <> "de-DE" Then
|
If USER_LANGUAGE <> "de-DE" Then
|
||||||
@@ -301,7 +375,7 @@ Public Class frmWM_IndexFile
|
|||||||
Else
|
Else
|
||||||
sw = New SW("Setting_Rights")
|
sw = New SW("Setting_Rights")
|
||||||
If ClassDOC_SEARCH.SET_WD_RIGHTS(CURRENT_WM_OBJECT, CURRENT_DOC_ID, CURRENT_FILEIN_WD, odeleteRights) = False Then
|
If ClassDOC_SEARCH.SET_WD_RIGHTS(CURRENT_WM_OBJECT, CURRENT_DOC_ID, CURRENT_FILEIN_WD, odeleteRights) = False Then
|
||||||
MsgBox("The rights for the new file could not be created! Please check the logfile!" & vbNewLine &
|
MsgBox("The rights for the new file could not be created! Please check the logfile!" & vbCrLf &
|
||||||
"orgFLOW will try to give You at least reading rights!", MsgBoxStyle.Exclamation)
|
"orgFLOW will try to give You at least reading rights!", MsgBoxStyle.Exclamation)
|
||||||
DD_Rights.ClassRights.SetRightExplicit(CURRENT_DOC_ID, CURRENT_FILEIN_WD, USER_USERNAME, 1)
|
DD_Rights.ClassRights.SetRightExplicit(CURRENT_DOC_ID, CURRENT_FILEIN_WD, USER_USERNAME, 1)
|
||||||
ClassHelper.InsertEssential_Log(CURRENT_DOC_ID, "DOC-ID", "NEW FILE INDEXING - RIGHTS COULD NOT BE SET!!")
|
ClassHelper.InsertEssential_Log(CURRENT_DOC_ID, "DOC-ID", "NEW FILE INDEXING - RIGHTS COULD NOT BE SET!!")
|
||||||
@@ -331,7 +405,7 @@ Public Class frmWM_IndexFile
|
|||||||
Return False
|
Return False
|
||||||
End If
|
End If
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
MsgBox("Unexpected error in Work-File:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
MsgBox("Unexpected error in Work-File:" & vbCrLf & ex.Message, MsgBoxStyle.Critical)
|
||||||
'swWORK_FILE.Done()
|
'swWORK_FILE.Done()
|
||||||
Return False
|
Return False
|
||||||
End Try
|
End Try
|
||||||
@@ -372,68 +446,266 @@ Public Class frmWM_IndexFile
|
|||||||
End Try
|
End Try
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
Sub Handle_File(doctype_id As Integer)
|
Private Function Handle_File(doctype_id As Integer) As Boolean
|
||||||
Try
|
Try
|
||||||
Me.Cursor = Cursors.WaitCursor
|
Me.Cursor = Cursors.WaitCursor
|
||||||
SaveMySettingsValue("WD_IndexDeleteDocs", WD_IndexDeleteDocs, "ConfigMain")
|
SaveMySettingsValue("WD_IndexDeleteDocs", WD_IndexDeleteDocs, "ConfigMain")
|
||||||
' clsWM.MY_WDOBJECTTYPE = Me.OBJECT_TYPETextBox.Text
|
|
||||||
'Multi-Indexer ist aktiv
|
LOGGER.Debug("=== HANDLE_FILE START ===")
|
||||||
|
LOGGER.Debug($" Flags VOR Reset: _multiIndexDecisionMade={_multiIndexDecisionMade}, _multiIndexOverwriteExisting={_multiIndexOverwriteExisting}")
|
||||||
|
|
||||||
|
_multiIndexDecisionMade = False
|
||||||
|
_multiIndexOverwriteExisting = False
|
||||||
|
|
||||||
|
LOGGER.Debug($" Flags NACH Reset: _multiIndexDecisionMade={_multiIndexDecisionMade}, _multiIndexOverwriteExisting={_multiIndexOverwriteExisting}")
|
||||||
|
LOGGER.Debug($" chkMultiIndexer: Visible={chkMultiIndexer.Visible}, Checked={chkMultiIndexer.Checked}")
|
||||||
|
|
||||||
If chkMultiIndexer.Visible = True And chkMultiIndexer.Checked = True Then
|
If chkMultiIndexer.Visible = True And chkMultiIndexer.Checked = True Then
|
||||||
'Die erste Datei indexieren
|
LOGGER.Debug("=== MULTI-INDEXING MODUS AKTIV ===")
|
||||||
If WORK_FILE(Me.txtFilepath.Text, Me.PATHTextBox.Text, doctype_id, My.Settings.WD_INDEXDOKART_SAVE, True) = True Then
|
|
||||||
'Und nun die folgenden
|
' ── Erste Datei: FILE_HASH und CURRENT_FILEID sicherstellen ───
|
||||||
Dim DTFiles2Work As DataTable = MYDB_ECM.GetDatatable("SELECT * FROM TBPMO_FILES_USER WHERE WORKED = 0
|
Dim firstFileId As Integer = CURRENT_FILEID
|
||||||
AND GUID <> " & CURRENT_FILEID & " AND UPPER(USER_WORK) = UPPER('" & USER_USERNAME & "')")
|
Dim firstFileName As String = CURRENT_FILENAME
|
||||||
If Not DTFiles2Work Is Nothing Then
|
|
||||||
Dim err = False
|
For Each oRow As DataRow In CURRENT_TBPMO_FILES_USER.Rows
|
||||||
For Each filerow As DataRow In DTFiles2Work.Rows
|
If oRow.Item("GUID") = CURRENT_FILEID Then
|
||||||
CURRENT_FILEID = filerow.Item("GUID")
|
FILE_HASH = oRow.Item("FILE_HASH")
|
||||||
CURRENT_FILENAME = filerow.Item("FILENAME2WORK")
|
firstFileName = oRow.Item("FILENAME2WORK")
|
||||||
Dim HandleType As String = filerow.Item("HANDLE_TYPE")
|
Exit For
|
||||||
aktFiledropped = CURRENT_FILENAME
|
End If
|
||||||
If HandleType = "@DROPFROMFSYSTEM@" Then
|
Next
|
||||||
droptype = "dragdrop file"
|
|
||||||
ElseIf HandleType = "@OUTLOOK_ATTMNT@" Then
|
LOGGER.Debug($" Verarbeite erste Datei (CURRENT_FILEID={firstFileId}): {firstFileName}")
|
||||||
droptype = "dragdrop attachment"
|
|
||||||
ElseIf HandleType = "@OUTLOOKMESSAGE@" Then
|
If WORK_FILE(firstFileName, Me.PATHTextBox.Text, doctype_id, My.Settings.WD_INDEXDOKART_SAVE, True) = False Then
|
||||||
droptype = "dragdrop message"
|
Me.Cursor = Cursors.Default
|
||||||
Else
|
LOGGER.Warn(" Erste Datei fehlgeschlagen!")
|
||||||
droptype = filerow.Item("HANDLE_TYPE")
|
Return False
|
||||||
End If
|
End If
|
||||||
If WORK_FILE(CURRENT_FILENAME, Me.PATHTextBox.Text, doctype_id, My.Settings.WD_INDEXDOKART_SAVE, True) = False Then
|
|
||||||
err = True
|
LOGGER.Debug(" Erste Datei erfolgreich verarbeitet")
|
||||||
Exit For
|
|
||||||
End If
|
' ── WICHTIG: Erste Datei als WORKED markieren UND DataTable neu laden ──
|
||||||
Next
|
LOGGER.Debug($" Markiere erste Datei als WORKED: GUID={firstFileId}")
|
||||||
Me.Cursor = Cursors.Default
|
MYDB_ECM.ExecuteNonQuery($"UPDATE TBPMO_FILES_USER SET WORKED = 1 WHERE GUID = {firstFileId}")
|
||||||
If err = False Then
|
|
||||||
NEW_FILES_ADDED = True
|
LOGGER.Debug(" Lade aktualisierte Dateiliste aus Datenbank...")
|
||||||
Dim stg As String = "Alle Dateien wurden mit Multiindexing erfolgreich nach windream übertragen!"
|
|
||||||
Dim stg1 As String = "Erfolgsmeldung"
|
' ✅ SCHRITT 1: Prüfe mit COUNT(*), wie viele Dateien in der DB sind
|
||||||
If USER_LANGUAGE <> "de-DE" Then
|
Dim countSQL = $"SELECT COUNT(*) FROM TBPMO_FILES_USER WHERE USER_WORK = '{USER_USERNAME}' AND WORKED = 0"
|
||||||
stg = "All files were transferred via Multiindexing to windream"
|
Dim remainingCount = CInt(MYDB_ECM.GetScalarValue(countSQL))
|
||||||
stg1 = "Success:"
|
LOGGER.Debug($" SQL COUNT ergab: {remainingCount} verbleibende Dateien")
|
||||||
End If
|
|
||||||
MsgBox(stg, MsgBoxStyle.Information, stg1)
|
' ✅ SCHRITT 2: Nur wenn COUNT > 0, dann DataTable laden
|
||||||
Me.Close()
|
If remainingCount > 0 Then
|
||||||
End If
|
CURRENT_TBPMO_FILES_USER = MYDB_ECM.GetDatatable("SELECT *, CONVERT(BIT,0) AS DELETE_FILE FROM TBPMO_FILES_USER " &
|
||||||
|
"WHERE USER_WORK = '" & USER_USERNAME & "' AND WORKED = 0")
|
||||||
|
|
||||||
|
If CURRENT_TBPMO_FILES_USER Is Nothing Then
|
||||||
|
LOGGER.Error(" WARNUNG: GetDatatable gab Nothing zurück, obwohl COUNT > 0!")
|
||||||
|
CURRENT_TBPMO_FILES_USER = New DataTable()
|
||||||
|
Else
|
||||||
|
LOGGER.Debug($" DataTable geladen: {CURRENT_TBPMO_FILES_USER.Rows.Count} Zeilen")
|
||||||
|
End If
|
||||||
|
Else
|
||||||
|
LOGGER.Info(" SQL COUNT ergab 0 Dateien")
|
||||||
|
CURRENT_TBPMO_FILES_USER = New DataTable()
|
||||||
|
End If
|
||||||
|
|
||||||
|
' ── Folgedateien aus aktualierter DataTable verarbeiten ──
|
||||||
|
If CURRENT_TBPMO_FILES_USER Is Nothing OrElse CURRENT_TBPMO_FILES_USER.Rows.Count = 0 Then
|
||||||
|
LOGGER.Info(" Keine weiteren Dateien vorhanden")
|
||||||
|
NEW_FILES_ADDED = True
|
||||||
|
FILE_WORKED = True
|
||||||
|
Me.Cursor = Cursors.Default
|
||||||
|
Me.Close()
|
||||||
|
Return True
|
||||||
|
End If
|
||||||
|
|
||||||
|
LOGGER.Debug($" Weitere Dateien gefunden: {CURRENT_TBPMO_FILES_USER.Rows.Count}")
|
||||||
|
LOGGER.Debug($" Flags VOR Schleife: _multiIndexDecisionMade={_multiIndexDecisionMade}, _multiIndexOverwriteExisting={_multiIndexOverwriteExisting}")
|
||||||
|
|
||||||
|
Dim err As Boolean = False
|
||||||
|
Dim fileCount As Integer = 0
|
||||||
|
For Each filerow As DataRow In CURRENT_TBPMO_FILES_USER.Rows
|
||||||
|
fileCount += 1
|
||||||
|
Dim currentFileId As Integer = filerow.Item("GUID")
|
||||||
|
Dim currentFileName As String = filerow.Item("FILENAME2WORK")
|
||||||
|
Dim currentFileHash As String = filerow.Item("FILE_HASH")
|
||||||
|
|
||||||
|
CURRENT_FILEID = currentFileId
|
||||||
|
CURRENT_FILENAME = currentFileName
|
||||||
|
FILE_HASH = currentFileHash
|
||||||
|
aktFiledropped = currentFileName
|
||||||
|
|
||||||
|
LOGGER.Debug($" [{fileCount}/{CURRENT_TBPMO_FILES_USER.Rows.Count}] Verarbeite Datei: {currentFileName}, FILEID={currentFileId}")
|
||||||
|
LOGGER.Debug($" Flags: _multiIndexDecisionMade={_multiIndexDecisionMade}, _multiIndexOverwriteExisting={_multiIndexOverwriteExisting}")
|
||||||
|
|
||||||
|
Dim handleType As String = filerow.Item("HANDLE_TYPE")
|
||||||
|
Select Case handleType
|
||||||
|
Case "@DROPFROMFSYSTEM@"
|
||||||
|
droptype = "dragdrop file"
|
||||||
|
Case "@OUTLOOK_ATTMNT@"
|
||||||
|
droptype = "dragdrop attachment"
|
||||||
|
Case "@OUTLOOKMESSAGE@"
|
||||||
|
droptype = "dragdrop message"
|
||||||
|
Case Else
|
||||||
|
droptype = handleType
|
||||||
|
End Select
|
||||||
|
|
||||||
|
If WORK_FILE(currentFileName, Me.PATHTextBox.Text, doctype_id, My.Settings.WD_INDEXDOKART_SAVE, True) = False Then
|
||||||
|
err = True
|
||||||
|
LOGGER.Warn($" Datei fehlgeschlagen!")
|
||||||
|
Exit For
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
LOGGER.Debug($" Datei erfolgreich verarbeitet")
|
||||||
|
LOGGER.Debug($" Markiere Datei als WORKED: GUID={currentFileId}")
|
||||||
|
MYDB_ECM.ExecuteNonQuery($"UPDATE TBPMO_FILES_USER SET WORKED = 1 WHERE GUID = {currentFileId}")
|
||||||
|
Next
|
||||||
|
|
||||||
End If
|
Me.Cursor = Cursors.Default
|
||||||
Else 'No MULTI INDEX
|
|
||||||
If WORK_FILE(Me.txtFilepath.Text, Me.PATHTextBox.Text, doctype_id, My.Settings.WD_INDEXDOKART_SAVE, False) = True Then
|
If err = False Then
|
||||||
NEW_FILES_ADDED = True
|
NEW_FILES_ADDED = True
|
||||||
|
FILE_WORKED = True
|
||||||
|
Dim stg As String = "Alle Dateien wurden mit Multiindexing erfolgreich nach windream übertragen!"
|
||||||
|
Dim stg1 As String = "Erfolgsmeldung"
|
||||||
|
If USER_LANGUAGE <> "de-DE" Then
|
||||||
|
stg = "All files were transferred via Multiindexing to windream"
|
||||||
|
stg1 = "Success:"
|
||||||
|
End If
|
||||||
|
LOGGER.Info("=== MULTI-INDEXING ERFOLGREICH ABGESCHLOSSEN ===")
|
||||||
|
MsgBox(stg, MsgBoxStyle.Information, stg1)
|
||||||
Me.Close()
|
Me.Close()
|
||||||
|
Return True
|
||||||
|
End If
|
||||||
|
|
||||||
|
Return False
|
||||||
|
|
||||||
|
Else
|
||||||
|
' ✅ EINZELDATEI MODUS
|
||||||
|
LOGGER.Debug("=== EINZELDATEI MODUS ===")
|
||||||
|
|
||||||
|
' ✅ WICHTIG: CURRENT_FILEID VOR WORK_FILE setzen!
|
||||||
|
For Each oRow As DataRow In CURRENT_TBPMO_FILES_USER.Rows
|
||||||
|
If oRow.Item("FILENAME2WORK") = Me.txtFilepath.Text Then
|
||||||
|
CURRENT_FILEID = CInt(oRow("GUID"))
|
||||||
|
FILE_HASH = oRow("FILE_HASH").ToString()
|
||||||
|
LOGGER.Debug($" Datei gefunden in CURRENT_TBPMO_FILES_USER: FILEID={CURRENT_FILEID}")
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
|
||||||
|
' ✅ Validierung NACH Schleife
|
||||||
|
If CURRENT_FILEID = 0 Then
|
||||||
|
LOGGER.Error($" Datei nicht gefunden in CURRENT_TBPMO_FILES_USER: {Me.txtFilepath.Text}")
|
||||||
|
Me.Cursor = Cursors.Default
|
||||||
|
MessageBox.Show("Die Datei konnte nicht in der Verarbeitungsliste gefunden werden!",
|
||||||
|
"Fehler:", MessageBoxButtons.OK, MessageBoxIcon.Error)
|
||||||
|
Return False
|
||||||
|
End If
|
||||||
|
|
||||||
|
If WORK_FILE(Me.txtFilepath.Text, Me.PATHTextBox.Text, doctype_id, My.Settings.WD_INDEXDOKART_SAVE, False) = False Then
|
||||||
|
Me.Cursor = Cursors.Default
|
||||||
|
MessageBox.Show("Import to windream was not successful." & vbCrLf &
|
||||||
|
"Check the log for further information!",
|
||||||
|
"Unexpected Error in windream-Stream:",
|
||||||
|
MessageBoxButtons.OK, MessageBoxIcon.Error)
|
||||||
|
Return False
|
||||||
|
End If
|
||||||
|
|
||||||
|
' ── Datei erfolgreich verarbeitet ──
|
||||||
|
NEW_FILES_ADDED = True
|
||||||
|
FILE_WORKED = True
|
||||||
|
LOGGER.Debug(" Einzeldatei erfolgreich verarbeitet")
|
||||||
|
|
||||||
|
' ✅ Prüfen, ob weitere Dateien vorhanden sind
|
||||||
|
LOGGER.Debug(" Lade aktualisierte Dateiliste für Einzeldatei-Check...")
|
||||||
|
|
||||||
|
' ✅ SCHRITT 1: Prüfe mit COUNT(*), wie viele Dateien in der DB sind
|
||||||
|
Dim countSQL = $"SELECT COUNT(*) FROM TBPMO_FILES_USER WHERE USER_WORK = '{USER_USERNAME}' AND WORKED = 0"
|
||||||
|
Dim remainingCount = CInt(MYDB_ECM.GetScalarValue(countSQL))
|
||||||
|
LOGGER.Debug($" ═══ SQL COUNT NACH WORK_FILE ═══")
|
||||||
|
LOGGER.Debug($" COUNT(*) ergab: {remainingCount} verbleibende Dateien")
|
||||||
|
|
||||||
|
' ✅ SCHRITT 2: Dateiliste laden UND vergleichen
|
||||||
|
ClassHelper.Create_USER_FILE_TABLE()
|
||||||
|
|
||||||
|
If CURRENT_TBPMO_FILES_USER Is Nothing Then
|
||||||
|
LOGGER.Error($" ❌ KRITISCHER FEHLER: Create_USER_FILE_TABLE gab Nothing zurück!")
|
||||||
|
ElseIf CURRENT_TBPMO_FILES_USER.Rows.Count <> remainingCount Then
|
||||||
|
LOGGER.Error($" ❌ KRITISCHER FEHLER: COUNT ergab {remainingCount}, aber DataTable hat {CURRENT_TBPMO_FILES_USER.Rows.Count} Zeilen!")
|
||||||
|
LOGGER.Error($" ❌ VERDACHT: Race-Condition oder Transaction-Problem!")
|
||||||
Else
|
Else
|
||||||
MessageBox.Show("Import to windream was not successful." & vbNewLine & "Check the log for further information!", "Unexpected Error in windream-Stream:", MessageBoxButtons.OK, MessageBoxIcon.Error)
|
LOGGER.Debug($" ✅ OK: COUNT und DataTable stimmen überein ({remainingCount} Dateien)")
|
||||||
|
End If
|
||||||
|
LOGGER.Debug($" ═══════════════════════════════")
|
||||||
|
|
||||||
|
If CURRENT_TBPMO_FILES_USER IsNot Nothing AndAlso CURRENT_TBPMO_FILES_USER.Rows.Count > 0 Then
|
||||||
|
LOGGER.Info($" Einzeldatei-Modus: Weitere {CURRENT_TBPMO_FILES_USER.Rows.Count} Dateien vorhanden - aktualisiere Formular")
|
||||||
|
|
||||||
|
' ── Lade ERSTE Datei aus der NEUEN Liste ──
|
||||||
|
Dim nextFile = CURRENT_TBPMO_FILES_USER.Rows(0)
|
||||||
|
CURRENT_FILEID = CInt(nextFile("GUID"))
|
||||||
|
CURRENT_FILENAME = nextFile("FILENAME2WORK").ToString()
|
||||||
|
FILE_HASH = nextFile("FILE_HASH").ToString()
|
||||||
|
aktFiledropped = CURRENT_FILENAME
|
||||||
|
txtFilepath.Text = CURRENT_FILENAME
|
||||||
|
|
||||||
|
LOGGER.Debug($" Nächste Datei geladen: FILEID={CURRENT_FILEID}, Datei={CURRENT_FILENAME}")
|
||||||
|
|
||||||
|
' ── Update MULTIFILES-Anzeige ──
|
||||||
|
MULTIFILES = CURRENT_TBPMO_FILES_USER.Rows.Count - 1
|
||||||
|
If MULTIFILES > 0 Then
|
||||||
|
chkMultiIndexer.Text = "Multi-Indexing - Alle nachfolgenden Dateien (" & MULTIFILES & ") identisch indexieren"
|
||||||
|
chkMultiIndexer.Visible = True
|
||||||
|
chkMultiIndexer.Checked = False
|
||||||
|
Else
|
||||||
|
chkMultiIndexer.Visible = False
|
||||||
|
End If
|
||||||
|
|
||||||
|
' ── Handle-Type setzen ──
|
||||||
|
Dim handleType As String = nextFile("HANDLE_TYPE").ToString()
|
||||||
|
Select Case handleType
|
||||||
|
Case "@DROPFROMFSYSTEM@"
|
||||||
|
droptype = "dragdrop file"
|
||||||
|
chkdelete_origin.Visible = True
|
||||||
|
Case "@OUTLOOK_ATTMNT@"
|
||||||
|
droptype = "dragdrop attachment"
|
||||||
|
chkdelete_origin.Visible = True
|
||||||
|
Case "@OUTLOOKMESSAGE@"
|
||||||
|
droptype = "dragdrop message"
|
||||||
|
chkdelete_origin.Visible = True
|
||||||
|
Case "SCAN"
|
||||||
|
droptype = "scan"
|
||||||
|
chkdelete_origin.Visible = False
|
||||||
|
Case Else
|
||||||
|
droptype = handleType
|
||||||
|
chkdelete_origin.Visible = False
|
||||||
|
End Select
|
||||||
|
|
||||||
|
Me.Cursor = Cursors.Default
|
||||||
|
LOGGER.Debug(" Formular bleibt offen für nächste Datei")
|
||||||
|
Return True ' ← Formular bleibt offen!
|
||||||
|
|
||||||
|
Else
|
||||||
|
' ✅ Keine weiteren Dateien → Formular schließen
|
||||||
|
LOGGER.Info(" Einzeldatei-Modus: Keine weiteren Dateien - schließe Formular")
|
||||||
|
Me.Cursor = Cursors.Default
|
||||||
|
Me.Close()
|
||||||
|
Return True
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
Me.Cursor = Cursors.Default
|
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
MsgBox("Error in Indexing_File:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
MsgBox("Error in Indexing_File:" & vbCrLf & ex.Message, MsgBoxStyle.Critical)
|
||||||
|
LOGGER.Error($"Handle_File Exception: {ex.Message}{vbCrLf}{ex.StackTrace}")
|
||||||
|
Return False
|
||||||
|
Finally
|
||||||
|
Me.Cursor = Cursors.Default
|
||||||
End Try
|
End Try
|
||||||
End Sub
|
End Function
|
||||||
Private Sub cmbDokumentart_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cmbDokumentart.SelectedIndexChanged
|
Private Sub cmbDokumentart_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cmbDokumentart.SelectedIndexChanged
|
||||||
Try
|
Try
|
||||||
CURRENT_DOKARTID = 0
|
CURRENT_DOKARTID = 0
|
||||||
@@ -446,7 +718,7 @@ Public Class frmWM_IndexFile
|
|||||||
|
|
||||||
End If
|
End If
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
MsgBox("Error in cmbDokumentart SelectedIndex:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
MsgBox("Error in cmbDokumentart SelectedIndex:" & vbCrLf & ex.Message, MsgBoxStyle.Critical)
|
||||||
End Try
|
End Try
|
||||||
End Sub
|
End Sub
|
||||||
Sub Refresh_Indices_Manual()
|
Sub Refresh_Indices_Manual()
|
||||||
@@ -521,7 +793,7 @@ Public Class frmWM_IndexFile
|
|||||||
Me.Size = New Size(605, 430)
|
Me.Size = New Size(605, 430)
|
||||||
End If
|
End If
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
MsgBox("Error in Refresh_Indices_Manual:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
MsgBox("Error in Refresh_Indices_Manual:" & vbCrLf & ex.Message, MsgBoxStyle.Critical)
|
||||||
End Try
|
End Try
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
@@ -547,7 +819,7 @@ Public Class frmWM_IndexFile
|
|||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
MsgBox("Error in Check_Subfolder:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
MsgBox("Error in Check_Subfolder:" & vbCrLf & ex.Message, MsgBoxStyle.Critical)
|
||||||
lblSubfolder.Visible = False
|
lblSubfolder.Visible = False
|
||||||
txtSubfolder.Visible = False
|
txtSubfolder.Visible = False
|
||||||
CURRENT_CHECK_SUBFOLDER = False
|
CURRENT_CHECK_SUBFOLDER = False
|
||||||
@@ -732,7 +1004,7 @@ Public Class frmWM_IndexFile
|
|||||||
|
|
||||||
End If
|
End If
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
MsgBox("Error in Get_NextComboBoxResults:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
MsgBox("Error in Get_NextComboBoxResults:" & vbCrLf & ex.Message, MsgBoxStyle.Critical)
|
||||||
End Try
|
End Try
|
||||||
End Sub
|
End Sub
|
||||||
Private Sub Renew_ComboboxResults(INDEX_GUID As Integer, SearchString As String, Resultvalue As String)
|
Private Sub Renew_ComboboxResults(INDEX_GUID As Integer, SearchString As String, Resultvalue As String)
|
||||||
@@ -828,7 +1100,7 @@ Public Class frmWM_IndexFile
|
|||||||
Next
|
Next
|
||||||
End If
|
End If
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
LOGGER.Warn(" - Unvorhergesehener Unexpected error in Renew_ComboboxResults - Fehler: " & vbNewLine & ex.Message)
|
LOGGER.Warn(" - Unvorhergesehener Unexpected error in Renew_ComboboxResults - Fehler: " & vbCrLf & ex.Message)
|
||||||
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unvorhergesehener Unexpected error in Renew_ComboboxResults:")
|
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unvorhergesehener Unexpected error in Renew_ComboboxResults:")
|
||||||
End Try
|
End Try
|
||||||
End Sub
|
End Sub
|
||||||
@@ -940,7 +1212,7 @@ Public Class frmWM_IndexFile
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
LOGGER.Warn(" - Unvorhergesehener Unexpected error in AddVorschlag_ComboBox - Indexname: " & indexname & " - Fehler: " & vbNewLine & ex.Message)
|
LOGGER.Warn(" - Unvorhergesehener Unexpected error in AddVorschlag_ComboBox - Indexname: " & indexname & " - Fehler: " & vbCrLf & ex.Message)
|
||||||
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unvorhergesehener Unexpected error in AddVorschlag_ComboBox:")
|
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unvorhergesehener Unexpected error in AddVorschlag_ComboBox:")
|
||||||
End Try
|
End Try
|
||||||
End Sub
|
End Sub
|
||||||
@@ -994,7 +1266,7 @@ Public Class frmWM_IndexFile
|
|||||||
' lvwIndices.Items(Count).SubItems.Add(ParentID)
|
' lvwIndices.Items(Count).SubItems.Add(ParentID)
|
||||||
' End If
|
' End If
|
||||||
'Catch ex As Exception
|
'Catch ex As Exception
|
||||||
' MsgBox("Unexpected Error in Setting Parent-ID" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
' MsgBox("Unexpected Error in Setting Parent-ID" & vBCrlf & ex.Message, MsgBoxStyle.Critical)
|
||||||
'End Try
|
'End Try
|
||||||
'Count = Count + 1
|
'Count = Count + 1
|
||||||
''den Record-Key auslesen
|
''den Record-Key auslesen
|
||||||
@@ -1010,7 +1282,7 @@ Public Class frmWM_IndexFile
|
|||||||
|
|
||||||
End If
|
End If
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
MsgBox("Error in Refresh Indices for Indexing:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
MsgBox("Error in Refresh Indices for Indexing:" & vbCrLf & ex.Message, MsgBoxStyle.Critical)
|
||||||
End Try
|
End Try
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
@@ -1022,66 +1294,91 @@ Public Class frmWM_IndexFile
|
|||||||
CURRENT_FILENAME = ""
|
CURRENT_FILENAME = ""
|
||||||
Me.VWDDINDEX_AUTOMTableAdapter.Connection.ConnectionString = MYDB_ECM.CurrentConnectionString
|
Me.VWDDINDEX_AUTOMTableAdapter.Connection.ConnectionString = MYDB_ECM.CurrentConnectionString
|
||||||
chkMultiIndexer.Checked = False
|
chkMultiIndexer.Checked = False
|
||||||
|
|
||||||
|
' ── Multi-Indexing-Flags beim Formular-Load zurücksetzen ──
|
||||||
|
LOGGER.Debug("=== FORM LOAD: Flags zurücksetzen ===")
|
||||||
|
LOGGER.Debug($" VOR Reset: _multiIndexDecisionMade = {_multiIndexDecisionMade}, _multiIndexOverwriteExisting = {_multiIndexOverwriteExisting}")
|
||||||
|
|
||||||
|
_multiIndexDecisionMade = False
|
||||||
|
_multiIndexOverwriteExisting = False
|
||||||
|
_processedFileIds.Clear()
|
||||||
|
|
||||||
|
LOGGER.Debug($" NACH Reset: _multiIndexDecisionMade = {_multiIndexDecisionMade}, _multiIndexOverwriteExisting = {_multiIndexOverwriteExisting}")
|
||||||
|
LOGGER.Debug($" ProcessedFileIds Count: {_processedFileIds.Count}")
|
||||||
|
|
||||||
LOGGER.Debug("frmWD_Index_Dokart_Load")
|
LOGGER.Debug("frmWD_Index_Dokart_Load")
|
||||||
chkdelete_origin.Checked = False
|
chkdelete_origin.Checked = False
|
||||||
chkdelete_origin.Visible = False
|
chkdelete_origin.Visible = False
|
||||||
Dim oReconnect = WMMOD.SessionReconnect
|
Dim oReconnect = WMMOD.SessionReconnect
|
||||||
'= New Windream(LOGCONFIG, False, WMDriveLetter, WMPATH_PREFIX, True, WM_SERVER, WM_USER, WM_USER_PW, WM_DOMAIN)
|
|
||||||
Dim HandleType As String
|
' ── WICHTIG: Prüfen, ob überhaupt Dateien vorhanden sind ──
|
||||||
For Each row As DataRow In CURRENT_TBPMO_FILES_USER.Rows
|
If CURRENT_TBPMO_FILES_USER Is Nothing OrElse CURRENT_TBPMO_FILES_USER.Rows.Count = 0 Then
|
||||||
If row.Item("GUID") = CURRENT_FILEID Then
|
LOGGER.Info("frmWD_Index_Dokart_Load: Keine Dateien vorhanden - Formular wird geschlossen")
|
||||||
CURRENT_FILENAME = row.Item("FILENAME2WORK")
|
Me.Close()
|
||||||
HandleType = row.Item("HANDLE_TYPE")
|
|
||||||
End If
|
|
||||||
Next
|
|
||||||
If CURRENT_FILENAME = "" Then
|
|
||||||
MsgBox("Chekc the Temp Files Table, as it seems to be empty!", MsgBoxStyle.Exclamation)
|
|
||||||
Exit Sub
|
Exit Sub
|
||||||
End If
|
End If
|
||||||
MULTIFILES = 0
|
|
||||||
For Each row As DataRow In CURRENT_TBPMO_FILES_USER.Rows
|
Dim oHandleType As String
|
||||||
If row.Item("GUID") <> CURRENT_FILEID Then
|
For Each oRow As DataRow In CURRENT_TBPMO_FILES_USER.Rows
|
||||||
MULTIFILES += 1
|
If oRow.Item("GUID") = CURRENT_FILEID Then
|
||||||
|
CURRENT_FILENAME = oRow.Item("FILENAME2WORK")
|
||||||
|
oHandleType = oRow.Item("HANDLE_TYPE")
|
||||||
|
FILE_HASH = oRow.Item("FILE_HASH")
|
||||||
|
Exit For ' ← Hinzugefügt: Schleife verlassen, wenn gefunden
|
||||||
End If
|
End If
|
||||||
Next
|
Next
|
||||||
|
|
||||||
|
If CURRENT_FILENAME = "" Then
|
||||||
|
LOGGER.Warn("Check the Temp Files Table, as it seems to be empty or CURRENT_FILEID not found!")
|
||||||
|
MsgBox("Check the Temp Files Table, as it seems to be empty!", MsgBoxStyle.Exclamation)
|
||||||
|
Me.Close() ' ← Formular schließen statt Exit Sub
|
||||||
|
Exit Sub
|
||||||
|
End If
|
||||||
|
|
||||||
|
' ── KORREKTUR: Zähle alle Dateien außer der aktuellen ──
|
||||||
|
MULTIFILES = CURRENT_TBPMO_FILES_USER.Rows.Count - 1
|
||||||
|
LOGGER.Debug($" MULTIFILES berechnet: Gesamt={CURRENT_TBPMO_FILES_USER.Rows.Count}, MULTIFILES={MULTIFILES}")
|
||||||
|
|
||||||
If MULTIFILES > 0 Then
|
If MULTIFILES > 0 Then
|
||||||
chkMultiIndexer.Text = "Multi-Indexing - Alle nachfolgenden Dateien (" & MULTIFILES & ") identisch indexieren"
|
chkMultiIndexer.Text = "Multi-Indexing - Alle nachfolgenden Dateien (" & MULTIFILES & ") identisch indexieren"
|
||||||
chkMultiIndexer.Visible = True
|
chkMultiIndexer.Visible = True
|
||||||
|
LOGGER.Debug($" chkMultiIndexer: Visible=True, Text={chkMultiIndexer.Text}")
|
||||||
Else
|
Else
|
||||||
chkMultiIndexer.Visible = False
|
chkMultiIndexer.Visible = False
|
||||||
|
LOGGER.Debug(" chkMultiIndexer: Visible=False (keine weiteren Dateien)")
|
||||||
End If
|
End If
|
||||||
|
|
||||||
aktFiledropped = CURRENT_FILENAME
|
aktFiledropped = CURRENT_FILENAME
|
||||||
txtFilepath.Text = aktFiledropped
|
txtFilepath.Text = aktFiledropped
|
||||||
If HandleType = "@DROPFROMFSYSTEM@" Then
|
|
||||||
|
If oHandleType = "@DROPFROMFSYSTEM@" Then
|
||||||
droptype = "dragdrop file"
|
droptype = "dragdrop file"
|
||||||
chkdelete_origin.Visible = True
|
chkdelete_origin.Visible = True
|
||||||
chkdelete_origin.Checked = WD_IndexDeleteDocs
|
chkdelete_origin.Checked = WD_IndexDeleteDocs
|
||||||
ElseIf HandleType = "@OUTLOOK_ATTMNT@" Then
|
ElseIf oHandleType = "@OUTLOOK_ATTMNT@" Then
|
||||||
droptype = "dragdrop attachment"
|
droptype = "dragdrop attachment"
|
||||||
chkdelete_origin.Visible = True
|
chkdelete_origin.Visible = True
|
||||||
chkdelete_origin.Checked = WD_IndexDeleteDocs
|
chkdelete_origin.Checked = WD_IndexDeleteDocs
|
||||||
ElseIf HandleType = "@OUTLOOKMESSAGE@" Then
|
ElseIf oHandleType = "@OUTLOOKMESSAGE@" Then
|
||||||
droptype = "dragdrop message"
|
droptype = "dragdrop message"
|
||||||
chkdelete_origin.Visible = True
|
chkdelete_origin.Visible = True
|
||||||
chkdelete_origin.Checked = WD_IndexDeleteDocs
|
chkdelete_origin.Checked = WD_IndexDeleteDocs
|
||||||
ElseIf HandleType = "SCAM" Then
|
ElseIf oHandleType = "SCAM" Then
|
||||||
droptype = "scan"
|
droptype = "scan"
|
||||||
End If
|
End If
|
||||||
Dim sql = String.Format("SELECT FORMVIEW_ID, FORM_ID, FORM_TITLE, DOKUMENTTYPE_ID, DOKUMENTTYPE, PATH, SHORTNAME, OBJECT_TYPE, FW_DOCTYPE_ID FROM VWPMO_DOKUMENTTYPES WHERE (FORMVIEW_ID = {0}) " & _
|
|
||||||
"ORDER BY SEQUENCE, DOKUMENTTYPE", CURRENT_FORMVIEW_ID)
|
|
||||||
DTVWPMO_DOKUMENTTYPES = MYDB_ECM.GetDatatable(sql)
|
|
||||||
|
|
||||||
'VWPMO_DOKUMENTTYPESTableAdapter.Connection.ConnectionString = MYDB_ECM.CurrentConnectionString
|
Dim sql = String.Format("SELECT FORMVIEW_ID, FORM_ID, FORM_TITLE, DOKUMENTTYPE_ID, DOKUMENTTYPE, PATH, SHORTNAME, OBJECT_TYPE, FW_DOCTYPE_ID FROM VWPMO_DOKUMENTTYPES WHERE (FORMVIEW_ID = {0}) " &
|
||||||
'Me.VWPMO_DOKUMENTTYPESTableAdapter.Fill(Me.DD_DMSDataSet.VWPMO_DOKUMENTTYPES, CURRENT_FORMVIEW_ID)
|
"ORDER BY SEQUENCE, DOKUMENTTYPE", CURRENT_FORMVIEW_ID)
|
||||||
|
DTVWPMO_DOKUMENTTYPES = MYDB_ECM.GetDatatable(sql)
|
||||||
|
|
||||||
CURRENT_REDUNDANT_FORM_ID = 0
|
CURRENT_REDUNDANT_FORM_ID = 0
|
||||||
CURRENT_REDUNDANT_FORMVIEW_ID = 0
|
CURRENT_REDUNDANT_FORMVIEW_ID = 0
|
||||||
If DTVWPMO_DOKUMENTTYPES.Rows.Count = 0 Then ' DD_DMSDataSet.VWPMO_DOKUMENTTYPES.Rows.Count = 0 Then
|
If DTVWPMO_DOKUMENTTYPES.Rows.Count = 0 Then
|
||||||
If CURRENT_ENTITY_REDUNDANT_ID <> 0 Then
|
If CURRENT_ENTITY_REDUNDANT_ID <> 0 Then
|
||||||
Dim FVID = MYDB_ECM.GetScalarValue(String.Format("SELECT GUID FROM TBPMO_FORM_VIEW WHERE FORM_ID = {0} and SCREEN_ID = 1", CURRENT_ENTITY_REDUNDANT_ID), True)
|
Dim FVID = MYDB_ECM.GetScalarValue(String.Format("SELECT GUID FROM TBPMO_FORM_VIEW WHERE FORM_ID = {0} and SCREEN_ID = 1", CURRENT_ENTITY_REDUNDANT_ID), True)
|
||||||
'Me.VWPMO_DOKUMENTTYPESTableAdapter.Fill(Me.DD_DMSDataSet.VWPMO_DOKUMENTTYPES, FVID)
|
If DTVWPMO_DOKUMENTTYPES.Rows.Count = 0 Then
|
||||||
If DTVWPMO_DOKUMENTTYPES.Rows.Count = 0 Then 'DD_DMSDataSet.VWPMO_DOKUMENTTYPES.Rows.Count = 0 Then
|
MsgBox("No documenttypes for the redundant entity configured either! Indexing is not possible!" & vbCrLf & "Please check the configuration!", MsgBoxStyle.Exclamation)
|
||||||
MsgBox("No documenttypes for the redundant entity configured either! Indexing is not possible!" & vbNewLine & "Please check the configuration!", MsgBoxStyle.Exclamation)
|
Me.Close()
|
||||||
Exit Sub
|
Exit Sub
|
||||||
Else
|
Else
|
||||||
LOGGER.Debug("Redundant EntityID: " & CURRENT_ENTITY_REDUNDANT_ID)
|
LOGGER.Debug("Redundant EntityID: " & CURRENT_ENTITY_REDUNDANT_ID)
|
||||||
@@ -1091,13 +1388,16 @@ Public Class frmWM_IndexFile
|
|||||||
CURRENT_FORMVIEW_ID = FVID
|
CURRENT_FORMVIEW_ID = FVID
|
||||||
End If
|
End If
|
||||||
Else
|
Else
|
||||||
MsgBox("No documenttypes for this entity configured! Indexing is not possible!" & vbNewLine & "Please check the configuration!", MsgBoxStyle.Exclamation)
|
MsgBox("No documenttypes for this entity configured! Indexing is not possible!" & vbCrLf & "Please check the configuration!", MsgBoxStyle.Exclamation)
|
||||||
|
Me.Close()
|
||||||
Exit Sub
|
Exit Sub
|
||||||
End If
|
End If
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
MsgBox("Error in frmWD_Index_Dokart_Load:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
LOGGER.Error($"Error in frmWD_Index_Dokart_Load: {ex.Message}")
|
||||||
|
MsgBox("Error in frmWD_Index_Dokart_Load:" & vbCrLf & ex.Message, MsgBoxStyle.Critical)
|
||||||
|
Me.Close()
|
||||||
End Try
|
End Try
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
@@ -1139,7 +1439,7 @@ Public Class frmWM_IndexFile
|
|||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
MsgBox("Error in Form Shown:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
MsgBox("Error in Form Shown:" & vbCrLf & ex.Message, MsgBoxStyle.Critical)
|
||||||
End Try
|
End Try
|
||||||
formloaded = True
|
formloaded = True
|
||||||
End Sub
|
End Sub
|
||||||
@@ -1147,4 +1447,75 @@ Public Class frmWM_IndexFile
|
|||||||
Private Sub txtSubfolder_TextChanged(sender As Object, e As EventArgs) Handles txtSubfolder.TextChanged
|
Private Sub txtSubfolder_TextChanged(sender As Object, e As EventArgs) Handles txtSubfolder.TextChanged
|
||||||
CURRENT_SUBFOLDER = txtSubfolder.Text
|
CURRENT_SUBFOLDER = txtSubfolder.Text
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
|
Private Sub frmWM_IndexFile_Closing(sender As Object, e As CancelEventArgs) Handles Me.Closing
|
||||||
|
Try
|
||||||
|
' ── Multi-Indexing-Flags zurücksetzen ──
|
||||||
|
_multiIndexDecisionMade = False
|
||||||
|
_multiIndexOverwriteExisting = False
|
||||||
|
|
||||||
|
' ✅ WICHTIG: Liste NEU LADEN, bevor wir zählen!
|
||||||
|
LOGGER.Debug("=== CLOSING: Lade aktuelle Dateiliste ===")
|
||||||
|
ClassHelper.Create_USER_FILE_TABLE() ' ← Lädt CURRENT_TBPMO_FILES_USER NEU!
|
||||||
|
|
||||||
|
' ── Prüfen, ob noch Dateien zu verarbeiten sind ──
|
||||||
|
If CURRENT_TBPMO_FILES_USER IsNot Nothing AndAlso CURRENT_TBPMO_FILES_USER.Rows.Count > 0 Then
|
||||||
|
' Es gibt noch nicht verarbeitete Dateien → Benutzer fragen
|
||||||
|
LOGGER.Debug($"TBPMO_FILES_USER: Formular wird geschlossen, aber {CURRENT_TBPMO_FILES_USER.Rows.Count} Dateien sind noch vorhanden.")
|
||||||
|
|
||||||
|
Dim msg As String
|
||||||
|
Dim title As String
|
||||||
|
If USER_LANGUAGE <> "de-DE" Then
|
||||||
|
msg = $"There are still {CURRENT_TBPMO_FILES_USER.Rows.Count} unprocessed file(s)!" & vbCrLf & vbCrLf &
|
||||||
|
"Do you really want to cancel the import?" & vbCrLf & vbCrLf &
|
||||||
|
"YES → Cancel import and delete all pending files" & vbCrLf &
|
||||||
|
"NO → Continue indexing"
|
||||||
|
title = "Cancel Import?"
|
||||||
|
Else
|
||||||
|
msg = $"Es sind noch {CURRENT_TBPMO_FILES_USER.Rows.Count} nicht verarbeitete Datei(en) vorhanden!" & vbCrLf & vbCrLf &
|
||||||
|
"Möchten Sie den Import wirklich abbrechen?" & vbCrLf & vbCrLf &
|
||||||
|
"JA → Import abbrechen und alle ausstehenden Dateien löschen" & vbCrLf &
|
||||||
|
"NEIN → Indexierung fortsetzen"
|
||||||
|
title = "Import abbrechen?"
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim result As MsgBoxResult = MessageBox.Show(msg, title, MessageBoxButtons.YesNo, MessageBoxIcon.Warning)
|
||||||
|
|
||||||
|
If result = MsgBoxResult.No Then
|
||||||
|
' Benutzer will NICHT abbrechen → Formular-Schließen verhindern
|
||||||
|
LOGGER.Info("Benutzer hat Abbruch verhindert - Formular bleibt offen")
|
||||||
|
e.Cancel = True
|
||||||
|
Exit Sub
|
||||||
|
Else
|
||||||
|
' Benutzer will abbrechen → Alle Dateien löschen
|
||||||
|
LOGGER.Info("Benutzer hat Abbruch bestätigt - Lösche alle ausstehenden Dateien")
|
||||||
|
Dim oDelete = $"DELETE FROM TBPMO_FILES_USER WHERE USER_WORK = '{USER_USERNAME}' AND WORKED = 0"
|
||||||
|
MYDB_ECM.ExecuteNonQuery(oDelete)
|
||||||
|
LOGGER.Info($"TBPMO_FILES_USER: {CURRENT_TBPMO_FILES_USER.Rows.Count} nicht-verarbeitete Einträge wurden gelöscht (User: {USER_USERNAME})")
|
||||||
|
|
||||||
|
' ── WICHTIG: DataTable leeren, damit Load-Event korrekt reagiert ──
|
||||||
|
CURRENT_TBPMO_FILES_USER.Clear()
|
||||||
|
LOGGER.Debug("CURRENT_TBPMO_FILES_USER wurde geleert")
|
||||||
|
End If
|
||||||
|
Else
|
||||||
|
' Keine Dateien mehr vorhanden → Normal schließen, aufräumen
|
||||||
|
LOGGER.Debug("Keine ausstehenden Dateien mehr vorhanden ")
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
Catch ex As Exception
|
||||||
|
LOGGER.Warn($"Fehler beim Bereinigen von TBPMO_FILES_USER (Closing): {ex.Message}")
|
||||||
|
End Try
|
||||||
|
End Sub
|
||||||
|
Private Sub frmWM_IndexFile_Closed(sender As Object, e As EventArgs) Handles Me.Closed
|
||||||
|
Try
|
||||||
|
Cursor = Cursors.Default
|
||||||
|
Catch ex As Exception
|
||||||
|
|
||||||
|
End Try
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
Private Sub chkMultiIndexer_CheckedChanged(sender As Object, e As EventArgs) Handles chkMultiIndexer.CheckedChanged
|
||||||
|
LOGGER.Debug($"chkMultiIndexer.CheckedChanged: {chkMultiIndexer.Checked}")
|
||||||
|
End Sub
|
||||||
End Class
|
End Class
|
||||||
@@ -13,18 +13,23 @@ Global
|
|||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
CD_ROM|Any CPU = CD_ROM|Any CPU
|
CD_ROM|Any CPU = CD_ROM|Any CPU
|
||||||
CD_ROM|Mixed Platforms = CD_ROM|Mixed Platforms
|
CD_ROM|Mixed Platforms = CD_ROM|Mixed Platforms
|
||||||
|
CD_ROM|x64 = CD_ROM|x64
|
||||||
CD_ROM|x86 = CD_ROM|x86
|
CD_ROM|x86 = CD_ROM|x86
|
||||||
Debug|Any CPU = Debug|Any CPU
|
Debug|Any CPU = Debug|Any CPU
|
||||||
Debug|Mixed Platforms = Debug|Mixed Platforms
|
Debug|Mixed Platforms = Debug|Mixed Platforms
|
||||||
|
Debug|x64 = Debug|x64
|
||||||
Debug|x86 = Debug|x86
|
Debug|x86 = Debug|x86
|
||||||
DVD-5|Any CPU = DVD-5|Any CPU
|
DVD-5|Any CPU = DVD-5|Any CPU
|
||||||
DVD-5|Mixed Platforms = DVD-5|Mixed Platforms
|
DVD-5|Mixed Platforms = DVD-5|Mixed Platforms
|
||||||
|
DVD-5|x64 = DVD-5|x64
|
||||||
DVD-5|x86 = DVD-5|x86
|
DVD-5|x86 = DVD-5|x86
|
||||||
Release|Any CPU = Release|Any CPU
|
Release|Any CPU = Release|Any CPU
|
||||||
Release|Mixed Platforms = Release|Mixed Platforms
|
Release|Mixed Platforms = Release|Mixed Platforms
|
||||||
|
Release|x64 = Release|x64
|
||||||
Release|x86 = Release|x86
|
Release|x86 = Release|x86
|
||||||
SingleImage|Any CPU = SingleImage|Any CPU
|
SingleImage|Any CPU = SingleImage|Any CPU
|
||||||
SingleImage|Mixed Platforms = SingleImage|Mixed Platforms
|
SingleImage|Mixed Platforms = SingleImage|Mixed Platforms
|
||||||
|
SingleImage|x64 = SingleImage|x64
|
||||||
SingleImage|x86 = SingleImage|x86
|
SingleImage|x86 = SingleImage|x86
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||||
@@ -32,78 +37,108 @@ Global
|
|||||||
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.CD_ROM|Any CPU.Build.0 = Release|Any CPU
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.CD_ROM|Any CPU.Build.0 = Release|Any CPU
|
||||||
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.CD_ROM|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.CD_ROM|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||||
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.CD_ROM|Mixed Platforms.Build.0 = Debug|Any CPU
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.CD_ROM|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||||
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.CD_ROM|x64.ActiveCfg = Release|x64
|
||||||
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.CD_ROM|x64.Build.0 = Release|x64
|
||||||
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.CD_ROM|x86.ActiveCfg = Debug|Any CPU
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.CD_ROM|x86.ActiveCfg = Debug|Any CPU
|
||||||
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||||
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||||
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||||
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.Debug|x64.Build.0 = Debug|Any CPU
|
||||||
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.Debug|x86.ActiveCfg = Debug|Any CPU
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||||
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.DVD-5|Any CPU.ActiveCfg = Debug|Any CPU
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.DVD-5|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.DVD-5|Any CPU.Build.0 = Debug|Any CPU
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.DVD-5|Any CPU.Build.0 = Debug|Any CPU
|
||||||
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.DVD-5|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.DVD-5|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||||
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.DVD-5|Mixed Platforms.Build.0 = Debug|Any CPU
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.DVD-5|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||||
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.DVD-5|x64.ActiveCfg = Release|x64
|
||||||
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.DVD-5|x64.Build.0 = Release|x64
|
||||||
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.DVD-5|x86.ActiveCfg = Debug|Any CPU
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.DVD-5|x86.ActiveCfg = Debug|Any CPU
|
||||||
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.Release|Any CPU.Build.0 = Release|Any CPU
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||||
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||||
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.Release|x64.ActiveCfg = Release|x64
|
||||||
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.Release|x64.Build.0 = Release|x64
|
||||||
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.Release|x86.ActiveCfg = Release|Any CPU
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.Release|x86.ActiveCfg = Release|Any CPU
|
||||||
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.SingleImage|Any CPU.ActiveCfg = Release|Any CPU
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.SingleImage|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.SingleImage|Any CPU.Build.0 = Release|Any CPU
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.SingleImage|Any CPU.Build.0 = Release|Any CPU
|
||||||
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.SingleImage|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.SingleImage|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||||
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.SingleImage|Mixed Platforms.Build.0 = Debug|Any CPU
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.SingleImage|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||||
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.SingleImage|x64.ActiveCfg = Release|x64
|
||||||
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.SingleImage|x64.Build.0 = Release|x64
|
||||||
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.SingleImage|x86.ActiveCfg = Debug|Any CPU
|
{BDCC148B-4C84-4A48-80CF-4C56057294E0}.SingleImage|x86.ActiveCfg = Debug|Any CPU
|
||||||
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.CD_ROM|Any CPU.ActiveCfg = Release|Any CPU
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.CD_ROM|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.CD_ROM|Any CPU.Build.0 = Release|Any CPU
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.CD_ROM|Any CPU.Build.0 = Release|Any CPU
|
||||||
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.CD_ROM|Mixed Platforms.ActiveCfg = Release|Any CPU
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.CD_ROM|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||||
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.CD_ROM|Mixed Platforms.Build.0 = Release|Any CPU
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.CD_ROM|Mixed Platforms.Build.0 = Release|Any CPU
|
||||||
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.CD_ROM|x64.ActiveCfg = Release|Any CPU
|
||||||
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.CD_ROM|x64.Build.0 = Release|Any CPU
|
||||||
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.CD_ROM|x86.ActiveCfg = Release|Any CPU
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.CD_ROM|x86.ActiveCfg = Release|Any CPU
|
||||||
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||||
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||||
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||||
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.Debug|x64.Build.0 = Debug|Any CPU
|
||||||
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.Debug|x86.ActiveCfg = Debug|Any CPU
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||||
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.DVD-5|Any CPU.ActiveCfg = Debug|Any CPU
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.DVD-5|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.DVD-5|Any CPU.Build.0 = Debug|Any CPU
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.DVD-5|Any CPU.Build.0 = Debug|Any CPU
|
||||||
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.DVD-5|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.DVD-5|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||||
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.DVD-5|Mixed Platforms.Build.0 = Debug|Any CPU
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.DVD-5|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||||
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.DVD-5|x64.ActiveCfg = Release|Any CPU
|
||||||
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.DVD-5|x64.Build.0 = Release|Any CPU
|
||||||
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.DVD-5|x86.ActiveCfg = Debug|Any CPU
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.DVD-5|x86.ActiveCfg = Debug|Any CPU
|
||||||
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.Release|Any CPU.Build.0 = Release|Any CPU
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||||
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||||
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.Release|x64.ActiveCfg = Release|Any CPU
|
||||||
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.Release|x64.Build.0 = Release|Any CPU
|
||||||
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.Release|x86.ActiveCfg = Release|Any CPU
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.Release|x86.ActiveCfg = Release|Any CPU
|
||||||
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.SingleImage|Any CPU.ActiveCfg = Release|Any CPU
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.SingleImage|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.SingleImage|Any CPU.Build.0 = Release|Any CPU
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.SingleImage|Any CPU.Build.0 = Release|Any CPU
|
||||||
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.SingleImage|Mixed Platforms.ActiveCfg = Release|Any CPU
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.SingleImage|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||||
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.SingleImage|Mixed Platforms.Build.0 = Release|Any CPU
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.SingleImage|Mixed Platforms.Build.0 = Release|Any CPU
|
||||||
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.SingleImage|x64.ActiveCfg = Release|Any CPU
|
||||||
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.SingleImage|x64.Build.0 = Release|Any CPU
|
||||||
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.SingleImage|x86.ActiveCfg = Release|Any CPU
|
{F1C8A9DF-2452-4E3B-9C32-0C792F6ED2E6}.SingleImage|x86.ActiveCfg = Release|Any CPU
|
||||||
{A7F7585A-C46A-4436-9F6E-17629325CE58}.CD_ROM|Any CPU.ActiveCfg = Release|x86
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.CD_ROM|Any CPU.ActiveCfg = Release|x86
|
||||||
{A7F7585A-C46A-4436-9F6E-17629325CE58}.CD_ROM|Any CPU.Build.0 = Release|x86
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.CD_ROM|Any CPU.Build.0 = Release|x86
|
||||||
{A7F7585A-C46A-4436-9F6E-17629325CE58}.CD_ROM|Mixed Platforms.ActiveCfg = Release|x86
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.CD_ROM|Mixed Platforms.ActiveCfg = Release|x86
|
||||||
{A7F7585A-C46A-4436-9F6E-17629325CE58}.CD_ROM|Mixed Platforms.Build.0 = Release|x86
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.CD_ROM|Mixed Platforms.Build.0 = Release|x86
|
||||||
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.CD_ROM|x64.ActiveCfg = Release|x86
|
||||||
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.CD_ROM|x64.Build.0 = Release|x86
|
||||||
{A7F7585A-C46A-4436-9F6E-17629325CE58}.CD_ROM|x86.ActiveCfg = Release|x86
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.CD_ROM|x86.ActiveCfg = Release|x86
|
||||||
{A7F7585A-C46A-4436-9F6E-17629325CE58}.CD_ROM|x86.Build.0 = Release|x86
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.CD_ROM|x86.Build.0 = Release|x86
|
||||||
{A7F7585A-C46A-4436-9F6E-17629325CE58}.Debug|Any CPU.ActiveCfg = Debug|x86
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.Debug|Any CPU.ActiveCfg = Debug|x86
|
||||||
{A7F7585A-C46A-4436-9F6E-17629325CE58}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
|
||||||
{A7F7585A-C46A-4436-9F6E-17629325CE58}.Debug|Mixed Platforms.Build.0 = Debug|x86
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.Debug|Mixed Platforms.Build.0 = Debug|x86
|
||||||
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.Debug|x64.ActiveCfg = Debug|x86
|
||||||
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.Debug|x64.Build.0 = Debug|x86
|
||||||
{A7F7585A-C46A-4436-9F6E-17629325CE58}.Debug|x86.ActiveCfg = Debug|x86
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.Debug|x86.ActiveCfg = Debug|x86
|
||||||
{A7F7585A-C46A-4436-9F6E-17629325CE58}.Debug|x86.Build.0 = Debug|x86
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.Debug|x86.Build.0 = Debug|x86
|
||||||
{A7F7585A-C46A-4436-9F6E-17629325CE58}.DVD-5|Any CPU.ActiveCfg = Release|x86
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.DVD-5|Any CPU.ActiveCfg = Release|x86
|
||||||
{A7F7585A-C46A-4436-9F6E-17629325CE58}.DVD-5|Any CPU.Build.0 = Release|x86
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.DVD-5|Any CPU.Build.0 = Release|x86
|
||||||
{A7F7585A-C46A-4436-9F6E-17629325CE58}.DVD-5|Mixed Platforms.ActiveCfg = Debug|x86
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.DVD-5|Mixed Platforms.ActiveCfg = Debug|x86
|
||||||
{A7F7585A-C46A-4436-9F6E-17629325CE58}.DVD-5|Mixed Platforms.Build.0 = Debug|x86
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.DVD-5|Mixed Platforms.Build.0 = Debug|x86
|
||||||
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.DVD-5|x64.ActiveCfg = Release|x86
|
||||||
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.DVD-5|x64.Build.0 = Release|x86
|
||||||
{A7F7585A-C46A-4436-9F6E-17629325CE58}.DVD-5|x86.ActiveCfg = Debug|x86
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.DVD-5|x86.ActiveCfg = Debug|x86
|
||||||
{A7F7585A-C46A-4436-9F6E-17629325CE58}.DVD-5|x86.Build.0 = Debug|x86
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.DVD-5|x86.Build.0 = Debug|x86
|
||||||
{A7F7585A-C46A-4436-9F6E-17629325CE58}.Release|Any CPU.ActiveCfg = Release|x86
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.Release|Any CPU.ActiveCfg = Release|x86
|
||||||
{A7F7585A-C46A-4436-9F6E-17629325CE58}.Release|Mixed Platforms.ActiveCfg = Release|x86
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.Release|Mixed Platforms.ActiveCfg = Release|x86
|
||||||
{A7F7585A-C46A-4436-9F6E-17629325CE58}.Release|Mixed Platforms.Build.0 = Release|x86
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.Release|Mixed Platforms.Build.0 = Release|x86
|
||||||
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.Release|x64.ActiveCfg = Release|x86
|
||||||
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.Release|x64.Build.0 = Release|x86
|
||||||
{A7F7585A-C46A-4436-9F6E-17629325CE58}.Release|x86.ActiveCfg = Release|x86
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.Release|x86.ActiveCfg = Release|x86
|
||||||
{A7F7585A-C46A-4436-9F6E-17629325CE58}.Release|x86.Build.0 = Release|x86
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.Release|x86.Build.0 = Release|x86
|
||||||
{A7F7585A-C46A-4436-9F6E-17629325CE58}.SingleImage|Any CPU.ActiveCfg = Release|x86
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.SingleImage|Any CPU.ActiveCfg = Release|x86
|
||||||
{A7F7585A-C46A-4436-9F6E-17629325CE58}.SingleImage|Any CPU.Build.0 = Release|x86
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.SingleImage|Any CPU.Build.0 = Release|x86
|
||||||
{A7F7585A-C46A-4436-9F6E-17629325CE58}.SingleImage|Mixed Platforms.ActiveCfg = Release|x86
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.SingleImage|Mixed Platforms.ActiveCfg = Release|x86
|
||||||
{A7F7585A-C46A-4436-9F6E-17629325CE58}.SingleImage|Mixed Platforms.Build.0 = Release|x86
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.SingleImage|Mixed Platforms.Build.0 = Release|x86
|
||||||
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.SingleImage|x64.ActiveCfg = Release|x86
|
||||||
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.SingleImage|x64.Build.0 = Release|x86
|
||||||
{A7F7585A-C46A-4436-9F6E-17629325CE58}.SingleImage|x86.ActiveCfg = Release|x86
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.SingleImage|x86.ActiveCfg = Release|x86
|
||||||
{A7F7585A-C46A-4436-9F6E-17629325CE58}.SingleImage|x86.Build.0 = Release|x86
|
{A7F7585A-C46A-4436-9F6E-17629325CE58}.SingleImage|x86.Build.0 = Release|x86
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
|
|||||||
Reference in New Issue
Block a user