Geschwindigkeitsoptimierungen Main

This commit is contained in:
Developer01
2026-02-02 11:44:17 +01:00
parent bca424f50f
commit 83e31a2e00
5 changed files with 312 additions and 258 deletions

View File

@@ -150,7 +150,7 @@ Module ModuleRuntimeVariables
Public Property DTVWCONTROL_INDEX As DataTable
Public Property DTCONTROLS_WITH_SQL As DataTable
Public Property DTTBPM_PROFILE_FINAL_INDEXING As DataTable
Public Property CURRENT_CONTROL_ID As Integer
Public Property errormessage As String

View File

@@ -246,6 +246,7 @@ Partial Class frmMain
'
'Panel1
'
Me.Panel1.BackColor = System.Drawing.Color.WhiteSmoke
Me.Panel1.Controls.Add(Me.GridControlWorkflows)
Me.Panel1.Controls.Add(Me.Panel2)
Me.Panel1.Controls.Add(Me.NavBarControl1)
@@ -255,7 +256,6 @@ Partial Class frmMain
'GridControlWorkflows
'
resources.ApplyResources(Me.GridControlWorkflows, "GridControlWorkflows")
Me.GridControlWorkflows.EmbeddedNavigator.Margin = CType(resources.GetObject("GridControlWorkflows.EmbeddedNavigator.Margin"), System.Windows.Forms.Padding)
Me.GridControlWorkflows.MainView = Me.GridViewWorkflows
Me.GridControlWorkflows.MenuManager = Me.RibbonControl1
Me.GridControlWorkflows.Name = "GridControlWorkflows"
@@ -273,7 +273,6 @@ Partial Class frmMain
Me.GridViewWorkflows.Appearance.ViewCaption.Options.UseForeColor = True
Me.GridViewWorkflows.Appearance.ViewCaption.Options.UseTextOptions = True
Me.GridViewWorkflows.Appearance.ViewCaption.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Near
Me.GridViewWorkflows.DetailHeight = 442
Me.GridViewWorkflows.GridControl = Me.GridControlWorkflows
Me.GridViewWorkflows.Name = "GridViewWorkflows"
Me.GridViewWorkflows.OptionsBehavior.AllowAddRows = DevExpress.Utils.DefaultBoolean.[False]
@@ -293,13 +292,11 @@ Partial Class frmMain
'
'RibbonControl1
'
Me.RibbonControl1.EmptyAreaImageOptions.ImagePadding = New System.Windows.Forms.Padding(37, 38, 37, 38)
Me.RibbonControl1.ExpandCollapseItem.Id = 0
Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.bbtniRefresh, Me.bbtniMonitor, Me.bbiProfilverwaltung, Me.bbiKonfiguration, Me.bbtniGrundeinstellung, Me.bbtnitemInfo, Me.BarButtonItem1, Me.bsiUser, Me.bsiLicenses, Me.bsiUserLoggedIn, Me.bsiVersion, Me.bsilastsync, Me.bsiDebug, Me.bsiMessage, Me.bbtniMetadataFile, Me.BarEditItem1, Me.bbtnitDashboardInv, Me.bsiGeneralInfo, Me.bbtnitmGhostMode, Me.bsi_GhostMode, Me.BarButtonItemGhostMode, Me.SearchItem1, Me.SearchItem2, Me.BarStaticItemAppServer, Me.bbtniCW, Me.bsiInactivityCheck, Me.BarButtonItem2, Me.BarCheckItemAutofilter, Me.BarCheckItem2, Me.BarButtonItemResetLayout, Me.BarButtonItem4, Me.BarButtonItemExportExcel, Me.BarButtonItem6, Me.BarButtonItem7, Me.BarButtonItemWFSingle, Me.BarButtonItemWFGroup, Me.BarButtonItemFileLink, Me.BarButtonItemMassValidation, Me.BarCheckItemShowSearch, Me.barItemGridFontSize, Me.BarButtonItem8, Me.BbtnitmAHWF1, Me.BbtnitmAHWF2, Me.BbtnitmAHWF3, Me.BbtnitmAHWF4, Me.bbtnitmLanguage_Change, Me.BarButtonItem10, Me.BBtnItmNotfications, Me.BSIVERSION1, Me.barbtnitmsaveLogfiles, Me.bsitmCount})
resources.ApplyResources(Me.RibbonControl1, "RibbonControl1")
Me.RibbonControl1.MaxItemId = 57
Me.RibbonControl1.Name = "RibbonControl1"
Me.RibbonControl1.OptionsMenuMinWidth = 403
Me.RibbonControl1.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPageStart, Me.RibbonPageTabelle, Me.RibbonPageAktionen})
Me.RibbonControl1.RepositoryItems.AddRange(New DevExpress.XtraEditors.Repository.RepositoryItem() {Me.RepositoryItemProgressBar1, Me.RepositoryItemTrackBar1, Me.cmbGridFontSize})
Me.RibbonControl1.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonControlStyle.Office2013

View File

