histoire courte:
Essayez avec Delphi XE ... pour mon projet principal aujourd'hui cette résolu le bug.
longue histoire:
je fait face au même problème que vous avez avec 3 ou plusieurs niveaux de jeux de données imbriquées quand il y a une erreur sur le côté de la base de données avec Delphi 2010.
La précédente dernière version I fortement J'ai utilisé Delphi 2007 sans problèmes, donc il y a une chance que le mauvais comportement ait été introduit dans Delphi 2009 ou Delphi 2010.
J'ai remonté ce problème à midas.dll côté client, et cela arrive peu importe si vous êtes reliant statiquement Midas en utilisant MidasLib. Midas "pense" que le paquet qu'il reçoit du serveur est mal formé, et déclenche l'exception. Cette exception casse le processus de réconciliation d'erreur "normal", donc il n'y a aucun moyen d'essayer de récupérer à partir d'une erreur: OnReconcileError ne déclenche jamais et le processus est annulé en raison de l'absence de blocs try/except dans cette partie de la VCL.
Je suis sûr que c'était un bug, mais pas si cela se produit sur le serveur ou sur le côté client, Lorsque je travaillais à produire un projet pour mettre un ticket de support, tout en essayant de le réduire au minimum , il arrive Delphi XE a été libéré et je suis sous SA, donc je l'obtiens à la dernière minute.
Télécharger, installer, configurer ... puis, j'ai compilé mon pour soutenir le projet et tout a bien fonctionné. J'ai compilé mon projet principal: celui où j'étais confronté à de réels problèmes avec les utilisateurs et le fait que j'utilise des exceptions dans les déclencheurs de bases de données et les procédures stockées en raison des dernières validations ou changements d'état/condition. Tout a bien fonctionné. L'utilisateur reçoit des messages d'erreur significatifs et l'application a récupéré sa capacité à effectuer des transformations de données et à réessayer à la volée, ou à demander à l'utilisateur quoi faire dans certaines circonstances.
Désolé,, je n'ai trouvé aucune solution de contournement lors de mes efforts pour diagnostiquer et signaler ce problème à Embarcadero, peut-être que quelqu'un d'autre peut vous aider à mieux sans suggérer de mise à niveau.
Voir le message de jachguate. –