EvtLstEditEndGroup
EvtLstEditEndGroup
Abschließen der Bearbeitung einer Gruppe im RecView
Details
- Name: Typ Beschreibung
- aEvt:
eventEreignisinformationen - aGroup:
handleDeskriptor der Gruppe - aRecBuf:
handleDeskriptor des Datensatzpuffers - aAbort:
logicAbbruch-Anforderung - aResult:
intEingabe-Resultat - Resultat:
logicWird nicht ausgewertet - Siehe: Liste , Objekte ,
EvtLstEditStartGroup,EvtLstEditStartItem,EvtLstEditEndItem, Ereignisbefehle , Beispiel , Ereignisabläufe RecView
Das Ereignis wird nach dem Ereignis EvtLstEditEndItem ausgelöst. Weiterhin wird es auch aufgerufen, wenn im Ereignis EvtLstEditStartGroup der Parameter aResult auf _WinRvwGroupEditAbort gesetzt wurde. Hier kann der Datensatz gespeichert oder entsperrt werden.
Definition des Funktionskopfes:
sub EvtLstEditEndGroup
(
aEvt : event; // Ereignis
aGroup : handle; // Gruppe
aRecBuf : handle; // Datensatzpuffer
aAbort : logic; // Abbruch-Anforderung
aResult : int; // Eingabe-Resultat
)
: logic; // Wird nicht ausgewertet
{
return(true);
}
aEvt
In diesem Parameter vom Typ event wird unter anderem der Deskriptor des auslösenden Objektes, d. h. das Objekt, in dem die Ereignisfunktion eingetragen wurde, übergeben.
aGroup
In diesem Parameter wird der Deskriptor der editierten Gruppe übergeben. Die Eigenschaften SelectorItem und SelectorSubItem sind entsprechend gesetzt, so dass das zu editierende Item identifiziert werden kann.
aRecBuf
Hier wird der Datensatzpuffer mit den aktuellen Feldinhalten des Datensatzes übergeben.
aAbort
Dieser Parameter gibt an, ob der Benutzer die Bearbeitung abbricht (true) oder nicht (false). Sofern Datenbankfelder im Ereignis EvtLstEditEndItem verändert wurden, sollten diese hier in die Datenbank übertragen werden und eine eventuell im Ereignis EvtLstEditStartGroup vorgenommene Datensatzsperre ebenfalls aufgehoben werden.
Wird ein Item verändert und mit oder
+
das nächste oder vorherige Item angesprungen, wird in jedem Fall
false übergeben, auch wenn im Ereignis EvtLstEditEndItem der Parameter aResult auf _WinRvwGroupEditAbort gesetzt wurde.
aResult
Dieser Parameter ist reserviert für zukünftige Erweiterungen und wird momentan nicht ausgewertet.
Resultat
Der Rückgabewert der Funktion wird nicht ausgewertet.
Beispiel:
sub EvtLstEditEndGroup
(
aEvt : event; // Ereignis
aGroup : handle; // Gruppe
aRecBuf : handle; // Datensatzpuffer
aAbort : logic; // Abbruch-Anforderung
aResult : int; // Eingabe-Resultat
)
: logic; // Wird nicht ausgewertet
{
// nur Abbruch -> Datensatz entsperren
if (aAbort)
aRecBuf->RecRead(0, _RecID | _RecUnlock | _RecNoLoad, aRecBuf->RecInfo(_RecID));
// Datensatz in der Datenbank ändern und RecView aktualisieren
else
{
aRecBuf->RecReplace(_RecUnlock);
aEvt:obj->WinRvwUpdate(_WinRvwUpdateFromTop | _WinRvwUpdateDoKeepSelect);
}
}