Datasnap.Provider.TBaseProvider.BeforeUpdateRecord
Delphi
property BeforeUpdateRecord: TBeforeUpdateRecordEvent read FBeforeUpdateRecord write FBeforeUpdateRecord;
C++
__property TBeforeUpdateRecordEvent BeforeUpdateRecord = {read=FBeforeUpdateRecord, write=FBeforeUpdateRecord};
Eigenschaften
Typ | Sichtbarkeit | Quelle | Unit | Übergeordnet |
---|---|---|---|---|
event | public | Datasnap.Provider.pas Datasnap.Provider.hpp |
Datasnap.Provider | TBaseProvider |
Beschreibung
Wird ausgelöst, bevor ein geänderter Datensatz in die Remote-Datenmenge eingetragen wird.
In einer Ereignisbehandlungsroutine für BeforeUpdateRecord führen Sie die folgenden Operationen durch:
Bevor ein geänderter Datensatz an die Datenmenge oder den Datenbankserver gesendet wird, können Sie beispielsweise weitere Änderungen in den Datensatz einfügen oder bestimmte Aktualisierungen verhindern. Sie können auch mit Hilfe der Eigenschaft ProviderFlags der Felder im Parameter DeltaDS festlegen, wie der Provider die zu aktualisierenden oder zu ändernden Datensätze behandeln soll und welche Felder aktualisiert werden sollen.
Sie können Aktualisierungen, die der Provider nicht ausführen kann, manuell vornehmen. Der Provider kann beispielsweise keine SQL-Anweisungen erzeugen, wenn die Daten aus mehreren verbundenen Tabellen stammen, von denen mehr als eine aktualisiert werden muss. Nehmen Sie in diesem Fall die Aktualisierung in der Ereignisbehandlungsroutine vor und setzen Sie den Parameter Applied auf true, sodass der Provider keinen Fehler generiert.
Sie können bestimmte Aktualisierungen selektiv verhindern. Indem Sie den Parameter Applied auf true setzen, wird die Standardaktualisierung nicht ausgeführt. Bei dieser Vorgehensweise generiert der Provider keinen Aktualisierungsfehler.
BeforeUpdateRecord ist des Typs TBeforeUpdateRecordEvent.