Version 3.5.0.0: UI-Verbesserungen und neue Funktionen

Die Änderungen umfassen:
- Aktualisierung der Assembly-Version auf 3.5.0.0.
- SQL-Abfrage in `ClassInit.vb` verallgemeinert.
- Neue Steuerelemente und Methoden in `frmAdministration` und `frmCockpitConfig` hinzugefügt.
- Veraltete Elemente wie `PRIORITYNumericUpDown` entfernt.
- Einführung der Klasse `ClassCockpit` und Refactoring von `Load_TreeView_CONFIG`.
- Neue Ressourcen und Lokalisierungseinträge für Labels und Steuerelemente.
- Layout-Optimierungen und Unterstützung neuer DevExpress-Komponenten.
- Neue Funktion "Speichern und Schließen" in `frmColumn_Detail` implementiert.

Die Änderungen verbessern die Benutzerfreundlichkeit, erweitern die Funktionalität und optimieren die Codebasis.
This commit is contained in:
Developer01
2026-09-03 09:43:12 +02:00
parent 2f4b55ea18
commit c638ab71a0
21 changed files with 8575 additions and 5881 deletions

View File

@@ -0,0 +1,189 @@
Public Class ClassCockpit
Private _treeNodeCounts As New Dictionary(Of Integer, Integer)
Public Sub CreateCockpit(pDTNodes As DataTable, myTreeView As DevExpress.XtraTreeList.TreeList, pAdmin As Boolean)
Try
LOGGER.Debug("=== TreeView Data Analysis ===")
LOGGER.Debug($"Total rows: {pDTNodes.Rows.Count}")
' ===== NUR AKTIVE KNOTEN BEHALTEN =====
If pDTNodes.Columns.Contains("ACTIVE") And pAdmin = False Then
Dim oInactiveRows As DataRow() = pDTNodes.Select("ACTIVE = 0 OR ACTIVE IS NULL")
If oInactiveRows.Length > 0 Then
LOGGER.Debug($"Load_Treeview: Removing [{oInactiveRows.Length}] inactive node(s) (ACTIVE=0 or NULL)")
For Each oRow As DataRow In oInactiveRows
oRow.Delete()
Next
pDTNodes.AcceptChanges()
End If
Else
LOGGER.Warn("Load_Treeview: ACTIVE column not found in FNTF_GET_COCKPIT_DEFINITION result")
End If
' ===== MONITOR-KNOTEN ENTFERNEN WENN KEIN RECHT =====
If MONITORING_ACTIVE = False AndAlso pAdmin = False AndAlso pDTNodes.Columns.Contains("TYPE_ID") Then
Dim oMonitorRows As DataRow() = pDTNodes.Select("TYPE_ID = 2")
If oMonitorRows.Length > 0 Then
LOGGER.Debug($"Load_Treeview: MONITORING_ACTIVE=False - removing [{oMonitorRows.Length}] monitor node(s) from TreeList datasource")
For Each oRow As DataRow In oMonitorRows
oRow.Delete()
Next
pDTNodes.AcceptChanges()
End If
End If
' ===== CHART-KNOTEN ENTFERNEN WENN KEIN RECHT =====
If SHOW_CHARTS = False AndAlso pAdmin = False AndAlso pDTNodes.Columns.Contains("TYPE_ID") Then
Dim oChartRows As DataRow() = pDTNodes.Select("TYPE_ID = 3")
If oChartRows.Length > 0 Then
LOGGER.Debug($"Load_Treeview: SHOW_CHARTS=False - removing [{oChartRows.Length}] chart node(s) from TreeList datasource")
For Each oRow As DataRow In oChartRows
oRow.Delete()
Next
pDTNodes.AcceptChanges()
End If
End If
Dim rootCount = pDTNodes.AsEnumerable().Count(Function(r) Not IsDBNull(r("PARENT_ID")) AndAlso CInt(r("PARENT_ID")) = 0)
LOGGER.Debug($"Root nodes (PARENT_ID = 0): {rootCount}")
' ===== PARENT_ID-Datentyp prüfen =====
If pDTNodes.Rows.Count > 0 Then
Dim firstParentId = pDTNodes.Rows(0)("PARENT_ID")
LOGGER.Debug($"PARENT_ID Type: {firstParentId.GetType().Name}, Value: {firstParentId}")
End If
' ===== ANZAHL DER OVERVIEW-KNOTEN ERMITTELN (VOR WEITEREN FILTERN) =====
Dim oOverviewRows As DataRow() = pDTNodes.Select("TYPE_ID = 0")
LOGGER.Debug($"Load_Treeview: Found [{oOverviewRows.Length}] node(s) with TYPE_ID=0 (Overview)")
myTreeView.BeginUpdate()
Try
' ===== TreeList VOLLSTÄNDIG zurücksetzen =====
myTreeView.DataSource = Nothing
myTreeView.ClearNodes()
' ===== Hierarchie-Felder setzen =====
myTreeView.KeyFieldName = "PK_CFG_COCKPIT_DEFINITION_ID"
myTreeView.ParentFieldName = "PARENT_ID"
myTreeView.RootValue = 0 ' Explizit setzen: Root-Nodes haben PARENT_ID = 0
' ===== Jetzt DataSource zuweisen =====
myTreeView.DataSource = pDTNodes
'' ===== DEBUG: ImageList-Inhalt prüfen =====
'If myTreeView.SelectImageList IsNot Nothing Then
' LOGGER.Debug($"SelectImageList hat {myTreeView.SelectImageList.Images.Count} Bilder")
' For i As Integer = 0 To myTreeView.SelectImageList.Images.Count - 1
' LOGGER.Debug($" Image Index {i}: {myTreeView .SelectImageList.Images.Keys(i)}")
' Next
'Else
' LOGGER.Warn("SelectImageList ist Nothing!")
'End If
AddHandler myTreeView.CustomDrawNodeCell, AddressOf TreeList_Config_CustomDrawNodeCell
' ===== MODERNES DESIGN =====
myTreeView.Appearance.Row.Font = New Font("Segoe UI", 12, FontStyle.Regular)
myTreeView.Appearance.FocusedRow.Font = New Font("Segoe UI", 12, FontStyle.Bold)
myTreeView.Appearance.HideSelectionRow.Font = New Font("Segoe UI", 12, FontStyle.Regular)
myTreeView.Appearance.Row.BackColor = Color.White
myTreeView.Appearance.Row.ForeColor = Color.FromArgb(50, 50, 50)
myTreeView.Appearance.FocusedRow.BackColor = Color.FromArgb(210, 230, 255)
myTreeView.Appearance.FocusedRow.ForeColor = Color.FromArgb(20, 20, 20)
myTreeView.Appearance.HideSelectionRow.BackColor = Color.FromArgb(225, 235, 250)
myTreeView.Appearance.HideSelectionRow.ForeColor = Color.FromArgb(50, 50, 50)
myTreeView.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 myTreeView.Columns
oColumn.Visible = oVisibleColumns.Contains(oColumn.FieldName)
Next
' --- Neu: Sortierung nach CFG_SEQUENCE anwenden (Kinderreihenfolge) ---
Try
Dim seqCol = myTreeView.Columns("CFG_SEQUENCE")
If seqCol IsNot Nothing Then
' Set the column sort order and ensure it is the primary sort (SortIndex = 0)
seqCol.SortOrder = DevExpress.Data.ColumnSortOrder.Ascending
TryCast(seqCol, DevExpress.XtraTreeList.Columns.TreeListColumn).SortIndex = 0
LOGGER.Debug("myTreeView : set CFG_SEQUENCE SortOrder = Ascending, SortIndex = 0")
Else
' Fallback: wenn die Spalte nicht existiert, sortiere die DataView vor dem Binden
Try
If pDTNodes.DefaultView IsNot Nothing Then
pDTNodes.DefaultView.Sort = "CFG_SEQUENCE ASC"
LOGGER.Debug("Fallback: DataTable.DefaultView sorted by CFG_SEQUENCE ASC")
End If
Catch dvEx As Exception
LOGGER.Warn($"CFG_SEQUENCE column not found - cannot sort TreeList by sequence and fallback failed: {dvEx.Message}")
End Try
End If
Catch sortEx As Exception
LOGGER.Error($"Error sorting TreeList by CFG_SEQUENCE: {sortEx.Message}")
End Try
Finally
myTreeView.EndUpdate()
End Try
' ===== KNOTEN AUF-/ZUKLAPPEN BASIEREND AUF ANZAHL DER OVERVIEW-KNOTEN =====
If oOverviewRows.Length = 1 Then
LOGGER.Debug("Load_Treeview: Only 1 overview node found - expanding all nodes")
myTreeView.ExpandAll()
ElseIf oOverviewRows.Length > 1 Then
LOGGER.Debug($"Load_Treeview: [{oOverviewRows.Length}] overview nodes found - collapsing all nodes")
myTreeView.CollapseAll()
Else
LOGGER.Warn("Load_Treeview: No overview nodes (TYPE_ID=0) found - keeping default collapsed state")
End If
'' ===== DETAILLIERTES LOGGING =====
'LOGGER.Debug("=== DETAILED NODE STRUCTURE AFTER SETUP ===")
'LOGGER.Debug($"TreeList State - AllNodesCount: {TreeList_Cockpit.AllNodesCount}, RootNodes: {TreeList_Cockpit.Nodes.Count}")
'Dim allNodesList As New List(Of DevExpress.XtraTreeList.Nodes.TreeListNode)
'CollectAllNodes(TreeList_Cockpit.Nodes, allNodesList)
'LOGGER.Debug($"Total nodes collected recursively: {allNodesList.Count}")
'For Each node As DevExpress.XtraTreeList.Nodes.TreeListNode In allNodesList
' Dim nodeId = node.GetValue("PK_CFG_COCKPIT_DEFINITION_ID")
' Dim nodeName = node.GetValue("NAME")
' Dim nodeParent = node.GetValue("PARENT_ID")
' Dim level = node.Level
' Dim parentInfo = If(node.ParentNode Is Nothing, "NULL", $"ID={node.ParentNode.GetValue("PK_CFG_COCKPIT_DEFINITION_ID")}")
' LOGGER.Debug($" [Level {level}] ID={nodeId}, NAME={nodeName}, PARENT_ID={nodeParent}, ParentNode={parentInfo}, HasChildren={node.HasChildren}, ChildCount={node.Nodes.Count}, IsExpanded={node.Expanded}")
'Next
Catch ex As Exception
LOGGER.Error($"Error in CreateCockpit: {ex.Message}")
End Try
End Sub
Private Sub TreeList_Config_CustomDrawNodeCell(sender As Object, e As DevExpress.XtraTreeList.CustomDrawNodeCellEventArgs)
Try
Dim oPk As Object = e.Node.GetValue("PK_CFG_COCKPIT_DEFINITION_ID")
If oPk Is Nothing OrElse IsDBNull(oPk) Then
Exit Sub
End If
' ===== ACTIVE-Status prüfen und Hintergrundfarbe setzen =====
Dim oActive As Object = e.Node.GetValue("ACTIVE")
If oActive IsNot Nothing AndAlso Not IsDBNull(oActive) Then
If Not CBool(oActive) Then ' ACTIVE = 0/False
e.Appearance.BackColor = Color.FromArgb(255, 235, 235) ' Leicht rot
e.Appearance.ForeColor = Color.FromArgb(120, 0, 0) ' Dunkelrot für Text
End If
End If
Dim oPkInt As Integer = CInt(oPk)
If Not _treeNodeCounts.ContainsKey(oPkInt) Then
Exit Sub
End If
If _treeNodeCounts(oPkInt) > 0 Then
e.Appearance.Font = New Font(e.Appearance.Font, FontStyle.Bold)
Else
e.Appearance.Font = New Font(e.Appearance.Font, FontStyle.Regular)
End If
Catch ex As Exception
LOGGER.Error(ex)
End Try
End Sub
End Class

View File

@@ -540,7 +540,7 @@ Public Class ClassInit
BASEDATA_DT_LANGUAGE = DatabaseFallback.GetDatatable("TBDD_GUI_LANGUAGE", New GetDatatableOptions(oSql, DatabaseType.ECM))
oSql = "SELECT * FROM TBDD_COLUMNS_FORMAT WITH (NOLOCK) WHERE MODULE = 'taskFLOW' AND GRIDVIEW = 'GridViewWorkflows'"
oSql = "SELECT * FROM TBDD_COLUMNS_FORMAT WITH (NOLOCK) WHERE MODULE = 'taskFLOW'"
BASEDATA_TBDD_COLUMNS_FORMAT = DatabaseFallback.GetDatatable("TBDD_COLUMNS_FORMAT", New GetDatatableOptions(oSql, DatabaseType.ECM))

View File

@@ -32,6 +32,6 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("3.3.0.0")>
<Assembly: AssemblyVersion("3.5.0.0")>
<Assembly: AssemblyFileVersion("1.0.0.0")>
<Assembly: NeutralResourcesLanguage("")>

View File

@@ -479,6 +479,7 @@
</ItemGroup>
<ItemGroup>
<Compile Include="ApplicationEvents.vb" />
<Compile Include="ClassCockpit.vb" />
<Compile Include="ClassConfig.vb" />
<Compile Include="ClassConstants.vb" />
<Compile Include="ClassControlCreator.vb" />
@@ -920,6 +921,9 @@
<DependentUpon>frmLoginAdmin.vb</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="frmMain.aa.resx">
<DependentUpon>frmMain.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmMain.en.resx">
<DependentUpon>frmMain.vb</DependentUpon>
<SubType>Designer</SubType>

View File

@@ -138,7 +138,6 @@ Partial Class frmAdministration
Me.FINAL_PROFILECheckBox = New System.Windows.Forms.CheckBox()
Me.FINAL_TEXTTextBox = New System.Windows.Forms.TextBox()
Me.TBPM_TYPEBindingSource = New System.Windows.Forms.BindingSource(Me.components)
Me.PRIORITYNumericUpDown = New System.Windows.Forms.NumericUpDown()
Me.btnWMopenSuche = New System.Windows.Forms.Button()
Me.btnWMSuche = New System.Windows.Forms.Button()
Me.TITLETextBox = New System.Windows.Forms.TextBox()
@@ -166,7 +165,6 @@ Partial Class frmAdministration
Me.TARGET_PATH_BLIND_FILETextBox = New System.Windows.Forms.TextBox()
Me.lblDescription = New System.Windows.Forms.Label()
Me.btnofbAHW = New System.Windows.Forms.Button()
Me.lblPriority = New System.Windows.Forms.Label()
Me.lblSearch = New System.Windows.Forms.Label()
Me.Label4 = New System.Windows.Forms.Label()
Me.Label9 = New System.Windows.Forms.Label()
@@ -308,7 +306,6 @@ Partial Class frmAdministration
CType(Me.TBDD_USERBindingSource, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.TBPM_PROFILEBindingSource, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.TBPM_TYPEBindingSource, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.PRIORITYNumericUpDown, System.ComponentModel.ISupportInitialize).BeginInit()
Me.TabControl1.SuspendLayout()
Me.TabPage1.SuspendLayout()
Me.pnlEdit.SuspendLayout()
@@ -1185,12 +1182,6 @@ Partial Class frmAdministration
Me.TBPM_TYPEBindingSource.DataMember = "TBPM_TYPE"
Me.TBPM_TYPEBindingSource.DataSource = Me.DD_DMSLiteDataSet
'
'PRIORITYNumericUpDown
'
Me.PRIORITYNumericUpDown.DataBindings.Add(New System.Windows.Forms.Binding("Value", Me.TBPM_PROFILEBindingSource, "PRIORITY", True))
resources.ApplyResources(Me.PRIORITYNumericUpDown, "PRIORITYNumericUpDown")
Me.PRIORITYNumericUpDown.Name = "PRIORITYNumericUpDown"
'
'btnWMopenSuche
'
resources.ApplyResources(Me.btnWMopenSuche, "btnWMopenSuche")
@@ -1341,7 +1332,6 @@ Partial Class frmAdministration
Me.TabPage5.Controls.Add(Me.TARGET_PATH_BLIND_FILETextBox)
Me.TabPage5.Controls.Add(Me.lblDescription)
Me.TabPage5.Controls.Add(Me.btnofbAHW)
Me.TabPage5.Controls.Add(Me.lblPriority)
Me.TabPage5.Controls.Add(Me.lblSearch)
Me.TabPage5.Controls.Add(Me.Label4)
Me.TabPage5.Controls.Add(Me.Label9)
@@ -1364,7 +1354,6 @@ Partial Class frmAdministration
Me.TabPage5.Controls.Add(Me.ADDED_WHENTextBox)
Me.TabPage5.Controls.Add(Me.CHANGED_WHOTextBox)
Me.TabPage5.Controls.Add(Me.btnWMopenSuche)
Me.TabPage5.Controls.Add(Me.PRIORITYNumericUpDown)
Me.TabPage5.Controls.Add(CHANGED_WHOLabel)
Me.TabPage5.Name = "TabPage5"
Me.TabPage5.UseVisualStyleBackColor = True
@@ -1404,11 +1393,6 @@ Partial Class frmAdministration
Me.btnofbAHW.Name = "btnofbAHW"
Me.btnofbAHW.UseVisualStyleBackColor = True
'
'lblPriority
'
resources.ApplyResources(Me.lblPriority, "lblPriority")
Me.lblPriority.Name = "lblPriority"
'
'lblSearch
'
resources.ApplyResources(Me.lblSearch, "lblSearch")
@@ -2049,7 +2033,6 @@ Partial Class frmAdministration
CType(Me.TBDD_USERBindingSource, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.TBPM_PROFILEBindingSource, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.TBPM_TYPEBindingSource, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.PRIORITYNumericUpDown, System.ComponentModel.ISupportInitialize).EndInit()
Me.TabControl1.ResumeLayout(False)
Me.TabPage1.ResumeLayout(False)
Me.pnlEdit.ResumeLayout(False)
@@ -2108,7 +2091,6 @@ Partial Class frmAdministration
Friend WithEvents FINAL_TEXTTextBox As System.Windows.Forms.TextBox
Friend WithEvents dlgWindreamsuche As System.Windows.Forms.OpenFileDialog
Friend WithEvents btnWMopenSuche As System.Windows.Forms.Button
Friend WithEvents PRIORITYNumericUpDown As System.Windows.Forms.NumericUpDown
Friend WithEvents TBPM_TYPEBindingSource As System.Windows.Forms.BindingSource
Friend WithEvents TBPM_TYPETableAdapter As taskFLOW.DD_DMSLiteDataSetTableAdapters.TBPM_TYPETableAdapter
Friend WithEvents FolderBrowserDialog1 As System.Windows.Forms.FolderBrowserDialog
@@ -2241,7 +2223,6 @@ Partial Class frmAdministration
Friend WithEvents tsbStaticInfo As DevExpress.XtraBars.BarStaticItem
Friend WithEvents BarButtonItem20 As DevExpress.XtraBars.BarButtonItem
Friend WithEvents BarButtonItem21 As DevExpress.XtraBars.BarButtonItem
Friend WithEvents lblPriority As Label
Friend WithEvents bbtnItemFinishSQL As DevExpress.XtraBars.BarButtonItem
Friend WithEvents colProfilGUID As DevExpress.XtraGrid.Columns.GridColumn
Friend WithEvents Panel1 As Panel

