FORMEL_SQL release Candidate
This commit is contained in:
@@ -26,6 +26,8 @@ Namespace ControlCreator
|
||||
Private newRowModified As Boolean
|
||||
Private isApplyingInheritedValue As Boolean
|
||||
Private _FormulaColumnNames As New HashSet(Of String)(StringComparer.OrdinalIgnoreCase)
|
||||
Private _FormulaSqlColumns As New Dictionary(Of String, FormulaSqlDefinition)(StringComparer.OrdinalIgnoreCase)
|
||||
|
||||
Private _isRefreshingFormula As Boolean = False ' *** NEU: Flag für Formel-Refresh ***
|
||||
Private _currencySymbol As String = "€"
|
||||
''' <summary>
|
||||
@@ -36,6 +38,63 @@ Namespace ControlCreator
|
||||
''' auf das aktuelle Symbol zugreifen.
|
||||
''' </summary>
|
||||
Private Shared _CurrencySymbolByGridName As New Dictionary(Of String, String)(StringComparer.OrdinalIgnoreCase)
|
||||
|
||||
''' <summary>
|
||||
''' Definiert eine SQL-basierte Formelspalte mit allen nötigen Metadaten.
|
||||
''' </summary>
|
||||
Private Class FormulaSqlDefinition
|
||||
Public Property SqlTemplate As String
|
||||
Public Property ReferencedColumns As List(Of String)
|
||||
End Class
|
||||
''' <summary>
|
||||
''' Extrahiert alle {#TBCOL#ColumnName}-Platzhalter aus einem SQL-Template.
|
||||
''' </summary>
|
||||
Private Function GetReferencedSqlColumnNames(sqlTemplate As String) As List(Of String)
|
||||
Dim columnNames As New List(Of String)
|
||||
Dim pattern As String = "\{#TBCOL#([^}]+)\}"
|
||||
Dim matches = Regex.Matches(sqlTemplate, pattern)
|
||||
|
||||
For Each match As Match In matches
|
||||
Dim colName = match.Groups(1).Value
|
||||
If Not columnNames.Contains(colName, StringComparer.OrdinalIgnoreCase) Then
|
||||
columnNames.Add(colName)
|
||||
End If
|
||||
Next
|
||||
|
||||
Return columnNames
|
||||
End Function
|
||||
''' <summary>
|
||||
''' Ersetzt alle {#TBCOL#ColumnName}-Platzhalter durch die aktuellen Zeilenwerte.
|
||||
''' Gibt den ausführbaren SQL-String zurück.
|
||||
''' </summary>
|
||||
Private Function ResolveSqlTemplate(sqlTemplate As String, pView As GridView, rowHandle As Integer) As String
|
||||
Dim resolvedSql As String = sqlTemplate
|
||||
Dim pattern As String = "\{#TBCOL#([^}]+)\}"
|
||||
Dim matches = Regex.Matches(sqlTemplate, pattern)
|
||||
|
||||
For Each match As Match In matches
|
||||
Dim colName = match.Groups(1).Value
|
||||
Dim cellValue = pView.GetRowCellValue(rowHandle, colName)
|
||||
Dim safeValue As String
|
||||
|
||||
If cellValue Is Nothing OrElse IsDBNull(cellValue) Then
|
||||
safeValue = "NULL"
|
||||
ElseIf TypeOf cellValue Is String Then
|
||||
' SQL-Injection-Schutz: Einfache Anführungszeichen escapen
|
||||
safeValue = "'" & cellValue.ToString().Replace("'", "''") & "'"
|
||||
ElseIf TypeOf cellValue Is Boolean Then
|
||||
safeValue = If(CBool(cellValue), "1", "0")
|
||||
Else
|
||||
' Numerische Werte: Invariant-Format (Punkt als Dezimaltrenner)
|
||||
safeValue = Convert.ToString(cellValue, CultureInfo.InvariantCulture)
|
||||
End If
|
||||
|
||||
resolvedSql = resolvedSql.Replace(match.Value, safeValue)
|
||||
_Logger.Debug("Resolved SQL placeholder [{0}] with value [{1}] → {2}", match.Value, cellValue, safeValue)
|
||||
Next
|
||||
_Logger.Debug("Final resolved SQL: {0}", resolvedSql)
|
||||
Return resolvedSql
|
||||
End Function
|
||||
Public Sub New(pLogConfig As LogConfig, pGridTables As Dictionary(Of Integer, Dictionary(Of String, RepositoryItem)), pCurrencySymbol As String)
|
||||
_LogConfig = pLogConfig
|
||||
_Logger = pLogConfig.GetLogger()
|
||||
@@ -81,9 +140,19 @@ Namespace ControlCreator
|
||||
End Select
|
||||
|
||||
Dim oFormulaExpression = ObjectEx.NotNull(oRow.Item("FORMULA_EXPRESSION"), String.Empty)
|
||||
Dim oFormulaSql = ObjectEx.NotNull(oRow.Item("FORMULA_SQL"), String.Empty)
|
||||
|
||||
' *** VALIDIERUNG: Beides gleichzeitig ist nicht erlaubt ***
|
||||
If oFormulaExpression <> String.Empty AndAlso oFormulaSql <> String.Empty Then
|
||||
_Logger.Warn("⚠️ [CreateGridColumns] Column [{0}] has BOTH FORMULA_EXPRESSION and FORMULA_SQL – FORMULA_SQL will be ignored.", oColumn.ColumnName)
|
||||
' FORMULA_EXPRESSION hat Vorrang → nur Expression wird als DataTable.Expression gesetzt
|
||||
End If
|
||||
|
||||
If oFormulaExpression <> String.Empty Then
|
||||
' Expression merken, aber erst später setzen
|
||||
' FORMULA_EXPRESSION: Expression merken, aber erst später setzen (DataTable.Expression)
|
||||
columnsWithExpressions.Add(New Tuple(Of DataColumn, String)(oColumn, oFormulaExpression))
|
||||
' HINWEIS: FORMULA_SQL-Spalten bekommen KEINE DataTable.Expression,
|
||||
' da deren Werte programmatisch via SetRowCellValue gesetzt werden.
|
||||
End If
|
||||
|
||||
Try
|
||||
@@ -279,7 +348,6 @@ Namespace ControlCreator
|
||||
pGridView.BeginUpdate()
|
||||
Try
|
||||
' Schritt 1: Altes RepositoryItem entfernen (ohne vorher ColumnEdit=Nothing)
|
||||
' ColumnEdit NICHT auf Nothing setzen – das würde einen Zwischenrender auslösen
|
||||
Dim oldItems = pGrid.RepositoryItems.OfType(Of RepositoryItemTextEdit)().
|
||||
Where(Function(item) item.MaskSettings.MaskExpression = "c").ToList()
|
||||
For Each oldItem In oldItems
|
||||
@@ -297,19 +365,33 @@ Namespace ControlCreator
|
||||
|
||||
If ObjectEx.NotNull(oColumnData.Item("TYPE_COLUMN"), String.Empty).ToString() <> "CURRENCY" Then Continue For
|
||||
|
||||
Dim oIsFormula As Boolean =
|
||||
Dim oIsFormulaExpression As Boolean =
|
||||
ObjectEx.NotNull(oColumnData.Item("FORMULA_EXPRESSION"), String.Empty) <> String.Empty
|
||||
Dim oIsFormulaSql As Boolean =
|
||||
ObjectEx.NotNull(oColumnData.Item("FORMULA_SQL"), String.Empty) <> String.Empty
|
||||
|
||||
' Entweder/Oder: Beide gleichzeitig → Expression gewinnt, SQL ignoriert
|
||||
If oIsFormulaExpression AndAlso oIsFormulaSql Then
|
||||
_Logger.Warn("[UpdateCurrencyFormat] Column [{0}] has BOTH FORMULA_EXPRESSION and FORMULA_SQL – treating as EXPRESSION only.", oCol.FieldName)
|
||||
oIsFormulaSql = False
|
||||
End If
|
||||
|
||||
' Spalte ist eine Formel-Spalte (Expression ODER SQL) → ReadOnly, kein ColumnEdit
|
||||
Dim oIsAnyFormula As Boolean = oIsFormulaExpression OrElse oIsFormulaSql
|
||||
|
||||
' DisplayFormat immer aktualisieren
|
||||
oCol.DisplayFormat.FormatType = FormatType.Custom
|
||||
oCol.DisplayFormat.FormatString = $"#,##0.00 {_currencySymbol}"
|
||||
|
||||
If Not oIsFormula AndAlso oCol.OptionsColumn.AllowEdit Then
|
||||
' Direkt neues RepositoryItem setzen – kein Umweg über RepositoryItems-Collection
|
||||
If Not oIsAnyFormula AndAlso oCol.OptionsColumn.AllowEdit Then
|
||||
' Nur editierbare Nicht-Formel-Spalten bekommen ein ColumnEdit
|
||||
oCol.ColumnEdit = riTextEdit
|
||||
_Logger.Debug("[UpdateCurrencyFormat] ColumnEdit=[{0}] für [{1}]",
|
||||
DirectCast(oCol.ColumnEdit, RepositoryItemTextEdit).DisplayFormat.FormatString,
|
||||
oCol.FieldName)
|
||||
Else
|
||||
_Logger.Debug("[UpdateCurrencyFormat] [{0}]: ReadOnly/Formula – nur DisplayFormat aktualisiert (IsExpression=[{1}], IsSql=[{2}])",
|
||||
oCol.FieldName, oIsFormulaExpression, oIsFormulaSql)
|
||||
End If
|
||||
|
||||
If ObjectEx.NotNull(oColumnData.Item("SUMMARY_FUNCTION"), String.Empty) =
|
||||
@@ -322,13 +404,6 @@ Namespace ControlCreator
|
||||
pGridView.EndUpdate()
|
||||
End Try
|
||||
|
||||
' *** KEIN DataSource-Rebind ***
|
||||
' DataSource-Rebind (pGrid.DataSource = Nothing / = oCurrentDataSource) wirft
|
||||
' den gecachten Display-Text weg und erzwingt einen Neu-Render durch DevExpress.
|
||||
' Dabei greift DevExpress auf die Mask-Formatierung des RepositoryItems zurück
|
||||
' (z.B. "c" mit EUR-Culture) statt auf DisplayFormat → EUR bleibt sichtbar.
|
||||
' Stattdessen: LayoutChanged + alle Zeilen invalidieren → DevExpress rendert
|
||||
' die Zellen neu mit dem aktualisierten DisplayFormat und ColumnEdit.
|
||||
pGridView.LayoutChanged()
|
||||
For i As Integer = 0 To pGridView.DataRowCount - 1
|
||||
pGridView.InvalidateRow(i)
|
||||
@@ -372,7 +447,10 @@ Namespace ControlCreator
|
||||
If oFormulaExpression <> String.Empty Then
|
||||
oIsReadOnly = True
|
||||
End If
|
||||
|
||||
Dim oSQLExpression = ObjectEx.NotNull(oColumnData.Item("FORMULA_SQL"), String.Empty)
|
||||
If oSQLExpression <> String.Empty Then
|
||||
oIsReadOnly = True
|
||||
End If
|
||||
|
||||
oCol.OptionsColumn.AllowEdit = Not oIsReadOnly
|
||||
|
||||
@@ -448,6 +526,7 @@ Namespace ControlCreator
|
||||
End With
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Public Sub ConfigureViewColumnsCurrency(pColumnTable As DataTable, pGridView As GridView, pGrid As DevExpress.XtraGrid.GridControl)
|
||||
Dim oCultureInfo As CultureInfo = New CultureInfo("de-DE")
|
||||
oCultureInfo.NumberFormat.CurrencySymbol = _currencySymbol
|
||||
@@ -462,7 +541,6 @@ Namespace ControlCreator
|
||||
riTextEdit.DisplayFormat.FormatType = FormatType.Custom
|
||||
riTextEdit.DisplayFormat.FormatString = $"#,##0.00 {_currencySymbol}"
|
||||
|
||||
' *** DIAGNOSE 1: Zustand der RepositoryItems VOR der Zuweisung ***
|
||||
_Logger.Debug("[ConfigureViewColumnsCurrency] riTextEdit erstellt: DisplayFormat=[{0}], HashCode=[{1}]",
|
||||
riTextEdit.DisplayFormat.FormatString, riTextEdit.GetHashCode())
|
||||
_Logger.Debug("[ConfigureViewColumnsCurrency] pGrid.RepositoryItems.Count VOR Schleife=[{0}]",
|
||||
@@ -478,22 +556,34 @@ Namespace ControlCreator
|
||||
If oColumnType <> "CURRENCY" Then Continue For
|
||||
|
||||
Dim oFormulaExpression = ObjectEx.NotNull(oColumnData.Item("FORMULA_EXPRESSION"), String.Empty)
|
||||
Dim oIsFormula As Boolean = oFormulaExpression <> String.Empty
|
||||
Dim oFormulaSql = ObjectEx.NotNull(oColumnData.Item("FORMULA_SQL"), String.Empty)
|
||||
|
||||
If oIsFormula Then
|
||||
' Entweder/Oder: Beide gleichzeitig → Expression gewinnt, SQL ignoriert
|
||||
If oFormulaExpression <> String.Empty AndAlso oFormulaSql <> String.Empty Then
|
||||
_Logger.Warn("[ConfigureViewColumnsCurrency] Column [{0}] has BOTH FORMULA_EXPRESSION and FORMULA_SQL – treating as EXPRESSION only.", oCol.FieldName)
|
||||
oFormulaSql = String.Empty
|
||||
End If
|
||||
|
||||
' Spalte ist eine Formel-Spalte (Expression ODER SQL) → nur DisplayFormat, kein ColumnEdit
|
||||
Dim oIsAnyFormula As Boolean = oFormulaExpression <> String.Empty OrElse oFormulaSql <> String.Empty
|
||||
|
||||
If oIsAnyFormula Then
|
||||
' Formel-Spalten (Expression oder SQL): nur DisplayFormat setzen
|
||||
oCol.DisplayFormat.FormatType = FormatType.Custom
|
||||
oCol.DisplayFormat.FormatString = $"#,##0.00 {_currencySymbol}"
|
||||
_Logger.Debug("[ConfigureViewColumnsCurrency] Formel-Spalte [{0}]: DisplayFormat=[{1}], RepositoryItems.Count=[{2}]",
|
||||
oCol.FieldName, oCol.DisplayFormat.FormatString, pGrid.RepositoryItems.Count)
|
||||
_Logger.Debug("[ConfigureViewColumnsCurrency] Formel-Spalte [{0}] (IsExpression=[{1}], IsSql=[{2}]): DisplayFormat=[{3}], RepositoryItems.Count=[{4}]",
|
||||
oCol.FieldName,
|
||||
oFormulaExpression <> String.Empty,
|
||||
oFormulaSql <> String.Empty,
|
||||
oCol.DisplayFormat.FormatString,
|
||||
pGrid.RepositoryItems.Count)
|
||||
|
||||
ElseIf oCol.OptionsColumn.AllowEdit Then
|
||||
' *** DIAGNOSE 2: RepositoryItems-Count VOR und NACH ColumnEdit-Zuweisung ***
|
||||
_Logger.Debug("[ConfigureViewColumnsCurrency] [{0}] VOR ColumnEdit: RepositoryItems.Count=[{1}]",
|
||||
oCol.FieldName, pGrid.RepositoryItems.Count)
|
||||
|
||||
oCol.ColumnEdit = riTextEdit
|
||||
|
||||
' *** DIAGNOSE 3: Prüfen ob DevExpress das Item intern zu RepositoryItems hinzugefügt hat ***
|
||||
_Logger.Debug("[ConfigureViewColumnsCurrency] [{0}] NACH ColumnEdit: RepositoryItems.Count=[{1}]",
|
||||
oCol.FieldName, pGrid.RepositoryItems.Count)
|
||||
|
||||
@@ -504,7 +594,6 @@ Namespace ControlCreator
|
||||
If(assignedEdit IsNot Nothing, assignedEdit.DisplayFormat.FormatString, "N/A"),
|
||||
If(assignedEdit IsNot Nothing, assignedEdit.GetHashCode(), -1))
|
||||
|
||||
' *** DIAGNOSE 4: Alle Items in RepositoryItems ausgeben ***
|
||||
For i As Integer = 0 To pGrid.RepositoryItems.Count - 1
|
||||
_Logger.Debug("[ConfigureViewColumnsCurrency] RepositoryItems[{0}]: Type=[{1}], HashCode=[{2}]",
|
||||
i, pGrid.RepositoryItems(i).GetType().Name, pGrid.RepositoryItems(i).GetHashCode())
|
||||
@@ -512,8 +601,6 @@ Namespace ControlCreator
|
||||
End If
|
||||
Next
|
||||
|
||||
' *** DIAGNOSE 5: CustomColumnDisplayText – feuert es überhaupt? ***
|
||||
' Temporär direkt hier einen einmaligen Test-Handler registrieren
|
||||
Dim oTestFired As Boolean = False
|
||||
AddHandler pGridView.CustomColumnDisplayText,
|
||||
Sub(sender As Object, e As CustomColumnDisplayTextEventArgs)
|
||||
@@ -521,7 +608,6 @@ Namespace ControlCreator
|
||||
Return
|
||||
End If
|
||||
|
||||
' Prüfe ob Spalte vom Typ CURRENCY ist
|
||||
Dim oColumnData As DataRow = pColumnTable.
|
||||
Select($"SPALTENNAME = '{e.Column.FieldName}'").
|
||||
FirstOrDefault()
|
||||
@@ -530,9 +616,8 @@ Namespace ControlCreator
|
||||
oColumnData.Item("TYPE_COLUMN").ToString() = "CURRENCY" Then
|
||||
|
||||
Try
|
||||
' *** KERN-FIX: Hole Symbol aus SHARED Dictionary statt Instanz-Feld ***
|
||||
Dim currentSymbol As String = _currencySymbol ' Fallback
|
||||
Dim gridName As String = pGrid.Name ' <-- FIX: pGrid statt pControl
|
||||
Dim currentSymbol As String = _currencySymbol
|
||||
Dim gridName As String = pGrid.Name
|
||||
SyncLock _CurrencySymbolByGridName
|
||||
If _CurrencySymbolByGridName.ContainsKey(gridName) Then
|
||||
currentSymbol = _CurrencySymbolByGridName(gridName)
|
||||
@@ -540,27 +625,21 @@ Namespace ControlCreator
|
||||
End SyncLock
|
||||
|
||||
Dim oValue As Double
|
||||
' *** KRITISCH: Robustes Parsing unabhängig vom Dezimaltrenner ***
|
||||
If TypeOf e.Value Is Double OrElse TypeOf e.Value Is Decimal Then
|
||||
oValue = Convert.ToDouble(e.Value)
|
||||
ElseIf TypeOf e.Value Is String Then
|
||||
Dim oStringValue As String = e.Value.ToString().Trim()
|
||||
|
||||
' Versuche zuerst deutsches Format (1.234,56)
|
||||
Dim oDeCulture As CultureInfo = New CultureInfo("de-DE")
|
||||
If Double.TryParse(oStringValue, NumberStyles.Currency Or NumberStyles.Number, oDeCulture, oValue) Then
|
||||
' Erfolgreich mit deutschem Format geparst
|
||||
ElseIf Double.TryParse(oStringValue, NumberStyles.Currency Or NumberStyles.Number, CultureInfo.InvariantCulture, oValue) Then
|
||||
' Erfolgreich mit invariantem Format (Punkt als Dezimaltrenner)
|
||||
Else
|
||||
' Fallback: Systemkultur
|
||||
oValue = Convert.ToDouble(oStringValue, CultureInfo.CurrentCulture)
|
||||
End If
|
||||
Else
|
||||
oValue = Convert.ToDouble(e.Value)
|
||||
End If
|
||||
|
||||
' Formatierung IMMER mit deutscher Kultur (Komma als Dezimaltrenner)
|
||||
Dim oDeCultureInfo As CultureInfo = New CultureInfo("de-DE")
|
||||
e.DisplayText = oValue.ToString("N2", oDeCultureInfo) & " " & currentSymbol
|
||||
|
||||
@@ -570,10 +649,9 @@ Namespace ControlCreator
|
||||
Catch ex As Exception
|
||||
_Logger.Warn("⚠️ Could not format currency value [{0}] for column [{1}]: {2}",
|
||||
e.Value, e.Column.FieldName, ex.Message)
|
||||
' Fallback: Original-Wert + Symbol
|
||||
Dim fallbackSymbol As String = _currencySymbol
|
||||
SyncLock _CurrencySymbolByGridName
|
||||
If _CurrencySymbolByGridName.ContainsKey(pGrid.Name) Then ' <-- FIX: pGrid statt pControl
|
||||
If _CurrencySymbolByGridName.ContainsKey(pGrid.Name) Then
|
||||
fallbackSymbol = _CurrencySymbolByGridName(pGrid.Name)
|
||||
End If
|
||||
End SyncLock
|
||||
@@ -584,12 +662,40 @@ Namespace ControlCreator
|
||||
End Sub
|
||||
|
||||
Public Sub ConfigureViewEvents(pColumnTable As DataTable, pGridView As GridView, pControl As Windows.Forms.Control, pControlId As Integer)
|
||||
' Formel-Spalten-Namen einmalig cachen für View_ShowingEditor
|
||||
' *** Formel-Spalten einmalig cachen + Validierung: Entweder EXPRESSION oder SQL, nie beides ***
|
||||
_FormulaColumnNames.Clear()
|
||||
_FormulaSqlColumns.Clear()
|
||||
|
||||
For Each r As DataRow In pColumnTable.Rows
|
||||
Dim oColName = r.Item("SPALTENNAME").ToString()
|
||||
Dim oExpr = ObjectEx.NotNull(r.Item("FORMULA_EXPRESSION"), String.Empty).ToString()
|
||||
Dim oSql = ObjectEx.NotNull(r.Item("FORMULA_SQL"), String.Empty).ToString()
|
||||
|
||||
' *** VALIDIERUNG: Beides gleichzeitig ist nicht erlaubt ***
|
||||
If oExpr <> String.Empty AndAlso oSql <> String.Empty Then
|
||||
_Logger.Warn("⚠️ Column [{0}] has BOTH FORMULA_EXPRESSION and FORMULA_SQL – this is not allowed! FORMULA_SQL will be ignored.", oColName)
|
||||
MsgBox(String.Format(
|
||||
"Die Spalte '{0}' enthält sowohl eine FORMULA_EXPRESSION als auch eine FORMULA_SQL." & vbCrLf &
|
||||
"Es darf nur eine der beiden Formeln gesetzt sein." & vbCrLf &
|
||||
"FORMULA_SQL wird ignoriert. Bitte korrigieren Sie die Konfiguration im Tabellen-Designer.",
|
||||
oColName), MsgBoxStyle.Exclamation, "Ungültige Spalten-Konfiguration")
|
||||
' FORMULA_EXPRESSION hat Vorrang → SQL ignorieren
|
||||
oSql = String.Empty
|
||||
End If
|
||||
|
||||
If oExpr <> String.Empty Then
|
||||
_FormulaColumnNames.Add(r.Item("SPALTENNAME").ToString())
|
||||
_FormulaColumnNames.Add(oColName)
|
||||
_Logger.Debug("[ConfigureViewEvents] Column [{0}] registered as FORMULA_EXPRESSION column.", oColName)
|
||||
ElseIf oSql <> String.Empty Then
|
||||
Dim oConnectionId As Integer = r.ItemEx("CONNECTION_ID", 0)
|
||||
_FormulaSqlColumns(oColName) = New FormulaSqlDefinition() With {
|
||||
.SqlTemplate = oSql,
|
||||
.ReferencedColumns = GetReferencedSqlColumnNames(oSql)
|
||||
}
|
||||
' SQL-Spalten auch in _FormulaColumnNames aufnehmen → Editor-Blockade + ReadOnly
|
||||
_FormulaColumnNames.Add(oColName)
|
||||
_Logger.Debug("[ConfigureViewEvents] Column [{0}] registered as FORMULA_SQL column. ReferencedColumns=[{1}]",
|
||||
oColName, String.Join(", ", GetReferencedSqlColumnNames(oSql)))
|
||||
End If
|
||||
Next
|
||||
|
||||
@@ -702,24 +808,6 @@ Namespace ControlCreator
|
||||
Else
|
||||
Dim oColumnType As String = ObjectEx.NotNull(oRow.Item("TYPE_COLUMN"), String.Empty).ToString()
|
||||
If oColumnType = "CURRENCY" Then
|
||||
' *** KERN-FIX ***
|
||||
' Für CURRENCY-Spalten wird e.RepositoryItem NIEMALS gesetzt.
|
||||
'
|
||||
' Grund: Sobald e.RepositoryItem gesetzt ist, übernimmt das
|
||||
' RepositoryItem die komplette Zelldarstellung – DevExpress
|
||||
' übergeht CustomColumnDisplayText vollständig. Das RepositoryItem
|
||||
' verwendet intern die Mask-Culture ("c" = EUR) zur Anzeige,
|
||||
' unabhängig von DisplayFormat oder _currencySymbol.
|
||||
'
|
||||
' Korrekte Architektur:
|
||||
' - Anzeige (nicht editiert): CustomColumnDisplayText
|
||||
' → formatiert mit _currencySymbol (CHF)
|
||||
' - Bearbeitung (editiert): ColumnEdit an der GridColumn
|
||||
' → wird von DevExpress beim Öffnen
|
||||
' des Editors automatisch verwendet
|
||||
'
|
||||
' CustomRowCellEdit muss NICHT eingreifen – GridColumn.ColumnEdit
|
||||
' ist bereits gesetzt und wird für den Editiermodus korrekt genutzt.
|
||||
If _FormulaColumnNames.Contains(oColumnName) Then
|
||||
_Logger.Debug("CURRENCY column [{0}] is formula/readonly – CustomColumnDisplayText handles display", oColumnName)
|
||||
Else
|
||||
@@ -758,19 +846,32 @@ Namespace ControlCreator
|
||||
End Sub
|
||||
End If
|
||||
|
||||
' *** KRITISCH: LIVE-REFRESH bei JEDER Eingabe (auch NewItemRow!) ***
|
||||
' *** LIVE-REFRESH bei JEDER Eingabe (nur für FORMULA_EXPRESSION!) ***
|
||||
' FORMULA_SQL wird NICHT hier behandelt – SQL-Refresh erfolgt nur über CellValueChanged
|
||||
If view.FocusedColumn IsNot Nothing AndAlso view.ActiveEditor IsNot Nothing Then
|
||||
Dim oFocusedColumnName As String = view.FocusedColumn.FieldName
|
||||
|
||||
' Prüfen ob diese Spalte von Formel-Spalten referenziert wird
|
||||
' Prüfen ob diese Spalte von FORMULA_EXPRESSION-Spalten referenziert wird
|
||||
Dim oFormulaColumnsToRefresh As New List(Of String)
|
||||
For Each oColumnData As DataRow In pColumnTable.Rows
|
||||
Dim oColName = oColumnData.Item("SPALTENNAME").ToString()
|
||||
Dim oExpr = ObjectEx.NotNull(oColumnData.Item("FORMULA_EXPRESSION"), String.Empty).ToString()
|
||||
If oExpr = String.Empty Then Continue For
|
||||
|
||||
' Nur FORMULA_EXPRESSION – FORMULA_SQL wird über CellValueChanged behandelt
|
||||
If oExpr = String.Empty Then
|
||||
Continue For
|
||||
End If
|
||||
|
||||
' Spalte darf keine FORMULA_SQL haben (wurde oben validiert, Sicherheitsprüfung)
|
||||
Dim oSqlExpr = ObjectEx.NotNull(oColumnData.Item("FORMULA_SQL"), String.Empty).ToString()
|
||||
If oSqlExpr <> String.Empty Then
|
||||
_Logger.Debug("[FormulaRefresh] Column [{0}] has both FORMULA_EXPRESSION and FORMULA_SQL – skipping live refresh.", oColName)
|
||||
Continue For
|
||||
End If
|
||||
|
||||
Dim referencedColumns = GetReferencedColumnNames(oExpr)
|
||||
If referencedColumns.Any(Function(col) String.Equals(col, oFocusedColumnName, StringComparison.OrdinalIgnoreCase)) Then
|
||||
oFormulaColumnsToRefresh.Add(oColumnData.Item("SPALTENNAME").ToString())
|
||||
oFormulaColumnsToRefresh.Add(oColName)
|
||||
End If
|
||||
Next
|
||||
|
||||
@@ -864,11 +965,11 @@ Namespace ControlCreator
|
||||
|
||||
_Logger.Debug("Showing editor.")
|
||||
|
||||
' Formel-Spalten dürfen keinen Editor öffnen
|
||||
' Formel-Spalten dürfen keinen Editor öffnen (gilt für EXPRESSION UND SQL)
|
||||
If oView.FocusedColumn IsNot Nothing Then
|
||||
Dim oFieldName As String = oView.FocusedColumn.FieldName
|
||||
If _FormulaColumnNames.Contains(oFieldName) Then
|
||||
_Logger.Debug("Cancelling editor – column [{0}] is a formula column.", oFieldName)
|
||||
_Logger.Debug("Cancelling editor – column [{0}] is a formula column (Expression or SQL).", oFieldName)
|
||||
e.Cancel = True
|
||||
Return
|
||||
End If
|
||||
@@ -912,19 +1013,22 @@ Namespace ControlCreator
|
||||
_Logger.Error(ex)
|
||||
End Try
|
||||
|
||||
' *** Formel-Refresh via CellValueChanged ist FALLBACK ***
|
||||
' *** FORMULA_EXPRESSION-Refresh via CellValueChanged (FALLBACK) ***
|
||||
' (EditValueChanged macht das normalerweise schon LIVE)
|
||||
Try
|
||||
Dim oView As GridView = TryCast(sender, GridView)
|
||||
If oView Is Nothing OrElse e.Column Is Nothing Then Return
|
||||
|
||||
' Prüfen ob überhaupt eine Formel-Spalte referenziert wird
|
||||
Dim oFormulaColumnsToRefresh As New List(Of String)
|
||||
|
||||
For Each oColumnData As DataRow In pColumnTable.Rows
|
||||
Dim oExpr = ObjectEx.NotNull(oColumnData.Item("FORMULA_EXPRESSION"), String.Empty).ToString()
|
||||
If oExpr = String.Empty Then Continue For
|
||||
|
||||
' Nur FORMULA_EXPRESSION – kein SQL
|
||||
Dim oSqlExpr = ObjectEx.NotNull(oColumnData.Item("FORMULA_SQL"), String.Empty).ToString()
|
||||
If oSqlExpr <> String.Empty Then Continue For
|
||||
|
||||
Dim referencedColumns = GetReferencedColumnNames(oExpr)
|
||||
If referencedColumns.Any(Function(col) String.Equals(col, e.Column.FieldName, StringComparison.OrdinalIgnoreCase)) Then
|
||||
oFormulaColumnsToRefresh.Add(oColumnData.Item("SPALTENNAME").ToString())
|
||||
@@ -932,13 +1036,10 @@ Namespace ControlCreator
|
||||
Next
|
||||
|
||||
If oFormulaColumnsToRefresh.Count = 0 Then
|
||||
Return
|
||||
End If
|
||||
|
||||
' *** FALLBACK: Nur wenn EditValueChanged NICHT gefeuert hat ***
|
||||
' (z.B. bei programmatischer SetRowCellValue oder Paste)
|
||||
' Kein FORMULA_EXPRESSION-Refresh nötig – weiter zu FORMULA_SQL
|
||||
Else
|
||||
Dim oRowHandle As Integer = e.RowHandle
|
||||
_Logger.Debug("[FormulaRefresh] CellValueChanged FALLBACK – refreshing for row [{0}] after column [{1}] changed.", oRowHandle, e.Column.FieldName)
|
||||
_Logger.Debug("[FormulaRefresh] CellValueChanged FALLBACK – refreshing EXPRESSION columns for row [{0}] after column [{1}] changed.", oRowHandle, e.Column.FieldName)
|
||||
|
||||
oView.GridControl.BeginInvoke(New Action(
|
||||
Sub()
|
||||
@@ -957,6 +1058,88 @@ Namespace ControlCreator
|
||||
_Logger.Error(ex)
|
||||
End Try
|
||||
End Sub))
|
||||
End If
|
||||
|
||||
Catch ex As Exception
|
||||
_Logger.Error(ex)
|
||||
End Try
|
||||
|
||||
' *** FORMULA_SQL-Refresh via CellValueChanged ***
|
||||
' SQL wird NUR hier ausgeführt (nicht in EditValueChanged) um DB-Roundtrips zu minimieren
|
||||
Try
|
||||
Dim oView As GridView = TryCast(sender, GridView)
|
||||
If oView Is Nothing OrElse e.Column Is Nothing Then Return
|
||||
|
||||
' Finde alle SQL-Formelspalten, die die geänderte Spalte referenzieren
|
||||
Dim oSqlColumnsToRefresh As New List(Of String)
|
||||
For Each kvp In _FormulaSqlColumns
|
||||
If kvp.Value.ReferencedColumns.Any(
|
||||
Function(col) String.Equals(col, e.Column.FieldName, StringComparison.OrdinalIgnoreCase)) Then
|
||||
oSqlColumnsToRefresh.Add(kvp.Key)
|
||||
End If
|
||||
Next
|
||||
|
||||
If oSqlColumnsToRefresh.Count = 0 Then Return
|
||||
|
||||
Dim oRowHandle As Integer = e.RowHandle
|
||||
_Logger.Debug("[FormulaSql] CellValueChanged – column [{0}] triggers SQL refresh for: [{1}]",
|
||||
e.Column.FieldName, String.Join(", ", oSqlColumnsToRefresh))
|
||||
|
||||
' BeginInvoke: UI nicht blockieren, GridView in stabilem Zustand
|
||||
oView.GridControl.BeginInvoke(New Action(
|
||||
Sub()
|
||||
Try
|
||||
If Not oView.IsValidRowHandle(oRowHandle) Then Return
|
||||
|
||||
For Each oSqlColumnName As String In oSqlColumnsToRefresh
|
||||
Dim oDefinition = _FormulaSqlColumns(oSqlColumnName)
|
||||
|
||||
' Prüfen ob ALLE referenzierten Spalten einen Wert haben
|
||||
Dim allValuesPresent As Boolean = True
|
||||
For Each refCol In oDefinition.ReferencedColumns
|
||||
Dim cellVal = oView.GetRowCellValue(oRowHandle, refCol)
|
||||
If cellVal Is Nothing OrElse IsDBNull(cellVal) Then
|
||||
_Logger.Debug("[FormulaSql] Column [{0}] has NULL value – skipping SQL for [{1}]", refCol, oSqlColumnName)
|
||||
allValuesPresent = False
|
||||
Exit For
|
||||
End If
|
||||
Next
|
||||
|
||||
If Not allValuesPresent Then Continue For
|
||||
|
||||
' Pattern ersetzen und SQL ausführen
|
||||
Dim resolvedSql = ResolveSqlTemplate(oDefinition.SqlTemplate, oView, oRowHandle)
|
||||
_Logger.Debug("[FormulaSql] Executing SQL for [{0}]: [{1}]", oSqlColumnName, resolvedSql)
|
||||
|
||||
Try
|
||||
Dim oResultTable As DataTable = DatabaseFallback.GetDatatable(
|
||||
New GetDatatableOptions(resolvedSql, DatabaseType.ECM))
|
||||
|
||||
If oResultTable IsNot Nothing AndAlso oResultTable.Rows.Count > 0 Then
|
||||
Dim oResult = oResultTable.Rows(0).Item(0)
|
||||
_Logger.Debug("[FormulaSql] Result for [{0}]: [{1}]", oSqlColumnName, oResult)
|
||||
|
||||
_isRefreshingFormula = True
|
||||
Try
|
||||
oView.SetRowCellValue(oRowHandle, oSqlColumnName,
|
||||
If(oResult Is Nothing OrElse IsDBNull(oResult), DBNull.Value, oResult))
|
||||
oView.RefreshRowCell(oRowHandle, oView.Columns.ColumnByFieldName(oSqlColumnName))
|
||||
Finally
|
||||
_isRefreshingFormula = False
|
||||
End Try
|
||||
Else
|
||||
_Logger.Warn("[FormulaSql] No result returned for [{0}]", oSqlColumnName)
|
||||
End If
|
||||
|
||||
Catch sqlEx As Exception
|
||||
_Logger.Warn("⚠️ [FormulaSql] SQL execution failed for [{0}]: {1}", oSqlColumnName, sqlEx.Message)
|
||||
_Logger.Error(sqlEx)
|
||||
End Try
|
||||
Next
|
||||
Catch ex As Exception
|
||||
_Logger.Error(ex)
|
||||
End Try
|
||||
End Sub))
|
||||
|
||||
Catch ex As Exception
|
||||
_Logger.Error(ex)
|
||||
|
||||
78
app/TaskFlow/DD_DMSLiteDataSet.Designer.vb
generated
78
app/TaskFlow/DD_DMSLiteDataSet.Designer.vb
generated
@@ -5466,6 +5466,8 @@ Partial Public Class DD_DMSLiteDataSet
|
||||
|
||||
Private columnFORMULA_EXPRESSION As Global.System.Data.DataColumn
|
||||
|
||||
Private columnFORMULA_SQL As Global.System.Data.DataColumn
|
||||
|
||||
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
|
||||
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")> _
|
||||
Public Sub New()
|
||||
@@ -5709,6 +5711,14 @@ Partial Public Class DD_DMSLiteDataSet
|
||||
End Get
|
||||
End Property
|
||||
|
||||
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
|
||||
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")> _
|
||||
Public ReadOnly Property FORMULA_SQLColumn() As Global.System.Data.DataColumn
|
||||
Get
|
||||
Return Me.columnFORMULA_SQL
|
||||
End Get
|
||||
End Property
|
||||
|
||||
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
|
||||
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0"), _
|
||||
Global.System.ComponentModel.Browsable(false)> _
|
||||
@@ -5771,9 +5781,10 @@ Partial Public Class DD_DMSLiteDataSet
|
||||
ByVal TYPE_COLUMN As String, _
|
||||
ByVal LU_CAPTION As String, _
|
||||
ByVal INHERIT_VALUE As Boolean, _
|
||||
ByVal FORMULA_EXPRESSION As String) As TBPM_CONTROL_TABLERow
|
||||
ByVal FORMULA_EXPRESSION As String, _
|
||||
ByVal FORMULA_SQL As String) As TBPM_CONTROL_TABLERow
|
||||
Dim rowTBPM_CONTROL_TABLERow As TBPM_CONTROL_TABLERow = CType(Me.NewRow,TBPM_CONTROL_TABLERow)
|
||||
Dim columnValuesArray() As Object = New Object() {Nothing, Nothing, SPALTENNAME, SPALTEN_HEADER, SPALTENBREITE, VALIDATION, CHOICE_LIST, CONNECTION_ID, SQL_COMMAND, READ_ONLY, LOAD_IDX_VALUE, ADDED_WHO, ADDED_WHEN, CHANGED_WHO, CHANGED_WHEN, REGEX_MATCH, REGEX_MESSAGE_EN, REGEX_MESSAGE_DE, SEQUENCE, DEFAULT_VALUE, ADVANCED_LOOKUP, SUMMARY_FUNCTION, TYPE_COLUMN, LU_CAPTION, INHERIT_VALUE, FORMULA_EXPRESSION}
|
||||
Dim columnValuesArray() As Object = New Object() {Nothing, Nothing, SPALTENNAME, SPALTEN_HEADER, SPALTENBREITE, VALIDATION, CHOICE_LIST, CONNECTION_ID, SQL_COMMAND, READ_ONLY, LOAD_IDX_VALUE, ADDED_WHO, ADDED_WHEN, CHANGED_WHO, CHANGED_WHEN, REGEX_MATCH, REGEX_MESSAGE_EN, REGEX_MESSAGE_DE, SEQUENCE, DEFAULT_VALUE, ADVANCED_LOOKUP, SUMMARY_FUNCTION, TYPE_COLUMN, LU_CAPTION, INHERIT_VALUE, FORMULA_EXPRESSION, FORMULA_SQL}
|
||||
If (Not (parentTBPM_PROFILE_CONTROLSRowByFK_TBPM_CONTROL_TABLE_CONTROL1) Is Nothing) Then
|
||||
columnValuesArray(1) = parentTBPM_PROFILE_CONTROLSRowByFK_TBPM_CONTROL_TABLE_CONTROL1(0)
|
||||
End If
|
||||
@@ -5831,6 +5842,7 @@ Partial Public Class DD_DMSLiteDataSet
|
||||
Me.columnLU_CAPTION = MyBase.Columns("LU_CAPTION")
|
||||
Me.columnINHERIT_VALUE = MyBase.Columns("INHERIT_VALUE")
|
||||
Me.columnFORMULA_EXPRESSION = MyBase.Columns("FORMULA_EXPRESSION")
|
||||
Me.columnFORMULA_SQL = MyBase.Columns("FORMULA_SQL")
|
||||
End Sub
|
||||
|
||||
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
|
||||
@@ -5888,6 +5900,8 @@ Partial Public Class DD_DMSLiteDataSet
|
||||
MyBase.Columns.Add(Me.columnINHERIT_VALUE)
|
||||
Me.columnFORMULA_EXPRESSION = New Global.System.Data.DataColumn("FORMULA_EXPRESSION", GetType(String), Nothing, Global.System.Data.MappingType.Element)
|
||||
MyBase.Columns.Add(Me.columnFORMULA_EXPRESSION)
|
||||
Me.columnFORMULA_SQL = New Global.System.Data.DataColumn("FORMULA_SQL", GetType(String), Nothing, Global.System.Data.MappingType.Element)
|
||||
MyBase.Columns.Add(Me.columnFORMULA_SQL)
|
||||
Me.Constraints.Add(New Global.System.Data.UniqueConstraint("Constraint1", New Global.System.Data.DataColumn() {Me.columnGUID}, true))
|
||||
Me.columnGUID.AutoIncrement = true
|
||||
Me.columnGUID.AllowDBNull = false
|
||||
@@ -5931,7 +5945,11 @@ Partial Public Class DD_DMSLiteDataSet
|
||||
Me.columnINHERIT_VALUE.AllowDBNull = false
|
||||
Me.columnINHERIT_VALUE.DefaultValue = CType(false,Boolean)
|
||||
Me.columnFORMULA_EXPRESSION.AllowDBNull = false
|
||||
Me.columnFORMULA_EXPRESSION.DefaultValue = CType("",String)
|
||||
Me.columnFORMULA_EXPRESSION.MaxLength = 1000
|
||||
Me.columnFORMULA_SQL.AllowDBNull = false
|
||||
Me.columnFORMULA_SQL.DefaultValue = CType("",String)
|
||||
Me.columnFORMULA_SQL.MaxLength = 3000
|
||||
End Sub
|
||||
|
||||
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
|
||||
@@ -13227,6 +13245,17 @@ Partial Public Class DD_DMSLiteDataSet
|
||||
End Set
|
||||
End Property
|
||||
|
||||
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
|
||||
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")> _
|
||||
Public Property FORMULA_SQL() As String
|
||||
Get
|
||||
Return CType(Me(Me.tableTBPM_CONTROL_TABLE.FORMULA_SQLColumn),String)
|
||||
End Get
|
||||
Set
|
||||
Me(Me.tableTBPM_CONTROL_TABLE.FORMULA_SQLColumn) = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
|
||||
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")> _
|
||||
Public Property TBPM_PROFILE_CONTROLSRow() As TBPM_PROFILE_CONTROLSRow
|
||||
@@ -21535,6 +21564,7 @@ Namespace DD_DMSLiteDataSetTableAdapters
|
||||
tableMapping.ColumnMappings.Add("LU_CAPTION", "LU_CAPTION")
|
||||
tableMapping.ColumnMappings.Add("INHERIT_VALUE", "INHERIT_VALUE")
|
||||
tableMapping.ColumnMappings.Add("FORMULA_EXPRESSION", "FORMULA_EXPRESSION")
|
||||
tableMapping.ColumnMappings.Add("FORMULA_SQL", "FORMULA_SQL")
|
||||
Me._adapter.TableMappings.Add(tableMapping)
|
||||
Me._adapter.DeleteCommand = New Global.System.Data.SqlClient.SqlCommand()
|
||||
Me._adapter.DeleteCommand.Connection = Me.Connection
|
||||
@@ -21572,12 +21602,12 @@ Namespace DD_DMSLiteDataSetTableAdapters
|
||||
"ENCE = @SEQUENCE, DEFAULT_VALUE = @DEFAULT_VALUE, ADVANCED_LOOKUP = @ADVANCED_LO"& _
|
||||
"OKUP, SAVE_CHANGE_ON_ENABLED = @SAVE_CHANGE_ON_ENABLED, INHERIT_VALUE = @INHERIT"& _
|
||||
"_VALUE, "&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" LU_CAPTION = @LU_CAPTION, FORMULA_EXPRESSION "& _
|
||||
"= @FORMULA_EXPRESSION"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"WHERE (GUID = @Original_GUID); "&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"SELECT GUID, "& _
|
||||
"CONTROL_ID, SPALTENNAME, SPALTEN_HEADER, SPALTENBREITE, VALIDATION, CHOICE_LIST,"& _
|
||||
" CONNECTION_ID, SQL_COMMAND, READ_ONLY, LOAD_IDX_VALUE, ADDED_WHO, ADDED_WHEN, C"& _
|
||||
"HANGED_WHO, CHANGED_WHEN, REGEX_MATCH, REGEX_MESSAGE_EN, REGEX_MESSAGE_DE, SEQUE"& _
|
||||
"NCE, DEFAULT_VALUE, ADVANCED_LOOKUP FROM TBPM_CONTROL_TABLE WHERE (GUID = @GUID)"& _
|
||||
""
|
||||
"= @FORMULA_EXPRESSION, FORMULA_SQL = @FORMULA_SQL"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"WHERE (GUID = @Origina"& _
|
||||
"l_GUID); "&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"SELECT GUID, CONTROL_ID, SPALTENNAME, SPALTEN_HEADER, SPALTENBRE"& _
|
||||
"ITE, VALIDATION, CHOICE_LIST, CONNECTION_ID, SQL_COMMAND, READ_ONLY, LOAD_IDX_VA"& _
|
||||
"LUE, ADDED_WHO, ADDED_WHEN, CHANGED_WHO, CHANGED_WHEN, REGEX_MATCH, REGEX_MESSAG"& _
|
||||
"E_EN, REGEX_MESSAGE_DE, SEQUENCE, DEFAULT_VALUE, ADVANCED_LOOKUP FROM TBPM_CONTR"& _
|
||||
"OL_TABLE WHERE (GUID = @GUID)"
|
||||
Me._adapter.UpdateCommand.CommandType = Global.System.Data.CommandType.Text
|
||||
Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@CONTROL_ID", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.Input, 0, 0, "CONTROL_ID", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
|
||||
Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@SPALTENNAME", Global.System.Data.SqlDbType.VarChar, 100, Global.System.Data.ParameterDirection.Input, 0, 0, "SPALTENNAME", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
|
||||
@@ -21603,6 +21633,7 @@ Namespace DD_DMSLiteDataSetTableAdapters
|
||||
Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@INHERIT_VALUE", Global.System.Data.SqlDbType.Bit, 1, Global.System.Data.ParameterDirection.Input, 0, 0, "INHERIT_VALUE", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
|
||||
Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@LU_CAPTION", Global.System.Data.SqlDbType.VarChar, 150, Global.System.Data.ParameterDirection.Input, 0, 0, "LU_CAPTION", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
|
||||
Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@FORMULA_EXPRESSION", Global.System.Data.SqlDbType.NVarChar, 1000, Global.System.Data.ParameterDirection.Input, 0, 0, "FORMULA_EXPRESSION", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
|
||||
Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@FORMULA_SQL", Global.System.Data.SqlDbType.NVarChar, 3000, Global.System.Data.ParameterDirection.Input, 0, 0, "FORMULA_SQL", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
|
||||
Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Original_GUID", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.Input, 0, 0, "GUID", Global.System.Data.DataRowVersion.Original, false, Nothing, "", "", ""))
|
||||
Me._adapter.UpdateCommand.Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@GUID", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.Input, 0, 0, "GUID", Global.System.Data.DataRowVersion.Original, false, Nothing, "", "", ""))
|
||||
End Sub
|
||||
@@ -21625,8 +21656,8 @@ Namespace DD_DMSLiteDataSetTableAdapters
|
||||
"_WHO, ADDED_WHEN, CHANGED_WHO, "&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" CHANGED_WHEN, REGEX_MA"& _
|
||||
"TCH, REGEX_MESSAGE_EN, REGEX_MESSAGE_DE, SEQUENCE, DEFAULT_VALUE, ADVANCED_LOOKU"& _
|
||||
"P, SUMMARY_FUNCTION, TYPE_COLUMN, LU_CAPTION, INHERIT_VALUE, "&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" "& _
|
||||
" FORMULA_EXPRESSION"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"FROM TBPM_CONTROL_TABLE"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"WHERE (CO"& _
|
||||
"NTROL_ID = @CONTROL_ID)"
|
||||
" FORMULA_EXPRESSION, FORMULA_SQL"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"FROM TBPM_CONTROL_TABLE"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"WHE"& _
|
||||
"RE (CONTROL_ID = @CONTROL_ID)"
|
||||
Me._commandCollection(0).CommandType = Global.System.Data.CommandType.Text
|
||||
Me._commandCollection(0).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@CONTROL_ID", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.Input, 0, 0, "CONTROL_ID", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
|
||||
Me._commandCollection(1) = New Global.System.Data.SqlClient.SqlCommand()
|
||||
@@ -21639,8 +21670,8 @@ Namespace DD_DMSLiteDataSetTableAdapters
|
||||
"E = @DEFAULT_VALUE, "&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" SEQUENCE = @SEQUENCE, ADVANCED_LO"& _
|
||||
"OKUP = @ADVANCED_LOOKUP, SUMMARY_FUNCTION = @SUMMARY_FUNCTION, TYPE_COLUMN = @TY"& _
|
||||
"PE_COLUMN, LU_CAPTION = @LU_CAPTION, "&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" INHERIT_VALUE = "& _
|
||||
"@INHERIT_VALUE, FORMULA_EXPRESSION = @FORMULA_EXPRESSION"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"WHERE (GUID = @"& _
|
||||
"Original_GUID)"
|
||||
"@INHERIT_VALUE, FORMULA_EXPRESSION = @FORMULA_EXPRESSION, FORMULA_SQL = @FORMULA"& _
|
||||
"_SQL"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"WHERE (GUID = @Original_GUID)"
|
||||
Me._commandCollection(1).CommandType = Global.System.Data.CommandType.Text
|
||||
Me._commandCollection(1).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@SPALTENNAME", Global.System.Data.SqlDbType.VarChar, 100, Global.System.Data.ParameterDirection.Input, 0, 0, "SPALTENNAME", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
|
||||
Me._commandCollection(1).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@SPALTEN_HEADER", Global.System.Data.SqlDbType.VarChar, 100, Global.System.Data.ParameterDirection.Input, 0, 0, "SPALTEN_HEADER", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
|
||||
@@ -21660,6 +21691,7 @@ Namespace DD_DMSLiteDataSetTableAdapters
|
||||
Me._commandCollection(1).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@LU_CAPTION", Global.System.Data.SqlDbType.VarChar, 150, Global.System.Data.ParameterDirection.Input, 0, 0, "LU_CAPTION", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
|
||||
Me._commandCollection(1).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@INHERIT_VALUE", Global.System.Data.SqlDbType.Bit, 1, Global.System.Data.ParameterDirection.Input, 0, 0, "INHERIT_VALUE", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
|
||||
Me._commandCollection(1).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@FORMULA_EXPRESSION", Global.System.Data.SqlDbType.NVarChar, 1000, Global.System.Data.ParameterDirection.Input, 0, 0, "FORMULA_EXPRESSION", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
|
||||
Me._commandCollection(1).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@FORMULA_SQL", Global.System.Data.SqlDbType.NVarChar, 3000, Global.System.Data.ParameterDirection.Input, 0, 0, "FORMULA_SQL", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
|
||||
Me._commandCollection(1).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@Original_GUID", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.Input, 0, 0, "GUID", Global.System.Data.DataRowVersion.Original, false, Nothing, "", "", ""))
|
||||
Me._commandCollection(2) = New Global.System.Data.SqlClient.SqlCommand()
|
||||
Me._commandCollection(2).Connection = Me.Connection
|
||||
@@ -21682,8 +21714,8 @@ Namespace DD_DMSLiteDataSetTableAdapters
|
||||
"D_ONLY, REGEX_MATCH, "&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" REGEX_MESSAGE_DE, REGEX_MESSAGE_"& _
|
||||
"EN, SEQUENCE, SPALTENBREITE, SPALTENNAME, SPALTEN_HEADER, SQL_COMMAND, VALIDATIO"& _
|
||||
"N, SUMMARY_FUNCTION, TYPE_COLUMN, LU_CAPTION, INHERIT_VALUE, "&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" "& _
|
||||
" FORMULA_EXPRESSION"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"FROM TBPM_CONTROL_TABLE"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"WHERE (GU"& _
|
||||
"ID = @GUID)"
|
||||
" FORMULA_EXPRESSION, FORMULA_SQL"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"FROM TBPM_CONTROL_TABLE"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&"WHE"& _
|
||||
"RE (GUID = @GUID)"
|
||||
Me._commandCollection(4).CommandType = Global.System.Data.CommandType.Text
|
||||
Me._commandCollection(4).Parameters.Add(New Global.System.Data.SqlClient.SqlParameter("@GUID", Global.System.Data.SqlDbType.Int, 4, Global.System.Data.ParameterDirection.Input, 0, 0, "GUID", Global.System.Data.DataRowVersion.Current, false, Nothing, "", "", ""))
|
||||
Me._commandCollection(5) = New Global.System.Data.SqlClient.SqlCommand()
|
||||
@@ -21892,6 +21924,7 @@ Namespace DD_DMSLiteDataSetTableAdapters
|
||||
ByVal INHERIT_VALUE As Boolean, _
|
||||
ByVal LU_CAPTION As String, _
|
||||
ByVal FORMULA_EXPRESSION As String, _
|
||||
ByVal FORMULA_SQL As String, _
|
||||
ByVal Original_GUID As Integer, _
|
||||
ByVal GUID As Integer) As Integer
|
||||
Me.Adapter.UpdateCommand.Parameters(0).Value = CType(CONTROL_ID,Integer)
|
||||
@@ -21978,8 +22011,13 @@ Namespace DD_DMSLiteDataSetTableAdapters
|
||||
Else
|
||||
Me.Adapter.UpdateCommand.Parameters(23).Value = CType(FORMULA_EXPRESSION,String)
|
||||
End If
|
||||
Me.Adapter.UpdateCommand.Parameters(24).Value = CType(Original_GUID,Integer)
|
||||
Me.Adapter.UpdateCommand.Parameters(25).Value = CType(GUID,Integer)
|
||||
If (FORMULA_SQL Is Nothing) Then
|
||||
Throw New Global.System.ArgumentNullException("FORMULA_SQL")
|
||||
Else
|
||||
Me.Adapter.UpdateCommand.Parameters(24).Value = CType(FORMULA_SQL,String)
|
||||
End If
|
||||
Me.Adapter.UpdateCommand.Parameters(25).Value = CType(Original_GUID,Integer)
|
||||
Me.Adapter.UpdateCommand.Parameters(26).Value = CType(GUID,Integer)
|
||||
Dim previousConnectionState As Global.System.Data.ConnectionState = Me.Adapter.UpdateCommand.Connection.State
|
||||
If ((Me.Adapter.UpdateCommand.Connection.State And Global.System.Data.ConnectionState.Open) _
|
||||
<> Global.System.Data.ConnectionState.Open) Then
|
||||
@@ -22017,6 +22055,7 @@ Namespace DD_DMSLiteDataSetTableAdapters
|
||||
ByVal LU_CAPTION As String, _
|
||||
ByVal INHERIT_VALUE As Boolean, _
|
||||
ByVal FORMULA_EXPRESSION As String, _
|
||||
ByVal FORMULA_SQL As String, _
|
||||
ByVal Original_GUID As Integer) As Object
|
||||
Dim command As Global.System.Data.SqlClient.SqlCommand = Me.CommandCollection(1)
|
||||
If (SPALTENNAME Is Nothing) Then
|
||||
@@ -22081,7 +22120,12 @@ Namespace DD_DMSLiteDataSetTableAdapters
|
||||
Else
|
||||
command.Parameters(17).Value = CType(FORMULA_EXPRESSION,String)
|
||||
End If
|
||||
command.Parameters(18).Value = CType(Original_GUID,Integer)
|
||||
If (FORMULA_SQL Is Nothing) Then
|
||||
Throw New Global.System.ArgumentNullException("FORMULA_SQL")
|
||||
Else
|
||||
command.Parameters(18).Value = CType(FORMULA_SQL,String)
|
||||
End If
|
||||
command.Parameters(19).Value = CType(Original_GUID,Integer)
|
||||
Dim previousConnectionState As Global.System.Data.ConnectionState = command.Connection.State
|
||||
If ((command.Connection.State And Global.System.Data.ConnectionState.Open) _
|
||||
<> Global.System.Data.ConnectionState.Open) Then
|
||||
|
||||
@@ -56,32 +56,24 @@
|
||||
<TableUISetting Name="TBPM_CONTROL_TABLE">
|
||||
<ColumnUISettings>
|
||||
<ColumnUISetting Name="ADDED_WHO">
|
||||
<ControlSettings>
|
||||
<ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form">
|
||||
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
|
||||
<BindableControlInfo Name="TextBox" Type="System.Windows.Forms.TextBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
</ControlSetting>
|
||||
</ControlSettings>
|
||||
</ControlSetting></ControlSettings>
|
||||
</ColumnUISetting>
|
||||
<ColumnUISetting Name="ADDED_WHEN">
|
||||
<ControlSettings>
|
||||
<ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form">
|
||||
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
|
||||
<BindableControlInfo Name="TextBox" Type="System.Windows.Forms.TextBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
</ControlSetting>
|
||||
</ControlSettings>
|
||||
</ControlSetting></ControlSettings>
|
||||
</ColumnUISetting>
|
||||
<ColumnUISetting Name="CHANGED_WHEN">
|
||||
<ControlSettings>
|
||||
<ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form">
|
||||
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
|
||||
<BindableControlInfo Name="TextBox" Type="System.Windows.Forms.TextBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
</ControlSetting>
|
||||
</ControlSettings>
|
||||
</ControlSetting></ControlSettings>
|
||||
</ColumnUISetting>
|
||||
<ColumnUISetting Name="TYPE_COLUMN">
|
||||
<ControlSettings>
|
||||
<ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form">
|
||||
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
|
||||
<BindableControlInfo Name="ComboBox" Type="System.Windows.Forms.ComboBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
</ControlSetting>
|
||||
</ControlSettings>
|
||||
</ControlSetting></ControlSettings>
|
||||
</ColumnUISetting>
|
||||
</ColumnUISettings>
|
||||
</TableUISetting>
|
||||
|
||||
@@ -1319,7 +1319,7 @@ SELECT GUID, CONTROL_ID, SPALTENNAME, SPALTEN_HEADER, SPALTENBREITE, VALIDATION,
|
||||
<DbCommand CommandType="Text" ModifiedByUser="false">
|
||||
<CommandText>SELECT GUID, CONTROL_ID, SPALTENNAME, SPALTEN_HEADER, SPALTENBREITE, VALIDATION, CHOICE_LIST, CONNECTION_ID, SQL_COMMAND, READ_ONLY, LOAD_IDX_VALUE, ADDED_WHO, ADDED_WHEN, CHANGED_WHO,
|
||||
CHANGED_WHEN, REGEX_MATCH, REGEX_MESSAGE_EN, REGEX_MESSAGE_DE, SEQUENCE, DEFAULT_VALUE, ADVANCED_LOOKUP, SUMMARY_FUNCTION, TYPE_COLUMN, LU_CAPTION, INHERIT_VALUE,
|
||||
FORMULA_EXPRESSION
|
||||
FORMULA_EXPRESSION, FORMULA_SQL
|
||||
FROM TBPM_CONTROL_TABLE
|
||||
WHERE (CONTROL_ID = @CONTROL_ID)</CommandText>
|
||||
<Parameters>
|
||||
@@ -1334,7 +1334,7 @@ SET CONTROL_ID = @CONTROL_ID, SPALTENNAME = @SPALTENNAME, SPALTEN
|
||||
CONNECTION_ID = @CONNECTION_ID, SQL_COMMAND = @SQL_COMMAND, READ_ONLY = @READ_ONLY, LOAD_IDX_VALUE = @LOAD_IDX_VALUE, ADDED_WHO = @ADDED_WHO, ADDED_WHEN = @ADDED_WHEN,
|
||||
CHANGED_WHO = @CHANGED_WHO, CHANGED_WHEN = @CHANGED_WHEN, REGEX_MATCH = @REGEX_MATCH, REGEX_MESSAGE_EN = @REGEX_MESSAGE_EN, REGEX_MESSAGE_DE = @REGEX_MESSAGE_DE,
|
||||
SEQUENCE = @SEQUENCE, DEFAULT_VALUE = @DEFAULT_VALUE, ADVANCED_LOOKUP = @ADVANCED_LOOKUP, SAVE_CHANGE_ON_ENABLED = @SAVE_CHANGE_ON_ENABLED, INHERIT_VALUE = @INHERIT_VALUE,
|
||||
LU_CAPTION = @LU_CAPTION, FORMULA_EXPRESSION = @FORMULA_EXPRESSION
|
||||
LU_CAPTION = @LU_CAPTION, FORMULA_EXPRESSION = @FORMULA_EXPRESSION, FORMULA_SQL = @FORMULA_SQL
|
||||
WHERE (GUID = @Original_GUID);
|
||||
SELECT GUID, CONTROL_ID, SPALTENNAME, SPALTEN_HEADER, SPALTENBREITE, VALIDATION, CHOICE_LIST, CONNECTION_ID, SQL_COMMAND, READ_ONLY, LOAD_IDX_VALUE, ADDED_WHO, ADDED_WHEN, CHANGED_WHO, CHANGED_WHEN, REGEX_MATCH, REGEX_MESSAGE_EN, REGEX_MESSAGE_DE, SEQUENCE, DEFAULT_VALUE, ADVANCED_LOOKUP FROM TBPM_CONTROL_TABLE WHERE (GUID = @GUID)</CommandText>
|
||||
<Parameters>
|
||||
@@ -1362,6 +1362,7 @@ SELECT GUID, CONTROL_ID, SPALTENNAME, SPALTEN_HEADER, SPALTENBREITE, VALIDATION,
|
||||
<Parameter AllowDbNull="false" AutogeneratedName="INHERIT_VALUE" ColumnName="INHERIT_VALUE" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@INHERIT_VALUE" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="INHERIT_VALUE" SourceColumnNullMapping="false" SourceVersion="Current" />
|
||||
<Parameter AllowDbNull="false" AutogeneratedName="LU_CAPTION" ColumnName="LU_CAPTION" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="varchar(150)" DbType="AnsiString" Direction="Input" ParameterName="@LU_CAPTION" Precision="0" ProviderType="VarChar" Scale="0" Size="150" SourceColumn="LU_CAPTION" SourceColumnNullMapping="false" SourceVersion="Current" />
|
||||
<Parameter AllowDbNull="false" AutogeneratedName="FORMULA_EXPRESSION" ColumnName="FORMULA_EXPRESSION" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="nvarchar(1000)" DbType="String" Direction="Input" ParameterName="@FORMULA_EXPRESSION" Precision="0" ProviderType="NVarChar" Scale="0" Size="1000" SourceColumn="FORMULA_EXPRESSION" SourceColumnNullMapping="false" SourceVersion="Current" />
|
||||
<Parameter AllowDbNull="false" AutogeneratedName="FORMULA_SQL" ColumnName="FORMULA_SQL" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="nvarchar(3000)" DbType="String" Direction="Input" ParameterName="@FORMULA_SQL" Precision="0" ProviderType="NVarChar" Scale="0" Size="3000" SourceColumn="FORMULA_SQL" SourceColumnNullMapping="false" SourceVersion="Current" />
|
||||
<Parameter AllowDbNull="false" AutogeneratedName="Original_GUID" ColumnName="GUID" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@Original_GUID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="GUID" SourceColumnNullMapping="false" SourceVersion="Original" />
|
||||
<Parameter AllowDbNull="false" AutogeneratedName="GUID" ColumnName="GUID" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@GUID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="GUID" SourceColumnNullMapping="false" SourceVersion="Original" />
|
||||
</Parameters>
|
||||
@@ -1396,6 +1397,7 @@ SELECT GUID, CONTROL_ID, SPALTENNAME, SPALTEN_HEADER, SPALTENBREITE, VALIDATION,
|
||||
<Mapping SourceColumn="LU_CAPTION" DataSetColumn="LU_CAPTION" />
|
||||
<Mapping SourceColumn="INHERIT_VALUE" DataSetColumn="INHERIT_VALUE" />
|
||||
<Mapping SourceColumn="FORMULA_EXPRESSION" DataSetColumn="FORMULA_EXPRESSION" />
|
||||
<Mapping SourceColumn="FORMULA_SQL" DataSetColumn="FORMULA_SQL" />
|
||||
</Mappings>
|
||||
<Sources>
|
||||
<DbSource ConnectionRef="ConnectionString (MySettings)" DbObjectName="DD_ECM_TEST.dbo.TBPM_CONTROL_TABLE" DbObjectType="Table" GenerateShortCommands="true" GeneratorSourceName="cmdUpdate" Modifier="Public" Name="cmdUpdate" QueryType="Scalar" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetDataBy" UserSourceName="cmdUpdate">
|
||||
@@ -1405,7 +1407,7 @@ SELECT GUID, CONTROL_ID, SPALTENNAME, SPALTEN_HEADER, SPALTENBREITE, VALIDATION,
|
||||
SET SPALTENNAME = @SPALTENNAME, SPALTEN_HEADER = @SPALTEN_HEADER, SPALTENBREITE = @SPALTENBREITE, VALIDATION = @VALIDATION, READ_ONLY = @READ_ONLY, LOAD_IDX_VALUE = @LOAD_IDX_VALUE,
|
||||
CHANGED_WHO = @CHANGED_WHO, REGEX_MATCH = @REGEX_MATCH, REGEX_MESSAGE_EN = @REGEX_MESSAGE_EN, REGEX_MESSAGE_DE = @REGEX_MESSAGE_DE, DEFAULT_VALUE = @DEFAULT_VALUE,
|
||||
SEQUENCE = @SEQUENCE, ADVANCED_LOOKUP = @ADVANCED_LOOKUP, SUMMARY_FUNCTION = @SUMMARY_FUNCTION, TYPE_COLUMN = @TYPE_COLUMN, LU_CAPTION = @LU_CAPTION,
|
||||
INHERIT_VALUE = @INHERIT_VALUE, FORMULA_EXPRESSION = @FORMULA_EXPRESSION
|
||||
INHERIT_VALUE = @INHERIT_VALUE, FORMULA_EXPRESSION = @FORMULA_EXPRESSION, FORMULA_SQL = @FORMULA_SQL
|
||||
WHERE (GUID = @Original_GUID)</CommandText>
|
||||
<Parameters>
|
||||
<Parameter AllowDbNull="false" AutogeneratedName="SPALTENNAME" ColumnName="SPALTENNAME" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@SPALTENNAME" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="SPALTENNAME" SourceColumnNullMapping="false" SourceVersion="Current" />
|
||||
@@ -1426,6 +1428,7 @@ WHERE (GUID = @Original_GUID)</CommandText>
|
||||
<Parameter AllowDbNull="false" AutogeneratedName="LU_CAPTION" ColumnName="LU_CAPTION" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="varchar(150)" DbType="AnsiString" Direction="Input" ParameterName="@LU_CAPTION" Precision="0" ProviderType="VarChar" Scale="0" Size="150" SourceColumn="LU_CAPTION" SourceColumnNullMapping="false" SourceVersion="Current" />
|
||||
<Parameter AllowDbNull="false" AutogeneratedName="INHERIT_VALUE" ColumnName="INHERIT_VALUE" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@INHERIT_VALUE" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="INHERIT_VALUE" SourceColumnNullMapping="false" SourceVersion="Current" />
|
||||
<Parameter AllowDbNull="false" AutogeneratedName="FORMULA_EXPRESSION" ColumnName="FORMULA_EXPRESSION" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="nvarchar(1000)" DbType="String" Direction="Input" ParameterName="@FORMULA_EXPRESSION" Precision="0" ProviderType="NVarChar" Scale="0" Size="1000" SourceColumn="FORMULA_EXPRESSION" SourceColumnNullMapping="false" SourceVersion="Current" />
|
||||
<Parameter AllowDbNull="false" AutogeneratedName="FORMULA_SQL" ColumnName="FORMULA_SQL" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="nvarchar(3000)" DbType="String" Direction="Input" ParameterName="@FORMULA_SQL" Precision="0" ProviderType="NVarChar" Scale="0" Size="3000" SourceColumn="FORMULA_SQL" SourceColumnNullMapping="false" SourceVersion="Current" />
|
||||
<Parameter AllowDbNull="false" AutogeneratedName="Original_GUID" ColumnName="GUID" DataSourceName="DD_ECM.dbo.TBPM_CONTROL_TABLE" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@Original_GUID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="GUID" SourceColumnNullMapping="false" SourceVersion="Original" />
|
||||
</Parameters>
|
||||
</DbCommand>
|
||||
@@ -1458,7 +1461,7 @@ FROM TBPM_CONTROL_TABLE</CommandText>
|
||||
<DbCommand CommandType="Text" ModifiedByUser="true">
|
||||
<CommandText>SELECT ADDED_WHEN, ADDED_WHO, ADVANCED_LOOKUP, CHANGED_WHEN, CHANGED_WHO, CHOICE_LIST, CONNECTION_ID, CONTROL_ID, DEFAULT_VALUE, GUID, LOAD_IDX_VALUE, READ_ONLY, REGEX_MATCH,
|
||||
REGEX_MESSAGE_DE, REGEX_MESSAGE_EN, SEQUENCE, SPALTENBREITE, SPALTENNAME, SPALTEN_HEADER, SQL_COMMAND, VALIDATION, SUMMARY_FUNCTION, TYPE_COLUMN, LU_CAPTION, INHERIT_VALUE,
|
||||
FORMULA_EXPRESSION
|
||||
FORMULA_EXPRESSION, FORMULA_SQL
|
||||
FROM TBPM_CONTROL_TABLE
|
||||
WHERE (GUID = @GUID)</CommandText>
|
||||
<Parameters>
|
||||
@@ -2812,13 +2815,20 @@ SELECT GUID, NAME, TITLE, PRIORITY, DESCRIPTION, ACTIVE, WD_SEARCH, NO_OF_DOCUME
|
||||
</xs:simpleType>
|
||||
</xs:element>
|
||||
<xs:element name="INHERIT_VALUE" msprop:Generator_ColumnPropNameInTable="INHERIT_VALUEColumn" msprop:Generator_ColumnPropNameInRow="INHERIT_VALUE" msprop:Generator_UserColumnName="INHERIT_VALUE" msprop:Generator_ColumnVarNameInTable="columnINHERIT_VALUE" type="xs:boolean" default="false" />
|
||||
<xs:element name="FORMULA_EXPRESSION" msprop:Generator_ColumnPropNameInTable="FORMULA_EXPRESSIONColumn" msprop:Generator_ColumnPropNameInRow="FORMULA_EXPRESSION" msprop:Generator_UserColumnName="FORMULA_EXPRESSION" msprop:Generator_ColumnVarNameInTable="columnFORMULA_EXPRESSION">
|
||||
<xs:element name="FORMULA_EXPRESSION" msprop:Generator_ColumnPropNameInTable="FORMULA_EXPRESSIONColumn" msprop:Generator_ColumnPropNameInRow="FORMULA_EXPRESSION" msprop:Generator_UserColumnName="FORMULA_EXPRESSION" msprop:Generator_ColumnVarNameInTable="columnFORMULA_EXPRESSION" default="">
|
||||
<xs:simpleType>
|
||||
<xs:restriction base="xs:string">
|
||||
<xs:maxLength value="1000" />
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
</xs:element>
|
||||
<xs:element name="FORMULA_SQL" msprop:Generator_ColumnPropNameInRow="FORMULA_SQL" msprop:Generator_ColumnPropNameInTable="FORMULA_SQLColumn" msprop:Generator_ColumnVarNameInTable="columnFORMULA_SQL" msprop:Generator_UserColumnName="FORMULA_SQL" default="">
|
||||
<xs:simpleType>
|
||||
<xs:restriction base="xs:string">
|
||||
<xs:maxLength value="3000" />
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
</xs:element>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
@@ -3405,9 +3415,9 @@ SELECT GUID, NAME, TITLE, PRIORITY, DESCRIPTION, ACTIVE, WD_SEARCH, NO_OF_DOCUME
|
||||
</xs:element>
|
||||
<xs:annotation>
|
||||
<xs:appinfo>
|
||||
<msdata:Relationship name="FK_TBPM_CONTROL_TABLE_CONTROL1" msdata:parent="TBPM_PROFILE_CONTROLS" msdata:child="TBPM_CONTROL_TABLE" msdata:parentkey="GUID" msdata:childkey="CONTROL_ID" msprop:Generator_UserParentTable="TBPM_PROFILE_CONTROLS" msprop:Generator_UserChildTable="TBPM_CONTROL_TABLE" msprop:Generator_RelationVarName="relationFK_TBPM_CONTROL_TABLE_CONTROL1" msprop:Generator_ChildPropName="GetTBPM_CONTROL_TABLERows" msprop:Generator_UserRelationName="FK_TBPM_CONTROL_TABLE_CONTROL1" msprop:Generator_ParentPropName="TBPM_PROFILE_CONTROLSRow" />
|
||||
<msdata:Relationship name="FK_TBPM_CONTROL_TABLE_CONTROL" msdata:parent="TBWH_CHECK_PROFILE_CONTROLS" msdata:child="TBPM_CONTROL_TABLE" msdata:parentkey="GUID" msdata:childkey="CONTROL_ID" msprop:Generator_UserParentTable="TBWH_CHECK_PROFILE_CONTROLS" msprop:Generator_UserChildTable="TBPM_CONTROL_TABLE" msprop:Generator_RelationVarName="relationFK_TBPM_CONTROL_TABLE_CONTROL" msprop:Generator_ChildPropName="GetTBPM_CONTROL_TABLERows" msprop:Generator_ParentPropName="TBWH_CHECK_PROFILE_CONTROLSRow" msprop:Generator_UserRelationName="FK_TBPM_CONTROL_TABLE_CONTROL" />
|
||||
<msdata:Relationship name="FK_TBPM_PROFILE_CONTROLS_PROFILE" msdata:parent="TBPM_PROFILE" msdata:child="TBPM_PROFILE_CONTROLS" msdata:parentkey="GUID" msdata:childkey="PROFIL_ID" msprop:Generator_UserParentTable="TBPM_PROFILE" msprop:Generator_UserChildTable="TBPM_PROFILE_CONTROLS" msprop:Generator_RelationVarName="relationFK_TBPM_PROFILE_CONTROLS_PROFILE" msprop:Generator_ChildPropName="GetTBPM_PROFILE_CONTROLSRows" msprop:Generator_ParentPropName="TBPM_PROFILERow" msprop:Generator_UserRelationName="FK_TBPM_PROFILE_CONTROLS_PROFILE" />
|
||||
<msdata:Relationship name="FK_TBPM_CONTROL_TABLE_CONTROL1" msdata:parent="TBPM_PROFILE_CONTROLS" msdata:child="TBPM_CONTROL_TABLE" msdata:parentkey="GUID" msdata:childkey="CONTROL_ID" msprop:Generator_UserParentTable="TBPM_PROFILE_CONTROLS" msprop:Generator_UserChildTable="TBPM_CONTROL_TABLE" msprop:Generator_RelationVarName="relationFK_TBPM_CONTROL_TABLE_CONTROL1" msprop:Generator_ChildPropName="GetTBPM_CONTROL_TABLERows" msprop:Generator_ParentPropName="TBPM_PROFILE_CONTROLSRow" msprop:Generator_UserRelationName="FK_TBPM_CONTROL_TABLE_CONTROL1" />
|
||||
<msdata:Relationship name="FK_TBPM_CONTROL_TABLE_CONTROL" msdata:parent="TBWH_CHECK_PROFILE_CONTROLS" msdata:child="TBPM_CONTROL_TABLE" msdata:parentkey="GUID" msdata:childkey="CONTROL_ID" msprop:Generator_UserParentTable="TBWH_CHECK_PROFILE_CONTROLS" msprop:Generator_UserChildTable="TBPM_CONTROL_TABLE" msprop:Generator_RelationVarName="relationFK_TBPM_CONTROL_TABLE_CONTROL" msprop:Generator_ChildPropName="GetTBPM_CONTROL_TABLERows" msprop:Generator_UserRelationName="FK_TBPM_CONTROL_TABLE_CONTROL" msprop:Generator_ParentPropName="TBWH_CHECK_PROFILE_CONTROLSRow" />
|
||||
<msdata:Relationship name="FK_TBPM_PROFILE_CONTROLS_PROFILE" msdata:parent="TBPM_PROFILE" msdata:child="TBPM_PROFILE_CONTROLS" msdata:parentkey="GUID" msdata:childkey="PROFIL_ID" msprop:Generator_UserParentTable="TBPM_PROFILE" msprop:Generator_UserChildTable="TBPM_PROFILE_CONTROLS" msprop:Generator_RelationVarName="relationFK_TBPM_PROFILE_CONTROLS_PROFILE" msprop:Generator_ChildPropName="GetTBPM_PROFILE_CONTROLSRows" msprop:Generator_UserRelationName="FK_TBPM_PROFILE_CONTROLS_PROFILE" msprop:Generator_ParentPropName="TBPM_PROFILERow" />
|
||||
</xs:appinfo>
|
||||
</xs:annotation>
|
||||
</xs:schema>
|
||||
@@ -4,7 +4,7 @@
|
||||
Changes to this file may cause incorrect behavior and will be lost if
|
||||
the code is regenerated.
|
||||
</autogenerated>-->
|
||||
<DiagramLayout xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ex:showrelationlabel="False" ViewPortX="472" ViewPortY="129" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
|
||||
<DiagramLayout xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ex:showrelationlabel="False" ViewPortX="472" ViewPortY="90" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
|
||||
<Shapes>
|
||||
<Shape ID="DesignTable:TBPM_PROFILE_FINAL_INDEXING" ZOrder="14" X="1688" Y="-74" Height="324" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="197" />
|
||||
<Shape ID="DesignTable:TBPM_KONFIGURATION" ZOrder="2" X="-17" Y="232" Height="262" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="97" />
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -32,6 +32,6 @@ Imports System.Runtime.InteropServices
|
||||
' übernehmen, indem Sie "*" eingeben:
|
||||
' <Assembly: AssemblyVersion("1.0.*")>
|
||||
|
||||
<Assembly: AssemblyVersion("2.8.5.0")>
|
||||
<Assembly: AssemblyVersion("2.8.6.0")>
|
||||
<Assembly: AssemblyFileVersion("1.0.0.0")>
|
||||
<Assembly: NeutralResourcesLanguage("")>
|
||||
|
||||
@@ -1280,11 +1280,11 @@
|
||||
<None Include="Resources\PM_mit_slogan.JPG" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="taskFLOW-TEST-Debug.txt" />
|
||||
<None Include="Changelog.md" />
|
||||
<Content Include="DataColumnExpression.txt" />
|
||||
<Content Include="DD_Icons_ICO_PMANAGER_48px.ico" />
|
||||
<Content Include="DD_taskFLOW_ICON.ico" />
|
||||
<Content Include="Log_Waehrung.txt" />
|
||||
<Content Include="MailLicense.xml">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Content>
|
||||
|
||||
@@ -76,7 +76,8 @@ Public Class clsPatterns
|
||||
''' Aktualisiert den Wert eines Controls im Cache
|
||||
''' </summary>
|
||||
Public Shared Sub UpdateControlInCache(controlName As String, newValue As Object)
|
||||
SyncLock _ControlLookupCache ' Thread-Safety
|
||||
' FIX: SyncLock auf Nothing ist illegal → GetType(clsPatterns) als stabilen Lock-Anker nutzen
|
||||
SyncLock GetType(clsPatterns)
|
||||
If _ControlLookupCache Is Nothing OrElse Not _ControlLookupCache.ContainsKey(controlName) Then
|
||||
LOGGER.Warn($"Control [{controlName}] not found in cache for update")
|
||||
Return
|
||||
@@ -136,12 +137,14 @@ Public Class clsPatterns
|
||||
Public Shared Sub UpdateMultipleControlsInCache(updates As Dictionary(Of String, Object))
|
||||
If updates Is Nothing OrElse updates.Count = 0 Then Return
|
||||
|
||||
SyncLock _ControlLookupCache
|
||||
' FIX: Gleicher Lock-Anker wie UpdateControlInCache → kein Deadlock
|
||||
' Die eigentliche Aktualisierung läuft sequenziell über UpdateControlInCache,
|
||||
' da SyncLock in VB.NET re-entrant auf demselben Thread ist.
|
||||
For Each kvp In updates
|
||||
UpdateControlInCache(kvp.Key, kvp.Value)
|
||||
Next
|
||||
|
||||
LOGGER.Debug($"Batch cache update completed for {updates.Count} controls")
|
||||
End SyncLock
|
||||
End Sub
|
||||
''' <summary>
|
||||
''' Wraps a pattern-type and -value in the common format: {#type#value}
|
||||
@@ -270,14 +273,23 @@ Public Class clsPatterns
|
||||
Catch ex As Exception
|
||||
LOGGER.Error(ex)
|
||||
LOGGER.Info("Error in ReplaceUserValues:" & ex.Message)
|
||||
Return input ' FIX: Originalwert zurückgeben statt implizit Nothing
|
||||
End Try
|
||||
End Function
|
||||
|
||||
Private Shared Sub RecursiveAddToCache(ctrl As Control, cache As Dictionary(Of String, Control))
|
||||
Private Shared Sub RecursiveAddToCache(rootCtrl As Control, cache As Dictionary(Of String, Control))
|
||||
Dim stack As New Stack(Of Control)()
|
||||
stack.Push(rootCtrl)
|
||||
|
||||
While stack.Count > 0
|
||||
Dim ctrl As Control = stack.Pop()
|
||||
If Not String.IsNullOrEmpty(ctrl.Name) Then
|
||||
cache(ctrl.Name) = ctrl
|
||||
End If
|
||||
For Each child As Control In ctrl.Controls
|
||||
RecursiveAddToCache(child, cache)
|
||||
stack.Push(child)
|
||||
Next
|
||||
End While
|
||||
End Sub
|
||||
Public Shared Function ReplaceControlValues(pInput As String, oPanel As DevExpress.XtraEditors.XtraScrollableControl, oIsSQL As Boolean) As String
|
||||
Dim oResult = pInput
|
||||
@@ -291,8 +303,9 @@ Public Class clsPatterns
|
||||
LOGGER.Debug($"Control cache initialized with {_ControlLookupCache.Count} controls")
|
||||
End If
|
||||
End SyncLock
|
||||
Try
|
||||
|
||||
Try
|
||||
LOGGER.Debug($"Starting ReplaceControlValues with input: [{oResult}] for document ID: {CURRENT_DOC_ID}")
|
||||
Dim oTryCounter = 0
|
||||
|
||||
While ContainsPattern(oResult, PATTERN_CTRL)
|
||||
@@ -484,19 +497,22 @@ Public Class clsPatterns
|
||||
Try
|
||||
Dim oResult = pInput
|
||||
Dim oTryCounter As Integer = 0
|
||||
|
||||
LOGGER.Debug($"Starting ReplaceWindreamIndicies with input: [{oResult}] for document ID: {CURRENT_DOC_ID}")
|
||||
While ContainsPattern(oResult, PATTERN_WMI)
|
||||
Dim oWMValue As String
|
||||
Dim oIndexName As String = GetNextPattern(oResult, PATTERN_WMI).Value
|
||||
|
||||
If oIndexName = "@@DISPLAY_ONLY" Then
|
||||
oWMValue = String.Empty
|
||||
Else
|
||||
oWMValue = pDocument.GetVariableValue(oIndexName)
|
||||
End If
|
||||
|
||||
|
||||
If IsNothing(oWMValue) And oTryCounter = MAX_TRY_COUNT Then
|
||||
Throw New Exception("Max tries in ReplaceWindreamIndicies exceeded.")
|
||||
' FIX 1: >= statt = → Counter springt in 10er-Schritten, trifft niemals genau 5
|
||||
If IsNothing(oWMValue) AndAlso oTryCounter >= MAX_TRY_COUNT Then
|
||||
LOGGER.Warn($"[ReplaceWindreamIndicies] Max tries for [{oIndexName}] exceeded → replacing with empty string")
|
||||
oResult = ReplacePattern(oResult, PATTERN_WMI, String.Empty)
|
||||
Continue While
|
||||
End If
|
||||
|
||||
If oWMValue IsNot Nothing Then
|
||||
@@ -506,6 +522,11 @@ Public Class clsPatterns
|
||||
LOGGER.Debug($"oReplaceValue = {oWMValue}")
|
||||
End If
|
||||
oResult = ReplacePattern(oResult, PATTERN_WMI, oWMValue)
|
||||
Else
|
||||
' FIX 2: Else-Branch — Nothing-Wert ersetzt den Placeholder mit leerem String
|
||||
' verhindert Endless Loop wenn Windream-Index keinen Wert hat
|
||||
LOGGER.Warn($"[ReplaceWindreamIndicies] WMI value for [{oIndexName}] is Nothing → replacing with empty string (counter: {oTryCounter})")
|
||||
oResult = ReplacePattern(oResult, PATTERN_WMI, String.Empty)
|
||||
End If
|
||||
|
||||
' Increase counter by 10 to avoid DDOSing the Windream Service
|
||||
@@ -522,6 +543,7 @@ Public Class clsPatterns
|
||||
Try
|
||||
Dim result = input
|
||||
Dim oTryCounter As Integer = 0
|
||||
LOGGER.Debug($"Starting ReplaceIDBAttributes with input: [{result}] for document ID: {CURRENT_DOC_ID}")
|
||||
While ContainsPattern(result, PATTERN_IDBA)
|
||||
|
||||
Dim indexName As String = GetNextPattern(result, PATTERN_IDBA).Value
|
||||
@@ -573,6 +595,7 @@ Public Class clsPatterns
|
||||
Catch ex As Exception
|
||||
LOGGER.Error(ex)
|
||||
LOGGER.Info("Error in ReplaceIDBAttributes:" & ex.Message)
|
||||
Return input ' FIX: Originalwert zurückgeben statt implizit Nothing
|
||||
End Try
|
||||
End Function
|
||||
|
||||
|
||||
123
app/TaskFlow/frmColumn_Detail.Designer.vb
generated
123
app/TaskFlow/frmColumn_Detail.Designer.vb
generated
@@ -37,6 +37,8 @@ Partial Class frmColumn_Detail
|
||||
Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar()
|
||||
Me.RibbonPage2 = New DevExpress.XtraBars.Ribbon.RibbonPage()
|
||||
Me.LayoutControl1 = New DevExpress.XtraLayout.LayoutControl()
|
||||
Me.SimpleButton4 = New DevExpress.XtraEditors.SimpleButton()
|
||||
Me.FORMULA_SQLTextBox = New System.Windows.Forms.TextBox()
|
||||
Me.SimpleButton3 = New DevExpress.XtraEditors.SimpleButton()
|
||||
Me.FORMULA_EXPRESSIONTextBox = New System.Windows.Forms.TextBox()
|
||||
Me.LU_CAPTIONTextBox = New System.Windows.Forms.TextBox()
|
||||
@@ -89,6 +91,8 @@ Partial Class frmColumn_Detail
|
||||
Me.LayoutControlItem21 = New DevExpress.XtraLayout.LayoutControlItem()
|
||||
Me.LayoutControlItem24 = New DevExpress.XtraLayout.LayoutControlItem()
|
||||
Me.LayoutControlItem26 = New DevExpress.XtraLayout.LayoutControlItem()
|
||||
Me.LayoutControlItem27 = New DevExpress.XtraLayout.LayoutControlItem()
|
||||
Me.LayoutControlItem15 = New DevExpress.XtraLayout.LayoutControlItem()
|
||||
CType(Me.TBPM_CONTROL_TABLEBindingSource, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.DD_DMSLiteDataSet, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
@@ -141,6 +145,8 @@ Partial Class frmColumn_Detail
|
||||
CType(Me.LayoutControlItem21, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.LayoutControlItem24, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.LayoutControlItem26, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.LayoutControlItem27, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.LayoutControlItem15, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
Me.SuspendLayout()
|
||||
'
|
||||
'TBPM_CONTROL_TABLEBindingSource
|
||||
@@ -237,6 +243,8 @@ Partial Class frmColumn_Detail
|
||||
'
|
||||
'LayoutControl1
|
||||
'
|
||||
Me.LayoutControl1.Controls.Add(Me.SimpleButton4)
|
||||
Me.LayoutControl1.Controls.Add(Me.FORMULA_SQLTextBox)
|
||||
Me.LayoutControl1.Controls.Add(Me.SimpleButton3)
|
||||
Me.LayoutControl1.Controls.Add(Me.FORMULA_EXPRESSIONTextBox)
|
||||
Me.LayoutControl1.Controls.Add(Me.LU_CAPTIONTextBox)
|
||||
@@ -266,6 +274,19 @@ Partial Class frmColumn_Detail
|
||||
Me.LayoutControl1.Name = "LayoutControl1"
|
||||
Me.LayoutControl1.Root = Me.Root
|
||||
'
|
||||
'SimpleButton4
|
||||
'
|
||||
resources.ApplyResources(Me.SimpleButton4, "SimpleButton4")
|
||||
Me.SimpleButton4.Name = "SimpleButton4"
|
||||
Me.SimpleButton4.StyleController = Me.LayoutControl1
|
||||
'
|
||||
'FORMULA_SQLTextBox
|
||||
'
|
||||
Me.FORMULA_SQLTextBox.DataBindings.Add(New System.Windows.Forms.Binding("Text", Me.TBPM_CONTROL_TABLEBindingSource, "FORMULA_SQL", True))
|
||||
resources.ApplyResources(Me.FORMULA_SQLTextBox, "FORMULA_SQLTextBox")
|
||||
Me.FORMULA_SQLTextBox.Name = "FORMULA_SQLTextBox"
|
||||
Me.FORMULA_SQLTextBox.ReadOnly = True
|
||||
'
|
||||
'SimpleButton3
|
||||
'
|
||||
resources.ApplyResources(Me.SimpleButton3, "SimpleButton3")
|
||||
@@ -277,6 +298,7 @@ Partial Class frmColumn_Detail
|
||||
Me.FORMULA_EXPRESSIONTextBox.DataBindings.Add(New System.Windows.Forms.Binding("Text", Me.TBPM_CONTROL_TABLEBindingSource, "FORMULA_EXPRESSION", True))
|
||||
resources.ApplyResources(Me.FORMULA_EXPRESSIONTextBox, "FORMULA_EXPRESSIONTextBox")
|
||||
Me.FORMULA_EXPRESSIONTextBox.Name = "FORMULA_EXPRESSIONTextBox"
|
||||
Me.FORMULA_EXPRESSIONTextBox.ReadOnly = True
|
||||
'
|
||||
'LU_CAPTIONTextBox
|
||||
'
|
||||
@@ -478,9 +500,9 @@ Partial Class frmColumn_Detail
|
||||
'
|
||||
Me.Root.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.[True]
|
||||
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.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(593, 816)
|
||||
Me.Root.Size = New System.Drawing.Size(630, 853)
|
||||
Me.Root.TextVisible = False
|
||||
'
|
||||
'LayoutControlItem1
|
||||
@@ -489,7 +511,7 @@ Partial Class frmColumn_Detail
|
||||
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(573, 40)
|
||||
Me.LayoutControlItem1.Size = New System.Drawing.Size(610, 40)
|
||||
resources.ApplyResources(Me.LayoutControlItem1, "LayoutControlItem1")
|
||||
Me.LayoutControlItem1.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
@@ -499,7 +521,7 @@ Partial Class frmColumn_Detail
|
||||
Me.LayoutControlItem2.Location = New System.Drawing.Point(0, 40)
|
||||
Me.LayoutControlItem2.Name = "LayoutControlItem2"
|
||||
Me.LayoutControlItem2.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem2.Size = New System.Drawing.Size(573, 40)
|
||||
Me.LayoutControlItem2.Size = New System.Drawing.Size(610, 40)
|
||||
resources.ApplyResources(Me.LayoutControlItem2, "LayoutControlItem2")
|
||||
Me.LayoutControlItem2.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
@@ -509,7 +531,7 @@ Partial Class frmColumn_Detail
|
||||
Me.LayoutControlItem3.Location = New System.Drawing.Point(0, 80)
|
||||
Me.LayoutControlItem3.Name = "LayoutControlItem3"
|
||||
Me.LayoutControlItem3.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem3.Size = New System.Drawing.Size(573, 40)
|
||||
Me.LayoutControlItem3.Size = New System.Drawing.Size(610, 40)
|
||||
resources.ApplyResources(Me.LayoutControlItem3, "LayoutControlItem3")
|
||||
Me.LayoutControlItem3.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
@@ -519,7 +541,7 @@ Partial Class frmColumn_Detail
|
||||
Me.LayoutControlItem4.Location = New System.Drawing.Point(0, 120)
|
||||
Me.LayoutControlItem4.Name = "LayoutControlItem4"
|
||||
Me.LayoutControlItem4.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem4.Size = New System.Drawing.Size(286, 40)
|
||||
Me.LayoutControlItem4.Size = New System.Drawing.Size(304, 40)
|
||||
resources.ApplyResources(Me.LayoutControlItem4, "LayoutControlItem4")
|
||||
Me.LayoutControlItem4.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
@@ -529,16 +551,16 @@ Partial Class frmColumn_Detail
|
||||
Me.LayoutControlItem5.Location = New System.Drawing.Point(0, 200)
|
||||
Me.LayoutControlItem5.Name = "LayoutControlItem5"
|
||||
Me.LayoutControlItem5.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem5.Size = New System.Drawing.Size(488, 46)
|
||||
Me.LayoutControlItem5.Size = New System.Drawing.Size(520, 46)
|
||||
resources.ApplyResources(Me.LayoutControlItem5, "LayoutControlItem5")
|
||||
Me.LayoutControlItem5.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
'LayoutControlItem6
|
||||
'
|
||||
Me.LayoutControlItem6.Control = Me.SimpleButton1
|
||||
Me.LayoutControlItem6.Location = New System.Drawing.Point(488, 200)
|
||||
Me.LayoutControlItem6.Location = New System.Drawing.Point(520, 200)
|
||||
Me.LayoutControlItem6.Name = "LayoutControlItem6"
|
||||
Me.LayoutControlItem6.Size = New System.Drawing.Size(85, 46)
|
||||
Me.LayoutControlItem6.Size = New System.Drawing.Size(90, 46)
|
||||
Me.LayoutControlItem6.TextSize = New System.Drawing.Size(0, 0)
|
||||
Me.LayoutControlItem6.TextVisible = False
|
||||
'
|
||||
@@ -548,7 +570,7 @@ Partial Class frmColumn_Detail
|
||||
Me.LayoutControlItem8.Location = New System.Drawing.Point(0, 326)
|
||||
Me.LayoutControlItem8.Name = "LayoutControlItem8"
|
||||
Me.LayoutControlItem8.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem8.Size = New System.Drawing.Size(488, 46)
|
||||
Me.LayoutControlItem8.Size = New System.Drawing.Size(520, 46)
|
||||
resources.ApplyResources(Me.LayoutControlItem8, "LayoutControlItem8")
|
||||
Me.LayoutControlItem8.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
@@ -558,65 +580,65 @@ Partial Class frmColumn_Detail
|
||||
Me.LayoutControlItem7.Location = New System.Drawing.Point(0, 246)
|
||||
Me.LayoutControlItem7.Name = "LayoutControlItem7"
|
||||
Me.LayoutControlItem7.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem7.Size = New System.Drawing.Size(573, 40)
|
||||
Me.LayoutControlItem7.Size = New System.Drawing.Size(610, 40)
|
||||
resources.ApplyResources(Me.LayoutControlItem7, "LayoutControlItem7")
|
||||
Me.LayoutControlItem7.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
'LayoutControlItem9
|
||||
'
|
||||
Me.LayoutControlItem9.Control = Me.SimpleButton2
|
||||
Me.LayoutControlItem9.Location = New System.Drawing.Point(488, 326)
|
||||
Me.LayoutControlItem9.Location = New System.Drawing.Point(520, 326)
|
||||
Me.LayoutControlItem9.Name = "LayoutControlItem9"
|
||||
Me.LayoutControlItem9.Size = New System.Drawing.Size(85, 46)
|
||||
Me.LayoutControlItem9.Size = New System.Drawing.Size(90, 46)
|
||||
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, 458)
|
||||
Me.LayoutControlItem10.Location = New System.Drawing.Point(0, 504)
|
||||
Me.LayoutControlItem10.Name = "LayoutControlItem10"
|
||||
Me.LayoutControlItem10.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem10.Size = New System.Drawing.Size(286, 40)
|
||||
Me.LayoutControlItem10.Size = New System.Drawing.Size(304, 40)
|
||||
resources.ApplyResources(Me.LayoutControlItem10, "LayoutControlItem10")
|
||||
Me.LayoutControlItem10.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
'LayoutControlItem12
|
||||
'
|
||||
Me.LayoutControlItem12.Control = Me.CHANGED_WHOTextBox
|
||||
Me.LayoutControlItem12.Location = New System.Drawing.Point(0, 498)
|
||||
Me.LayoutControlItem12.Location = New System.Drawing.Point(0, 544)
|
||||
Me.LayoutControlItem12.Name = "LayoutControlItem12"
|
||||
Me.LayoutControlItem12.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem12.Size = New System.Drawing.Size(286, 40)
|
||||
Me.LayoutControlItem12.Size = New System.Drawing.Size(304, 40)
|
||||
resources.ApplyResources(Me.LayoutControlItem12, "LayoutControlItem12")
|
||||
Me.LayoutControlItem12.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
'LayoutControlItem11
|
||||
'
|
||||
Me.LayoutControlItem11.Control = Me.TextEdit8
|
||||
Me.LayoutControlItem11.Location = New System.Drawing.Point(286, 458)
|
||||
Me.LayoutControlItem11.Location = New System.Drawing.Point(304, 504)
|
||||
Me.LayoutControlItem11.Name = "LayoutControlItem11"
|
||||
Me.LayoutControlItem11.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem11.Size = New System.Drawing.Size(287, 40)
|
||||
Me.LayoutControlItem11.Size = New System.Drawing.Size(306, 40)
|
||||
resources.ApplyResources(Me.LayoutControlItem11, "LayoutControlItem11")
|
||||
Me.LayoutControlItem11.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
'LayoutControlItem13
|
||||
'
|
||||
Me.LayoutControlItem13.Control = Me.TextEdit10
|
||||
Me.LayoutControlItem13.Location = New System.Drawing.Point(286, 498)
|
||||
Me.LayoutControlItem13.Location = New System.Drawing.Point(304, 544)
|
||||
Me.LayoutControlItem13.Name = "LayoutControlItem13"
|
||||
Me.LayoutControlItem13.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem13.Size = New System.Drawing.Size(287, 40)
|
||||
Me.LayoutControlItem13.Size = New System.Drawing.Size(306, 40)
|
||||
resources.ApplyResources(Me.LayoutControlItem13, "LayoutControlItem13")
|
||||
Me.LayoutControlItem13.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
'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, 538)
|
||||
Me.LayoutControlGroup1.Location = New System.Drawing.Point(0, 584)
|
||||
Me.LayoutControlGroup1.Name = "LayoutControlGroup1"
|
||||
Me.LayoutControlGroup1.Size = New System.Drawing.Size(573, 258)
|
||||
Me.LayoutControlGroup1.Size = New System.Drawing.Size(610, 249)
|
||||
resources.ApplyResources(Me.LayoutControlGroup1, "LayoutControlGroup1")
|
||||
'
|
||||
'LayoutControlItem16
|
||||
@@ -624,7 +646,7 @@ 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(274, 24)
|
||||
Me.LayoutControlItem16.Size = New System.Drawing.Size(292, 24)
|
||||
Me.LayoutControlItem16.TextSize = New System.Drawing.Size(0, 0)
|
||||
Me.LayoutControlItem16.TextVisible = False
|
||||
'
|
||||
@@ -633,7 +655,7 @@ Partial Class frmColumn_Detail
|
||||
Me.LayoutControlItem14.Control = Me.READ_ONLYCheckBox
|
||||
Me.LayoutControlItem14.Location = New System.Drawing.Point(0, 24)
|
||||
Me.LayoutControlItem14.Name = "LayoutControlItem14"
|
||||
Me.LayoutControlItem14.Size = New System.Drawing.Size(549, 22)
|
||||
Me.LayoutControlItem14.Size = New System.Drawing.Size(586, 22)
|
||||
Me.LayoutControlItem14.TextSize = New System.Drawing.Size(0, 0)
|
||||
Me.LayoutControlItem14.TextVisible = False
|
||||
'
|
||||
@@ -642,7 +664,7 @@ Partial Class frmColumn_Detail
|
||||
Me.LayoutControlItem17.Control = Me.ADVANCED_LOOKUPCheckbox
|
||||
Me.LayoutControlItem17.Location = New System.Drawing.Point(0, 46)
|
||||
Me.LayoutControlItem17.Name = "LayoutControlItem17"
|
||||
Me.LayoutControlItem17.Size = New System.Drawing.Size(549, 22)
|
||||
Me.LayoutControlItem17.Size = New System.Drawing.Size(586, 22)
|
||||
Me.LayoutControlItem17.TextSize = New System.Drawing.Size(0, 0)
|
||||
Me.LayoutControlItem17.TextVisible = False
|
||||
'
|
||||
@@ -651,16 +673,16 @@ Partial Class frmColumn_Detail
|
||||
Me.LayoutControlItem25.Control = Me.LOAD_IDX_VALUECheckBox
|
||||
Me.LayoutControlItem25.Location = New System.Drawing.Point(0, 68)
|
||||
Me.LayoutControlItem25.Name = "LayoutControlItem25"
|
||||
Me.LayoutControlItem25.Size = New System.Drawing.Size(549, 22)
|
||||
Me.LayoutControlItem25.Size = New System.Drawing.Size(586, 22)
|
||||
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(274, 0)
|
||||
Me.LayoutControlItem20.Location = New System.Drawing.Point(292, 0)
|
||||
Me.LayoutControlItem20.Name = "LayoutControlItem20"
|
||||
Me.LayoutControlItem20.Size = New System.Drawing.Size(275, 24)
|
||||
Me.LayoutControlItem20.Size = New System.Drawing.Size(294, 24)
|
||||
resources.ApplyResources(Me.LayoutControlItem20, "LayoutControlItem20")
|
||||
Me.LayoutControlItem20.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
@@ -670,7 +692,7 @@ Partial Class frmColumn_Detail
|
||||
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.Name = "LayoutControlItem22"
|
||||
Me.LayoutControlItem22.Size = New System.Drawing.Size(549, 123)
|
||||
Me.LayoutControlItem22.Size = New System.Drawing.Size(586, 114)
|
||||
Me.LayoutControlItem22.TextSize = New System.Drawing.Size(0, 0)
|
||||
Me.LayoutControlItem22.TextVisible = False
|
||||
'
|
||||
@@ -680,17 +702,17 @@ Partial Class frmColumn_Detail
|
||||
Me.LayoutControlItem18.Location = New System.Drawing.Point(0, 372)
|
||||
Me.LayoutControlItem18.Name = "LayoutControlItem18"
|
||||
Me.LayoutControlItem18.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem18.Size = New System.Drawing.Size(573, 40)
|
||||
Me.LayoutControlItem18.Size = New System.Drawing.Size(610, 40)
|
||||
resources.ApplyResources(Me.LayoutControlItem18, "LayoutControlItem18")
|
||||
Me.LayoutControlItem18.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
'LayoutControlItem19
|
||||
'
|
||||
Me.LayoutControlItem19.Control = Me.SEQUENCETextBox
|
||||
Me.LayoutControlItem19.Location = New System.Drawing.Point(286, 120)
|
||||
Me.LayoutControlItem19.Location = New System.Drawing.Point(304, 120)
|
||||
Me.LayoutControlItem19.Name = "LayoutControlItem19"
|
||||
Me.LayoutControlItem19.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem19.Size = New System.Drawing.Size(287, 40)
|
||||
Me.LayoutControlItem19.Size = New System.Drawing.Size(306, 40)
|
||||
resources.ApplyResources(Me.LayoutControlItem19, "LayoutControlItem19")
|
||||
Me.LayoutControlItem19.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
@@ -701,7 +723,7 @@ Partial Class frmColumn_Detail
|
||||
Me.LayoutControlItem23.Location = New System.Drawing.Point(0, 286)
|
||||
Me.LayoutControlItem23.Name = "LayoutControlItem23"
|
||||
Me.LayoutControlItem23.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem23.Size = New System.Drawing.Size(573, 40)
|
||||
Me.LayoutControlItem23.Size = New System.Drawing.Size(610, 40)
|
||||
Me.LayoutControlItem23.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
'LayoutControlItem21
|
||||
@@ -710,7 +732,7 @@ Partial Class frmColumn_Detail
|
||||
Me.LayoutControlItem21.Location = New System.Drawing.Point(0, 160)
|
||||
Me.LayoutControlItem21.Name = "LayoutControlItem21"
|
||||
Me.LayoutControlItem21.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem21.Size = New System.Drawing.Size(573, 40)
|
||||
Me.LayoutControlItem21.Size = New System.Drawing.Size(610, 40)
|
||||
resources.ApplyResources(Me.LayoutControlItem21, "LayoutControlItem21")
|
||||
Me.LayoutControlItem21.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
@@ -720,19 +742,38 @@ Partial Class frmColumn_Detail
|
||||
Me.LayoutControlItem24.Location = New System.Drawing.Point(0, 412)
|
||||
Me.LayoutControlItem24.Name = "LayoutControlItem24"
|
||||
Me.LayoutControlItem24.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem24.Size = New System.Drawing.Size(488, 46)
|
||||
Me.LayoutControlItem24.Size = New System.Drawing.Size(520, 46)
|
||||
resources.ApplyResources(Me.LayoutControlItem24, "LayoutControlItem24")
|
||||
Me.LayoutControlItem24.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
'LayoutControlItem26
|
||||
'
|
||||
Me.LayoutControlItem26.Control = Me.SimpleButton3
|
||||
Me.LayoutControlItem26.Location = New System.Drawing.Point(488, 412)
|
||||
Me.LayoutControlItem26.Location = New System.Drawing.Point(520, 412)
|
||||
Me.LayoutControlItem26.Name = "LayoutControlItem26"
|
||||
Me.LayoutControlItem26.Size = New System.Drawing.Size(85, 46)
|
||||
Me.LayoutControlItem26.Size = New System.Drawing.Size(90, 46)
|
||||
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.Name = "LayoutControlItem27"
|
||||
Me.LayoutControlItem27.Padding = New DevExpress.XtraLayout.Utils.Padding(10, 10, 10, 10)
|
||||
Me.LayoutControlItem27.Size = New System.Drawing.Size(520, 46)
|
||||
resources.ApplyResources(Me.LayoutControlItem27, "LayoutControlItem27")
|
||||
Me.LayoutControlItem27.TextSize = New System.Drawing.Size(110, 13)
|
||||
'
|
||||
'LayoutControlItem15
|
||||
'
|
||||
Me.LayoutControlItem15.Control = Me.SimpleButton4
|
||||
Me.LayoutControlItem15.Location = New System.Drawing.Point(520, 458)
|
||||
Me.LayoutControlItem15.Name = "LayoutControlItem15"
|
||||
Me.LayoutControlItem15.Size = New System.Drawing.Size(90, 46)
|
||||
Me.LayoutControlItem15.TextSize = New System.Drawing.Size(0, 0)
|
||||
Me.LayoutControlItem15.TextVisible = False
|
||||
'
|
||||
'frmColumn_Detail
|
||||
'
|
||||
Me.Appearance.Options.UseFont = True
|
||||
@@ -799,6 +840,8 @@ Partial Class frmColumn_Detail
|
||||
CType(Me.LayoutControlItem21, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.LayoutControlItem24, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.LayoutControlItem26, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.LayoutControlItem27, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.LayoutControlItem15, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
Me.ResumeLayout(False)
|
||||
Me.PerformLayout
|
||||
|
||||
@@ -868,4 +911,8 @@ End Sub
|
||||
Friend WithEvents LayoutControlItem25 As DevExpress.XtraLayout.LayoutControlItem
|
||||
Friend WithEvents SimpleButton3 As DevExpress.XtraEditors.SimpleButton
|
||||
Friend WithEvents LayoutControlItem26 As DevExpress.XtraLayout.LayoutControlItem
|
||||
Friend WithEvents SimpleButton4 As DevExpress.XtraEditors.SimpleButton
|
||||
Friend WithEvents FORMULA_SQLTextBox As TextBox
|
||||
Friend WithEvents LayoutControlItem27 As DevExpress.XtraLayout.LayoutControlItem
|
||||
Friend WithEvents LayoutControlItem15 As DevExpress.XtraLayout.LayoutControlItem
|
||||
End Class
|
||||
|
||||
@@ -149,13 +149,13 @@
|
||||
<value>RibbonPage1</value>
|
||||
</data>
|
||||
<data name="RibbonControl1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>593, 67</value>
|
||||
<value>630, 67</value>
|
||||
</data>
|
||||
<data name="RibbonStatusBar1.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>0, 883</value>
|
||||
<value>0, 920</value>
|
||||
</data>
|
||||
<data name="RibbonStatusBar1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>593, 22</value>
|
||||
<value>630, 22</value>
|
||||
</data>
|
||||
<data name=">>RibbonStatusBar1.Name" xml:space="preserve">
|
||||
<value>RibbonStatusBar1</value>
|
||||
@@ -184,17 +184,65 @@
|
||||
<data name="RibbonPage2.Text" xml:space="preserve">
|
||||
<value>RibbonPage2</value>
|
||||
</data>
|
||||
<data name="SimpleButton3.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>500, 424</value>
|
||||
<data name="SimpleButton4.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>532, 470</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>
|
||||
</data>
|
||||
<data name="SimpleButton4.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>86, 42</value>
|
||||
</data>
|
||||
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="SimpleButton4.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>33</value>
|
||||
</data>
|
||||
<data name="SimpleButton4.Text" xml:space="preserve">
|
||||
<value>...</value>
|
||||
</data>
|
||||
<data name=">>SimpleButton4.Name" xml:space="preserve">
|
||||
<value>SimpleButton4</value>
|
||||
</data>
|
||||
<data name=">>SimpleButton4.Type" xml:space="preserve">
|
||||
<value>DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
|
||||
</data>
|
||||
<data name=">>SimpleButton4.Parent" xml:space="preserve">
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>SimpleButton4.ZOrder" xml:space="preserve">
|
||||
<value>4</value>
|
||||
</data>
|
||||
<data name="FORMULA_SQLTextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>142, 478</value>
|
||||
</data>
|
||||
<data name="FORMULA_SQLTextBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>378, 20</value>
|
||||
</data>
|
||||
<data name="FORMULA_SQLTextBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>32</value>
|
||||
</data>
|
||||
<data name=">>FORMULA_SQLTextBox.Name" xml:space="preserve">
|
||||
<value>FORMULA_SQLTextBox</value>
|
||||
</data>
|
||||
<data name=">>FORMULA_SQLTextBox.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>FORMULA_SQLTextBox.Parent" xml:space="preserve">
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>FORMULA_SQLTextBox.ZOrder" xml:space="preserve">
|
||||
<value>5</value>
|
||||
</data>
|
||||
<data name="SimpleButton3.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>532, 424</value>
|
||||
</data>
|
||||
<data name="SimpleButton3.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>10, 10, 10, 10</value>
|
||||
</data>
|
||||
<data name="SimpleButton3.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>81, 42</value>
|
||||
<value>86, 42</value>
|
||||
</data>
|
||||
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="SimpleButton3.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>31</value>
|
||||
</data>
|
||||
@@ -211,13 +259,13 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>SimpleButton3.ZOrder" xml:space="preserve">
|
||||
<value>4</value>
|
||||
<value>6</value>
|
||||
</data>
|
||||
<data name="FORMULA_EXPRESSIONTextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>142, 432</value>
|
||||
</data>
|
||||
<data name="FORMULA_EXPRESSIONTextBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>346, 20</value>
|
||||
<value>378, 20</value>
|
||||
</data>
|
||||
<data name="FORMULA_EXPRESSIONTextBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>29</value>
|
||||
@@ -232,13 +280,13 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>FORMULA_EXPRESSIONTextBox.ZOrder" xml:space="preserve">
|
||||
<value>5</value>
|
||||
<value>7</value>
|
||||
</data>
|
||||
<data name="LU_CAPTIONTextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>142, 306</value>
|
||||
</data>
|
||||
<data name="LU_CAPTIONTextBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>431, 20</value>
|
||||
<value>468, 20</value>
|
||||
</data>
|
||||
<data name="LU_CAPTIONTextBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>26</value>
|
||||
@@ -253,13 +301,13 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>LU_CAPTIONTextBox.ZOrder" xml:space="preserve">
|
||||
<value>6</value>
|
||||
<value>8</value>
|
||||
</data>
|
||||
<data name="GUIDTextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>142, 20</value>
|
||||
</data>
|
||||
<data name="GUIDTextBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>431, 20</value>
|
||||
<value>468, 20</value>
|
||||
</data>
|
||||
<data name="GUIDTextBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>4</value>
|
||||
@@ -274,13 +322,13 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>GUIDTextBox.ZOrder" xml:space="preserve">
|
||||
<value>7</value>
|
||||
<value>9</value>
|
||||
</data>
|
||||
<data name="SPALTENNAMETextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>142, 60</value>
|
||||
</data>
|
||||
<data name="SPALTENNAMETextBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>431, 20</value>
|
||||
<value>468, 20</value>
|
||||
</data>
|
||||
<data name="SPALTENNAMETextBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>5</value>
|
||||
@@ -295,13 +343,13 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>SPALTENNAMETextBox.ZOrder" xml:space="preserve">
|
||||
<value>8</value>
|
||||
<value>10</value>
|
||||
</data>
|
||||
<data name="SPALTEN_HEADERTextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>142, 100</value>
|
||||
</data>
|
||||
<data name="SPALTEN_HEADERTextBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>431, 20</value>
|
||||
<value>468, 20</value>
|
||||
</data>
|
||||
<data name="SPALTEN_HEADERTextBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>6</value>
|
||||
@@ -316,7 +364,7 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>SPALTEN_HEADERTextBox.ZOrder" xml:space="preserve">
|
||||
<value>9</value>
|
||||
<value>11</value>
|
||||
</data>
|
||||
<data name="SPALTENBREITETextBox.EditValue" type="System.Decimal, mscorlib">
|
||||
<value>0</value>
|
||||
@@ -329,7 +377,7 @@
|
||||
<value>Combo</value>
|
||||
</data>
|
||||
<data name="SPALTENBREITETextBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>144, 20</value>
|
||||
<value>162, 20</value>
|
||||
</data>
|
||||
<data name="SPALTENBREITETextBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>7</value>
|
||||
@@ -344,13 +392,13 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>SPALTENBREITETextBox.ZOrder" xml:space="preserve">
|
||||
<value>10</value>
|
||||
<value>12</value>
|
||||
</data>
|
||||
<data name="REGEX_MATCHTextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>142, 220</value>
|
||||
</data>
|
||||
<data name="REGEX_MATCHTextBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>346, 20</value>
|
||||
<value>378, 20</value>
|
||||
</data>
|
||||
<data name="REGEX_MATCHTextBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>8</value>
|
||||
@@ -365,10 +413,10 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>REGEX_MATCHTextBox.ZOrder" xml:space="preserve">
|
||||
<value>11</value>
|
||||
<value>13</value>
|
||||
</data>
|
||||
<data name="SimpleButton1.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>500, 212</value>
|
||||
<value>532, 212</value>
|
||||
</data>
|
||||
<data name="SimpleButton1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>10, 10, 10, 10</value>
|
||||
@@ -377,7 +425,7 @@
|
||||
<value>10, 10, 10, 10</value>
|
||||
</data>
|
||||
<data name="SimpleButton1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>81, 42</value>
|
||||
<value>86, 42</value>
|
||||
</data>
|
||||
<data name="SimpleButton1.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>9</value>
|
||||
@@ -395,13 +443,13 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>SimpleButton1.ZOrder" xml:space="preserve">
|
||||
<value>12</value>
|
||||
<value>14</value>
|
||||
</data>
|
||||
<data name="REGEX_MESSAGE_DETextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>142, 266</value>
|
||||
</data>
|
||||
<data name="REGEX_MESSAGE_DETextBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>431, 20</value>
|
||||
<value>468, 20</value>
|
||||
</data>
|
||||
<data name="REGEX_MESSAGE_DETextBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>10</value>
|
||||
@@ -416,13 +464,13 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>REGEX_MESSAGE_DETextBox.ZOrder" xml:space="preserve">
|
||||
<value>13</value>
|
||||
<value>15</value>
|
||||
</data>
|
||||
<data name="SQL_COMMANDTextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>142, 346</value>
|
||||
</data>
|
||||
<data name="SQL_COMMANDTextBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>346, 20</value>
|
||||
<value>378, 20</value>
|
||||
</data>
|
||||
<data name="SQL_COMMANDTextBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>11</value>
|
||||
@@ -437,16 +485,16 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>SQL_COMMANDTextBox.ZOrder" xml:space="preserve">
|
||||
<value>14</value>
|
||||
<value>16</value>
|
||||
</data>
|
||||
<data name="SimpleButton2.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>500, 338</value>
|
||||
<value>532, 338</value>
|
||||
</data>
|
||||
<data name="SimpleButton2.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>10, 10, 10, 10</value>
|
||||
</data>
|
||||
<data name="SimpleButton2.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>81, 42</value>
|
||||
<value>86, 42</value>
|
||||
</data>
|
||||
<data name="SimpleButton2.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>12</value>
|
||||
@@ -464,13 +512,13 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>SimpleButton2.ZOrder" xml:space="preserve">
|
||||
<value>15</value>
|
||||
<value>17</value>
|
||||
</data>
|
||||
<data name="TextEdit7.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>142, 478</value>
|
||||
<value>142, 524</value>
|
||||
</data>
|
||||
<data name="TextEdit7.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>144, 20</value>
|
||||
<value>162, 20</value>
|
||||
</data>
|
||||
<data name="TextEdit7.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>13</value>
|
||||
@@ -485,13 +533,13 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>TextEdit7.ZOrder" xml:space="preserve">
|
||||
<value>16</value>
|
||||
<value>18</value>
|
||||
</data>
|
||||
<data name="TextEdit8.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>428, 478</value>
|
||||
<value>446, 524</value>
|
||||
</data>
|
||||
<data name="TextEdit8.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>145, 20</value>
|
||||
<value>164, 20</value>
|
||||
</data>
|
||||
<data name="TextEdit8.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>14</value>
|
||||
@@ -506,13 +554,13 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>TextEdit8.ZOrder" xml:space="preserve">
|
||||
<value>17</value>
|
||||
<value>19</value>
|
||||
</data>
|
||||
<data name="CHANGED_WHOTextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>142, 518</value>
|
||||
<value>142, 564</value>
|
||||
</data>
|
||||
<data name="CHANGED_WHOTextBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>144, 20</value>
|
||||
<value>162, 20</value>
|
||||
</data>
|
||||
<data name="CHANGED_WHOTextBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>15</value>
|
||||
@@ -527,13 +575,13 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>CHANGED_WHOTextBox.ZOrder" xml:space="preserve">
|
||||
<value>18</value>
|
||||
<value>20</value>
|
||||
</data>
|
||||
<data name="TextEdit10.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>428, 518</value>
|
||||
<value>446, 564</value>
|
||||
</data>
|
||||
<data name="TextEdit10.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>145, 20</value>
|
||||
<value>164, 20</value>
|
||||
</data>
|
||||
<data name="TextEdit10.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>16</value>
|
||||
@@ -548,16 +596,16 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>TextEdit10.ZOrder" xml:space="preserve">
|
||||
<value>19</value>
|
||||
<value>21</value>
|
||||
</data>
|
||||
<data name="READ_ONLYCheckBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>24, 607</value>
|
||||
<value>24, 653</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>545, 18</value>
|
||||
<value>582, 18</value>
|
||||
</data>
|
||||
<data name="READ_ONLYCheckBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>17</value>
|
||||
@@ -572,16 +620,16 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>READ_ONLYCheckBox.ZOrder" xml:space="preserve">
|
||||
<value>20</value>
|
||||
<value>22</value>
|
||||
</data>
|
||||
<data name="LOAD_IDX_VALUECheckBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>24, 651</value>
|
||||
<value>24, 697</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>545, 18</value>
|
||||
<value>582, 18</value>
|
||||
</data>
|
||||
<data name="LOAD_IDX_VALUECheckBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>18</value>
|
||||
@@ -596,16 +644,16 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>LOAD_IDX_VALUECheckBox.ZOrder" xml:space="preserve">
|
||||
<value>21</value>
|
||||
<value>23</value>
|
||||
</data>
|
||||
<data name="VALIDATIONCheckbox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>24, 583</value>
|
||||
<value>24, 629</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>270, 18</value>
|
||||
<value>288, 18</value>
|
||||
</data>
|
||||
<data name="VALIDATIONCheckbox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>19</value>
|
||||
@@ -620,16 +668,16 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>VALIDATIONCheckbox.ZOrder" xml:space="preserve">
|
||||
<value>22</value>
|
||||
<value>24</value>
|
||||
</data>
|
||||
<data name="ADVANCED_LOOKUPCheckbox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>24, 629</value>
|
||||
<value>24, 675</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>545, 18</value>
|
||||
<value>582, 18</value>
|
||||
</data>
|
||||
<data name="ADVANCED_LOOKUPCheckbox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>20</value>
|
||||
@@ -644,13 +692,13 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>ADVANCED_LOOKUPCheckbox.ZOrder" xml:space="preserve">
|
||||
<value>23</value>
|
||||
<value>25</value>
|
||||
</data>
|
||||
<data name="DEFAULTVALUETextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>142, 392</value>
|
||||
</data>
|
||||
<data name="DEFAULTVALUETextBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>431, 20</value>
|
||||
<value>468, 20</value>
|
||||
</data>
|
||||
<data name="DEFAULTVALUETextBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>21</value>
|
||||
@@ -665,19 +713,19 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>DEFAULTVALUETextBox.ZOrder" xml:space="preserve">
|
||||
<value>24</value>
|
||||
<value>26</value>
|
||||
</data>
|
||||
<data name="SEQUENCETextBox.EditValue" type="System.Decimal, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="SEQUENCETextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>428, 140</value>
|
||||
<value>446, 140</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>145, 20</value>
|
||||
<value>164, 20</value>
|
||||
</data>
|
||||
<data name="SEQUENCETextBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>22</value>
|
||||
@@ -692,10 +740,10 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>SEQUENCETextBox.ZOrder" xml:space="preserve">
|
||||
<value>25</value>
|
||||
<value>27</value>
|
||||
</data>
|
||||
<data name="SUMMARY_FUNCTIONCombobox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>420, 583</value>
|
||||
<value>438, 629</value>
|
||||
</data>
|
||||
<data name="SUMMARY_FUNCTIONCombobox.Properties.Buttons" type="DevExpress.XtraEditors.Controls.ButtonPredefines, DevExpress.Utils.v21.2">
|
||||
<value>Combo</value>
|
||||
@@ -704,7 +752,7 @@
|
||||
<value />
|
||||
</data>
|
||||
<data name="SUMMARY_FUNCTIONCombobox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>149, 20</value>
|
||||
<value>168, 20</value>
|
||||
</data>
|
||||
<data name="SUMMARY_FUNCTIONCombobox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>23</value>
|
||||
@@ -719,7 +767,7 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>SUMMARY_FUNCTIONCombobox.ZOrder" xml:space="preserve">
|
||||
<value>26</value>
|
||||
<value>28</value>
|
||||
</data>
|
||||
<data name="TYPE_COLUMNComboBox2.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>142, 180</value>
|
||||
@@ -731,7 +779,7 @@
|
||||
<value />
|
||||
</data>
|
||||
<data name="TYPE_COLUMNComboBox2.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>431, 20</value>
|
||||
<value>468, 20</value>
|
||||
</data>
|
||||
<data name="TYPE_COLUMNComboBox2.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>27</value>
|
||||
@@ -746,16 +794,16 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>TYPE_COLUMNComboBox2.ZOrder" xml:space="preserve">
|
||||
<value>27</value>
|
||||
<value>29</value>
|
||||
</data>
|
||||
<data name="CheckEditInheritValue.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>24, 673</value>
|
||||
<value>24, 719</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>545, 18</value>
|
||||
<value>582, 18</value>
|
||||
</data>
|
||||
<data name="CheckEditInheritValue.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>28</value>
|
||||
@@ -770,7 +818,7 @@
|
||||
<value>LayoutControl1</value>
|
||||
</data>
|
||||
<data name=">>CheckEditInheritValue.ZOrder" xml:space="preserve">
|
||||
<value>28</value>
|
||||
<value>30</value>
|
||||
</data>
|
||||
<data name="LayoutControl1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>Fill</value>
|
||||
@@ -835,8 +883,11 @@
|
||||
<data name="LayoutControlItem24.Text" xml:space="preserve">
|
||||
<value>Formel:</value>
|
||||
</data>
|
||||
<data name="LayoutControlItem27.Text" xml:space="preserve">
|
||||
<value>Formel SQL:</value>
|
||||
</data>
|
||||
<data name="LayoutControl1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>593, 816</value>
|
||||
<value>630, 853</value>
|
||||
</data>
|
||||
<data name="LayoutControl1.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>33</value>
|
||||
@@ -863,7 +914,7 @@
|
||||
<value>6, 13</value>
|
||||
</data>
|
||||
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
|
||||
<value>593, 905</value>
|
||||
<value>630, 942</value>
|
||||
</data>
|
||||
<data name="$this.Font" type="System.Drawing.Font, System.Drawing">
|
||||
<value>Segoe UI, 8.25pt</value>
|
||||
@@ -1093,6 +1144,18 @@
|
||||
<data name=">>LayoutControlItem26.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=">>LayoutControlItem27.Name" xml:space="preserve">
|
||||
<value>LayoutControlItem27</value>
|
||||
</data>
|
||||
<data name=">>LayoutControlItem27.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=">>LayoutControlItem15.Name" xml:space="preserve">
|
||||
<value>LayoutControlItem15</value>
|
||||
</data>
|
||||
<data name=">>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=">>$this.Name" xml:space="preserve">
|
||||
<value>frmColumn_Detail</value>
|
||||
</data>
|
||||
|
||||
@@ -100,6 +100,7 @@ Public Class frmColumn_Detail
|
||||
LU_CAPTIONTextBox.Text,
|
||||
CheckEditInheritValue.Checked,
|
||||
FORMULA_EXPRESSIONTextBox.Text,
|
||||
FORMULA_SQLTextBox.Text,
|
||||
GUIDTextBox.Text
|
||||
)
|
||||
tslblAenderungen.Visibility = DevExpress.XtraBars.BarItemVisibility.Always
|
||||
@@ -224,4 +225,52 @@ Public Class frmColumn_Detail
|
||||
Dim dt As DataTable = DatabaseFallback.GetDatatableECM(oSQL)
|
||||
Return dt
|
||||
End Function
|
||||
|
||||
Private Sub SimpleButton4_Click(sender As Object, e As EventArgs) Handles SimpleButton4.Click
|
||||
Dim oldSQL = FORMULA_SQLTextBox.Text
|
||||
CURRENT_DESIGN_TYPE = "SQL_SOURCE_TABLE_COLUMN"
|
||||
CURRENT_INDEX_ID = GUIDTextBox.Text
|
||||
Dim oForm2 As New frmSQLEditor(LOGCONFIG, DatabaseECM) With {
|
||||
.SQLCommand = FORMULA_SQLTextBox.Text,
|
||||
.SQLConnection = 0
|
||||
}
|
||||
oForm2.ShowDialog()
|
||||
|
||||
If oForm2.DialogResult = DialogResult.OK Then
|
||||
If oldSQL <> oForm2.SQLCommand Then
|
||||
Dim oUpdate As String = $"Update TBPM_CONTROL_TABLE SET CHANGED_WHO = '{USER_USERNAME}', FORMULA_SQL = '{oForm2.SQLCommand.Replace("'", "''")}'
|
||||
, CONNECTION_ID = {oForm2.SQLConnection} WHERE GUID = {GUIDTextBox.Text}"
|
||||
If DatabaseFallback.ExecuteNonQueryECM(oUpdate) = True Then
|
||||
tslblAenderungen.Visibility = DevExpress.XtraBars.BarItemVisibility.Always
|
||||
tslblAenderungen.Caption = "Changes saved - " & Now
|
||||
FORMULA_SQLTextBox.Text = oForm2.SQLCommand
|
||||
Else
|
||||
MsgBox("Fehler beim Speichern des SQL Befehls. Bitte überprüfen Sie Ihre Eingabe und versuchen Sie es erneut.", MsgBoxStyle.Critical, "Fehler")
|
||||
End If
|
||||
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub FORMULA_EXPRESSIONTextBox_TextChanged(sender As Object, e As EventArgs) Handles FORMULA_EXPRESSIONTextBox.TextChanged, FORMULA_SQLTextBox.TextChanged
|
||||
Dim oHasFormulaExpression As Boolean = FORMULA_EXPRESSIONTextBox.Text.Trim() <> String.Empty
|
||||
Dim oHasFormulaSql As Boolean = FORMULA_SQLTextBox.Text.Trim() <> String.Empty
|
||||
|
||||
' Entweder/Oder-Validierung: Beide gleichzeitig ist nicht erlaubt
|
||||
If oHasFormulaExpression AndAlso oHasFormulaSql Then
|
||||
MsgBox("Es darf nur FORMULA_EXPRESSION oder FORMULA_SQL gesetzt sein, nicht beides." & vbCrLf &
|
||||
"Bitte leeren Sie eines der beiden Felder.",
|
||||
MsgBoxStyle.Exclamation, "Ungültige Konfiguration")
|
||||
End If
|
||||
|
||||
' Wenn eine Formel gesetzt ist → ReadOnly aktivieren und sperren
|
||||
If oHasFormulaExpression OrElse oHasFormulaSql Then
|
||||
READ_ONLYCheckBox.Checked = True
|
||||
'READ_ONLYCheckBox.Enabled = False
|
||||
Else
|
||||
READ_ONLYCheckBox.Checked = False
|
||||
'READ_ONLYCheckBox.Enabled = True
|
||||
End If
|
||||
|
||||
End Sub
|
||||
End Class
|
||||
@@ -124,46 +124,46 @@
|
||||
<value>
|
||||
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
||||
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
||||
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADw
|
||||
CAAAAk1TRnQBSQFMAgEBAgEAAfgBCwH4AQsBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||
AwABQAMAARADAAEBAQABCAYAAQQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
|
||||
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
|
||||
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
|
||||
AWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYCAAFm
|
||||
AZkCAAFmAcwCAAFmAf8CAAGZAwABmQEzAgABmQFmAgACmQIAAZkBzAIAAZkB/wIAAcwDAAHMATMCAAHM
|
||||
AWYCAAHMAZkCAALMAgABzAH/AgAB/wFmAgAB/wGZAgAB/wHMAQABMwH/AgAB/wEAATMBAAEzAQABZgEA
|
||||
ATMBAAGZAQABMwEAAcwBAAEzAQAB/wEAAf8BMwIAAzMBAAIzAWYBAAIzAZkBAAIzAcwBAAIzAf8BAAEz
|
||||
AWYCAAEzAWYBMwEAATMCZgEAATMBZgGZAQABMwFmAcwBAAEzAWYB/wEAATMBmQIAATMBmQEzAQABMwGZ
|
||||
AWYBAAEzApkBAAEzAZkBzAEAATMBmQH/AQABMwHMAgABMwHMATMBAAEzAcwBZgEAATMBzAGZAQABMwLM
|
||||
AQABMwHMAf8BAAEzAf8BMwEAATMB/wFmAQABMwH/AZkBAAEzAf8BzAEAATMC/wEAAWYDAAFmAQABMwEA
|
||||
AWYBAAFmAQABZgEAAZkBAAFmAQABzAEAAWYBAAH/AQABZgEzAgABZgIzAQABZgEzAWYBAAFmATMBmQEA
|
||||
AWYBMwHMAQABZgEzAf8BAAJmAgACZgEzAQADZgEAAmYBmQEAAmYBzAEAAWYBmQIAAWYBmQEzAQABZgGZ
|
||||
AWYBAAFmApkBAAFmAZkBzAEAAWYBmQH/AQABZgHMAgABZgHMATMBAAFmAcwBmQEAAWYCzAEAAWYBzAH/
|
||||
AQABZgH/AgABZgH/ATMBAAFmAf8BmQEAAWYB/wHMAQABzAEAAf8BAAH/AQABzAEAApkCAAGZATMBmQEA
|
||||
AZkBAAGZAQABmQEAAcwBAAGZAwABmQIzAQABmQEAAWYBAAGZATMBzAEAAZkBAAH/AQABmQFmAgABmQFm
|
||||
ATMBAAGZATMBZgEAAZkBZgGZAQABmQFmAcwBAAGZATMB/wEAApkBMwEAApkBZgEAA5kBAAKZAcwBAAKZ
|
||||
Af8BAAGZAcwCAAGZAcwBMwEAAWYBzAFmAQABmQHMAZkBAAGZAswBAAGZAcwB/wEAAZkB/wIAAZkB/wEz
|
||||
AQABmQHMAWYBAAGZAf8BmQEAAZkB/wHMAQABmQL/AQABzAMAAZkBAAEzAQABzAEAAWYBAAHMAQABmQEA
|
||||
AcwBAAHMAQABmQEzAgABzAIzAQABzAEzAWYBAAHMATMBmQEAAcwBMwHMAQABzAEzAf8BAAHMAWYCAAHM
|
||||
AWYBMwEAAZkCZgEAAcwBZgGZAQABzAFmAcwBAAGZAWYB/wEAAcwBmQIAAcwBmQEzAQABzAGZAWYBAAHM
|
||||
ApkBAAHMAZkBzAEAAcwBmQH/AQACzAIAAswBMwEAAswBZgEAAswBmQEAA8wBAALMAf8BAAHMAf8CAAHM
|
||||
Af8BMwEAAZkB/wFmAQABzAH/AZkBAAHMAf8BzAEAAcwC/wEAAcwBAAEzAQAB/wEAAWYBAAH/AQABmQEA
|
||||
AcwBMwIAAf8CMwEAAf8BMwFmAQAB/wEzAZkBAAH/ATMBzAEAAf8BMwH/AQAB/wFmAgAB/wFmATMBAAHM
|
||||
AmYBAAH/AWYBmQEAAf8BZgHMAQABzAFmAf8BAAH/AZkCAAH/AZkBMwEAAf8BmQFmAQAB/wKZAQAB/wGZ
|
||||
AcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC/wEz
|
||||
AQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC/wFm
|
||||
AQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gBAAHw
|
||||
AfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD/0YAAQgEcgEICgABGgEc
|
||||
AnQBHAEaKQABcgFVAVoCWwFaAVUBTwgAAXQBeQF6AuUBegF5AXQnAAJVAVoBWwLkAVsBWgJVBgABdAJ6
|
||||
BOUBegF5AVIlAAFPAVUCWgRbAVoCVQFPBAABUgFZAXoG5QF6AlIjAAEIAlUIWgJVAQgCAAEaAVIBWQF6
|
||||
BuUBWQFYAVIBGiIAAU8CVQdaA1UBTwIAAUwBUgpZAVIBTCIAAU8BNApVATQBLgIAAUwBUgFTCFkBUwFS
|
||||
AUwiAAEtAzMHNAIzAS0CAAIrAjIGUwIyAisiAAFPAS0BMwhVATQCLQIAAUwCKwhTAVICKyIAAQgBLQFV
|
||||
CJcBVQEtAQgCAAEaASsBUgh1AVIBKwEaIwABAgGXCJgBlwEtBAABKgF0CJoBdAErJQABTwEIARsFwgHx
|
||||
AU8GAAFMARoBGwQaARsBGgFSJwABTwEIAfMC/wHzAQgBcggAAUwBGgT2ARoBdCkAAQgEcgEICgABGgR0
|
||||
ARplAAFCAU0BPgcAAT4DAAEoAwABQAMAARADAAEBAQABAQUAAYAXAAP/AQAE/wQAAfgBHwH4AR8EAAHw
|
||||
AQ8B8AEPBAAB4AEHAeABBwQAAcABAwHAAQMEAAGAAQEBgAEBBAABgAEBAYABAQQAAYABAQGAAQEEAAGA
|
||||
AQEBgAEBBAABgAEBAYABAQQAAYABAQGAAQEEAAHAAQMBwAEDBAAB4AEHAeABBwQAAfABDwHwAQ8EAAH4
|
||||
AR8B+AEfBAAE/wQACw==
|
||||
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADu
|
||||
CAAAAk1TRnQBSQFMAgEBAgIAAQwBAAEMARABAAEQAQAE/wEJAQAI/wFCAU0BNgEEBgABNgEEAgABKAMA
|
||||
AUADAAEQAwABAQEAAQgGAAEEGAABgAIAAYADAAKAAQABgAMAAYABAAGAAQACgAIAA8ABAAHAAdwBwAEA
|
||||
AfABygGmAQABMwUAATMBAAEzAQABMwEAAjMCAAMWAQADHAEAAyIBAAMpAQADVQEAA00BAANCAQADOQEA
|
||||
AYABfAH/AQACUAH/AQABkwEAAdYBAAH/AewBzAEAAcYB1gHvAQAB1gLnAQABkAGpAa0CAAH/ATMDAAFm
|
||||
AwABmQMAAcwCAAEzAwACMwIAATMBZgIAATMBmQIAATMBzAIAATMB/wIAAWYDAAFmATMCAAJmAgABZgGZ
|
||||
AgABZgHMAgABZgH/AgABmQMAAZkBMwIAAZkBZgIAApkCAAGZAcwCAAGZAf8CAAHMAwABzAEzAgABzAFm
|
||||
AgABzAGZAgACzAIAAcwB/wIAAf8BZgIAAf8BmQIAAf8BzAEAATMB/wIAAf8BAAEzAQABMwEAAWYBAAEz
|
||||
AQABmQEAATMBAAHMAQABMwEAAf8BAAH/ATMCAAMzAQACMwFmAQACMwGZAQACMwHMAQACMwH/AQABMwFm
|
||||
AgABMwFmATMBAAEzAmYBAAEzAWYBmQEAATMBZgHMAQABMwFmAf8BAAEzAZkCAAEzAZkBMwEAATMBmQFm
|
||||
AQABMwKZAQABMwGZAcwBAAEzAZkB/wEAATMBzAIAATMBzAEzAQABMwHMAWYBAAEzAcwBmQEAATMCzAEA
|
||||
ATMBzAH/AQABMwH/ATMBAAEzAf8BZgEAATMB/wGZAQABMwH/AcwBAAEzAv8BAAFmAwABZgEAATMBAAFm
|
||||
AQABZgEAAWYBAAGZAQABZgEAAcwBAAFmAQAB/wEAAWYBMwIAAWYCMwEAAWYBMwFmAQABZgEzAZkBAAFm
|
||||
ATMBzAEAAWYBMwH/AQACZgIAAmYBMwEAA2YBAAJmAZkBAAJmAcwBAAFmAZkCAAFmAZkBMwEAAWYBmQFm
|
||||
AQABZgKZAQABZgGZAcwBAAFmAZkB/wEAAWYBzAIAAWYBzAEzAQABZgHMAZkBAAFmAswBAAFmAcwB/wEA
|
||||
AWYB/wIAAWYB/wEzAQABZgH/AZkBAAFmAf8BzAEAAcwBAAH/AQAB/wEAAcwBAAKZAgABmQEzAZkBAAGZ
|
||||
AQABmQEAAZkBAAHMAQABmQMAAZkCMwEAAZkBAAFmAQABmQEzAcwBAAGZAQAB/wEAAZkBZgIAAZkBZgEz
|
||||
AQABmQEzAWYBAAGZAWYBmQEAAZkBZgHMAQABmQEzAf8BAAKZATMBAAKZAWYBAAOZAQACmQHMAQACmQH/
|
||||
AQABmQHMAgABmQHMATMBAAFmAcwBZgEAAZkBzAGZAQABmQLMAQABmQHMAf8BAAGZAf8CAAGZAf8BMwEA
|
||||
AZkBzAFmAQABmQH/AZkBAAGZAf8BzAEAAZkC/wEAAcwDAAGZAQABMwEAAcwBAAFmAQABzAEAAZkBAAHM
|
||||
AQABzAEAAZkBMwIAAcwCMwEAAcwBMwFmAQABzAEzAZkBAAHMATMBzAEAAcwBMwH/AQABzAFmAgABzAFm
|
||||
ATMBAAGZAmYBAAHMAWYBmQEAAcwBZgHMAQABmQFmAf8BAAHMAZkCAAHMAZkBMwEAAcwBmQFmAQABzAKZ
|
||||
AQABzAGZAcwBAAHMAZkB/wEAAswCAALMATMBAALMAWYBAALMAZkBAAPMAQACzAH/AQABzAH/AgABzAH/
|
||||
ATMBAAGZAf8BZgEAAcwB/wGZAQABzAH/AcwBAAHMAv8BAAHMAQABMwEAAf8BAAFmAQAB/wEAAZkBAAHM
|
||||
ATMCAAH/AjMBAAH/ATMBZgEAAf8BMwGZAQAB/wEzAcwBAAH/ATMB/wEAAf8BZgIAAf8BZgEzAQABzAJm
|
||||
AQAB/wFmAZkBAAH/AWYBzAEAAcwBZgH/AQAB/wGZAgAB/wGZATMBAAH/AZkBZgEAAf8CmQEAAf8BmQHM
|
||||
AQAB/wGZAf8BAAH/AcwCAAH/AcwBMwEAAf8BzAFmAQAB/wHMAZkBAAH/AswBAAH/AcwB/wEAAv8BMwEA
|
||||
AcwB/wFmAQAC/wGZAQAC/wHMAQACZgH/AQABZgH/AWYBAAFmAv8BAAH/AmYBAAH/AWYB/wEAAv8BZgEA
|
||||
ASEBAAGlAQADXwEAA3cBAAOGAQADlgEAA8sBAAOyAQAD1wEAA90BAAPjAQAD6gEAA/EBAAP4AQAB8AH7
|
||||
Af8BAAGkAqABAAOAAwAB/wIAAf8DAAL/AQAB/wMAAf8BAAH/AQAC/wIAA/9GAAEIBHIBCAoAARoBHAJ0
|
||||
ARwBGikAAXIBVQFaAlsBWgFVAU8IAAF0AXkBegLlAXoBeQF0JwACVQFaAVsC5AFbAVoCVQYAAXQCegTl
|
||||
AXoBeQFSJQABTwFVAloEWwFaAlUBTwQAAVIBWQF6BuUBegJSIwABCAJVCFoCVQEIAgABGgFSAVkBegbl
|
||||
AVkBWAFSARoiAAFPAlUHWgNVAU8CAAFMAVIKWQFSAUwiAAFPATQKVQE0AS4CAAFMAVIBUwhZAVMBUgFM
|
||||
IgABLQMzBzQCMwEtAgACKwIyBlMCMgIrIgABTwEtATMIVQE0Ai0CAAFMAisIUwFSAisiAAEIAS0BVQiX
|
||||
AVUBLQEIAgABGgErAVIIdQFSASsBGiMAAQIBlwiYAZcBLQQAASoBdAiaAXQBKyUAAU8BCAEbBcIB8QFP
|
||||
BgABTAEaARsEGgEbARoBUicAAU8BCAHzAv8B8wEIAXIIAAFMARoE9gEaAXQpAAEIBHIBCAoAARoEdAEa
|
||||
ZQABQgFNAT4HAAE+AwABKAMAAUADAAEQAwABAQEAAQEFAAGAFwAD/wEABP8EAAH4AR8B+AEfBAAB8AEP
|
||||
AfABDwQAAeABBwHgAQcEAAHAAQMBwAEDBAABgAEBAYABAQQAAYABAQGAAQEEAAGAAQEBgAEBBAABgAEB
|
||||
AYABAQQAAYABAQGAAQEEAAGAAQEBgAEBBAABwAEDAcABAwQAAeABBwHgAQcEAAHwAQ8B8AEPBAAB+AEf
|
||||
AfgBHwQABP8EAAs=
|
||||
</value>
|
||||
</data>
|
||||
<metadata name="DD_DMSLiteDataSet.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
@@ -1506,13 +1506,13 @@
|
||||
<value>Aktionen</value>
|
||||
</data>
|
||||
<data name="RibbonControl1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>1178, 126</value>
|
||||
<value>1473, 158</value>
|
||||
</data>
|
||||
<data name="RibbonStatusBar1.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>0, 670</value>
|
||||
<value>0, 838</value>
|
||||
</data>
|
||||
<data name="RibbonStatusBar1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>1178, 18</value>
|
||||
<value>1473, 22</value>
|
||||
</data>
|
||||
<data name=">>RibbonStatusBar1.Name" xml:space="preserve">
|
||||
<value>RibbonStatusBar1</value>
|
||||
@@ -1539,7 +1539,7 @@
|
||||
<value>4</value>
|
||||
</data>
|
||||
<data name="GridControlWorkflows.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>945, 549</value>
|
||||
<value>1240, 656</value>
|
||||
</data>
|
||||
<data name="GridControlWorkflows.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>10</value>
|
||||
@@ -1575,7 +1575,7 @@
|
||||
<value>233, 0</value>
|
||||
</data>
|
||||
<data name="Panel2.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>945, 24</value>
|
||||
<value>1240, 24</value>
|
||||
</data>
|
||||
<data name="Panel2.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>9</value>
|
||||
@@ -1782,7 +1782,7 @@
|
||||
<value>233</value>
|
||||
</data>
|
||||
<data name="NavBarControl1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>233, 573</value>
|
||||
<value>233, 680</value>
|
||||
</data>
|
||||
<data name="NavBarControl1.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>5</value>
|
||||
@@ -1809,10 +1809,10 @@
|
||||
<value>Tahoma, 9pt</value>
|
||||
</data>
|
||||
<data name="Panel1.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>0, 101</value>
|
||||
<value>0, 158</value>
|
||||
</data>
|
||||
<data name="Panel1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>1178, 573</value>
|
||||
<value>1473, 680</value>
|
||||
</data>
|
||||
<data name="Panel1.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>4</value>
|
||||
@@ -2042,10 +2042,10 @@
|
||||
<value>Bottom</value>
|
||||
</data>
|
||||
<data name="barDockControlBottom.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>0, 688</value>
|
||||
<value>0, 860</value>
|
||||
</data>
|
||||
<data name="barDockControlBottom.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>1178, 0</value>
|
||||
<value>1473, 0</value>
|
||||
</data>
|
||||
<data name=">>barDockControlBottom.Name" xml:space="preserve">
|
||||
<value>barDockControlBottom</value>
|
||||
@@ -2066,7 +2066,7 @@
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="barDockControlLeft.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>0, 688</value>
|
||||
<value>0, 860</value>
|
||||
</data>
|
||||
<data name=">>barDockControlLeft.Name" xml:space="preserve">
|
||||
<value>barDockControlLeft</value>
|
||||
@@ -2084,10 +2084,10 @@
|
||||
<value>Right</value>
|
||||
</data>
|
||||
<data name="barDockControlRight.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>1178, 0</value>
|
||||
<value>1473, 0</value>
|
||||
</data>
|
||||
<data name="barDockControlRight.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>0, 688</value>
|
||||
<value>0, 860</value>
|
||||
</data>
|
||||
<data name=">>barDockControlRight.Name" xml:space="preserve">
|
||||
<value>barDockControlRight</value>
|
||||
@@ -3574,7 +3574,7 @@
|
||||
<value>Graphisches Dokument</value>
|
||||
</data>
|
||||
<data name="barDockControlTop.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>1178, 0</value>
|
||||
<value>1473, 0</value>
|
||||
</data>
|
||||
<data name=">>barDockControlTop.Name" xml:space="preserve">
|
||||
<value>barDockControlTop</value>
|
||||
|
||||
@@ -952,6 +952,7 @@ Public Class frmMain
|
||||
_tag = _tag.ToString.Replace("itmProfile#", "")
|
||||
If IsNumeric(_tag) Then
|
||||
If CURRENT_CLICKED_PROFILE_ID <> _tag Then
|
||||
LOGGER.Debug($"Profile with ID {_tag} clicked in NavBarControl...loading Profile...")
|
||||
OverviewOrDEtail = "DETAIL"
|
||||
If Not Application.OpenForms().OfType(Of frmValidator).Any Then
|
||||
CURRENT_CLICKED_PROFILE_ID = _tag
|
||||
@@ -968,14 +969,14 @@ Public Class frmMain
|
||||
|
||||
Me.Cursor = Cursors.WaitCursor
|
||||
Try
|
||||
LOGGER.Debug($"Loading profile with ID {_tag}...")
|
||||
' Zentral über Decide_Load laden
|
||||
Await Decide_Load(False, True)
|
||||
Finally
|
||||
Me.Cursor = Cursors.Default
|
||||
End Try
|
||||
Else
|
||||
CURRENT_CLICKED_PROFILE_TITLE = Nothing
|
||||
CURRENT_CLICKED_PROFILE_ID = Nothing
|
||||
LOGGER.Debug($"Profile with ID {_tag} clicked in NavBarControl is already active...ignoring click.")
|
||||
End If
|
||||
End If
|
||||
|
||||
@@ -1445,11 +1446,6 @@ Public Class frmMain
|
||||
LOGGER.Info("[PERF Decide_Load] ruft LoadOverviewData auf...")
|
||||
End If
|
||||
|
||||
'' UI vorbereiten
|
||||
'If Not PrepareGridForLoading() Then
|
||||
' Exit Function
|
||||
'End If
|
||||
|
||||
Await Task.Yield()
|
||||
|
||||
' Daten laden
|
||||
@@ -1460,11 +1456,6 @@ Public Class frmMain
|
||||
LOGGER.Info("[PERF Decide_Load] ruft LoadProfileData auf...")
|
||||
End If
|
||||
|
||||
'' UI vorbereiten
|
||||
'If Not PrepareGridForLoading() Then
|
||||
' Exit Function
|
||||
'End If
|
||||
|
||||
Await Task.Yield()
|
||||
|
||||
' Daten laden
|
||||
@@ -1479,6 +1470,10 @@ Public Class frmMain
|
||||
' ========== NACHBEARBEITUNG ==========
|
||||
ApplyPostLoadSettings()
|
||||
GridIsLoaded = True
|
||||
' ========== CAPTION FINAL SICHERSTELLEN ==========
|
||||
' ApplyPostLoadSettings kann durch Spalten-Events den Caption überschreiben,
|
||||
' daher hier nochmals den korrekten Caption setzen
|
||||
UpdateGridCaption()
|
||||
|
||||
Catch ex As Exception
|
||||
GridIsLoaded = True
|
||||
@@ -1697,6 +1692,9 @@ Public Class frmMain
|
||||
Return False
|
||||
End If
|
||||
|
||||
' === FIX: Grid sichtbar machen bevor BeginUpdate ===
|
||||
GridControlWorkflows_Visible()
|
||||
|
||||
If GridControlWorkflows.Visible Then
|
||||
GridControlWorkflows.BeginUpdate()
|
||||
gridUpdateStarted = True
|
||||
@@ -1711,6 +1709,7 @@ Public Class frmMain
|
||||
DT_CURR_WF_ITEMS = Await DatabaseFallback.GetDatatableECMAsync(oSQL)
|
||||
|
||||
If IsNothing(DT_CURR_WF_ITEMS) Then
|
||||
LOGGER.Warn("Daten konnten nicht geladen werden für Profil: " & CURRENT_CLICKED_PROFILE_TITLE)
|
||||
Return False
|
||||
End If
|
||||
|
||||
@@ -1722,12 +1721,13 @@ Public Class frmMain
|
||||
GridControlWorkflows.Visible = False
|
||||
bindsourcegrid.DataSource = Nothing
|
||||
GridControlWorkflows.DataSource = Nothing
|
||||
LOGGER.Info("Keine Workflow-Items für Profil: " & CURRENT_CLICKED_PROFILE_TITLE)
|
||||
Return False
|
||||
End If
|
||||
|
||||
' ========== BASIC VIEW ERSTELLEN ==========
|
||||
Await CreateBasicViewForProfile()
|
||||
|
||||
LOGGER.Debug("Basic View für Profil erstellt: " & CURRENT_CLICKED_PROFILE_TITLE)
|
||||
Return True
|
||||
|
||||
Catch ex As Exception
|
||||
@@ -3594,7 +3594,7 @@ FROM VWPM_PROFILE_ACTIVE T WHERE T.GUID IN (SELECT PROFILE_ID FROM [dbo].[FNPM_G
|
||||
|
||||
Private Sub GridViewWorkflows_ColumnFilterChanged(sender As Object, e As EventArgs) Handles GridViewWorkflows.ColumnFilterChanged
|
||||
Try
|
||||
If FormShown = False Or FRONTEND_ACTION = NAVBAR_CLICKED Then
|
||||
If FormShown = False Or FRONTEND_ACTION <> FA_NONE Then
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
@@ -3612,11 +3612,21 @@ FROM VWPM_PROFILE_ACTIVE T WHERE T.GUID IN (SELECT PROFILE_ID FROM [dbo].[FNPM_G
|
||||
If lblCaptionMainGrid.Text.Contains(oTermFilterActive) Then
|
||||
Ev_Filter_Panel_Closed = False
|
||||
End If
|
||||
|
||||
' Caption korrekt setzen: Profil-Titel oder Gesamtübersicht
|
||||
If GRID_LOAD_TYPE.StartsWith("PROFILE#") AndAlso Not String.IsNullOrEmpty(CURRENT_CLICKED_PROFILE_TITLE) Then
|
||||
LOGGER.Debug($"Setting Grid Caption with Profile Title [{CURRENT_CLICKED_PROFILE_TITLE}] and Filter Active Term [{oTermFilterActive}]")
|
||||
lblCaptionMainGrid.Text = String.Format("{0} - {1}", CURRENT_CLICKED_PROFILE_TITLE, oTermFilterActive)
|
||||
Else
|
||||
LOGGER.Debug($"Setting Grid Caption with Gesamtübersicht and Filter Active Term [{oTermFilterActive}]")
|
||||
lblCaptionMainGrid.Text = String.Format("{0} - {1}", S.Gesamtübersicht, oTermFilterActive)
|
||||
End If
|
||||
|
||||
bsitmCount.Visibility = DevExpress.XtraBars.BarItemVisibility.Always
|
||||
bsitmCount.Caption = oTermFilterActive
|
||||
Else
|
||||
bsitmCount.Visibility = DevExpress.XtraBars.BarItemVisibility.Never
|
||||
LOGGER.Debug("No active filter - resetting caption to default")
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
@@ -155,7 +155,7 @@ Public Class frmValidator
|
||||
MyValidationLogger.Debug("Initialize Components...")
|
||||
InitializeComponent()
|
||||
Environment = pEnvironment
|
||||
|
||||
clsPatterns.ClearControlCache()
|
||||
Try
|
||||
MyValidationLogger.Debug("Initialize _frmValidatorSearch...")
|
||||
_frmValidatorSearch = New frmValidatorSearch(Me, Environment)
|
||||
@@ -2399,6 +2399,10 @@ Public Class frmValidator
|
||||
|
||||
Dim oButtonFinishSet As Boolean = False
|
||||
|
||||
' ========== NEU: Liste der geänderten Controls für Enable-Check ==========
|
||||
Dim changedControlNames As New List(Of String)
|
||||
' ========== ENDE NEU ==========
|
||||
|
||||
For Each oResultRow As DataRow In oControlDataResult.Rows
|
||||
Try
|
||||
_SetControlValue_In_Action = True
|
||||
@@ -2456,6 +2460,12 @@ Public Class frmValidator
|
||||
MyValidationLogger.Debug($"[SetControlValues_FromControl] Force-Reindex vorgemerkt für: [{oControl.Name}]")
|
||||
End If
|
||||
clsPatterns.UpdateControlInCache(oMeta.Name, DirectCast(oControl, BaseEdit).EditValue)
|
||||
|
||||
' ========== NEU: Control für Enable-Check vormerken ==========
|
||||
If Not changedControlNames.Contains(oControl.Name) Then
|
||||
changedControlNames.Add(oControl.Name)
|
||||
End If
|
||||
' ========== ENDE NEU ==========
|
||||
Catch ex As Exception
|
||||
MyValidationLogger.Warn($"⚠️ [SetControlValues_FromControl] Error while Control2Set (TextEdit): {ex.Message}")
|
||||
End Try
|
||||
@@ -2492,6 +2502,12 @@ Public Class frmValidator
|
||||
MyValidationLogger.Debug($"[SetControlValues_FromControl] Force-Reindex vorgemerkt für: [{oControl.Name}]")
|
||||
End If
|
||||
clsPatterns.UpdateControlInCache(oMeta.Name, oDependingLookup.Properties.SelectedValues)
|
||||
|
||||
' ========== NEU: Control für Enable-Check vormerken ==========
|
||||
If Not changedControlNames.Contains(oControl.Name) Then
|
||||
changedControlNames.Add(oControl.Name)
|
||||
End If
|
||||
' ========== ENDE NEU ==========
|
||||
Catch ex As Exception
|
||||
MyValidationLogger.Warn($"⚠️ [SetControlValues_FromControl] Error while Control2Set (LookupControl3): {ex.Message}")
|
||||
End Try
|
||||
@@ -2524,6 +2540,12 @@ Public Class frmValidator
|
||||
MyValidationLogger.Debug($"[SetControlValues_FromControl] Force-Reindex vorgemerkt für: [{oControl.Name}]")
|
||||
End If
|
||||
clsPatterns.UpdateControlInCache(oMeta.Name, oDependingCombobox.Text)
|
||||
|
||||
' ========== NEU: Control für Enable-Check vormerken ==========
|
||||
If Not changedControlNames.Contains(oControl.Name) Then
|
||||
changedControlNames.Add(oControl.Name)
|
||||
End If
|
||||
' ========== ENDE NEU ==========
|
||||
Else
|
||||
MyValidationLogger.Warn($"⚠️ [SetControlValues_FromControl] Combobox [{oControl.Name}]: Wert '{oControlCaption}' nicht in Liste gefunden!")
|
||||
End If
|
||||
@@ -2560,6 +2582,12 @@ Public Class frmValidator
|
||||
MyValidationLogger.Debug($"[SetControlValues_FromControl] Force-Reindex vorgemerkt für: [{oControl.Name}]")
|
||||
End If
|
||||
clsPatterns.UpdateControlInCache(oMeta.Name, oDateEdit.EditValue)
|
||||
|
||||
' ========== NEU: Control für Enable-Check vormerken ==========
|
||||
If Not changedControlNames.Contains(oControl.Name) Then
|
||||
changedControlNames.Add(oControl.Name)
|
||||
End If
|
||||
' ========== ENDE NEU ==========
|
||||
Catch ex As Exception
|
||||
MyValidationLogger.Warn($"⚠️ [SetControlValues_FromControl] Error While Control2Set (DateEdit): {ex.Message}")
|
||||
End Try
|
||||
@@ -2583,6 +2611,12 @@ Public Class frmValidator
|
||||
MyValidationLogger.Debug($"[SetControlValues_FromControl] Force-Reindex vorgemerkt für: [{oControl.Name}]")
|
||||
End If
|
||||
clsPatterns.UpdateControlInCache(oMeta.Name, dtp.Value)
|
||||
|
||||
' ========== NEU: Control für Enable-Check vormerken ==========
|
||||
If Not changedControlNames.Contains(oControl.Name) Then
|
||||
changedControlNames.Add(oControl.Name)
|
||||
End If
|
||||
' ========== ENDE NEU ==========
|
||||
Else
|
||||
dtp.Value = DateTimePicker.MinimumDateTime
|
||||
MyValidationLogger.Warn($"⚠️ [SetControlValues_FromControl] DateTimePicker [{oControl.Name}]: Konnte '{oControlCaption}' nicht parsen → MinimumDateTime")
|
||||
@@ -2614,6 +2648,12 @@ Public Class frmValidator
|
||||
MyValidationLogger.Debug($"[SetControlValues_FromControl] Force-Reindex vorgemerkt für: [{oControl.Name}]")
|
||||
End If
|
||||
clsPatterns.UpdateControlInCache(oMeta.Name, oDependingCheckbox.Checked)
|
||||
|
||||
' ========== NEU: Control für Enable-Check vormerken ==========
|
||||
If Not changedControlNames.Contains(oControl.Name) Then
|
||||
changedControlNames.Add(oControl.Name)
|
||||
End If
|
||||
' ========== ENDE NEU ==========
|
||||
Catch ex As Exception
|
||||
MyValidationLogger.Warn($"⚠️ [SetControlValues_FromControl] Error while Control2Set (Checkbox) {ex.Message}")
|
||||
End Try
|
||||
@@ -2631,10 +2671,27 @@ Public Class frmValidator
|
||||
End Try
|
||||
Next
|
||||
|
||||
' ========== NEU: Enable-Check für ALLE geänderten Controls NACH der Schleife ==========
|
||||
' WICHTIG: Wird AUSSERHALB der For-Each-Schleife ausgeführt, damit ALLE Werte
|
||||
' bereits gesetzt sind, bevor SQL_ENABLE-Statements die aktuellen Werte prüfen.
|
||||
' Dies behebt das Problem, dass BTN_Kst2VA1 disabled bleibt, obwohl
|
||||
' KstVerantwortliche bereits befüllt wurde.
|
||||
If changedControlNames.Count > 0 Then
|
||||
MyValidationLogger.Debug($"[SetControlValues_FromControl] Führe Controls2beEnabled für {changedControlNames.Count} geänderte Controls aus...")
|
||||
_CachedSqlScalarCache.Clear() ' SQL_ENABLE-Cache invalidieren, damit frische Werte geprüft werden
|
||||
For Each changedName As String In changedControlNames
|
||||
Try
|
||||
Controls2beEnabled(changedName)
|
||||
Catch ex As Exception
|
||||
MyValidationLogger.Warn($"⚠️ [SetControlValues_FromControl] Controls2beEnabled failed für [{changedName}]: {ex.Message}")
|
||||
End Try
|
||||
Next
|
||||
End If
|
||||
' ========== ENDE NEU ==========
|
||||
|
||||
MyValidationLogger.Debug($"[SetControlValues_FromControl] END für Control: [{oControlName}], ButtonFinishSet={oButtonFinishSet}")
|
||||
End Sub
|
||||
|
||||
|
||||
Private Sub LookupControl_DependingControls(LookupControl As LookupControl3, SelectedValues As List(Of String))
|
||||
If SelectedValues Is Nothing OrElse SelectedValues.Count = 0 Then
|
||||
MyValidationLogger.Debug("LookupControl_DependingControls: No values selected")
|
||||
@@ -3177,7 +3234,7 @@ Public Class frmValidator
|
||||
End Try
|
||||
End Sub
|
||||
Private Sub Controls2B_EnDisabled_onLoad()
|
||||
If LOG_PERF Then PerformanceLogger.Info("Controls2B_EnDisabled")
|
||||
If LOG_PERF Then PerformanceLogger.Debug("Controls2B_EnDisabled")
|
||||
|
||||
Try
|
||||
If _CachedControlsByGuid Is Nothing Then
|
||||
@@ -3247,12 +3304,22 @@ Public Class frmValidator
|
||||
LOGGER.Error($" Original SQL: [{oSqlCommand}]")
|
||||
Continue For ' ← Überspringe dieses Control und mache weiter
|
||||
End Try
|
||||
' FIX: Null/Empty-Check nach ReplaceAllValues — verhindert Crash bei leeren Control-Werten
|
||||
If oSqlCommand Is Nothing OrElse String.IsNullOrWhiteSpace(oSqlCommand) Then
|
||||
MyValidationLogger.Warn($"[Controls2B_EnDisabled_onLoad] ReplaceAllValues returned Nothing/Empty for [{oENABLE_CtrlName}]. Skipping control.")
|
||||
Continue For
|
||||
End If
|
||||
|
||||
' FIX: Prüfen ob noch unaufgelöste Placeholder vorhanden sind (z.B. weil LU_Person leer war)
|
||||
If clsPatterns.HasAnyPatterns(oSqlCommand) Then
|
||||
MyValidationLogger.Warn($"[Controls2B_EnDisabled_onLoad] SQL for [{oENABLE_CtrlName}] still contains unresolved patterns after replacement. Skipping.")
|
||||
MyValidationLogger.Debug($" Unresolved SQL: [{oSqlCommand}]")
|
||||
Continue For
|
||||
End If
|
||||
|
||||
' ========== KRITISCH: Hier könnte es hängen bleiben ==========
|
||||
MyValidationLogger.Debug($"[SQL START] Control [{oENABLE_CtrlName}]: Führe SQL aus...")
|
||||
Dim oResult = GetCachedScalar(oSqlCommand, oConnectionId)
|
||||
MyValidationLogger.Debug($"[SQL ENDE] Control [{oENABLE_CtrlName}]: Result = [{oResult}]")
|
||||
' ========== ENDE KRITISCH ==========
|
||||
|
||||
Try
|
||||
MyValidationLogger.Debug($"Result of Enable SQL [{oResult}]...")
|
||||
@@ -3279,11 +3346,6 @@ Public Class frmValidator
|
||||
MyValidationLogger.Warn($" - {errorMsg}")
|
||||
Next
|
||||
|
||||
MyValidationLogger.Warn($"⚠️ Controls2B_EnDisabled: {failedControls.Count} Controls konnten nicht verarbeitet werden:")
|
||||
For Each errorMsg In failedControls
|
||||
MyValidationLogger.Warn($" - {errorMsg}")
|
||||
Next
|
||||
|
||||
' ========== NEU: Sprachabhängige Meldung ==========
|
||||
Dim oTitle As String
|
||||
Dim oMessage As String
|
||||
@@ -7872,14 +7934,30 @@ Public Class frmValidator
|
||||
|
||||
Private Sub frmValidator_KeyUp(sender As Object, e As KeyEventArgs) Handles MyBase.KeyUp
|
||||
If e.KeyCode = Keys.F4 Then
|
||||
' FIX: Grid-Validierung auch bei F4 (analog zu bbtniNext_ItemClick)
|
||||
If ForceGridValidation() = True Then
|
||||
Datei_ueberspringen()
|
||||
End If
|
||||
ElseIf e.KeyCode = Keys.F2 Then
|
||||
If USER_GHOST_MODE_ACTIVE Then
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
btnSave.Enabled = False
|
||||
Try
|
||||
If ForceGridValidation() = True Then
|
||||
ShowOverlaySafe()
|
||||
Try
|
||||
Finish_WFStep()
|
||||
Finally
|
||||
CloseOverlaySafe()
|
||||
End Try
|
||||
End If
|
||||
Finally
|
||||
If Not _FormClosing AndAlso Not Me.IsDisposed Then
|
||||
btnSave.Enabled = True
|
||||
End If
|
||||
End Try
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
2141
app/TaskFlow/taskFLOW-TEST-Debug.txt
Normal file
2141
app/TaskFlow/taskFLOW-TEST-Debug.txt
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user