Mir ist noch etwas aufgefallen:
Ich arbeite wie gesagt ohne die Feldobjekte.
Zum testen habe ich bei AfterIinsert den Wert 1000 übergeben.
Bei OnBeforePost habe ich die 1000.
Nach dem Post wird die 1000 durch den Generatorwert überschrieben über den Trigger in der
DB.
Das bedeutet, die
Query senden den vorbelegten PK nicht zur
DB.
Delphi-Quellcode:
procedure Tfr1.qrBankdatenSchulungAfterInsert(DataSet: TDataSet);
begin
qrBankdatenSchulung.FieldByName('BANKDATENSCHULUNGENID').AsInteger := 1000;
end;
Delphi-Quellcode:
CREATE OR ALTER trigger bankdatenschulungen_bi for bankdatenschulungen
active before insert position 0
as
begin
if (new.bankdatenschulungenid is null) then
new.bankdatenschulungenid = gen_id(gen_bankdatenschulungen_id,1);
end