This commit is contained in:
SchreiberM
2016-07-18 14:29:33 +02:00
parent b9388d045a
commit b089c68613
37 changed files with 5975 additions and 2701 deletions

View File

@@ -6,44 +6,78 @@ Public Class Class_DOC_SEARCH
Private Shared RECORD_ID As Integer
Private Shared Function GET_DOCSEARCH_DATATABLE(Type As String)
Try
Dim OPTION1
Dim OPTION2
Dim OPTION3
Dim OPTION4
Dim OPTION5
If DT_RESULTLIST_OPTIONS.Rows.Count = 0 Then
OPTION1 = 0
OPTION2 = 0
OPTION3 = 0
OPTION4 = 0
OPTION5 = 0
Else
OPTION1 = DT_RESULTLIST_OPTIONS.Rows(0).Item("OPTION1_CTRL")
OPTION2 = DT_RESULTLIST_OPTIONS.Rows(0).Item("OPTION2_CTRL")
OPTION3 = DT_RESULTLIST_OPTIONS.Rows(0).Item("OPTION3_CTRL")
OPTION4 = DT_RESULTLIST_OPTIONS.Rows(0).Item("OPTION4_CTRL")
OPTION5 = DT_RESULTLIST_OPTIONS.Rows(0).Item("OPTION5_CTRL")
End If
Dim SQL_DOC_SEARCH
If Type = "ENTITY" Then
SQL_DOC_SEARCH = String.Format("SELECT * FROM VWPMO_WD_DOC_SEARCH WHERE [ENTITY_ID] = {0}", ENTITY_ID)
' SQL_DOC_SEARCH = String.Format("SELECT * ," & _
' "(CASE (SELECT FORM_ID FROM TBPMO_RECORD WHERE GUID = {0}) " & _
' "WHEN {1} THEN " & _
' " (SELECT VALUE FROM TBPMO_CONTROL_VALUE WHERE CONTROL_ID = {2} AND RECORD_ID = {0}) " & _
' "ELSE '' END) AS OPTION1," & _
' "CASE (SELECT FORM_ID FROM TBPMO_RECORD WHERE GUID = 3305) " & _
' "WHEN {1} THEN " & _
' " (SELECT VALUE FROM TBPMO_CONTROL_VALUE WHERE CONTROL_ID = {3} AND RECORD_ID = {0}) " & _
' "ELSE '' END AS OPTION2," & _
' "CASE (SELECT FORM_ID FROM TBPMO_RECORD WHERE GUID = 3305) " & _
' "WHEN {1} THEN " & _
' " (SELECT VALUE FROM TBPMO_CONTROL_VALUE WHERE CONTROL_ID = {4} AND RECORD_ID = {0}) " & _
' "ELSE '' END AS OPTION3," & _
' "CASE (SELECT FORM_ID FROM TBPMO_RECORD WHERE GUID = 3305) " & _
' "WHEN {1} THEN " & _
' " (SELECT VALUE FROM TBPMO_CONTROL_VALUE WHERE CONTROL_ID = {5} AND RECORD_ID = {0}) " & _
' "ELSE '' END AS OPTION4 " & _
'"FROM VWPMO_WD_DOC_SEARCH WHERE ENTITY_ID LIKE '%#{1}%'", RECORD_ID, ENTITY_ID, OPTION1, OPTION2, OPTION3, OPTION4)
SQL_DOC_SEARCH = String.Format("SELECT * ," & _
"CASE " & _
"WHEN [ENTITY_ID] LIKE '%#{1}%' THEN " & _
" (SELECT VALUE FROM TBPMO_CONTROL_VALUE WHERE CONTROL_ID = {2} AND RECORD_ID = {0}) " & _
"ELSE '' END AS OPTION1," & _
"CASE " & _
"WHEN [ENTITY_ID] LIKE '%#{1}%' THEN " & _
" (SELECT VALUE FROM TBPMO_CONTROL_VALUE WHERE CONTROL_ID = {3} AND RECORD_ID = {0}) " & _
"ELSE '' END AS OPTION2," & _
"CASE " & _
"WHEN [ENTITY_ID] LIKE '%#{1}%' THEN " & _
" (SELECT VALUE FROM TBPMO_CONTROL_VALUE WHERE CONTROL_ID = {4} AND RECORD_ID = {0}) " & _
"ELSE '' END AS OPTION3," & _
"CASE " & _
"WHEN [ENTITY_ID] LIKE '%#{1}%' THEN " & _
" (SELECT VALUE FROM TBPMO_CONTROL_VALUE WHERE CONTROL_ID = {5} AND RECORD_ID = {0}) " & _
"ELSE '' END AS OPTION4 " & _
"FROM VWPMO_WD_DOC_SEARCH WHERE ENTITY_ID LIKE '%#{1}#%'", RECORD_ID, ENTITY_ID, OPTION1, OPTION2, OPTION3, OPTION4)
Else
Dim OPTION1
Dim OPTION2
Dim OPTION3
Dim OPTION4
Dim OPTION5
If DT_RESULTLIST_OPTIONS.Rows.Count = 0 Then
OPTION1 = 0
OPTION2 = 0
OPTION3 = 0
OPTION4 = 0
OPTION5 = 0
Else
OPTION1 = DT_RESULTLIST_OPTIONS.Rows(0).Item("OPTION1_CTRL")
OPTION2 = DT_RESULTLIST_OPTIONS.Rows(0).Item("OPTION2_CTRL")
OPTION3 = DT_RESULTLIST_OPTIONS.Rows(0).Item("OPTION3_CTRL")
OPTION4 = DT_RESULTLIST_OPTIONS.Rows(0).Item("OPTION4_CTRL")
OPTION5 = DT_RESULTLIST_OPTIONS.Rows(0).Item("OPTION5_CTRL")
End If
SQL_DOC_SEARCH = String.Format("SELECT * ," & _
"(CASE (SELECT FORM_ID FROM TBPMO_RECORD WHERE GUID = {0}) " & _
"WHEN {1} THEN " & _
" (SELECT VALUE FROM TBPMO_CONTROL_VALUE WHERE CONTROL_ID = {2} AND RECORD_ID = {0}) " & _
"ELSE '' END) AS OPTION1," & _
"CASE (SELECT FORM_ID FROM TBPMO_RECORD WHERE GUID = 3305) " & _
"CASE (SELECT FORM_ID FROM TBPMO_RECORD WHERE GUID = {0}) " & _
"WHEN {1} THEN " & _
" (SELECT VALUE FROM TBPMO_CONTROL_VALUE WHERE CONTROL_ID = {3} AND RECORD_ID = {0}) " & _
"ELSE '' END AS OPTION2," & _
"CASE (SELECT FORM_ID FROM TBPMO_RECORD WHERE GUID = 3305) " & _
"CASE (SELECT FORM_ID FROM TBPMO_RECORD WHERE GUID = {0}) " & _
"WHEN {1} THEN " & _
" (SELECT VALUE FROM TBPMO_CONTROL_VALUE WHERE CONTROL_ID = {4} AND RECORD_ID = {0}) " & _
"ELSE '' END AS OPTION3," & _
"CASE (SELECT FORM_ID FROM TBPMO_RECORD WHERE GUID = 3305) " & _
"CASE (SELECT FORM_ID FROM TBPMO_RECORD WHERE GUID = {0}) " & _
"WHEN {1} THEN " & _
" (SELECT VALUE FROM TBPMO_CONTROL_VALUE WHERE CONTROL_ID = {5} AND RECORD_ID = {0}) " & _
"ELSE '' END AS OPTION4 " & _
@@ -64,12 +98,18 @@ Public Class Class_DOC_SEARCH
Dim sw As New Stopwatch
sw.Start()
Dim elapsed As Double
Dim DT_FILE_RESULT As DataTable = GET_DOCSEARCH_DATATABLE(vType)
CURRENT_DOC_RESULTS = DT_FILE_RESULT
If IsNothing(DT_FILE_RESULT) Then
ClassLogger.Add(">> ATTENTION: GET_DOCSEARCH_DATATABLE IS NOTHING!!", False)
Return Nothing
End If
elapsed = sw.Elapsed.TotalSeconds
sw.Stop()
sw.Reset()
Console.WriteLine(">> GET_DOCSEARCH_DATATABLE took " & Format(elapsed, "0.000000000") & " seconds")
If LogErrorsOnly = False Then ClassLogger.Add(" >> Run GET_DOCSEARCH_DATATABLE took " & Format(elapsed, "0.000000000") & " seconds", False)
sw.Start()
Dim DTGrid As New DataTable
Dim ColArrayDEFINITION As New List(Of String)
Try
@@ -91,6 +131,11 @@ Public Class Class_DOC_SEARCH
colOtype.ColumnName = "OBJECTTYPE"
colOtype.Caption = "Objecttype"
DTGrid.Columns.Add(colOtype)
Dim colDocID As New System.Data.DataColumn()
colDocID.DataType = GetType(String)
colDocID.ColumnName = "DocID"
colDocID.Caption = "DocID"
DTGrid.Columns.Add(colDocID)
If Not DT_WINDREAM_RESULTLIST Is Nothing And DT_WINDREAM_RESULTLIST.Rows.Count >= 1 Then
@@ -113,12 +158,19 @@ Public Class Class_DOC_SEARCH
Catch ex As Exception
MsgBox("Unexpected Error in Construct Datatable for GridResult: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End Try
elapsed = sw.Elapsed.TotalSeconds
sw.Stop()
sw.Reset()
Console.WriteLine(">> DTGrid-Definition took " & Format(elapsed, "0.000000000") & " seconds")
If LogErrorsOnly = False Then ClassLogger.Add(" >> DTGrid-Definition took " & Format(elapsed, "0.000000000") & " seconds", False)
sw.Start()
COL_ARRAY_RESULTLIST = ColArrayDEFINITION
For Each FILE_ROW As DataRow In DT_FILE_RESULT.Rows
Dim fullpath = FILE_ROW.Item("FULL_FILENAME")
Dim objecttype = FILE_ROW.Item("OBJECTTYPE")
Dim DocID = FILE_ROW.Item("DocID")
'Dim Folderpath = Path.GetDirectoryName(fullpath)
Dim filename = Path.GetFileName(fullpath)
Dim extension = Path.GetExtension(fullpath)
@@ -154,7 +206,8 @@ Public Class Class_DOC_SEARCH
'Den Filepath mitgeben
NewRow.Item(1) = fullpath
NewRow.Item(2) = objecttype
Dim i = 3 'Fängt bei 2 an, um die ICON Column zu überspringen
NewRow.Item(3) = DocID
Dim i = 4 'Fängt bei 2 an, um die definierten Spalten zu überspringen
For Each Colname As String In ColArrayDEFINITION
Dim rowvalue
Try
@@ -190,4 +243,14 @@ Public Class Class_DOC_SEARCH
Return Nothing
End Try
End Function
Public Shared Function REFRESH_DOC_TABLE_RESULTS()
Try
Dim execute = "EXEC[dbo].[PRPMO_DOCRESULT_CHANGE]"
Return ClassDatabase.Execute_non_Query_withConn(execute, 1)
Catch ex As Exception
MsgBox("Unexpected Error in REFRESH_TABLE_RESULTS: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
Return False
End Try
End Function
End Class