Gestion des exceptions

richarddum Messages postés 54 Date d'inscription jeudi 22 avril 2004 Statut Membre Dernière intervention 20 décembre 2005 - 19 déc. 2005 à 22:47
richarddum Messages postés 54 Date d'inscription jeudi 22 avril 2004 Statut Membre Dernière intervention 20 décembre 2005 - 20 déc. 2005 à 19:55
bonjour,

Est-il possible de récupérer précisément une exception ?

Je prends l'exemple d'une exception EdatabaseError, j'aimerais avoir une identification précise de l'erreur pour pouvoir la traiter différement (faire telle action si erreur d'enregistrement, ou telle autre action si l'élément inserer existe déjà).

actuellement avec le TRY, je récupère un message, mais si j'avais un identifiant unique je serais sur du traitement.

try
...
except
on E: EDatabaseError do showmessage(... + E.message);
end;

Merci

2 réponses

vaughan Messages postés 198 Date d'inscription mardi 6 août 2002 Statut Membre Dernière intervention 29 octobre 2008
20 déc. 2005 à 14:47
Il te suffi de crréer un ETonDatabaseError = Class(EDatabaseError) et de surcharger la méthode message et dans la methode message d'analyser la valeur du message standard


Avec Oracle par exemple :


ORA-00900: invalid SQL statement a transformer par Code sql erroné ... il te suffi de tester la chaine ORA-00900 dans mon exemple.

vaughan
0
richarddum Messages postés 54 Date d'inscription jeudi 22 avril 2004 Statut Membre Dernière intervention 20 décembre 2005
20 déc. 2005 à 19:55
Merci,

Mais j'utilise pas ORACLE, et comme je travaille sur une application multilingue, je suis pas sûr du résultat.
0
Rejoignez-nous