Cockpit-Navigation: DevExpress TreeList integriert
Das Hauptfenster nutzt nun eine moderne, hierarchische Cockpit-Navigation auf Basis der DevExpress TreeList. Die TreeList ersetzt die bisherige alleinige Navigation über die NavBar und lädt ihre Struktur dynamisch aus der Datenbank. Knoten können asynchron Zähler nachladen und verschiedene Typen (Übersicht, Profil, SQL) abbilden. Die Datenlade-Logik wurde für die TreeList angepasst und erweitert. UI und Ressourcen wurden modernisiert, die TreeList ist für zukünftige Erweiterungen vorbereitet. Die NavBar bleibt erhalten, ist aber nicht mehr Hauptnavigation.
This commit is contained in:
@@ -1,15 +1,16 @@
|
|||||||
DevExpress.XtraEditors.Repository.RepositoryItemComboBox, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
|
||||||
DevExpress.XtraEditors.Repository.RepositoryItemProgressBar, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
|
||||||
DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
|
||||||
DevExpress.XtraCharts.ChartControl, DevExpress.XtraCharts.v21.2.UI, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
|
||||||
DevExpress.XtraVerticalGrid.PropertyGridControl, DevExpress.XtraVerticalGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
|
||||||
DevExpress.XtraEditors.PictureEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
|
||||||
DevExpress.XtraEditors.LookUpEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
DevExpress.XtraEditors.LookUpEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||||
DevExpress.XtraEditors.ComboBoxEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
|
||||||
DevExpress.XtraBars.Ribbon.RibbonControl, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
|
||||||
DevExpress.XtraBars.BarManager, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
|
||||||
DevExpress.XtraNavBar.NavBarControl, DevExpress.XtraNavBar.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
|
||||||
DevExpress.XtraDataLayout.DataLayoutControl, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
|
||||||
DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
|
||||||
DevExpress.XtraLayout.LayoutControl, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
DevExpress.XtraLayout.LayoutControl, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||||
DevExpress.XtraEditors.TextEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
DevExpress.XtraEditors.TextEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||||
|
DevExpress.XtraEditors.ComboBoxEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||||
|
DevExpress.XtraEditors.Repository.RepositoryItemComboBox, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||||
|
DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||||
|
DevExpress.XtraDataLayout.DataLayoutControl, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||||
|
DevExpress.XtraEditors.PictureEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||||
|
DevExpress.XtraVerticalGrid.PropertyGridControl, DevExpress.XtraVerticalGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||||
|
DevExpress.XtraTreeList.TreeList, DevExpress.XtraTreeList.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||||
|
DevExpress.XtraBars.BarManager, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||||
|
DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||||
|
DevExpress.XtraBars.Ribbon.RibbonControl, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||||
|
DevExpress.XtraEditors.Repository.RepositoryItemProgressBar, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||||
|
DevExpress.XtraCharts.ChartControl, DevExpress.XtraCharts.v21.2.UI, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||||
|
DevExpress.XtraNavBar.NavBarControl, DevExpress.XtraNavBar.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
|
||||||
|
|||||||
@@ -92,7 +92,7 @@ Namespace My.Resources
|
|||||||
End Property
|
End Property
|
||||||
|
|
||||||
'''<summary>
|
'''<summary>
|
||||||
''' Sucht eine lokalisierte Zeichenfolge, die Aktuell keine Workflowdaten vorhanden! {0} ähnelt.
|
''' Sucht eine lokalisierte Zeichenfolge, die Aktuell keine Workflowdaten vorhanden - {0} ähnelt.
|
||||||
'''</summary>
|
'''</summary>
|
||||||
Friend Shared ReadOnly Property Aktuell_keine_Workflowdaten_vorhanden___0_() As String
|
Friend Shared ReadOnly Property Aktuell_keine_Workflowdaten_vorhanden___0_() As String
|
||||||
Get
|
Get
|
||||||
|
|||||||
@@ -120,36 +120,27 @@
|
|||||||
<data name="Achtung:" xml:space="preserve">
|
<data name="Achtung:" xml:space="preserve">
|
||||||
<value>Attention:</value>
|
<value>Attention:</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="Aktuell keine Workflowdaten vorhanden! {0}" xml:space="preserve">
|
||||||
|
<value>Currently no workflow data available - {0}</value>
|
||||||
|
</data>
|
||||||
|
<data name="Aktuelle Lizenz ist abgelaufen oder ungültig!" xml:space="preserve">
|
||||||
|
<value>Current license has expired or is invalid!</value>
|
||||||
|
</data>
|
||||||
<data name="Anzahl angemeldete Benutzer: {0}" xml:space="preserve">
|
<data name="Anzahl angemeldete Benutzer: {0}" xml:space="preserve">
|
||||||
<value>Logged in users: {0}</value>
|
<value>Logged in users: {0}</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Anzahl Lizenzen: {0}" xml:space="preserve">
|
<data name="Anzahl Lizenzen: {0}" xml:space="preserve">
|
||||||
<value>Number of licenses: {0}</value>
|
<value>Number of licenses: {0}</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Bitte schließen Sie den offenen Workflow!" xml:space="preserve">
|
|
||||||
<value>Please close the currently open workflow!</value>
|
|
||||||
</data>
|
|
||||||
<data name="Größer" xml:space="preserve">
|
|
||||||
<value>Bigger</value>
|
|
||||||
</data>
|
|
||||||
<data name="Kleiner" xml:space="preserve">
|
|
||||||
<value>Smaller</value>
|
|
||||||
</data>
|
|
||||||
<data name="Normal" xml:space="preserve">
|
|
||||||
<value>Normal</value>
|
|
||||||
</data>
|
|
||||||
<data name="Aktuell keine Workflowdaten vorhanden! {0}" xml:space="preserve">
|
|
||||||
<value>Currently no workflow data available! {0}</value>
|
|
||||||
</data>
|
|
||||||
<data name="Aktuelle Lizenz ist abgelaufen oder ungültig!" xml:space="preserve">
|
|
||||||
<value>Current license has expired or is invalid!</value>
|
|
||||||
</data>
|
|
||||||
<data name="Bitte konfigurieren Sie eine Datenbankverbindung!" xml:space="preserve">
|
<data name="Bitte konfigurieren Sie eine Datenbankverbindung!" xml:space="preserve">
|
||||||
<value>Please configure a database connection!</value>
|
<value>Please configure a database connection!</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Bitte kontaktieren Sie Ihren Administrator!" xml:space="preserve">
|
<data name="Bitte kontaktieren Sie Ihren Administrator!" xml:space="preserve">
|
||||||
<value>Please contact your administrator!</value>
|
<value>Please contact your administrator!</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="Bitte schließen Sie den offenen Workflow!" xml:space="preserve">
|
||||||
|
<value>Please close the currently open workflow!</value>
|
||||||
|
</data>
|
||||||
<data name="Bitte wählen Sie ein Profil aus!" xml:space="preserve">
|
<data name="Bitte wählen Sie ein Profil aus!" xml:space="preserve">
|
||||||
<value>Please select a profile!</value>
|
<value>Please select a profile!</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -177,9 +168,18 @@
|
|||||||
<data name="Ghost Modus ({0}) deaktivieren" xml:space="preserve">
|
<data name="Ghost Modus ({0}) deaktivieren" xml:space="preserve">
|
||||||
<value>Deactivate ({0}) Ghost Mode</value>
|
<value>Deactivate ({0}) Ghost Mode</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="Größer" xml:space="preserve">
|
||||||
|
<value>Bigger</value>
|
||||||
|
</data>
|
||||||
<data name="HINWEIS: Debug Modus ist eingeschaltet!" xml:space="preserve">
|
<data name="HINWEIS: Debug Modus ist eingeschaltet!" xml:space="preserve">
|
||||||
<value>NOTE: Debug mode is switched on!</value>
|
<value>NOTE: Debug mode is switched on!</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="IDB Aktiv" xml:space="preserve">
|
||||||
|
<value>IDB Active</value>
|
||||||
|
</data>
|
||||||
|
<data name="Kleiner" xml:space="preserve">
|
||||||
|
<value>Smaller</value>
|
||||||
|
</data>
|
||||||
<data name="Letzte Synchronisation: {0}" xml:space="preserve">
|
<data name="Letzte Synchronisation: {0}" xml:space="preserve">
|
||||||
<value>Last synchronization: {0}</value>
|
<value>Last synchronization: {0}</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -189,6 +189,9 @@
|
|||||||
<data name="Massenabschluss konnte nicht ausgeführt werden, weil windream nicht initialisiert werden konnte!" xml:space="preserve">
|
<data name="Massenabschluss konnte nicht ausgeführt werden, weil windream nicht initialisiert werden konnte!" xml:space="preserve">
|
||||||
<value>Mass completion could not be executed because windream could not be initialised!</value>
|
<value>Mass completion could not be executed because windream could not be initialised!</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="Normal" xml:space="preserve">
|
||||||
|
<value>Normal</value>
|
||||||
|
</data>
|
||||||
<data name="Nächste Aktivitätsüberprüfung: {0} {1}" xml:space="preserve">
|
<data name="Nächste Aktivitätsüberprüfung: {0} {1}" xml:space="preserve">
|
||||||
<value>Next activity check: {0} {1}</value>
|
<value>Next activity check: {0} {1}</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -213,7 +216,4 @@
|
|||||||
<data name="{0} Vorgänge" xml:space="preserve">
|
<data name="{0} Vorgänge" xml:space="preserve">
|
||||||
<value>{0} Processes</value>
|
<value>{0} Processes</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="IDB Aktiv" xml:space="preserve">
|
|
||||||
<value>IDB Active</value>
|
|
||||||
</data>
|
|
||||||
</root>
|
</root>
|
||||||
@@ -120,36 +120,27 @@
|
|||||||
<data name="Achtung:" xml:space="preserve">
|
<data name="Achtung:" xml:space="preserve">
|
||||||
<value>Attention:</value>
|
<value>Attention:</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="Aktuell keine Workflowdaten vorhanden! {0}" xml:space="preserve">
|
||||||
|
<value>Actuellement, aucune donnée de workflow n'est disponible - {0}</value>
|
||||||
|
</data>
|
||||||
|
<data name="Aktuelle Lizenz ist abgelaufen oder ungültig!" xml:space="preserve">
|
||||||
|
<value>La licence actuelle a expiré ou n'est plus valable !</value>
|
||||||
|
</data>
|
||||||
<data name="Anzahl angemeldete Benutzer: {0}" xml:space="preserve">
|
<data name="Anzahl angemeldete Benutzer: {0}" xml:space="preserve">
|
||||||
<value>Nombre d'utilisateurs connectés: {0}</value>
|
<value>Nombre d'utilisateurs connectés: {0}</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Anzahl Lizenzen: {0}" xml:space="preserve">
|
<data name="Anzahl Lizenzen: {0}" xml:space="preserve">
|
||||||
<value>Nombre de licences: {0}</value>
|
<value>Nombre de licences: {0}</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Bitte schließen Sie den offenen Workflow!" xml:space="preserve">
|
|
||||||
<value>Veuillez fermer le workflow ouvert !</value>
|
|
||||||
</data>
|
|
||||||
<data name="Größer" xml:space="preserve">
|
|
||||||
<value>Plus grand</value>
|
|
||||||
</data>
|
|
||||||
<data name="Kleiner" xml:space="preserve">
|
|
||||||
<value>Petit</value>
|
|
||||||
</data>
|
|
||||||
<data name="Normal" xml:space="preserve">
|
|
||||||
<value>Normal</value>
|
|
||||||
</data>
|
|
||||||
<data name="Aktuell keine Workflowdaten vorhanden! {0}" xml:space="preserve">
|
|
||||||
<value>Actuellement, aucune donnée de workflow n'est disponible ! {0}</value>
|
|
||||||
</data>
|
|
||||||
<data name="Aktuelle Lizenz ist abgelaufen oder ungültig!" xml:space="preserve">
|
|
||||||
<value>La licence actuelle a expiré ou n'est plus valable !</value>
|
|
||||||
</data>
|
|
||||||
<data name="Bitte konfigurieren Sie eine Datenbankverbindung!" xml:space="preserve">
|
<data name="Bitte konfigurieren Sie eine Datenbankverbindung!" xml:space="preserve">
|
||||||
<value>Veuillez configurer une connexion à la base de données !</value>
|
<value>Veuillez configurer une connexion à la base de données !</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Bitte kontaktieren Sie Ihren Administrator!" xml:space="preserve">
|
<data name="Bitte kontaktieren Sie Ihren Administrator!" xml:space="preserve">
|
||||||
<value>Veuillez contacter votre administrateur !</value>
|
<value>Veuillez contacter votre administrateur !</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="Bitte schließen Sie den offenen Workflow!" xml:space="preserve">
|
||||||
|
<value>Veuillez fermer le workflow ouvert !</value>
|
||||||
|
</data>
|
||||||
<data name="Bitte wählen Sie ein Profil aus!" xml:space="preserve">
|
<data name="Bitte wählen Sie ein Profil aus!" xml:space="preserve">
|
||||||
<value>Veuillez sélectionner un profil !</value>
|
<value>Veuillez sélectionner un profil !</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -177,9 +168,18 @@
|
|||||||
<data name="Ghost Modus ({0}) deaktivieren" xml:space="preserve">
|
<data name="Ghost Modus ({0}) deaktivieren" xml:space="preserve">
|
||||||
<value>Désactiver ({0}) le Mode Fantôme</value>
|
<value>Désactiver ({0}) le Mode Fantôme</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="Größer" xml:space="preserve">
|
||||||
|
<value>Plus grand</value>
|
||||||
|
</data>
|
||||||
<data name="HINWEIS: Debug Modus ist eingeschaltet!" xml:space="preserve">
|
<data name="HINWEIS: Debug Modus ist eingeschaltet!" xml:space="preserve">
|
||||||
<value>REMARQUE : le mode de débogage est activé !</value>
|
<value>REMARQUE : le mode de débogage est activé !</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="IDB Aktiv" xml:space="preserve">
|
||||||
|
<value>IDB Aktif</value>
|
||||||
|
</data>
|
||||||
|
<data name="Kleiner" xml:space="preserve">
|
||||||
|
<value>Petit</value>
|
||||||
|
</data>
|
||||||
<data name="Letzte Synchronisation: {0}" xml:space="preserve">
|
<data name="Letzte Synchronisation: {0}" xml:space="preserve">
|
||||||
<value>Dernière synchronisation : {0}</value>
|
<value>Dernière synchronisation : {0}</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -189,6 +189,9 @@
|
|||||||
<data name="Massenabschluss konnte nicht ausgeführt werden, weil windream nicht initialisiert werden konnte!" xml:space="preserve">
|
<data name="Massenabschluss konnte nicht ausgeführt werden, weil windream nicht initialisiert werden konnte!" xml:space="preserve">
|
||||||
<value>La clôture en masse n'a pas pu être exécutée parce que windream n'a pas pu être initialisé !</value>
|
<value>La clôture en masse n'a pas pu être exécutée parce que windream n'a pas pu être initialisé !</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="Normal" xml:space="preserve">
|
||||||
|
<value>Normal</value>
|
||||||
|
</data>
|
||||||
<data name="Nächste Aktivitätsüberprüfung: {0} {1}" xml:space="preserve">
|
<data name="Nächste Aktivitätsüberprüfung: {0} {1}" xml:space="preserve">
|
||||||
<value>Prochaine vérification d'activité : {0} {1}</value>
|
<value>Prochaine vérification d'activité : {0} {1}</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -213,7 +216,4 @@
|
|||||||
<data name="{0} Vorgänge" xml:space="preserve">
|
<data name="{0} Vorgänge" xml:space="preserve">
|
||||||
<value>{0} Opérations</value>
|
<value>{0} Opérations</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="IDB Aktiv" xml:space="preserve">
|
|
||||||
<value>IDB Aktif</value>
|
|
||||||
</data>
|
|
||||||
</root>
|
</root>
|
||||||
@@ -121,7 +121,7 @@
|
|||||||
<value>Achtung:</value>
|
<value>Achtung:</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Aktuell keine Workflowdaten vorhanden! {0}" xml:space="preserve">
|
<data name="Aktuell keine Workflowdaten vorhanden! {0}" xml:space="preserve">
|
||||||
<value>Aktuell keine Workflowdaten vorhanden! {0}</value>
|
<value>Aktuell keine Workflowdaten vorhanden - {0}</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Aktuelle Lizenz ist abgelaufen oder ungültig!" xml:space="preserve">
|
<data name="Aktuelle Lizenz ist abgelaufen oder ungültig!" xml:space="preserve">
|
||||||
<value>Aktuelle Lizenz ist abgelaufen oder ungültig!</value>
|
<value>Aktuelle Lizenz ist abgelaufen oder ungültig!</value>
|
||||||
|
|||||||
126
app/TaskFlow/frmMain.Designer.vb
generated
126
app/TaskFlow/frmMain.Designer.vb
generated
@@ -28,8 +28,7 @@ Partial Class frmMain
|
|||||||
Me.DD_DMSLiteDataSet = New taskFLOW.DD_DMSLiteDataSet()
|
Me.DD_DMSLiteDataSet = New taskFLOW.DD_DMSLiteDataSet()
|
||||||
Me.TableAdapterManager = New taskFLOW.DD_DMSLiteDataSetTableAdapters.TableAdapterManager()
|
Me.TableAdapterManager = New taskFLOW.DD_DMSLiteDataSetTableAdapters.TableAdapterManager()
|
||||||
Me.Panel1 = New System.Windows.Forms.Panel()
|
Me.Panel1 = New System.Windows.Forms.Panel()
|
||||||
Me.GridControlWorkflows = New DevExpress.XtraGrid.GridControl()
|
Me.TreeList_Cockpit = New DevExpress.XtraTreeList.TreeList()
|
||||||
Me.GridViewWorkflows = New DevExpress.XtraGrid.Views.Grid.GridView()
|
|
||||||
Me.RibbonControl1 = New DevExpress.XtraBars.Ribbon.RibbonControl()
|
Me.RibbonControl1 = New DevExpress.XtraBars.Ribbon.RibbonControl()
|
||||||
Me.bbtniRefresh = New DevExpress.XtraBars.BarButtonItem()
|
Me.bbtniRefresh = New DevExpress.XtraBars.BarButtonItem()
|
||||||
Me.bbtniMonitor = New DevExpress.XtraBars.BarButtonItem()
|
Me.bbtniMonitor = New DevExpress.XtraBars.BarButtonItem()
|
||||||
@@ -99,6 +98,9 @@ Partial Class frmMain
|
|||||||
Me.RibbonPageGroup8 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
|
Me.RibbonPageGroup8 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
|
||||||
Me.RepositoryItemTrackBar1 = New DevExpress.XtraEditors.Repository.RepositoryItemTrackBar()
|
Me.RepositoryItemTrackBar1 = New DevExpress.XtraEditors.Repository.RepositoryItemTrackBar()
|
||||||
Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar()
|
Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar()
|
||||||
|
Me.ImageCollection1 = New DevExpress.Utils.ImageCollection(Me.components)
|
||||||
|
Me.GridControlWorkflows = New DevExpress.XtraGrid.GridControl()
|
||||||
|
Me.GridViewWorkflows = New DevExpress.XtraGrid.Views.Grid.GridView()
|
||||||
Me.Panel2 = New System.Windows.Forms.Panel()
|
Me.Panel2 = New System.Windows.Forms.Panel()
|
||||||
Me.lblCaptionMainGrid = New System.Windows.Forms.Label()
|
Me.lblCaptionMainGrid = New System.Windows.Forms.Label()
|
||||||
Me.NavBarControl1 = New DevExpress.XtraNavBar.NavBarControl()
|
Me.NavBarControl1 = New DevExpress.XtraNavBar.NavBarControl()
|
||||||
@@ -196,12 +198,14 @@ Partial Class frmMain
|
|||||||
Me.BarButtonItem9 = New DevExpress.XtraBars.BarButtonItem()
|
Me.BarButtonItem9 = New DevExpress.XtraBars.BarButtonItem()
|
||||||
CType(Me.DD_DMSLiteDataSet, System.ComponentModel.ISupportInitialize).BeginInit()
|
CType(Me.DD_DMSLiteDataSet, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||||
Me.Panel1.SuspendLayout()
|
Me.Panel1.SuspendLayout()
|
||||||
CType(Me.GridControlWorkflows, System.ComponentModel.ISupportInitialize).BeginInit()
|
CType(Me.TreeList_Cockpit, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||||
CType(Me.GridViewWorkflows, System.ComponentModel.ISupportInitialize).BeginInit()
|
|
||||||
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit()
|
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||||
CType(Me.RepositoryItemProgressBar1, System.ComponentModel.ISupportInitialize).BeginInit()
|
CType(Me.RepositoryItemProgressBar1, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||||
CType(Me.cmbGridFontSize, System.ComponentModel.ISupportInitialize).BeginInit()
|
CType(Me.cmbGridFontSize, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||||
CType(Me.RepositoryItemTrackBar1, System.ComponentModel.ISupportInitialize).BeginInit()
|
CType(Me.RepositoryItemTrackBar1, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||||
|
CType(Me.ImageCollection1, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||||
|
CType(Me.GridControlWorkflows, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||||
|
CType(Me.GridViewWorkflows, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||||
Me.Panel2.SuspendLayout()
|
Me.Panel2.SuspendLayout()
|
||||||
CType(Me.NavBarControl1, System.ComponentModel.ISupportInitialize).BeginInit()
|
CType(Me.NavBarControl1, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||||
Me.cmsNavPane.SuspendLayout()
|
Me.cmsNavPane.SuspendLayout()
|
||||||
@@ -247,48 +251,36 @@ Partial Class frmMain
|
|||||||
'Panel1
|
'Panel1
|
||||||
'
|
'
|
||||||
Me.Panel1.BackColor = System.Drawing.Color.Transparent
|
Me.Panel1.BackColor = System.Drawing.Color.Transparent
|
||||||
|
Me.Panel1.Controls.Add(Me.TreeList_Cockpit)
|
||||||
Me.Panel1.Controls.Add(Me.GridControlWorkflows)
|
Me.Panel1.Controls.Add(Me.GridControlWorkflows)
|
||||||
Me.Panel1.Controls.Add(Me.Panel2)
|
Me.Panel1.Controls.Add(Me.Panel2)
|
||||||
Me.Panel1.Controls.Add(Me.NavBarControl1)
|
Me.Panel1.Controls.Add(Me.NavBarControl1)
|
||||||
resources.ApplyResources(Me.Panel1, "Panel1")
|
resources.ApplyResources(Me.Panel1, "Panel1")
|
||||||
Me.Panel1.Name = "Panel1"
|
Me.Panel1.Name = "Panel1"
|
||||||
'
|
'
|
||||||
'GridControlWorkflows
|
'TreeList_Cockpit
|
||||||
'
|
'
|
||||||
resources.ApplyResources(Me.GridControlWorkflows, "GridControlWorkflows")
|
resources.ApplyResources(Me.TreeList_Cockpit, "TreeList_Cockpit")
|
||||||
Me.GridControlWorkflows.MainView = Me.GridViewWorkflows
|
Me.TreeList_Cockpit.ImageIndexFieldName = "ICON_INDEX"
|
||||||
Me.GridControlWorkflows.MenuManager = Me.RibbonControl1
|
Me.TreeList_Cockpit.KeyFieldName = "PK_CFG_COCKPIT_DEFINITION_ID"
|
||||||
Me.GridControlWorkflows.Name = "GridControlWorkflows"
|
Me.TreeList_Cockpit.MenuManager = Me.RibbonControl1
|
||||||
Me.GridControlWorkflows.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridViewWorkflows})
|
Me.TreeList_Cockpit.Name = "TreeList_Cockpit"
|
||||||
'
|
Me.TreeList_Cockpit.OptionsBehavior.Editable = False
|
||||||
'GridViewWorkflows
|
Me.TreeList_Cockpit.OptionsBehavior.PopulateServiceColumns = True
|
||||||
'
|
Me.TreeList_Cockpit.OptionsBehavior.ReadOnly = True
|
||||||
Me.GridViewWorkflows.Appearance.EvenRow.BackColor = System.Drawing.Color.Azure
|
Me.TreeList_Cockpit.OptionsLayout.AddNewColumns = False
|
||||||
Me.GridViewWorkflows.Appearance.EvenRow.Options.UseBackColor = True
|
Me.TreeList_Cockpit.OptionsMenu.ShowExpandCollapseItems = False
|
||||||
Me.GridViewWorkflows.Appearance.FooterPanel.Font = CType(resources.GetObject("GridViewWorkflows.Appearance.FooterPanel.Font"), System.Drawing.Font)
|
Me.TreeList_Cockpit.OptionsSelection.EnableAppearanceFocusedCell = False
|
||||||
Me.GridViewWorkflows.Appearance.FooterPanel.Options.UseFont = True
|
Me.TreeList_Cockpit.OptionsView.ShowColumns = False
|
||||||
Me.GridViewWorkflows.Appearance.ViewCaption.Font = CType(resources.GetObject("GridViewWorkflows.Appearance.ViewCaption.Font"), System.Drawing.Font)
|
Me.TreeList_Cockpit.OptionsView.ShowFilterPanelMode = DevExpress.XtraTreeList.ShowFilterPanelMode.Never
|
||||||
Me.GridViewWorkflows.Appearance.ViewCaption.ForeColor = System.Drawing.Color.Black
|
Me.TreeList_Cockpit.OptionsView.ShowFirstLines = False
|
||||||
Me.GridViewWorkflows.Appearance.ViewCaption.Options.UseFont = True
|
Me.TreeList_Cockpit.OptionsView.ShowHorzLines = False
|
||||||
Me.GridViewWorkflows.Appearance.ViewCaption.Options.UseForeColor = True
|
Me.TreeList_Cockpit.OptionsView.ShowIndentAsRowStyle = True
|
||||||
Me.GridViewWorkflows.Appearance.ViewCaption.Options.UseTextOptions = True
|
Me.TreeList_Cockpit.OptionsView.ShowIndicator = False
|
||||||
Me.GridViewWorkflows.Appearance.ViewCaption.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Near
|
Me.TreeList_Cockpit.OptionsView.ShowVertLines = False
|
||||||
Me.GridViewWorkflows.GridControl = Me.GridControlWorkflows
|
Me.TreeList_Cockpit.OptionsView.TreeLineStyle = DevExpress.XtraTreeList.LineStyle.Dark
|
||||||
Me.GridViewWorkflows.Name = "GridViewWorkflows"
|
Me.TreeList_Cockpit.ParentFieldName = "Parent_ID"
|
||||||
Me.GridViewWorkflows.OptionsBehavior.AllowAddRows = DevExpress.Utils.DefaultBoolean.[False]
|
Me.TreeList_Cockpit.SelectImageList = Me.ImageCollection1
|
||||||
Me.GridViewWorkflows.OptionsBehavior.AllowDeleteRows = DevExpress.Utils.DefaultBoolean.[False]
|
|
||||||
Me.GridViewWorkflows.OptionsBehavior.AllowFixedGroups = DevExpress.Utils.DefaultBoolean.[True]
|
|
||||||
Me.GridViewWorkflows.OptionsBehavior.AllowGroupExpandAnimation = DevExpress.Utils.DefaultBoolean.[True]
|
|
||||||
Me.GridViewWorkflows.OptionsBehavior.Editable = False
|
|
||||||
Me.GridViewWorkflows.OptionsClipboard.CopyColumnHeaders = DevExpress.Utils.DefaultBoolean.[False]
|
|
||||||
Me.GridViewWorkflows.OptionsSelection.MultiSelect = True
|
|
||||||
Me.GridViewWorkflows.OptionsSelection.MultiSelectMode = DevExpress.XtraGrid.Views.Grid.GridMultiSelectMode.CellSelect
|
|
||||||
Me.GridViewWorkflows.OptionsView.ColumnAutoWidth = False
|
|
||||||
Me.GridViewWorkflows.OptionsView.EnableAppearanceEvenRow = True
|
|
||||||
Me.GridViewWorkflows.OptionsView.ShowAutoFilterRow = True
|
|
||||||
Me.GridViewWorkflows.OptionsView.ShowErrorPanel = DevExpress.Utils.DefaultBoolean.[True]
|
|
||||||
Me.GridViewWorkflows.OptionsView.ShowHorizontalLines = DevExpress.Utils.DefaultBoolean.[False]
|
|
||||||
Me.GridViewWorkflows.OptionsView.ShowVerticalLines = DevExpress.Utils.DefaultBoolean.[False]
|
|
||||||
'
|
'
|
||||||
'RibbonControl1
|
'RibbonControl1
|
||||||
'
|
'
|
||||||
@@ -863,6 +855,51 @@ Partial Class frmMain
|
|||||||
Me.RibbonStatusBar1.Name = "RibbonStatusBar1"
|
Me.RibbonStatusBar1.Name = "RibbonStatusBar1"
|
||||||
Me.RibbonStatusBar1.Ribbon = Me.RibbonControl1
|
Me.RibbonStatusBar1.Ribbon = Me.RibbonControl1
|
||||||
'
|
'
|
||||||
|
'ImageCollection1
|
||||||
|
'
|
||||||
|
resources.ApplyResources(Me.ImageCollection1, "ImageCollection1")
|
||||||
|
Me.ImageCollection1.ImageStream = CType(resources.GetObject("ImageCollection1.ImageStream"), DevExpress.Utils.ImageCollectionStreamer)
|
||||||
|
Me.ImageCollection1.Images.SetKeyName(0, "splittablecells_32x32.png")
|
||||||
|
Me.ImageCollection1.Images.SetKeyName(1, "bosaleitem_32x32.png")
|
||||||
|
Me.ImageCollection1.Images.SetKeyName(2, "bar2_32x32.png")
|
||||||
|
'
|
||||||
|
'GridControlWorkflows
|
||||||
|
'
|
||||||
|
resources.ApplyResources(Me.GridControlWorkflows, "GridControlWorkflows")
|
||||||
|
Me.GridControlWorkflows.MainView = Me.GridViewWorkflows
|
||||||
|
Me.GridControlWorkflows.MenuManager = Me.RibbonControl1
|
||||||
|
Me.GridControlWorkflows.Name = "GridControlWorkflows"
|
||||||
|
Me.GridControlWorkflows.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridViewWorkflows})
|
||||||
|
'
|
||||||
|
'GridViewWorkflows
|
||||||
|
'
|
||||||
|
Me.GridViewWorkflows.Appearance.EvenRow.BackColor = System.Drawing.Color.Azure
|
||||||
|
Me.GridViewWorkflows.Appearance.EvenRow.Options.UseBackColor = True
|
||||||
|
Me.GridViewWorkflows.Appearance.FooterPanel.Font = CType(resources.GetObject("GridViewWorkflows.Appearance.FooterPanel.Font"), System.Drawing.Font)
|
||||||
|
Me.GridViewWorkflows.Appearance.FooterPanel.Options.UseFont = True
|
||||||
|
Me.GridViewWorkflows.Appearance.ViewCaption.Font = CType(resources.GetObject("GridViewWorkflows.Appearance.ViewCaption.Font"), System.Drawing.Font)
|
||||||
|
Me.GridViewWorkflows.Appearance.ViewCaption.ForeColor = System.Drawing.Color.Black
|
||||||
|
Me.GridViewWorkflows.Appearance.ViewCaption.Options.UseFont = True
|
||||||
|
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.GridControl = Me.GridControlWorkflows
|
||||||
|
Me.GridViewWorkflows.Name = "GridViewWorkflows"
|
||||||
|
Me.GridViewWorkflows.OptionsBehavior.AllowAddRows = DevExpress.Utils.DefaultBoolean.[False]
|
||||||
|
Me.GridViewWorkflows.OptionsBehavior.AllowDeleteRows = DevExpress.Utils.DefaultBoolean.[False]
|
||||||
|
Me.GridViewWorkflows.OptionsBehavior.AllowFixedGroups = DevExpress.Utils.DefaultBoolean.[True]
|
||||||
|
Me.GridViewWorkflows.OptionsBehavior.AllowGroupExpandAnimation = DevExpress.Utils.DefaultBoolean.[True]
|
||||||
|
Me.GridViewWorkflows.OptionsBehavior.Editable = False
|
||||||
|
Me.GridViewWorkflows.OptionsClipboard.CopyColumnHeaders = DevExpress.Utils.DefaultBoolean.[False]
|
||||||
|
Me.GridViewWorkflows.OptionsSelection.MultiSelect = True
|
||||||
|
Me.GridViewWorkflows.OptionsSelection.MultiSelectMode = DevExpress.XtraGrid.Views.Grid.GridMultiSelectMode.CellSelect
|
||||||
|
Me.GridViewWorkflows.OptionsView.ColumnAutoWidth = False
|
||||||
|
Me.GridViewWorkflows.OptionsView.EnableAppearanceEvenRow = True
|
||||||
|
Me.GridViewWorkflows.OptionsView.ShowAutoFilterRow = True
|
||||||
|
Me.GridViewWorkflows.OptionsView.ShowErrorPanel = DevExpress.Utils.DefaultBoolean.[True]
|
||||||
|
Me.GridViewWorkflows.OptionsView.ShowHorizontalLines = DevExpress.Utils.DefaultBoolean.[False]
|
||||||
|
Me.GridViewWorkflows.OptionsView.ShowVerticalLines = DevExpress.Utils.DefaultBoolean.[False]
|
||||||
|
'
|
||||||
'Panel2
|
'Panel2
|
||||||
'
|
'
|
||||||
Me.Panel2.Controls.Add(Me.lblCaptionMainGrid)
|
Me.Panel2.Controls.Add(Me.lblCaptionMainGrid)
|
||||||
@@ -878,9 +915,9 @@ Partial Class frmMain
|
|||||||
'
|
'
|
||||||
Me.NavBarControl1.ActiveGroup = Me.NavBarGroupProfiles
|
Me.NavBarControl1.ActiveGroup = Me.NavBarGroupProfiles
|
||||||
Me.NavBarControl1.ContextMenuStrip = Me.cmsNavPane
|
Me.NavBarControl1.ContextMenuStrip = Me.cmsNavPane
|
||||||
resources.ApplyResources(Me.NavBarControl1, "NavBarControl1")
|
|
||||||
Me.NavBarControl1.Groups.AddRange(New DevExpress.XtraNavBar.NavBarGroup() {Me.NavBarGroupMore, Me.NavBarGroupProfiles})
|
Me.NavBarControl1.Groups.AddRange(New DevExpress.XtraNavBar.NavBarGroup() {Me.NavBarGroupMore, Me.NavBarGroupProfiles})
|
||||||
Me.NavBarControl1.Items.AddRange(New DevExpress.XtraNavBar.NavBarItem() {Me.NavBarItemOverview})
|
Me.NavBarControl1.Items.AddRange(New DevExpress.XtraNavBar.NavBarItem() {Me.NavBarItemOverview})
|
||||||
|
resources.ApplyResources(Me.NavBarControl1, "NavBarControl1")
|
||||||
Me.NavBarControl1.Name = "NavBarControl1"
|
Me.NavBarControl1.Name = "NavBarControl1"
|
||||||
Me.NavBarControl1.OptionsNavPane.ExpandedWidth = CType(resources.GetObject("resource.ExpandedWidth"), Integer)
|
Me.NavBarControl1.OptionsNavPane.ExpandedWidth = CType(resources.GetObject("resource.ExpandedWidth"), Integer)
|
||||||
Me.NavBarControl1.PaintStyleKind = DevExpress.XtraNavBar.NavBarViewKind.NavigationPane
|
Me.NavBarControl1.PaintStyleKind = DevExpress.XtraNavBar.NavBarViewKind.NavigationPane
|
||||||
@@ -911,7 +948,6 @@ Partial Class frmMain
|
|||||||
'NavBarGroupMore
|
'NavBarGroupMore
|
||||||
'
|
'
|
||||||
resources.ApplyResources(Me.NavBarGroupMore, "NavBarGroupMore")
|
resources.ApplyResources(Me.NavBarGroupMore, "NavBarGroupMore")
|
||||||
Me.NavBarGroupMore.Expanded = True
|
|
||||||
Me.NavBarGroupMore.GroupStyle = DevExpress.XtraNavBar.NavBarGroupStyle.LargeIconsText
|
Me.NavBarGroupMore.GroupStyle = DevExpress.XtraNavBar.NavBarGroupStyle.LargeIconsText
|
||||||
Me.NavBarGroupMore.ImageOptions.LargeImage = CType(resources.GetObject("NavBarGroupMore.ImageOptions.LargeImage"), System.Drawing.Image)
|
Me.NavBarGroupMore.ImageOptions.LargeImage = CType(resources.GetObject("NavBarGroupMore.ImageOptions.LargeImage"), System.Drawing.Image)
|
||||||
Me.NavBarGroupMore.ItemLinks.AddRange(New DevExpress.XtraNavBar.NavBarItemLink() {New DevExpress.XtraNavBar.NavBarItemLink(Me.NavBarItemOverview)})
|
Me.NavBarGroupMore.ItemLinks.AddRange(New DevExpress.XtraNavBar.NavBarItemLink() {New DevExpress.XtraNavBar.NavBarItemLink(Me.NavBarItemOverview)})
|
||||||
@@ -1621,12 +1657,14 @@ Partial Class frmMain
|
|||||||
Me.StatusBar = Me.RibbonStatusBar1
|
Me.StatusBar = Me.RibbonStatusBar1
|
||||||
CType(Me.DD_DMSLiteDataSet, System.ComponentModel.ISupportInitialize).EndInit()
|
CType(Me.DD_DMSLiteDataSet, System.ComponentModel.ISupportInitialize).EndInit()
|
||||||
Me.Panel1.ResumeLayout(False)
|
Me.Panel1.ResumeLayout(False)
|
||||||
CType(Me.GridControlWorkflows, System.ComponentModel.ISupportInitialize).EndInit()
|
CType(Me.TreeList_Cockpit, System.ComponentModel.ISupportInitialize).EndInit()
|
||||||
CType(Me.GridViewWorkflows, System.ComponentModel.ISupportInitialize).EndInit()
|
|
||||||
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).EndInit()
|
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).EndInit()
|
||||||
CType(Me.RepositoryItemProgressBar1, System.ComponentModel.ISupportInitialize).EndInit()
|
CType(Me.RepositoryItemProgressBar1, System.ComponentModel.ISupportInitialize).EndInit()
|
||||||
CType(Me.cmbGridFontSize, System.ComponentModel.ISupportInitialize).EndInit()
|
CType(Me.cmbGridFontSize, System.ComponentModel.ISupportInitialize).EndInit()
|
||||||
CType(Me.RepositoryItemTrackBar1, System.ComponentModel.ISupportInitialize).EndInit()
|
CType(Me.RepositoryItemTrackBar1, System.ComponentModel.ISupportInitialize).EndInit()
|
||||||
|
CType(Me.ImageCollection1, System.ComponentModel.ISupportInitialize).EndInit()
|
||||||
|
CType(Me.GridControlWorkflows, System.ComponentModel.ISupportInitialize).EndInit()
|
||||||
|
CType(Me.GridViewWorkflows, System.ComponentModel.ISupportInitialize).EndInit()
|
||||||
Me.Panel2.ResumeLayout(False)
|
Me.Panel2.ResumeLayout(False)
|
||||||
Me.Panel2.PerformLayout()
|
Me.Panel2.PerformLayout()
|
||||||
CType(Me.NavBarControl1, System.ComponentModel.ISupportInitialize).EndInit()
|
CType(Me.NavBarControl1, System.ComponentModel.ISupportInitialize).EndInit()
|
||||||
@@ -1812,4 +1850,6 @@ Partial Class frmMain
|
|||||||
Friend WithEvents BSIVERSION1 As DevExpress.XtraBars.BarStaticItem
|
Friend WithEvents BSIVERSION1 As DevExpress.XtraBars.BarStaticItem
|
||||||
Friend WithEvents barbtnitmsaveLogfiles As DevExpress.XtraBars.BarButtonItem
|
Friend WithEvents barbtnitmsaveLogfiles As DevExpress.XtraBars.BarButtonItem
|
||||||
Friend WithEvents bsitmCount As DevExpress.XtraBars.BarStaticItem
|
Friend WithEvents bsitmCount As DevExpress.XtraBars.BarStaticItem
|
||||||
|
Friend WithEvents TreeList_Cockpit As DevExpress.XtraTreeList.TreeList
|
||||||
|
Friend WithEvents ImageCollection1 As DevExpress.Utils.ImageCollection
|
||||||
End Class
|
End Class
|
||||||
|
|||||||
@@ -125,7 +125,7 @@
|
|||||||
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
||||||
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
||||||
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADw
|
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADw
|
||||||
CAAAAk1TRnQBSQFMAgEBAgEAAQgBDAEIAQwBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
CAAAAk1TRnQBSQFMAgEBAgEAASABDAEgAQwBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||||
AwABQAMAARADAAEBAQABCAYAAQQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
|
AwABQAMAARADAAEBAQABCAYAAQQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
|
||||||
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
|
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
|
||||||
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
|
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
|
||||||
@@ -172,19 +172,12 @@
|
|||||||
<metadata name="TableAdapterManager.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
<metadata name="TableAdapterManager.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
<value>179, 17</value>
|
<value>179, 17</value>
|
||||||
</metadata>
|
</metadata>
|
||||||
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
|
||||||
<data name="GridControlWorkflows.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
|
||||||
<value>Fill</value>
|
|
||||||
</data>
|
|
||||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
<data name="GridControlWorkflows.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="TreeList_Cockpit.Font" type="System.Drawing.Font, System.Drawing">
|
||||||
<value>233, 24</value>
|
<value>Tahoma, 9.75pt</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="GridViewWorkflows.Appearance.FooterPanel.Font" type="System.Drawing.Font, System.Drawing">
|
<data name="TreeList_Cockpit.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>Microsoft Sans Serif, 8.25pt</value>
|
<value>3, 6</value>
|
||||||
</data>
|
|
||||||
<data name="GridViewWorkflows.Appearance.ViewCaption.Font" type="System.Drawing.Font, System.Drawing">
|
|
||||||
<value>Segoe UI, 12pt</value>
|
|
||||||
</data>
|
</data>
|
||||||
<data name="bbtniRefresh.Caption" xml:space="preserve">
|
<data name="bbtniRefresh.Caption" xml:space="preserve">
|
||||||
<value>Aktualisieren</value>
|
<value>Aktualisieren</value>
|
||||||
@@ -1538,8 +1531,128 @@
|
|||||||
<data name=">>RibbonControl1.ZOrder" xml:space="preserve">
|
<data name=">>RibbonControl1.ZOrder" xml:space="preserve">
|
||||||
<value>4</value>
|
<value>4</value>
|
||||||
</data>
|
</data>
|
||||||
|
<metadata name="ImageCollection1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>760, 54</value>
|
||||||
|
</metadata>
|
||||||
|
<data name="ImageCollection1.ImageSize" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>24, 24</value>
|
||||||
|
</data>
|
||||||
|
<data name="ImageCollection1.ImageStream" type="DevExpress.Utils.ImageCollectionStreamer, DevExpress.Utils.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
AAEAAAD/////AQAAAAAAAAAMAgAAAFpEZXZFeHByZXNzLlV0aWxzLnYyMS4yLCBWZXJzaW9uPTIxLjIu
|
||||||
|
NC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEMAwAAAFFT
|
||||||
|
eXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRv
|
||||||
|
a2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAAChEZXZFeHByZXNzLlV0aWxzLkltYWdlQ29sbGVjdGlvblN0
|
||||||
|
cmVhbWVyAgAAAAlJbWFnZVNpemUERGF0YQQHE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAAgIAAAAF/P//
|
||||||
|
/xNTeXN0ZW0uRHJhd2luZy5TaXplAgAAAAV3aWR0aAZoZWlnaHQAAAgIAwAAABgAAAAYAAAACQUAAAAP
|
||||||
|
BQAAAPQRAAACCgYAAIlQTkcNChoKAAAADUlIRFIAAAAYAAAAGAgGAAAA4Hc9+AAAAAFzUkdCAK7OHOkA
|
||||||
|
AAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA7DAAAOwwHHb6hkAAAFn0lEQVRIS72WaVBTVxiGL1W7bzPd
|
||||||
|
pHamta1VK+NoW2stY611bIutS1vqgqxGkEFgAIkbAuKCYgTZVYoLqyJJMAoIRVHZAgGCiODKlrCDQBay
|
||||||
|
kOXtnJsbCLSd6a/emXeSSSbP8+U73zn3UtT/dFlRFPWMRaZMytR/yTSLPDsp5HeES1mFpt6xCbv08Mz+
|
||||||
|
rCZuaFYTN+RCI3dfZiM3KLORuye9kbs77R6Xfb6exz5Xzws4U0fHL1nM802q4fmcruF5nxLxvRIr+Z4J
|
||||||
|
lXyPhEq+e7yQ73rshgMjoaxCMxo2NkkVMF9GJgYj0CSVw2A00u/1RiP0BlNG9UYIqjroV63OCI3OAM2o
|
||||||
|
ESqdAX0yDVgx5Xzmn1BWQWn1mxqlinEwCMwEzBf3QEeADFSrN0DDAI/xm6AaNUA1qseIxgCFRg+5Wg9J
|
||||||
|
vwpuUWU5FEU9TwTP7EkRO9yTKmgwqZRUbBIAebU9NFxLw5lKdQaoRw2I4DVBpTVgRGuAUqMfE7T3j8Al
|
||||||
|
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
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="TreeList_Cockpit.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>227, 352</value>
|
||||||
|
</data>
|
||||||
|
<data name="TreeList_Cockpit.TabIndex" type="System.Int32, mscorlib">
|
||||||
|
<value>11</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>TreeList_Cockpit.Name" xml:space="preserve">
|
||||||
|
<value>TreeList_Cockpit</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>TreeList_Cockpit.Type" xml:space="preserve">
|
||||||
|
<value>DevExpress.XtraTreeList.TreeList, DevExpress.XtraTreeList.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>TreeList_Cockpit.Parent" xml:space="preserve">
|
||||||
|
<value>Panel1</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>TreeList_Cockpit.ZOrder" xml:space="preserve">
|
||||||
|
<value>0</value>
|
||||||
|
</data>
|
||||||
|
<data name="GridControlWorkflows.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
|
<value>398, 24</value>
|
||||||
|
</data>
|
||||||
|
<data name="GridViewWorkflows.Appearance.FooterPanel.Font" type="System.Drawing.Font, System.Drawing">
|
||||||
|
<value>Microsoft Sans Serif, 8.25pt</value>
|
||||||
|
</data>
|
||||||
|
<data name="GridViewWorkflows.Appearance.ViewCaption.Font" type="System.Drawing.Font, System.Drawing">
|
||||||
|
<value>Segoe UI, 12pt</value>
|
||||||
|
</data>
|
||||||
<data name="GridControlWorkflows.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="GridControlWorkflows.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>1240, 656</value>
|
<value>1075, 656</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="GridControlWorkflows.TabIndex" type="System.Int32, mscorlib">
|
<data name="GridControlWorkflows.TabIndex" type="System.Int32, mscorlib">
|
||||||
<value>10</value>
|
<value>10</value>
|
||||||
@@ -1554,7 +1667,7 @@
|
|||||||
<value>Panel1</value>
|
<value>Panel1</value>
|
||||||
</data>
|
</data>
|
||||||
<data name=">>GridControlWorkflows.ZOrder" xml:space="preserve">
|
<data name=">>GridControlWorkflows.ZOrder" xml:space="preserve">
|
||||||
<value>0</value>
|
<value>1</value>
|
||||||
</data>
|
</data>
|
||||||
<data name=">>lblCaptionMainGrid.Name" xml:space="preserve">
|
<data name=">>lblCaptionMainGrid.Name" xml:space="preserve">
|
||||||
<value>lblCaptionMainGrid</value>
|
<value>lblCaptionMainGrid</value>
|
||||||
@@ -1568,9 +1681,6 @@
|
|||||||
<data name=">>lblCaptionMainGrid.ZOrder" xml:space="preserve">
|
<data name=">>lblCaptionMainGrid.ZOrder" xml:space="preserve">
|
||||||
<value>0</value>
|
<value>0</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Panel2.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
|
||||||
<value>Top</value>
|
|
||||||
</data>
|
|
||||||
<data name="Panel2.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="Panel2.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>233, 0</value>
|
<value>233, 0</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -1590,7 +1700,7 @@
|
|||||||
<value>Panel1</value>
|
<value>Panel1</value>
|
||||||
</data>
|
</data>
|
||||||
<data name=">>Panel2.ZOrder" xml:space="preserve">
|
<data name=">>Panel2.ZOrder" xml:space="preserve">
|
||||||
<value>1</value>
|
<value>2</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="NavBarGroupProfiles.Caption" xml:space="preserve">
|
<data name="NavBarGroupProfiles.Caption" xml:space="preserve">
|
||||||
<value>weitere Profile</value>
|
<value>weitere Profile</value>
|
||||||
@@ -1656,9 +1766,6 @@
|
|||||||
<data name=">>cmsNavPane.Type" xml:space="preserve">
|
<data name=">>cmsNavPane.Type" xml:space="preserve">
|
||||||
<value>System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
<value>System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="NavBarControl1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
|
||||||
<value>Left</value>
|
|
||||||
</data>
|
|
||||||
<data name="NavBarGroupMore.Caption" xml:space="preserve">
|
<data name="NavBarGroupMore.Caption" xml:space="preserve">
|
||||||
<value>Hauptansicht</value>
|
<value>Hauptansicht</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -1776,13 +1883,13 @@
|
|||||||
</value>
|
</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="NavBarControl1.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="NavBarControl1.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>0, 0</value>
|
<value>12, 375</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="resource.ExpandedWidth" type="System.Int32, mscorlib">
|
<data name="resource.ExpandedWidth" type="System.Int32, mscorlib">
|
||||||
<value>233</value>
|
<value>196</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="NavBarControl1.Size" type="System.Drawing.Size, System.Drawing">
|
<data name="NavBarControl1.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
<value>233, 680</value>
|
<value>196, 245</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="NavBarControl1.TabIndex" type="System.Int32, mscorlib">
|
<data name="NavBarControl1.TabIndex" type="System.Int32, mscorlib">
|
||||||
<value>5</value>
|
<value>5</value>
|
||||||
@@ -1800,8 +1907,9 @@
|
|||||||
<value>Panel1</value>
|
<value>Panel1</value>
|
||||||
</data>
|
</data>
|
||||||
<data name=">>NavBarControl1.ZOrder" xml:space="preserve">
|
<data name=">>NavBarControl1.ZOrder" xml:space="preserve">
|
||||||
<value>2</value>
|
<value>3</value>
|
||||||
</data>
|
</data>
|
||||||
|
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||||
<data name="Panel1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
<data name="Panel1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||||
<value>Fill</value>
|
<value>Fill</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -2309,12 +2417,6 @@
|
|||||||
<data name=">>TableAdapterManager.Type" xml:space="preserve">
|
<data name=">>TableAdapterManager.Type" xml:space="preserve">
|
||||||
<value>taskFLOW.DD_DMSLiteDataSetTableAdapters.TableAdapterManager, DD_DMSLiteDataSet.Designer.vb.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value>
|
<value>taskFLOW.DD_DMSLiteDataSetTableAdapters.TableAdapterManager, DD_DMSLiteDataSet.Designer.vb.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value>
|
||||||
</data>
|
</data>
|
||||||
<data name=">>GridViewWorkflows.Name" xml:space="preserve">
|
|
||||||
<value>GridViewWorkflows</value>
|
|
||||||
</data>
|
|
||||||
<data name=">>GridViewWorkflows.Type" xml:space="preserve">
|
|
||||||
<value>DevExpress.XtraGrid.Views.Grid.GridView, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
|
|
||||||
</data>
|
|
||||||
<data name=">>bbtniRefresh.Name" xml:space="preserve">
|
<data name=">>bbtniRefresh.Name" xml:space="preserve">
|
||||||
<value>bbtniRefresh</value>
|
<value>bbtniRefresh</value>
|
||||||
</data>
|
</data>
|
||||||
@@ -2717,6 +2819,18 @@
|
|||||||
<data name=">>RepositoryItemTrackBar1.Type" xml:space="preserve">
|
<data name=">>RepositoryItemTrackBar1.Type" xml:space="preserve">
|
||||||
<value>DevExpress.XtraEditors.Repository.RepositoryItemTrackBar, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
|
<value>DevExpress.XtraEditors.Repository.RepositoryItemTrackBar, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name=">>ImageCollection1.Name" xml:space="preserve">
|
||||||
|
<value>ImageCollection1</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>ImageCollection1.Type" xml:space="preserve">
|
||||||
|
<value>DevExpress.Utils.ImageCollection, DevExpress.Utils.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>GridViewWorkflows.Name" xml:space="preserve">
|
||||||
|
<value>GridViewWorkflows</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>GridViewWorkflows.Type" xml:space="preserve">
|
||||||
|
<value>DevExpress.XtraGrid.Views.Grid.GridView, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
|
||||||
|
</data>
|
||||||
<data name=">>NavBarGroupProfiles.Name" xml:space="preserve">
|
<data name=">>NavBarGroupProfiles.Name" xml:space="preserve">
|
||||||
<value>NavBarGroupProfiles</value>
|
<value>NavBarGroupProfiles</value>
|
||||||
</data>
|
</data>
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ Public Class frmMain
|
|||||||
Private GridCursorLocation As System.Drawing.Point
|
Private GridCursorLocation As System.Drawing.Point
|
||||||
Private GRID_LOAD_TYPE As String = "OVERVIEW"
|
Private GRID_LOAD_TYPE As String = "OVERVIEW"
|
||||||
Private GRID_INV_COL_REMOVED As Boolean = False
|
Private GRID_INV_COL_REMOVED As Boolean = False
|
||||||
Private NO_WORKFLOWITEMS As Boolean = False
|
Private NO_WORKFLOW_ITEMS As Boolean = False
|
||||||
Private InResetlayout As Boolean = False
|
Private InResetlayout As Boolean = False
|
||||||
Private RefreshHelper As RefreshHelper
|
Private RefreshHelper As RefreshHelper
|
||||||
Private _FormValidator As frmValidator
|
Private _FormValidator As frmValidator
|
||||||
@@ -72,6 +72,9 @@ Public Class frmMain
|
|||||||
Private Const FA_NONE = "NONE"
|
Private Const FA_NONE = "NONE"
|
||||||
Public Const NAVBAR_CLICKED = "NAVBAR LINK CLICKED"
|
Public Const NAVBAR_CLICKED = "NAVBAR LINK CLICKED"
|
||||||
|
|
||||||
|
Private CUSTOM_OVERVIEW_SQL As String = String.Empty
|
||||||
|
Private COCKPIT_CONFIG_ID As Integer = 0
|
||||||
|
|
||||||
|
|
||||||
Private Class S
|
Private Class S
|
||||||
Inherits My.Resources.frmMain_Strings
|
Inherits My.Resources.frmMain_Strings
|
||||||
@@ -399,6 +402,10 @@ Public Class frmMain
|
|||||||
LOGGER.Error(ex)
|
LOGGER.Error(ex)
|
||||||
MsgBox("Unexpected Error in LoadForm - Step 4: " & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Attention:")
|
MsgBox("Unexpected Error in LoadForm - Step 4: " & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Attention:")
|
||||||
End Try
|
End Try
|
||||||
|
|
||||||
|
Load_Treeview()
|
||||||
|
|
||||||
|
|
||||||
LoadNavBar()
|
LoadNavBar()
|
||||||
AddHandler NavBarControl1.LinkClicked, AddressOf navBar_LinkClicked
|
AddHandler NavBarControl1.LinkClicked, AddressOf navBar_LinkClicked
|
||||||
If Not IsNothing(CURR_DT_VWPM_PROFILE_AH_WORKFLOW) Then
|
If Not IsNothing(CURR_DT_VWPM_PROFILE_AH_WORKFLOW) Then
|
||||||
@@ -542,6 +549,124 @@ Public Class frmMain
|
|||||||
|
|
||||||
FormOpenClose = False
|
FormOpenClose = False
|
||||||
End Sub
|
End Sub
|
||||||
|
Private Sub Load_Treeview()
|
||||||
|
Try
|
||||||
|
Dim oSQL = $"SELECT * FROM [dbo].[FNTF_GET_COCKPIT_DEFINITION] ({USER_ID},'{USER_LANGUAGE}')"
|
||||||
|
Dim oDT_STRUCTURE_NODES As DataTable = DatabaseFallback.GetDatatableECM(oSQL)
|
||||||
|
If Not IsNothing(oDT_STRUCTURE_NODES) Then
|
||||||
|
If oDT_STRUCTURE_NODES.Rows.Count > 0 Then
|
||||||
|
TreeList_Cockpit.BeginUpdate()
|
||||||
|
Try
|
||||||
|
TreeList_Cockpit.DataSource = oDT_STRUCTURE_NODES
|
||||||
|
TreeList_Cockpit.KeyFieldName = "PK_CFG_COCKPIT_DEFINITION_ID"
|
||||||
|
TreeList_Cockpit.ParentFieldName = "PARENT_ID"
|
||||||
|
TreeList_Cockpit.Columns("PK_RESULT_ID").SortOrder = SortOrder.Ascending
|
||||||
|
|
||||||
|
|
||||||
|
' ===== MODERNES DESIGN =====
|
||||||
|
' Schriftgröße und -art
|
||||||
|
TreeList_Cockpit.Appearance.Row.Font = New Font("Segoe UI", 12, FontStyle.Regular)
|
||||||
|
TreeList_Cockpit.Appearance.FocusedRow.Font = New Font("Segoe UI", 12, FontStyle.Bold)
|
||||||
|
TreeList_Cockpit.Appearance.HideSelectionRow.Font = New Font("Segoe UI", 12, FontStyle.Regular)
|
||||||
|
|
||||||
|
' Modernes Farbschema (passend zum Office2019-Skin)
|
||||||
|
TreeList_Cockpit.Appearance.Row.BackColor = Color.White
|
||||||
|
TreeList_Cockpit.Appearance.Row.ForeColor = Color.FromArgb(50, 50, 50)
|
||||||
|
TreeList_Cockpit.Appearance.FocusedRow.BackColor = Color.FromArgb(210, 230, 255)
|
||||||
|
TreeList_Cockpit.Appearance.FocusedRow.ForeColor = Color.FromArgb(20, 20, 20)
|
||||||
|
TreeList_Cockpit.Appearance.HideSelectionRow.BackColor = Color.FromArgb(225, 235, 250)
|
||||||
|
TreeList_Cockpit.Appearance.HideSelectionRow.ForeColor = Color.FromArgb(50, 50, 50)
|
||||||
|
|
||||||
|
' Zeilenhöhe erhöhen für bessere Lesbarkeit
|
||||||
|
TreeList_Cockpit.RowHeight = 28
|
||||||
|
|
||||||
|
|
||||||
|
Dim oVisibleColumns As New System.Collections.Generic.HashSet(Of String)(StringComparer.OrdinalIgnoreCase) From {"NAME"}
|
||||||
|
For Each oColumn As DevExpress.XtraTreeList.Columns.TreeListColumn In TreeList_Cockpit.Columns
|
||||||
|
oColumn.Visible = oVisibleColumns.Contains(oColumn.FieldName)
|
||||||
|
Next
|
||||||
|
Finally
|
||||||
|
TreeList_Cockpit.EndUpdate()
|
||||||
|
End Try
|
||||||
|
' AddHandler TreeList1.GetSelectImage, AddressOf TreeList1_GetSelectImage
|
||||||
|
TreeList_Cockpit.Refresh() ' ✅ Erzwingt sofortiges Neuzeichnen der Icons
|
||||||
|
|
||||||
|
|
||||||
|
' ===== ANZAHL ASYNCHRON NACHLADEN =====
|
||||||
|
If oDT_STRUCTURE_NODES.Columns.Contains("SQL_QUERY_COUNT") Then
|
||||||
|
AppendCountsToTreeAsync()
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
Catch ex As Exception
|
||||||
|
LOGGER.Error(ex)
|
||||||
|
End Try
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
Private Async Sub AppendCountsToTreeAsync()
|
||||||
|
Try
|
||||||
|
LOGGER.Debug("AppendCountsToTreeAsync: Starting background count queries...")
|
||||||
|
|
||||||
|
' Alle Knoten mit ihren SQL-Befehlen im UI-Thread über NodesIterator einsammeln
|
||||||
|
Dim oWorkItems As New List(Of (Node As DevExpress.XtraTreeList.Nodes.TreeListNode, SQL As String, OriginalName As String))
|
||||||
|
|
||||||
|
TreeList_Cockpit.NodesIterator.DoOperation(
|
||||||
|
Sub(oNode As DevExpress.XtraTreeList.Nodes.TreeListNode)
|
||||||
|
Dim oSqlCount As Object = oNode.GetValue("SQL_QUERY_COUNT")
|
||||||
|
If oSqlCount IsNot Nothing AndAlso Not IsDBNull(oSqlCount) AndAlso Not String.IsNullOrWhiteSpace(oSqlCount.ToString()) Then
|
||||||
|
Dim oPreparedSQL As String = PrepareSQLWithReplacements(oSqlCount.ToString())
|
||||||
|
Dim oName As String = oNode.GetValue("NAME")?.ToString()
|
||||||
|
If Not String.IsNullOrWhiteSpace(oName) Then
|
||||||
|
oWorkItems.Add((oNode, oPreparedSQL, oName))
|
||||||
|
End If
|
||||||
|
Else
|
||||||
|
LOGGER.Debug($"AppendCountsToTreeAsync: Node [{oNode.GetValue("NAME")}] has no valid SQL_QUERY_COUNT, skipping.")
|
||||||
|
End If
|
||||||
|
End Sub)
|
||||||
|
|
||||||
|
If oWorkItems.Count = 0 Then
|
||||||
|
Exit Sub
|
||||||
|
End If
|
||||||
|
|
||||||
|
LOGGER.Debug($"AppendCountsToTreeAsync: {oWorkItems.Count} node(s) with SQL_QUERY_COUNT found")
|
||||||
|
|
||||||
|
' DB-Abfragen parallel im Hintergrund ausführen
|
||||||
|
Dim oResults As New List(Of (Node As DevExpress.XtraTreeList.Nodes.TreeListNode, OriginalName As String, Count As String))
|
||||||
|
|
||||||
|
Await Task.Run(Sub()
|
||||||
|
For Each oItem In oWorkItems
|
||||||
|
Try
|
||||||
|
Dim oResult As Object = DatabaseFallback.GetScalarValueECM(oItem.SQL)
|
||||||
|
If oResult IsNot Nothing AndAlso Not IsDBNull(oResult) Then
|
||||||
|
SyncLock oResults
|
||||||
|
oResults.Add((oItem.Node, oItem.OriginalName, oResult.ToString()))
|
||||||
|
End SyncLock
|
||||||
|
End If
|
||||||
|
Catch ex As Exception
|
||||||
|
LOGGER.Warn($"AppendCountsToTreeAsync: Count query failed for node [{oItem.OriginalName}] - {ex.Message}")
|
||||||
|
End Try
|
||||||
|
Next
|
||||||
|
End Sub)
|
||||||
|
|
||||||
|
' Ergebnisse zurück im UI-Thread auf die Knoten schreiben
|
||||||
|
TreeList_Cockpit.BeginUpdate()
|
||||||
|
Try
|
||||||
|
For Each oResult In oResults
|
||||||
|
oResult.Node.SetValue("NAME", $"{oResult.OriginalName} ({oResult.Count})")
|
||||||
|
LOGGER.Debug($"AppendCountsToTreeAsync: Node [{oResult.OriginalName}] → [{oResult.OriginalName} ({oResult.Count})]")
|
||||||
|
Next
|
||||||
|
Finally
|
||||||
|
TreeList_Cockpit.EndUpdate()
|
||||||
|
End Try
|
||||||
|
|
||||||
|
TreeList_Cockpit.Refresh()
|
||||||
|
LOGGER.Debug("AppendCountsToTreeAsync: Finished")
|
||||||
|
|
||||||
|
Catch ex As Exception
|
||||||
|
LOGGER.Error(ex)
|
||||||
|
End Try
|
||||||
|
End Sub
|
||||||
|
|
||||||
Private Function IsPositionVisible(position As System.Drawing.Point) As Boolean
|
Private Function IsPositionVisible(position As System.Drawing.Point) As Boolean
|
||||||
For Each scr As Screen In Screen.AllScreens
|
For Each scr As Screen In Screen.AllScreens
|
||||||
If scr.WorkingArea.Contains(position) Then
|
If scr.WorkingArea.Contains(position) Then
|
||||||
@@ -686,14 +811,21 @@ Public Class frmMain
|
|||||||
End Function
|
End Function
|
||||||
|
|
||||||
Private Function GetLayoutName_GridMain()
|
Private Function GetLayoutName_GridMain()
|
||||||
Dim Filename As String = String.Format("DevExpressGridViewOverview_UserLayout_{0}_{1}.xml", GRID_LOAD_TYPE, USER_LANGUAGE)
|
Dim oLoadTypeSuffix As String = GRID_LOAD_TYPE
|
||||||
|
|
||||||
|
' Bei mehreren Gesamtübersichten die COCKPIT_CONFIG_ID als Suffix anhängen
|
||||||
|
If GRID_LOAD_TYPE = "OVERVIEW" AndAlso COCKPIT_CONFIG_ID > 0 Then
|
||||||
|
oLoadTypeSuffix = $"OVERVIEW_{COCKPIT_CONFIG_ID}"
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim Filename As String = String.Format("DevExpressGridViewOverview_UserLayout_{0}_{1}.xml", oLoadTypeSuffix, USER_LANGUAGE)
|
||||||
LOGGER.Debug($"LayoutFilename is: {Filename}")
|
LOGGER.Debug($"LayoutFilename is: {Filename}")
|
||||||
Return System.IO.Path.Combine(USER_CONFIG_DIRECTORY, Filename)
|
Return System.IO.Path.Combine(USER_CONFIG_DIRECTORY, Filename)
|
||||||
End Function
|
End Function
|
||||||
|
|
||||||
Private Sub SaveGridLayout()
|
Private Sub SaveGridLayout()
|
||||||
Timer_Inactivity_Reset_Disable("SaveGridLayout")
|
Timer_Inactivity_Reset_Disable("SaveGridLayout")
|
||||||
If NO_WORKFLOWITEMS = True Then
|
If NO_WORKFLOW_ITEMS = True Then
|
||||||
Exit Sub
|
Exit Sub
|
||||||
End If
|
End If
|
||||||
|
|
||||||
@@ -708,7 +840,7 @@ Public Class frmMain
|
|||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub RestoreLayout()
|
Private Sub RestoreLayout()
|
||||||
If NO_WORKFLOWITEMS = True Then
|
If NO_WORKFLOW_ITEMS = True Then
|
||||||
Exit Sub
|
Exit Sub
|
||||||
End If
|
End If
|
||||||
|
|
||||||
@@ -1090,13 +1222,13 @@ Public Class frmMain
|
|||||||
Dim oCOUNT = DT_CURR_WF_ITEMS.Rows.Count
|
Dim oCOUNT = DT_CURR_WF_ITEMS.Rows.Count
|
||||||
|
|
||||||
' Workflowitems-Status setzen
|
' Workflowitems-Status setzen
|
||||||
NO_WORKFLOWITEMS = (oCOUNT = 0)
|
NO_WORKFLOW_ITEMS = (oCOUNT = 0)
|
||||||
|
|
||||||
' Caption IMMER aktualisieren (vor Hash-Prüfung!)
|
' Caption IMMER aktualisieren (vor Hash-Prüfung!)
|
||||||
UpdateGridCaption()
|
UpdateGridCaption()
|
||||||
|
|
||||||
' Datenquelle bei leeren Items zurücksetzen
|
' Datenquelle bei leeren Items zurücksetzen
|
||||||
If NO_WORKFLOWITEMS Then
|
If NO_WORKFLOW_ITEMS Then
|
||||||
GridControlWorkflows.Visible = False
|
GridControlWorkflows.Visible = False
|
||||||
bindsourcegrid.DataSource = Nothing
|
bindsourcegrid.DataSource = Nothing
|
||||||
GridControlWorkflows.DataSource = Nothing
|
GridControlWorkflows.DataSource = Nothing
|
||||||
@@ -1463,12 +1595,13 @@ Public Class frmMain
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
If Not loadSuccess Then
|
If Not loadSuccess Then
|
||||||
LOGGER.Warn("Daten konnten nicht geladen werden")
|
LOGGER.Warn($"LoadProfileData for Profile-ID [{CURRENT_CLICKED_PROFILE_ID}] - Title [{CURRENT_CLICKED_PROFILE_TITLE}] failed or has no Data - exiting Decide_Load")
|
||||||
Exit Function
|
Exit Function
|
||||||
End If
|
End If
|
||||||
|
|
||||||
' ========== NACHBEARBEITUNG ==========
|
' ========== NACHBEARBEITUNG ==========
|
||||||
ApplyPostLoadSettings()
|
ApplyPostLoadSettings()
|
||||||
|
|
||||||
GridIsLoaded = True
|
GridIsLoaded = True
|
||||||
' ========== CAPTION FINAL SICHERSTELLEN ==========
|
' ========== CAPTION FINAL SICHERSTELLEN ==========
|
||||||
' ApplyPostLoadSettings kann durch Spalten-Events den Caption überschreiben,
|
' ApplyPostLoadSettings kann durch Spalten-Events den Caption überschreiben,
|
||||||
@@ -1514,6 +1647,7 @@ Public Class frmMain
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
Try
|
Try
|
||||||
|
GridControlWorkflows_Visible()
|
||||||
' ========== GRID UPDATES VORBEREITEN ==========
|
' ========== GRID UPDATES VORBEREITEN ==========
|
||||||
If GridControlWorkflows.Visible Then
|
If GridControlWorkflows.Visible Then
|
||||||
GridControlWorkflows.BeginUpdate()
|
GridControlWorkflows.BeginUpdate()
|
||||||
@@ -1525,7 +1659,7 @@ Public Class frmMain
|
|||||||
' ========== PROFILE VALIDIEREN ==========
|
' ========== PROFILE VALIDIEREN ==========
|
||||||
If BASEDATA_DT_VW_PROFILE_USER.Rows.Count = 0 Then
|
If BASEDATA_DT_VW_PROFILE_USER.Rows.Count = 0 Then
|
||||||
LOGGER.Info("Attention: No profiles for user: '" & USER_USERNAME & "' configured!", False)
|
LOGGER.Info("Attention: No profiles for user: '" & USER_USERNAME & "' configured!", False)
|
||||||
NO_WORKFLOWITEMS = True
|
NO_WORKFLOW_ITEMS = True
|
||||||
bsiMessage.Caption = "NO PROFILES FOR USER"
|
bsiMessage.Caption = "NO PROFILES FOR USER"
|
||||||
bsiMessage.ItemAppearance.Normal.BackColor = Color.Red
|
bsiMessage.ItemAppearance.Normal.BackColor = Color.Red
|
||||||
bsiMessage.ItemAppearance.Normal.ForeColor = Color.Black
|
bsiMessage.ItemAppearance.Normal.ForeColor = Color.Black
|
||||||
@@ -1550,10 +1684,18 @@ Public Class frmMain
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
' ========== SQL VORBEREITEN ==========
|
' ========== SQL VORBEREITEN ==========
|
||||||
Dim oSQLOverview = BASEDATA_DT_CONFIG.Rows(0).Item("SQL_PROFILE_MAIN_VIEW")
|
Dim oSQLOverview As String
|
||||||
|
If Not String.IsNullOrWhiteSpace(CUSTOM_OVERVIEW_SQL) Then
|
||||||
|
LOGGER.Debug($"[LoadOverviewData] Using CUSTOM_OVERVIEW_SQL from TreeList node")
|
||||||
|
oSQLOverview = CUSTOM_OVERVIEW_SQL
|
||||||
|
CUSTOM_OVERVIEW_SQL = String.Empty
|
||||||
|
Else
|
||||||
|
oSQLOverview = BASEDATA_DT_CONFIG.Rows(0).Item("SQL_PROFILE_MAIN_VIEW")
|
||||||
|
End If
|
||||||
|
|
||||||
If IsDBNull(oSQLOverview) OrElse Not oSQLOverview.ToString.Contains("GROUP_TEXT") Then
|
If IsDBNull(oSQLOverview) OrElse Not oSQLOverview.ToString.Contains("GROUP_TEXT") Then
|
||||||
NO_WORKFLOWITEMS = True
|
LOGGER.Warn("Overview SQL is Null or not properly configured (missing or GROUP_TEXT column) - cannot load overview data")
|
||||||
|
NO_WORKFLOW_ITEMS = True
|
||||||
GridControlWorkflows.Visible = False
|
GridControlWorkflows.Visible = False
|
||||||
bindsourcegrid.DataSource = Nothing
|
bindsourcegrid.DataSource = Nothing
|
||||||
GridControlWorkflows.DataSource = Nothing
|
GridControlWorkflows.DataSource = Nothing
|
||||||
@@ -1583,7 +1725,7 @@ Public Class frmMain
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
If IsNothing(DT_CURR_WF_ITEMS) Then
|
If IsNothing(DT_CURR_WF_ITEMS) Then
|
||||||
NO_WORKFLOWITEMS = True
|
NO_WORKFLOW_ITEMS = True
|
||||||
GridControlWorkflows.Visible = False
|
GridControlWorkflows.Visible = False
|
||||||
Return False
|
Return False
|
||||||
End If
|
End If
|
||||||
@@ -1591,10 +1733,10 @@ Public Class frmMain
|
|||||||
LOGGER.Debug($"Datatable CURR_DT_OVERVIEW loaded: {DT_CURR_WF_ITEMS.Rows.Count} rows")
|
LOGGER.Debug($"Datatable CURR_DT_OVERVIEW loaded: {DT_CURR_WF_ITEMS.Rows.Count} rows")
|
||||||
|
|
||||||
' ========== DATEN VERARBEITEN ==========
|
' ========== DATEN VERARBEITEN ==========
|
||||||
NO_WORKFLOWITEMS = (DT_CURR_WF_ITEMS.Rows.Count = 0)
|
NO_WORKFLOW_ITEMS = (DT_CURR_WF_ITEMS.Rows.Count = 0)
|
||||||
UpdateGridCaption()
|
UpdateGridCaption()
|
||||||
|
|
||||||
If NO_WORKFLOWITEMS Then
|
If NO_WORKFLOW_ITEMS Then
|
||||||
GridControlWorkflows.Visible = False
|
GridControlWorkflows.Visible = False
|
||||||
bindsourcegrid.DataSource = Nothing
|
bindsourcegrid.DataSource = Nothing
|
||||||
GridControlWorkflows.DataSource = Nothing
|
GridControlWorkflows.DataSource = Nothing
|
||||||
@@ -1687,14 +1829,13 @@ Public Class frmMain
|
|||||||
Load_Profiles_for_User()
|
Load_Profiles_for_User()
|
||||||
|
|
||||||
Dim expression As String = "GUID = " & CURRENT_CLICKED_PROFILE_ID
|
Dim expression As String = "GUID = " & CURRENT_CLICKED_PROFILE_ID
|
||||||
Dim foundRow As DataRow = CURR_DT_VWPM_PROFILE_ACTIVE.Select(expression).FirstOrDefault()
|
|
||||||
|
Dim foundRow As DataRow = CURRENT_DT_PROFILES.Select(expression).FirstOrDefault()
|
||||||
If foundRow Is Nothing Then
|
If foundRow Is Nothing Then
|
||||||
|
LOGGER.Warn($"LoadProfileData for Profile-ID [{CURRENT_CLICKED_PROFILE_ID}] - Title [{CURRENT_CLICKED_PROFILE_TITLE}] not found - exiting Decide_Load")
|
||||||
Return False
|
Return False
|
||||||
End If
|
End If
|
||||||
|
|
||||||
' === FIX: Grid sichtbar machen bevor BeginUpdate ===
|
|
||||||
GridControlWorkflows_Visible()
|
|
||||||
|
|
||||||
If GridControlWorkflows.Visible Then
|
If GridControlWorkflows.Visible Then
|
||||||
GridControlWorkflows.BeginUpdate()
|
GridControlWorkflows.BeginUpdate()
|
||||||
gridUpdateStarted = True
|
gridUpdateStarted = True
|
||||||
@@ -1709,22 +1850,22 @@ Public Class frmMain
|
|||||||
DT_CURR_WF_ITEMS = Await DatabaseFallback.GetDatatableECMAsync(oSQL)
|
DT_CURR_WF_ITEMS = Await DatabaseFallback.GetDatatableECMAsync(oSQL)
|
||||||
|
|
||||||
If IsNothing(DT_CURR_WF_ITEMS) Then
|
If IsNothing(DT_CURR_WF_ITEMS) Then
|
||||||
LOGGER.Warn("Daten konnten nicht geladen werden für Profil: " & CURRENT_CLICKED_PROFILE_TITLE)
|
LOGGER.Warn($"LoadProfileData for Profile-ID [{CURRENT_CLICKED_PROFILE_ID}] - Title [{CURRENT_CLICKED_PROFILE_TITLE}] failed - exiting Decide_Load")
|
||||||
Return False
|
Return False
|
||||||
End If
|
End If
|
||||||
|
|
||||||
' ========== DATEN VERARBEITEN ==========
|
' ========== DATEN VERARBEITEN ==========
|
||||||
NO_WORKFLOWITEMS = (DT_CURR_WF_ITEMS.Rows.Count = 0)
|
NO_WORKFLOW_ITEMS = (DT_CURR_WF_ITEMS.Rows.Count = 0)
|
||||||
UpdateGridCaption()
|
UpdateGridCaption()
|
||||||
|
|
||||||
If NO_WORKFLOWITEMS Then
|
If NO_WORKFLOW_ITEMS Then
|
||||||
GridControlWorkflows.Visible = False
|
GridControlWorkflows.Visible = False
|
||||||
bindsourcegrid.DataSource = Nothing
|
bindsourcegrid.DataSource = Nothing
|
||||||
GridControlWorkflows.DataSource = Nothing
|
GridControlWorkflows.DataSource = Nothing
|
||||||
LOGGER.Info("Keine Workflow-Items für Profil: " & CURRENT_CLICKED_PROFILE_TITLE)
|
LOGGER.Info("Keine Workflow-Items für Profil: " & CURRENT_CLICKED_PROFILE_TITLE)
|
||||||
Return False
|
Return False
|
||||||
End If
|
End If
|
||||||
|
GridControlWorkflows_Visible()
|
||||||
' ========== BASIC VIEW ERSTELLEN ==========
|
' ========== BASIC VIEW ERSTELLEN ==========
|
||||||
Await CreateBasicViewForProfile()
|
Await CreateBasicViewForProfile()
|
||||||
LOGGER.Debug("Basic View für Profil erstellt: " & CURRENT_CLICKED_PROFILE_TITLE)
|
LOGGER.Debug("Basic View für Profil erstellt: " & CURRENT_CLICKED_PROFILE_TITLE)
|
||||||
@@ -2602,7 +2743,7 @@ Public Class frmMain
|
|||||||
' ========== DATEN VALIDIEREN ==========
|
' ========== DATEN VALIDIEREN ==========
|
||||||
If BASEDATA_DT_VW_PROFILE_USER.Rows.Count = 0 Then
|
If BASEDATA_DT_VW_PROFILE_USER.Rows.Count = 0 Then
|
||||||
LOGGER.Info("Attention: No profiles for user: '" & USER_USERNAME & "' configured!", False)
|
LOGGER.Info("Attention: No profiles for user: '" & USER_USERNAME & "' configured!", False)
|
||||||
NO_WORKFLOWITEMS = True
|
NO_WORKFLOW_ITEMS = True
|
||||||
bsiMessage.Caption = "NO PROFILES FOR USER"
|
bsiMessage.Caption = "NO PROFILES FOR USER"
|
||||||
bsiMessage.ItemAppearance.Normal.BackColor = Color.Red
|
bsiMessage.ItemAppearance.Normal.BackColor = Color.Red
|
||||||
bsiMessage.ItemAppearance.Normal.ForeColor = Color.Black
|
bsiMessage.ItemAppearance.Normal.ForeColor = Color.Black
|
||||||
@@ -2637,7 +2778,7 @@ Public Class frmMain
|
|||||||
If oSQLOverview.ToString.Contains("GROUP_TEXT") = False Then
|
If oSQLOverview.ToString.Contains("GROUP_TEXT") = False Then
|
||||||
LOGGER.Info($"SQL SO FAR: {oSQLOverview} ")
|
LOGGER.Info($"SQL SO FAR: {oSQLOverview} ")
|
||||||
FormHelper.ShowInfoMessage("Incomplete Overview-Source (No Group-Columns). Column", omsgTitleWarning)
|
FormHelper.ShowInfoMessage("Incomplete Overview-Source (No Group-Columns). Column", omsgTitleWarning)
|
||||||
NO_WORKFLOWITEMS = True
|
NO_WORKFLOW_ITEMS = True
|
||||||
GridControlWorkflows.Visible = False
|
GridControlWorkflows.Visible = False
|
||||||
bindsourcegrid.DataSource = Nothing
|
bindsourcegrid.DataSource = Nothing
|
||||||
GridControlWorkflows.DataSource = Nothing
|
GridControlWorkflows.DataSource = Nothing
|
||||||
@@ -2667,8 +2808,8 @@ Public Class frmMain
|
|||||||
If LOG_HOTSPOTS Then
|
If LOG_HOTSPOTS Then
|
||||||
Dim elapsed = (DateTime.Now - perfStep).TotalMilliseconds
|
Dim elapsed = (DateTime.Now - perfStep).TotalMilliseconds
|
||||||
Dim rowCount = If(DT_CURR_WF_ITEMS IsNot Nothing, DT_CURR_WF_ITEMS.Rows.Count, 0)
|
Dim rowCount = If(DT_CURR_WF_ITEMS IsNot Nothing, DT_CURR_WF_ITEMS.Rows.Count, 0)
|
||||||
If elapsed > 4000 Then
|
If elapsed > 4500 Then
|
||||||
LOGGER.Warn($"[PERF LGO] ⚠️ Datenbank-Abfrage Overview LANGSAM: {elapsed}ms ({rowCount} Zeilen) (Schwellwert: 4000ms) - SQL prüfen!")
|
LOGGER.Warn($"[PERF LGO] ⚠️ Datenbank-Abfrage Overview LANGSAM: {elapsed}ms ({rowCount} Zeilen) (Schwellwert: 4500ms) - SQL prüfen!")
|
||||||
Else
|
Else
|
||||||
LOGGER.Info($"[PERF LGO] Datenbank-Abfrage Overview: {elapsed}ms ({rowCount} Zeilen)")
|
LOGGER.Info($"[PERF LGO] Datenbank-Abfrage Overview: {elapsed}ms ({rowCount} Zeilen)")
|
||||||
End If
|
End If
|
||||||
@@ -2676,7 +2817,7 @@ Public Class frmMain
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
If IsNothing(DT_CURR_WF_ITEMS) Then
|
If IsNothing(DT_CURR_WF_ITEMS) Then
|
||||||
NO_WORKFLOWITEMS = True
|
NO_WORKFLOW_ITEMS = True
|
||||||
GridControlWorkflows.Visible = False
|
GridControlWorkflows.Visible = False
|
||||||
GridControlWorkflows.DataSource = Nothing
|
GridControlWorkflows.DataSource = Nothing
|
||||||
Try
|
Try
|
||||||
@@ -2694,10 +2835,10 @@ Public Class frmMain
|
|||||||
Dim oChanged = GET_LAST_CHANGED(DT_CURR_WF_ITEMS)
|
Dim oChanged = GET_LAST_CHANGED(DT_CURR_WF_ITEMS)
|
||||||
Dim oCOUNT = DT_CURR_WF_ITEMS.Rows.Count
|
Dim oCOUNT = DT_CURR_WF_ITEMS.Rows.Count
|
||||||
|
|
||||||
NO_WORKFLOWITEMS = (oCOUNT = 0)
|
NO_WORKFLOW_ITEMS = (oCOUNT = 0)
|
||||||
UpdateGridCaption()
|
UpdateGridCaption()
|
||||||
|
|
||||||
If NO_WORKFLOWITEMS Then
|
If NO_WORKFLOW_ITEMS Then
|
||||||
GridControlWorkflows.Visible = False
|
GridControlWorkflows.Visible = False
|
||||||
bindsourcegrid.DataSource = Nothing
|
bindsourcegrid.DataSource = Nothing
|
||||||
GridControlWorkflows.DataSource = Nothing
|
GridControlWorkflows.DataSource = Nothing
|
||||||
@@ -3287,8 +3428,19 @@ FROM VWPM_PROFILE_ACTIVE T WHERE T.GUID IN (SELECT PROFILE_ID FROM [dbo].[FNPM_G
|
|||||||
CurrNavBarGroup = NavBarControl1.Groups(1)
|
CurrNavBarGroup = NavBarControl1.Groups(1)
|
||||||
FormShown = True
|
FormShown = True
|
||||||
Timer_Inactivity_Reset_Disable("Decide_Load")
|
Timer_Inactivity_Reset_Disable("Decide_Load")
|
||||||
LOGGER.Debug("FormShown..Now Decide_Load...")
|
|
||||||
Await Decide_Load(True)
|
' ===== ERSTEN KNOTEN AUSWÄHLEN (löst FocusedNodeChanged → Decide_Load aus) =====
|
||||||
|
Dim oFirstNode As DevExpress.XtraTreeList.Nodes.TreeListNode = TreeList_Cockpit.Nodes.FirstOrDefault()
|
||||||
|
If oFirstNode IsNot Nothing Then
|
||||||
|
LOGGER.Debug($"Selecting first TreeList node: [{oFirstNode.GetValue("NAME")}]")
|
||||||
|
TreeList_Cockpit.FocusedNode = oFirstNode
|
||||||
|
' FocusedNodeChanged nicht zuverlässig bei programmatischer Zuweisung → direkt aufrufen
|
||||||
|
Await ProcessTreeListNodeAsync(oFirstNode)
|
||||||
|
Else
|
||||||
|
LOGGER.Debug("No TreeList nodes found - falling back to Decide_Load")
|
||||||
|
Await Decide_Load(True)
|
||||||
|
End If
|
||||||
|
|
||||||
If GridViewWorkflows.GroupCount = 0 And Not IsNothing(GridViewWorkflows.Columns("GROUP_TEXT")) Then
|
If GridViewWorkflows.GroupCount = 0 And Not IsNothing(GridViewWorkflows.Columns("GROUP_TEXT")) Then
|
||||||
LOGGER.Info("NO GROUPS AFTER SHOWN_Decide Load...")
|
LOGGER.Info("NO GROUPS AFTER SHOWN_Decide Load...")
|
||||||
Create_GroupBy_Parts()
|
Create_GroupBy_Parts()
|
||||||
@@ -3698,7 +3850,7 @@ FROM VWPM_PROFILE_ACTIVE T WHERE T.GUID IN (SELECT PROFILE_ID FROM [dbo].[FNPM_G
|
|||||||
End Sub
|
End Sub
|
||||||
Private Sub UpdateGridCaption()
|
Private Sub UpdateGridCaption()
|
||||||
Try
|
Try
|
||||||
LOGGER.Debug($"UpdateGridCaption called - GRID_LOAD_TYPE: [{GRID_LOAD_TYPE}], CURRENT_CLICKED_PROFILE_TITLE: [{CURRENT_CLICKED_PROFILE_TITLE}], NO_WORKFLOWITEMS: [{NO_WORKFLOWITEMS}]")
|
LOGGER.Debug($"UpdateGridCaption called - GRID_LOAD_TYPE: [{GRID_LOAD_TYPE}], CURRENT_CLICKED_PROFILE_TITLE: [{CURRENT_CLICKED_PROFILE_TITLE}], NO_WORKFLOWITEMS: [{NO_WORKFLOW_ITEMS}]")
|
||||||
If GRID_LOAD_TYPE = "OVERVIEW" Then
|
If GRID_LOAD_TYPE = "OVERVIEW" Then
|
||||||
' Übersicht-Caption
|
' Übersicht-Caption
|
||||||
lblCaptionMainGrid.Text = S.Gesamtübersicht
|
lblCaptionMainGrid.Text = S.Gesamtübersicht
|
||||||
@@ -3711,7 +3863,7 @@ FROM VWPM_PROFILE_ACTIVE T WHERE T.GUID IN (SELECT PROFILE_ID FROM [dbo].[FNPM_G
|
|||||||
ElseIf GRID_LOAD_TYPE.StartsWith("PROFILE#") Then
|
ElseIf GRID_LOAD_TYPE.StartsWith("PROFILE#") Then
|
||||||
' Profil-Caption
|
' Profil-Caption
|
||||||
If Not String.IsNullOrEmpty(CURRENT_CLICKED_PROFILE_TITLE) Then
|
If Not String.IsNullOrEmpty(CURRENT_CLICKED_PROFILE_TITLE) Then
|
||||||
If NO_WORKFLOWITEMS Then
|
If NO_WORKFLOW_ITEMS Then
|
||||||
lblCaptionMainGrid.Text = String.Format(S.Aktuell_keine_Workflowdaten_vorhanden___0_, CURRENT_CLICKED_PROFILE_TITLE)
|
lblCaptionMainGrid.Text = String.Format(S.Aktuell_keine_Workflowdaten_vorhanden___0_, CURRENT_CLICKED_PROFILE_TITLE)
|
||||||
Else
|
Else
|
||||||
lblCaptionMainGrid.Text = CURRENT_CLICKED_PROFILE_TITLE
|
lblCaptionMainGrid.Text = CURRENT_CLICKED_PROFILE_TITLE
|
||||||
@@ -4192,4 +4344,170 @@ FROM VWPM_PROFILE_ACTIVE T WHERE T.GUID IN (SELECT PROFILE_ID FROM [dbo].[FNPM_G
|
|||||||
Private Sub barbtnitmsaveLogfiles_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles barbtnitmsaveLogfiles.ItemClick
|
Private Sub barbtnitmsaveLogfiles_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles barbtnitmsaveLogfiles.ItemClick
|
||||||
ClassAllgemeineFunktionen.Save_Logfiles()
|
ClassAllgemeineFunktionen.Save_Logfiles()
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
|
Private Async Function ProcessTreeListNodeAsync(oNode As DevExpress.XtraTreeList.Nodes.TreeListNode) As Task
|
||||||
|
Try
|
||||||
|
Dim oTypeId As Object = oNode.GetValue("TYPE_ID")
|
||||||
|
Dim oCockpitConfigID As Object = oNode.GetValue("PK_CFG_COCKPIT_DEFINITION_ID")
|
||||||
|
Dim oFkProfileId As Object = oNode.GetValue("FK_PROFILE_ID")
|
||||||
|
Dim oSqlQuery As Object = oNode.GetValue("SQL_QUERY")
|
||||||
|
Dim oProfileTitle As Object = oNode.GetValue("NAME")
|
||||||
|
|
||||||
|
LOGGER.Debug($"TreeList1 Node selected - PK_CFG_COCKPIT_DEFINITION_ID:[{oCockpitConfigID}] NAME:[{oProfileTitle}] TYPE_ID:[{oTypeId}] FK_PROFILE_ID:[{oFkProfileId}]")
|
||||||
|
|
||||||
|
If oTypeId Is Nothing OrElse IsDBNull(oTypeId) Then
|
||||||
|
LOGGER.Debug("ProcessTreeListNodeAsync: TYPE_ID is Nothing/DBNull - Folder node, skipping")
|
||||||
|
Exit Function
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Application.OpenForms().OfType(Of frmValidator).Any Then
|
||||||
|
FormHelper.ShowInfoMessage(S.Bitte_schließen_Sie_den_offenen_Workflow_, omsgTitleWarning)
|
||||||
|
Exit Function
|
||||||
|
End If
|
||||||
|
|
||||||
|
FRONTEND_ACTION = NAVBAR_CLICKED
|
||||||
|
Timer_Inactivity_Reset_Disable("TreeList1_FocusedNodeChanged")
|
||||||
|
COCKPIT_CONFIG_ID = oCockpitConfigID
|
||||||
|
|
||||||
|
Dim oTypeIdInt As Integer = CInt(oTypeId)
|
||||||
|
|
||||||
|
Select Case oTypeIdInt
|
||||||
|
|
||||||
|
Case 0
|
||||||
|
LOGGER.Debug("TreeList1: Loading overview")
|
||||||
|
OverviewOrDEtail = "OVERVIEW"
|
||||||
|
GRID_LOAD_TYPE = "OVERVIEW"
|
||||||
|
|
||||||
|
Dim oForce As Boolean = False
|
||||||
|
If DetailLinkActive = True Then
|
||||||
|
oForce = True
|
||||||
|
DetailLinkActive = False
|
||||||
|
OVERVIEW_ADDED_WHEN = ""
|
||||||
|
End If
|
||||||
|
If IsDBNull(oSqlQuery) OrElse String.IsNullOrWhiteSpace(oSqlQuery?.ToString()) Then
|
||||||
|
LOGGER.Warn($"TreeList1: SQL_QUERY for ProfileID {oFkProfileId} is DBNull or empty for overview node - this should not happen, check data integrity of TreeList's DataSource")
|
||||||
|
Exit Function
|
||||||
|
End If
|
||||||
|
CURRENT_CLICKED_PROFILE_ID = 0
|
||||||
|
CUSTOM_OVERVIEW_SQL = oSqlQuery.ToString()
|
||||||
|
|
||||||
|
If GridControlWorkflows.Visible = True And FormOpenClose = False Then
|
||||||
|
RefreshHelper.SaveViewInfo()
|
||||||
|
End If
|
||||||
|
|
||||||
|
Me.Cursor = Cursors.WaitCursor
|
||||||
|
Try
|
||||||
|
Await Decide_Load(False, oForce)
|
||||||
|
Finally
|
||||||
|
Me.Cursor = Cursors.Default
|
||||||
|
End Try
|
||||||
|
|
||||||
|
If GridControlWorkflows.Visible = True And FormOpenClose = False Then
|
||||||
|
RefreshHelper.LoadViewInfo()
|
||||||
|
End If
|
||||||
|
|
||||||
|
If GridViewWorkflows.GroupCount = 0 AndAlso Not IsNothing(GridViewWorkflows.Columns("GROUP_TEXT")) Then
|
||||||
|
LOGGER.Info("TreeList1: NO GROUPS AFTER CLICK OVERVIEW - creating groups...")
|
||||||
|
Await Decide_Load(False, True)
|
||||||
|
If GridControlWorkflows.Visible = True And FormOpenClose = False Then
|
||||||
|
RefreshHelper.LoadViewInfo()
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
Case 1
|
||||||
|
If oFkProfileId Is Nothing OrElse IsDBNull(oFkProfileId) Then
|
||||||
|
LOGGER.Warn("TreeList1: TYPE_ID=1 but FK_PROFILE_ID is Nothing/DBNull")
|
||||||
|
Exit Function
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim oProfileId As Integer = CInt(oFkProfileId)
|
||||||
|
LOGGER.Debug($"TreeList1: Profile node clicked - FK_PROFILE_ID:[{oProfileId}]")
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
If CURRENT_CLICKED_PROFILE_ID = oProfileId Then
|
||||||
|
LOGGER.Debug($"TreeList1: Profile [{oProfileId}] is already active - ignoring click")
|
||||||
|
Exit Function
|
||||||
|
End If
|
||||||
|
|
||||||
|
LOGGER.Debug($"TreeList1: Loading profile with ID [{oProfileId}]...")
|
||||||
|
|
||||||
|
' ===== ANZAHL-SUFFIX ENTFERNEN (von AppendCountsToTreeAsync angehängt: "Titel (42)" → "Titel") =====
|
||||||
|
Dim oCleanProfileTitle As String = oProfileTitle?.ToString()
|
||||||
|
Dim oSuffixMatch = System.Text.RegularExpressions.Regex.Match(oCleanProfileTitle, "^(.*)\s+\(\d+\)$")
|
||||||
|
If oSuffixMatch.Success Then
|
||||||
|
oCleanProfileTitle = oSuffixMatch.Groups(1).Value.Trim()
|
||||||
|
LOGGER.Debug($"TreeList1: Stripped count suffix from title [{oProfileTitle}] → [{oCleanProfileTitle}]")
|
||||||
|
End If
|
||||||
|
|
||||||
|
OverviewOrDEtail = "DETAIL"
|
||||||
|
CURRENT_CLICKED_PROFILE_ID = oProfileId
|
||||||
|
CURRENT_CLICKED_PROFILE_TITLE = oCleanProfileTitle
|
||||||
|
GRID_LOAD_TYPE = $"PROFILE#{oProfileId}"
|
||||||
|
DetailLinkActive = True
|
||||||
|
|
||||||
|
If GridControlWorkflows.Visible = True And FormOpenClose = False Then
|
||||||
|
RefreshHelper.SaveViewInfo()
|
||||||
|
End If
|
||||||
|
|
||||||
|
Me.Cursor = Cursors.WaitCursor
|
||||||
|
Try
|
||||||
|
Await Decide_Load(False, True)
|
||||||
|
Finally
|
||||||
|
Me.Cursor = Cursors.Default
|
||||||
|
End Try
|
||||||
|
|
||||||
|
Case 2
|
||||||
|
If oSqlQuery Is Nothing OrElse IsDBNull(oSqlQuery) Then
|
||||||
|
Exit Function
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim oSQL As String = oSqlQuery.ToString()
|
||||||
|
If String.IsNullOrWhiteSpace(oSQL) Then
|
||||||
|
Exit Function
|
||||||
|
End If
|
||||||
|
|
||||||
|
LOGGER.Debug($"TreeList1: Executing custom SQL query from node")
|
||||||
|
oSQL = PrepareSQLWithReplacements(oSQL)
|
||||||
|
|
||||||
|
Dim oDT As DataTable = DatabaseFallback.GetDatatableECM(oSQL)
|
||||||
|
If oDT IsNot Nothing Then
|
||||||
|
LOGGER.Debug($"TreeList1 SQL result: {oDT.Rows.Count} rows")
|
||||||
|
DT_CURR_WF_ITEMS = oDT
|
||||||
|
NO_WORKFLOW_ITEMS = (oDT.Rows.Count = 0)
|
||||||
|
bindsourcegrid.DataSource = DT_CURR_WF_ITEMS
|
||||||
|
GridControlWorkflows.DataSource = bindsourcegrid
|
||||||
|
GridControlWorkflows.Visible = Not NO_WORKFLOW_ITEMS
|
||||||
|
UpdateGridCaption()
|
||||||
|
End If
|
||||||
|
|
||||||
|
Case Else
|
||||||
|
LOGGER.Debug($"ProcessTreeListNodeAsync: Unhandled TYPE_ID [{oTypeIdInt}]")
|
||||||
|
|
||||||
|
End Select
|
||||||
|
|
||||||
|
Catch ex As Exception
|
||||||
|
LOGGER.Error(ex)
|
||||||
|
Finally
|
||||||
|
FRONTEND_ACTION = FA_NONE
|
||||||
|
End Try
|
||||||
|
End Function
|
||||||
|
Private Async Sub TreeList1_FocusedNodeChanged(sender As Object, e As DevExpress.XtraTreeList.FocusedNodeChangedEventArgs) Handles TreeList_Cockpit.FocusedNodeChanged
|
||||||
|
Try
|
||||||
|
If e.Node Is Nothing Then
|
||||||
|
LOGGER.Debug("TreeList1_FocusedNodeChanged: Node is Nothing - skipping")
|
||||||
|
Exit Sub
|
||||||
|
End If
|
||||||
|
|
||||||
|
If FormShown = False Then
|
||||||
|
Exit Sub
|
||||||
|
End If
|
||||||
|
|
||||||
|
Await ProcessTreeListNodeAsync(e.Node)
|
||||||
|
|
||||||
|
Catch ex As Exception
|
||||||
|
LOGGER.Error(ex)
|
||||||
|
End Try
|
||||||
|
End Sub
|
||||||
End Class
|
End Class
|
||||||
Reference in New Issue
Block a user