@@ -125,7 +125,7 @@
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADw
CAAAAk1TRnQBSQFMAgEBAgEAAZABCwGQAQsBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
CAAAAk1TRnQBSQFMAgEBAgEAAaABCwGgAQsBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
AwABQAMAARADAAEBAQABCAYAAQQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
@@ -176,12 +176,9 @@
<data name="GridControlWorkflows.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="GridControlWorkflows.EmbeddedNavigator.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="GridControlWorkflows.Location" type="System.Drawing.Point, System.Drawing">
<value>285, 30</value>
<value>233, 24</value>
</data>
<data name="GridViewWorkflows.Appearance.FooterPanel.Font" type="System.Drawing.Font, System.Drawing">
<value>Microsoft Sans Serif, 8.25pt</value>
@@ -189,9 +186,6 @@
<data name="GridViewWorkflows.Appearance.ViewCaption.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 12pt</value>
</data>
<data name="GridControlWorkflows.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="bbtniRefresh.Caption" xml:space="preserve">
<value>Aktualisieren</value>
</data>
@@ -1502,39 +1496,9 @@
<data name="RibbonControl1.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="RibbonControl1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="RibbonPageGroup1.Text" xml:space="preserve">
<value>Allgemein</value>
</data>
<data name="RibbonPageGroup2.Text" xml:space="preserve">
<value>Auswertungen</value>
</data>
<data name="RibbonPageGroup3.Text" xml:space="preserve">
<value>Verwaltung</value>
</data>
<data name="RibbonPageGroupBasicConf.Text" xml:space="preserve">
<value>Grundeinstellungen</value>
</data>
<data name="RibbonPageGroup7.Text" xml:space="preserve">
<value>Workflow</value>
</data>
<data name="RibbonPageGroup4.Text" xml:space="preserve">
<value>Funktionen/App Start</value>
</data>
<data name="RibbonPageGroupAHW.Text" xml:space="preserve">
<value>Ad Hoc Workflows</value>
</data>
<data name="RibbonPageStart.Text" xml:space="preserve">
<value>Start</value>
</data>
<data name="RibbonPageGroup6.Text" xml:space="preserve">
<value>Funktionen</value>
</data>
<data name="RibbonPageGroup5.Text" xml:space="preserve">
<value>Workflow Tabelle</value>
</data>
<data name="RibbonPageTabelle.Text" xml:space="preserve">
<value>Tabelle</value>
</data>
@@ -1542,16 +1506,13 @@
<value>Aktionen</value>
</data>
<data name="RibbonControl1.Size" type="System.Drawing.Size, System.Drawing">
<value>1440, 194</value>
<value>1178, 158</value>
</data>
<data name="RibbonStatusBar1.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 841</value>
</data>
<data name="RibbonStatusBar1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
<value>0, 666</value>
</data>
<data name="RibbonStatusBar1.Size" type="System.Drawing.Size, System.Drawing">
<value>1440, 28</value>
<value>1178, 22</value>
</data>
<data name="&gt;&gt;RibbonStatusBar1.Name" xml:space="preserve">
<value>RibbonStatusBar1</value>
@@ -1578,7 +1539,7 @@
<value>4</value>
</data>
<data name="GridControlWorkflows.Size" type="System.Drawing.Size, System.Drawing">
<value>1155, 617</value>
<value>945, 484</value>
</data>
<data name="GridControlWorkflows.TabIndex" type="System.Int32, mscorlib">
<value>10</value>
@@ -1595,27 +1556,6 @@
<data name="&gt;&gt;GridControlWorkflows.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="lblCaptionMainGrid.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="lblCaptionMainGrid.Font" type="System.Drawing.Font, System.Drawing">
<value>Tahoma, 9.75pt, style=Bold</value>
</data>
<data name="lblCaptionMainGrid.Location" type="System.Drawing.Point, System.Drawing">
<value>4, 4</value>
</data>
<data name="lblCaptionMainGrid.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 0, 4, 0</value>
</data>
<data name="lblCaptionMainGrid.Size" type="System.Drawing.Size, System.Drawing">
<value>169, 21</value>
</data>
<data name="lblCaptionMainGrid.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
</data>
<data name="lblCaptionMainGrid.Text" xml:space="preserve">
<value>Choose a profile ...</value>
</data>
<data name="&gt;&gt;lblCaptionMainGrid.Name" xml:space="preserve">
<value>lblCaptionMainGrid</value>
</data>
@@ -1632,13 +1572,10 @@
<value>Top</value>
</data>
<data name="Panel2.Location" type="System.Drawing.Point, System.Drawing">
<value>285, 0</value>
</data>
<data name="Panel2.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
<value>233, 0</value>
</data>
<data name="Panel2.Size" type="System.Drawing.Size, System.Drawing">
<value>1155, 30</value>
<value>945, 24</value>
</data>
<data name="Panel2.TabIndex" type="System.Int32, mscorlib">
<value>9</value>
@@ -1710,14 +1647,8 @@
<metadata name="cmsNavPane.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>863, 17</value>
</metadata>
<data name="tsmiValidationProfil.Size" type="System.Drawing.Size, System.Drawing">
<value>261, 26</value>
</data>
<data name="tsmiValidationProfil.Text" xml:space="preserve">
<value>Starte Validierung für Profil</value>
</data>
<data name="cmsNavPane.Size" type="System.Drawing.Size, System.Drawing">
<value>262, 30</value>
<value>220, 30</value>
</data>
<data name="&gt;&gt;cmsNavPane.Name" xml:space="preserve">
<value>cmsNavPane</value>
@@ -1847,14 +1778,11 @@
<data name="NavBarControl1.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="NavBarControl1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="resource.ExpandedWidth" type="System.Int32, mscorlib">
<value>285</value>
<value>233</value>
</data>
<data name="NavBarControl1.Size" type="System.Drawing.Size, System.Drawing">
<value>285, 647</value>
<value>233, 508</value>
</data>
<data name="NavBarControl1.TabIndex" type="System.Int32, mscorlib">
<value>5</value>
@@ -1881,13 +1809,10 @@
<value>Tahoma, 9pt</value>
</data>
<data name="Panel1.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 194</value>
</data>
<data name="Panel1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
<value>0, 158</value>
</data>
<data name="Panel1.Size" type="System.Drawing.Size, System.Drawing">
<value>1440, 647</value>
<value>1178, 508</value>
</data>
<data name="Panel1.TabIndex" type="System.Int32, mscorlib">
<value>4</value>
@@ -1904,38 +1829,80 @@
<data name="&gt;&gt;Panel1.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="RibbonPageGroup1.Text" xml:space="preserve">
<value>Allgemein</value>
</data>
<data name="RibbonPageGroup2.Text" xml:space="preserve">
<value>Auswertungen</value>
</data>
<data name="RibbonPageGroup3.Text" xml:space="preserve">
<value>Verwaltung</value>
</data>
<data name="RibbonPageGroupBasicConf.Text" xml:space="preserve">
<value>Grundeinstellungen</value>
</data>
<data name="RibbonPageGroup7.Text" xml:space="preserve">
<value>Workflow</value>
</data>
<data name="RibbonPageGroup4.Text" xml:space="preserve">
<value>Funktionen/App Start</value>
</data>
<data name="RibbonPageGroupAHW.Text" xml:space="preserve">
<value>Ad Hoc Workflows</value>
</data>
<data name="RibbonPageGroup6.Text" xml:space="preserve">
<value>Funktionen</value>
</data>
<data name="RibbonPageGroup5.Text" xml:space="preserve">
<value>Workflow Tabelle</value>
</data>
<data name="lblCaptionMainGrid.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="lblCaptionMainGrid.Font" type="System.Drawing.Font, System.Drawing">
<value>Tahoma, 9.75pt, style=Bold</value>
</data>
<data name="lblCaptionMainGrid.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 3</value>
</data>
<data name="lblCaptionMainGrid.Size" type="System.Drawing.Size, System.Drawing">
<value>127, 16</value>
</data>
<data name="lblCaptionMainGrid.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
</data>
<data name="lblCaptionMainGrid.Text" xml:space="preserve">
<value>Choose a profile ...</value>
</data>
<data name="&gt;&gt;lblCaptionMainGrid.Name" xml:space="preserve">
<value>lblCaptionMainGrid</value>
</data>
<data name="&gt;&gt;lblCaptionMainGrid.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;lblCaptionMainGrid.Parent" xml:space="preserve">
<value>Panel2</value>
</data>
<data name="&gt;&gt;lblCaptionMainGrid.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="tsmiValidationProfil.Size" type="System.Drawing.Size, System.Drawing">
<value>219, 26</value>
</data>
<data name="tsmiValidationProfil.Text" xml:space="preserve">
<value>Starte Validierung für Profil</value>
</data>
<metadata name="bindsourcegrid.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 56</value>
<value>986, 17</value>
</metadata>
<metadata name="NotifyIcon1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>490, 17</value>
</metadata>
<metadata name="ContextMenuNotifyIcon.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>250, 56</value>
<value>1220, 17</value>
</metadata>
<data name="PopupErinnerungInaktivierenToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>348, 30</value>
</data>
<data name="PopupErinnerungInaktivierenToolStripMenuItem.Text" xml:space="preserve">
<value>Popup Erinnerung deaktivieren</value>
</data>
<data name="ToolStripSeparator1.Size" type="System.Drawing.Size, System.Drawing">
<value>345, 6</value>
</data>
<data name="AnzeigenToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>348, 30</value>
</data>
<data name="AnzeigenToolStripMenuItem.Text" xml:space="preserve">
<value>In den Vordergrund</value>
</data>
<data name="OutOfRangePMFixierenToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>348, 30</value>
</data>
<data name="OutOfRangePMFixierenToolStripMenuItem.Text" xml:space="preserve">
<value>Out of Range - Fenster wiederherstellen</value>
</data>
<data name="ContextMenuNotifyIcon.Size" type="System.Drawing.Size, System.Drawing">
<value>349, 100</value>
<value>291, 100</value>
</data>
<data name="&gt;&gt;ContextMenuNotifyIcon.Name" xml:space="preserve">
<value>ContextMenuNotifyIcon</value>
@@ -2029,6 +1996,27 @@
<data name="NotifyIcon1.Visible" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="PopupErinnerungInaktivierenToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>290, 30</value>
</data>
<data name="PopupErinnerungInaktivierenToolStripMenuItem.Text" xml:space="preserve">
<value>Popup Erinnerung deaktivieren</value>
</data>
<data name="ToolStripSeparator1.Size" type="System.Drawing.Size, System.Drawing">
<value>287, 6</value>
</data>
<data name="AnzeigenToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>290, 30</value>
</data>
<data name="AnzeigenToolStripMenuItem.Text" xml:space="preserve">
<value>In den Vordergrund</value>
</data>
<data name="OutOfRangePMFixierenToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>290, 30</value>
</data>
<data name="OutOfRangePMFixierenToolStripMenuItem.Text" xml:space="preserve">
<value>Out of Range - Fenster wiederherstellen</value>
</data>
<metadata name="TimerRefresh.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>605, 17</value>
</metadata>
@@ -2036,10 +2024,10 @@
<value>728, 17</value>
</metadata>
<metadata name="Timer5Mins.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>525, 95</value>
<value>643, 54</value>
</metadata>
<metadata name="ToolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>151, 56</value>
<value>1120, 17</value>
</metadata>
<data name="barDockControlTop.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Top</value>
@@ -2048,19 +2036,16 @@
<value>0, 0</value>
</data>
<metadata name="DocumentViewerBarManager1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 95</value>
<value>138, 54</value>
</metadata>
<data name="barDockControlBottom.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Bottom</value>
</data>
<data name="barDockControlBottom.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 869</value>
</data>
<data name="barDockControlBottom.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
<value>0, 688</value>
</data>
<data name="barDockControlBottom.Size" type="System.Drawing.Size, System.Drawing">
<value>1440, 0</value>
<value>1178, 0</value>
</data>
<data name="&gt;&gt;barDockControlBottom.Name" xml:space="preserve">
<value>barDockControlBottom</value>
@@ -2080,11 +2065,8 @@
<data name="barDockControlLeft.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="barDockControlLeft.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="barDockControlLeft.Size" type="System.Drawing.Size, System.Drawing">
<value>0, 869</value>
<value>0, 688</value>
</data>
<data name="&gt;&gt;barDockControlLeft.Name" xml:space="preserve">
<value>barDockControlLeft</value>
@@ -2102,13 +2084,10 @@
<value>Right</value>
</data>
<data name="barDockControlRight.Location" type="System.Drawing.Point, System.Drawing">
<value>1440, 0</value>
</data>
<data name="barDockControlRight.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
<value>1178, 0</value>
</data>
<data name="barDockControlRight.Size" type="System.Drawing.Size, System.Drawing">
<value>0, 869</value>
<value>0, 688</value>
</data>
<data name="&gt;&gt;barDockControlRight.Name" xml:space="preserve">
<value>barDockControlRight</value>
@@ -2129,10 +2108,10 @@
<value>147</value>
</metadata>
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
<value>11, 24</value>
<value>9, 19</value>
</data>
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
<value>1440, 869</value>
<value>1178, 688</value>
</data>
<data name="$this.Font" type="System.Drawing.Font, System.Drawing">
<value>Tahoma, 12pt</value>
@@ -2304,7 +2283,7 @@
</value>
</data>
<data name="$this.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>5, 6, 5, 6</value>
<value>4, 5, 4, 5</value>
</data>
<data name="$this.StartPosition" type="System.Windows.Forms.FormStartPosition, System.Windows.Forms">
<value>Manual</value>
@@ -3465,6 +3444,9 @@
<data name="miView.Caption" xml:space="preserve">
<value>&amp;Ansicht</value>
</data>
<data name="miBackground.Caption" xml:space="preserve">
<value>&amp;Hintergrund</value>
</data>
<data name="miPageLayout.Caption" xml:space="preserve">
<value>&amp;Seiten Layout</value>
</data>
@@ -3477,9 +3459,6 @@
<data name="miToolbars.Caption" xml:space="preserve">
<value>Bars</value>
</data>
<data name="miBackground.Caption" xml:space="preserve">
<value>&amp;Hintergrund</value>
</data>
<data name="PrintPreviewBarCheckItem1.Caption" xml:space="preserve">
<value>PDF Dokument</value>
</data>
@@ -3594,11 +3573,8 @@
<data name="PrintPreviewBarCheckItem19.Hint" xml:space="preserve">
<value>Graphisches Dokument</value>
</data>
<data name="barDockControlTop.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="barDockControlTop.Size" type="System.Drawing.Size, System.Drawing">
<value>1440, 0</value>
<value>1178, 0</value>
</data>
<data name="&gt;&gt;barDockControlTop.Name" xml:space="preserve">
<value>barDockControlTop</value>
@@ -3616,25 +3592,25 @@
<value>RibbonPage2</value>
</data>
<metadata name="ApplicationMenu1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>432, 56</value>
<value>1402, 17</value>
</metadata>
<metadata name="bwSync.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>584, 56</value>
<value>1554, 17</value>
</metadata>
<metadata name="SaveFileDialog1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>677, 56</value>
<value>1649, 17</value>
</metadata>
<data name="SaveFileDialog1.Filter" xml:space="preserve">
<value>PDF Dateien (*.pdf*)|*.pdf</value>
</data>
<metadata name="bwBasicData.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>814, 56</value>
<value>17, 54</value>
</metadata>
<metadata name="XtraSaveFileDialog1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>235, 95</value>
<value>353, 54</value>
</metadata>
<metadata name="TimerInactivity.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>394, 95</value>
<value>510, 54</value>
</metadata>
<data name="BarButtonItem5.Caption" xml:space="preserve">
<value>BarButtonItem5</value>

