MS DocResult ENtitySearch

This commit is contained in:
SchreiberM 2021-06-28 10:32:13 +02:00
parent 136c4dec6e
commit e9fb65eddf
5 changed files with 1083 additions and 717 deletions

View File

@ -340,7 +340,7 @@ Public Class ClassDatabase
Dim SQLconnect As New SqlClient.SqlConnection
Dim SQLcommand As SqlClient.SqlCommand
If USE_PROXY = True And DD_LIB_Standards.clsDatabase.DB_PROXY_INITIALIZED Then
If USE_PROXY = True And DD_LIB_Standards.clsDatabase.DB_PROXY_INITIALIZED And ClassProxy.MyPROXYConnectionString <> String.Empty Then
SQLconnect.ConnectionString = ClassProxy.MyPROXYConnectionString
Else
SQLconnect.ConnectionString = connectionString

View File

@ -24,10 +24,10 @@ Partial Class frmConstructor_Main
Private Sub InitializeComponent()
Me.components = New System.ComponentModel.Container()
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmConstructor_Main))
Dim GridLevelNode5 As DevExpress.XtraGrid.GridLevelNode = New DevExpress.XtraGrid.GridLevelNode()
Dim GridLevelNode6 As DevExpress.XtraGrid.GridLevelNode = New DevExpress.XtraGrid.GridLevelNode()
Dim GridLevelNode7 As DevExpress.XtraGrid.GridLevelNode = New DevExpress.XtraGrid.GridLevelNode()
Dim GridLevelNode1 As DevExpress.XtraGrid.GridLevelNode = New DevExpress.XtraGrid.GridLevelNode()
Dim GridLevelNode2 As DevExpress.XtraGrid.GridLevelNode = New DevExpress.XtraGrid.GridLevelNode()
Dim GridLevelNode3 As DevExpress.XtraGrid.GridLevelNode = New DevExpress.XtraGrid.GridLevelNode()
Dim GridLevelNode4 As DevExpress.XtraGrid.GridLevelNode = New DevExpress.XtraGrid.GridLevelNode()
Me.SplitContainerMain = New DevExpress.XtraEditors.SplitContainerControl()
Me.SplitContainerTop = New DevExpress.XtraEditors.SplitContainerControl()
Me.TreeViewMain = New System.Windows.Forms.TreeView()
@ -230,11 +230,12 @@ Partial Class frmConstructor_Main
Me.RepositoryItemProgressBar2 = New DevExpress.XtraEditors.Repository.RepositoryItemProgressBar()
Me.bsitmLoadEntity = New DevExpress.XtraBars.BarStaticItem()
Me.bsitmWFState = New DevExpress.XtraBars.BarStaticItem()
Me.BarButtonItem1 = New DevExpress.XtraBars.BarButtonItem()
Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroup2 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroup3 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroup4 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroupSuchen = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar()
Me.RibbonPage2 = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.ContextMenuStrip1 = New System.Windows.Forms.ContextMenuStrip(Me.components)
@ -392,9 +393,9 @@ Partial Class frmConstructor_Main
'tstxtRenameNode
'
Me.tstxtRenameNode.BackColor = System.Drawing.SystemColors.Control
resources.ApplyResources(Me.tstxtRenameNode, "tstxtRenameNode")
Me.tstxtRenameNode.ForeColor = System.Drawing.SystemColors.ControlText
Me.tstxtRenameNode.Name = "tstxtRenameNode"
resources.ApplyResources(Me.tstxtRenameNode, "tstxtRenameNode")
'
'tsmiNodeNew
'
@ -410,8 +411,8 @@ Partial Class frmConstructor_Main
'tsmINewText
'
Me.tsmINewText.BackColor = System.Drawing.Color.Yellow
Me.tsmINewText.Name = "tsmINewText"
resources.ApplyResources(Me.tsmINewText, "tsmINewText")
Me.tsmINewText.Name = "tsmINewText"
'
'ToolStripSeparator15
'
@ -444,12 +445,12 @@ Partial Class frmConstructor_Main
Me.GridControlMain.AllowDrop = True
Me.GridControlMain.ContextMenuStrip = Me.ContextMenuGrid
resources.ApplyResources(Me.GridControlMain, "GridControlMain")
GridLevelNode1.LevelTemplate = Me.grvwGrid
GridLevelNode1.RelationName = "Level1"
GridLevelNode2.LevelTemplate = Me.grvwCarousel
GridLevelNode2.RelationName = "Level2"
GridLevelNode3.RelationName = "Level3"
Me.GridControlMain.LevelTree.Nodes.AddRange(New DevExpress.XtraGrid.GridLevelNode() {GridLevelNode1, GridLevelNode2, GridLevelNode3})
GridLevelNode5.LevelTemplate = Me.grvwGrid
GridLevelNode5.RelationName = "Level1"
GridLevelNode6.LevelTemplate = Me.grvwCarousel
GridLevelNode6.RelationName = "Level2"
GridLevelNode7.RelationName = "Level3"
Me.GridControlMain.LevelTree.Nodes.AddRange(New DevExpress.XtraGrid.GridLevelNode() {GridLevelNode5, GridLevelNode6, GridLevelNode7})
Me.GridControlMain.MainView = Me.grvwTiles
Me.GridControlMain.Name = "GridControlMain"
Me.GridControlMain.TabStop = False
@ -887,8 +888,8 @@ Partial Class frmConstructor_Main
Me.GridControlDocSearch.AllowDrop = True
Me.GridControlDocSearch.ContextMenuStrip = Me.cmsResultFilesBasic
resources.ApplyResources(Me.GridControlDocSearch, "GridControlDocSearch")
GridLevelNode4.RelationName = "Level1"
Me.GridControlDocSearch.LevelTree.Nodes.AddRange(New DevExpress.XtraGrid.GridLevelNode() {GridLevelNode4})
GridLevelNode1.RelationName = "Level1"
Me.GridControlDocSearch.LevelTree.Nodes.AddRange(New DevExpress.XtraGrid.GridLevelNode() {GridLevelNode1})
Me.GridControlDocSearch.MainView = Me.GridViewDoc_Search
Me.GridControlDocSearch.Name = "GridControlDocSearch"
Me.GridControlDocSearch.TabStop = False
@ -1315,8 +1316,8 @@ Partial Class frmConstructor_Main
'CMDoc_TextBoxRenameFile
'
Me.CMDoc_TextBoxRenameFile.BackColor = System.Drawing.Color.Orange
Me.CMDoc_TextBoxRenameFile.Name = "CMDoc_TextBoxRenameFile"
resources.ApplyResources(Me.CMDoc_TextBoxRenameFile, "CMDoc_TextBoxRenameFile")
Me.CMDoc_TextBoxRenameFile.Name = "CMDoc_TextBoxRenameFile"
'
'DisplaynameUmbenennenToolStripMenuItem
'
@ -1327,8 +1328,8 @@ Partial Class frmConstructor_Main
'CMDoc_TextBoxRenameDisplay
'
Me.CMDoc_TextBoxRenameDisplay.BackColor = System.Drawing.Color.DarkOrange
Me.CMDoc_TextBoxRenameDisplay.Name = "CMDoc_TextBoxRenameDisplay"
resources.ApplyResources(Me.CMDoc_TextBoxRenameDisplay, "CMDoc_TextBoxRenameDisplay")
Me.CMDoc_TextBoxRenameDisplay.Name = "CMDoc_TextBoxRenameDisplay"
'
'ToolStripSeparator22
'
@ -1511,9 +1512,9 @@ Partial Class frmConstructor_Main
'RibbonControl1
'
Me.RibbonControl1.ExpandCollapseItem.Id = 0
Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.bbtniRefresh, Me.bbtniGeodaten, Me.bbtniCopyRecord, Me.bbtniParentLink, Me.bbtniWFTask, Me.bbtniReclog, Me.bbtnitemplate, Me.bbtniclearCache, Me.bbtniNewVariant2, Me.bStaticItem1, Me.bsitmState, Me.bsitmRecord, Me.bsitmDocID, Me.BarEditItem1, Me.BarEditItem2, Me.bsitmLoadEntity, Me.bsitmWFState})
Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.bbtniRefresh, Me.bbtniGeodaten, Me.bbtniCopyRecord, Me.bbtniParentLink, Me.bbtniWFTask, Me.bbtniReclog, Me.bbtnitemplate, Me.bbtniclearCache, Me.bbtniNewVariant2, Me.bStaticItem1, Me.bsitmState, Me.bsitmRecord, Me.bsitmDocID, Me.BarEditItem1, Me.BarEditItem2, Me.bsitmLoadEntity, Me.bsitmWFState, Me.BarButtonItem1})
resources.ApplyResources(Me.RibbonControl1, "RibbonControl1")
Me.RibbonControl1.MaxItemId = 20
Me.RibbonControl1.MaxItemId = 21
Me.RibbonControl1.Name = "RibbonControl1"
Me.RibbonControl1.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage1})
Me.RibbonControl1.RepositoryItems.AddRange(New DevExpress.XtraEditors.Repository.RepositoryItem() {Me.RepositoryItemProgressBar1, Me.RepositoryItemProgressBar2})
@ -1645,9 +1646,16 @@ Partial Class frmConstructor_Main
Me.bsitmWFState.Id = 19
Me.bsitmWFState.Name = "bsitmWFState"
'
'BarButtonItem1
'
resources.ApplyResources(Me.BarButtonItem1, "BarButtonItem1")
Me.BarButtonItem1.Id = 20
Me.BarButtonItem1.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem1.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.BarButtonItem1.Name = "BarButtonItem1"
'
'RibbonPage1
'
Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1, Me.RibbonPageGroup2, Me.RibbonPageGroup3, Me.RibbonPageGroup4})
Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1, Me.RibbonPageGroup2, Me.RibbonPageGroup3, Me.RibbonPageGroupSuchen})
Me.RibbonPage1.Name = "RibbonPage1"
resources.ApplyResources(Me.RibbonPage1, "RibbonPage1")
'
@ -1675,11 +1683,13 @@ Partial Class frmConstructor_Main
Me.RibbonPageGroup3.Name = "RibbonPageGroup3"
resources.ApplyResources(Me.RibbonPageGroup3, "RibbonPageGroup3")
'
'RibbonPageGroup4
'RibbonPageGroupSuchen
'
Me.RibbonPageGroup4.ItemLinks.Add(Me.bStaticItem1)
Me.RibbonPageGroup4.Name = "RibbonPageGroup4"
resources.ApplyResources(Me.RibbonPageGroup4, "RibbonPageGroup4")
Me.RibbonPageGroupSuchen.Enabled = False
Me.RibbonPageGroupSuchen.ItemLinks.Add(Me.bStaticItem1)
Me.RibbonPageGroupSuchen.ItemLinks.Add(Me.BarButtonItem1)
Me.RibbonPageGroupSuchen.Name = "RibbonPageGroupSuchen"
resources.ApplyResources(Me.RibbonPageGroupSuchen, "RibbonPageGroupSuchen")
'
'RibbonStatusBar1
'
@ -1978,7 +1988,7 @@ Partial Class frmConstructor_Main
Friend WithEvents bbtniNewVariant2 As DevExpress.XtraBars.BarButtonItem
Friend WithEvents RibbonPageGroup3 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents bStaticItem1 As DevExpress.XtraBars.BarStaticItem
Friend WithEvents RibbonPageGroup4 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents RibbonPageGroupSuchen As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents bsitmState As DevExpress.XtraBars.BarStaticItem
Friend WithEvents bsitmRecord As DevExpress.XtraBars.BarStaticItem
Friend WithEvents bsitmDocID As DevExpress.XtraBars.BarStaticItem
@ -1991,4 +2001,5 @@ Partial Class frmConstructor_Main
Friend WithEvents ContextMenuStrip1 As ContextMenuStrip
Friend WithEvents ExportNachExcelToolStripMenuItem As ToolStripMenuItem
Friend WithEvents EntitätsweiteSucheToolStripMenuItem As ToolStripMenuItem
Friend WithEvents BarButtonItem1 As DevExpress.XtraBars.BarButtonItem
End Class

