diff --git a/GUIs.Common/frmDocumentResultList.vb b/GUIs.Common/frmDocumentResultList.vb
index f7f23536..ea0df5a2 100644
--- a/GUIs.Common/frmDocumentResultList.vb
+++ b/GUIs.Common/frmDocumentResultList.vb
@@ -18,7 +18,6 @@ Imports DigitalData.Modules.Logging
Imports DigitalData.Modules.ZooFlow
Imports DigitalData.Modules.ZooFlow.Constants
Imports DigitalData.Modules.Base.IDB.FileStore
-Imports DigitalData.Controls.MessageBoxEx
Imports DigitalData.GUIs.Common.Base
Imports DigitalData.GUIs.Common.DocumentResultList
diff --git a/GUIs.ZooFlow/ClassInit.vb b/GUIs.ZooFlow/ClassInit.vb
index 3cc0c2a8..388c1676 100644
--- a/GUIs.ZooFlow/ClassInit.vb
+++ b/GUIs.ZooFlow/ClassInit.vb
@@ -29,28 +29,23 @@ Public Class ClassInit
End Sub
Public Sub InitializeApplication()
- If Not SetupDatabase() Then
- MsgBox("Keine Verbindungs-Informationen hinterlegt. Anwendung wird beendet.", MsgBoxStyle.Critical, _MainForm.Text)
- Application.Exit()
- Else
- _Loader = New ClassInitLoader(LogConfig)
+ _Loader = New ClassInitLoader(LogConfig)
- ' === Init Schritte definieren
- _Loader.AddStep("Initializing Base", AddressOf InitializeBase, True)
- _Loader.AddStep("Initializing EDMI Service", AddressOf InitializeService, True)
- _Loader.AddStep("Initializing Database", AddressOf InitializeDatabaseWithFallback, True)
- _Loader.AddStep("Initializing User", AddressOf InitializeUser, True)
- _Loader.AddStep("Initializing BasicCatalogues", AddressOf InitializeBasicsfromDB, True)
- _Loader.AddStep("Initializing Language", AddressOf InitializeLanguage, False)
- _Loader.AddStep("Initializing 3rd-party licenses", AddressOf Initialize3rdParty, False)
- _Loader.AddStep("Initializing Basic Config", AddressOf InitBasicConfig, False)
- ' === Init Schritte definieren
+ ' === Init Schritte definieren
+ _Loader.AddStep("Initializing Base", AddressOf InitializeBase, True)
+ _Loader.AddStep("Initializing EDMI Service", AddressOf InitializeService, True)
+ _Loader.AddStep("Initializing Database", AddressOf InitializeDatabaseWithFallback, True)
+ _Loader.AddStep("Initializing User", AddressOf InitializeUser, True)
+ _Loader.AddStep("Initializing BasicCatalogues", AddressOf InitializeBasicsfromDB, True)
+ _Loader.AddStep("Initializing Language", AddressOf InitializeLanguage, False)
+ _Loader.AddStep("Initializing 3rd-party licenses", AddressOf Initialize3rdParty, False)
+ _Loader.AddStep("Initializing Basic Config", AddressOf InitBasicConfig, False)
+ ' === Init Schritte definieren
- AddHandler _Loader.ProgressChanged, AddressOf ProgressChanged
- AddHandler _Loader.InitCompleted, AddressOf InitCompleted
+ AddHandler _Loader.ProgressChanged, AddressOf ProgressChanged
+ AddHandler _Loader.InitCompleted, AddressOf InitCompleted
- _Loader.Run()
- End If
+ _Loader.Run()
End Sub
diff --git a/GUIs.ZooFlow/Modules/Globix/frmFileflow_Duplicate.vb b/GUIs.ZooFlow/Modules/Globix/frmFileflow_Duplicate.vb
index 0067375e..57e6b2da 100644
--- a/GUIs.ZooFlow/Modules/Globix/frmFileflow_Duplicate.vb
+++ b/GUIs.ZooFlow/Modules/Globix/frmFileflow_Duplicate.vb
@@ -40,7 +40,7 @@ Public Class frmFileflow_Duplicate
If oSql IsNot Nothing Then
Dim oResultDT = Await My.Database.GetDatatableIDBAsync(oSql)
If Not IsNothing(oResultDT) Then
- Search.Run(oResultDT, "FileFlow Duplicate File")
+ Search.RunWithDataTable(oResultDT, "FileFlow Duplicate File")
End If
End If
diff --git a/GUIs.ZooFlow/Search/SearchRunner.vb b/GUIs.ZooFlow/Search/SearchRunner.vb
index 7b466f19..10b379b5 100644
--- a/GUIs.ZooFlow/Search/SearchRunner.vb
+++ b/GUIs.ZooFlow/Search/SearchRunner.vb
@@ -59,11 +59,11 @@ Public Class SearchRunner
SearchTitle = pSearchTitle
End Sub
- Public Function Run(pDatatable As DataTable) As SearchResult
- Return Run(pDatatable, "Suche")
+ Public Function RunWithDataTable(pDatatable As DataTable) As SearchResult
+ Return RunWithDataTable(pDatatable, "Suche")
End Function
- Public Function Run(pDatatable As DataTable, pTitle As String) As SearchResult
+ Public Function RunWithDataTable(pDatatable As DataTable, pTitle As String) As SearchResult
Dim oParams = GetParams(pTitle)
oParams.Results.Add(New DocumentResultList.DocumentResult() With {
.Title = pTitle,
@@ -82,25 +82,28 @@ Public Class SearchRunner
oForm.Show()
- Return New SearchResult()
+ Return New SearchResult(pDatatable.Rows.Count)
End Function
- Public Async Function Run(pSearchTerm As String) As Task(Of SearchResult)
- Return Await Run(pSearchTerm, Nothing, Nothing)
+ Public Async Function RunWithSearchTerm(pSearchTerm As String) As Task(Of SearchResult)
+ Return Await RunWithSearchTerm(pSearchTerm, Nothing, Nothing, Nothing)
End Function
- Public Async Function Run() As Task(Of SearchResult)
- Return Await Run("")
+ Public Async Function RunWithSearchTerm(pSearchTerm As String, pSearchTitle As String) As Task(Of SearchResult)
+ Return Await RunWithSearchTerm(pSearchTerm, Nothing, Nothing, pSearchTitle)
End Function
+ Public Async Function RunWithSearchTerm(pSearchTerm As String, pDateFrom As Date, pDateTo As Date) As Task(Of SearchResult)
+ Return Await RunWithSearchTerm(pSearchTerm, pDateFrom, pDateTo, Nothing)
+ End Function
- Public Async Function Run(pSearchTerm As String, pDateFrom As Date, pDateTo As Date) As Threading.Tasks.Task(Of SearchResult)
+ Public Async Function RunWithSearchTerm(pSearchTerm As String, pDateFrom As Date, pDateTo As Date, pSearchTitle As String) As Task(Of SearchResult)
If pDateFrom.Equals(Date.MinValue) = False Then
ExplicitDate = True
End If
Dim oSearchTerm = pSearchTerm
- Dim oWindowTitle = GetResultWindowString(pSearchTerm)
+ Dim oWindowTitle = GetResultWindowString(pSearchTerm, pSearchTitle)
Dim oParams = GetParams(oWindowTitle)
Dim oDateConstraint = $"{_ActiveDateAttribute}~{_ActiveDateConstraint}"
@@ -121,7 +124,8 @@ Public Class SearchRunner
If Await My.Database.ExecuteNonQueryIDBAsync(oSQL) = True Then
Dim oDTDocResult = Await My.Database.GetDatatableIDBAsync(BaseSearchSQL)
- If oDTDocResult.Rows.Count > 0 Then
+ Dim oRowCount = oDTDocResult.Rows.Count
+ If oRowCount > 0 Then
oParams.Results.Add(New DocumentResultList.DocumentResult() With {
.Title = SearchTitle,
.Datatable = oDTDocResult
@@ -139,9 +143,9 @@ Public Class SearchRunner
oForm.Show()
- Return New SearchResult()
+ Return New SearchResult(oRowCount)
Else
- Return New SearchResult("No Results")
+ Return New SearchResult(oRowCount)
End If
Else
@@ -168,7 +172,11 @@ Public Class SearchRunner
Return oParams
End Function
- Private Function GetResultWindowString(SearchContent As String) As String
+ Private Function GetResultWindowString(SearchContent As String, pWindowTitle As String) As String
+ If pWindowTitle IsNot Nothing Then
+ Return pWindowTitle
+ End If
+
If SearchContent <> String.Empty Then
If My.Application.User.Language = State.UserState.LANG_DE_DE Then
@@ -260,14 +268,15 @@ Public Class SearchRunner
End Sub
Public Class SearchResult
- Public OK As Boolean
+ Public OK As Boolean = True
+ Public Count As Integer = 0
Public ErrorMessage As String = String.Empty
'''
''' Returns a positive Search Result
'''
- Public Sub New()
- OK = True
+ Public Sub New(pCountResults As Integer)
+ Count = pCountResults
End Sub
'''
diff --git a/GUIs.ZooFlow/Search/Test/Search.vb b/GUIs.ZooFlow/Search/Test/Search.vb
index 636012f2..e403bff5 100644
--- a/GUIs.ZooFlow/Search/Test/Search.vb
+++ b/GUIs.ZooFlow/Search/Test/Search.vb
@@ -71,9 +71,18 @@ Namespace Search
End Function
Public Function GetValueTokensForAttribute() As Dictionary(Of String, Object)
- Dim oSQL = $"SELECT * FROM VWIDB_BE_ATTRIBUTE WHERE DEFAULT_SEARCH_ATTRIBUTE = 1 AND LANG_CODE = '{_UserState.Language}'"
- Dim oTable = _Database.GetDatatable("VWIDB_BE_ATTRIBUTE", oSQL, Constants.DatabaseType.IDB, $"DEFAULT_SEARCH_ATTRIBUTE = 1 AND LANG_CODE = '{_UserState.Language}'")
+ Dim oSQL = $"EXEC PRIDB_SEARCH_AUTOSUGGEST '{_UserState.Language}', {_UserState.UserId}"
+ Dim oTable = _Database.GetDatatableIDB(oSQL)
Dim oTokens As New Dictionary(Of String, Object)
+
+ For Each oRow As DataRow In oTable.Rows
+ Dim oTerm = oRow.Item("TERM")
+ If oTokens.ContainsKey(oTerm) = False Then
+ oTokens.Add(oTerm, New AttributeValueToken(oTerm))
+ End If
+ Next
+
+ Return oTokens
End Function
Public Function GetOperatorTokens(pDataType As Type) As Dictionary(Of String, Object)
diff --git a/GUIs.ZooFlow/Search/Test/frmFlowSearch2.vb b/GUIs.ZooFlow/Search/Test/frmFlowSearch2.vb
deleted file mode 100644
index 6332cdd7..00000000
--- a/GUIs.ZooFlow/Search/Test/frmFlowSearch2.vb
+++ /dev/null
@@ -1,190 +0,0 @@
-Imports DevExpress.XtraEditors.Controls
-Imports DevExpress.XtraGrid.Views.Tile
-Imports DevExpress.XtraSplashScreen
-Imports DigitalData.GUIs.ZooFlow.ClassConstants
-Imports DigitalData.Modules.Logging
-
-Public Class frmFlowSearch2
- Private ReadOnly LogConfig As LogConfig = My.LogConfig
- Private ReadOnly Logger = My.LogConfig.GetLogger()
- Private SearchRunner As SearchRunner
-
- Private Sub frmFlowSearch2_Load(sender As Object, e As EventArgs) Handles MyBase.Load
- SearchRunner = New SearchRunner(My.LogConfig, My.Application.GetEnvironment, "FlowSearch") With {
- .BaseSearchSQL = LoadBaseSQL()
- }
-
- TextEdit1.MaskBox.AutoCompleteSource = AutoCompleteSource.CustomSource
- TextEdit1.MaskBox.AutoCompleteMode = AutoCompleteMode.SuggestAppend
- TextEdit1.MaskBox.AutoCompleteCustomSource = LoadAutoSuggest()
-
- RadioGroup1.Properties.Items.AddRange(LoadDateConstraints.ToArray)
-
- GridControl1.DataSource = LoadPredefinedSearches()
- End Sub
-
- Private Function LoadBaseSQL() As String
- Dim oSQL = ""
-
- For Each oRow As DataRow In My.Tables.DTIDB_COMMON_SQL.Rows
- If oRow.Item("TITLE") = SQLCMD_FLOW_SEARCH_BASE Then
- oSQL = oRow.Item("SQL_COMMAND")
- oSQL = oSQL.Replace("@USER_ID", My.Application.User.UserId)
- oSQL = oSQL.Replace("@LANG_CODE", My.Application.User.Language)
- End If
- Next
-
- Return oSQL
- End Function
-
- Private Function LoadAutoSuggest() As AutoCompleteStringCollection
- Dim oCollection As New AutoCompleteStringCollection
- Dim oSql = $"EXEC PRIDB_SEARCH_AUTOSUGGEST '{My.Application.User.Language}',{My.Application.User.UserId}"
- Dim oTable As DataTable = My.Database.GetDatatableIDB(oSql)
-
- If oTable Is Nothing Then
-
- Return New AutoCompleteStringCollection()
- End If
-
- For Each oRow As DataRow In oTable.Rows
- oCollection.Add(oRow.Item("TERM"))
- Next
-
- Return oCollection
- End Function
-
- Private Function LoadDateConstraints() As List(Of RadioGroupItem)
- Return New List(Of RadioGroupItem) From {
- New RadioGroupItem(SearchRunner.CREATED_TODAY, "Heute"),
- New RadioGroupItem(SearchRunner.CREATED_TOMORROW, "Gestern"),
- New RadioGroupItem(SearchRunner.CREATED_LAST_7_DAYS, "Letzte 7 Tage"),
- New RadioGroupItem(SearchRunner.CREATED_MONTH_CURR, "Dieser Monat"),
- New RadioGroupItem(SearchRunner.CREATED_LAST_7_DAYS, "Letzter Monat"),
- New RadioGroupItem(SearchRunner.CREATED_YEAR_CURRENT, "Dieses Jahr"),
- New RadioGroupItem(SearchRunner.CREATED_YEAR_LAST, "Letztes Jahr"),
- New RadioGroupItem("NOTHING", "Keine Einschränkung")
- }
- End Function
-
- Private Function LoadPredefinedSearches() As List(Of PredefinedSearch)
- Return New List(Of PredefinedSearch) From {
- New PredefinedDateSearch() With {
- .Name = "Heute",
- .Description = "Dokumente, die heute abgelegt wurden",
- .DateConstraint = SearchRunner.DateConstraint.Today
- },
- New PredefinedDateSearch() With {
- .Name = "Gestern",
- .Description = "Dokumente, die gestern abgelegt wurden",
- .DateConstraint = SearchRunner.DateConstraint.Yesterday
- },
- New PredefinedDateSearch() With {
- .Name = "Letzte Woche",
- .Description = "Dokumente, die in den letzten 7 Tagen abgelegt wurden",
- .DateConstraint = SearchRunner.DateConstraint.Last7Days
- },
- New PredefinedDateSearch() With {
- .Name = "Dieser Monat",
- .Description = "Dokumente, die in diesem Monat abgelegt wurden",
- .DateConstraint = SearchRunner.DateConstraint.CurrentMonth
- },
- New PredefinedDateSearch() With {
- .Name = "Letzter Monat",
- .Description = "Dokumente, die im letzten Monat abgelegt wurden",
- .DateConstraint = SearchRunner.DateConstraint.LastMonth
- }
- }
- End Function
-
- Private Async Sub TextEdit1_KeyUp(sender As Object, e As KeyEventArgs) Handles TextEdit1.KeyUp
- If e.KeyCode = Keys.Enter Then
- Await RunSearch()
- End If
- End Sub
-
- Private Async Sub TextEdit1_ButtonClick(sender As Object, e As DevExpress.XtraEditors.Controls.ButtonPressedEventArgs) Handles TextEdit1.ButtonClick
- If e.Button.Tag = "SEARCH" Then
- Await RunSearch()
- End If
- End Sub
-
- Private Async Function RunSearch() As Threading.Tasks.Task
- Dim oHandle = SplashScreenManager.ShowOverlayForm(Me)
-
- Try
- Dim oDateFrom = DateEditFrom.EditValue
- Dim oDateTo = DateEditTo.EditValue
-
- If CheckEdit1.IsOn = False Then
- oDateTo = Nothing
- End If
-
- SearchRunner.SetDateConstraint()
- Await SearchRunner.Run(TextEdit1.EditValue, oDateFrom, oDateTo)
-
- Catch ex As Exception
- MsgBox(ex.Message)
-
- Finally
- SplashScreenManager.CloseOverlayForm(oHandle)
-
- End Try
- End Function
-
- Private Sub RadioGroup1_EditValueChanged(sender As Object, e As EventArgs) Handles RadioGroup1.EditValueChanged
- Dim oIndex = RadioGroup1.SelectedIndex
- Dim oItem As RadioGroupItem = RadioGroup1.Properties.Items.Item(oIndex)
- Dim oSearchConstraintString As String = oItem.Value
- Dim oDateConstraint = SearchRunner.ConstantToDateConstraint(oSearchConstraintString)
-
- If oDateConstraint <> SearchRunner.DateConstraint.Undefined Then
- SearchRunner.SetDateConstraint(oDateConstraint)
- End If
- End Sub
-
- Friend Class PredefinedSearch
- Public Property Name As String
- Public Property Description As String
- Public Property Count As Integer = 0
-
- Public ReadOnly Property DisplayName As String
- Get
- Return $"{Name} ({Count})"
- End Get
- End Property
-
- End Class
-
- Friend Class PredefinedSQLSearch
- Public Property SQLCommand As String
- End Class
-
- Friend Class PredefinedDateSearch
- Inherits PredefinedSearch
-
- Public DateConstraint As SearchRunner.DateConstraint
- End Class
-
- Private Async Sub TileView1_ItemClick(sender As Object, e As TileViewItemClickEventArgs) Handles TileView1.ItemClick
- Dim oHandle = SplashScreenManager.ShowOverlayForm(Me)
-
- Try
- Dim oSearch = TileView1.GetRow(TileView1.FocusedRowHandle)
-
- If TypeOf oSearch Is PredefinedDateSearch Then
- Dim oDateSearch As PredefinedDateSearch = oSearch
- SearchRunner.SetDateConstraint(oDateSearch.DateConstraint)
- End If
-
- Await SearchRunner.Run()
- Catch ex As Exception
- Finally
- SplashScreenManager.CloseOverlayForm(oHandle)
- End Try
- End Sub
-
- Private Sub CheckEdit1_Properties_EditValueChanged(sender As Object, e As EventArgs) Handles CheckEdit1.Properties.EditValueChanged
- DateEditTo.Enabled = CheckEdit1.IsOn
- End Sub
-End Class
\ No newline at end of file
diff --git a/GUIs.ZooFlow/Search/frmFlowSearch1.vb b/GUIs.ZooFlow/Search/frmFlowSearch1.vb
index 2e8b03f6..76cb6666 100644
--- a/GUIs.ZooFlow/Search/frmFlowSearch1.vb
+++ b/GUIs.ZooFlow/Search/frmFlowSearch1.vb
@@ -223,7 +223,7 @@ Public Class frmFlowSearch1
Dim oHandle = SplashScreenManager.ShowOverlayForm(Me)
Try
- Dim oResult = Await SearchRunner.Run(TextEditSearch.Text, DateEditFrom.EditValue, DateEditTill.EditValue)
+ Dim oResult = Await SearchRunner.RunWithSearchTerm(TextEditSearch.Text, DateEditFrom.EditValue, DateEditTill.EditValue)
If oResult.OK = False Then
bsiStatus.Caption = oResult.ErrorMessage
End If
@@ -252,7 +252,7 @@ Public Class frmFlowSearch1
Dim oHandle = SplashScreenManager.ShowOverlayForm(Me)
Try
- Dim oResult = Await SearchRunner.Run(TextEditSearch.Text, DateEditFrom.EditValue, DateEditTill.EditValue)
+ Dim oResult = Await SearchRunner.RunWithSearchTerm(TextEditSearch.Text, DateEditFrom.EditValue, DateEditTill.EditValue)
If oResult.OK = False Then
bsiStatus.Caption = oResult.ErrorMessage
End If
diff --git a/GUIs.ZooFlow/Search/Test/frmFlowSearch2.Designer.vb b/GUIs.ZooFlow/Search/frmFlowSearch2.Designer.vb
similarity index 66%
rename from GUIs.ZooFlow/Search/Test/frmFlowSearch2.Designer.vb
rename to GUIs.ZooFlow/Search/frmFlowSearch2.Designer.vb
index 5c15df47..ff20de53 100644
--- a/GUIs.ZooFlow/Search/Test/frmFlowSearch2.Designer.vb
+++ b/GUIs.ZooFlow/Search/frmFlowSearch2.Designer.vb
@@ -22,25 +22,36 @@ Partial Class frmFlowSearch2
'Das Bearbeiten mit dem Code-Editor ist nicht möglich.
_
Private Sub InitializeComponent()
+ Me.components = New System.ComponentModel.Container()
Dim EditorButtonImageOptions1 As DevExpress.XtraEditors.Controls.EditorButtonImageOptions = New DevExpress.XtraEditors.Controls.EditorButtonImageOptions()
Dim SerializableAppearanceObject1 As DevExpress.Utils.SerializableAppearanceObject = New DevExpress.Utils.SerializableAppearanceObject()
Dim SerializableAppearanceObject2 As DevExpress.Utils.SerializableAppearanceObject = New DevExpress.Utils.SerializableAppearanceObject()
Dim SerializableAppearanceObject3 As DevExpress.Utils.SerializableAppearanceObject = New DevExpress.Utils.SerializableAppearanceObject()
Dim SerializableAppearanceObject4 As DevExpress.Utils.SerializableAppearanceObject = New DevExpress.Utils.SerializableAppearanceObject()
Dim TableColumnDefinition1 As DevExpress.XtraEditors.TableLayout.TableColumnDefinition = New DevExpress.XtraEditors.TableLayout.TableColumnDefinition()
+ Dim TableColumnDefinition2 As DevExpress.XtraEditors.TableLayout.TableColumnDefinition = New DevExpress.XtraEditors.TableLayout.TableColumnDefinition()
Dim TableRowDefinition1 As DevExpress.XtraEditors.TableLayout.TableRowDefinition = New DevExpress.XtraEditors.TableLayout.TableRowDefinition()
Dim TableRowDefinition2 As DevExpress.XtraEditors.TableLayout.TableRowDefinition = New DevExpress.XtraEditors.TableLayout.TableRowDefinition()
Dim TileViewItemElement1 As DevExpress.XtraGrid.Views.Tile.TileViewItemElement = New DevExpress.XtraGrid.Views.Tile.TileViewItemElement()
Dim TileViewItemElement2 As DevExpress.XtraGrid.Views.Tile.TileViewItemElement = New DevExpress.XtraGrid.Views.Tile.TileViewItemElement()
+ Dim TileViewItemElement3 As DevExpress.XtraGrid.Views.Tile.TileViewItemElement = New DevExpress.XtraGrid.Views.Tile.TileViewItemElement()
Me.colName = New DevExpress.XtraGrid.Columns.TileViewColumn()
Me.colDescription = New DevExpress.XtraGrid.Columns.TileViewColumn()
+ Me.colImage = New DevExpress.XtraGrid.Columns.TileViewColumn()
Me.RibbonControl1 = New DevExpress.XtraBars.Ribbon.RibbonControl()
+ Me.chkFulltext = New DevExpress.XtraBars.BarToggleSwitchItem()
+ Me.lblResults = New DevExpress.XtraBars.BarStaticItem()
+ Me.chkDateFilter = New DevExpress.XtraBars.BarToggleSwitchItem()
Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage()
+ Me.RibbonPageGroup2 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
+ Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
+ Me.RepositoryItemMarqueeProgressBar1 = New DevExpress.XtraEditors.Repository.RepositoryItemMarqueeProgressBar()
Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar()
Me.RibbonPage2 = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.PanelControl1 = New DevExpress.XtraEditors.PanelControl()
Me.PanelControl2 = New DevExpress.XtraEditors.PanelControl()
Me.LayoutControl1 = New DevExpress.XtraLayout.LayoutControl()
+ Me.TokenEdit1 = New DevExpress.XtraEditors.TokenEdit()
Me.TextEdit1 = New DevExpress.XtraEditors.ButtonEdit()
Me.GridControl1 = New DevExpress.XtraGrid.GridControl()
Me.TileView1 = New DevExpress.XtraGrid.Views.Tile.TileView()
@@ -51,25 +62,27 @@ Partial Class frmFlowSearch2
Me.DateEditTo = New DevExpress.XtraEditors.DateEdit()
Me.CheckEdit1 = New DevExpress.XtraEditors.ToggleSwitch()
Me.Root = New DevExpress.XtraLayout.LayoutControlGroup()
- Me.LayoutControlGroup1 = New DevExpress.XtraLayout.LayoutControlGroup()
+ Me.LayoutControlGroupDate1 = New DevExpress.XtraLayout.LayoutControlGroup()
Me.LayoutControlItem1 = New DevExpress.XtraLayout.LayoutControlItem()
- Me.LayoutControlGroup2 = New DevExpress.XtraLayout.LayoutControlGroup()
+ Me.LayoutControlGroupDate2 = New DevExpress.XtraLayout.LayoutControlGroup()
Me.LayoutControlItem2 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LayoutControlItem4 = New DevExpress.XtraLayout.LayoutControlItem()
Me.EmptySpaceItem1 = New DevExpress.XtraLayout.EmptySpaceItem()
Me.LayoutControlItem6 = New DevExpress.XtraLayout.LayoutControlItem()
+ Me.LayoutControlItem5 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LayoutControlGroup3 = New DevExpress.XtraLayout.LayoutControlGroup()
Me.LayoutControlItem3 = New DevExpress.XtraLayout.LayoutControlItem()
- Me.LayoutControlItem5 = New DevExpress.XtraLayout.LayoutControlItem()
- Me.RibbonPageGroup2 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
- Me.BarToggleSwitchItem1 = New DevExpress.XtraBars.BarToggleSwitchItem()
+ Me.LayoutControlItem7 = New DevExpress.XtraLayout.LayoutControlItem()
+ Me.SvgImageCollection1 = New DevExpress.Utils.SvgImageCollection(Me.components)
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit()
+ CType(Me.RepositoryItemMarqueeProgressBar1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.PanelControl1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.PanelControl1.SuspendLayout()
CType(Me.PanelControl2, System.ComponentModel.ISupportInitialize).BeginInit()
Me.PanelControl2.SuspendLayout()
CType(Me.LayoutControl1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.LayoutControl1.SuspendLayout()
+ CType(Me.TokenEdit1.Properties, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.TextEdit1.Properties, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.GridControl1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.TileView1, System.ComponentModel.ISupportInitialize).BeginInit()
@@ -81,16 +94,18 @@ Partial Class frmFlowSearch2
CType(Me.DateEditTo.Properties, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.CheckEdit1.Properties, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.Root, System.ComponentModel.ISupportInitialize).BeginInit()
- CType(Me.LayoutControlGroup1, System.ComponentModel.ISupportInitialize).BeginInit()
+ CType(Me.LayoutControlGroupDate1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlItem1, System.ComponentModel.ISupportInitialize).BeginInit()
- CType(Me.LayoutControlGroup2, System.ComponentModel.ISupportInitialize).BeginInit()
+ CType(Me.LayoutControlGroupDate2, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlItem2, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlItem4, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.EmptySpaceItem1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlItem6, System.ComponentModel.ISupportInitialize).BeginInit()
+ CType(Me.LayoutControlItem5, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlGroup3, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlItem3, System.ComponentModel.ISupportInitialize).BeginInit()
- CType(Me.LayoutControlItem5, System.ComponentModel.ISupportInitialize).BeginInit()
+ CType(Me.LayoutControlItem7, System.ComponentModel.ISupportInitialize).BeginInit()
+ CType(Me.SvgImageCollection1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout()
'
'colName
@@ -109,34 +124,82 @@ Partial Class frmFlowSearch2
Me.colDescription.Visible = True
Me.colDescription.VisibleIndex = 1
'
+ 'colImage
+ '
+ Me.colImage.Caption = "Image"
+ Me.colImage.FieldName = "Image"
+ Me.colImage.Name = "colImage"
+ Me.colImage.Visible = True
+ Me.colImage.VisibleIndex = 3
+ '
'RibbonControl1
'
Me.RibbonControl1.ColorScheme = DevExpress.XtraBars.Ribbon.RibbonControlColorScheme.Green
Me.RibbonControl1.CommandLayout = DevExpress.XtraBars.Ribbon.CommandLayout.Simplified
Me.RibbonControl1.ExpandCollapseItem.Id = 0
- Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.BarToggleSwitchItem1})
+ Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.chkFulltext, Me.lblResults, Me.chkDateFilter})
Me.RibbonControl1.Location = New System.Drawing.Point(0, 0)
- Me.RibbonControl1.MaxItemId = 2
+ Me.RibbonControl1.MaxItemId = 5
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.RepositoryItemMarqueeProgressBar1})
Me.RibbonControl1.ShowApplicationButton = DevExpress.Utils.DefaultBoolean.[False]
Me.RibbonControl1.ShowToolbarCustomizeItem = False
- Me.RibbonControl1.Size = New System.Drawing.Size(1011, 89)
+ Me.RibbonControl1.Size = New System.Drawing.Size(954, 89)
Me.RibbonControl1.StatusBar = Me.RibbonStatusBar1
Me.RibbonControl1.Toolbar.ShowCustomizeItem = False
'
+ 'chkFulltext
+ '
+ Me.chkFulltext.Caption = "Volltext durchsuchen"
+ Me.chkFulltext.Enabled = False
+ Me.chkFulltext.Id = 1
+ Me.chkFulltext.Name = "chkFulltext"
+ '
+ 'lblResults
+ '
+ Me.lblResults.Caption = "Noch keine Ergebnisse"
+ Me.lblResults.Id = 2
+ Me.lblResults.ItemAppearance.Normal.Font = New System.Drawing.Font("Segoe UI", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
+ Me.lblResults.ItemAppearance.Normal.Options.UseFont = True
+ Me.lblResults.Name = "lblResults"
+ '
+ 'chkDateFilter
+ '
+ Me.chkDateFilter.Caption = "Datumfilter anzeigen"
+ Me.chkDateFilter.Id = 3
+ Me.chkDateFilter.Name = "chkDateFilter"
+ '
'RibbonPage1
'
- Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup2})
+ Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup2, Me.RibbonPageGroup1})
Me.RibbonPage1.Name = "RibbonPage1"
Me.RibbonPage1.Text = "Start"
'
+ 'RibbonPageGroup2
+ '
+ Me.RibbonPageGroup2.ItemLinks.Add(Me.chkFulltext)
+ Me.RibbonPageGroup2.Name = "RibbonPageGroup2"
+ Me.RibbonPageGroup2.Text = "RibbonPageGroup2"
+ '
+ 'RibbonPageGroup1
+ '
+ Me.RibbonPageGroup1.ItemLinks.Add(Me.chkDateFilter)
+ Me.RibbonPageGroup1.Name = "RibbonPageGroup1"
+ Me.RibbonPageGroup1.Text = "RibbonPageGroup1"
+ '
+ 'RepositoryItemMarqueeProgressBar1
+ '
+ Me.RepositoryItemMarqueeProgressBar1.Name = "RepositoryItemMarqueeProgressBar1"
+ '
'RibbonStatusBar1
'
- Me.RibbonStatusBar1.Location = New System.Drawing.Point(0, 779)
+ Me.RibbonStatusBar1.BackColor = System.Drawing.Color.Red
+ Me.RibbonStatusBar1.ItemLinks.Add(Me.lblResults)
+ Me.RibbonStatusBar1.Location = New System.Drawing.Point(0, 639)
Me.RibbonStatusBar1.Name = "RibbonStatusBar1"
Me.RibbonStatusBar1.Ribbon = Me.RibbonControl1
- Me.RibbonStatusBar1.Size = New System.Drawing.Size(1011, 24)
+ Me.RibbonStatusBar1.Size = New System.Drawing.Size(954, 24)
'
'RibbonPage2
'
@@ -150,7 +213,7 @@ Partial Class frmFlowSearch2
Me.PanelControl1.Location = New System.Drawing.Point(0, 89)
Me.PanelControl1.Name = "PanelControl1"
Me.PanelControl1.Padding = New System.Windows.Forms.Padding(30)
- Me.PanelControl1.Size = New System.Drawing.Size(1011, 690)
+ Me.PanelControl1.Size = New System.Drawing.Size(954, 550)
Me.PanelControl1.TabIndex = 3
'
'PanelControl2
@@ -160,11 +223,12 @@ Partial Class frmFlowSearch2
Me.PanelControl2.Location = New System.Drawing.Point(32, 32)
Me.PanelControl2.Margin = New System.Windows.Forms.Padding(0)
Me.PanelControl2.Name = "PanelControl2"
- Me.PanelControl2.Size = New System.Drawing.Size(947, 626)
+ Me.PanelControl2.Size = New System.Drawing.Size(890, 486)
Me.PanelControl2.TabIndex = 3
'
'LayoutControl1
'
+ Me.LayoutControl1.Controls.Add(Me.TokenEdit1)
Me.LayoutControl1.Controls.Add(Me.TextEdit1)
Me.LayoutControl1.Controls.Add(Me.GridControl1)
Me.LayoutControl1.Controls.Add(Me.RadioGroup1)
@@ -177,13 +241,27 @@ Partial Class frmFlowSearch2
Me.LayoutControl1.OptionsView.GroupStyle = DevExpress.Utils.GroupStyle.Title
Me.LayoutControl1.OptionsView.ItemBorderColor = System.Drawing.Color.Transparent
Me.LayoutControl1.Root = Me.Root
- Me.LayoutControl1.Size = New System.Drawing.Size(943, 622)
+ Me.LayoutControl1.Size = New System.Drawing.Size(886, 482)
Me.LayoutControl1.TabIndex = 0
Me.LayoutControl1.Text = "LayoutControl1"
'
+ 'TokenEdit1
+ '
+ Me.TokenEdit1.Location = New System.Drawing.Point(0, 0)
+ Me.TokenEdit1.Margin = New System.Windows.Forms.Padding(10)
+ Me.TokenEdit1.MenuManager = Me.RibbonControl1
+ Me.TokenEdit1.Name = "TokenEdit1"
+ Me.TokenEdit1.Properties.Appearance.Font = New System.Drawing.Font("Segoe UI", 15.75!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
+ Me.TokenEdit1.Properties.Appearance.Options.UseFont = True
+ Me.TokenEdit1.Properties.NullText = "Suchbegriffe eingeben.."
+ Me.TokenEdit1.Properties.Separators.AddRange(New String() {","})
+ Me.TokenEdit1.Size = New System.Drawing.Size(886, 36)
+ Me.TokenEdit1.StyleController = Me.LayoutControl1
+ Me.TokenEdit1.TabIndex = 9
+ '
'TextEdit1
'
- Me.TextEdit1.Location = New System.Drawing.Point(0, 0)
+ Me.TextEdit1.Location = New System.Drawing.Point(0, 301)
Me.TextEdit1.MenuManager = Me.RibbonControl1
Me.TextEdit1.Name = "TextEdit1"
Me.TextEdit1.Properties.Appearance.Font = New System.Drawing.Font("Segoe UI", 9.75!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
@@ -193,46 +271,63 @@ Partial Class frmFlowSearch2
Me.TextEdit1.Properties.Buttons.AddRange(New DevExpress.XtraEditors.Controls.EditorButton() {New DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Glyph, "", -1, True, True, False, EditorButtonImageOptions1, New DevExpress.Utils.KeyShortcut(System.Windows.Forms.Keys.None), SerializableAppearanceObject1, SerializableAppearanceObject2, SerializableAppearanceObject3, SerializableAppearanceObject4, "", "SEARCH", Nothing, DevExpress.Utils.ToolTipAnchor.[Default])})
Me.TextEdit1.Properties.NullText = "Suchbegriff eingeben.."
Me.TextEdit1.Properties.Padding = New System.Windows.Forms.Padding(5, 10, 10, 10)
- Me.TextEdit1.Size = New System.Drawing.Size(943, 44)
+ Me.TextEdit1.Size = New System.Drawing.Size(886, 44)
Me.TextEdit1.StyleController = Me.LayoutControl1
Me.TextEdit1.TabIndex = 2
'
'GridControl1
'
- Me.GridControl1.Location = New System.Drawing.Point(14, 316)
+ Me.GridControl1.Location = New System.Drawing.Point(14, 90)
Me.GridControl1.MainView = Me.TileView1
Me.GridControl1.MenuManager = Me.RibbonControl1
Me.GridControl1.Name = "GridControl1"
- Me.GridControl1.Size = New System.Drawing.Size(915, 292)
+ Me.GridControl1.Size = New System.Drawing.Size(858, 197)
Me.GridControl1.TabIndex = 1
Me.GridControl1.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.TileView1, Me.GridView1})
'
'TileView1
'
- Me.TileView1.Columns.AddRange(New DevExpress.XtraGrid.Columns.GridColumn() {Me.colName, Me.colDescription, Me.colCount})
+ Me.TileView1.Columns.AddRange(New DevExpress.XtraGrid.Columns.GridColumn() {Me.colName, Me.colDescription, Me.colCount, Me.colImage})
Me.TileView1.GridControl = Me.GridControl1
Me.TileView1.Name = "TileView1"
Me.TileView1.OptionsTiles.AllowItemHover = True
- Me.TileView1.OptionsTiles.ItemSize = New System.Drawing.Size(150, 80)
+ Me.TileView1.OptionsTiles.ItemSize = New System.Drawing.Size(190, 80)
+ Me.TileView1.OptionsTiles.Orientation = System.Windows.Forms.Orientation.Vertical
+ Me.TileView1.OptionsTiles.RowCount = 2
+ Me.TileView1.OptionsTiles.VerticalContentAlignment = DevExpress.Utils.VertAlignment.Center
+ TableColumnDefinition1.Length.Value = 35.0R
+ TableColumnDefinition1.PaddingRight = 5
+ TableColumnDefinition2.Length.Value = 129.0R
Me.TileView1.TileColumns.Add(TableColumnDefinition1)
- TableRowDefinition2.Length.Value = 2.0R
+ Me.TileView1.TileColumns.Add(TableColumnDefinition2)
+ TableRowDefinition1.Length.Value = 21.0R
+ TableRowDefinition2.Length.Value = 43.0R
Me.TileView1.TileRows.Add(TableRowDefinition1)
Me.TileView1.TileRows.Add(TableRowDefinition2)
TileViewItemElement1.Appearance.Normal.Font = New System.Drawing.Font("Segoe UI", 9.75!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
TileViewItemElement1.Appearance.Normal.Options.UseFont = True
TileViewItemElement1.Column = Me.colName
+ TileViewItemElement1.ColumnIndex = 1
TileViewItemElement1.ImageOptions.ImageAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleCenter
TileViewItemElement1.ImageOptions.ImageScaleMode = DevExpress.XtraEditors.TileItemImageScaleMode.Squeeze
TileViewItemElement1.Text = "colName"
TileViewItemElement1.TextAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleCenter
TileViewItemElement2.Column = Me.colDescription
+ TileViewItemElement2.ColumnIndex = 1
TileViewItemElement2.ImageOptions.ImageAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleCenter
TileViewItemElement2.ImageOptions.ImageScaleMode = DevExpress.XtraEditors.TileItemImageScaleMode.Squeeze
TileViewItemElement2.RowIndex = 1
TileViewItemElement2.Text = "colDescription"
TileViewItemElement2.TextAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleCenter
+ TileViewItemElement3.Column = Me.colImage
+ TileViewItemElement3.ImageOptions.ImageAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleCenter
+ TileViewItemElement3.ImageOptions.ImageScaleMode = DevExpress.XtraEditors.TileItemImageScaleMode.Squeeze
+ TileViewItemElement3.RowIndex = 1
+ TileViewItemElement3.Text = "colImage"
+ TileViewItemElement3.TextAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleCenter
Me.TileView1.TileTemplate.Add(TileViewItemElement1)
Me.TileView1.TileTemplate.Add(TileViewItemElement2)
+ Me.TileView1.TileTemplate.Add(TileViewItemElement3)
'
'colCount
'
@@ -249,7 +344,7 @@ Partial Class frmFlowSearch2
'
'RadioGroup1
'
- Me.RadioGroup1.Location = New System.Drawing.Point(4, 88)
+ Me.RadioGroup1.Location = New System.Drawing.Point(4, 389)
Me.RadioGroup1.MenuManager = Me.RibbonControl1
Me.RadioGroup1.Name = "RadioGroup1"
Me.RadioGroup1.Properties.Appearance.BackColor = System.Drawing.SystemColors.Control
@@ -257,42 +352,42 @@ Partial Class frmFlowSearch2
Me.RadioGroup1.Properties.Columns = 2
Me.RadioGroup1.Properties.ItemHorzAlignment = DevExpress.XtraEditors.RadioItemHorzAlignment.Near
Me.RadioGroup1.Properties.ItemsLayout = DevExpress.XtraEditors.RadioGroupItemsLayout.Flow
- Me.RadioGroup1.Size = New System.Drawing.Size(655, 170)
+ Me.RadioGroup1.Size = New System.Drawing.Size(615, 89)
Me.RadioGroup1.StyleController = Me.LayoutControl1
Me.RadioGroup1.TabIndex = 4
'
'DateEditFrom
'
Me.DateEditFrom.EditValue = Nothing
- Me.DateEditFrom.Location = New System.Drawing.Point(740, 91)
+ Me.DateEditFrom.Location = New System.Drawing.Point(700, 392)
Me.DateEditFrom.MenuManager = Me.RibbonControl1
Me.DateEditFrom.Name = "DateEditFrom"
Me.DateEditFrom.Properties.Buttons.AddRange(New DevExpress.XtraEditors.Controls.EditorButton() {New DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)})
Me.DateEditFrom.Properties.CalendarTimeProperties.Buttons.AddRange(New DevExpress.XtraEditors.Controls.EditorButton() {New DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)})
- Me.DateEditFrom.Size = New System.Drawing.Size(196, 20)
+ Me.DateEditFrom.Size = New System.Drawing.Size(179, 20)
Me.DateEditFrom.StyleController = Me.LayoutControl1
Me.DateEditFrom.TabIndex = 5
'
'DateEditTo
'
Me.DateEditTo.EditValue = Nothing
- Me.DateEditTo.Location = New System.Drawing.Point(740, 144)
+ Me.DateEditTo.Location = New System.Drawing.Point(700, 445)
Me.DateEditTo.MenuManager = Me.RibbonControl1
Me.DateEditTo.Name = "DateEditTo"
Me.DateEditTo.Properties.Buttons.AddRange(New DevExpress.XtraEditors.Controls.EditorButton() {New DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)})
Me.DateEditTo.Properties.CalendarTimeProperties.Buttons.AddRange(New DevExpress.XtraEditors.Controls.EditorButton() {New DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)})
- Me.DateEditTo.Size = New System.Drawing.Size(196, 20)
+ Me.DateEditTo.Size = New System.Drawing.Size(179, 20)
Me.DateEditTo.StyleController = Me.LayoutControl1
Me.DateEditTo.TabIndex = 7
'
'CheckEdit1
'
- Me.CheckEdit1.Location = New System.Drawing.Point(667, 118)
+ Me.CheckEdit1.Location = New System.Drawing.Point(627, 419)
Me.CheckEdit1.MenuManager = Me.RibbonControl1
Me.CheckEdit1.Name = "CheckEdit1"
Me.CheckEdit1.Properties.OffText = "Datum bis deaktiviert"
Me.CheckEdit1.Properties.OnText = "Datum bis aktiviert"
- Me.CheckEdit1.Size = New System.Drawing.Size(272, 19)
+ Me.CheckEdit1.Size = New System.Drawing.Size(255, 19)
Me.CheckEdit1.StyleController = Me.LayoutControl1
Me.CheckEdit1.TabIndex = 8
'
@@ -300,52 +395,54 @@ Partial Class frmFlowSearch2
'
Me.Root.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.[True]
Me.Root.GroupBordersVisible = False
- Me.Root.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlGroup1, Me.LayoutControlGroup2, Me.LayoutControlGroup3, Me.LayoutControlItem5})
+ Me.Root.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlGroupDate1, Me.LayoutControlGroupDate2, Me.LayoutControlGroup3, Me.LayoutControlItem7, Me.LayoutControlItem5})
Me.Root.Name = "Root"
Me.Root.Padding = New DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0)
- Me.Root.Size = New System.Drawing.Size(943, 622)
+ Me.Root.Size = New System.Drawing.Size(886, 482)
Me.Root.TextVisible = False
'
- 'LayoutControlGroup1
+ 'LayoutControlGroupDate1
'
- Me.LayoutControlGroup1.AppearanceGroup.BackColor = System.Drawing.Color.FromArgb(CType(CType(165, Byte), Integer), CType(CType(36, Byte), Integer), CType(CType(19, Byte), Integer))
- Me.LayoutControlGroup1.AppearanceGroup.BackColor2 = System.Drawing.Color.FromArgb(CType(CType(165, Byte), Integer), CType(CType(36, Byte), Integer), CType(CType(19, Byte), Integer))
- Me.LayoutControlGroup1.AppearanceGroup.BorderColor = System.Drawing.Color.FromArgb(CType(CType(165, Byte), Integer), CType(CType(36, Byte), Integer), CType(CType(19, Byte), Integer))
- Me.LayoutControlGroup1.AppearanceGroup.Options.UseBackColor = True
- Me.LayoutControlGroup1.AppearanceGroup.Options.UseBorderColor = True
- Me.LayoutControlGroup1.BestFitWeight = 0
- Me.LayoutControlGroup1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.[False]
- Me.LayoutControlGroup1.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlItem1})
- Me.LayoutControlGroup1.Location = New System.Drawing.Point(0, 44)
- Me.LayoutControlGroup1.Name = "LayoutControlGroup1"
- Me.LayoutControlGroup1.Padding = New DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0)
- Me.LayoutControlGroup1.Size = New System.Drawing.Size(663, 218)
- Me.LayoutControlGroup1.Spacing = New DevExpress.XtraLayout.Utils.Padding(2, 2, 20, 2)
- Me.LayoutControlGroup1.Text = "Datums Einschränkung"
+ Me.LayoutControlGroupDate1.AppearanceGroup.BackColor = System.Drawing.Color.FromArgb(CType(CType(165, Byte), Integer), CType(CType(36, Byte), Integer), CType(CType(19, Byte), Integer))
+ Me.LayoutControlGroupDate1.AppearanceGroup.BackColor2 = System.Drawing.Color.FromArgb(CType(CType(165, Byte), Integer), CType(CType(36, Byte), Integer), CType(CType(19, Byte), Integer))
+ Me.LayoutControlGroupDate1.AppearanceGroup.BorderColor = System.Drawing.Color.FromArgb(CType(CType(165, Byte), Integer), CType(CType(36, Byte), Integer), CType(CType(19, Byte), Integer))
+ Me.LayoutControlGroupDate1.AppearanceGroup.Options.UseBackColor = True
+ Me.LayoutControlGroupDate1.AppearanceGroup.Options.UseBorderColor = True
+ Me.LayoutControlGroupDate1.BestFitWeight = 0
+ Me.LayoutControlGroupDate1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.[False]
+ Me.LayoutControlGroupDate1.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlItem1})
+ Me.LayoutControlGroupDate1.Location = New System.Drawing.Point(0, 345)
+ Me.LayoutControlGroupDate1.Name = "LayoutControlGroupDate1"
+ Me.LayoutControlGroupDate1.Padding = New DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0)
+ Me.LayoutControlGroupDate1.Size = New System.Drawing.Size(623, 137)
+ Me.LayoutControlGroupDate1.Spacing = New DevExpress.XtraLayout.Utils.Padding(2, 2, 20, 2)
+ Me.LayoutControlGroupDate1.Text = "Datums Einschränkung"
+ Me.LayoutControlGroupDate1.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never
'
'LayoutControlItem1
'
Me.LayoutControlItem1.Control = Me.RadioGroup1
Me.LayoutControlItem1.Location = New System.Drawing.Point(0, 0)
Me.LayoutControlItem1.Name = "LayoutControlItem1"
- Me.LayoutControlItem1.Size = New System.Drawing.Size(659, 174)
+ Me.LayoutControlItem1.Size = New System.Drawing.Size(619, 93)
Me.LayoutControlItem1.TextSize = New System.Drawing.Size(0, 0)
Me.LayoutControlItem1.TextVisible = False
'
- 'LayoutControlGroup2
+ 'LayoutControlGroupDate2
'
- Me.LayoutControlGroup2.AppearanceGroup.BackColor = System.Drawing.Color.FromArgb(CType(CType(165, Byte), Integer), CType(CType(36, Byte), Integer), CType(CType(19, Byte), Integer))
- Me.LayoutControlGroup2.AppearanceGroup.BorderColor = System.Drawing.Color.FromArgb(CType(CType(165, Byte), Integer), CType(CType(36, Byte), Integer), CType(CType(19, Byte), Integer))
- Me.LayoutControlGroup2.AppearanceGroup.Options.UseBackColor = True
- Me.LayoutControlGroup2.AppearanceGroup.Options.UseBorderColor = True
- Me.LayoutControlGroup2.BestFitWeight = 0
- Me.LayoutControlGroup2.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlItem2, Me.LayoutControlItem4, Me.EmptySpaceItem1, Me.LayoutControlItem6})
- Me.LayoutControlGroup2.Location = New System.Drawing.Point(663, 44)
- Me.LayoutControlGroup2.Name = "LayoutControlGroup2"
- Me.LayoutControlGroup2.Padding = New DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0)
- Me.LayoutControlGroup2.Size = New System.Drawing.Size(280, 218)
- Me.LayoutControlGroup2.Spacing = New DevExpress.XtraLayout.Utils.Padding(2, 2, 20, 2)
- Me.LayoutControlGroup2.Text = "Eigenes Datum"
+ Me.LayoutControlGroupDate2.AppearanceGroup.BackColor = System.Drawing.Color.FromArgb(CType(CType(165, Byte), Integer), CType(CType(36, Byte), Integer), CType(CType(19, Byte), Integer))
+ Me.LayoutControlGroupDate2.AppearanceGroup.BorderColor = System.Drawing.Color.FromArgb(CType(CType(165, Byte), Integer), CType(CType(36, Byte), Integer), CType(CType(19, Byte), Integer))
+ Me.LayoutControlGroupDate2.AppearanceGroup.Options.UseBackColor = True
+ Me.LayoutControlGroupDate2.AppearanceGroup.Options.UseBorderColor = True
+ Me.LayoutControlGroupDate2.BestFitWeight = 0
+ Me.LayoutControlGroupDate2.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlItem2, Me.LayoutControlItem4, Me.EmptySpaceItem1, Me.LayoutControlItem6})
+ Me.LayoutControlGroupDate2.Location = New System.Drawing.Point(623, 345)
+ Me.LayoutControlGroupDate2.Name = "LayoutControlGroupDate2"
+ Me.LayoutControlGroupDate2.Padding = New DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0)
+ Me.LayoutControlGroupDate2.Size = New System.Drawing.Size(263, 137)
+ Me.LayoutControlGroupDate2.Spacing = New DevExpress.XtraLayout.Utils.Padding(2, 2, 20, 2)
+ Me.LayoutControlGroupDate2.Text = "Eigenes Datum"
+ Me.LayoutControlGroupDate2.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never
'
'LayoutControlItem2
'
@@ -353,7 +450,7 @@ Partial Class frmFlowSearch2
Me.LayoutControlItem2.Location = New System.Drawing.Point(0, 0)
Me.LayoutControlItem2.Name = "LayoutControlItem2"
Me.LayoutControlItem2.Padding = New DevExpress.XtraLayout.Utils.Padding(5, 5, 5, 5)
- Me.LayoutControlItem2.Size = New System.Drawing.Size(276, 30)
+ Me.LayoutControlItem2.Size = New System.Drawing.Size(259, 30)
Me.LayoutControlItem2.Text = "Datum Von"
Me.LayoutControlItem2.TextSize = New System.Drawing.Size(58, 13)
'
@@ -364,7 +461,7 @@ Partial Class frmFlowSearch2
Me.LayoutControlItem4.Location = New System.Drawing.Point(0, 53)
Me.LayoutControlItem4.Name = "LayoutControlItem4"
Me.LayoutControlItem4.Padding = New DevExpress.XtraLayout.Utils.Padding(5, 5, 5, 5)
- Me.LayoutControlItem4.Size = New System.Drawing.Size(276, 30)
+ Me.LayoutControlItem4.Size = New System.Drawing.Size(259, 30)
Me.LayoutControlItem4.Text = "Datum Bis"
Me.LayoutControlItem4.TextSize = New System.Drawing.Size(58, 13)
'
@@ -373,7 +470,7 @@ Partial Class frmFlowSearch2
Me.EmptySpaceItem1.AllowHotTrack = False
Me.EmptySpaceItem1.Location = New System.Drawing.Point(0, 83)
Me.EmptySpaceItem1.Name = "EmptySpaceItem1"
- Me.EmptySpaceItem1.Size = New System.Drawing.Size(276, 91)
+ Me.EmptySpaceItem1.Size = New System.Drawing.Size(259, 10)
Me.EmptySpaceItem1.TextSize = New System.Drawing.Size(0, 0)
'
'LayoutControlItem6
@@ -381,18 +478,30 @@ Partial Class frmFlowSearch2
Me.LayoutControlItem6.Control = Me.CheckEdit1
Me.LayoutControlItem6.Location = New System.Drawing.Point(0, 30)
Me.LayoutControlItem6.Name = "LayoutControlItem6"
- Me.LayoutControlItem6.Size = New System.Drawing.Size(276, 23)
+ Me.LayoutControlItem6.Size = New System.Drawing.Size(259, 23)
Me.LayoutControlItem6.TextSize = New System.Drawing.Size(0, 0)
Me.LayoutControlItem6.TextVisible = False
'
+ 'LayoutControlItem5
+ '
+ Me.LayoutControlItem5.BestFitWeight = 0
+ Me.LayoutControlItem5.Control = Me.TextEdit1
+ Me.LayoutControlItem5.Location = New System.Drawing.Point(0, 301)
+ Me.LayoutControlItem5.Name = "LayoutControlItem5"
+ Me.LayoutControlItem5.Padding = New DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0)
+ Me.LayoutControlItem5.Size = New System.Drawing.Size(886, 44)
+ Me.LayoutControlItem5.TextSize = New System.Drawing.Size(0, 0)
+ Me.LayoutControlItem5.TextVisible = False
+ Me.LayoutControlItem5.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never
+ '
'LayoutControlGroup3
'
Me.LayoutControlGroup3.AppearanceGroup.BorderColor = System.Drawing.Color.FromArgb(CType(CType(165, Byte), Integer), CType(CType(36, Byte), Integer), CType(CType(19, Byte), Integer))
Me.LayoutControlGroup3.AppearanceGroup.Options.UseBorderColor = True
Me.LayoutControlGroup3.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlItem3})
- Me.LayoutControlGroup3.Location = New System.Drawing.Point(0, 262)
+ Me.LayoutControlGroup3.Location = New System.Drawing.Point(0, 36)
Me.LayoutControlGroup3.Name = "LayoutControlGroup3"
- Me.LayoutControlGroup3.Size = New System.Drawing.Size(943, 360)
+ Me.LayoutControlGroup3.Size = New System.Drawing.Size(886, 265)
Me.LayoutControlGroup3.Spacing = New DevExpress.XtraLayout.Utils.Padding(2, 2, 20, 2)
Me.LayoutControlGroup3.Text = "Meine Suchen"
'
@@ -401,39 +510,31 @@ Partial Class frmFlowSearch2
Me.LayoutControlItem3.Control = Me.GridControl1
Me.LayoutControlItem3.Location = New System.Drawing.Point(0, 0)
Me.LayoutControlItem3.Name = "LayoutControlItem3"
- Me.LayoutControlItem3.Size = New System.Drawing.Size(919, 296)
+ Me.LayoutControlItem3.Size = New System.Drawing.Size(862, 201)
Me.LayoutControlItem3.TextSize = New System.Drawing.Size(0, 0)
Me.LayoutControlItem3.TextVisible = False
'
- 'LayoutControlItem5
+ 'LayoutControlItem7
'
- Me.LayoutControlItem5.BestFitWeight = 0
- Me.LayoutControlItem5.Control = Me.TextEdit1
- Me.LayoutControlItem5.Location = New System.Drawing.Point(0, 0)
- Me.LayoutControlItem5.Name = "LayoutControlItem5"
- Me.LayoutControlItem5.Padding = New DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0)
- Me.LayoutControlItem5.Size = New System.Drawing.Size(943, 44)
- Me.LayoutControlItem5.TextSize = New System.Drawing.Size(0, 0)
- Me.LayoutControlItem5.TextVisible = False
+ Me.LayoutControlItem7.Control = Me.TokenEdit1
+ Me.LayoutControlItem7.Location = New System.Drawing.Point(0, 0)
+ Me.LayoutControlItem7.Name = "LayoutControlItem7"
+ Me.LayoutControlItem7.Padding = New DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0)
+ Me.LayoutControlItem7.Size = New System.Drawing.Size(886, 36)
+ Me.LayoutControlItem7.TextSize = New System.Drawing.Size(0, 0)
+ Me.LayoutControlItem7.TextVisible = False
'
- 'RibbonPageGroup2
+ 'SvgImageCollection1
'
- Me.RibbonPageGroup2.ItemLinks.Add(Me.BarToggleSwitchItem1)
- Me.RibbonPageGroup2.Name = "RibbonPageGroup2"
- Me.RibbonPageGroup2.Text = "RibbonPageGroup2"
- '
- 'BarToggleSwitchItem1
- '
- Me.BarToggleSwitchItem1.Caption = "Volltext durchsuchen"
- Me.BarToggleSwitchItem1.Enabled = False
- Me.BarToggleSwitchItem1.Id = 1
- Me.BarToggleSwitchItem1.Name = "BarToggleSwitchItem1"
+ Me.SvgImageCollection1.Add("day", "image://svgimages/scheduling/dayview.svg")
+ Me.SvgImageCollection1.Add("month", "image://svgimages/scheduling/monthview.svg")
+ Me.SvgImageCollection1.Add("week", "image://svgimages/scheduling/next7days.svg")
'
'frmFlowSearch2
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
- Me.ClientSize = New System.Drawing.Size(1011, 803)
+ Me.ClientSize = New System.Drawing.Size(954, 663)
Me.Controls.Add(Me.PanelControl1)
Me.Controls.Add(Me.RibbonStatusBar1)
Me.Controls.Add(Me.RibbonControl1)
@@ -443,12 +544,14 @@ Partial Class frmFlowSearch2
Me.StatusBar = Me.RibbonStatusBar1
Me.Text = "Search Flow"
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).EndInit()
+ CType(Me.RepositoryItemMarqueeProgressBar1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.PanelControl1, System.ComponentModel.ISupportInitialize).EndInit()
Me.PanelControl1.ResumeLayout(False)
CType(Me.PanelControl2, System.ComponentModel.ISupportInitialize).EndInit()
Me.PanelControl2.ResumeLayout(False)
CType(Me.LayoutControl1, System.ComponentModel.ISupportInitialize).EndInit()
Me.LayoutControl1.ResumeLayout(False)
+ CType(Me.TokenEdit1.Properties, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.TextEdit1.Properties, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.GridControl1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.TileView1, System.ComponentModel.ISupportInitialize).EndInit()
@@ -460,16 +563,18 @@ Partial Class frmFlowSearch2
CType(Me.DateEditTo.Properties, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.CheckEdit1.Properties, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.Root, System.ComponentModel.ISupportInitialize).EndInit()
- CType(Me.LayoutControlGroup1, System.ComponentModel.ISupportInitialize).EndInit()
+ CType(Me.LayoutControlGroupDate1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlItem1, System.ComponentModel.ISupportInitialize).EndInit()
- CType(Me.LayoutControlGroup2, System.ComponentModel.ISupportInitialize).EndInit()
+ CType(Me.LayoutControlGroupDate2, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlItem2, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlItem4, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.EmptySpaceItem1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlItem6, System.ComponentModel.ISupportInitialize).EndInit()
+ CType(Me.LayoutControlItem5, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlGroup3, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlItem3, System.ComponentModel.ISupportInitialize).EndInit()
- CType(Me.LayoutControlItem5, System.ComponentModel.ISupportInitialize).EndInit()
+ CType(Me.LayoutControlItem7, System.ComponentModel.ISupportInitialize).EndInit()
+ CType(Me.SvgImageCollection1, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False)
Me.PerformLayout()
@@ -493,8 +598,8 @@ Partial Class frmFlowSearch2
Friend WithEvents colCount As DevExpress.XtraGrid.Columns.TileViewColumn
Friend WithEvents GridView1 As DevExpress.XtraGrid.Views.Grid.GridView
Friend WithEvents DateEditFrom As DevExpress.XtraEditors.DateEdit
- Friend WithEvents LayoutControlGroup1 As DevExpress.XtraLayout.LayoutControlGroup
- Friend WithEvents LayoutControlGroup2 As DevExpress.XtraLayout.LayoutControlGroup
+ Friend WithEvents LayoutControlGroupDate1 As DevExpress.XtraLayout.LayoutControlGroup
+ Friend WithEvents LayoutControlGroupDate2 As DevExpress.XtraLayout.LayoutControlGroup
Friend WithEvents LayoutControlItem2 As DevExpress.XtraLayout.LayoutControlItem
Friend WithEvents DateEditTo As DevExpress.XtraEditors.DateEdit
Friend WithEvents LayoutControlItem4 As DevExpress.XtraLayout.LayoutControlItem
@@ -504,6 +609,14 @@ Partial Class frmFlowSearch2
Friend WithEvents LayoutControlItem5 As DevExpress.XtraLayout.LayoutControlItem
Friend WithEvents CheckEdit1 As DevExpress.XtraEditors.ToggleSwitch
Friend WithEvents LayoutControlItem6 As DevExpress.XtraLayout.LayoutControlItem
- Friend WithEvents BarToggleSwitchItem1 As DevExpress.XtraBars.BarToggleSwitchItem
+ Friend WithEvents chkFulltext As DevExpress.XtraBars.BarToggleSwitchItem
Friend WithEvents RibbonPageGroup2 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
+ Friend WithEvents lblResults As DevExpress.XtraBars.BarStaticItem
+ Friend WithEvents chkDateFilter As DevExpress.XtraBars.BarToggleSwitchItem
+ Friend WithEvents RibbonPageGroup1 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
+ Friend WithEvents RepositoryItemMarqueeProgressBar1 As DevExpress.XtraEditors.Repository.RepositoryItemMarqueeProgressBar
+ Friend WithEvents SvgImageCollection1 As DevExpress.Utils.SvgImageCollection
+ Friend WithEvents colImage As DevExpress.XtraGrid.Columns.TileViewColumn
+ Friend WithEvents TokenEdit1 As DevExpress.XtraEditors.TokenEdit
+ Friend WithEvents LayoutControlItem7 As DevExpress.XtraLayout.LayoutControlItem
End Class
diff --git a/GUIs.ZooFlow/Search/Test/frmFlowSearch2.resx b/GUIs.ZooFlow/Search/frmFlowSearch2.resx
similarity index 96%
rename from GUIs.ZooFlow/Search/Test/frmFlowSearch2.resx
rename to GUIs.ZooFlow/Search/frmFlowSearch2.resx
index 1af7de15..f722219e 100644
--- a/GUIs.ZooFlow/Search/Test/frmFlowSearch2.resx
+++ b/GUIs.ZooFlow/Search/frmFlowSearch2.resx
@@ -117,4 +117,7 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 17, 17
+
\ No newline at end of file
diff --git a/GUIs.ZooFlow/Search/frmFlowSearch2.vb b/GUIs.ZooFlow/Search/frmFlowSearch2.vb
new file mode 100644
index 00000000..aca4e251
--- /dev/null
+++ b/GUIs.ZooFlow/Search/frmFlowSearch2.vb
@@ -0,0 +1,360 @@
+Imports DevExpress.LookAndFeel
+Imports DevExpress.Skins
+Imports DevExpress.Utils.Svg
+Imports DevExpress.XtraEditors
+Imports DevExpress.XtraEditors.Controls
+Imports DevExpress.XtraGrid.Views.Tile
+Imports DevExpress.XtraSplashScreen
+Imports DigitalData.GUIs.ZooFlow.ClassConstants
+Imports DigitalData.GUIs.ZooFlow.Search
+Imports DigitalData.GUIs.ZooFlow.Search.SearchToken
+Imports DigitalData.Modules.Logging
+
+Public Class frmFlowSearch2
+ Private ReadOnly LogConfig As LogConfig = My.LogConfig
+ Private ReadOnly Logger = My.LogConfig.GetLogger()
+ Private SearchRunner As SearchRunner
+ Private Search As Search.Search
+
+ Private TokenListDefault As New Dictionary(Of String, Object)
+ Private TokenListOperands As New Dictionary(Of String, Object)
+ Private TokenListAttrValues As New Dictionary(Of String, Object)
+
+ Private Sub frmFlowSearch2_Load(sender As Object, e As EventArgs) Handles MyBase.Load
+ Search = New Search.Search(LogConfig, My.Application.User, My.Database)
+ SearchRunner = New SearchRunner(My.LogConfig, My.Application.GetEnvironment, "FlowSearch") With {
+ .BaseSearchSQL = LoadBaseSQL()
+ }
+
+ TextEdit1.MaskBox.AutoCompleteSource = AutoCompleteSource.CustomSource
+ TextEdit1.MaskBox.AutoCompleteMode = AutoCompleteMode.SuggestAppend
+ TextEdit1.MaskBox.AutoCompleteCustomSource = LoadAutoSuggest()
+
+ RadioGroup1.Properties.Items.AddRange(LoadDateConstraints.ToArray)
+
+ GridControl1.DataSource = LoadPredefinedSearches()
+
+ Dim oTokens = Search.GetValueTokensForAttribute()
+ AddTokens(TokenEdit1, oTokens)
+ End Sub
+
+ Private Function LoadBaseSQL() As String
+ Dim oSQL = ""
+
+ For Each oRow As DataRow In My.Tables.DTIDB_COMMON_SQL.Rows
+ If oRow.Item("TITLE") = SQLCMD_FLOW_SEARCH_BASE Then
+ oSQL = oRow.Item("SQL_COMMAND")
+ oSQL = oSQL.Replace("@USER_ID", My.Application.User.UserId)
+ oSQL = oSQL.Replace("@LANG_CODE", My.Application.User.Language)
+ End If
+ Next
+
+ Return oSQL
+ End Function
+
+ Private Function LoadAutoSuggest() As AutoCompleteStringCollection
+ Dim oCollection As New AutoCompleteStringCollection
+ Dim oSql = $"EXEC PRIDB_SEARCH_AUTOSUGGEST '{My.Application.User.Language}',{My.Application.User.UserId}"
+ Dim oTable As DataTable = My.Database.GetDatatableIDB(oSql)
+
+ If oTable Is Nothing Then
+
+ Return New AutoCompleteStringCollection()
+ End If
+
+ For Each oRow As DataRow In oTable.Rows
+ oCollection.Add(oRow.Item("TERM"))
+ Next
+
+ Return oCollection
+ End Function
+
+ Private Function LoadDateConstraints() As List(Of RadioGroupItem)
+ Return New List(Of RadioGroupItem) From {
+ New RadioGroupItem(SearchRunner.CREATED_TODAY, "Heute"),
+ New RadioGroupItem(SearchRunner.CREATED_TOMORROW, "Gestern"),
+ New RadioGroupItem(SearchRunner.CREATED_LAST_7_DAYS, "Letzte 7 Tage"),
+ New RadioGroupItem(SearchRunner.CREATED_MONTH_CURR, "Dieser Monat"),
+ New RadioGroupItem(SearchRunner.CREATED_LAST_7_DAYS, "Letzter Monat"),
+ New RadioGroupItem(SearchRunner.CREATED_YEAR_CURRENT, "Dieses Jahr"),
+ New RadioGroupItem(SearchRunner.CREATED_YEAR_LAST, "Letztes Jahr"),
+ New RadioGroupItem("NOTHING", "Keine Einschränkung")
+ }
+ End Function
+
+ Private Function LoadPredefinedSearches() As List(Of PredefinedSearch)
+ Return New List(Of PredefinedSearch) From {
+ New PredefinedDateSearch() With {
+ .Name = "Heute",
+ .Description = "Dokumente, die heute abgelegt wurden",
+ .DateConstraint = SearchRunner.DateConstraint.Today,
+ .Image = SvgImageCollection1.Item("day")
+ },
+ New PredefinedDateSearch() With {
+ .Name = "Gestern",
+ .Description = "Dokumente, die gestern abgelegt wurden",
+ .DateConstraint = SearchRunner.DateConstraint.Yesterday,
+ .Image = SvgImageCollection1.Item("day")
+ },
+ New PredefinedDateSearch() With {
+ .Name = "Letzte Woche",
+ .Description = "Dokumente, die in den letzten 7 Tagen abgelegt wurden",
+ .DateConstraint = SearchRunner.DateConstraint.Last7Days,
+ .Image = SvgImageCollection1.Item("week")
+ },
+ New PredefinedDateSearch() With {
+ .Name = "Dieser Monat",
+ .Description = "Dokumente, die in diesem Monat abgelegt wurden",
+ .DateConstraint = SearchRunner.DateConstraint.CurrentMonth,
+ .Image = SvgImageCollection1.Item("month")
+ },
+ New PredefinedDateSearch() With {
+ .Name = "Letzter Monat",
+ .Description = "Dokumente, die im letzten Monat abgelegt wurden",
+ .DateConstraint = SearchRunner.DateConstraint.LastMonth,
+ .Image = SvgImageCollection1.Item("month")
+ }
+ }
+ End Function
+
+ Private Async Sub TextEdit1_KeyUp(sender As Object, e As KeyEventArgs) Handles TextEdit1.KeyUp
+ If e.KeyCode = Keys.Enter Then
+ Await RunSearch(TextEdit1.EditValue)
+ End If
+ End Sub
+
+ Private Async Sub SearchControl2_KeyUp(sender As Object, e As KeyEventArgs) Handles TokenEdit1.KeyUp
+ If e.KeyCode = Keys.Enter And TokenEdit1.IsPopupOpen = False Then
+ Dim oTokens = TokenEdit1.GetTokenList()
+ Dim oFirstToken = oTokens.FirstOrDefault()
+
+ If oFirstToken Is Nothing Then
+ Exit Sub
+ End If
+
+ Dim oTokenValue As TokenValue = oFirstToken.Value
+
+ Await RunSearch(oTokenValue.Value)
+ End If
+ End Sub
+
+ Private Async Sub TextEdit1_ButtonClick(sender As Object, e As DevExpress.XtraEditors.Controls.ButtonPressedEventArgs) Handles TextEdit1.ButtonClick
+ If e.Button.Tag = "SEARCH" Then
+ Await RunSearch(TextEdit1.EditValue)
+ End If
+ End Sub
+
+ Private Async Function RunSearch(pSearchTerm As String) As Threading.Tasks.Task
+ Dim oHandle = StartUpdateUI()
+
+ Try
+ Dim oDateFrom = DateEditFrom.EditValue
+ Dim oDateTo = DateEditTo.EditValue
+
+ If CheckEdit1.IsOn = False Then
+ oDateTo = Nothing
+ End If
+
+ SearchRunner.SetDateConstraint()
+ Dim oResult = Await SearchRunner.RunWithSearchTerm(pSearchTerm, oDateFrom, oDateTo)
+
+ If oResult.OK = False Then
+ SetStatusBarColor(Color.OrangeRed)
+ End If
+
+ lblResults.Caption = $"{oResult.Count} Ergebnisse"
+
+ Catch ex As Exception
+ MsgBox(ex.Message)
+
+ Finally
+ StopUpdateUI(oHandle)
+
+ End Try
+ End Function
+
+ Private Async Sub TileView1_ItemClick(sender As Object, e As TileViewItemClickEventArgs) Handles TileView1.ItemClick
+ Dim oHandle = StartUpdateUI()
+
+ Try
+ Dim oSearch = TileView1.GetRow(TileView1.FocusedRowHandle)
+ Dim oSearchTitle As String = "Suche"
+
+ If TypeOf oSearch Is PredefinedDateSearch Then
+ Dim oDateSearch As PredefinedDateSearch = oSearch
+ oSearchTitle = oDateSearch.DisplayName
+ SearchRunner.SetDateConstraint(oDateSearch.DateConstraint)
+ End If
+
+ Dim oResult = Await SearchRunner.RunWithSearchTerm("", oSearchTitle)
+
+ If oResult.Count = 0 Then
+ SetStatusBarColor(Color.OrangeRed)
+ End If
+
+ lblResults.Caption = $"{oResult.Count} Ergebnisse"
+ Catch ex As Exception
+ MsgBox(ex.Message)
+ Finally
+ StopUpdateUI(oHandle)
+ End Try
+ End Sub
+
+ Private Function StartUpdateUI() As IOverlaySplashScreenHandle
+ SetStatusBarColor(Color.FromArgb(255, 240, 240, 240))
+ Dim oHandle = SplashScreenManager.ShowOverlayForm(LayoutControl1)
+ Return oHandle
+ End Function
+
+ Private Sub StopUpdateUI(pHandle As IOverlaySplashScreenHandle)
+ SplashScreenManager.CloseOverlayForm(pHandle)
+ End Sub
+
+ Private Sub SetStatusBarColor(pColor As Color)
+ ' Change color for StatusBarBackground
+ Dim element As SkinElement = SkinManager.GetSkinElement(SkinProductId.Ribbon, UserLookAndFeel.Default, "StatusBarBackground")
+ element.Color.SolidImageCenterColor = pColor
+ element.Color.BackColor = pColor
+
+ ' Change color for StatusBarFormBackground
+ Dim element2 As SkinElement = SkinManager.GetSkinElement(SkinProductId.Ribbon, UserLookAndFeel.Default, "StatusBarFormBackground")
+ element2.Color.SolidImageCenterColor = pColor
+ element2.Color.BackColor = pColor
+
+ ' Force update of LookAndFeel
+ LookAndFeelHelper.ForceDefaultLookAndFeelChanged()
+
+ End Sub
+
+ Private Sub RadioGroup1_EditValueChanged(sender As Object, e As EventArgs) Handles RadioGroup1.EditValueChanged
+ Dim oIndex = RadioGroup1.SelectedIndex
+ Dim oItem As RadioGroupItem = RadioGroup1.Properties.Items.Item(oIndex)
+ Dim oSearchConstraintString As String = oItem.Value
+ Dim oDateConstraint = SearchRunner.ConstantToDateConstraint(oSearchConstraintString)
+
+ If oDateConstraint <> SearchRunner.DateConstraint.Undefined Then
+ SearchRunner.SetDateConstraint(oDateConstraint)
+ End If
+ End Sub
+
+ Friend Class PredefinedSearch
+ Public Property Name As String
+ Public Property Description As String
+ Public Property Image As SvgImage
+ Public Property Count As Integer = 0
+
+ Public ReadOnly Property DisplayName As String
+ Get
+ Return Name
+ End Get
+ End Property
+
+ End Class
+
+ Friend Class PredefinedSQLSearch
+ Public Property SQLCommand As String
+ End Class
+
+ Friend Class PredefinedDateSearch
+ Inherits PredefinedSearch
+
+ Public DateConstraint As SearchRunner.DateConstraint
+ End Class
+
+ Private Sub CheckEdit1_Properties_EditValueChanged(sender As Object, e As EventArgs) Handles CheckEdit1.Properties.EditValueChanged
+ DateEditTo.Enabled = CheckEdit1.IsOn
+ End Sub
+
+ Private Sub chkDateFilter_CheckedChanged(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles chkDateFilter.CheckedChanged
+ If chkDateFilter.Checked Then
+ LayoutControlGroupDate1.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Always
+ LayoutControlGroupDate2.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Always
+ Else
+ LayoutControlGroupDate1.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never
+ LayoutControlGroupDate2.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never
+ End If
+ End Sub
+
+ Private Sub SetTokens(Editor As TokenEdit, Tokens As Dictionary(Of String, Object))
+ Editor.Properties.Tokens.Clear()
+ AddTokens(Editor, Tokens)
+ End Sub
+
+ Private Sub AddTokens(Editor As TokenEdit, Tokens As Dictionary(Of String, Object))
+ For Each oToken In Tokens
+ Dim oTokenEditToken = New TokenEditToken With {
+ .Description = oToken.Key,
+ .Value = oToken.Value
+ }
+ Editor.Properties.Tokens.Add(oTokenEditToken)
+ Next
+ End Sub
+
+ 'Private Sub SearchControl2_Properties_TokenAdded(sender As Object, e As DevExpress.XtraEditors.TokenEditTokenAddedEventArgs) Handles TokenEdit1.Properties.TokenAdded
+ ' Dim oEditor As TokenEdit = sender
+ ' SetNewTokens(oEditor)
+ 'End Sub
+
+ 'Private Sub SearchControl2_Properties_TokenRemoved(sender As Object, e As TokenEditTokenRemovedEventArgs) Handles TokenEdit1.Properties.TokenRemoved
+ ' Dim oEditor As TokenEdit = sender
+ ' SetNewTokens(oEditor)
+ 'End Sub
+
+ Private Sub SetNewTokens(pEditor As TokenEdit)
+ Dim oLastToken = pEditor.GetTokenList().LastOrDefault()
+ pEditor.Properties.BeginUpdate()
+
+ If pEditor.GetTokenList().Count > 0 Then
+ SetTokens(pEditor, TokenListDefault)
+ Search.InputMode = InputMode.Default
+ Else
+ SetTokens(pEditor, New Dictionary(Of String, Object))
+ Search.InputMode = InputMode.Default
+ End If
+
+ 'If oLastToken IsNot Nothing Then
+ ' Select Case oLastToken.Value.GetType
+
+ ' Case GetType(AttributeKeyToken)
+ ' ' After the attribute key comes an operator
+ ' SetTokens(pEditor, Search.GetOperatorTokens(GetType(String)))
+ ' Search.InputMode = InputMode.Operator
+
+ ' Case GetType(AttributeOperatorToken)
+ ' ' After the attribute operator comes a value
+ ' SetTokens(pEditor, TokenListAttrValues)
+ ' Search.InputMode = InputMode.Value
+
+ ' Case GetType(AttributeValueToken)
+ ' ' After the attribute value comes another value
+ ' SetTokens(pEditor, TokenListAttrValues)
+ ' Search.InputMode = InputMode.Value
+
+ ' Case Else
+ ' SetTokens(pEditor, TokenListDefault)
+ ' Search.InputMode = InputMode.Default
+
+ ' End Select
+ 'Else
+ ' SetTokens(pEditor, TokenListDefault)
+ ' Search.InputMode = InputMode.Default
+ 'End If
+
+ pEditor.Properties.EndUpdate()
+ End Sub
+
+ Private Sub SearchControl2_CustomDrawTokenGlyph(sender As Object, e As TokenEditCustomDrawTokenGlyphEventArgs) Handles TokenEdit1.CustomDrawTokenGlyph
+ ' Set Background according to token type
+ Select Case e.Value.GetType()
+ Case GetType(AttributeValueToken)
+ e.Graphics.FillRectangle(New SolidBrush(Color.FromArgb(255, 255, 214, 49)), e.Bounds)
+ Case Else
+ End Select
+
+ ' Draw the glyph on top
+ ' This fixes: https://supportcenter.devexpress.com/ticket/details/t215578/tokenedit-glyph-is-not-visible-when-customdrawtokentext-is-used
+ e.DefaultDraw()
+ End Sub
+
+
+End Class
\ No newline at end of file
diff --git a/GUIs.ZooFlow/ZooFlow.vbproj b/GUIs.ZooFlow/ZooFlow.vbproj
index 76dfe4a7..b744f81f 100644
--- a/GUIs.ZooFlow/ZooFlow.vbproj
+++ b/GUIs.ZooFlow/ZooFlow.vbproj
@@ -399,10 +399,10 @@
Form
-
+
frmFlowSearch2.vb
-
+
Form
@@ -558,7 +558,7 @@
frmFlowSearch1.vb
-
+
frmFlowSearch2.vb
diff --git a/GUIs.ZooFlow/frmFlowForm.vb b/GUIs.ZooFlow/frmFlowForm.vb
index dd59e2c6..688d4bfe 100644
--- a/GUIs.ZooFlow/frmFlowForm.vb
+++ b/GUIs.ZooFlow/frmFlowForm.vb
@@ -516,31 +516,14 @@ Public Class frmFlowForm
End If
End Sub
- Private Sub PictureBox1_Click(sender As Object, e As EventArgs)
- frmSearchNeu.Show()
-
- 'Open_FlowSearch()
- End Sub
Sub Open_FlowSearch()
Cursor = Cursors.WaitCursor
If TheFormIsAlreadyLoaded("frmFlowSearch1") Then
Cursor = Cursors.Default
Exit Sub
End If
- 'Dim oSQLFlowSearch As String = ""
- 'For Each oRow As DataRow In My.Tables.DTIDB_COMMON_SQL.Rows
- ' If oRow.Item("TITLE") = SQLCMD_FLOW_SEARCH_LOWER_LIMIT Then
- ' oSQLFlowSearch = oRow.Item("SQL_COMMAND")
- ' End If
- 'Next
- 'If oSQLFlowSearch <> String.Empty Then
- 'oSQLFlowSearch = oSQLFlowSearch.Replace("@USER_ID", My.Application.User.UserId)
- 'oSQLFlowSearch = oSQLFlowSearch.Replace("@LANGUAGE_ID", My.Application.User.LanguageId)
- 'oSQLFlowSearch = oSQLFlowSearch.Replace("@LANGUAGE", My.Application.User.Language)
-
- 'End If
- Dim oForm As New frmFlowSearch1()
+ Dim oForm As New frmFlowSearch2()
oForm.Show()
oForm.BringToFront()
@@ -584,16 +567,7 @@ Public Class frmFlowForm
PictureEdit2.Image = My.Resources.ZOOFLOW_DEFAULT
End Sub
- Private Sub PictureBoxAbo_Click(sender As Object, e As EventArgs)
- Cursor = Cursors.WaitCursor
- If TheFormIsAlreadyLoaded("frmPreSearch") Then
- Cursor = Cursors.Default
- Exit Sub
- End If
- Dim oForm2 As New frmSearchPredefined()
- oForm2.Show()
- Cursor = Cursors.Default
- End Sub
+
Private Function TheFormIsAlreadyLoaded(ByVal pFormName As String) As Boolean
TheFormIsAlreadyLoaded = False
@@ -1152,7 +1126,7 @@ Public Class frmFlowForm
Dim oToken = RunningTaskTokenSource.Token
Try
- Dim oResult = Await Search.Run(oSearchText)
+ Dim oResult = Await Search.RunWithSearchTerm(oSearchText)
If oResult.OK = False Then
NotifyIcon.ShowBalloonTip(20_000, "Info", oResult.ErrorMessage, ToolTipIcon.Info)
End If
@@ -1274,7 +1248,7 @@ Public Class frmFlowForm
Where(Function(row) row.Item(0) = oObjectId).
CopyToDataTable()
- Search.Run(oResult, "Suche")
+ Search.RunWithDataTable(oResult, "Suche")
Catch ex As Exception
ErrorHandler.ShowErrorMessage(ex, "Laden eines Dokuments")
Finally