MS19052016_1
This commit is contained in:
@@ -241,10 +241,6 @@ Public Class ClassControlBuilder
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
|
||||
'If CURRENT_RECORD_ID = 0 Then
|
||||
' Exit Sub
|
||||
'End If
|
||||
If IsNothing(value) Then 'Kein Value also abhängige Controls auf "Leer" setzen
|
||||
For Each row As DataRow In TableResult.Rows
|
||||
|
||||
@@ -256,7 +252,7 @@ Public Class ClassControlBuilder
|
||||
Return DirectCast(c.Tag, ClassControlMetadata).Id = dependingControlId
|
||||
End Function).SingleOrDefault()
|
||||
Dim type = dependingControl.GetType().Name
|
||||
Select Case Type
|
||||
Select Case type
|
||||
Case "CustomComboBox"
|
||||
DirectCast(dependingControl, CustomComboBox).DataSource = Nothing
|
||||
Case "CheckedListBoxControl"
|
||||
@@ -284,12 +280,22 @@ Public Class ClassControlBuilder
|
||||
If match.Success Then
|
||||
Dim sqlguid = String.Format("SELECT GUID FROM TBPMO_CONTROL_VALUE WHERE CONTROL_ID = {0} AND RECORD_ID = {1}", CONTROL_ID, CURRENT_RECORD_ID)
|
||||
Dim ctrlvalID = ClassDatabase.Execute_Scalar(sqlguid)
|
||||
|
||||
Select Case row.Item("FORMAT_TYPE")
|
||||
Case "Currency"
|
||||
value = Decimal.Parse(value, Globalization.NumberStyles.Currency).ToString
|
||||
Case "Decimal"
|
||||
value = Decimal.Parse(value, Globalization.NumberStyles.Integer)
|
||||
End Select
|
||||
Select Case row.Item("CONTROL_TYPE_ID")
|
||||
Case 4 'DatePicker
|
||||
value = CDate(value)
|
||||
End Select
|
||||
' Diese Abfrage verhindert, dass Werte, die aus z.B. CheckedListBoxen kommen,
|
||||
' nicht überschrieben werden. Diese Werte werden bereits mit UpdateMultipleValues gespeichert
|
||||
If (Not value.Contains(";")) Then
|
||||
If Not IsNothing(ctrlvalID) Then
|
||||
Dim upd1 = String.Format("UPDATE TBPMO_CONTROL_VALUE SET VALUE = '{0}' WHERE CONTROL_ID = {1} AND RECORD_ID = {2}", value.ToString, CONTROL_ID, CURRENT_RECORD_ID)
|
||||
Dim upd1 = String.Format("UPDATE TBPMO_CONTROL_VALUE SET VALUE = '{0}',CHANGE_STEP = {1},CHANGED_WHO = '{2}' WHERE CONTROL_ID = {3} AND RECORD_ID = {4}", _
|
||||
value.ToString, CURRENT_CHANGE_STEP, Environment.UserName, CONTROL_ID, CURRENT_RECORD_ID)
|
||||
ClassDatabase.Execute_non_Query(upd1)
|
||||
Else
|
||||
If CURRENT_RECORD_ID <> 0 Then
|
||||
@@ -321,8 +327,9 @@ Public Class ClassControlBuilder
|
||||
Case "DateEdit"
|
||||
If dt.Rows.Count = 1 Then
|
||||
Try
|
||||
Dim dateValue As String = dt.Rows(0).Item(0)
|
||||
If dateValue = "1900-01-01" Then
|
||||
Dim val = dt.Rows(0).Item(0)
|
||||
Dim dateValue As String = CDate(dt.Rows(0).Item(0))
|
||||
If val = "1900-01-01" Then
|
||||
Continue For
|
||||
End If
|
||||
ControlLoader.DateTimePicker.LoadValue(dependingControl, dateValue)
|
||||
@@ -421,10 +428,10 @@ Public Class ClassControlBuilder
|
||||
Dim controlId As Integer = DirectCast(control.Tag, ClassControlMetadata).Id
|
||||
CONTROL_ID = controlId
|
||||
'SQL für abhängige Auswahllisten
|
||||
Dim SQL As String = String.Format("SELECT GUID, SQL_COMMAND_1 FROM TBPMO_CONTROL WHERE SQL_COMMAND_1 LIKE '%@{0}@%'", controlId)
|
||||
Dim SQL As String = String.Format("SELECT GUID, SQL_COMMAND_1,CONTROL_TYPE_ID,FORMAT_TYPE FROM TBPMO_CONTROL WHERE SQL_COMMAND_1 LIKE '%@{0}@%'", controlId)
|
||||
Dim value
|
||||
'SQL für enable control
|
||||
Dim SQLenable As String = String.Format("SELECT GUID, SQL_COMMAND_2 FROM TBPMO_CONTROL WHERE SQL_COMMAND_2 LIKE '%@{0}@%'", controlId)
|
||||
Dim SQLenable As String = String.Format("SELECT GUID, SQL_COMMAND_2,CONTROL_TYPE_ID,FORMAT_TYPE FROM TBPMO_CONTROL WHERE SQL_COMMAND_2 LIKE '%@{0}@%'", controlId)
|
||||
|
||||
|
||||
value = DirectCast(control, DevExpress.XtraEditors.DateEdit).DateTime
|
||||
@@ -461,10 +468,10 @@ Public Class ClassControlBuilder
|
||||
Console.WriteLine("Obacht")
|
||||
End If
|
||||
'SQL für abhängige Auswahllisten
|
||||
Dim SQL As String = String.Format("SELECT GUID, SQL_COMMAND_1 FROM TBPMO_CONTROL WHERE SQL_COMMAND_1 LIKE '%@{0}@%'", controlId)
|
||||
Dim SQL As String = String.Format("SELECT GUID, SQL_COMMAND_1, CONTROL_TYPE_ID,FORMAT_TYPE FROM TBPMO_CONTROL WHERE SQL_COMMAND_1 LIKE '%@{0}@%'", controlId)
|
||||
Dim value
|
||||
'SQL für enable control
|
||||
Dim SQLenable As String = String.Format("SELECT GUID, SQL_COMMAND_2 FROM TBPMO_CONTROL WHERE SQL_COMMAND_2 LIKE '%@{0}@%'", controlId)
|
||||
Dim SQLenable As String = String.Format("SELECT GUID, SQL_COMMAND_2, CONTROL_TYPE_ID,FORMAT_TYPE FROM TBPMO_CONTROL WHERE SQL_COMMAND_2 LIKE '%@{0}@%'", controlId)
|
||||
|
||||
' Diese Befehle führen dazu, dass auch der ValueMember als Wert ausgelesen wird
|
||||
' Das kann zu unerwarteten Ergebnissen führen, da der Benutzer nur den DisplayMember sieht.
|
||||
|
||||
Reference in New Issue
Block a user