![]() |
Datenbank: Firebird • Version: 2.5 • Zugriff über: FireDAC
InTransaction explizit gesetzt?
Hallo,
in meiner Anwendung hab' ich das Problem, dass ich irgendwo prüfe ob "InTransaction" einer FDConnection true ist und dann eine Exception werfe. (das ist ja genau genommen FireDAC.Comp.Client.TFDCustomConnection.InTransact ion) Ich weiß auch welchen anderen Menüpunkt ich vorher in meiner Anwendung aufrufen muss um das zu triggern, weiß aber nicht warum InTransaction auf true get. Alle Stellen wo ich StartTransaction aufrufe und die da plausiblerweise reinspucken könnten sind mit einem Breakpoint versehen und keiner dieser Breakpoints wird erreicht. Gibt's noch irgendwas anderes, als das was die F1 Hilfe beschreibt, was InTransaction auf true setzt? Grüße TurboMagic |
AW: InTransaction explizit gesetzt?
Durchsuche mal die FireDAC-Quellen, ob darin irgendwo ein Aufruf von .StartTransaction erfolgt.
|
AW: InTransaction explizit gesetzt?
Hallo,
sollte nicht jedes einfache Open eine Transaktion starten, wenn keine explizite Transaktion gestartet wurde. Bei IBDAC benutze ich den DBMonitor, dort würde man das sehen. ![]() |
AW: InTransaction explizit gesetzt?
Ich habe Debug DCUs = true eingestellt und in StartTransaction in FireDAC einen breakpoint gesetzt.
Nur wird der nirgends erreicht :( Keine Ahnung wie ich rausfinden soll, welche FDQuery das verursacht. Habe mal auf gut Glück eine solche Query vorher geschlossen, hat aber nix gebracht. |
AW: InTransaction explizit gesetzt?
Sicher dass die Debuginfos beim Debuggen vom Debugger auch richtig geladen werden?
Hatte auch vor Kurzem so ein Problem.
Delphi-Quellcode:
oder
DebugBreak;
Delphi-Quellcode:
gingen, aber F5 nicht.
asm int 3 end;
Wenn du weißt welche Variable intern den Status für .InTransaction speichert, könnte man auch mit einem Speicherhaltepunkt auf dessen Änderung reagieren. |
AW: InTransaction explizit gesetzt?
An irgend einer anderen Stelle im Programm hat er den Breakpoint erreicht.
|
AW: InTransaction explizit gesetzt?
Zitat:
Könnte es eventuell möglich sein, das die Connection selbst schon 'ne Transaktion startet, um z. B. Systeminfos aus der Datenbank zu holen? Schonmal in die ![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:31 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz