property PageObjectEditTransactionStatus: TPdfPageObjectEditTransactionStatus; // read only
type TPdfPageObjectEditTransactionStatus = record
Active: Boolean;
Dirty: Boolean;
PageNumber: Integer;
MutationCount: Integer;
ContentGenerationCount: Integer;
end;
| Active | True između BeginPageObjectEditTransaction i odgovarajuće potvrde ili vraćanja |
| Dirty | True kada je bar jedna mutacija izvršena unutar transakcije |
| PageNumber | Stranica, čiji broj počinje od 1, na koju je transakcija bila vezana pri početku |
| MutationCount | Zabeleženi uspešni pozivi UpdatePage unutar transakcije |
| ContentGenerationCount | Generisanja sadržaja izvršena pri potvrdi transakcija sa izmenama |
Transakcija izmena objekata stranice odlaže izvorno generisanje sadržaja tako da se mutacije ubacivanja, uklanjanja, transformacije, svojstava, content-mark oznaka i izgleda anotacija primene kao jedna atomska operacija obuhvaćena stranicom. Ovo svojstvo izlaže njeno trenutno stanje za provere i dijagnostiku
MutationCount napreduje sa svakom uspelom odloženom mutacijom, a svaka takva mutacija takođe poništava keševe stranice tako da nijedan zastareli render, snimak ili thumbnail ne preživi izmenu
Potvrda transakcije sa izmenama jednom regeneriše sadržaj stranice i povećava ContentGenerationCount. Potvrda transakcije bez izmena ili vraćanje na početno stanje obnavlja bazu bez generisanja
Potvrda i vraćanje brišu Active i Dirty, ali ostavljaju PageNumber i oba brojača kao konačnu dijagnostiku dok sledeća transakcija ne počne i ne resetuje ih
Van transakcije svako polje drži svoju podrazumevanu vrednost, tako da je Active = False pouzdana provera mirovanja
Status pokriva samo transakcije objekata stranice; transakcije na nivou dokumenta otvorene sa BeginEditTransaction prijavljuje dnevnik izmena
Pdf.BeginPageObjectEditTransaction;
try
Pdf.TransformPageObject(0, Matrix);
Status := Pdf.PageObjectEditTransactionStatus;
LogTransactionProgress(Status.MutationCount, Status.Dirty);
Pdf.CommitPageObjectEditTransaction;
except
if Pdf.PageObjectEditTransactionStatus.Active then
Pdf.RollbackPageObjectEditTransaction;
raise;
end;