View File

@@ -2,6 +2,7 @@
Imports System.Globalization
Imports System.IO
Imports System.Threading
Imports System.Threading.Tasks
Imports DevExpress.LookAndFeel
Imports DevExpress.Utils
Imports DevExpress.XtraBars.Ribbon
@@ -482,6 +483,8 @@ Public Class frmMain
Else
bbtnitmLanguage_Change.Visibility = DevExpress.XtraBars.BarItemVisibility.Never
End If
LoadCURRENT_DT_PROFILES()
LoadVWPM_CONTROL_INDEX()
LOGGER.Debug("MainForm initialized!")
@@ -676,28 +679,38 @@ Public Class frmMain
If GridViewWorkflows.Columns.Count = 0 Then
Exit Sub
End If
GridViewWorkflows.Columns.Item("PROFILE_ID").Visible = False
GridViewWorkflows.Columns.Item("GUID").Visible = False
Try
GridViewWorkflows.Columns.Item(FullFilepatColName).Visible = False
Catch ex As Exception
End Try
Try
'GridViewWorkflows.Columns.Item("DocID").Visible = False
GridViewWorkflows.Columns.Item("TL_STATE").Visible = False
Catch ex As Exception
' Sichere Prüfung für jede Spalte
If GridViewWorkflows.Columns.ColumnByFieldName("PROFILE_ID") IsNot Nothing Then
GridViewWorkflows.Columns.Item("PROFILE_ID").Visible = False
End If
If GridViewWorkflows.Columns.ColumnByFieldName("GUID") IsNot Nothing Then
GridViewWorkflows.Columns.Item("GUID").Visible = False
End If
End Try
Try
If Not IsNothing(GridViewWorkflows.Columns("CONV_YN")) Then
If GridViewWorkflows.Columns.ColumnByFieldName(FullFilepatColName) IsNot Nothing Then
GridViewWorkflows.Columns.Item(FullFilepatColName).Visible = False
End If
Catch ex As Exception
End Try
Try
If GridViewWorkflows.Columns.ColumnByFieldName("TL_STATE") IsNot Nothing Then
GridViewWorkflows.Columns.Item("TL_STATE").Visible = False
End If
Catch ex As Exception
End Try
Try
If GridViewWorkflows.Columns.ColumnByFieldName("CONV_YN") IsNot Nothing Then
GridViewWorkflows.Columns.Item("CONV_YN").Visible = False
End If
Catch ex As Exception
End Try
Catch ex As Exception
LOGGER.Warn($"Error in COLUMNS_INVISIBLE: {ex.Message}")
End Try
End Sub
Private Sub ResetLayout()
@@ -875,7 +888,6 @@ Public Class frmMain
Private Async Sub navBar_LinkClicked(ByVal sender As Object, ByVal e As NavBarLinkEventArgs)
If Not Application.OpenForms().OfType(Of frmValidator).Any Then
Else
'FormHelper.ShowInfoMessage(omsgOpenWorkflow, omsgTitleWarning)
FormHelper.ShowInfoMessage(S.Bitte_schließen_Sie_den_offenen_Workflow_, omsgTitleWarning)
Exit Sub
End If
@@ -896,12 +908,13 @@ Public Class frmMain
CURRENT_CLICKED_PROFILE_TITLE = e.Link.Item.Caption
End If
GRID_LOAD_TYPE = "PROFILE#" & _tag.ToString
TimerRefresh.Stop()
GridViewWorkflows.ShowLoadingPanel()
Await Task.Delay(10)
DetailLinkActive = True
Await Load_single_Profile(True)
' Caption wird in Load_single_Profile aktualisiert
GridViewWorkflows.HideLoadingPanel()
TimerRefresh.Start()
Else
@@ -913,6 +926,7 @@ Public Class frmMain
OverviewOrDEtail = "OVERVIEW"
GRID_LOAD_TYPE = "OVERVIEW"
GridViewWorkflows.ShowLoadingPanel()
Await Task.Delay(10)
TimerRefresh.Stop()
Dim oForce As Boolean = False
If DetailLinkActive = True Then
@@ -921,6 +935,7 @@ Public Class frmMain
OVERVIEW_ADDED_WHEN = ""
End If
Await Load_Grid_Overview(False, True, True)
' Caption wird in Load_Grid_Overview aktualisiert
GridViewWorkflows.HideLoadingPanel()
TimerRefresh.Start()
RefreshHelper.LoadViewInfo()
@@ -1002,26 +1017,30 @@ Public Class frmMain
Dim oChanged = GET_LAST_CHANGED(DT_CURR_WF_ITEMS)
Dim oCOUNT = DT_CURR_WF_ITEMS.Rows.Count
If ForceReload = False Then
If oADDED = OVERVIEW_ADDED_WHEN And oChanged = OVERVIEW_CHANGED_WHEN And OVERVIEW_COUNT = oCOUNT Then
Exit Function
End If
OVERVIEW_ADDED_WHEN = oADDED
OVERVIEW_CHANGED_WHEN = oChanged
OVERVIEW_COUNT = oCOUNT
End If
' Workflowitems-Status setzen
NO_WORKFLOWITEMS = (oCOUNT = 0)
If DT_CURR_WF_ITEMS.Rows.Count = 0 Then
NO_WORKFLOWITEMS = True
lblCaptionMainGrid.Text = String.Format(S.Aktuell_keine_Workflowdaten_vorhanden___0_, CURRENT_CLICKED_PROFILE_TITLE)
' Caption IMMER aktualisieren (vor Hash-Prüfung!)
UpdateGridCaption()
' Datenquelle bei leeren Items zurücksetzen
If NO_WORKFLOWITEMS Then
GridControlWorkflows.Visible = False
bindsourcegrid.DataSource = Nothing
GridControlWorkflows.DataSource = Nothing
Exit Function
End If
NO_WORKFLOWITEMS = False
lblCaptionMainGrid.Text = CURRENT_CLICKED_PROFILE_TITLE
' Hash-Prüfung für Performance-Optimierung
If ForceReload = False Then
If oADDED = OVERVIEW_ADDED_WHEN And oChanged = OVERVIEW_CHANGED_WHEN And OVERVIEW_COUNT = oCOUNT Then
LOGGER.Debug("No data changes - skipping grid reload")
Exit Function
End If
OVERVIEW_ADDED_WHEN = oADDED
OVERVIEW_CHANGED_WHEN = oChanged
OVERVIEW_COUNT = oCOUNT
End If
Create_Basic_View()
RestoreLayout()
@@ -1061,33 +1080,48 @@ Public Class frmMain
LOGGER.Warn("Could not clear GridViewWorkflows.Columns")
End Try
If TL_ICON = True AndAlso DT_CURR_WF_ITEMS IsNot Nothing AndAlso DT_CURR_WF_ITEMS.Columns.Contains("ICON") = False Then
' Prüfen, ob TL_STATE-Spalte vorhanden ist
Dim hasTLStateColumn As Boolean = False
If DT_CURR_WF_ITEMS IsNot Nothing Then
hasTLStateColumn = DT_CURR_WF_ITEMS.Columns.Contains("TL_STATE")
End If
' ICON-Spalte nur hinzufügen, wenn TL_ICON aktiv UND TL_STATE verfügbar ist
If TL_ICON = True AndAlso hasTLStateColumn AndAlso DT_CURR_WF_ITEMS IsNot Nothing AndAlso DT_CURR_WF_ITEMS.Columns.Contains("ICON") = False Then
Dim columnStateIcon As New DataColumn() With {
.DataType = GetType(Image),
.ColumnName = "ICON",
.Caption = ""
}
.DataType = GetType(Image),
.ColumnName = "ICON",
.Caption = ""
}
DT_CURR_WF_ITEMS.Columns.Add(columnStateIcon)
End If
RedDocuments = 0
YellowDocuments = 0
GreenDocuments = 0
If TL_ICON = True AndAlso DT_CURR_WF_ITEMS IsNot Nothing Then
For Each row As DataRow In DT_CURR_WF_ITEMS.Rows
Dim State As Integer = row.Item("TL_STATE")
Select Case State
Case 1
RedDocuments += 1
row.Item("ICON") = My.Resources.bullet_red
Case 2
YellowDocuments += 1
row.Item("ICON") = My.Resources.bullet_orange
Case 3
GreenDocuments += 1
row.Item("ICON") = My.Resources.bullet_green
End Select
Next
' Icons nur setzen, wenn TL_STATE-Spalte vorhanden ist
If TL_ICON = True AndAlso hasTLStateColumn AndAlso DT_CURR_WF_ITEMS IsNot Nothing Then
Try
For Each row As DataRow In DT_CURR_WF_ITEMS.Rows
Dim State As Integer = CInt(row.Item("TL_STATE"))
Select Case State
Case 1
RedDocuments += 1
row.Item("ICON") = My.Resources.bullet_red
Case 2
YellowDocuments += 1
row.Item("ICON") = My.Resources.bullet_orange
Case 3
GreenDocuments += 1
row.Item("ICON") = My.Resources.bullet_green
End Select
Next
Catch ex As Exception
LOGGER.Warn($"Could not set ICON values: {ex.Message}")
End Try
ElseIf TL_ICON = True AndAlso Not hasTLStateColumn Then
LOGGER.Warn("TL_ICON is enabled but TL_STATE column is missing in dataset")
End If
bindsourcegrid.DataSource = DT_CURR_WF_ITEMS
@@ -1097,13 +1131,14 @@ Public Class frmMain
COLUMNS_INVISIBLE()
Try
If TL_ICON = True AndAlso GridViewWorkflows.Columns.Count > 0 Then
If TL_ICON = True AndAlso GridViewWorkflows.Columns.Count > 0 AndAlso GridViewWorkflows.Columns.ColumnByFieldName("ICON") IsNot Nothing Then
GridViewWorkflows.Columns.Item("ICON").MaxWidth = 24
GridViewWorkflows.Columns.Item("ICON").MinWidth = 24
GridViewWorkflows.Columns.Item("ICON").AppearanceCell.BackColor = Color.White
GridViewWorkflows.Columns.Item("ICON").Fixed = FixedStyle.Left
End If
Catch ex As Exception
LOGGER.Warn($"Could not configure ICON column: {ex.Message}")
End Try
Try
@@ -1116,8 +1151,12 @@ Public Class frmMain
End Try
Try
GridViewWorkflows.Columns.Item("GROUP_TEXT").Visible = False
GridViewWorkflows.Columns.Item("GROUP_COLOR").Visible = False
If GridViewWorkflows.Columns.ColumnByFieldName("GROUP_TEXT") IsNot Nothing Then
GridViewWorkflows.Columns.Item("GROUP_TEXT").Visible = False
End If
If GridViewWorkflows.Columns.ColumnByFieldName("GROUP_COLOR") IsNot Nothing Then
GridViewWorkflows.Columns.Item("GROUP_COLOR").Visible = False
End If
Catch ex As Exception
If OverviewOrDEtail = "OVERVIEW" Then
LOGGER.Warn("ATTENTION: GROUP COLUMNS NOT PART OF GRID")
@@ -1315,8 +1354,9 @@ Public Class frmMain
useWaitCursorApplied = True
End If
bsiMessage.Caption = "Daten werden geladen..."
bsiMessage.Caption = "Data loading..."
GridViewWorkflows.ShowLoadingPanel()
Await Task.Delay(10)
showLoadingPanel = True
TimerRefresh.Stop()
@@ -1905,12 +1945,21 @@ Public Class frmMain
useWaitCursorApplied = True
End If
bsiMessage.Caption = "Daten werden geladen..."
bsiMessage.Caption = "Overviewdata loading..."
loadingMessageApplied = True
GridViewWorkflows.ShowLoadingPanel()
Await Task.Delay(10)
showLoadingPanel = True
If GridControlWorkflows.Visible Then
GridControlWorkflows.BeginUpdate()
gridUpdateStarted = True
GridViewWorkflows.BeginUpdate()
viewUpdateStarted = True
End If
If BASEDATA_DT_VW_PROFILE_USER.Rows.Count = 0 Then
LOGGER.Info("Attention: No profiles for user: '" & USER_USERNAME & "' configured!", False)
NO_WORKFLOWITEMS = True
@@ -1921,12 +1970,7 @@ Public Class frmMain
Exit Function
End If
If GridControlWorkflows.Visible Then
GridControlWorkflows.BeginUpdate()
gridUpdateStarted = True
GridViewWorkflows.BeginUpdate()
viewUpdateStarted = True
End If
Dim oStopWatch1 As New RefreshHelper.SW("LGO#Load_Profiles_for_User")
Load_Profiles_for_User()
@@ -1982,20 +2026,14 @@ Public Class frmMain
Dim oADDED = GET_LAST_ADDED(DT_CURR_WF_ITEMS)
Dim oChanged = GET_LAST_CHANGED(DT_CURR_WF_ITEMS)
Dim oCOUNT = DT_CURR_WF_ITEMS.Rows.Count
If pForceReload = False Then
If oADDED = OVERVIEW_ADDED_WHEN And oChanged = OVERVIEW_CHANGED_WHEN And oCOUNT = OVERVIEW_COUNT Then
LOGGER.Debug("No changes on OverviewHash - so exit Load_Grid_overview")
Exit Function
Else
OVERVIEW_ADDED_WHEN = oADDED
OVERVIEW_CHANGED_WHEN = oChanged
OVERVIEW_COUNT = oCOUNT
End If
End If
NO_WORKFLOWITEMS = (DT_CURR_WF_ITEMS.Rows.Count = 0)
' Workflowitems-Status setzen
NO_WORKFLOWITEMS = (oCOUNT = 0)
' Caption IMMER aktualisieren
UpdateGridCaption()
If NO_WORKFLOWITEMS Then
lblCaptionMainGrid.Text = String.Format(S.Aktuell_keine_Workflowdaten_vorhanden___0_, "")
GridControlWorkflows.Visible = False
bindsourcegrid.DataSource = Nothing
GridControlWorkflows.DataSource = Nothing
@@ -2357,15 +2395,15 @@ Public Class frmMain
End If
End Sub
Sub LoadCURRENT_DT_PROFILES()
Dim oSQL = $"select * from TBPM_PROFILE where ACTIVE = 1"
Dim oSQL = $"select * from TBPM_PROFILE WITH (NOLOCK)where ACTIVE = 1"
CURRENT_DT_PROFILES = DatabaseFallback.GetDatatable("TBPM_PROFILE", New GetDatatableOptions(oSQL, DatabaseType.ECM))
oSQL = $"select * from TBDD_GUI_LANGUAGE_PHRASE where LANGUAGE = '{USER_LANGUAGE}' AND MODULE = 'PM' AND TITLE LIKE 'PROFILE_%'"
oSQL = $"select * from TBDD_GUI_LANGUAGE_PHRASE WITH (NOLOCK) where LANGUAGE = '{USER_LANGUAGE}' AND MODULE = 'PM' AND TITLE LIKE 'PROFILE_%'"
CURRENT_DT_PROFILE_LANGUAGE = DatabaseFallback.GetDatatable("TBPMPROFILE_LANGUAGE_TERMS", New GetDatatableOptions(oSQL, DatabaseType.ECM) With {
.FilterExpression = $"LANGUAGE = '{USER_LANGUAGE}'"
})
End Sub
Sub LoadVWPM_CONTROL_INDEX()
Dim oSQL = $"SELECT * FROM VWPM_CONTROL_INDEX ORDER BY PROFIL_ID,Y_LOC, X_LOC"
Dim oSQL = $"SELECT * FROM VWPM_CONTROL_INDEX WITH (NOLOCK) ORDER BY PROFIL_ID,Y_LOC, X_LOC"
'DTVWCONTROLS_INDEX = DataASorDB.GetDatatable("DD_ECM", oSQL, "VWPM_CONTROL_INDEX", "")
DTVWCONTROLS_INDEX = DatabaseFallback.GetDatatable("VWPM_CONTROL_INDEX", New GetDatatableOptions(oSQL, DatabaseType.ECM))
End Sub
@@ -2389,7 +2427,7 @@ Public Class frmMain
LOGGER.Debug($"VWPM_PROFILE_ACTIVE-SELECT used from DD-SQL-Config..")
Else
oSQL = $"SELECT [dbo].[FNDD_LANGUAGE_PHRASE] ('PROFILE_TITLE' + CONVERT(VARCHAR(4),T.GUID),'{USER_LANGUAGE}','PM') as GROUP_TEXT_LANG, T.*
FROM VWPM_PROFILE_ACTIVE T WHERE T.GUID IN (SELECT PROFILE_ID FROM [dbo].[FNPM_GET_ACTIVE_PROFILES_USER] ({USER_ID}))"
FROM VWPM_PROFILE_ACTIVE T WITH (NOLOCk) WHERE T.GUID IN (SELECT PROFILE_ID FROM [dbo].[FNPM_GET_ACTIVE_PROFILES_USER] ({USER_ID}))"
End If
@@ -2411,7 +2449,7 @@ FROM VWPM_PROFILE_ACTIVE T WHERE T.GUID IN (SELECT PROFILE_ID FROM [dbo].[FNPM_G
CURRENT_DT_PROFILE = CURRENT_DT_PROFILES.Clone()
End If
If pMode = "bwBasicData" Then bwBasicData.ReportProgress(40)
oSQL = "select * from TBPM_PROFILE_SEARCH where TYPE = 'DOC' AND ACTIVE = 1 ORDER BY PROFILE_ID,TAB_INDEX"
oSQL = "select * from TBPM_PROFILE_SEARCH WITH (NOLOCK) where TYPE = 'DOC' AND ACTIVE = 1 ORDER BY PROFILE_ID,TAB_INDEX"
If SQL_VALIDATOR_SEARCHES <> String.Empty Then
SQL_VALIDATOR_SEARCHES = SQL_VALIDATOR_SEARCHES.Replace("@USR_LANG_CODE", User.Language)
oSQL = SQL_VALIDATOR_SEARCHES
@@ -2423,13 +2461,13 @@ FROM VWPM_PROFILE_ACTIVE T WHERE T.GUID IN (SELECT PROFILE_ID FROM [dbo].[FNPM_G
DT_FILTERED_PROFILE_SEARCHES_DOC = BASEDATA_DT_PROFILES_SEARCHES_DOC.Clone()
End If
If pMode = "bwBasicData" Then bwBasicData.ReportProgress(50)
oSQL = "select * from TBPM_PROFILE_SEARCH where TYPE = 'SQL' AND ACTIVE = 1 ORDER BY PROFILE_ID,TAB_INDEX"
oSQL = "select * from TBPM_PROFILE_SEARCH WITH (NOLOCK) where TYPE = 'SQL' AND ACTIVE = 1 ORDER BY PROFILE_ID,TAB_INDEX"
BASEDATA_DT_PROFILES_SEARCHES_SQL = DatabaseFallback.GetDatatable("TBPM_PROFILE_SEARCH", New GetDatatableOptions(oSQL, DatabaseType.ECM) With {
.FilterExpression = "TYPE = 'SQL'",
.SortByColumn = "PROFILE_ID,TAB_INDEX"
})
oSQL = String.Format("SELECT [dbo].[FNPM_LANGUAGE_CONTROL_TEXT] (NAME,'{0}',CTRL_TYPE,CTRL_TEXT) CTRL_CAPTION_LANG, * FROM TBPM_PROFILE_CONTROLS", {USER_LANGUAGE})
oSQL = String.Format("SELECT [dbo].[FNPM_LANGUAGE_CONTROL_TEXT] (NAME,'{0}',CTRL_TYPE,CTRL_TEXT) CTRL_CAPTION_LANG, '{0}' as LANGUAGE, * FROM TBPM_PROFILE_CONTROLS WITH (NOLOCK)", {USER_LANGUAGE})
BASEDATA_TBPM_PROFILE_CONTROLS = DatabaseFallback.GetDatatable("TBPM_PROFILE_CONTROLS_LANGUAGE", New GetDatatableOptions(oSQL, DatabaseType.ECM) With {
.FilterExpression = String.Format("LANGUAGE = '{0}'", {USER_LANGUAGE})
})
@@ -2442,11 +2480,13 @@ FROM VWPM_PROFILE_ACTIVE T WHERE T.GUID IN (SELECT PROFILE_ID FROM [dbo].[FNPM_G
If pMode = "Load" Then
DTVWCONTROL_INDEX = DTVWCONTROLS_INDEX.Clone()
End If
oSQL = $"SELECT * FROM TBPM_PROFILE_CONTROLS WHERE LEN(ISNULL(SQL_UEBERPRUEFUNG,'')) > 0 AND CTRL_TYPE <> 'BUTTON'"
oSQL = $"SELECT * FROM TBPM_PROFILE_CONTROLS WITH (NOLOCK) WHERE LEN(ISNULL(SQL_UEBERPRUEFUNG,'')) > 0 AND CTRL_TYPE <> 'BUTTON'"
DTCONTROLS_WITH_SQL = DatabaseFallback.GetDatatable("DTCONTROLS_WITH_SQL", New GetDatatableOptions(oSQL, DatabaseType.ECM))
If pMode = "bwBasicData" Then bwBasicData.ReportProgress(85)
oSQL = "SELECT * FROM TBPM_PROFILE_FINAL_INDEXING with (NOLOCK) WHERE ACTIVE = 1"
DTTBPM_PROFILE_FINAL_INDEXING = DatabaseFallback.GetDatatable("TBPM_PROFILE_FINAL_INDEXING", New GetDatatableOptions(oSQL, DatabaseType.ECM))
If pMode = "bwBasicData" Then bwBasicData.ReportProgress(100)
Catch ex As Exception
LOGGER.Warn($"Error in GetBaseData - Error: [{ex.Message}]")
@@ -2848,15 +2888,37 @@ FROM VWPM_PROFILE_ACTIVE T WHERE T.GUID IN (SELECT PROFILE_ID FROM [dbo].[FNPM_G
LOGGER.Error(ex.Message)
End Try
End Sub
Sub Create_View_Caption()
Private Sub UpdateGridCaption()
Try
lblCaptionMainGrid.Text = S.Gesamtübersicht
LOGGER.Debug($"UpdateGridCaption called - GRID_LOAD_TYPE: [{GRID_LOAD_TYPE}], CURRENT_CLICKED_PROFILE_TITLE: [{CURRENT_CLICKED_PROFILE_TITLE}], NO_WORKFLOWITEMS: [{NO_WORKFLOWITEMS}]")
If GRID_LOAD_TYPE = "OVERVIEW" Then
' Übersicht-Caption
lblCaptionMainGrid.Text = S.Gesamtübersicht
' Filter-Info hinzufügen, falls aktiv
If GridViewWorkflows.ActiveFilterString <> String.Empty Then
Dim oTermFilterActive As String = String.Format("{0} ({1})", S.Filter_aktiv, GridViewWorkflows.RowCount)
lblCaptionMainGrid.Text = String.Format("{0} - {1}", S.Gesamtübersicht, oTermFilterActive)
End If
ElseIf GRID_LOAD_TYPE.StartsWith("PROFILE#") Then
' Profil-Caption
If Not String.IsNullOrEmpty(CURRENT_CLICKED_PROFILE_TITLE) Then
If NO_WORKFLOWITEMS Then
lblCaptionMainGrid.Text = String.Format(S.Aktuell_keine_Workflowdaten_vorhanden___0_, CURRENT_CLICKED_PROFILE_TITLE)
Else
lblCaptionMainGrid.Text = CURRENT_CLICKED_PROFILE_TITLE
End If
End If
End If
LOGGER.Debug($"Grid Caption updated: [{lblCaptionMainGrid.Text}]")
Catch ex As Exception
LOGGER.Error(ex)
End Try
End Sub
Sub Create_View_Caption()
UpdateGridCaption()
End Sub
Sub Grid_Export()
XtraSaveFileDialog1.FileName = "Overview.xlsx"
XtraSaveFileDialog1.DefaultExt = ".xlsx"

View File

@@ -1,4 +1,6 @@
Imports System.ComponentModel
Imports System.Collections.Generic
Imports System.ComponentModel
Imports System.Data.Entity.Core.Common.CommandTrees
'Imports System.Data.SqlClient
Imports System.Globalization
Imports System.IO
@@ -29,8 +31,6 @@ Imports DigitalData.Modules.Interfaces
Imports DigitalData.Modules.Logging
Imports DigitalData.Modules.ZooFlow
Imports DigitalData.Modules.ZooFlow.Constants
Imports System.Collections.Generic
'Imports System.Windows.Forms.VisualStyles.VisualStyleElement
'Imports System.Windows.Forms.VisualStyles.VisualStyleElement.TextBox
Imports WINDREAMLib
@@ -128,6 +128,8 @@ Public Class frmValidator
Private ReadOnly _SqlScalarCache As New Dictionary(Of String, Object)(StringComparer.OrdinalIgnoreCase)
Private _SqlControlsByGuid As Dictionary(Of Integer, List(Of DataRow))
Private _LookupControlsByRepository As Dictionary(Of RepositoryItemLookupControl3, LookupControl3)
Private _CachedFinalIndexing As DataTable = Nothing
Private Class Translation_Strings
Inherits My.Resources.frmValidator_Strings
End Class
@@ -202,6 +204,16 @@ Public Class frmValidator
_FormClosing = False
_FormLoaded = False
' In Load_Next_Document (einmalig):
If _CachedFinalIndexing Is Nothing AndAlso DTTBPM_PROFILE_FINAL_INDEXING IsNot Nothing Then
Dim rows = DTTBPM_PROFILE_FINAL_INDEXING.Select($"PROFIL_ID = {CURRENT_ProfilGUID} AND ACTIVE = 1", "SEQUENCE")
If rows.Length > 0 Then
_CachedFinalIndexing = rows.CopyToDataTable()
End If
End If
If LOG_HOTSPOTS Then
MyValidationLogger.Info($"[PERF] Nach Initialisierung: {(DateTime.Now - perfLastCheck).TotalMilliseconds}ms")
perfLastCheck = DateTime.Now
@@ -936,11 +948,15 @@ Public Class frmValidator
PanelValidatorControl.Controls.Clear()
_LookupControlsByRepository = New Dictionary(Of RepositoryItemLookupControl3, LookupControl3)()
Dim oSQL = $"SELECT [dbo].[FNPM_LANGUAGE_CONTROL_TEXT] (NAME,'{USER_LANGUAGE}',CTRL_TYPE,CTRL_TEXT) CTRL_CAPTION_LANG, * FROM TBPM_PROFILE_CONTROLS WHERE CONTROL_ACTIVE = 1 AND PROFIL_ID = {CURRENT_ProfilGUID} ORDER BY Y_LOC, X_LOC"
DT_CONTROLS = DatabaseFallback.GetDatatable("TBPM_PROFILE_CONTROLS_LANGUAGE", New GetDatatableOptions(oSQL, DatabaseType.ECM) With {
.FilterExpression = $"LANGUAGE = '{USER_LANGUAGE}' AND PROFIL_ID = {CURRENT_ProfilGUID}",
.SortByColumn = "Y_LOC, X_LOC"
})
Dim oSQL As String
Dim oFilter As String = $"LANGUAGE = '{USER_LANGUAGE}' AND PROFIL_ID = {CURRENT_ProfilGUID}"
DT_CONTROLS = GetControlMetaBySql(oFilter, "Y_LOC, X_LOC")
'Dim oSQL = $"SELECT [dbo].[FNPM_LANGUAGE_CONTROL_TEXT] (NAME,'{USER_LANGUAGE}',CTRL_TYPE,CTRL_TEXT) CTRL_CAPTION_LANG, * FROM TBPM_PROFILE_CONTROLS WHERE CONTROL_ACTIVE = 1 AND PROFIL_ID = {CURRENT_ProfilGUID} ORDER BY Y_LOC, X_LOC"
'DT_CONTROLS = DatabaseFallback.GetDatatable("TBPM_PROFILE_CONTROLS_LANGUAGE", New GetDatatableOptions(oSQL, DatabaseType.ECM) With {
' .FilterExpression = $"LANGUAGE = '{USER_LANGUAGE}' AND PROFIL_ID = {CURRENT_ProfilGUID}",
' .SortByColumn = "Y_LOC, X_LOC"
'})
oSQL = $"SELECT IIF(LANG.CAPTION IS NULL,T.SPALTEN_HEADER,LANG.CAPTION) SPALTEN_HEADER_LANG, T.* from TBPM_CONTROL_TABLE T INNER JOIN TBPM_PROFILE_CONTROLS T1 ON T.CONTROL_ID = T1.GUID
LEFT JOIN (SELECT * FROM TBPM_CONTOL_TABLE_LANG WHERE LANG_CODE = '{USER_LANGUAGE}') LANG ON T.GUID = LANG.COL_ID WHERE T1.CONTROL_ACTIVE = 1 AND T.CONTROL_ID = T1.GUID AND T1.PROFIL_ID = {CURRENT_ProfilGUID} ORDER BY T.SEQUENCE"
@@ -2610,9 +2626,9 @@ Public Class frmValidator
End If
End If
End Sub
Private Function GetControlMetaBySql(filter As String) As DataTable
Private Function GetControlMetaBySql(filter As String, Optional SortBy As String = "") As DataTable
Dim dt As DataTable = Nothing
Dim cacheKey = $"META|{filter}"
Dim cacheKey = $"META|{filter}|{SortBy}"
If _SqlDataCache.TryGetValue(cacheKey, dt) Then
Return dt
@@ -2620,14 +2636,17 @@ Public Class frmValidator
If BASEDATA_TBPM_PROFILE_CONTROLS IsNot Nothing Then
Try
Dim rows As DataRow()
If String.IsNullOrWhiteSpace(filter) Then
dt = BASEDATA_TBPM_PROFILE_CONTROLS.Copy()
rows = BASEDATA_TBPM_PROFILE_CONTROLS.Select()
Else
Dim rows = BASEDATA_TBPM_PROFILE_CONTROLS.Select(filter)
dt = BASEDATA_TBPM_PROFILE_CONTROLS.Clone()
If rows.Length > 0 Then
dt = rows.CopyToDataTable()
End If
rows = BASEDATA_TBPM_PROFILE_CONTROLS.Select(filter, SortBy)
End If
dt = BASEDATA_TBPM_PROFILE_CONTROLS.Clone()
If rows.Length > 0 Then
dt = rows.CopyToDataTable()
End If
_SqlDataCache(cacheKey) = dt
@@ -2637,6 +2656,7 @@ Public Class frmValidator
End Try
End If
' Fallback zu SQL
Dim query As String
If String.IsNullOrWhiteSpace(filter) Then
query = "SELECT * FROM TBPM_PROFILE_CONTROLS"
@@ -2644,6 +2664,10 @@ Public Class frmValidator
query = $"SELECT * FROM TBPM_PROFILE_CONTROLS WHERE {filter}"
End If
If Not String.IsNullOrWhiteSpace(SortBy) Then
query &= $" ORDER BY {SortBy}"
End If
dt = DatabaseFallback.GetDatatable("TBPM_PROFILE_CONTROLS", New GetDatatableOptions(query, DatabaseType.ECM))
If dt IsNot Nothing Then
_SqlDataCache(cacheKey) = dt
@@ -4531,7 +4555,6 @@ Public Class frmValidator
End Sub
Private Sub btnSave_Click(sender As Object, e As EventArgs) Handles btnSave.Click
btnSave.Enabled = False
' TODO: Use when working on Validation
If ForceGridValidation() = True Then
Finish_WFStep()
@@ -4714,12 +4737,8 @@ Public Class frmValidator
If includeFI = True Then
Try
Dim oSQL = $"SELECT * FROM TBPM_PROFILE_FINAL_INDEXING WHERE PROFIL_ID = {CURRENT_ProfilGUID} AND ACTIVE = 1 ORDER BY SEQUENCE"
Dim oDTFinalIndexing As DataTable
oDTFinalIndexing = DatabaseFallback.GetDatatable("TBPM_PROFILE_FINAL_INDEXING", New GetDatatableOptions(oSQL, DatabaseType.ECM) With {
.FilterExpression = $"PROFIL_ID = {CURRENT_ProfilGUID}",
.SortByColumn = "SEQUENCE"
})
Dim oDTFinalIndexing As DataTable = _CachedFinalIndexing
If oDTFinalIndexing?.Rows.Count > 0 Then
'Jetzt finale Indexe setzen