File diff suppressed because it is too large Load Diff

View File

@@ -1,14 +1,13 @@
Imports System.ComponentModel
Imports System.Data.SqlClient
Imports System.IO
Imports DD_LIB_Standards
Imports DevExpress.Utils.Frames
Imports DevExpress.XtraGrid
Imports DevExpress.XtraGrid.Views.Base
Imports DevExpress.XtraGrid.Views.Grid
Imports DigitalData.GUIs.Common
Imports DigitalData.Modules.Language.Utils
Imports DigitalData.Modules.Logging
Imports WINDREAMLib
Public Class frmAdministration
Private UNSAVED_CHANGES_PROFILE As Boolean = False
@@ -74,14 +73,14 @@ Public Class frmAdministration
lblSearch.Text = "Datei-Suche (SQL):"
btnWMopenSuche.Visible = False
SORT_BY_LATESTCheckBox.Visible = False
PRIORITYNumericUpDown.Visible = False
lblPriority.Visible = False
'PRIORITYNumericUpDown.Visible = False
'lblPriority.Visible = False
Else
lblSearch.Text = "windream-Suche:"
btnWMopenSuche.Visible = True
SORT_BY_LATESTCheckBox.Visible = True
PRIORITYNumericUpDown.Visible = True
lblPriority.Visible = True
'PRIORITYNumericUpDown.Visible = True
'lblPriority.Visible = True
End If
ObjekttypenEintragen()
Indexe_eintragen()
@@ -849,6 +848,10 @@ Public Class frmAdministration
ToolTip1.Show("Bitte wählen Sie hier den Vektor-Index den Sie für das Loggen der Wertänderungen nutzen wollen:", cmbLOGIndex)
End Sub
Private Sub BarButtonItem2_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem2.ItemClick
OpenDesigner
End Sub
Sub OpenDesigner()
If CInt(PROFILGUIDTextBox.Text) > 0 Then
profile_guid = PROFILGUIDTextBox.Text
CURRENT_ProfilGUID = PROFILGUIDTextBox.Text
@@ -1291,7 +1294,23 @@ Public Class frmAdministration
Return False
End Function
Private Sub GridViewProfile_DoubleClick(sender As Object, e As EventArgs) Handles GridViewProfile.DoubleClick
If FORM_LOADED = False Or UNSAVED_CHANGES_PROFILE = True Or UNSAVED_CHANGES_FI = True Or BINDINGSOURCE_CHANGING = True Then
Exit Sub
End If
Try
Dim profileId As Integer = GetCurrentProfileId()
_Logger.Debug("Loading Profile [{0}]", profileId)
If Not IsNothing(profileId) Then
OpenDesigner()
End If
Catch ex As Exception
_Logger.Error(ex)
MsgBox($"Error while calling FillProfile_User", MsgBoxStyle.Critical)
End Try
End Sub
Private Sub GridView1_FocusedRowChanged(sender As Object, e As Views.Base.FocusedRowChangedEventArgs) Handles GridViewProfile.FocusedRowChanged
@@ -1617,4 +1636,10 @@ Public Class frmAdministration
Private Sub BarButtonItem1_ItemClick_2(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs)
viewFinalIndex.FocusedRowHandle() = 2
End Sub
Private Sub GridControlNavigation_DoubleClick(sender As Object, e As EventArgs) Handles GridControlNavigation.DoubleClick
End Sub
End Class

View File

@@ -89,6 +89,8 @@ Partial Class frmCockpitConfig
Me.TextEditCockpit_Bez = New DevExpress.XtraEditors.TextEdit()
Me.LabelControl12 = New DevExpress.XtraEditors.LabelControl()
Me.SplitContainerControl1 = New DevExpress.XtraEditors.SplitContainerControl()
Me.LabelControl13 = New DevExpress.XtraEditors.LabelControl()
Me.SpinEdit1 = New DevExpress.XtraEditors.SpinEdit()
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LookUpEditCockpit.Properties, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.CheckEdit_Cockpit_Active.Properties, System.ComponentModel.ISupportInitialize).BeginInit()
@@ -127,6 +129,7 @@ Partial Class frmCockpitConfig
CType(Me.SplitContainerControl1.Panel2, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SplitContainerControl1.Panel2.SuspendLayout()
Me.SplitContainerControl1.SuspendLayout()
CType(Me.SpinEdit1.Properties, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout()
'
'RibbonControl1
@@ -656,7 +659,7 @@ Partial Class frmCockpitConfig
Me.XtraTabPage2.Controls.Add(Me.GridAvailableGroups)
Me.XtraTabPage2.Controls.Add(Me.PanelControl2)
Me.XtraTabPage2.Name = "XtraTabPage2"
Me.XtraTabPage2.Size = New System.Drawing.Size(1449, 195)
Me.XtraTabPage2.Size = New System.Drawing.Size(1449, 237)
Me.XtraTabPage2.Text = "Gruppe zu Cockpit"
'
'GridAssignedGroups
@@ -666,7 +669,7 @@ Partial Class frmCockpitConfig
Me.GridAssignedGroups.Location = New System.Drawing.Point(406, 33)
Me.GridAssignedGroups.MainView = Me.ViewAssignedGroups
Me.GridAssignedGroups.Name = "GridAssignedGroups"
Me.GridAssignedGroups.Size = New System.Drawing.Size(1043, 162)
Me.GridAssignedGroups.Size = New System.Drawing.Size(1043, 204)
Me.GridAssignedGroups.TabIndex = 8
Me.GridAssignedGroups.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.ViewAssignedGroups})
'
@@ -685,7 +688,7 @@ Partial Class frmCockpitConfig
Me.GridAvailableGroups.Location = New System.Drawing.Point(0, 33)
Me.GridAvailableGroups.MainView = Me.ViewAvailableGroups
Me.GridAvailableGroups.Name = "GridAvailableGroups"
Me.GridAvailableGroups.Size = New System.Drawing.Size(406, 162)
Me.GridAvailableGroups.Size = New System.Drawing.Size(406, 204)
Me.GridAvailableGroups.TabIndex = 7
Me.GridAvailableGroups.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.ViewAvailableGroups})
'
@@ -758,6 +761,8 @@ Partial Class frmCockpitConfig
'
'SplitContainerControl1.Panel1
'
Me.SplitContainerControl1.Panel1.Controls.Add(Me.SpinEdit1)
Me.SplitContainerControl1.Panel1.Controls.Add(Me.LabelControl13)
Me.SplitContainerControl1.Panel1.Controls.Add(Me.LabelControl1)
Me.SplitContainerControl1.Panel1.Controls.Add(Me.TextEditCockpit_Bez)
Me.SplitContainerControl1.Panel1.Controls.Add(Me.LookUpEditCockpit)
@@ -794,6 +799,28 @@ Partial Class frmCockpitConfig
Me.SplitContainerControl1.SplitterPosition = 250
Me.SplitContainerControl1.TabIndex = 58
'
'LabelControl13
'
Me.LabelControl13.Appearance.Font = New System.Drawing.Font("Segoe UI", 9.75!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.LabelControl13.Appearance.Options.UseFont = True
Me.LabelControl13.Location = New System.Drawing.Point(930, 76)
Me.LabelControl13.Name = "LabelControl13"
Me.LabelControl13.Size = New System.Drawing.Size(86, 21)
Me.LabelControl13.TabIndex = 57
Me.LabelControl13.Text = "Reihenfolge:"
'
'SpinEdit1
'
Me.SpinEdit1.EditValue = New Decimal(New Integer() {1, 0, 0, 0})
Me.SpinEdit1.Location = New System.Drawing.Point(930, 99)
Me.SpinEdit1.MenuManager = Me.RibbonControl1
Me.SpinEdit1.Name = "SpinEdit1"
Me.SpinEdit1.Properties.Buttons.AddRange(New DevExpress.XtraEditors.Controls.EditorButton() {New DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)})
Me.SpinEdit1.Properties.MaxValue = New Decimal(New Integer() {20, 0, 0, 0})
Me.SpinEdit1.Properties.MinValue = New Decimal(New Integer() {1, 0, 0, 0})
Me.SpinEdit1.Size = New System.Drawing.Size(86, 24)
Me.SpinEdit1.TabIndex = 58
'
'frmCockpitConfig
'
Me.Appearance.Options.UseFont = True
@@ -851,6 +878,7 @@ Partial Class frmCockpitConfig
Me.SplitContainerControl1.Panel2.ResumeLayout(False)
CType(Me.SplitContainerControl1, System.ComponentModel.ISupportInitialize).EndInit()
Me.SplitContainerControl1.ResumeLayout(False)
CType(Me.SpinEdit1.Properties, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False)
Me.PerformLayout()
@@ -921,4 +949,6 @@ Partial Class frmCockpitConfig
Friend WithEvents LabelControl12 As DevExpress.XtraEditors.LabelControl
Friend WithEvents bsitm_added_Changed As DevExpress.XtraBars.BarStaticItem
Friend WithEvents SplitContainerControl1 As DevExpress.XtraEditors.SplitContainerControl
Friend WithEvents LabelControl13 As DevExpress.XtraEditors.LabelControl
Friend WithEvents SpinEdit1 As DevExpress.XtraEditors.SpinEdit
End Class

View File

