FireDAC.Comp.DataSet.TFDDataSet.SavePoint

De RAD Studio API Documentation
Aller à : navigation, rechercher

Delphi

property SavePoint: Int64 read GetSavePoint write SetSavePoint;

C++

__property __int64 SavePoint = {read=GetSavePoint, write=SetSavePoint};

Propriétés

Type Visibilité  Source Unité  Parent
property public
FireDAC.Comp.DataSet.pas
FireDAC.Comp.DataSet.hpp
FireDAC.Comp.DataSet TFDDataSet

Description

Obtient/définit le numéro de version du journal des modifications.

Utilisez SavePoint pour obtenir le numéro de version du journal des modifications. Vous pouvez ainsi revenir au journal de modifications associé à un numéro de version spécifié. SavePoint peut seulement être utilisé dans le mode CachedUpdates. SavePoint peut être utile pour les applications qui utilisent :

  • La fonctionnalité annuler (bien qu'il n'y ait pas de fonctionnalité standard pour implémenter l'action annuler).
  • Des transactions en mémoire.

Les ensembles de données ne peuvent pas renvoyer un SavePoint quand le journal des modifications est revenu à un état précédent. Cela inclut :

  • L'annulation des modifications en définissant SavePoint sur une valeur préalablement enregistrée.
  • L'annulation de nombreuses modifications en utilisant la méthode RevertRecord.
  • L'effacement du journal des modifications en utilisant CancelUpdates ou CommitUpdates.

Tenter de définir SavePoint sur un état qui n'est plus disponible dans le journal des modifications déclenche une exception.

Exemple

 
 var
   iSavePoint: Integer;
 ....
   // remember changes log state
   iSavePoint := FDMemTable1.SavePoint;
   try
     FDMemTable1.AppendRecord(....);
     FDMemTable1.AppendRecord(....);
     FDMemTable1.AppendRecord(....);
     ...
     FDMemTable1.Delete;
     // mark changes as persistent and clear change log
     FDMemTable1.CommitUpdates;
   except
     // in case of exception, undo changes
     FDMemTable1.SavePoint := iSavePoint;
     raise;
   end;

Voir aussi