Hallo,
ich möchte mehrere DS aus verschiedenen Tabellen von einem Client auf einem Server synchronisieren und umgekehrt. Die Routinen zur Synchronisation sind soweit fertig und funktionieren auch. <br>
Mein Problem ist jetzt aber die Transaktionssteuerung. Sobald ein Fehler auftritt, will ich alle (auch erfolgreich) durchgeführten Änderungen (Insert, Update, Delete) rückgängig machen. <br>
Zur Zeit verwende ich dafuer die explizite Transaktionssteuerung durch BeginTrans und CommitTrans bzw. RollbackTrans. Natuerlich weis ich das dies nicht der optimale Weg ist. Leider habe ich es aber nicht geschafft den MTS soweit zu konfigurieren das er auch die erfolgreich durchgefuehrten Transaktionen rückgängig macht. <br>
<br>
Zum Testen habe ich versucht das Beispiel Projekt aus dem Kapitel 9.6 "Nested Transactions mit COM+" aus dem Buch "Ado und Delphi" anzupassen, da dies auch meine Rechnerkonfiguration (Sql-Server, three-tier, com+) wiederspiegelt. In dem Beispiel währe es dann so, das nach einem erfolgreichem Einfuegen eines Datensatzes und einem provoziertem SetAbort kein DS in der SQL DB existieren duerfte. <br>
<br>
Wie schaff ich das? Vielen Dank für eure Hife. <br>
Daniel Auth
ich möchte mehrere DS aus verschiedenen Tabellen von einem Client auf einem Server synchronisieren und umgekehrt. Die Routinen zur Synchronisation sind soweit fertig und funktionieren auch. <br>
Mein Problem ist jetzt aber die Transaktionssteuerung. Sobald ein Fehler auftritt, will ich alle (auch erfolgreich) durchgeführten Änderungen (Insert, Update, Delete) rückgängig machen. <br>
Zur Zeit verwende ich dafuer die explizite Transaktionssteuerung durch BeginTrans und CommitTrans bzw. RollbackTrans. Natuerlich weis ich das dies nicht der optimale Weg ist. Leider habe ich es aber nicht geschafft den MTS soweit zu konfigurieren das er auch die erfolgreich durchgefuehrten Transaktionen rückgängig macht. <br>
<br>
Zum Testen habe ich versucht das Beispiel Projekt aus dem Kapitel 9.6 "Nested Transactions mit COM+" aus dem Buch "Ado und Delphi" anzupassen, da dies auch meine Rechnerkonfiguration (Sql-Server, three-tier, com+) wiederspiegelt. In dem Beispiel währe es dann so, das nach einem erfolgreichem Einfuegen eines Datensatzes und einem provoziertem SetAbort kein DS in der SQL DB existieren duerfte. <br>
<br>
Wie schaff ich das? Vielen Dank für eure Hife. <br>
Daniel Auth
Comment