@@ -22,6 +22,7 @@ Public Class frmCockpitConfig
Public Property FK_MonitorID As Integer?
Public Property SQL_Query As String
Public Property SQL_Query_Count As String
Public Property CFG_Sequence As Integer?
Public Property Comment As String
Public Sub New()
@@ -29,6 +30,7 @@ Public Class frmCockpitConfig
SQL_Query = String.Empty
SQL_Query_Count = String.Empty
Comment = String.Empty
CFG_Sequence = 0
End Sub
Public Shared Function FromTreeNode(oNode As DevExpress.XtraTreeList.Nodes.TreeListNode) As CockpitDefinitionData
@@ -45,6 +47,7 @@ Public Class frmCockpitConfig
data.FK_MonitorID = GetNodeValueNullable(Of Integer)(oNode, "FK_MONITOR_ID")
data.SQL_Query = GetNodeValue(Of String)(oNode, "SQL_QUERY", String.Empty)
data.SQL_Query_Count = GetNodeValue(Of String)(oNode, "SQL_QUERY_COUNT", String.Empty)
data.CFG_Sequence = GetNodeValue(Of Integer)(oNode, "CFG_SEQUENCE", 0)
data.Comment = GetNodeValue(Of String)(oNode, "COMMENT", String.Empty)
Return data
@@ -238,6 +241,7 @@ Public Class frmCockpitConfig
,FK_MONITOR_ID
,SQL_QUERY
,SQL_QUERY_COUNT
,CFG_SEQUENCE
,COMMENT
,ADDED_WHO
,ADDED_WHEN
@@ -259,6 +263,7 @@ Public Class frmCockpitConfig
cleanedTable.Columns.Add("FK_MONITOR_ID", GetType(Integer))
cleanedTable.Columns.Add("SQL_QUERY", GetType(String))
cleanedTable.Columns.Add("SQL_QUERY_COUNT", GetType(String))
cleanedTable.Columns.Add("CFG_SEQUENCE", GetType(Integer))
cleanedTable.Columns.Add("COMMENT", GetType(String))
cleanedTable.Columns.Add("ADDED_WHO", GetType(String))
cleanedTable.Columns.Add("ADDED_WHEN", GetType(DateTime))
@@ -285,6 +290,7 @@ Public Class frmCockpitConfig
newRow("SQL_QUERY") = row("SQL_QUERY")
newRow("SQL_QUERY_COUNT") = row("SQL_QUERY_COUNT")
newRow("CFG_SEQUENCE") = row("CFG_SEQUENCE")
newRow("COMMENT") = row("COMMENT")
newRow("ADDED_WHO") = row("ADDED_WHO")
newRow("ADDED_WHEN") = row("ADDED_WHEN")
@@ -298,7 +304,9 @@ Public Class frmCockpitConfig
LOGGER.Debug($"PARENT_ID Column Type: {cleanedTable.Columns("PARENT_ID").DataType.Name}")
LOGGER.Debug($"ICON_ID Column Type: {cleanedTable.Columns("ICON_ID").DataType.Name}")
Load_TreeView_CONFIG(cleanedTable)
'Load_TreeView_CONFIG(cleanedTable)
Dim clsck As New ClassCockpit()
clsck.CreateCockpit(cleanedTable, TreeList_Cockpit, True)
Else
MsgBox("No cockpit definition found.", MsgBoxStyle.Exclamation)
End If
@@ -361,117 +369,6 @@ Public Class frmCockpitConfig
LOGGER.Error($"Error in Align_LookUp_Positions: {ex.Message}")
End Try
End Sub
Private Sub Load_TreeView_CONFIG(pDTNodes As DataTable)
Try
LOGGER.Debug("=== TreeView Data Analysis ===")
LOGGER.Debug($"Total rows: {pDTNodes.Rows.Count}")
'For Each row As DataRow In pDTNodes.Rows
' Dim pkId = If(IsDBNull(row("PK_CFG_COCKPIT_DEFINITION_ID")), "NULL", row("PK_CFG_COCKPIT_DEFINITION_ID").ToString())
' Dim parentId = If(IsDBNull(row("PARENT_ID")), "NULL", row("PARENT_ID").ToString())
' Dim name = If(IsDBNull(row("NAME")), "NULL", row("NAME").ToString())
' LOGGER.Debug($"ID={pkId}, PARENT_ID={parentId}, NAME={name}")
'Next
Dim rootCount = pDTNodes.AsEnumerable().Count(Function(r) Not IsDBNull(r("PARENT_ID")) AndAlso CInt(r("PARENT_ID")) = 0)
LOGGER.Debug($"Root nodes (PARENT_ID = 0): {rootCount}")
' ===== PARENT_ID-Datentyp prüfen =====
If pDTNodes.Rows.Count > 0 Then
Dim firstParentId = pDTNodes.Rows(0)("PARENT_ID")
LOGGER.Debug($"PARENT_ID Type: {firstParentId.GetType().Name}, Value: {firstParentId}")
End If
' ===== ANZAHL DER OVERVIEW-KNOTEN ERMITTELN (VOR WEITEREN FILTERN) =====
Dim oOverviewRows As DataRow() = pDTNodes.Select("TYPE_ID = 0")
LOGGER.Debug($"Load_Treeview: Found [{oOverviewRows.Length}] node(s) with TYPE_ID=0 (Overview)")
TreeList_Cockpit.BeginUpdate()
Try
' ===== TreeList VOLLSTÄNDIG zurücksetzen =====
TreeList_Cockpit.DataSource = Nothing
TreeList_Cockpit.ClearNodes()
' ===== Hierarchie-Felder setzen =====
TreeList_Cockpit.KeyFieldName = "PK_CFG_COCKPIT_DEFINITION_ID"
TreeList_Cockpit.ParentFieldName = "PARENT_ID"
TreeList_Cockpit.RootValue = 0 ' Explizit setzen: Root-Nodes haben PARENT_ID = 0
' ===== Jetzt DataSource zuweisen =====
TreeList_Cockpit.DataSource = pDTNodes
'' ===== DEBUG: ImageList-Inhalt prüfen =====
'If TreeList_Cockpit.SelectImageList IsNot Nothing Then
' LOGGER.Debug($"SelectImageList hat {TreeList_Cockpit.SelectImageList.Images.Count} Bilder")
' For i As Integer = 0 To TreeList_Cockpit.SelectImageList.Images.Count - 1
' LOGGER.Debug($" Image Index {i}: {TreeList_Cockpit.SelectImageList.Images.Keys(i)}")
' Next
'Else
' LOGGER.Warn("SelectImageList ist Nothing!")
'End If
AddHandler TreeList_Cockpit.CustomDrawNodeCell, AddressOf TreeList_Config_CustomDrawNodeCell
' ===== MODERNES DESIGN =====
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)
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)
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
' ===== KNOTEN AUF-/ZUKLAPPEN BASIEREND AUF ANZAHL DER OVERVIEW-KNOTEN =====
If oOverviewRows.Length = 1 Then
LOGGER.Debug("Load_Treeview: Only 1 overview node found - expanding all nodes")
TreeList_Cockpit.ExpandAll()
ElseIf oOverviewRows.Length > 1 Then
LOGGER.Debug($"Load_Treeview: [{oOverviewRows.Length}] overview nodes found - collapsing all nodes")
TreeList_Cockpit.CollapseAll()
Else
LOGGER.Warn("Load_Treeview: No overview nodes (TYPE_ID=0) found - keeping default collapsed state")
End If
'' ===== DETAILLIERTES LOGGING =====
'LOGGER.Debug("=== DETAILED NODE STRUCTURE AFTER SETUP ===")
'LOGGER.Debug($"TreeList State - AllNodesCount: {TreeList_Cockpit.AllNodesCount}, RootNodes: {TreeList_Cockpit.Nodes.Count}")
'Dim allNodesList As New List(Of DevExpress.XtraTreeList.Nodes.TreeListNode)
'CollectAllNodes(TreeList_Cockpit.Nodes, allNodesList)
'LOGGER.Debug($"Total nodes collected recursively: {allNodesList.Count}")
'For Each node As DevExpress.XtraTreeList.Nodes.TreeListNode In allNodesList
' Dim nodeId = node.GetValue("PK_CFG_COCKPIT_DEFINITION_ID")
' Dim nodeName = node.GetValue("NAME")
' Dim nodeParent = node.GetValue("PARENT_ID")
' Dim level = node.Level
' Dim parentInfo = If(node.ParentNode Is Nothing, "NULL", $"ID={node.ParentNode.GetValue("PK_CFG_COCKPIT_DEFINITION_ID")}")
' LOGGER.Debug($" [Level {level}] ID={nodeId}, NAME={nodeName}, PARENT_ID={nodeParent}, ParentNode={parentInfo}, HasChildren={node.HasChildren}, ChildCount={node.Nodes.Count}, IsExpanded={node.Expanded}")
'Next
Catch ex As Exception
LOGGER.Error(ex)
Finally
Me.Cursor = Cursors.Default
End Try
End Sub
' Hilfsmethode zum rekursiven Sammeln aller Nodes
Private Sub CollectAllNodes(nodes As DevExpress.XtraTreeList.Nodes.TreeListNodes, ByRef nodeList As List(Of DevExpress.XtraTreeList.Nodes.TreeListNode))
For Each node As DevExpress.XtraTreeList.Nodes.TreeListNode In nodes
@@ -563,6 +460,11 @@ Public Class frmCockpitConfig
Else
LookUpEditChart.EditValue = 0
End If
If _currentCockpitDefinition.CFG_Sequence.HasValue Then
SpinEdit1.Value = _currentCockpitDefinition.CFG_Sequence.Value
Else
SpinEdit1.Value = 0
End If
If _currentCockpitDefinition.FK_MonitorID.HasValue Then
'LOGGER.Debug($"Attempting to set FK_MonitorID to: {_currentCockpitDefinition.FK_MonitorID.Value}")
'LOGGER.Debug($"FK_MonitorID Value Type: {_currentCockpitDefinition.FK_MonitorID.Value.GetType().Name}")
@@ -883,7 +785,7 @@ Public Class frmCockpitConfig
_currentCockpitDefinition.Active = CheckEdit_Active.Checked
_currentCockpitDefinition.Name = TextEdit_Bezeichnung.Text.Trim()
_currentCockpitDefinition.Comment = TextEdit_Comment.Text.Trim()
_currentCockpitDefinition.CFG_Sequence = SpinEdit1.Value
' TYPE_ID
If LookUpEditTypeID.EditValue IsNot Nothing AndAlso IsNumeric(LookUpEditTypeID.EditValue) Then
_currentCockpitDefinition.TypeID = CInt(LookUpEditTypeID.EditValue)
@@ -935,6 +837,8 @@ Public Class frmCockpitConfig
Dim profileIdValue = If(_currentCockpitDefinition.FK_ProfileID.HasValue, _currentCockpitDefinition.FK_ProfileID.Value.ToString(), "NULL")
Dim chartIdValue = If(_currentCockpitDefinition.FK_ChartID.HasValue, _currentCockpitDefinition.FK_ChartID.Value.ToString(), "NULL")
Dim monitorIdValue = If(_currentCockpitDefinition.FK_MonitorID.HasValue, _currentCockpitDefinition.FK_MonitorID.Value.ToString(), "NULL")
Dim cfgSequenceValue = If(_currentCockpitDefinition.CFG_Sequence.HasValue, _currentCockpitDefinition.CFG_Sequence.Value.ToString(), "NULL")
' SQL-String escapen für Texte
Dim safeName = _currentCockpitDefinition.Name.Replace("'", "''")
@@ -955,6 +859,7 @@ Public Class frmCockpitConfig
FK_MONITOR_ID = {monitorIdValue},
SQL_QUERY = '{safeSqlQuery}',
SQL_QUERY_COUNT = '{safeSqlQueryCount}',
CFG_SEQUENCE = {cfgSequenceValue},
COMMENT = '{safeComment}',
CHANGED_WHO = '{Environment.UserName}',
CHANGED_WHEN = GETDATE()
@@ -1219,7 +1124,7 @@ Public Class frmCockpitConfig
,FK_CFG_USER_ID
,USR.USERNAME [Username]
,USR.EMAIL [Email]
,[SEQUENCE] [Reihenfolge]
,[MAP_SEQUENCE] [Reihenfolge]
FROM
TBTF_MAP_COCKPIT CP_MAP (NOLOCK) INNER JOIN
TBTF_CFG_COCKPIT CP_CONF (NOLOCK) ON CP_MAP.FK_CFG_COCKPIT_ID = CP_CONF.PK_CFG_COCKPIT_ID
@@ -1274,7 +1179,7 @@ Public Class frmCockpitConfig
Private Sub Load_Assigned_Groups_2_Cockpit()
Try
Dim oSQL = $"SELECT
CP_MAP.PK_MAP_COCKPIT_ID, FK_CFG_GROUP_ID, GRP.NAME [Groupname], [SEQUENCE] [Reihenfolge]
CP_MAP.PK_MAP_COCKPIT_ID, FK_CFG_GROUP_ID, GRP.NAME [Groupname], [MAP_SEQUENCE] [Reihenfolge]
FROM
TBTF_MAP_COCKPIT CP_MAP (NOLOCK) INNER JOIN
TBTF_CFG_COCKPIT CP_CONF (NOLOCK) ON CP_MAP.FK_CFG_COCKPIT_ID = CP_CONF.PK_CFG_COCKPIT_ID
@@ -1411,7 +1316,7 @@ Public Class frmCockpitConfig
' UPDATE-Statement ausführen
Dim updateSQL = $"UPDATE TBTF_MAP_COCKPIT
SET SEQUENCE = {newSequence},
SET MAP_SEQUENCE = {newSequence},
CHANGED_WHO = '{Environment.UserName}',
CHANGED_WHEN = GETDATE()
WHERE PK_MAP_COCKPIT_ID = {mapId}"
@@ -1630,7 +1535,7 @@ Public Class frmCockpitConfig
Dim oInsert = $"INSERT INTO [dbo].[TBTF_MAP_COCKPIT]
([FK_CFG_COCKPIT_ID]
,[FK_CFG_USER_ID]
,[SEQUENCE]
,[MAP_SEQUENCE]
,[ADDED_WHO])
VALUES
({Selected_Cockpit_ID}, {userId}, 0, '{USER_USERNAME}')"
@@ -1653,7 +1558,7 @@ Public Class frmCockpitConfig
Dim oInsert = $"INSERT INTO [dbo].[TBTF_MAP_COCKPIT]
(FK_CFG_COCKPIT_ID
,FK_CFG_GROUP_ID
,[SEQUENCE]
,[MAP_SEQUENCE]
,ADDED_WHO)
VALUES
({Selected_Cockpit_ID}, {groupID}, 0, '{USER_USERNAME}')"
@@ -1911,7 +1816,11 @@ Public Class frmCockpitConfig
End If
Enable_GrpCockpit()
End Sub
Private Sub SpinEdit1_EditValueChanged(sender As Object, e As EventArgs) Handles SpinEdit1.EditValueChanged
If Load_CP_InAction Or Node_change_inAction Then
Exit Sub
End If
End Sub
Private Sub TextEditCockpit_Bez_TextChanged(sender As Object, e As EventArgs) Handles TextEditCockpit_Bez.TextChanged
If Load_CP_InAction Or Node_change_inAction Then
Exit Sub
@@ -1930,4 +1839,6 @@ Public Class frmCockpitConfig
RbmPgGrp_Node.Enabled = True
RbmPgGrp_Cockpit.Enabled = False
End Sub
End Class

View File

@@ -93,6 +93,7 @@ Partial Class frmColumn_Detail
Me.LayoutControlItem26 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LayoutControlItem27 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LayoutControlItem15 = New DevExpress.XtraLayout.LayoutControlItem()
Me.BarButtonItem3 = New DevExpress.XtraBars.BarButtonItem()
CType(Me.TBPM_CONTROL_TABLEBindingSource, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.DD_DMSLiteDataSet, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit()
@@ -183,11 +184,13 @@ Partial Class frmColumn_Detail
'RibbonControl1
'
Me.RibbonControl1.CommandLayout = DevExpress.XtraBars.Ribbon.CommandLayout.Simplified
Me.RibbonControl1.EmptyAreaImageOptions.ImagePadding = New System.Windows.Forms.Padding(40, 44, 40, 44)
Me.RibbonControl1.ExpandCollapseItem.Id = 0
Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.BarButtonItem1, Me.BarButtonItem2, Me.tslblAenderungen})
Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.BarButtonItem1, Me.BarButtonItem2, Me.tslblAenderungen, Me.BarButtonItem3})
resources.ApplyResources(Me.RibbonControl1, "RibbonControl1")
Me.RibbonControl1.MaxItemId = 5
Me.RibbonControl1.MaxItemId = 6
Me.RibbonControl1.Name = "RibbonControl1"
Me.RibbonControl1.OptionsMenuMinWidth = 440
Me.RibbonControl1.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage1})
Me.RibbonControl1.ShowApplicationButton = DevExpress.Utils.DefaultBoolean.[False]
Me.RibbonControl1.ShowPageHeadersMode = DevExpress.XtraBars.Ribbon.ShowPageHeadersMode.Hide
@@ -199,7 +202,7 @@ Partial Class frmColumn_Detail
'
resources.ApplyResources(Me.BarButtonItem1, "BarButtonItem1")
Me.BarButtonItem1.Id = 1
Me.BarButtonItem1.ImageOptions.SvgImage = Global.taskFLOW.My.Resources.Resources.markcomplete
Me.BarButtonItem1.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem1.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.BarButtonItem1.Name = "BarButtonItem1"
'
'BarButtonItem2
@@ -225,6 +228,7 @@ Partial Class frmColumn_Detail
'RibbonPageGroup1
'
Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonItem1)
Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonItem3)
Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonItem2)
Me.RibbonPageGroup1.Name = "RibbonPageGroup1"
resources.ApplyResources(Me.RibbonPageGroup1, "RibbonPageGroup1")
@@ -502,7 +506,7 @@ Partial Class frmColumn_Detail
Me.Root.GroupBordersVisible = False
Me.Root.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlItem1, Me.LayoutControlItem2, Me.LayoutControlItem3, Me.LayoutControlItem4, Me.LayoutControlItem5, Me.LayoutControlItem6, Me.LayoutControlItem8, Me.LayoutControlItem7, Me.LayoutControlItem9, Me.LayoutControlItem10, Me.LayoutControlItem12, Me.LayoutControlItem11, Me.LayoutControlItem13, Me.LayoutControlGroup1, Me.LayoutControlItem18, Me.LayoutControlItem19, Me.LayoutControlItem23, Me.LayoutControlItem21, Me.LayoutControlItem24, Me.LayoutControlItem26, Me.LayoutControlItem27, Me.LayoutControlItem15})
Me.Root.Name = "Root"
Me.Root.Size = New System.Drawing.Size(630, 853)
Me.Root.Size = New System.Drawing.Size(840, 1255)
Me.Root.TextVisible = False
'
'LayoutControlItem1
@@ -510,135 +514,135 @@ Partial Class frmColumn_Detail
Me.LayoutControlItem1.Control = Me.GUIDTextBox
Me.LayoutControlItem1.Location = New System.Drawing.Point(0, 0)
Me.LayoutControlItem1.Name = "LayoutControlItem1"
Me.LayoutControlItem1.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem1.Size = New System.Drawing.Size(610, 40)
Me.LayoutControlItem1.Padding = New DevExpress.XtraLayout.Utils.Padding(13, 13, 15, 15)
Me.LayoutControlItem1.Size = New System.Drawing.Size(814, 52)
resources.ApplyResources(Me.LayoutControlItem1, "LayoutControlItem1")
Me.LayoutControlItem1.TextSize = New System.Drawing.Size(110, 13)
Me.LayoutControlItem1.TextSize = New System.Drawing.Size(140, 16)
'
'LayoutControlItem2
'
Me.LayoutControlItem2.Control = Me.SPALTENNAMETextBox
Me.LayoutControlItem2.Location = New System.Drawing.Point(0, 40)
Me.LayoutControlItem2.Location = New System.Drawing.Point(0, 52)
Me.LayoutControlItem2.Name = "LayoutControlItem2"
Me.LayoutControlItem2.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem2.Size = New System.Drawing.Size(610, 40)
Me.LayoutControlItem2.Padding = New DevExpress.XtraLayout.Utils.Padding(13, 13, 15, 15)
Me.LayoutControlItem2.Size = New System.Drawing.Size(814, 52)
resources.ApplyResources(Me.LayoutControlItem2, "LayoutControlItem2")
Me.LayoutControlItem2.TextSize = New System.Drawing.Size(110, 13)
Me.LayoutControlItem2.TextSize = New System.Drawing.Size(140, 16)
'
'LayoutControlItem3
'
Me.LayoutControlItem3.Control = Me.SPALTEN_HEADERTextBox
Me.LayoutControlItem3.Location = New System.Drawing.Point(0, 80)
Me.LayoutControlItem3.Location = New System.Drawing.Point(0, 104)
Me.LayoutControlItem3.Name = "LayoutControlItem3"
Me.LayoutControlItem3.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem3.Size = New System.Drawing.Size(610, 40)
Me.LayoutControlItem3.Padding = New DevExpress.XtraLayout.Utils.Padding(13, 13, 15, 15)
Me.LayoutControlItem3.Size = New System.Drawing.Size(814, 52)
resources.ApplyResources(Me.LayoutControlItem3, "LayoutControlItem3")
Me.LayoutControlItem3.TextSize = New System.Drawing.Size(110, 13)
Me.LayoutControlItem3.TextSize = New System.Drawing.Size(140, 16)
'
'LayoutControlItem4
'
Me.LayoutControlItem4.Control = Me.SPALTENBREITETextBox
Me.LayoutControlItem4.Location = New System.Drawing.Point(0, 120)
Me.LayoutControlItem4.Location = New System.Drawing.Point(0, 156)
Me.LayoutControlItem4.Name = "LayoutControlItem4"
Me.LayoutControlItem4.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem4.Size = New System.Drawing.Size(304, 40)
Me.LayoutControlItem4.Padding = New DevExpress.XtraLayout.Utils.Padding(13, 13, 15, 15)
Me.LayoutControlItem4.Size = New System.Drawing.Size(406, 54)
resources.ApplyResources(Me.LayoutControlItem4, "LayoutControlItem4")
Me.LayoutControlItem4.TextSize = New System.Drawing.Size(110, 13)
Me.LayoutControlItem4.TextSize = New System.Drawing.Size(140, 16)
'
'LayoutControlItem5
'
Me.LayoutControlItem5.Control = Me.REGEX_MATCHTextBox
Me.LayoutControlItem5.Location = New System.Drawing.Point(0, 200)
Me.LayoutControlItem5.Location = New System.Drawing.Point(0, 262)
Me.LayoutControlItem5.Name = "LayoutControlItem5"
Me.LayoutControlItem5.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem5.Size = New System.Drawing.Size(520, 46)
Me.LayoutControlItem5.Padding = New DevExpress.XtraLayout.Utils.Padding(13, 13, 15, 15)
Me.LayoutControlItem5.Size = New System.Drawing.Size(694, 63)
resources.ApplyResources(Me.LayoutControlItem5, "LayoutControlItem5")
Me.LayoutControlItem5.TextSize = New System.Drawing.Size(110, 13)
Me.LayoutControlItem5.TextSize = New System.Drawing.Size(140, 16)
'
'LayoutControlItem6
'
Me.LayoutControlItem6.Control = Me.SimpleButton1
Me.LayoutControlItem6.Location = New System.Drawing.Point(520, 200)
Me.LayoutControlItem6.Location = New System.Drawing.Point(694, 262)
Me.LayoutControlItem6.Name = "LayoutControlItem6"
Me.LayoutControlItem6.Size = New System.Drawing.Size(90, 46)
Me.LayoutControlItem6.Size = New System.Drawing.Size(120, 63)
Me.LayoutControlItem6.TextSize = New System.Drawing.Size(0, 0)
Me.LayoutControlItem6.TextVisible = False
'
'LayoutControlItem8
'
Me.LayoutControlItem8.Control = Me.SQL_COMMANDTextBox
Me.LayoutControlItem8.Location = New System.Drawing.Point(0, 326)
Me.LayoutControlItem8.Location = New System.Drawing.Point(0, 432)
Me.LayoutControlItem8.Name = "LayoutControlItem8"
Me.LayoutControlItem8.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem8.Size = New System.Drawing.Size(520, 46)
Me.LayoutControlItem8.Padding = New DevExpress.XtraLayout.Utils.Padding(13, 13, 15, 15)
Me.LayoutControlItem8.Size = New System.Drawing.Size(694, 63)
resources.ApplyResources(Me.LayoutControlItem8, "LayoutControlItem8")
Me.LayoutControlItem8.TextSize = New System.Drawing.Size(110, 13)
Me.LayoutControlItem8.TextSize = New System.Drawing.Size(140, 16)
'
'LayoutControlItem7
'
Me.LayoutControlItem7.Control = Me.REGEX_MESSAGE_DETextBox
Me.LayoutControlItem7.Location = New System.Drawing.Point(0, 246)
Me.LayoutControlItem7.Location = New System.Drawing.Point(0, 325)
Me.LayoutControlItem7.Name = "LayoutControlItem7"
Me.LayoutControlItem7.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem7.Size = New System.Drawing.Size(610, 40)
Me.LayoutControlItem7.Padding = New DevExpress.XtraLayout.Utils.Padding(13, 13, 15, 15)
Me.LayoutControlItem7.Size = New System.Drawing.Size(814, 52)
resources.ApplyResources(Me.LayoutControlItem7, "LayoutControlItem7")
Me.LayoutControlItem7.TextSize = New System.Drawing.Size(110, 13)
Me.LayoutControlItem7.TextSize = New System.Drawing.Size(140, 16)
'
'LayoutControlItem9
'
Me.LayoutControlItem9.Control = Me.SimpleButton2
Me.LayoutControlItem9.Location = New System.Drawing.Point(520, 326)
Me.LayoutControlItem9.Location = New System.Drawing.Point(694, 432)
Me.LayoutControlItem9.Name = "LayoutControlItem9"
Me.LayoutControlItem9.Size = New System.Drawing.Size(90, 46)
Me.LayoutControlItem9.Size = New System.Drawing.Size(120, 63)
Me.LayoutControlItem9.TextSize = New System.Drawing.Size(0, 0)
Me.LayoutControlItem9.TextVisible = False
'
'LayoutControlItem10
'
Me.LayoutControlItem10.Control = Me.TextEdit7
Me.LayoutControlItem10.Location = New System.Drawing.Point(0, 504)
Me.LayoutControlItem10.Location = New System.Drawing.Point(0, 673)
Me.LayoutControlItem10.Name = "LayoutControlItem10"
Me.LayoutControlItem10.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem10.Size = New System.Drawing.Size(304, 40)
Me.LayoutControlItem10.Padding = New DevExpress.XtraLayout.Utils.Padding(13, 13, 15, 15)
Me.LayoutControlItem10.Size = New System.Drawing.Size(406, 52)
resources.ApplyResources(Me.LayoutControlItem10, "LayoutControlItem10")
Me.LayoutControlItem10.TextSize = New System.Drawing.Size(110, 13)
Me.LayoutControlItem10.TextSize = New System.Drawing.Size(140, 16)
'
'LayoutControlItem12
'
Me.LayoutControlItem12.Control = Me.CHANGED_WHOTextBox
Me.LayoutControlItem12.Location = New System.Drawing.Point(0, 544)
Me.LayoutControlItem12.Location = New System.Drawing.Point(0, 725)
Me.LayoutControlItem12.Name = "LayoutControlItem12"
Me.LayoutControlItem12.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem12.Size = New System.Drawing.Size(304, 40)
Me.LayoutControlItem12.Padding = New DevExpress.XtraLayout.Utils.Padding(13, 13, 15, 15)
Me.LayoutControlItem12.Size = New System.Drawing.Size(406, 52)
resources.ApplyResources(Me.LayoutControlItem12, "LayoutControlItem12")
Me.LayoutControlItem12.TextSize = New System.Drawing.Size(110, 13)
Me.LayoutControlItem12.TextSize = New System.Drawing.Size(140, 16)
'
'LayoutControlItem11
'
Me.LayoutControlItem11.Control = Me.TextEdit8
Me.LayoutControlItem11.Location = New System.Drawing.Point(304, 504)
Me.LayoutControlItem11.Location = New System.Drawing.Point(406, 673)
Me.LayoutControlItem11.Name = "LayoutControlItem11"
Me.LayoutControlItem11.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem11.Size = New System.Drawing.Size(306, 40)
Me.LayoutControlItem11.Padding = New DevExpress.XtraLayout.Utils.Padding(13, 13, 15, 15)
Me.LayoutControlItem11.Size = New System.Drawing.Size(408, 52)
resources.ApplyResources(Me.LayoutControlItem11, "LayoutControlItem11")
Me.LayoutControlItem11.TextSize = New System.Drawing.Size(110, 13)
Me.LayoutControlItem11.TextSize = New System.Drawing.Size(140, 16)
'
'LayoutControlItem13
'
Me.LayoutControlItem13.Control = Me.TextEdit10
Me.LayoutControlItem13.Location = New System.Drawing.Point(304, 544)
Me.LayoutControlItem13.Location = New System.Drawing.Point(406, 725)
Me.LayoutControlItem13.Name = "LayoutControlItem13"
Me.LayoutControlItem13.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem13.Size = New System.Drawing.Size(306, 40)
Me.LayoutControlItem13.Padding = New DevExpress.XtraLayout.Utils.Padding(13, 13, 15, 15)
Me.LayoutControlItem13.Size = New System.Drawing.Size(408, 52)
resources.ApplyResources(Me.LayoutControlItem13, "LayoutControlItem13")
Me.LayoutControlItem13.TextSize = New System.Drawing.Size(110, 13)
Me.LayoutControlItem13.TextSize = New System.Drawing.Size(140, 16)
'
'LayoutControlGroup1
'
Me.LayoutControlGroup1.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlItem16, Me.LayoutControlItem14, Me.LayoutControlItem17, Me.LayoutControlItem25, Me.LayoutControlItem20, Me.LayoutControlItem22})
Me.LayoutControlGroup1.Location = New System.Drawing.Point(0, 584)
Me.LayoutControlGroup1.Location = New System.Drawing.Point(0, 777)
Me.LayoutControlGroup1.Name = "LayoutControlGroup1"
Me.LayoutControlGroup1.Size = New System.Drawing.Size(610, 249)
Me.LayoutControlGroup1.Size = New System.Drawing.Size(814, 448)
resources.ApplyResources(Me.LayoutControlGroup1, "LayoutControlGroup1")
'
'LayoutControlItem16
@@ -646,134 +650,141 @@ Partial Class frmColumn_Detail
Me.LayoutControlItem16.Control = Me.VALIDATIONCheckbox
Me.LayoutControlItem16.Location = New System.Drawing.Point(0, 0)
Me.LayoutControlItem16.Name = "LayoutControlItem16"
Me.LayoutControlItem16.Size = New System.Drawing.Size(292, 24)
Me.LayoutControlItem16.Size = New System.Drawing.Size(390, 28)
Me.LayoutControlItem16.TextSize = New System.Drawing.Size(0, 0)
Me.LayoutControlItem16.TextVisible = False
'
'LayoutControlItem14
'
Me.LayoutControlItem14.Control = Me.READ_ONLYCheckBox
Me.LayoutControlItem14.Location = New System.Drawing.Point(0, 24)
Me.LayoutControlItem14.Location = New System.Drawing.Point(0, 28)
Me.LayoutControlItem14.Name = "LayoutControlItem14"
Me.LayoutControlItem14.Size = New System.Drawing.Size(586, 22)
Me.LayoutControlItem14.Size = New System.Drawing.Size(782, 27)
Me.LayoutControlItem14.TextSize = New System.Drawing.Size(0, 0)
Me.LayoutControlItem14.TextVisible = False
'
'LayoutControlItem17
'
Me.LayoutControlItem17.Control = Me.ADVANCED_LOOKUPCheckbox
Me.LayoutControlItem17.Location = New System.Drawing.Point(0, 46)
Me.LayoutControlItem17.Location = New System.Drawing.Point(0, 55)
Me.LayoutControlItem17.Name = "LayoutControlItem17"
Me.LayoutControlItem17.Size = New System.Drawing.Size(586, 22)
Me.LayoutControlItem17.Size = New System.Drawing.Size(782, 27)
Me.LayoutControlItem17.TextSize = New System.Drawing.Size(0, 0)
Me.LayoutControlItem17.TextVisible = False
'
'LayoutControlItem25
'
Me.LayoutControlItem25.Control = Me.LOAD_IDX_VALUECheckBox
Me.LayoutControlItem25.Location = New System.Drawing.Point(0, 68)
Me.LayoutControlItem25.Location = New System.Drawing.Point(0, 82)
Me.LayoutControlItem25.Name = "LayoutControlItem25"
Me.LayoutControlItem25.Size = New System.Drawing.Size(586, 22)
Me.LayoutControlItem25.Size = New System.Drawing.Size(782, 27)
Me.LayoutControlItem25.TextSize = New System.Drawing.Size(0, 0)
Me.LayoutControlItem25.TextVisible = False
'
'LayoutControlItem20
'
Me.LayoutControlItem20.Control = Me.SUMMARY_FUNCTIONCombobox
Me.LayoutControlItem20.Location = New System.Drawing.Point(292, 0)
Me.LayoutControlItem20.Location = New System.Drawing.Point(390, 0)
Me.LayoutControlItem20.Name = "LayoutControlItem20"
Me.LayoutControlItem20.Size = New System.Drawing.Size(294, 24)
Me.LayoutControlItem20.Size = New System.Drawing.Size(392, 28)
resources.ApplyResources(Me.LayoutControlItem20, "LayoutControlItem20")
Me.LayoutControlItem20.TextSize = New System.Drawing.Size(110, 13)
Me.LayoutControlItem20.TextSize = New System.Drawing.Size(140, 16)
'
'LayoutControlItem22
'
Me.LayoutControlItem22.Control = Me.CheckEditInheritValue
Me.LayoutControlItem22.DataBindings.Add(New System.Windows.Forms.Binding("Text", Me.TBPM_CONTROL_TABLEBindingSource, "INHERIT_VALUE", True))
Me.LayoutControlItem22.Location = New System.Drawing.Point(0, 90)
Me.LayoutControlItem22.Location = New System.Drawing.Point(0, 109)
Me.LayoutControlItem22.Name = "LayoutControlItem22"
Me.LayoutControlItem22.Size = New System.Drawing.Size(586, 114)
Me.LayoutControlItem22.Size = New System.Drawing.Size(782, 279)
Me.LayoutControlItem22.TextSize = New System.Drawing.Size(0, 0)
Me.LayoutControlItem22.TextVisible = False
'
'LayoutControlItem18
'
Me.LayoutControlItem18.Control = Me.DEFAULTVALUETextBox
Me.LayoutControlItem18.Location = New System.Drawing.Point(0, 372)
Me.LayoutControlItem18.Location = New System.Drawing.Point(0, 495)
Me.LayoutControlItem18.Name = "LayoutControlItem18"
Me.LayoutControlItem18.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem18.Size = New System.Drawing.Size(610, 40)
Me.LayoutControlItem18.Padding = New DevExpress.XtraLayout.Utils.Padding(13, 13, 15, 15)
Me.LayoutControlItem18.Size = New System.Drawing.Size(814, 52)
resources.ApplyResources(Me.LayoutControlItem18, "LayoutControlItem18")
Me.LayoutControlItem18.TextSize = New System.Drawing.Size(110, 13)
Me.LayoutControlItem18.TextSize = New System.Drawing.Size(140, 16)
'
'LayoutControlItem19
'
Me.LayoutControlItem19.Control = Me.SEQUENCETextBox
Me.LayoutControlItem19.Location = New System.Drawing.Point(304, 120)
Me.LayoutControlItem19.Location = New System.Drawing.Point(406, 156)
Me.LayoutControlItem19.Name = "LayoutControlItem19"
Me.LayoutControlItem19.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem19.Size = New System.Drawing.Size(306, 40)
Me.LayoutControlItem19.Padding = New DevExpress.XtraLayout.Utils.Padding(13, 13, 15, 15)
Me.LayoutControlItem19.Size = New System.Drawing.Size(408, 54)
resources.ApplyResources(Me.LayoutControlItem19, "LayoutControlItem19")
Me.LayoutControlItem19.TextSize = New System.Drawing.Size(110, 13)
Me.LayoutControlItem19.TextSize = New System.Drawing.Size(140, 16)
'
'LayoutControlItem23
'
Me.LayoutControlItem23.Control = Me.LU_CAPTIONTextBox
resources.ApplyResources(Me.LayoutControlItem23, "LayoutControlItem23")
Me.LayoutControlItem23.Location = New System.Drawing.Point(0, 286)
Me.LayoutControlItem23.Location = New System.Drawing.Point(0, 377)
Me.LayoutControlItem23.Name = "LayoutControlItem23"
Me.LayoutControlItem23.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem23.Size = New System.Drawing.Size(610, 40)
Me.LayoutControlItem23.TextSize = New System.Drawing.Size(110, 13)
Me.LayoutControlItem23.Padding = New DevExpress.XtraLayout.Utils.Padding(13, 13, 15, 15)
Me.LayoutControlItem23.Size = New System.Drawing.Size(814, 55)
Me.LayoutControlItem23.TextSize = New System.Drawing.Size(140, 16)
'
'LayoutControlItem21
'
Me.LayoutControlItem21.Control = Me.TYPE_COLUMNComboBox2
Me.LayoutControlItem21.Location = New System.Drawing.Point(0, 160)
Me.LayoutControlItem21.Location = New System.Drawing.Point(0, 210)
Me.LayoutControlItem21.Name = "LayoutControlItem21"
Me.LayoutControlItem21.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem21.Size = New System.Drawing.Size(610, 40)
Me.LayoutControlItem21.Padding = New DevExpress.XtraLayout.Utils.Padding(13, 13, 15, 15)
Me.LayoutControlItem21.Size = New System.Drawing.Size(814, 52)
resources.ApplyResources(Me.LayoutControlItem21, "LayoutControlItem21")
Me.LayoutControlItem21.TextSize = New System.Drawing.Size(110, 13)
Me.LayoutControlItem21.TextSize = New System.Drawing.Size(140, 16)
'
'LayoutControlItem24
'
Me.LayoutControlItem24.Control = Me.FORMULA_EXPRESSIONTextBox
Me.LayoutControlItem24.Location = New System.Drawing.Point(0, 412)
Me.LayoutControlItem24.Location = New System.Drawing.Point(0, 547)
Me.LayoutControlItem24.Name = "LayoutControlItem24"
Me.LayoutControlItem24.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem24.Size = New System.Drawing.Size(520, 46)
Me.LayoutControlItem24.Padding = New DevExpress.XtraLayout.Utils.Padding(13, 13, 15, 15)
Me.LayoutControlItem24.Size = New System.Drawing.Size(694, 63)
resources.ApplyResources(Me.LayoutControlItem24, "LayoutControlItem24")
Me.LayoutControlItem24.TextSize = New System.Drawing.Size(110, 13)
Me.LayoutControlItem24.TextSize = New System.Drawing.Size(140, 16)
'
'LayoutControlItem26
'
Me.LayoutControlItem26.Control = Me.SimpleButton3
Me.LayoutControlItem26.Location = New System.Drawing.Point(520, 412)
Me.LayoutControlItem26.Location = New System.Drawing.Point(694, 547)
Me.LayoutControlItem26.Name = "LayoutControlItem26"
Me.LayoutControlItem26.Size = New System.Drawing.Size(90, 46)
Me.LayoutControlItem26.Size = New System.Drawing.Size(120, 63)
Me.LayoutControlItem26.TextSize = New System.Drawing.Size(0, 0)
Me.LayoutControlItem26.TextVisible = False
'
'LayoutControlItem27
'
Me.LayoutControlItem27.Control = Me.FORMULA_SQLTextBox
Me.LayoutControlItem27.Location = New System.Drawing.Point(0, 458)
Me.LayoutControlItem27.Location = New System.Drawing.Point(0, 610)
Me.LayoutControlItem27.Name = "LayoutControlItem27"
Me.LayoutControlItem27.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
Me.LayoutControlItem27.Size = New System.Drawing.Size(520, 46)
Me.LayoutControlItem27.Padding = New DevExpress.XtraLayout.Utils.Padding(13, 13, 15, 15)
Me.LayoutControlItem27.Size = New System.Drawing.Size(694, 63)
resources.ApplyResources(Me.LayoutControlItem27, "LayoutControlItem27")
Me.LayoutControlItem27.TextSize = New System.Drawing.Size(110, 13)
Me.LayoutControlItem27.TextSize = New System.Drawing.Size(140, 16)
'
'LayoutControlItem15
'
Me.LayoutControlItem15.Control = Me.SimpleButton4
Me.LayoutControlItem15.Location = New System.Drawing.Point(520, 458)
Me.LayoutControlItem15.Location = New System.Drawing.Point(694, 610)
Me.LayoutControlItem15.Name = "LayoutControlItem15"
Me.LayoutControlItem15.Size = New System.Drawing.Size(90, 46)
Me.LayoutControlItem15.Size = New System.Drawing.Size(120, 63)
Me.LayoutControlItem15.TextSize = New System.Drawing.Size(0, 0)
Me.LayoutControlItem15.TextVisible = False
'
'BarButtonItem3
'
resources.ApplyResources(Me.BarButtonItem3, "BarButtonItem3")
Me.BarButtonItem3.Id = 5
Me.BarButtonItem3.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem3.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.BarButtonItem3.Name = "BarButtonItem3"
'
'frmColumn_Detail
'
Me.Appearance.Options.UseFont = True
@@ -915,4 +926,5 @@ End Sub
Friend WithEvents FORMULA_SQLTextBox As TextBox
Friend WithEvents LayoutControlItem27 As DevExpress.XtraLayout.LayoutControlItem
Friend WithEvents LayoutControlItem15 As DevExpress.XtraLayout.LayoutControlItem
Friend WithEvents BarButtonItem3 As DevExpress.XtraBars.BarButtonItem
End Class

