Le forum (ô combien francophone) des utilisateurs de Powerbuilder.
Bonjour à tous !
Comment puis-je récupérer par TRY - CATCH les erreurs de bases de données, les identifier et afficher un message plutôt compréhensible à l'utilisateur ?
Je m'explique :
L'utilisateur insère un doublon dans un champ indexé : fo que je connaisse par exemple le numéro l'erreur qui s'affiche affin d'afficher un message particulier.
Merci !
Hors ligne
bon, je ne connais pas trop le systeme du TRY CATCH, vu que je suis sur pb7...
mais y a toujours moyen...de faire autrement.
premierement, c'est une erreur qui proviendrait de la Datawindow ? ou d'une procédure stockée ?
Sinon, pour ca !
pour l'histoire du doublon...
Dans un evenement 'Avant_Enregistrer', tu fais le controle de validation.
et tu mets tes messages d'erreurs en fonction de cela...
si tout se passe bien, tu passes alors à l'update.
sinon, un simple Return.
Enfin, c'est comme cela qu'on procède...
soit le controle est fait dans un evenement powerbuilder, soit carrement dans la procédure stockée de création ou de mise à jour.
A+
Hors ligne
En fait, j'ai enrichi une datawindow controle, je lui ai associé un évènement de validation, et est triggé juste avant l'update, et ça marche.
Mais comparativement à Delphi par exemple, y a moyen de gérer une érreur qu'envoie le SGBD et afficher un message compréhensible par le user. Je sais pas si les gens de Sybase n'ont pas pensé dans ce sens !
Bien, merci beaucoup.
Hors ligne
Bonjour,
On peux intercepter les messages d'erreur de SGBD dans l'événement dberror de la DW.
Ici on peux récupérer le code d'erreur (sqldbcode) et les messages en Anglais.
Fais "return 1" pour empêcher PB d'afficher les messages d'origine et traite l'erreur avec ton propre message.
(programme ce traitement dans l'ancêtre de la DW)
A+
Hors ligne
Magnifique, c'est ce genre de chose que j'apprécie !!
J'y vais de ce pas essaier ce que tu m'a montré !
Hors ligne