Hallo,
du solltest mal unsere Vorschläge beachten.
In UKunden1 gibt es zwar eine IBTransaction1,
sie wird aber nicht benutzt (StartTransaction/Commit).
D.h. die Daten sind Teil einer Transaktion.
die erst mit dem
DB-Close commited werden.
Deshalb kann sie auch IBExpert erst nach Programm-Ende "sehen".
ein Bsp.
dein Code
Delphi-Quellcode:
procedure TFKundenverwaltung.Button3Click(Sender: TObject);
begin
k:=k2;
k.KdNr:=NextFreeKdNr;
SetKunde(k);
if FKundenbearbeiten.ShowModal=mrOK then
begin
DS_Kunden.Insert;
SetKundeToDS(GetKunde);
DS_Kunden.Post;
end;
end;
und nun mit Transaktionsverwaltung
Delphi-Quellcode:
procedure TFKundenverwaltung.Button3Click(Sender: TObject);
begin
k:=k2;
k.KdNr:=NextFreeKdNr;
SetKunde(k);
if FKundenbearbeiten.ShowModal=mrOK then
begin
Kunden.Transaction.StartTransaction; // IBTransaction1.StartTransaction ist hier das gleiche
DS_Kunden.Insert;
SetKundeToDS(GetKunde);
DS_Kunden.Post;
Kunden.Transaction.Commit;
end;
end;
Hieko