Ich habe eine procedure in einem Programm, die unter 10.2 völlig problemlos läuft (es wird beim Klick auf einen Button aus einem DBgrid ein DBKey ausgelesen und diesem Eintrag im Grid dann eine andere Farbe gegeben und das in der zugehörigen
DB (Firebird mit IBDAC) gesichert):
if (DBPlanner1.Items.Selected.DBKey<>'') then
begin
laufendenr:=DBPlanner1.Items.Selected.DBKey;
with DM1.DataModule1.IBPlanungSQL do
begin
Close;
SQL.Clear;
SQL.Add('UPDATE PLANUNG SET ');
SQL.Add('ITEMCOLOR = :ITEMCOLOR, ERLEDIGT = :ERLEDIGT ');
SQL.Add('WHERE ITEMKEY = :OLD_ITEMKEY');
Params[0].Value:=7;
Params[1].Value:='T';
Params[2].Value:=laufendenr;
ExecQuery;
Close;
end;
DM1.DataModule1.IBTransaction1.CommitRetaining;
DBPlanner1.Refresh;
end
else
begin
ShowMessage('Bitte einen Termin markieren!');
end;
Wenn ich mein Programm nun unter 10.3.3 kompiliere (ohne Fehler), starte (völlig problemlos) und diesen Button betätige, wird das Programm geschlosssen! Die Datenänderung wird aber vorher noch in der
DB gesichert! Ich habe auch schon das DBPlanner1.Refresh ausgeschaltet - es schliesst sich trotzdem.
Die genutzten Komponenten sind die gleichen wie in 10.2 und aktuell (IBDAC und TMS DBAdvGrid). Es gibt keine Fehlermeldung...wie komme ich da an das Problem heran???
Hartmut