View File

@@ -135,27 +135,86 @@
<data name="BarButtonItem1.Caption" xml:space="preserve">
<value>Speichern</value>
</data>
<assembly alias="DevExpress.Data.v21.2" name="DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<data name="BarButtonItem1.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAMICAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6IzczNzM3NDt9Cgku
WWVsbG93e2ZpbGw6I0ZDQjAxQjt9CgkuR3JlZW57ZmlsbDojMTI5QzQ5O30KCS5CbHVle2ZpbGw6IzM4
N0NCNzt9CgkuUmVke2ZpbGw6I0QwMjEyNzt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh
Y2l0eTowLjU7fQoJLnN0MXtvcGFjaXR5OjAuNzU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQoJLnN0M3tk
aXNwbGF5Om5vbmU7ZmlsbDojNzM3Mzc0O30KPC9zdHlsZT4NCiAgPHBhdGggZD0iTTI3LDRoLTN2MTBI
OFY0SDVDNC40LDQsNCw0LjQsNCw1djIyYzAsMC42LDAuNCwxLDEsMWgyMmMwLjYsMCwxLTAuNCwxLTFW
NUMyOCw0LjQsMjcuNiw0LDI3LDR6IE0yNCwyNEg4di02ICBoMTZWMjR6IE0xMCw0djhoMTBWNEgxMHog
TTE0LDEwaC0yVjZoMlYxMHoiIGNsYXNzPSJCbGFjayIgLz4NCjwvc3ZnPgs=
</value>
</data>
<data name="BarButtonItem2.Caption" xml:space="preserve">
<value>Löschen</value>
</data>
<data name="tslblAenderungen.Caption" xml:space="preserve">
<value>tslblAenderungen</value>
</data>
<data name="BarButtonItem3.Caption" xml:space="preserve">
<value>Speichern und Schliesen</value>
</data>
<data name="BarButtonItem3.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAGkEAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ
LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5HcmVlbntmaWxsOiMwMzlD
MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh
Y2l0eTowLjU7fQoJLnN0MXtkaXNwbGF5Om5vbmU7fQoJLnN0MntkaXNwbGF5OmlubGluZTtmaWxsOiMw
MzlDMjM7fQoJLnN0M3tkaXNwbGF5OmlubGluZTtmaWxsOiNEMTFDMUM7fQoJLnN0NHtkaXNwbGF5Omlu
bGluZTtmaWxsOiM3MjcyNzI7fQo8L3N0eWxlPg0KICA8ZyBpZD0iU2F2ZUFuZENsb3NlIj4NCiAgICA8
cGF0aCBkPSJNNiwxNlY2SDNDMi40LDYsMiw2LjQsMiw3djIyYzAsMC42LDAuNCwxLDEsMWgyMmMwLjYs
MCwxLTAuNCwxLTFWMTZINnogTTYsMjZ2LTZoMTZ2Nkg2eiBNMTYsNkg4djhoOFY2eiAgICBNMTIsMTJo
LTJWOGgyVjEyeiIgY2xhc3M9IkJsYWNrIiAvPg0KICAgIDxwYXRoIGQ9Ik0yOSwySDE5Yy0wLjUsMC0x
LDAuNS0xLDF2MTBjMCwwLjUsMC41LDEsMSwxaDEwYzAuNSwwLDEtMC41LDEtMVYzQzMwLDIuNSwyOS41
LDIsMjksMnogTTI3LjcsMTAuNCAgIGMwLjQsMC40LDAuNCwxLDAsMS4zYy0wLjQsMC40LTEsMC40LTEu
MywwTDI0LDkuM2wtMi40LDIuNGMtMC40LDAuNC0xLDAuNC0xLjMsMGMtMC40LTAuNC0wLjQtMSwwLTEu
M0wyMi43LDhsLTIuNC0yLjQgICBjLTAuNC0wLjQtMC40LTEsMC0xLjNjMC40LTAuNCwxLTAuNCwxLjMs
MEwyNCw2LjdsMi40LTIuNGMwLjQtMC40LDEtMC40LDEuMywwYzAuNCwwLjQsMC40LDEsMCwxLjNMMjUu
Myw4TDI3LjcsMTAuNHoiIGNsYXNzPSJSZWQiIC8+DQogIDwvZz4NCjwvc3ZnPgs=
</value>
</data>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="RibbonControl1.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<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>RibbonPageGroup1</value>
</data>
<data name="RibbonPage1.Text" xml:space="preserve">
<value>RibbonPage1</value>
</data>
<data name="RibbonControl1.Size" type="System.Drawing.Size, System.Drawing">
<value>630, 67</value>
<value>840, 82</value>
</data>
<data name="RibbonStatusBar1.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 920</value>
<value>0, 1337</value>
</data>
<data name="RibbonStatusBar1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="RibbonStatusBar1.Size" type="System.Drawing.Size, System.Drawing">
<value>630, 22</value>
<value>840, 28</value>
</data>
<data name="&gt;&gt;RibbonStatusBar1.Name" xml:space="preserve">
<value>RibbonStatusBar1</value>
@@ -181,21 +240,20 @@
<data name="&gt;&gt;RibbonControl1.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="RibbonPageGroup1.Text" xml:space="preserve">
<value>RibbonPageGroup1</value>
</data>
<data name="RibbonPage2.Text" xml:space="preserve">
<value>RibbonPage2</value>
</data>
<data name="SimpleButton4.Location" type="System.Drawing.Point, System.Drawing">
<value>532, 470</value>
<value>710, 628</value>
</data>
<data name="SimpleButton4.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="SimpleButton4.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>10, 10, 10, 10</value>
<value>13, 15, 13, 15</value>
</data>
<data name="SimpleButton4.Size" type="System.Drawing.Size, System.Drawing">
<value>86, 42</value>
<value>114, 57</value>
</data>
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="SimpleButton4.TabIndex" type="System.Int32, mscorlib">
@@ -217,10 +275,13 @@
<value>4</value>
</data>
<data name="FORMULA_SQLTextBox.Location" type="System.Drawing.Point, System.Drawing">
<value>142, 478</value>
<value>182, 640</value>
</data>
<data name="FORMULA_SQLTextBox.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="FORMULA_SQLTextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>378, 20</value>
<value>512, 25</value>
</data>
<data name="FORMULA_SQLTextBox.TabIndex" type="System.Int32, mscorlib">
<value>32</value>
@@ -238,13 +299,16 @@
<value>5</value>
</data>
<data name="SimpleButton3.Location" type="System.Drawing.Point, System.Drawing">
<value>532, 424</value>
<value>710, 565</value>
</data>
<data name="SimpleButton3.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="SimpleButton3.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>10, 10, 10, 10</value>
<value>13, 15, 13, 15</value>
</data>
<data name="SimpleButton3.Size" type="System.Drawing.Size, System.Drawing">
<value>86, 42</value>
<value>114, 57</value>
</data>
<data name="SimpleButton3.TabIndex" type="System.Int32, mscorlib">
<value>31</value>
@@ -265,10 +329,13 @@
<value>6</value>
</data>
<data name="FORMULA_EXPRESSIONTextBox.Location" type="System.Drawing.Point, System.Drawing">
<value>142, 432</value>
<value>182, 577</value>
</data>
<data name="FORMULA_EXPRESSIONTextBox.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="FORMULA_EXPRESSIONTextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>378, 20</value>
<value>512, 25</value>
</data>
<data name="FORMULA_EXPRESSIONTextBox.TabIndex" type="System.Int32, mscorlib">
<value>29</value>
@@ -286,10 +353,13 @@
<value>7</value>
</data>
<data name="LU_CAPTIONTextBox.Location" type="System.Drawing.Point, System.Drawing">
<value>142, 306</value>
<value>182, 407</value>
</data>
<data name="LU_CAPTIONTextBox.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="LU_CAPTIONTextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>468, 20</value>
<value>632, 25</value>
</data>
<data name="LU_CAPTIONTextBox.TabIndex" type="System.Int32, mscorlib">
<value>26</value>
@@ -307,10 +377,13 @@
<value>8</value>
</data>
<data name="GUIDTextBox.Location" type="System.Drawing.Point, System.Drawing">
<value>142, 20</value>
<value>182, 30</value>
</data>
<data name="GUIDTextBox.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GUIDTextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>468, 20</value>
<value>632, 22</value>
</data>
<data name="GUIDTextBox.TabIndex" type="System.Int32, mscorlib">
<value>4</value>
@@ -328,10 +401,13 @@
<value>9</value>
</data>
<data name="SPALTENNAMETextBox.Location" type="System.Drawing.Point, System.Drawing">
<value>142, 60</value>
<value>182, 82</value>
</data>
<data name="SPALTENNAMETextBox.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="SPALTENNAMETextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>468, 20</value>
<value>632, 22</value>
</data>
<data name="SPALTENNAMETextBox.TabIndex" type="System.Int32, mscorlib">
<value>5</value>
@@ -349,10 +425,13 @@
<value>10</value>
</data>
<data name="SPALTEN_HEADERTextBox.Location" type="System.Drawing.Point, System.Drawing">
<value>142, 100</value>
<value>182, 134</value>
</data>
<data name="SPALTEN_HEADERTextBox.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="SPALTEN_HEADERTextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>468, 20</value>
<value>632, 22</value>
</data>
<data name="SPALTEN_HEADERTextBox.TabIndex" type="System.Int32, mscorlib">
<value>6</value>
@@ -373,14 +452,17 @@
<value>0</value>
</data>
<data name="SPALTENBREITETextBox.Location" type="System.Drawing.Point, System.Drawing">
<value>142, 140</value>
<value>182, 186</value>
</data>
<data name="SPALTENBREITETextBox.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<assembly alias="DevExpress.Utils.v21.2" name="DevExpress.Utils.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<data name="SPALTENBREITETextBox.Properties.Buttons" type="DevExpress.XtraEditors.Controls.ButtonPredefines, DevExpress.Utils.v21.2">
<value>Combo</value>
</data>
<data name="SPALTENBREITETextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>162, 20</value>
<value>224, 24</value>
</data>
<data name="SPALTENBREITETextBox.TabIndex" type="System.Int32, mscorlib">
<value>7</value>
@@ -398,10 +480,13 @@
<value>12</value>
</data>
<data name="REGEX_MATCHTextBox.Location" type="System.Drawing.Point, System.Drawing">
<value>142, 220</value>
<value>182, 292</value>
</data>
<data name="REGEX_MATCHTextBox.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="REGEX_MATCHTextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>378, 20</value>
<value>512, 22</value>
</data>
<data name="REGEX_MATCHTextBox.TabIndex" type="System.Int32, mscorlib">
<value>8</value>
@@ -419,16 +504,16 @@
<value>13</value>
</data>
<data name="SimpleButton1.Location" type="System.Drawing.Point, System.Drawing">
<value>532, 212</value>
<value>710, 280</value>
</data>
<data name="SimpleButton1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>10, 10, 10, 10</value>
<value>13, 15, 13, 15</value>
</data>
<data name="SimpleButton1.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>10, 10, 10, 10</value>
<value>13, 15, 13, 15</value>
</data>
<data name="SimpleButton1.Size" type="System.Drawing.Size, System.Drawing">
<value>86, 42</value>
<value>114, 57</value>
</data>
<data name="SimpleButton1.TabIndex" type="System.Int32, mscorlib">
<value>9</value>
@@ -449,10 +534,13 @@
<value>14</value>
</data>
<data name="REGEX_MESSAGE_DETextBox.Location" type="System.Drawing.Point, System.Drawing">
<value>142, 266</value>
<value>182, 355</value>
</data>
<data name="REGEX_MESSAGE_DETextBox.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="REGEX_MESSAGE_DETextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>468, 20</value>
<value>632, 22</value>
</data>
<data name="REGEX_MESSAGE_DETextBox.TabIndex" type="System.Int32, mscorlib">
<value>10</value>
@@ -470,10 +558,13 @@
<value>15</value>
</data>
<data name="SQL_COMMANDTextBox.Location" type="System.Drawing.Point, System.Drawing">
<value>142, 346</value>
<value>182, 462</value>
</data>
<data name="SQL_COMMANDTextBox.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="SQL_COMMANDTextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>378, 20</value>
<value>512, 22</value>
</data>
<data name="SQL_COMMANDTextBox.TabIndex" type="System.Int32, mscorlib">
<value>11</value>
@@ -491,13 +582,16 @@
<value>16</value>
</data>
<data name="SimpleButton2.Location" type="System.Drawing.Point, System.Drawing">
<value>532, 338</value>
<value>710, 450</value>
</data>
<data name="SimpleButton2.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="SimpleButton2.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>10, 10, 10, 10</value>
<value>13, 15, 13, 15</value>
</data>
<data name="SimpleButton2.Size" type="System.Drawing.Size, System.Drawing">
<value>86, 42</value>
<value>114, 57</value>
</data>
<data name="SimpleButton2.TabIndex" type="System.Int32, mscorlib">
<value>12</value>
@@ -518,10 +612,13 @@
<value>17</value>
</data>
<data name="TextEdit7.Location" type="System.Drawing.Point, System.Drawing">
<value>142, 524</value>
<value>182, 703</value>
</data>
<data name="TextEdit7.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="TextEdit7.Size" type="System.Drawing.Size, System.Drawing">
<value>162, 20</value>
<value>224, 22</value>
</data>
<data name="TextEdit7.TabIndex" type="System.Int32, mscorlib">
<value>13</value>
@@ -539,10 +636,13 @@
<value>18</value>
</data>
<data name="TextEdit8.Location" type="System.Drawing.Point, System.Drawing">
<value>446, 524</value>
<value>588, 703</value>
</data>
<data name="TextEdit8.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="TextEdit8.Size" type="System.Drawing.Size, System.Drawing">
<value>164, 20</value>
<value>226, 22</value>
</data>
<data name="TextEdit8.TabIndex" type="System.Int32, mscorlib">
<value>14</value>
@@ -560,10 +660,13 @@
<value>19</value>
</data>
<data name="CHANGED_WHOTextBox.Location" type="System.Drawing.Point, System.Drawing">
<value>142, 564</value>
<value>182, 755</value>
</data>
<data name="CHANGED_WHOTextBox.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="CHANGED_WHOTextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>162, 20</value>
<value>224, 22</value>
</data>
<data name="CHANGED_WHOTextBox.TabIndex" type="System.Int32, mscorlib">
<value>15</value>
@@ -581,10 +684,13 @@
<value>20</value>
</data>
<data name="TextEdit10.Location" type="System.Drawing.Point, System.Drawing">
<value>446, 564</value>
<value>588, 755</value>
</data>
<data name="TextEdit10.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="TextEdit10.Size" type="System.Drawing.Size, System.Drawing">
<value>164, 20</value>
<value>226, 22</value>
</data>
<data name="TextEdit10.TabIndex" type="System.Int32, mscorlib">
<value>16</value>
@@ -602,13 +708,16 @@
<value>21</value>
</data>
<data name="READ_ONLYCheckBox.Location" type="System.Drawing.Point, System.Drawing">
<value>24, 653</value>
<value>32, 866</value>
</data>
<data name="READ_ONLYCheckBox.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="READ_ONLYCheckBox.Properties.Caption" xml:space="preserve">
<value>Read Only</value>
</data>
<data name="READ_ONLYCheckBox.Size" type="System.Drawing.Size, System.Drawing">
<value>582, 18</value>
<value>776, 21</value>
</data>
<data name="READ_ONLYCheckBox.TabIndex" type="System.Int32, mscorlib">
<value>17</value>
@@ -626,13 +735,16 @@
<value>22</value>
</data>
<data name="LOAD_IDX_VALUECheckBox.Location" type="System.Drawing.Point, System.Drawing">
<value>24, 697</value>
<value>32, 920</value>
</data>
<data name="LOAD_IDX_VALUECheckBox.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="LOAD_IDX_VALUECheckBox.Properties.Caption" xml:space="preserve">
<value>Lade Indexdaten</value>
</data>
<data name="LOAD_IDX_VALUECheckBox.Size" type="System.Drawing.Size, System.Drawing">
<value>582, 18</value>
<value>776, 21</value>
</data>
<data name="LOAD_IDX_VALUECheckBox.TabIndex" type="System.Int32, mscorlib">
<value>18</value>
@@ -650,13 +762,16 @@
<value>23</value>
</data>
<data name="VALIDATIONCheckbox.Location" type="System.Drawing.Point, System.Drawing">
<value>24, 629</value>
<value>32, 838</value>
</data>
<data name="VALIDATIONCheckbox.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="VALIDATIONCheckbox.Properties.Caption" xml:space="preserve">
<value>Muss ausgefüllt werden</value>
</data>
<data name="VALIDATIONCheckbox.Size" type="System.Drawing.Size, System.Drawing">
<value>288, 18</value>
<value>384, 21</value>
</data>
<data name="VALIDATIONCheckbox.TabIndex" type="System.Int32, mscorlib">
<value>19</value>
@@ -674,13 +789,16 @@
<value>24</value>
</data>
<data name="ADVANCED_LOOKUPCheckbox.Location" type="System.Drawing.Point, System.Drawing">
<value>24, 675</value>
<value>32, 893</value>
</data>
<data name="ADVANCED_LOOKUPCheckbox.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="ADVANCED_LOOKUPCheckbox.Properties.Caption" xml:space="preserve">
<value>Erweitertes Auswahl Control (für lange Listen)</value>
</data>
<data name="ADVANCED_LOOKUPCheckbox.Size" type="System.Drawing.Size, System.Drawing">
<value>582, 18</value>
<value>776, 21</value>
</data>
<data name="ADVANCED_LOOKUPCheckbox.TabIndex" type="System.Int32, mscorlib">
<value>20</value>
@@ -698,10 +816,13 @@
<value>25</value>
</data>
<data name="DEFAULTVALUETextBox.Location" type="System.Drawing.Point, System.Drawing">
<value>142, 392</value>
<value>182, 525</value>
</data>
<data name="DEFAULTVALUETextBox.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="DEFAULTVALUETextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>468, 20</value>
<value>632, 22</value>
</data>
<data name="DEFAULTVALUETextBox.TabIndex" type="System.Int32, mscorlib">
<value>21</value>
@@ -722,13 +843,16 @@
<value>0</value>
</data>
<data name="SEQUENCETextBox.Location" type="System.Drawing.Point, System.Drawing">
<value>446, 140</value>
<value>588, 186</value>
</data>
<data name="SEQUENCETextBox.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="SEQUENCETextBox.Properties.Buttons" type="DevExpress.XtraEditors.Controls.ButtonPredefines, DevExpress.Utils.v21.2">
<value>Combo</value>
</data>
<data name="SEQUENCETextBox.Size" type="System.Drawing.Size, System.Drawing">
<value>164, 20</value>
<value>226, 24</value>
</data>
<data name="SEQUENCETextBox.TabIndex" type="System.Int32, mscorlib">
<value>22</value>
@@ -746,7 +870,10 @@
<value>27</value>
</data>
<data name="SUMMARY_FUNCTIONCombobox.Location" type="System.Drawing.Point, System.Drawing">
<value>438, 629</value>
<value>578, 838</value>
</data>
<data name="SUMMARY_FUNCTIONCombobox.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="SUMMARY_FUNCTIONCombobox.Properties.Buttons" type="DevExpress.XtraEditors.Controls.ButtonPredefines, DevExpress.Utils.v21.2">
<value>Combo</value>
@@ -755,7 +882,7 @@
<value />
</data>
<data name="SUMMARY_FUNCTIONCombobox.Size" type="System.Drawing.Size, System.Drawing">
<value>168, 20</value>
<value>230, 22</value>
</data>
<data name="SUMMARY_FUNCTIONCombobox.TabIndex" type="System.Int32, mscorlib">
<value>23</value>
@@ -773,7 +900,10 @@
<value>28</value>
</data>
<data name="TYPE_COLUMNComboBox2.Location" type="System.Drawing.Point, System.Drawing">
<value>142, 180</value>
<value>182, 240</value>
</data>
<data name="TYPE_COLUMNComboBox2.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="TYPE_COLUMNComboBox2.Properties.Buttons" type="DevExpress.XtraEditors.Controls.ButtonPredefines, DevExpress.Utils.v21.2">
<value>Combo</value>
@@ -782,7 +912,7 @@
<value />
</data>
<data name="TYPE_COLUMNComboBox2.Size" type="System.Drawing.Size, System.Drawing">
<value>468, 20</value>
<value>632, 22</value>
</data>
<data name="TYPE_COLUMNComboBox2.TabIndex" type="System.Int32, mscorlib">
<value>27</value>
@@ -800,13 +930,16 @@
<value>29</value>
</data>
<data name="CheckEditInheritValue.Location" type="System.Drawing.Point, System.Drawing">
<value>24, 719</value>
<value>32, 947</value>
</data>
<data name="CheckEditInheritValue.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="CheckEditInheritValue.Properties.Caption" xml:space="preserve">
<value>Inherit Value (Vererbt den Wert der aktuellen Zelle auf alle nachfolgenden)</value>
</data>
<data name="CheckEditInheritValue.Size" type="System.Drawing.Size, System.Drawing">
<value>582, 18</value>
<value>776, 21</value>
</data>
<data name="CheckEditInheritValue.TabIndex" type="System.Int32, mscorlib">
<value>28</value>
@@ -827,7 +960,10 @@
<value>Fill</value>
</data>
<data name="LayoutControl1.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 67</value>
<value>0, 82</value>
</data>
<data name="LayoutControl1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="LayoutControlItem1.Text" xml:space="preserve">
<value>ID</value>
@@ -890,7 +1026,7 @@
<value>Formel SQL:</value>
</data>
<data name="LayoutControl1.Size" type="System.Drawing.Size, System.Drawing">
<value>630, 853</value>
<value>840, 1255</value>
</data>
<data name="LayoutControl1.TabIndex" type="System.Int32, mscorlib">
<value>33</value>
@@ -914,14 +1050,17 @@
<value>True</value>
</metadata>
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
<value>6, 13</value>
<value>8, 19</value>
</data>
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
<value>630, 942</value>
<value>840, 1365</value>
</data>
<data name="$this.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 8.25pt</value>
</data>
<data name="$this.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="$this.Text" xml:space="preserve">
<value>Spalte bearbeiten</value>
</data>
@@ -1159,6 +1298,12 @@
<data name="&gt;&gt;LayoutControlItem15.Type" xml:space="preserve">
<value>DevExpress.XtraLayout.LayoutControlItem, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;BarButtonItem3.Name" xml:space="preserve">
<value>BarButtonItem3</value>
</data>
<data name="&gt;&gt;BarButtonItem3.Type" xml:space="preserve">
<value>DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>frmColumn_Detail</value>
</data>

