Hallo,
bin etwas verunsichert, weil ich schon seit Jahren den
SQL-Befehl "StartTransaction" benutze und seid kurzem, auch in diesem Forum, gelesen habe "Ein StartTransaction macht man prinzipiell vor dem Einfügen der Daten". Ich mache es hinterher, wie auf dem Bespiel unten. Wie ist es dann richtig.
Delphi-Quellcode:
begin
DatamoduleAuftrag.DataModule2.IBDataSetGridAuftrag.Locate('ID', LabelID.Caption, []);
DatamoduleAnwenderHistorie.DataModule7.IBDatabaseAnwenderHistorie.Open;
DatamoduleAnwenderHistorie.DataModule7.IBDataSetAnwenderHistorie.Open;
DatamoduleAnwenderHistorie.DataModule7.IBDataSetAnwenderHistorie.Append;
DatamoduleAnwenderHistorie.DataModule7.IBDataSetAnwenderHistorieID.AsInteger := 1;
DatamoduleAnwenderHistorie.DataModule7.IBDataSetAnwenderHistorieDATUM.Value := Date;
DatamoduleAnwenderHistorie.DataModule7.IBDataSetAnwenderHistorieANWENDER.AsString := Anwender;
DatamoduleAnwenderHistorie.DataModule7.IBDataSetAnwenderHistorieID_AUFTRAG.AsInteger := StrToInt(LabelID.Caption);
DatamoduleAnwenderHistorie.DataModule7.IBDataSetAnwenderHistorie.Post;
if DatamoduleAnwenderHistorie.DataModule7.IBTransactionAnwenderHistorie.InTransaction then DatamoduleAnwenderHistorie.DataModule7.IBTransactionAnwenderHistorie.Commit;
DatamoduleAnwenderHistorie.DataModule7.IBDatabaseAnwenderHistorie.Open;
DatamoduleAnwenderHistorie.DataModule7.IBTransactionAnwenderHistorie.StartTransaction;
DatamoduleAnwenderHistorie.DataModule7.IBDatabaseAnwenderHistorie.Close;
end
Danke, Luckner