Verbesserung von SQL-Handling und Fehlerbehandlung

In `frmFormDesigner` wurde das SQL-Handling optimiert, indem SQL-Befehle in Variablen ausgelagert wurden. Fehlerprotokollierung und Benutzerbenachrichtigung (`MsgBox`) wurden hinzugefügt, um Fehler besser zu behandeln.

In `frmMassValidator` wurde ein veralteter, auskommentierter SQL-Befehl entfernt.

In `frmValidator` wurde das Zurücksetzen von `ComboBox`-Steuerelementen verbessert, und die Berechnung der verbleibenden Vorgänge (`Amount_Docs2Validate`) wurde korrigiert.
This commit is contained in:
Developer01
2026-08-10 14:16:33 +02:00
parent 107a47a97e
commit b5ae672091
3 changed files with 23 additions and 14 deletions

View File

@@ -978,7 +978,8 @@ Public Class frmFormDesigner
End If
Try
If DatabaseFallback.ExecuteNonQueryECM($"UPDATE TBPM_PROFILE_CONTROLS SET {columnName} = {escapedValue}, CHANGED_WHO = '{USER_USERNAME}' WHERE GUID = {guid}") = True Then
Dim oUPD = $"UPDATE TBPM_PROFILE_CONTROLS SET {columnName} = {escapedValue}, CHANGED_WHO = '{USER_USERNAME}' WHERE GUID = {guid}"
If DatabaseFallback.ExecuteNonQueryECM(oUPD) = True Then
tslblAenderungen.Visibility = DevExpress.XtraBars.BarItemVisibility.Always
tslblAenderungen.Caption = "Änderungen gespeichert - " & Now
If columnName.ToUpper = "CTRL_TEXT" Then
@@ -987,6 +988,8 @@ Public Class frmFormDesigner
End If
CHANGES_FORM_DESIGN = True
Return True
Else
_Logger.Info($"UpdateSingleValue - Fehler beim Speichern von Control (Id: {guid}): ExecuteNonQueryECM [{oUPD}] returned False")
End If
Return False
@@ -1156,16 +1159,22 @@ Public Class frmFormDesigner
Dim label = ControlCreator.CreateNewLabel(cursorPosition)
SetMovementHandlers(label)
TBPM_PROFILE_CONTROLSTableAdapter.cmdInsertAnlage(ProfileId, label.Name, "LBL", label.Text, label.Location.X, label.Location.Y, USER_USERNAME, label.Size.Height, label.Size.Width, label.TextAlign, "")
Dim oInsert = $"INSERT INTO TBPM_PROFILE_CONTROLS
(PROFIL_ID, NAME, CTRL_TYPE, CTRL_TEXT, X_LOC, Y_LOC, ADDED_WHO, HEIGHT, WIDTH, TEXT_ALIGNMENT, DISPLAY_IN_SEPERATE_FORM)
VALUES ({ProfileId},'{label.Name}','LBL','{label.Text}','{label.Location.X}','{label.Location.Y}','{USER_USERNAME}',{label.Size.Height},{label.Size.Width},'{label.TextAlign}','')"
If DatabaseFallback.ExecuteNonQueryECM(oInsert) Then
'TBPM_PROFILE_CONTROLSTableAdapter.cmdInsertAnlage(ProfileId, label.Name, "LBL", label.Text, label.Location.X, label.Location.Y, USER_USERNAME, label.Size.Height, label.Size.Width, label.TextAlign, "")
CHANGES_FORM_DESIGN = True
CurrentControl = label
CurrentControl.Tag = New ClassControlCreator.ControlMetadata() With {
.Guid = GetLastID(),
.ReadOnly = False
}
pnldesigner.Controls.Add(label)
Else
_Logger.Info($"Error while inserting new Label Control into TBPM_PROFILE_CONTROLS: {oInsert}")
MsgBox("Fehler beim Erstellen des Labels. Bitte überprüfen Sie die Log-Datei für weitere Informationen.", MsgBoxStyle.Critical, "Fehler beim Erstellen des Labels")
End If
Case ClassControlCreator.PREFIX_TEXTBOX
Dim txt = ControlCreator.CreateNewTextBox(cursorPosition)
SetMovementHandlers(txt)
@@ -1297,9 +1306,9 @@ Public Class frmFormDesigner
RibPGCtrlWidth.Enabled = True
End If
Catch ex As Exception
_Logger.Error(ex)
_Logger.Info($"Error while Adding new control {NewControlSelected}:")
_Logger.Info(ex)
MsgBox($"Error while Adding new control {NewControlSelected}: {ex.Message}" & vbCrLf & "Check the log for further info", MsgBoxStyle.Critical)
End Try
Me.Cursor = Cursors.Default
NewControlSelected = ""

View File

@@ -1164,7 +1164,6 @@ Public Class frmMassValidator
If CreateWMObject() = True Then
If ClassFinalizeDoc.Write_Final_Metadata(CURRENT_WMFILE) = True Then
Dim sql = $"EXEC PRTF_PROFILE_FILES_WORK {CURRENT_DOC_ID},{CURRENT_ProfilGUID},{USER_ID},'Worked'"
'String.Format("UPDATE TBPM_PROFILE_FILES SET IN_WORK = 0, WORK_USER = '{0}', EDIT = 1 WHERE GUID = {1}", USER_USERNAME, CURRENT_DOC_GUID)
If DatabaseFallback.ExecuteNonQueryECM(sql) = True Then
workedFiles += 1

View File

@@ -1791,6 +1791,7 @@ Public Class frmValidator
Case Type = GetType(Windows.Forms.ComboBox)
Dim cmb As Windows.Forms.ComboBox = inctrl
cmb.SelectedIndex = -1
cmb.Text = String.Empty
Case Type = GetType(DataGridView)
Dim dgv As DataGridView = inctrl
If dgv.Rows.Count > 0 Then
@@ -4240,7 +4241,7 @@ Public Class frmValidator
End If
If Amount_Docs2Validate > 1 Then
Dim omsg = String.Format(Translation_Strings.Verbleibende_Vorgänge___0_, Amount_Docs2Validate)
Dim omsg = String.Format(Translation_Strings.Verbleibende_Vorgänge___0_, Amount_Docs2Validate - 1)
bsiInformation.Caption = omsg
bsiInformation.Caption = omsg
If RbnPgGrpActions.Visible = False Then