View File

@@ -75,7 +75,7 @@ Public Class frmColumn_Detail
Console.WriteLine($"Called from: {stackTrace}")
End Sub
Sub Save_Data()
Sub Save_Data(pClose As Boolean)
Try
TBPM_CONTROL_TABLEBindingSource.EndEdit()
If DD_DMSLiteDataSet.TBPM_CONTROL_TABLE.GetChanges Is Nothing = False Then
@@ -104,8 +104,11 @@ Public Class frmColumn_Detail
GUIDTextBox.Text
)
tslblAenderungen.Visibility = DevExpress.XtraBars.BarItemVisibility.Always
tslblAenderungen.Caption = "Änderungen gespeichert - " & Now
' FillData(GUIDTextBox.Text)
If pClose Then
Me.Close()
Else
tslblAenderungen.Caption = "Änderungen gespeichert - " & Now
End If
Else
tslblAenderungen.Visibility = DevExpress.XtraBars.BarItemVisibility.Never
End If
@@ -164,7 +167,7 @@ Public Class frmColumn_Detail
End Sub
Private Sub BarButtonItem1_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem1.ItemClick
Save_Data()
Save_Data(False)
End Sub
Private Sub BarButtonItem2_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem2.ItemClick
@@ -301,4 +304,8 @@ Public Class frmColumn_Detail
End If
End Sub
Private Sub BarButtonItem3_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem3.ItemClick
Save_Data(True)
End Sub
End Class

File diff suppressed because it is too large Load Diff

2723
app/TaskFlow/frmMain.aa.resx Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1101,6 +1101,9 @@
DQogIDwvZz4NCjwvc3ZnPgs=
</value>
</data>
<data name="bbtnitmLanguage_Change.Caption" xml:space="preserve">
<value>Changer de langue</value>
</data>
<data name="bbtnitmLanguage_Change.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
@@ -1285,6 +1288,9 @@
yHsheegQSE69kDw7Xljgf8Vv4mCuwrW4A3kAAAAASUVORK5CYII=
</value>
</data>
<data name="barbtnitmsaveLogfiles.Caption" xml:space="preserve">
<value>Créer des fichiers journaux</value>
</data>
<data name="barbtnitmsaveLogfiles.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
@@ -1349,6 +1355,29 @@
LDEgICB2NGMwLDAuNSwwLjUsMSwxLDFoOEMzMS41LDI4LDMyLDI3LjUsMzIsMjd6IiBjbGFzcz0iWWVs
bG93IiAvPg0KICAgIDxwYXRoIGQ9Ik0wLDRoOEw0LDhMMCw0eiBNMTYsMjR2LTZoNHYtMmgtNHYtNGgt
MnYxNGg2di0ySDE2eiIgY2xhc3M9IkJsYWNrIiAvPg0KICA8L2c+DQo8L3N2Zz4L
</value>
</data>
<data name="BarButtonItem3.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAIkDAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkdyZWVue2ZpbGw6IzAzOUMyMzt9Cgku
QmxhY2t7ZmlsbDojNzI3MjcyO30KCS5SZWR7ZmlsbDojRDExQzFDO30KCS5ZZWxsb3d7ZmlsbDojRkZC
MTE1O30KCS5CbHVle2ZpbGw6IzExNzdENzt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh
Y2l0eTowLjU7fQoJLnN0MXtvcGFjaXR5OjAuNzU7fQo8L3N0eWxlPg0KICA8ZyBpZD0iSW5zZXJ0VHJl
ZVZpZXciPg0KICAgIDxwYXRoIGQ9Ik0xMyw4SDVDNC40LDgsNCw3LjYsNCw3VjNjMC0wLjUsMC40LTEs
MS0xaDhjMC42LDAsMSwwLjUsMSwxdjRDMTQsNy42LDEzLjYsOCwxMyw4eiBNMjYsMTd2LTQgICBjMC0w
LjYtMC41LTEtMS0xaC04Yy0wLjUsMC0xLDAuNC0xLDF2NGMwLDAuNSwwLjUsMSwxLDFoOEMyNS41LDE4
LDI2LDE3LjUsMjYsMTd6IE0yNiwyN3YtNGMwLTAuNS0wLjUtMS0xLTFoLThjLTAuNSwwLTEsMC41LTEs
MSAgIHY0YzAsMC41LDAuNSwxLDEsMWg4QzI1LjUsMjgsMjYsMjcuNSwyNiwyN3oiIGNsYXNzPSJZZWxs
b3ciIC8+DQogICAgPHBvbHlnb24gcG9pbnRzPSIxNCwxNiAxNCwxNCAxMCwxNCAxMCwxMCA4LDEwIDgs
MjYgMTQsMjYgMTQsMjQgMTAsMjQgMTAsMTYgICIgY2xhc3M9IkJsYWNrIiAvPg0KICA8L2c+DQo8L3N2
Zz4L
</value>
</data>
<data name="RibbonPageGroup1.Text" xml:space="preserve">
@@ -1467,7 +1496,7 @@
7g9duB90HMo+PKSE+c4Q6ouHIT5G+ijB3kZULi7PNViZZrtBlPPxZ5hhM7IpH21G9oebTGxElq0FH2yY
Rfz+uh5CyGvzT6+l6AQ9eXTR66bebwltCc/CfE/Q225BD7IUrVlqtBSeebv9DSPp72MGtFSzAAAAAElF
TkSuQmCCmAYAAIlQTkcNChoKAAAADUlIRFIAAAAYAAAAGAgGAAAA4Hc9+AAAAARnQU1BAACxjwv8YQUA
AAAJcEhZcwAADr8AAA6/ATgFUyQAAAY6SURBVEhLlVZ7TFNnFP90c1P3VOeyOA3Z/pjGTJNtWZZsxmXZ
AAAJcEhZcwAADr4AAA6+AepCscAAAAY6SURBVEhLlVZ7TFNnFP90c1P3VOeyOA3Z/pjGTJNtWZZsxmXZ
I5mKj6n44CmMqQgTwflkMBWQTcZQC0oR5RFApTJwKM/CQCoPbWlLodhSSh/0/aCF0lYdv+W7thvLNNlO
8rv35t4vv9/5zjnfOZeQJ9s0Qsh0QsjThJBnCSGzCCGzfaDP9B39Rtf8L6PET+3Zkz4vK78+sKSyO+NG
i5Rff0s+0sRT3G9ol9lvtkplV2r4FacLGnYnZZa9896aNVT0PwlNCwj4eOapnJrVFyu6a/m9WuuI0QnH
@@ -1502,7 +1531,7 @@
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADw
CAAAAk1TRnQBSQFMAgEBAgEAASwBBQEsAQUBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
CAAAAk1TRnQBSQFMAgEBAgEAATQBBQE0AQUBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
AwABQAMAARADAAEBAQABCAYAAQQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
@@ -1544,37 +1573,37 @@
</value>
</data>
<data name="tsmiValidationProfil.Size" type="System.Drawing.Size, System.Drawing">
<value>261, 26</value>
<value>317, 26</value>
</data>
<data name="tsmiValidationProfil.Text" xml:space="preserve">
<value>Démarre la validation pour le profil</value>
</data>
<data name="cmsNavPane.Size" type="System.Drawing.Size, System.Drawing">
<value>262, 30</value>
<value>318, 30</value>
</data>
<data name="PopupErinnerungInaktivierenToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>241, 30</value>
<value>287, 30</value>
</data>
<data name="PopupErinnerungInaktivierenToolStripMenuItem.Text" xml:space="preserve">
<value>Désactiver le rappel popup</value>
</data>
<data name="ToolStripSeparator1.Size" type="System.Drawing.Size, System.Drawing">
<value>238, 6</value>
<value>284, 6</value>
</data>
<data name="AnzeigenToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>241, 30</value>
<value>287, 30</value>
</data>
<data name="AnzeigenToolStripMenuItem.Text" xml:space="preserve">
<value>Apporter au front</value>
</data>
<data name="OutOfRangePMFixierenToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>241, 30</value>
<value>287, 30</value>
</data>
<data name="OutOfRangePMFixierenToolStripMenuItem.Text" xml:space="preserve">
<value>Out of Range - Rétablir les PM</value>
</data>
<data name="ContextMenuNotifyIcon.Size" type="System.Drawing.Size, System.Drawing">
<value>242, 100</value>
<value>288, 100</value>
</data>
<data name="NotifyIcon1.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>