File diff suppressed because it is too large Load Diff

View File

@ -336,6 +336,8 @@ Public Class frmConstructor_Main
For Each Constr_row As DataRow In DT_VWPMO_CONSTRUCTOR_FORMS.Rows
Entity_Name = Constr_row.Item("FORM_TITLE")
Dim Constr_FORM = Constr_row.Item("FORM_ID")
ENTITY_ID = Constr_row.Item("FORM_ID")
CURRENT_ENTITY_ID = ENTITY_ID
Dim expression As String = String.Format("ENTITY_ID = {0}", Constr_FORM)
Dim matchingRows() As DataRow = DT_PROXY_ENTITY.Select(expression)
'Prüfen ob Form in Config Proxy vorhanden
@ -3279,6 +3281,7 @@ Public Class frmConstructor_Main
End If
bStaticItem1.Caption = msg & Get_Grid_Row_Count()
End If
RibbonPageGroupSuchen.Enabled = True
Catch ex As Exception
ClassHelper.MSGBOX_Handler("ERROR", "Unexpected Error in LoadGrid_Records", ex.Message, ex.StackTrace)
Return False
@ -3778,39 +3781,36 @@ Public Class frmConstructor_Main
Try
Dim oSQL = $"SELECT ENTITY_DOC_SEARCH FROM TBPMO_FORM WHERE GUID = {ENTITY_ID}"
CURRENT_DOCSEARCH_SQL = ClassDatabase.Execute_Scalar(oSQL, True)
Dim oText = $"Die Entität-weite Suche wird im Hintergrund ausgeführt und angezeigt sobald sie fertig ist."
If USER_LANGUAGE <> "de-De" Then
oText = $"The entity-wide search will be started in background. The result will be displayed when ready."
End If
MsgBox(oText, vbOKOnly, "Information")
If CURRENT_DOCSEARCH_SQL <> String.Empty Then
Dim oText = $"Die Entität-weite Suche wird im Hintergrund ausgeführt und angezeigt sobald sie fertig ist."
If USER_LANGUAGE <> "de-De" Then
oText = $"The entity-wide search will be started in background. The result will be displayed when ready."
End If
MsgBox(oText, vbOKOnly, "Information")
If CURRENT_DOCSEARCH_SQL = "" Then
CURRENT_DOCSEARCH_SQL = $"SELECT DISTINCT T.*
FROM
TBPMO_DOCRESULT_LIST T INNER JOIN TBPMO_DOC_RECORD_LINK T1 ON T.DocID = T1.DOC_ID
INNER JOIN TBPMO_RECORD T2 ON T1.RECORD_ID = T2.GUID
WHERE T2.FORM_ID = {ENTITY_ID} AND T2.DELETED = 0)"
Else
CURRENT_DOCSEARCH_SQL = CURRENT_DOCSEARCH_SQL.Replace("@ENTITY_ID", ENTITY_ID)
CURRENT_DOCSEARCH_SQL = CURRENT_DOCSEARCH_SQL.Replace("@USER_LANGUAGE", USER_LANGUAGE)
CURRENT_DOCSEARCH_SQL = CURRENT_DOCSEARCH_SQL.Replace("@USER_ECM_ID", USERID_FK_INT_ECM)
CURRENT_DOCSEARCH_SQL = CURRENT_DOCSEARCH_SQL.Replace("@USER_ID", USER_GUID)
End If
If USER_LANGUAGE <> "de-DE" Then
CURRENT_DOCSEARCH_CAPTION = "Entity-wide search"
If USER_LANGUAGE <> "de-DE" Then
CURRENT_DOCSEARCH_CAPTION = "Entity-wide search"
Else
CURRENT_DOCSEARCH_CAPTION = "Entitätssuche"
End If
Dim myformThread = New Thread(Sub()
Using frm As New frmDocSearchResult
Application.Run(frm)
End Using
End Sub)
myformThread.Start()
Else
CURRENT_DOCSEARCH_CAPTION = "Entitätssuche"
MsgBox("Please config the entity-search properly! " & vbNewLine & oSQL, vbOKOnly, "Information")
End If
Dim myformThread = New Thread(Sub()
Using frm As New frmDocSearchResult
Application.Run(frm)
End Using
End Sub)
myformThread.Start()
Catch ex As Exception
ClassHelper.MSGBOX_Handler("ERROR", "Unexpected Error RUN_ENTITY_DOC_SEARCH", ex.Message, ex.StackTrace)
@ -7405,4 +7405,9 @@ WHERE T2.SHORT_NAME = 'ADDI' AND T.EMAIL IS NOT NULL order by USERNAME")
CURRENT_SEARCH_TYPE = "ENTITY"
RUN_ENTITY_DOC_SEARCH()
End Sub
Private Sub BarButtonItem1_ItemClick_2(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem1.ItemClick
CURRENT_SEARCH_TYPE = "ENTITY"
RUN_ENTITY_DOC_SEARCH()
End Sub
End Class

View File

@ -47,6 +47,12 @@ Public Class frmDocSearchResult
Load_DocGrid_Layout()
GridControlDocSearch.DataSource = DT_RESULT
GridControlDocSearch.DataSource = DT_RESULT
Try
GridViewDoc_Search.Columns.Item("FULL_FILENAME").Visible = False
Catch ex As Exception
End Try
'If GridViewDoc_Search.RowCount > 15000 Then
' ToolStripButton2.Enabled = False
'Else
@ -105,7 +111,7 @@ Public Class frmDocSearchResult
Exit Sub
End If
For Each row As DataRow In ClassWindreamDocGrid.DT_RESULTFILES.Rows
ClassHelper.File_open(row.Item("DOC_PATH"), row.Item("DOC_ID"))
ClassHelper.File_open(row.Item("FULL_FILENAME"), row.Item("DocID"))
If CURRENT_OFFICE_FILE_CHANGED = True Then LoadDocSearch(True)
Next
Else
@ -124,7 +130,7 @@ Public Class frmDocSearchResult
Exit Sub
End If
For Each row As DataRow In ClassWindreamDocGrid.DT_RESULTFILES.Rows
ClassHelper.Open_Folder(row.Item("DOC_PATH"), row.Item("DOC_ID"))
ClassHelper.Open_Folder(row.Item("FULL_FILENAME"), row.Item("DocID"))
Next
End Sub
@ -170,12 +176,12 @@ Public Class frmDocSearchResult
Exit Sub
End If
For Each row As DataRow In ClassWindreamDocGrid.DT_RESULTFILES.Rows
If row.Item("DOC_PATH") <> "" Then
If row.Item("FULL_FILENAME") <> "" Then
Cursor = Cursors.WaitCursor
Dim sei As New SHELLEXECUTEINFO
sei.cbSize = Marshal.SizeOf(sei)
sei.lpVerb = "properties"
sei.lpFile = row.Item("DOC_PATH")
sei.lpFile = row.Item("FULL_FILENAME")
sei.nShow = SW_SHOW
sei.fMask = SEE_MASK_INVOKEIDLIST
If Not ShellExecuteEx(sei) Then