Répétez apres moi :J'aime PBAdonf. J'aime PBAdonf. J'aime PBAdonf.

Le forum (ô combien francophone) des utilisateurs de Powerbuilder.

Recherche rapide

Annonce

Certaines rubriques, dont des cours, sont uniquement visibles par les membres du forum ^^.
Dans la rubrique Liens & Références, vous avez accès à un sommaire de téléchargement, profitez-en !
Il existe maintenant un nouveau TOPIC "Votre CV en Ligne" accessible uniquement par demande.

#1 03-12-2008 09:18:30

Kyoshiro  
Membre Geek
Lieu: Montpellier
Date d'inscription: 24-11-2008
Messages: 59
Pépites: 52
Banque: 0

[RESOLU] Gestion des erreurs

Bonjour,

Je travaille sur une application Powerbuilder (v10.5.1). A un moment donné, j'appelle une procédure stockée de calcul (sur une base Oracle 10g) :

Code: pb

TRY
    SQLCA.of_calcul(...)
CATCH(...)
    ...
END TRY

Lorsque ma procédure de calcul génère une exception Oracle, comment puis je faire pour récupérer l'erreur? J'ai essayé avec TRY-CATCH mais rien n'y fait... des idées?

Merci beaucoup !

Dernière modification par Kyoshiro (03-12-2008 10:16:30)


Saying Java is good because it works on all operating systems is like saying anal sex is good because it works on all genders.

Hors ligne

 

#2 03-12-2008 09:45:19

Nephtis  
Bienfaiteur du site
Award: bf
Lieu: Longjumeau
Date d'inscription: 29-06-2007
Messages: 665
Pépites: 17,189,873,958
Banque: 9,223,372,036,854,776,000

Re: [RESOLU] Gestion des erreurs

Salut,

En fonction du code retour de ta procédure stockée tu peut determiner si elle s'est bien déroulée ou pas : SQLCA.SQLCode

AutoCommit    Boolean    The automatic commit indicator (SQL Server only). Values are:·    True — Commit automatically after every database activity·    False — Do not commit automatically after every database activity
Database    String    The name of the database with which you are connecting.
DBMS    String    PowerBuilder vendor identifier.
DBParm    String    DBMS-specific parameters.
DBPass    String    The password that will be used to connect to the database.
Lock    String    The isolation level.
LogID    String    The name or ID of the user who will log on to the server.
LogPass    String    The password that will be used to log on to the server.
ServerName    String    The name of the server on which the database resides.
SQLCode    Long    The success or failure code of the most recent operation. Return codes:    0 — Success100 — Not found  -1 — Error (use SQLDBCode or SQLErrText to obtain the details)
SQLDBCode    Long    The database vendor's error code.
SQLErrText    String    The database vendor's error message.
SQLNRows    Long    The number of rows affected (the database vendor supplies this number, so the meaning may not be the same in every DBMS).
SQLReturnData    String    DBMS-specific information.
UserID    String    The name or ID of the user who will connect to the database.

C'est un début

Dernière modification par Nephtis (03-12-2008 09:46:16)


Qui sème des problèmes, récolte des réponses.
PB 6.5 || ASE 12.5.4 || XP SP3

Hors ligne

 

#3 03-12-2008 09:50:23

hellkinder  
Kinder Surprise
Award: chocomordutk6
Lieu: Bordeaux
Date d'inscription: 12-09-2006
Messages: 902
Pépites: 0
Banque: 10,524,230,367,490

Re: [RESOLU] Gestion des erreurs

Code: pb

if SQLCA.SQLCODE<>0 then
  messagebox("Message SQL",SQLCA.SQLErrText, stopsign!)
end if

http://img510.imageshack.us/img510/4229/userbar1204625572ha9.gif
"Pour la première fois dans l'histoire de l'humanité, tous les peuples de la Terre ne forment qu'un"

Hors ligne

 

#4 03-12-2008 10:16:10

Kyoshiro  
Membre Geek
Lieu: Montpellier
Date d'inscription: 24-11-2008
Messages: 59
Pépites: 52
Banque: 0

Re: [RESOLU] Gestion des erreurs

Effectivement, c'est bien le SQLCode qu'il fallait regarder pour avoir le code erreur... En fait je me suis rendu compte que c'était deja implémenté mais que j'étais pas allé assez loin en mode "DEBUG" pour tomber sur le SQLCode=-1.

Merci a tous !


Saying Java is good because it works on all operating systems is like saying anal sex is good because it works on all genders.

Hors ligne

 

Pied de page des forums

Propulsé par FluxBB 1.2.22