File diff suppressed because it is too large Load Diff

View File

@@ -81,7 +81,7 @@ Public Class frmMain
Private _lastUsedOverviewSQL As String = String.Empty ' ← NEU: persistente Kopie
Private COCKPIT_PROFILE_SQL As String = String.Empty
Private COCKPIT_CONFIG_ID As Integer = 0
Private _emptyNodeCount As Integer = 0
Private Class S
@@ -562,103 +562,8 @@ Public Class frmMain
MsgBox(oMsg, MsgBoxStyle.Critical, oTitle)
Exit Sub
End If
' ===== NUR AKTIVE KNOTEN BEHALTEN =====
If oDT_STRUCTURE_NODES.Columns.Contains("ACTIVE") Then
Dim oInactiveRows As DataRow() = oDT_STRUCTURE_NODES.Select("ACTIVE = 0 OR ACTIVE IS NULL")
If oInactiveRows.Length > 0 Then
LOGGER.Debug($"Load_Treeview: Removing [{oInactiveRows.Length}] inactive node(s) (ACTIVE=0 or NULL)")
For Each oRow As DataRow In oInactiveRows
oRow.Delete()
Next
oDT_STRUCTURE_NODES.AcceptChanges()
End If
Else
LOGGER.Warn("Load_Treeview: ACTIVE column not found in FNTF_GET_COCKPIT_DEFINITION result")
End If
' ===== ANZAHL DER OVERVIEW-KNOTEN ERMITTELN (VOR WEITEREN FILTERN) =====
Dim oOverviewRows As DataRow() = oDT_STRUCTURE_NODES.Select("TYPE_ID = 0")
LOGGER.Debug($"Load_Treeview: Found [{oOverviewRows.Length}] node(s) with TYPE_ID=0 (Overview)")
' ===== MONITOR-KNOTEN ENTFERNEN WENN KEIN RECHT =====
If MONITORING_ACTIVE = False AndAlso oDT_STRUCTURE_NODES.Columns.Contains("TYPE_ID") Then
Dim oMonitorRows As DataRow() = oDT_STRUCTURE_NODES.Select("TYPE_ID = 2")
If oMonitorRows.Length > 0 Then
LOGGER.Debug($"Load_Treeview: MONITORING_ACTIVE=False - removing [{oMonitorRows.Length}] monitor node(s) from TreeList datasource")
For Each oRow As DataRow In oMonitorRows
oRow.Delete()
Next
oDT_STRUCTURE_NODES.AcceptChanges()
End If
End If
' ===== CHART-KNOTEN ENTFERNEN WENN KEIN RECHT =====
If SHOW_CHARTS = False AndAlso oDT_STRUCTURE_NODES.Columns.Contains("TYPE_ID") Then
Dim oChartRows As DataRow() = oDT_STRUCTURE_NODES.Select("TYPE_ID = 3")
If oChartRows.Length > 0 Then
LOGGER.Debug($"Load_Treeview: SHOW_CHARTS=False - removing [{oChartRows.Length}] chart node(s) from TreeList datasource")
For Each oRow As DataRow In oChartRows
oRow.Delete()
Next
oDT_STRUCTURE_NODES.AcceptChanges()
End If
End If
TreeList_Cockpit.BeginUpdate()
Try
TreeList_Cockpit.DataSource = oDT_STRUCTURE_NODES
AddHandler TreeList_Cockpit.CustomDrawNodeCell, AddressOf TreeList_Cockpit_CustomDrawNodeCell
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
' ===== KNOTEN AUF-/ZUKLAPPEN BASIEREND AUF ANZAHL DER OVERVIEW-KNOTEN =====
If oOverviewRows.Length = 1 Then
LOGGER.Debug("Load_Treeview: Only 1 overview node found - expanding all nodes")
For Each oNode As DevExpress.XtraTreeList.Nodes.TreeListNode In TreeList_Cockpit.Nodes
oNode.Expanded = True
Next
ElseIf oOverviewRows.Length > 1 Then
LOGGER.Debug($"Load_Treeview: [{oOverviewRows.Length}] overview nodes found - collapsing all nodes")
For Each oNode As DevExpress.XtraTreeList.Nodes.TreeListNode In TreeList_Cockpit.Nodes
oNode.Expanded = False
Next
Else
LOGGER.Warn("Load_Treeview: No overview nodes (TYPE_ID=0) found - keeping default collapsed state")
End If
TreeList_Cockpit.Refresh()
' ===== ANZAHL ASYNCHRON NACHLADEN =====
If oDT_STRUCTURE_NODES.Columns.Contains("SQL_QUERY_COUNT") Then
AppendCountsToTreeAsync()
End If
Dim clsck As New ClassCockpit()
clsck.CreateCockpit(oDT_STRUCTURE_NODES, TreeList_Cockpit, False)
Catch ex As Exception
LOGGER.Error(ex)
@@ -756,6 +661,8 @@ Public Class frmMain
End Sub)
_treeNodeCounts.Clear()
' ===== ZÄHLER FÜR KNOTEN OHNE WORKFLOWS =====
Dim oEmptyNodesCount As Integer = 0
TreeList_Cockpit.BeginUpdate()
Try
@@ -765,6 +672,12 @@ Public Class frmMain
Dim oCount As Integer = 0
Integer.TryParse(oResult.Count, oCount)
_treeNodeCounts(CInt(oPk)) = oCount
_treeNodeCounts(CInt(oPk)) = oCount
' ===== ZÄHLEN DER LEEREN KNOTEN =====
If oCount = 0 Then
oEmptyNodesCount += 1
End If
End If
oResult.Node.SetValue("NAME", $"{oResult.OriginalName} ({oResult.Count})")
LOGGER.Debug($"AppendCountsToTreeAsync: Node [{oResult.OriginalName}] → [{oResult.OriginalName} ({oResult.Count})]")
@@ -774,8 +687,17 @@ Public Class frmMain
End Try
TreeList_Cockpit.Refresh()
' ===== LOGGING DES ERGEBNISSES =====
LOGGER.Debug($"AppendCountsToTreeAsync: {oEmptyNodesCount} node(s) with Count=0 (no workflows) found")
_emptyNodeCount = oEmptyNodesCount
LOGGER.Debug($"AppendCountsToTreeAsync: {_emptyNodeCount} node(s) with Count=0 stored in class variable")
LOGGER.Debug("AppendCountsToTreeAsync: Finished")
Decide_Show_Empty_Workflows(Not CONFIG.Config.Hide_Empty_Workflows)
If _emptyNodeCount > 0 Then
Bchkitm_load_empty_wf.Visibility = DevExpress.XtraBars.BarItemVisibility.Never
Else
Bchkitm_load_empty_wf.Visibility = DevExpress.XtraBars.BarItemVisibility.Always
End If
Catch ex As Exception
LOGGER.Error(ex)
End Try

View File

