FIBPlus und TMS AdvDBLookupComboBox - Wo ist der Bug?

31/01/2008 - 03:09 von Martin Specht | Report spam
Hallo zusammen,

hier habe ich mal wieder ein kniffeliges Problem, vielleicht kann
jemand helfen. Hier die Einsatzumgebung:

FIBPlus 6.8.424 (Trial)
TMS Components Jan 2008
Delphi 2007 / Codegear RAD Sudio 2007 mit Dezember Update
Firebird 2.0.x

Auf einem Form habe ich:
- FIBDatabase
- FIBTransaction
- FIBDataSet
- Datasource
- AdvDBLookupCombobox

Alle Komponenten sinnvoll miteinander verknüpfen,
und auch die FIBPlus-Automatismen (DB open,
Autostart Transaction, ...) auf Standard. Das
Programm làuft problemlos. Nun möchte ich mich
allerdings um die Transaktionssteuerung selber
kümmern, auch das öffnen des DataSets möchte
ich selber steuern, also habe ich folgende Ereigniss-
Routinen hinzugefügt:

procedure TAppForm.FormShow(Sender: TObject);
begin
pFIBTransaction1.StartTransaction;
pFIBDataSet1.Open;
end;

procedure TAppForm.FormClose(Sender: TObject; var Action:
TCloseAction);
begin
pFIBDataSet1.Close;
pFIBTransaction1.Commit;
end;

Jetzt stürzt das Programm mit einer EAccessViolation
Excepion ab. Mit der Codegear DBLookUpComboBox
gibt es das Problem nicht. Die Exception wird von der
FIBCacheManage.pas ausgelöst, da ich aber nur die
Trial-Version habe, kann ich dort nicht genauer nach-
schauen.

Hat jemand eine Lösung? Oder nutzt auch FIBPlus in
Verbindung mit den TMS Komponenten?

Grüße
Martin
 

Lesen sie die antworten

#1 Martin Specht
31/01/2008 - 03:43 | Warnen spam
Wenn man die TMS Komponente vor dem Schließen
des Datasets "tötet", dann stürzt das Programm nicht ab...
...

procedure TAppForm.FormClose(Sender: TObject; var Action:
TCloseAction);
begin
AdvDBLookupComboBox1.Destroy;
pFIBDataSet1.Close;
pFIBTransaction1.Commit;
end;

Ähnliche fragen