project name record_organizer
This commit is contained in:
827
app/DD-Record-Organiser/ClassControlCommandsUI.vb
Normal file
827
app/DD-Record-Organiser/ClassControlCommandsUI.vb
Normal file
@@ -0,0 +1,827 @@
|
||||
Imports DD_Record_Organiser.ClassDatabase
|
||||
Imports DD_Record_Organiser.ClassControlBuilder
|
||||
|
||||
|
||||
|
||||
Public Class ClassControlCommandsUI
|
||||
Private _CtrlBuilder As ClassControlBuilder
|
||||
Private _AddAppointmentHandler As System.EventHandler
|
||||
Private _AddFormDataHandler As System.EventHandler
|
||||
Private _ContextMenuStrip As ContextMenuStrip
|
||||
|
||||
Public IsInsert As Boolean = False
|
||||
|
||||
''' <summary>
|
||||
''' Erstellt eine neue Instanz der ClassControlCommandsUI Klasse
|
||||
''' </summary>
|
||||
''' <param name="ControlBuilder">Eine ControlBuilder Instanz</param>
|
||||
''' <param name="AddAppointmentDelegate">Ein Delegate, der auf eine AddAppointment-Methode verweist, mit AddressOf verwenden</param>
|
||||
''' <param name="AddFormDataDelegate">Ein Delegate, der auf eine AddFormData-Methode verweist, mit AddressOf verwenden</param>
|
||||
''' <remarks></remarks>
|
||||
Sub New(ControlBuilder As ClassControlBuilder, ContextMenuStrip As ContextMenuStrip, AddAppointmentDelegate As System.EventHandler, AddFormDataDelegate As System.EventHandler)
|
||||
_CtrlBuilder = ControlBuilder
|
||||
_ContextMenuStrip = ContextMenuStrip
|
||||
_AddAppointmentHandler = AddAppointmentDelegate
|
||||
_AddFormDataHandler = AddFormDataDelegate
|
||||
End Sub
|
||||
|
||||
Sub LoadControls(FormId As Integer)
|
||||
_CtrlBuilder.ClearControls()
|
||||
|
||||
Dim SQL As String = "SELECT * FROM VWPMO_CONTROL_SCREEN WHERE FORM_ID = " & FormId & " and SCREEN_ID = 1"
|
||||
Dim DT As DataTable = ClassDatabase.Return_Datatable(SQL)
|
||||
|
||||
|
||||
|
||||
For Each dr As DataRow In DT.Rows
|
||||
|
||||
Dim parent As GroupBox = Nothing
|
||||
If (dr.Item("CONTROL_PARENT_ID") <> 0) Then
|
||||
Dim parentname As String = GetName_for_ControlID(dr.Item("CONTROL_PARENT_ID"), FormId)
|
||||
parent = _CtrlBuilder.GetControlByName(parentname)
|
||||
End If
|
||||
|
||||
Select Case dr.Item("CTRLTYPE_ID")
|
||||
Case 1 ' Label
|
||||
_CtrlBuilder.AddLabel(dr.Item("CONTROL_NAME"),
|
||||
dr.Item("CTRLSCR_CAPTION"),
|
||||
dr.Item("CTRLSCR_X_LOC"),
|
||||
dr.Item("CTRLSCR_Y_LOC"),
|
||||
dr.Item("CTRLSCR_FONT_FAMILY"),
|
||||
dr.Item("CTRLSCR_FONT_COLOR"),
|
||||
dr.Item("CTRLSCR_FONT_SIZE"),
|
||||
dr.Item("CTRLSCR_FONT_STYLE"),
|
||||
dr.Item("CONTROL_SQLCOMMAND_1"),
|
||||
False,
|
||||
parent)
|
||||
Case 2 ' TextBox
|
||||
_CtrlBuilder.AddTextBox(dr.Item("CONTROL_NAME"),
|
||||
dr.Item("CTRLSCR_X_LOC"),
|
||||
dr.Item("CTRLSCR_Y_LOC"),
|
||||
dr.Item("CTRLSCR_FONT_FAMILY"),
|
||||
dr.Item("CTRLSCR_FONT_COLOR"),
|
||||
dr.Item("CTRLSCR_FONT_SIZE"),
|
||||
dr.Item("CTRLSCR_FONT_STYLE"),
|
||||
dr.Item("CTRLSCR_TAB_INDEX"),
|
||||
dr.Item("CTRLSCR_TAB_STOP"),
|
||||
dr.Item("CTRLSCR_WIDTH"),
|
||||
dr.Item("CTRLSCR_HEIGHT"),
|
||||
dr.Item("CONTROL_MULTILINE"),
|
||||
dr.Item("CONTROL_READ_ONLY"),
|
||||
dr.Item("CONTROL_FORMAT_TYPE"),
|
||||
False,
|
||||
parent)
|
||||
Case 3 ' ComboBox
|
||||
_CtrlBuilder.AddComboBox(dr.Item("CONTROL_NAME"),
|
||||
dr.Item("CTRLSCR_X_LOC"),
|
||||
dr.Item("CTRLSCR_Y_LOC"),
|
||||
dr.Item("CTRLSCR_FONT_FAMILY"),
|
||||
dr.Item("CTRLSCR_FONT_COLOR"),
|
||||
dr.Item("CTRLSCR_FONT_SIZE"),
|
||||
dr.Item("CTRLSCR_FONT_STYLE"),
|
||||
dr.Item("CTRLSCR_TAB_INDEX"),
|
||||
dr.Item("CTRLSCR_TAB_STOP"),
|
||||
dr.Item("CTRLSCR_WIDTH"),
|
||||
dr.Item("CTRLSCR_HEIGHT"),
|
||||
dr.Item("CONTROL_FORMAT_TYPE"),
|
||||
False,
|
||||
dr.Item("CONTROL_STATIC_LIST"),
|
||||
dr.Item("CONTROL_SQLCOMMAND_1"),
|
||||
parent)
|
||||
Case 4 ' DateTimePicker
|
||||
_CtrlBuilder.AddDateTimePicker(dr.Item("CONTROL_NAME"),
|
||||
dr.Item("CTRLSCR_X_LOC"),
|
||||
dr.Item("CTRLSCR_Y_LOC"),
|
||||
dr.Item("CTRLSCR_FONT_FAMILY"),
|
||||
dr.Item("CTRLSCR_FONT_SIZE"),
|
||||
dr.Item("CTRLSCR_FONT_STYLE"),
|
||||
dr.Item("CTRLSCR_TAB_INDEX"),
|
||||
dr.Item("CTRLSCR_TAB_STOP"),
|
||||
dr.Item("CTRLSCR_WIDTH"),
|
||||
dr.Item("CTRLSCR_HEIGHT"),
|
||||
False,
|
||||
parent)
|
||||
Case 5 ' GroupBox
|
||||
_CtrlBuilder.AddGroupBox(dr.Item("CONTROL_NAME"),
|
||||
dr.Item("CTRLSCR_CAPTION"),
|
||||
dr.Item("CTRLSCR_X_LOC"),
|
||||
dr.Item("CTRLSCR_Y_LOC"),
|
||||
dr.Item("CTRLSCR_WIDTH"),
|
||||
dr.Item("CTRLSCR_HEIGHT"),
|
||||
dr.Item("CTRLSCR_BACK_COLOR"),
|
||||
dr.Item("CTRLSCR_FONT_COLOR"),
|
||||
dr.Item("CTRLSCR_FONT_FAMILY"),
|
||||
dr.Item("CTRLSCR_FONT_SIZE"),
|
||||
dr.Item("CTRLSCR_FONT_STYLE"),
|
||||
False,
|
||||
parent)
|
||||
Case 6 ' PictureBox
|
||||
_CtrlBuilder.AddPictureBox(dr.Item("CONTROL_NAME"),
|
||||
dr.Item("CTRLSCR_X_LOC"),
|
||||
dr.Item("CTRLSCR_Y_LOC"),
|
||||
dr.Item("CTRLSCR_WIDTH"),
|
||||
dr.Item("CTRLSCR_HEIGHT"),
|
||||
False,
|
||||
parent)
|
||||
Case 7 ' DataGridView
|
||||
_CtrlBuilder.AddDataGridView(dr.Item("CONTROL_NAME"),
|
||||
dr.Item("CTRLSCR_X_LOC"),
|
||||
dr.Item("CTRLSCR_Y_LOC"),
|
||||
dr.Item("CTRLSCR_WIDTH"),
|
||||
dr.Item("CTRLSCR_HEIGHT"),
|
||||
False,
|
||||
parent)
|
||||
Case 10 ' Checkbox
|
||||
Dim Checked As Boolean = False
|
||||
'If IsDBNull(dr.Item("CONTROL_DEF_VALUE")) Then
|
||||
' Checked = False
|
||||
'Else
|
||||
' Checked = StrToBool(dr.Item("CONTROL_DEF_VALUE"))
|
||||
'End If
|
||||
_CtrlBuilder.AddCheckBox(dr.Item("CONTROL_NAME"),
|
||||
dr.Item("CTRLSCR_CAPTION"),
|
||||
Checked,
|
||||
dr.Item("CTRLSCR_X_LOC"),
|
||||
dr.Item("CTRLSCR_Y_LOC"),
|
||||
dr.Item("CTRLSCR_FONT_FAMILY"),
|
||||
dr.Item("CTRLSCR_FONT_COLOR"),
|
||||
dr.Item("CTRLSCR_FONT_SIZE"),
|
||||
dr.Item("CTRLSCR_FONT_STYLE"),
|
||||
dr.Item("CTRLSCR_TAB_INDEX"),
|
||||
dr.Item("CTRLSCR_TAB_STOP"),
|
||||
dr.Item("CTRLSCR_WIDTH"),
|
||||
dr.Item("CTRLSCR_HEIGHT"),
|
||||
False,
|
||||
parent)
|
||||
Case 8 ' Function AddAppointment
|
||||
_CtrlBuilder.FunctionAddAppointment(dr.Item("CONTROL_NAME"),
|
||||
dr.Item("CTRLSCR_CAPTION"),
|
||||
dr.Item("CTRLSCR_X_LOC"),
|
||||
dr.Item("CTRLSCR_Y_LOC"),
|
||||
dr.Item("CTRLSCR_WIDTH"),
|
||||
dr.Item("CTRLSCR_HEIGHT"),
|
||||
False,
|
||||
parent)
|
||||
AddHandler _CtrlBuilder.CurrentControl.Click, _AddAppointmentHandler
|
||||
Case 9 ' Function AddFormData
|
||||
_CtrlBuilder.FunctionAddFormData(dr.Item("CONTROL_NAME"),
|
||||
dr.Item("CTRLSCR_CAPTION"),
|
||||
dr.Item("CTRLSCR_X_LOC"),
|
||||
dr.Item("CTRLSCR_Y_LOC"),
|
||||
dr.Item("CTRLSCR_WIDTH"),
|
||||
dr.Item("CTRLSCR_HEIGHT"),
|
||||
False,
|
||||
parent)
|
||||
AddHandler _CtrlBuilder.CurrentControl.Click, _AddFormDataHandler
|
||||
Case 11 ' RadioButton
|
||||
Dim Checked As Boolean = False
|
||||
'If IsDBNull(dr.Item("CONTROL_DEF_VALUE")) Then
|
||||
' Checked = False
|
||||
'Else
|
||||
' Checked = StrToBool(dr.Item("CONTROL_DEF_VALUE"))
|
||||
'End If
|
||||
_CtrlBuilder.AddRadioButton(dr.Item("CONTROL_NAME"),
|
||||
dr.Item("CTRLSCR_CAPTION"),
|
||||
Checked,
|
||||
dr.Item("CTRLSCR_X_LOC"),
|
||||
dr.Item("CTRLSCR_Y_LOC"),
|
||||
dr.Item("CTRLSCR_FONT_FAMILY"),
|
||||
dr.Item("CTRLSCR_FONT_COLOR"),
|
||||
dr.Item("CTRLSCR_FONT_SIZE"),
|
||||
dr.Item("CTRLSCR_FONT_STYLE"),
|
||||
dr.Item("CTRLSCR_TAB_INDEX"),
|
||||
dr.Item("CTRLSCR_TAB_STOP"),
|
||||
dr.Item("CTRLSCR_WIDTH"),
|
||||
dr.Item("CTRLSCR_HEIGHT"),
|
||||
False,
|
||||
parent)
|
||||
Case 12 'CheckedListBox
|
||||
CtrlBuilder.AddCheckedListBox(dr.Item("CONTROL_NAME"),
|
||||
dr.Item("CTRLSCR_X_LOC"),
|
||||
dr.Item("CTRLSCR_Y_LOC"),
|
||||
dr.Item("CTRLSCR_FONT_FAMILY"),
|
||||
dr.Item("CTRLSCR_FONT_COLOR"),
|
||||
dr.Item("CTRLSCR_FONT_SIZE"),
|
||||
dr.Item("CTRLSCR_FONT_STYLE"),
|
||||
dr.Item("CTRLSCR_TAB_INDEX"),
|
||||
dr.Item("CTRLSCR_TAB_STOP"),
|
||||
dr.Item("CTRLSCR_WIDTH"),
|
||||
dr.Item("CTRLSCR_HEIGHT"),
|
||||
False,
|
||||
dr.Item("CONTROL_STATIC_LIST"),
|
||||
dr.Item("CONTROL_SQLCOMMAND_1"),
|
||||
parent,
|
||||
True)
|
||||
Case 13 'CheckedListBox
|
||||
CtrlBuilder.AddListBox(dr.Item("CONTROL_NAME"),
|
||||
dr.Item("CTRLSCR_X_LOC"),
|
||||
dr.Item("CTRLSCR_Y_LOC"),
|
||||
dr.Item("CTRLSCR_FONT_FAMILY"),
|
||||
dr.Item("CTRLSCR_FONT_COLOR"),
|
||||
dr.Item("CTRLSCR_FONT_SIZE"),
|
||||
dr.Item("CTRLSCR_FONT_STYLE"),
|
||||
dr.Item("CTRLSCR_TAB_INDEX"),
|
||||
dr.Item("CTRLSCR_TAB_STOP"),
|
||||
dr.Item("CTRLSCR_WIDTH"),
|
||||
dr.Item("CTRLSCR_HEIGHT"),
|
||||
False,
|
||||
dr.Item("CONTROL_STATIC_LIST"),
|
||||
dr.Item("CONTROL_SQLCOMMAND_1"),
|
||||
parent,
|
||||
True)
|
||||
End Select
|
||||
' ContextMenuStrip zuweisen
|
||||
' MasterDataID im ContextMenuStrip Speichern
|
||||
If dr.Item("CTRLSCR_MASTER_DATA_ID") <> 0 Then
|
||||
_CtrlBuilder.CurrentControl.ContextMenuStrip = _ContextMenuStrip
|
||||
_CtrlBuilder.CurrentControl.Tag = dr.Item("CTRLSCR_MASTER_DATA_ID")
|
||||
End If
|
||||
Next
|
||||
End Sub
|
||||
|
||||
Function DeleteRecord(RecordID As Integer)
|
||||
Dim sql As String = "DELETE FROM TBPMO_RECORD_CONNECT WHERE RECORD1_ID = " & RecordID & " OR RECORD2_ID = " & RecordID
|
||||
If ClassDatabase.Execute_non_Query(sql) = True Then
|
||||
sql = "DELETE FROM TBPMO_WORKFLOW_TASK WHERE RECORD_ID = " & RecordID
|
||||
If ClassDatabase.Execute_non_Query(sql) = True Then
|
||||
sql = "DELETE FROM TBPMO_CONTROL_VALUE WHERE RECORD_ID = " & RecordID
|
||||
If ClassDatabase.Execute_non_Query(sql) = True Then ' Delete der Controls erfolgreich ausgeführt, jetzt der Record
|
||||
sql = "DELETE FROM TBPMO_RECORD WHERE GUID = " & RecordID
|
||||
If ClassDatabase.Execute_non_Query(sql) = True Then
|
||||
Return True
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
|
||||
Return False
|
||||
End Function
|
||||
|
||||
|
||||
Function SaveRecord(RecordID As Integer, FormID As Integer, Optional foreignRecordID As Integer = 0) As String
|
||||
Dim ADDED_WHO As String = Environment.UserName
|
||||
Dim RECORD_ID As Integer
|
||||
|
||||
If IsInsert Then
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(">> (SaveRecord) Insert", False)
|
||||
|
||||
' Den Record erstellen
|
||||
If CreateRecord(FormID) = False Then
|
||||
IsInsert = False
|
||||
Return "ERROR - INSERT RECORD NOT SUCCESSFUL"
|
||||
End If
|
||||
|
||||
' Die eben erstellte RecordID holen
|
||||
RECORD_ID = GetLastRecord()
|
||||
|
||||
' Wenn gegeben, foreignrecordID mit Record verknüpfen
|
||||
If foreignRecordID > 0 Then
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(">> foreignRecordID: " & foreignRecordID & "; Record-ID: " & RECORD_ID, False)
|
||||
ConnectRecord(foreignRecordID, RECORD_ID)
|
||||
End If
|
||||
|
||||
' Für angegebene Control Typen den Wert speichern
|
||||
InsertAllControls(FormID, RECORD_ID, _CtrlBuilder.AllControls)
|
||||
|
||||
' Status zurücksetzen
|
||||
IsInsert = False
|
||||
|
||||
NEW_RECORD_ID = RECORD_ID
|
||||
CURRENT_RECORD_ID = RECORD_ID
|
||||
Return "Neuer Datensatz eingefügt - " & Now
|
||||
ElseIf IsInsert = False Then
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(">> (SaveRecord) Update RecordID: " & RECORD_ID, False)
|
||||
UpdateAllControls(FormID, RecordID, _CtrlBuilder.AllControls)
|
||||
|
||||
Return "Datensatz aktualisiert - " & Now
|
||||
End If
|
||||
End Function
|
||||
|
||||
Private Sub InsertAllControls(FormID As Integer, RecordID As Integer, controls As Control.ControlCollection)
|
||||
For Each ctrl As Control In controls
|
||||
Dim CONTROL_ID As Integer = GetControlID_for_Name(ctrl.Name, FormID)
|
||||
Dim CONTROL_VALUE As String = Nothing
|
||||
|
||||
If TypeOf ctrl Is PictureBox Then
|
||||
Dim id As Integer = GetControlID_for_Name(ctrl.Name, FormID)
|
||||
UpsertImage(id, RecordID, ctrl.BackgroundImage)
|
||||
Continue For
|
||||
End If
|
||||
|
||||
' Control existiert
|
||||
If CONTROL_ID <> -1 Then
|
||||
CONTROL_VALUE = GetControlValue(ctrl)
|
||||
End If
|
||||
If TypeName(ctrl).ToString = "DateEdit" Then
|
||||
CONTROL_VALUE = CDate(CONTROL_VALUE)
|
||||
End If
|
||||
'If CONTROL_ID = 489 Then
|
||||
' Console.WriteLine(TypeName(ctrl))
|
||||
'End If
|
||||
' Kein Bekanntes Control oder Groupbox
|
||||
If IsNothing(CONTROL_VALUE) Then
|
||||
If TypeOf ctrl Is GroupBox Then
|
||||
InsertAllControls(FormID, RecordID, DirectCast(ctrl, GroupBox).Controls)
|
||||
End If
|
||||
Else
|
||||
InsertControlValue(ctrl.Name, FormID, RecordID, CONTROL_VALUE)
|
||||
End If
|
||||
Next
|
||||
End Sub
|
||||
|
||||
Private Sub UpsertImage(ControlID As Integer, RecordID As Integer, image As Bitmap)
|
||||
Dim existsSQL As String = "SELECT GUID FROM TBPMO_CONTROL_IMAGE WHERE CONTROL_ID = " & ControlID & " AND RECORD_ID = " & RecordID
|
||||
Dim exists = ClassDatabase.Execute_Scalar(existsSQL)
|
||||
|
||||
If IsNothing(exists) Then
|
||||
InsertImage(ControlID, RecordID, image)
|
||||
Else
|
||||
UpdateImage(ControlID, RecordID, image)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub InsertImage(ControlID As Integer, RecordID As Integer, image As Bitmap)
|
||||
Try
|
||||
Dim bimage() As Byte
|
||||
Dim SQL As String = "INSERT INTO TBPMO_CONTROL_IMAGE (CONTROL_ID, RECORD_ID, IMG, ADDED_WHO) VALUES (@CONTROL_ID, @RECORD_ID, @IMG, @ADDED_WHO)"
|
||||
Dim conn As New SqlClient.SqlConnection(MyConnectionString)
|
||||
Dim cmd As New SqlClient.SqlCommand(SQL, conn)
|
||||
|
||||
If IsNothing(image) Then
|
||||
DeleteImage(ControlID, RecordID)
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
bimage = BitmapToByteArray(image)
|
||||
|
||||
cmd.Parameters.Add("@CONTROL_ID", SqlDbType.Int).Value = ControlID
|
||||
cmd.Parameters.Add("@RECORD_ID", SqlDbType.Int).Value = RecordID
|
||||
cmd.Parameters.Add("@RECORDID", SqlDbType.Int).Value = RecordID
|
||||
cmd.Parameters.Add("@IMG", SqlDbType.VarBinary).Value = bimage
|
||||
cmd.Parameters.Add("@ADDED_WHO", SqlDbType.VarChar).Value = Environment.UserName
|
||||
|
||||
conn.Open()
|
||||
cmd.ExecuteNonQuery()
|
||||
conn.Close()
|
||||
|
||||
LinkImage(ControlID, RecordID)
|
||||
Catch ex As Exception
|
||||
MsgBox("Error in InsertImage: ", ex.Message, vbCritical)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
Private Sub LinkImage(ControlID As Integer, RecordID As Integer)
|
||||
Try
|
||||
Dim SQL = String.Format("SELECT GUID FROM TBPMO_CONTROL_IMAGE WHERE CONTROL_ID = {0} AND RECORD_ID = {1}", ControlID, RecordID)
|
||||
Dim ImageID As Integer = ClassDatabase.Execute_Scalar(SQL)
|
||||
|
||||
SQL = String.Format("SELECT GUID FROM TBPMO_CONTROL_VALUE WHERE CONTROL_ID = {0} AND RECORD_ID = {1}", ControlID, RecordID)
|
||||
Dim valueExists = ClassDatabase.Execute_Scalar(SQL)
|
||||
|
||||
Dim VALUE = "%%" & ImageID.ToString & "%%"
|
||||
|
||||
If valueExists Then
|
||||
SQL = String.Format("UPDATE TBPMO_CONTROL_VALUE SET VALUE = '{0}' WHERE CONTROL_ID = {1} AND RECORD_ID = {2}", VALUE, ControlID, RecordID)
|
||||
Else
|
||||
SQL = String.Format("INSERT INTO TBPMO_CONTROL_VALUE (RECORD_ID, CONTROL_ID, VALUE, ADDED_WHO) VALUES ({0}, {1}, '{2}', '{3}')", RecordID, ControlID, VALUE, Environment.UserName)
|
||||
End If
|
||||
|
||||
ClassDatabase.Execute_non_Query(SQL)
|
||||
Catch ex As Exception
|
||||
MsgBox("Error in LinkImage: " & vbNewLine & ex.Message)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
Private Sub UpdateImage(ControlID As Integer, RecordID As Integer, image As Bitmap)
|
||||
Try
|
||||
Dim bimage() As Byte
|
||||
Dim SQL As String = "UPDATE TBPMO_CONTROL_IMAGE SET IMG = @IMG, CHANGED_WHO = @CHANGED_WHO WHERE CONTROL_ID = @CONTROL_ID AND RECORD_ID = @RECORD_ID"
|
||||
Dim conn As New SqlClient.SqlConnection(MyConnectionString)
|
||||
Dim cmd As New SqlClient.SqlCommand(SQL, conn)
|
||||
|
||||
If IsNothing(image) Then
|
||||
DeleteImage(ControlID, RecordID)
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
bimage = BitmapToByteArray(image)
|
||||
|
||||
cmd.Parameters.Add("@CONTROL_ID", SqlDbType.Int).Value = ControlID
|
||||
cmd.Parameters.Add("@RECORD_ID", SqlDbType.Int).Value = RecordID
|
||||
cmd.Parameters.Add("@RECORDID", SqlDbType.Int).Value = RecordID
|
||||
cmd.Parameters.Add("@IMG", SqlDbType.VarBinary).Value = bimage
|
||||
cmd.Parameters.Add("@CHANGED_WHO", SqlDbType.VarChar).Value = Environment.UserName
|
||||
|
||||
conn.Open()
|
||||
cmd.ExecuteNonQuery()
|
||||
conn.Close()
|
||||
|
||||
LinkImage(ControlID, RecordID)
|
||||
Catch ex As Exception
|
||||
MsgBox("Error in UpdateImage: ", ex.Message, vbCritical)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
|
||||
Private Sub DeleteImage(ControlID As Integer, RecordID As Integer)
|
||||
Try
|
||||
' Delete Image
|
||||
Dim SQL = String.Format("DELETE FROM TBPMO_CONTROL_IMAGE WHERE CONTROL_ID = {0} AND RECORD_ID = {1}", ControlID, RecordID)
|
||||
Dim result = ClassDatabase.Execute_non_Query(SQL)
|
||||
|
||||
' Delete Value
|
||||
SQL = String.Format("DELETE FROM TBPMO_CONTROL_VALUE WHERE CONTROL_ID = {0} AND RECORD_ID = {1}", ControlID, RecordID)
|
||||
result = ClassDatabase.Execute_non_Query(SQL)
|
||||
Catch ex As Exception
|
||||
MsgBox("Fehler beim löschen des Bildes:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
Private Sub UpdateAllControls(FormID As Integer, RecordID As Integer, controls As Control.ControlCollection)
|
||||
For Each ctrl As Control In controls
|
||||
Dim CONTROL_ID As Integer = GetControlID_for_RecordID(ctrl.Name, RecordID)
|
||||
Dim CONTROL_VALUE As String = Nothing
|
||||
|
||||
If TypeOf ctrl Is PictureBox Then
|
||||
Dim id As Integer = GetControlID_for_Name(ctrl.Name, FormID)
|
||||
UpsertImage(id, RecordID, ctrl.BackgroundImage)
|
||||
Continue For
|
||||
End If
|
||||
|
||||
' Neues Control
|
||||
If CONTROL_ID = -1 Then
|
||||
CONTROL_VALUE = GetControlValue(ctrl)
|
||||
|
||||
' Kein Bekanntes Control oder Groupbox
|
||||
If IsNothing(CONTROL_VALUE) Then
|
||||
If TypeOf ctrl Is GroupBox Then
|
||||
Dim ctrls As Control.ControlCollection = DirectCast(ctrl, GroupBox).Controls
|
||||
|
||||
UpdateAllControls(FormID, RecordID, ctrls)
|
||||
End If
|
||||
Else
|
||||
InsertControlValue(ctrl.Name, FormID, RecordID, CONTROL_VALUE)
|
||||
End If
|
||||
Else ' Control Updaten
|
||||
CONTROL_VALUE = GetControlValue(ctrl)
|
||||
' Kein Bekanntes Control oder Groupbox
|
||||
If IsNothing(CONTROL_VALUE) Then
|
||||
If TypeOf ctrl Is GroupBox Then
|
||||
Dim ctrls As Control.ControlCollection = DirectCast(ctrl, GroupBox).Controls
|
||||
|
||||
UpdateAllControls(FormID, RecordID, ctrls)
|
||||
End If
|
||||
Else
|
||||
UpdateControlValue(CONTROL_ID, RecordID, CONTROL_VALUE)
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
End Sub
|
||||
|
||||
Function GetControlValue(ctrl As Control) As String
|
||||
Dim type = ctrl.GetType().Name
|
||||
Dim CONTROL_ID As Integer = GetControlID_for_RecordID(ctrl.Name, CURRENT_RECORD_ID)
|
||||
|
||||
Select Case type
|
||||
Case "TextBox"
|
||||
Return DirectCast(ctrl, TextBox).Text
|
||||
Case "ComboBox"
|
||||
Return DirectCast(ctrl, ComboBox).Text
|
||||
Case "CheckBox"
|
||||
Return DirectCast(ctrl, CheckBox).Checked.ToString()
|
||||
Case "RadioButton"
|
||||
Return DirectCast(ctrl, RadioButton).Checked.ToString()
|
||||
Case "DateEdit"
|
||||
Return DirectCast(ctrl, DevExpress.XtraEditors.DateEdit).DateTime.ToString("yyyy-MM-dd")
|
||||
Case "PictureBox"
|
||||
|
||||
|
||||
|
||||
|
||||
'Return "PictureBox" 'Es ist egal was für ein String hier zurückgegeben wird, hauptsache nicht Nothing
|
||||
Case "CheckedListBoxControl"
|
||||
Dim chklbx As DevExpress.XtraEditors.CheckedListBoxControl
|
||||
chklbx = DirectCast(ctrl, DevExpress.XtraEditors.CheckedListBoxControl)
|
||||
|
||||
'TODO: Wenn keine Datasource vorhanden, angecheckte einträge als string speichern
|
||||
If (IsNothing(chklbx.DataSource)) Then
|
||||
Dim result As New List(Of String)
|
||||
Dim result_string As String
|
||||
|
||||
For Each item As DevExpress.XtraEditors.Controls.CheckedListBoxItem In chklbx.CheckedItems
|
||||
result.Add(item.Value)
|
||||
Next
|
||||
|
||||
result_string = String.Join(";", result)
|
||||
|
||||
' Hier wird ein String zurückgegeben, der als VALUE gespeichert werden soll
|
||||
' Überspringt den Rest der funktion
|
||||
Return result_string
|
||||
End If
|
||||
|
||||
'Alle Recorddatensätze durchlaufen und überprüfen ob nicht angehakt
|
||||
'Wenn nicht angehakt dann Record löschen
|
||||
Dim index As Integer = 0
|
||||
For i As Integer = 0 To chklbx.ItemCount - 1
|
||||
Dim item = chklbx.GetItem(i)
|
||||
Dim row As DataRowView = CType(item, DataRowView)
|
||||
If chklbx.GetItemCheckState(i) = 0 Then
|
||||
If CInt(row(0)) > 0 Then
|
||||
'Überprüfen ob es den Record gibt
|
||||
Dim SQL = "SELECT COUNT(*) FROM TBPMO_RECORD_CONNECT WHERE RECORD1_ID = " & CURRENT_RECORD_ID & " AND RECORD2_ID = " & CInt(row(0))
|
||||
If ClassDatabase.Execute_Scalar(SQL) = 1 Then
|
||||
SQL = "DELETE FROM TBPMO_RECORD_CONNECT WHERE RECORD1_ID = " & CURRENT_RECORD_ID & " AND RECORD2_ID = " & CInt(row(0))
|
||||
If ClassDatabase.Execute_non_Query(SQL) = True Then
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(">> TBPMO_RECORD_CONNECT-Eintrag nach Deselect CheckedListBox gelöscht", False)
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
|
||||
'Für jeden gecheckten Eintrag den Record der Stammentität mit dem selektierten linken
|
||||
For Each item As Object In DirectCast(ctrl, DevExpress.XtraEditors.CheckedListBoxControl).CheckedItems
|
||||
Dim row As DataRowView = CType(item, DataRowView)
|
||||
Try
|
||||
If CInt(row(0)) > 0 Then
|
||||
Dim SQL = "SELECT COUNT(*) FROM TBPMO_RECORD_CONNECT WHERE RECORD1_ID = " & CURRENT_RECORD_ID & " AND RECORD2_ID = " & CInt(row(0))
|
||||
If ClassDatabase.Execute_Scalar(SQL) = 0 Then
|
||||
ConnectRecord(CURRENT_RECORD_ID, CInt(row(0)), "CheckedListBox;" & ctrl.Name)
|
||||
End If
|
||||
|
||||
End If
|
||||
Catch ex As Exception
|
||||
ClassLogger.Add("Error in CheckedListBoxGetControlValue: " & ex.Message, True)
|
||||
End Try
|
||||
|
||||
Next
|
||||
|
||||
|
||||
|
||||
'In jedem Fall Nothing zurückgeben
|
||||
Return Nothing
|
||||
Case "ListBoxControl"
|
||||
Dim listbox As DevExpress.XtraEditors.ListBoxControl = DirectCast(ctrl, DevExpress.XtraEditors.ListBoxControl)
|
||||
Return listbox.SelectedValue
|
||||
Case Else
|
||||
Return Nothing
|
||||
End Select
|
||||
End Function
|
||||
|
||||
Function InsertControlValue(ControlName As String, FormID As Integer, RecordID As Integer, Value As String)
|
||||
Try
|
||||
Dim ControlID = GetControlID_for_Name(ControlName, FormID)
|
||||
Dim AddedWho = Environment.UserName
|
||||
Dim FORMAT_TYPE As String = ClassDatabase.Execute_Scalar("SELECT FORMAT_TYPE FROM TBPMO_CONTROL WHERE GUID = " & ControlID)
|
||||
Try
|
||||
Select Case FORMAT_TYPE
|
||||
Case "Currency"
|
||||
If Not Value = String.Empty Then
|
||||
Value = Decimal.Parse(Value, Globalization.NumberStyles.Currency).ToString
|
||||
End If
|
||||
|
||||
Case "Decimal"
|
||||
If Not Value = String.Empty Then
|
||||
Value = Decimal.Parse(Value, Globalization.NumberStyles.Integer)
|
||||
End If
|
||||
|
||||
End Select
|
||||
Catch ex As Exception
|
||||
ClassLogger.Add("Unerwarteter Fehler in Insert ConvertValue to Format'" & FORMAT_TYPE & "': " & ex.Message, True)
|
||||
End Try
|
||||
|
||||
If ControlID = 489 Then
|
||||
Console.WriteLine(Value)
|
||||
End If
|
||||
|
||||
Dim SQL = "INSERT INTO TBPMO_CONTROL_VALUE (CONTROL_ID, RECORD_ID, VALUE, ADDED_WHO) VALUES (" & ControlID & ", " & RecordID & ", '" & Value & "', '" & AddedWho & "')"
|
||||
Return ClassDatabase.Execute_non_Query(SQL, True)
|
||||
Catch ex As Exception
|
||||
ClassLogger.Add("Unerwarteter Fehler in InsertControlValue: " & ex.Message, True)
|
||||
Return False
|
||||
End Try
|
||||
End Function
|
||||
|
||||
Public Shared Function UpdateControlValue(ControlID As Integer, RecordID As Integer, Value As String)
|
||||
Try
|
||||
Dim CHANGED_WHO = Environment.UserName
|
||||
Dim FORMAT_TYPE As String = ClassDatabase.Execute_Scalar("SELECT FORMAT_TYPE FROM TBPMO_CONTROL WHERE GUID = " & ControlID)
|
||||
Try
|
||||
If Not Value = String.Empty Then
|
||||
Select Case FORMAT_TYPE
|
||||
Case "Currency"
|
||||
Value = Decimal.Parse(Value, Globalization.NumberStyles.Currency).ToString
|
||||
Case "Decimal"
|
||||
Value = Decimal.Parse(Value, Globalization.NumberStyles.Integer)
|
||||
End Select
|
||||
End If
|
||||
|
||||
Catch ex As Exception
|
||||
ClassLogger.Add("Unerwarteter Fehler in Update ConvertValue to Format'" & FORMAT_TYPE & "': " & ex.Message, True)
|
||||
End Try
|
||||
|
||||
Dim SQL As String = "UPDATE TBPMO_CONTROL_VALUE SET VALUE = '" & Value & "', CHANGED_WHO = '" & CHANGED_WHO & "' WHERE CONTROL_ID = " & ControlID & " AND RECORD_ID = " & RecordID
|
||||
Return ClassDatabase.Execute_non_Query(SQL, True)
|
||||
|
||||
Catch ex As Exception
|
||||
ClassLogger.Add("Unerwarteter Fehler in UpdateControlValue: " & ex.Message, True)
|
||||
Return False
|
||||
End Try
|
||||
End Function
|
||||
|
||||
Public Shared Function CreateRecord(FormID)
|
||||
Dim ADDED_WHO As String = Environment.UserName
|
||||
Dim SQL = "INSERT INTO TBPMO_RECORD(ADDED_WHO, FORM_ID) VALUES ('" & ADDED_WHO & "', " & FormID & ")"
|
||||
Return ClassDatabase.Execute_non_Query(SQL)
|
||||
End Function
|
||||
|
||||
Public Shared Function GetLastRecord()
|
||||
Dim ADDED_WHO As String = Environment.UserName
|
||||
Dim SQL = "SELECT (MAX(GUID)) FROM TBPMO_RECORD where ADDED_WHO = '" & ADDED_WHO & "'"
|
||||
Return ClassDatabase.Execute_Scalar(SQL, True)
|
||||
End Function
|
||||
|
||||
Public Shared Function ConnectRecord(foreignRecordID As Integer, recordID As Integer, Optional Comment As String = "")
|
||||
Dim ADDED_WHO As String = Environment.UserName
|
||||
Dim SQL = "INSERT INTO TBPMO_RECORD_CONNECT(RECORD1_ID,RECORD2_ID,COMMENT,ADDED_WHO) VALUES (" & foreignRecordID & "," & recordID & ",'" & Comment & "','" & ADDED_WHO & "')"
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(">> ConnectRecord SQL: " & SQL, False)
|
||||
Return ClassDatabase.Execute_non_Query(SQL)
|
||||
End Function
|
||||
|
||||
'Function SaveRecord_OLD(RecordID As Integer, FormID As Integer, Optional foreignRecordID As Integer = 0) As String
|
||||
' Try
|
||||
' Dim SQL As String
|
||||
' Dim RECORD_ID As Integer
|
||||
' Dim ADDED_WHO As String = Environment.UserName
|
||||
' Dim CHANGED_WHO As String = Environment.UserName
|
||||
|
||||
' If IsInsert = True Then
|
||||
' If LogErrorsOnly = False Then ClassLogger.Add(">> (SaveRecord) Insert", False)
|
||||
' ' Create the record first
|
||||
' SQL = "INSERT INTO TBPMO_RECORD(ADDED_WHO, FORM_ID) VALUES ('" & ADDED_WHO & "', " & FormID & ")"
|
||||
' If ClassDatabase.Execute_non_Query(SQL) = False Then
|
||||
' IsInsert = False
|
||||
' Return "ERROR - INSERT RECORD NOT SUCCESSFUL"
|
||||
' End If
|
||||
|
||||
' ' Get last RecordID
|
||||
' SQL = "SELECT (MAX(GUID)) FROM TBPMO_RECORD where ADDED_WHO = '" & ADDED_WHO & "'"
|
||||
' RECORD_ID = ClassDatabase.Execute_Scalar(SQL)
|
||||
' 'Den Record Connecten
|
||||
' If foreignRecordID > 0 Then
|
||||
' If LogErrorsOnly = False Then ClassLogger.Add(">> foreignRecordID: " & foreignRecordID & "; Record-ID: " & RECORD_ID, False)
|
||||
' SQL = "INSERT INTO TBPMO_RECORD_CONNECT(RECORD1_ID,RECORD2_ID,ADDED_WHO) VALUES (" & foreignRecordID & "," & RECORD_ID & ",'" & ADDED_WHO & "')"
|
||||
' If LogErrorsOnly = False Then ClassLogger.Add(">> SQL: " & SQL, False)
|
||||
' ClassDatabase.Execute_non_Query(SQL)
|
||||
' End If
|
||||
|
||||
' 'ThisRecordID = RECORD_ID
|
||||
' 'MsgBox(formid)
|
||||
|
||||
' 'Save Each Value from Controls into CONTROL_VALUE
|
||||
' 'For Each ctrl As Control In pnl.Controls
|
||||
' Dim VALUE
|
||||
' For Each ctrl As Control In _CtrlBuilder.AllControls
|
||||
' Dim CONTROL_ID As Integer = GetControlID_for_Name(ctrl.Name, FormID)
|
||||
' If CONTROL_ID <> -1 And TypeOf ctrl Is TextBox Or TypeOf ctrl Is ComboBox Then
|
||||
' VALUE = ctrl.Text
|
||||
' 'If TypeOf ctrl Is ComboBox Then
|
||||
' ' Dim cmb = DirectCast(ctrl, ComboBox)
|
||||
' ' If cmb.DataSource Is Nothing = False Then
|
||||
' ' Dim bs As BindingSource = DirectCast(cmb.DataSource, BindingSource)
|
||||
' ' Dim dt As DataTable = DirectCast(bs.DataSource, DataTable)
|
||||
' ' BindingSource_Check_Content_Insert(bs, cmb.DisplayMember.ToString, cmb.Text)
|
||||
' ' ' MsgBox(dt.TableName.ToString & vbNewLine & cmb.DisplayMember.ToString)
|
||||
' ' End If
|
||||
' 'End If
|
||||
|
||||
|
||||
' ElseIf CONTROL_ID <> -1 And TypeOf ctrl Is CheckBox Then
|
||||
' 'If CONTROL_ID = -1 Then
|
||||
' Dim chk As CheckBox
|
||||
' chk = DirectCast(ctrl, CheckBox)
|
||||
' VALUE = chk.Checked
|
||||
' CONTROL_ID = GetControlID_for_Name(ctrl.Name, FormID)
|
||||
' 'End If
|
||||
' ElseIf CONTROL_ID <> -1 And TypeOf ctrl Is RadioButton Then
|
||||
' Dim radio As RadioButton
|
||||
' radio = DirectCast(ctrl, RadioButton)
|
||||
' VALUE = radio.Checked
|
||||
' CONTROL_ID = GetControlID_for_Name(ctrl.Name, FormID)
|
||||
' End If
|
||||
' 'Jetzt der Insert
|
||||
' SQL = "INSERT INTO TBPMO_CONTROL_VALUE(CONTROL_ID, RECORD_ID, VALUE, ADDED_WHO) VALUES (" & CONTROL_ID & ", " & RECORD_ID & ", '" & VALUE & "', '" & ADDED_WHO & "')"
|
||||
' ClassDatabase.Execute_non_Query(SQL)
|
||||
' Next
|
||||
' ' Reset insert after INSERT
|
||||
' IsInsert = False
|
||||
' 'tsstatus_Detail_show(True, "Neuer Datensatz eingefügt - " & Now)
|
||||
' NEW_RECORD_ID = RECORD_ID
|
||||
' CURRENT_RECORD_ID = RECORD_ID
|
||||
' Return "Neuer Datensatz eingefügt - " & Now
|
||||
' Else
|
||||
' If LogErrorsOnly = False Then ClassLogger.Add(">> (SaveRecord) Update RecordID: " & RECORD_ID, False)
|
||||
' For Each ctrl As Control In _CtrlBuilder.AllControls
|
||||
' Dim CONTROL_ID = GetControlID_for_RecordID(ctrl.Name, RecordID)
|
||||
|
||||
' Dim value_akt = ClassDatabase.Execute_Scalar("SELECT VALUE FROM TBPMO_CONTROL_VALUE WHERE CONTROL_ID = " & CONTROL_ID & " AND RECORD_ID = " & RecordID)
|
||||
' Console.WriteLine(CONTROL_ID.ToString & " - " & ctrl.Name)
|
||||
|
||||
' If CONTROL_ID = -1 And (TypeOf ctrl Is TextBox Or TypeOf ctrl Is ComboBox) Then
|
||||
' ' Trying to save a value for a new value
|
||||
' Dim VALUE = ctrl.Text
|
||||
' CONTROL_ID = GetControlID_for_Name(ctrl.Name, FormID)
|
||||
' SQL = "INSERT INTO TBPMO_CONTROL_VALUE (CONTROL_ID, RECORD_ID, VALUE, ADDED_WHO) VALUES (" & CONTROL_ID & ", " & RecordID & ", '" & VALUE & "', '" & ADDED_WHO & "')"
|
||||
' If ClassDatabase.Execute_non_Query(SQL) = False Then
|
||||
' Throw New Exception("Error while inserting new value for Control " & ctrl.Name & "!")
|
||||
' End If
|
||||
|
||||
' ElseIf TypeOf ctrl Is TextBox Or TypeOf ctrl Is ComboBox Then
|
||||
|
||||
' Dim VALUE = ctrl.Text
|
||||
' If value_akt <> VALUE Then
|
||||
' 'If TypeOf ctrl Is ComboBox Then
|
||||
' ' Dim cmb = DirectCast(ctrl, ComboBox)
|
||||
' ' If cmb.DataSource Is Nothing = False Then
|
||||
' ' Dim bs As BindingSource = DirectCast(cmb.DataSource, BindingSource)
|
||||
' ' BindingSource_Check_Content_Insert(bs, cmb.DisplayMember.ToString, cmb.Text)
|
||||
' ' End If
|
||||
' 'End If
|
||||
|
||||
' SQL = "UPDATE TBPMO_CONTROL_VALUE SET VALUE = '" & VALUE & "', CHANGED_WHO = '" & CHANGED_WHO & "' WHERE CONTROL_ID = " & CONTROL_ID & " AND RECORD_ID = " & RecordID
|
||||
' If ClassDatabase.Execute_non_Query(SQL) = False Then
|
||||
' Throw New Exception("Error while updating the value for Control " & ctrl.Name & "!")
|
||||
' End If
|
||||
' End If
|
||||
|
||||
' ElseIf CONTROL_ID = -1 And (TypeOf ctrl Is DevExpress.XtraEditors.DateEdit) Then
|
||||
' Dim date_ctrl As DevExpress.XtraEditors.DateEdit = DirectCast(ctrl, DevExpress.XtraEditors.DateEdit)
|
||||
' Dim VALUE As String = date_ctrl.DateTime.ToString("yyyy-MM-dd")
|
||||
' CONTROL_ID = GetControlID_for_Name(date_ctrl.Name, FormID)
|
||||
|
||||
' SQL = "INSERT INTO TBPMO_CONTROL_VALUE (CONTROL_ID, RECORD_ID, VALUE, ADDED_WHO) VALUES (" & CONTROL_ID & ", " & RecordID & ", '" & VALUE & "', '" & ADDED_WHO & "')"
|
||||
' If ClassDatabase.Execute_non_Query(SQL) = False Then
|
||||
' Throw New Exception("Error while inserting new value for Control " & ctrl.Name & "!")
|
||||
' End If
|
||||
' ElseIf TypeOf ctrl Is DevExpress.XtraEditors.DateEdit Then
|
||||
' Dim date_ctrl As DevExpress.XtraEditors.DateEdit = DirectCast(ctrl, DevExpress.XtraEditors.DateEdit)
|
||||
' Dim VALUE As String = date_ctrl.DateTime.ToString("yyyy-MM-dd")
|
||||
' If value_akt <> VALUE Then
|
||||
' SQL = "UPDATE TBPMO_CONTROL_VALUE SET VALUE = '" & VALUE & "', CHANGED_WHO = '" & CHANGED_WHO & "' WHERE CONTROL_ID = " & CONTROL_ID & " AND RECORD_ID = " & RecordID
|
||||
' If ClassDatabase.Execute_non_Query(SQL) = False Then
|
||||
' Throw New Exception("Error while updating the value for Control " & ctrl.Name & "!")
|
||||
' End If
|
||||
' End If
|
||||
' ElseIf TypeOf ctrl Is CheckBox Then
|
||||
' If CONTROL_ID = -1 Then
|
||||
' Dim chk As CheckBox
|
||||
' chk = DirectCast(ctrl, CheckBox)
|
||||
' Dim VALUE = chk.Checked
|
||||
' CONTROL_ID = GetControlID_for_Name(ctrl.Name, FormID)
|
||||
' SQL = "INSERT INTO TBPMO_CONTROL_VALUE (CONTROL_ID, RECORD_ID, VALUE, ADDED_WHO) VALUES (" & CONTROL_ID & ", " & RecordID & ", '" & VALUE & "', '" & ADDED_WHO & "')"
|
||||
' If ClassDatabase.Execute_non_Query(SQL) = False Then
|
||||
' Throw New Exception("Error while inserting new value for Control " & ctrl.Name & "!")
|
||||
' End If
|
||||
' Else
|
||||
' Dim chk As CheckBox
|
||||
' chk = DirectCast(ctrl, CheckBox)
|
||||
' Dim VALUE = chk.Checked
|
||||
' SQL = "UPDATE TBPMO_CONTROL_VALUE SET VALUE = '" & VALUE & "', CHANGED_WHO = '" & CHANGED_WHO & "' WHERE CONTROL_ID = " & CONTROL_ID & " AND RECORD_ID = " & RecordID
|
||||
' If ClassDatabase.Execute_non_Query(SQL) = False Then
|
||||
' Throw New Exception("Error while update new value for Control " & ctrl.Name & "!")
|
||||
' End If
|
||||
' End If
|
||||
' ElseIf TypeOf ctrl Is RadioButton Then
|
||||
|
||||
' If CONTROL_ID = -1 Then
|
||||
' Dim radio As RadioButton = DirectCast(ctrl, RadioButton)
|
||||
' Dim VALUE As String = radio.Checked
|
||||
' CONTROL_ID = GetControlID_for_Name(ctrl.Name, FormID)
|
||||
' SQL = "INSERT INTO TBPMO_CONTROL_VALUE (CONTROL_ID, RECORD_ID, VALUE, ADDED_WHO) VALUES (" & CONTROL_ID & ", " & RecordID & ", " & VALUE & ", " & ADDED_WHO & ")"
|
||||
' If ClassDatabase.Execute_non_Query(SQL) = False Then
|
||||
' Throw New Exception("Error while inserting new value for Control " & ctrl.Name & "!")
|
||||
' End If
|
||||
' Else
|
||||
' Dim radio As RadioButton = DirectCast(ctrl, RadioButton)
|
||||
' Dim value As String = radio.Checked
|
||||
' CONTROL_ID = GetControlID_for_Name(ctrl.Name, FormID)
|
||||
' SQL = "UPDATE TBPMO_CONTROL_VALUE SET VALUE = '" & value & "', CHANGED_WHO = '" & CHANGED_WHO & "' WHERE CONTROL_ID = " & CONTROL_ID & " AND RECORD_ID = " & RecordID
|
||||
' If ClassDatabase.Execute_non_Query(SQL) = False Then
|
||||
' Throw New Exception("Error while update new value for Control " & ctrl.Name & "!")
|
||||
' End If
|
||||
' End If
|
||||
|
||||
' End If
|
||||
|
||||
' Next
|
||||
' 'tsstatus_Detail_show(True, "Datensatz aktualisiert - " & Now)
|
||||
' Return "Datensatz aktualisiert - " & Now
|
||||
' End If
|
||||
|
||||
' Catch ex As Exception
|
||||
' MsgBox("Error in SaveRecord:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
|
||||
' IsInsert = False
|
||||
' Return "Error in SaveRecord"
|
||||
' End Try
|
||||
'End Function
|
||||
End Class
|
||||
Reference in New Issue
Block a user