@@ -215,7 +215,6 @@ Public Class frmMonitor
_GridBuilder = New GridBuilder(_GridList).
WithReadOnlyOptions().
WithClipboardHandler()
GridView1.ShowLoadingPanel()
Await Load_Grid_Data()
GridView1.HideLoadingPanel()
@@ -240,6 +239,11 @@ Public Class frmMonitor
SplitContainerControl2.SplitterPosition = CONFIG.Config.MonitorSplitter2_Distance
SplitContainerControl3.SplitterPosition = CONFIG.Config.MonitorSplitter3_Distance
End Select
Try
GridView1.Columns.Item("FULL_FILE_PATH").Visible = False
Catch ex As Exception
LOGGER.Debug($"Attention: No Column FULL_FILE_PATH in GridView1")
End Try
Try
DocumentViewerMonitor.Init(LOGCONFIG, GDPICTURE_LICENSE, New DigitalData.Controls.DocumentViewer.DocumentViewer.ToolbarSettings() With {
.ShowPrintButton = True,
@@ -271,9 +275,9 @@ Public Class frmMonitor
GridView1.ViewCaption = GRID1_TITLE
Format_Datetime_Columns(GridView1, "Grid 1")
Try
'GridView1.Columns.Item("FULL_FILE_PATH").Visible = False
GridView1.Columns.Item("FULL_FILE_PATH").Visible = False
Catch ex As Exception
LOGGER.Info($"Attention: No Column FULL_FILE_PATH in GridView1")
LOGGER.Debug($"Attention: No Column FULL_FILE_PATH in GridView1")
End Try
Select Case DT_MONITOR_KONFIG.Rows.Count
Case 2

View File

@@ -125,20 +125,32 @@
<data name="SplitContainerControlDoc.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="SplitContainerControlDoc.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="XtraTabControlDocs.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="XtraTabControlDocs.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="XtraTabControlDocs.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GridControlDocSearch1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="GridControlDocSearch1.EmbeddedNavigator.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GridControlDocSearch1.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="GridControlDocSearch1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GridControlDocSearch1.Size" type="System.Drawing.Size, System.Drawing">
<value>279, 446</value>
<value>466, 736</value>
</data>
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="GridControlDocSearch1.TabIndex" type="System.Int32, mscorlib">
@@ -156,8 +168,11 @@
<data name="&gt;&gt;GridControlDocSearch1.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="XtraTabPageDoc1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>5, 5, 5, 5</value>
</data>
<data name="XtraTabPageDoc1.Size" type="System.Drawing.Size, System.Drawing">
<value>349, 557</value>
<value>466, 736</value>
</data>
<data name="XtraTabPageDoc1.Text" xml:space="preserve">
<value>XtraTabPage1</value>
@@ -175,7 +190,7 @@
<value>0</value>
</data>
<data name="XtraTabControlDocs.Size" type="System.Drawing.Size, System.Drawing">
<value>351, 580</value>
<value>468, 764</value>
</data>
<data name="XtraTabControlDocs.TabIndex" type="System.Int32, mscorlib">
<value>4</value>
@@ -183,11 +198,17 @@
<data name="GridControlDocSearch2.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="GridControlDocSearch2.EmbeddedNavigator.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GridControlDocSearch2.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="GridControlDocSearch2.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GridControlDocSearch2.Size" type="System.Drawing.Size, System.Drawing">
<value>279, 446</value>
<value>466, 730</value>
</data>
<data name="GridControlDocSearch2.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
@@ -204,8 +225,11 @@
<data name="&gt;&gt;GridControlDocSearch2.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="XtraTabPageDoc2.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>5, 5, 5, 5</value>
</data>
<data name="XtraTabPageDoc2.Size" type="System.Drawing.Size, System.Drawing">
<value>349, 557</value>
<value>466, 730</value>
</data>
<data name="XtraTabPageDoc2.Text" xml:space="preserve">
<value>XtraTabPage2</value>
@@ -225,11 +249,17 @@
<data name="GridControlDocSearch3.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="GridControlDocSearch3.EmbeddedNavigator.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GridControlDocSearch3.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="GridControlDocSearch3.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GridControlDocSearch3.Size" type="System.Drawing.Size, System.Drawing">
<value>279, 446</value>
<value>466, 730</value>
</data>
<data name="GridControlDocSearch3.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
@@ -246,8 +276,11 @@
<data name="&gt;&gt;GridControlDocSearch3.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="XtraTabPageDoc3.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>5, 5, 5, 5</value>
</data>
<data name="XtraTabPageDoc3.Size" type="System.Drawing.Size, System.Drawing">
<value>349, 557</value>
<value>466, 730</value>
</data>
<data name="XtraTabPageDoc3.Text" xml:space="preserve">
<value>XtraTabPage1</value>
@@ -267,11 +300,17 @@
<data name="GridControlDocSearch4.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="GridControlDocSearch4.EmbeddedNavigator.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GridControlDocSearch4.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="GridControlDocSearch4.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GridControlDocSearch4.Size" type="System.Drawing.Size, System.Drawing">
<value>279, 446</value>
<value>466, 730</value>
</data>
<data name="GridControlDocSearch4.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
@@ -288,8 +327,11 @@
<data name="&gt;&gt;GridControlDocSearch4.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="XtraTabPageDoc4.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>5, 5, 5, 5</value>
</data>
<data name="XtraTabPageDoc4.Size" type="System.Drawing.Size, System.Drawing">
<value>349, 557</value>
<value>466, 730</value>
</data>
<data name="XtraTabPageDoc4.Text" xml:space="preserve">
<value>XtraTabPage2</value>
@@ -309,11 +351,17 @@
<data name="GridControlDocSearch5.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="GridControlDocSearch5.EmbeddedNavigator.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GridControlDocSearch5.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="GridControlDocSearch5.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GridControlDocSearch5.Size" type="System.Drawing.Size, System.Drawing">
<value>279, 446</value>
<value>466, 730</value>
</data>
<data name="GridControlDocSearch5.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
@@ -330,8 +378,11 @@
<data name="&gt;&gt;GridControlDocSearch5.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="XtraTabPageDoc5.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>5, 5, 5, 5</value>
</data>
<data name="XtraTabPageDoc5.Size" type="System.Drawing.Size, System.Drawing">
<value>349, 557</value>
<value>466, 730</value>
</data>
<data name="XtraTabPageDoc5.Text" xml:space="preserve">
<value>XtraTabPage3</value>
@@ -382,10 +433,10 @@
<value>0, 0</value>
</data>
<data name="DocumentViewer1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
<value>5, 5, 5, 5</value>
</data>
<data name="DocumentViewer1.Size" type="System.Drawing.Size, System.Drawing">
<value>503, 580</value>
<value>673, 764</value>
</data>
<data name="DocumentViewer1.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
@@ -394,7 +445,7 @@
<value>DocumentViewer1</value>
</data>
<data name="&gt;&gt;DocumentViewer1.Type" xml:space="preserve">
<value>DigitalData.Controls.DocumentViewer.DocumentViewer, DigitalData.Controls.DocumentViewer, Version=2.6.0.0, Culture=neutral, PublicKeyToken=null</value>
<value>DigitalData.Controls.DocumentViewer.DocumentViewer, DigitalData.Controls.DocumentViewer, Version=2.7.3.0, Culture=neutral, PublicKeyToken=null</value>
</data>
<data name="&gt;&gt;DocumentViewer1.Parent" xml:space="preserve">
<value>SplitContainerControlDoc.Panel2</value>
@@ -418,7 +469,7 @@
<value>1</value>
</data>
<data name="SplitContainerControlDoc.Size" type="System.Drawing.Size, System.Drawing">
<value>864, 580</value>
<value>1153, 764</value>
</data>
<data name="SplitContainerControlDoc.TabIndex" type="System.Int32, mscorlib">
<value>6</value>
@@ -439,7 +490,10 @@
<value>Fill</value>
</data>
<data name="SplitContainerSearches.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 27</value>
<value>0, 31</value>
</data>
<data name="SplitContainerSearches.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="XtraTabControlSQL.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
@@ -447,14 +501,23 @@
<data name="XtraTabControlSQL.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="XtraTabControlSQL.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GridControlSearch1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="GridControlSearch1.EmbeddedNavigator.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GridControlSearch1.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="GridControlSearch1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GridControlSearch1.Size" type="System.Drawing.Size, System.Drawing">
<value>275, 448</value>
<value>459, 741</value>
</data>
<data name="GridControlSearch1.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
@@ -471,8 +534,11 @@
<data name="&gt;&gt;GridControlSearch1.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="XtraTabPageSearch1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>5, 5, 5, 5</value>
</data>
<data name="XtraTabPageSearch1.Size" type="System.Drawing.Size, System.Drawing">
<value>344, 560</value>
<value>459, 741</value>
</data>
<data name="XtraTabPageSearch1.Text" xml:space="preserve">
<value>Search1</value>
@@ -490,7 +556,7 @@
<value>0</value>
</data>
<data name="XtraTabControlSQL.Size" type="System.Drawing.Size, System.Drawing">
<value>346, 583</value>
<value>461, 769</value>
</data>
<data name="XtraTabControlSQL.TabIndex" type="System.Int32, mscorlib">
<value>4</value>
@@ -498,11 +564,17 @@
<data name="GridControlSearch2.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="GridControlSearch2.EmbeddedNavigator.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GridControlSearch2.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="GridControlSearch2.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GridControlSearch2.Size" type="System.Drawing.Size, System.Drawing">
<value>275, 448</value>
<value>459, 729</value>
</data>
<data name="GridControlSearch2.TabIndex" type="System.Int32, mscorlib">
<value>2</value>
@@ -519,8 +591,11 @@
<data name="&gt;&gt;GridControlSearch2.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="XtraTabPageSearch2.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="XtraTabPageSearch2.Size" type="System.Drawing.Size, System.Drawing">
<value>344, 560</value>
<value>459, 729</value>
</data>
<data name="XtraTabPageSearch2.Text" xml:space="preserve">
<value>Search2</value>
@@ -540,11 +615,17 @@
<data name="GridControlSearch3.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="GridControlSearch3.EmbeddedNavigator.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GridControlSearch3.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="GridControlSearch3.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GridControlSearch3.Size" type="System.Drawing.Size, System.Drawing">
<value>275, 448</value>
<value>459, 729</value>
</data>
<data name="GridControlSearch3.TabIndex" type="System.Int32, mscorlib">
<value>2</value>
@@ -561,8 +642,11 @@
<data name="&gt;&gt;GridControlSearch3.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="XtraTabPageSearch3.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="XtraTabPageSearch3.Size" type="System.Drawing.Size, System.Drawing">
<value>344, 560</value>
<value>459, 729</value>
</data>
<data name="XtraTabPageSearch3.Text" xml:space="preserve">
<value>XtraTabPage1</value>
@@ -582,11 +666,17 @@
<data name="GridControlSearch4.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="GridControlSearch4.EmbeddedNavigator.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GridControlSearch4.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="GridControlSearch4.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GridControlSearch4.Size" type="System.Drawing.Size, System.Drawing">
<value>275, 448</value>
<value>459, 729</value>
</data>
<data name="GridControlSearch4.TabIndex" type="System.Int32, mscorlib">
<value>2</value>
@@ -603,8 +693,11 @@
<data name="&gt;&gt;GridControlSearch4.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="XtraTabPageSearch4.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="XtraTabPageSearch4.Size" type="System.Drawing.Size, System.Drawing">
<value>344, 560</value>
<value>459, 729</value>
</data>
<data name="XtraTabPageSearch4.Text" xml:space="preserve">
<value>XtraTabPage2</value>
@@ -624,11 +717,17 @@
<data name="GridControlSearch5.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="GridControlSearch5.EmbeddedNavigator.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GridControlSearch5.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="GridControlSearch5.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="GridControlSearch5.Size" type="System.Drawing.Size, System.Drawing">
<value>275, 448</value>
<value>459, 729</value>
</data>
<data name="GridControlSearch5.TabIndex" type="System.Int32, mscorlib">
<value>2</value>
@@ -645,8 +744,11 @@
<data name="&gt;&gt;GridControlSearch5.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="XtraTabPageSearch5.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="XtraTabPageSearch5.Size" type="System.Drawing.Size, System.Drawing">
<value>344, 560</value>
<value>459, 729</value>
</data>
<data name="XtraTabPageSearch5.Text" xml:space="preserve">
<value>XtraTabPage3</value>
@@ -679,19 +781,22 @@
<value>595, 17</value>
</metadata>
<data name="tsslblSQL.Size" type="System.Drawing.Size, System.Drawing">
<value>91, 17</value>
<value>115, 20</value>
</data>
<data name="tsslblSQL.Text" xml:space="preserve">
<value>No action so far</value>
</data>
<data name="statlbl.Size" type="System.Drawing.Size, System.Drawing">
<value>0, 17</value>
<value>0, 20</value>
</data>
<data name="StatusStrip1.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 583</value>
<value>0, 769</value>
</data>
<data name="StatusStrip1.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>1, 0, 19, 0</value>
</data>
<data name="StatusStrip1.Size" type="System.Drawing.Size, System.Drawing">
<value>346, 22</value>
<value>461, 26</value>
</data>
<data name="StatusStrip1.TabIndex" type="System.Int32, mscorlib">
<value>5</value>
@@ -730,22 +835,22 @@
<value>Bottom</value>
</data>
<data name="tslblDocID.Size" type="System.Drawing.Size, System.Drawing">
<value>61, 22</value>
<value>79, 28</value>
</data>
<data name="tslblDocID.Text" xml:space="preserve">
<value>tslblDocID</value>
</data>
<data name="tslblState.Size" type="System.Drawing.Size, System.Drawing">
<value>91, 22</value>
<value>115, 28</value>
</data>
<data name="tslblState.Text" xml:space="preserve">
<value>No action so far</value>
</data>
<data name="ToolStrip2.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 580</value>
<value>0, 764</value>
</data>
<data name="ToolStrip2.Size" type="System.Drawing.Size, System.Drawing">
<value>864, 25</value>
<value>1153, 31</value>
</data>
<data name="ToolStrip2.TabIndex" type="System.Int32, mscorlib">
<value>3</value>
@@ -778,7 +883,10 @@
<value>1</value>
</data>
<data name="SplitContainerSearches.Size" type="System.Drawing.Size, System.Drawing">
<value>1214, 605</value>
<value>1619, 795</value>
</data>
<data name="SplitContainerSearches.SplitterWidth" type="System.Int32, mscorlib">
<value>5</value>
</data>
<data name="SplitContainerSearches.TabIndex" type="System.Int32, mscorlib">
<value>3</value>
@@ -799,13 +907,13 @@
<value>17, 17</value>
</metadata>
<data name="DateiÖffnenToolStripMenuItem1.Size" type="System.Drawing.Size, System.Drawing">
<value>148, 22</value>
<value>184, 26</value>
</data>
<data name="DateiÖffnenToolStripMenuItem1.Text" xml:space="preserve">
<value>Öffnen</value>
</data>
<data name="EigenschaftenToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>148, 22</value>
<value>184, 26</value>
</data>
<data name="EigenschaftenToolStripMenuItem.Text" xml:space="preserve">
<value>Eigenschaften</value>
@@ -814,7 +922,7 @@
<value>Magenta</value>
</data>
<data name="ToolStripDropDownButtonFile.Size" type="System.Drawing.Size, System.Drawing">
<value>67, 24</value>
<value>79, 28</value>
</data>
<data name="ToolStripDropDownButtonFile.Text" xml:space="preserve">
<value>Datei</value>
@@ -823,7 +931,7 @@
<value>Magenta</value>
</data>
<data name="ToolStripButtonRefreshSearches.Size" type="System.Drawing.Size, System.Drawing">
<value>135, 24</value>
<value>162, 28</value>
</data>
<data name="ToolStripButtonRefreshSearches.Text" xml:space="preserve">
<value>Aktualisiere Ansicht</value>
@@ -832,7 +940,7 @@
<value>0, 0</value>
</data>
<data name="ToolStrip1.Size" type="System.Drawing.Size, System.Drawing">
<value>1214, 27</value>
<value>1619, 31</value>
</data>
<data name="ToolStrip1.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
@@ -873,7 +981,7 @@
</value>
</data>
<data name="EigenschaftenDateiToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>189, 30</value>
<value>218, 30</value>
</data>
<data name="EigenschaftenDateiToolStripMenuItem.Text" xml:space="preserve">
<value>Eigenschaften Datei</value>
@@ -936,28 +1044,28 @@
</value>
</data>
<data name="DateiÖffnenToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>189, 30</value>
<value>218, 30</value>
</data>
<data name="DateiÖffnenToolStripMenuItem.Text" xml:space="preserve">
<value>Datei öffnen</value>
</data>
<data name="ToolStripSeparator1.Size" type="System.Drawing.Size, System.Drawing">
<value>186, 6</value>
<value>215, 6</value>
</data>
<data name="ToolStripMenuItem1.Size" type="System.Drawing.Size, System.Drawing">
<value>189, 30</value>
<value>218, 30</value>
</data>
<data name="ToolStripMenuItem1.Text" xml:space="preserve">
<value>Aktualisieren</value>
</data>
<data name="LayoutZurücksetzenToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>189, 30</value>
<value>218, 30</value>
</data>
<data name="LayoutZurücksetzenToolStripMenuItem.Text" xml:space="preserve">
<value>Layout zurücksetzen</value>
</data>
<data name="ContextMenuStripWMFile.Size" type="System.Drawing.Size, System.Drawing">
<value>190, 130</value>
<value>219, 130</value>
</data>
<data name="&gt;&gt;ContextMenuStripWMFile.Name" xml:space="preserve">
<value>ContextMenuStripWMFile</value>
@@ -969,16 +1077,16 @@
<value>423, 17</value>
</metadata>
<data name="ToolStripSeparator2.Size" type="System.Drawing.Size, System.Drawing">
<value>147, 6</value>
<value>168, 6</value>
</data>
<data name="ToolStripMenuItem4.Size" type="System.Drawing.Size, System.Drawing">
<value>150, 30</value>
<value>171, 30</value>
</data>
<data name="ToolStripMenuItem4.Text" xml:space="preserve">
<value>Aktualisieren</value>
</data>
<data name="ContextMenuStripSQL.Size" type="System.Drawing.Size, System.Drawing">
<value>151, 40</value>
<value>172, 40</value>
</data>
<data name="&gt;&gt;ContextMenuStripSQL.Name" xml:space="preserve">
<value>ContextMenuStripSQL</value>
@@ -993,10 +1101,10 @@
<value>81</value>
</metadata>
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
<value>6, 13</value>
<value>8, 17</value>
</data>
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
<value>1214, 632</value>
<value>1619, 826</value>
</data>
<data name="$this.Font" type="System.Drawing.Font, System.Drawing">
<value>Tahoma, 8.25pt</value>
@@ -1034,6 +1142,9 @@
AACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAP//AAA=
</value>
</data>
<data name="$this.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="$this.Text" xml:space="preserve">
<value>Zusätzliche Suchen</value>
</data>

View File

@@ -3,6 +3,7 @@ Imports System.Data.SqlClient
Imports System.IO
Imports System.Runtime.InteropServices
Imports DevExpress.Utils
Imports DevExpress.XtraExport.Helpers
Imports DevExpress.XtraGrid
Imports DevExpress.XtraGrid.Columns
Imports DevExpress.XtraGrid.Views.Base
@@ -450,8 +451,8 @@ Public Class frmValidatorSearch
End Sub
Sub Refresh_Load_GridSQL(ConID As Integer, SQLCommand As String, TabIndex As Integer, TabCaption As String)
Try
Dim myGridControl As DevExpress.XtraGrid.GridControl
Dim myGridview As DevExpress.XtraGrid.Views.Grid.GridView
Dim myGridControl As New DevExpress.XtraGrid.GridControl
Dim myGridview As New DevExpress.XtraGrid.Views.Grid.GridView
Select Case TabIndex
Case 0
GridControlSearch1.DataSource = Nothing
@@ -487,24 +488,15 @@ Public Class frmValidatorSearch
If Not IsNothing(oDatatable) Then
XtraTabControlSQL.TabPages(TabIndex).Text = $"{TabCaption} ({oDatatable.Rows.Count})"
Select Case TabIndex
Case 0
GridControlSearch1.DataSource = oDatatable
GridViewSearch1.BestFitColumns(True)
Case 1
GridControlSearch2.DataSource = oDatatable
GridViewSearch2.BestFitColumns(True)
Case 2
GridControlSearch3.DataSource = oDatatable
GridViewSearch3.BestFitColumns(True)
Case 3
GridControlSearch4.DataSource = oDatatable
GridViewSearch4.BestFitColumns(True)
Case 4
GridControlSearch5.DataSource = oDatatable
GridViewSearch5.BestFitColumns(True)
myGridControl.DataSource = oDatatable
myGridview.BestFitColumns(True)
myGridControl.ForceInitialize()
myGridview.PopulateColumns()
Column_Formatting(myGridview)
End Select
tsslblSQL.Text = $"Tab [{TabCaption}] refreshed - {Now}"
End If
Catch ex As Exception
@@ -567,6 +559,7 @@ Public Class frmValidatorSearch
clsWMDocGrid.DTDocuments = oDatatable
Create_GridControl(myGridview, oDatatable)
Column_Formatting(myGridview)
Dim oxmlPath As String = ""
oxmlPath = Get_DocGrid_Layout_Filename(XtraTabControlDocs.SelectedTabPageIndex)
@@ -583,6 +576,47 @@ Public Class frmValidatorSearch
LOGGER.Error(ex)
End Try
End Sub
Private Sub Column_Formatting(pGridview As GridView)
' ========== SPALTENFORMATIERUNG ANWENDEN ==========
Try
For Each oColumn As DevExpress.XtraGrid.Columns.GridColumn In pGridview.Columns
For Each oRow As DataRow In BASEDATA_TBDD_COLUMNS_FORMAT.Rows
Try
Dim colName = oRow("COLUMN_TITLE").ToString()
Dim oViewName = oRow("GRIDVIEW").ToString()
Dim oSollFormatType = oRow("TYPE2FORMAT").ToString()
If (oColumn.FieldName = colName OrElse oColumn.Caption = colName) And (oViewName = pGridview.Name Or oViewName = "ALL") Then
Try
LOGGER.Debug($"Anwenden der Formatierung '{oSollFormatType}' auf Spalte '{colName}' in GridView '{pGridview.Name}': SollFormatType='{oSollFormatType}'")
If oSollFormatType = "DateTime" Then
If oColumn.ColumnType <> GetType(DateTime) Then
oColumn.DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime
End If
If oColumn.ColumnType = GetType(DateTime) And oColumn.DisplayFormat.FormatString <> "dd.MM.yyyy HH:mm:ss" Then
oColumn.DisplayFormat.FormatString = "dd.MM.yyyy HH:mm:ss"
End If
ElseIf oSollFormatType = "Numeric" Then
If oColumn.ColumnType <> GetType(Int32) Then
oColumn.DisplayFormat.FormatType = DevExpress.Utils.FormatType.Numeric
End If
End If
Catch ex As Exception
LOGGER.Warn($"⚠️ Fehler beim Anwenden der Formatierung '{oSollFormatType}' auf Spalte " & oColumn.FieldName & ": " & ex.Message)
End Try
End If
Catch ex As Exception
LOGGER.Warn("⚠️ Fehler in Column_Formatting beim Anwenden der Formatierung auf Spalte " & oColumn.FieldName & ": " & ex.Message)
End Try
Next
Next
Catch ex As Exception
LOGGER.Warn("⚠️ Fehler beim Anwenden der Formatierung aus TBDD_COLUMNS_FORMAT: " & ex.Message)
End Try
End Sub
Private Function Create_GridControl(MyGridView As GridView, _datatable As DataTable) As GridView
Dim oMyDocDatatable As New DataTable
Try