This commit is contained in:
JenneJ
2016-04-25 16:16:37 +02:00
parent 944dcd330a
commit 0b6da26fd8
6 changed files with 98 additions and 6 deletions

View File

@@ -132,6 +132,9 @@ Public Class frmConstructor_Main
Save_Grid_Layout()
Save_Splitter_Layout()
ClassWindowLocation.SaveFormLocationSize(Me, CONSTRUCTORID, CURRENT_SCREEN_ID, "CONSTRUCTOR_MAIN")
' Verhindert, das noch geöffnete Records für immer gelockt sind
ClassRecordState.UnlockRecord(SELECTED_RECORD_ID)
End Sub
@@ -1372,8 +1375,27 @@ Public Class frmConstructor_Main
End If
End Sub
Sub EnableEditMode()
Dim EditingUser = ClassRecordState.IsRecordLocked(SELECTED_RECORD_ID)
' Überprüfen, ob der Record gerade bearbeitet wird
If Not IsNothing(EditingUser) Then
If USER_LANGUAGE = "de-DE" Then
MsgBox(String.Format("Dieser Datensatz wird gerade vom Benutzer {0} bearbeitet und kann nur lesend abgerufen werden.", EditingUser), MsgBoxStyle.Exclamation)
Else
MsgBox(String.Format("This Record is currently being edited by User {0} and only available in Read-Only mode.", EditingUser), MsgBoxStyle.Exclamation)
End If
' Wenn Record bearbeitet wird, EnableEditMode abbrechen!
Exit Sub
Else
'Wenn Record bearbeitet werden kann, IN_WORK auf 1 setzen, um Bearbeitung durch andere zu verhindern!
ClassRecordState.LockRecord(SELECTED_RECORD_ID)
End If
Lock_RecordControls(False)
Me.tsButtonDelete.Enabled = True
Me.tsButtonAdd.Enabled = True
@@ -1388,7 +1410,9 @@ Public Class frmConstructor_Main
CURRENT_RECORD_ID = RECORD_ID
' Abhängige Listen laden
CtrlBuilder.WatchRecordChanges = False
ClassControlValues.LoadControlValuesListWithPlaceholders(ENTITY_ID, RECORD_ID, PARENT_ID, CtrlBuilder.AllControls, ENTITY_ID)
CtrlBuilder.WatchRecordChanges = True
RECORD_ENABLED = True
CURRENT_RECORD_ENABLED = True
@@ -1399,6 +1423,8 @@ Public Class frmConstructor_Main
End Sub
Sub DisableEditMode()
ClassRecordState.UnlockRecord(SELECTED_RECORD_ID)
Lock_RecordControls(True)
RECORD_ENABLED = False
CURRENT_RECORD_ENABLED = False
@@ -1817,7 +1843,9 @@ Public Class frmConstructor_Main
' ClassControlValues.LoadControlValuesList(firstRecordId, PARENT_ID, ENTITY_ID, CtrlBuilder.MasterPanel.Controls)
'End If
' Hinfällig, da hier die Record-ID nicht gebraucht wird
CtrlBuilder.WatchRecordChanges = False
ClassControlValues.LoadControlValuesList(ENTITY_ID, CtrlBuilder.MasterPanel.Controls)
CtrlBuilder.WatchRecordChanges = True
'Zurücksetzen
ENTITY_LOADED = True
@@ -1855,7 +1883,9 @@ Public Class frmConstructor_Main
ENTITY_RELOAD_AFT_CONTROL_LOAD = False
'Daten zu Record in jedem Fall laden
'ClassControlValues.LoadControlValues(SELECTED_RECORD_ID, ENTITY_ID, CtrlBuilder.AllControls)
CtrlBuilder.WatchRecordChanges = False
ClassControlValues.LoadControlValues(SELECTED_RECORD_ID, PARENT_ID, ENTITY_ID, CtrlBuilder.AllControls, ENTITY_ID)
CtrlBuilder.WatchRecordChanges = True
' Laden der Daten bedeutet nicht dass Daten vom Benutzer geändert wurden!
RECORD_CHANGED = False
Update_Record_Label(Grid_RecordID)
@@ -2369,7 +2399,9 @@ Public Class frmConstructor_Main
Dim sw1 As New Stopwatch
sw1.Start()
ENTITY_RELOAD_AFT_CONTROL_LOAD = False
CtrlBuilder.WatchRecordChanges = False
ClassControlValues.LoadControlValues(SELECTED_RECORD_ID, PARENT_ID, ENTITY_ID, CtrlBuilder.AllControls, ENTITY_ID)
CtrlBuilder.WatchRecordChanges = True
Dim elapsed1 As Double
elapsed1 = sw1.Elapsed.TotalSeconds
sw1.Stop()