RDP debugger une procédure stockée

RPG (3 et 4, free), CL, SQL, etc...
Répondre
BrigitteG
Messages : 109
Enregistré le : jeu. 20 sept. 2012, 08:56:38

RDP debugger une procédure stockée

Message par BrigitteG »

Bonjour,

J'aimerai savoir s'il est possible de debugger une procédure stockée à partir de RDP ?

Si oui, comment ?

Merci d'avance pour votre réponse

cmasse
Site Admin
Messages : 813
Enregistré le : mer. 14 févr. 2007, 18:00:03
Localisation : Nantes
Contact :

debug

Message par cmasse »

Oui, bien sûr.

il faut sous RDI/RDP faire un clic droit sur le pgm -> deboggage(point d'entrée de service) -> définir un point d'entrée de service.


un point d'entrée de service est un couple un user/un pgm(si ce pgm est lancé par cet utilisateur, JE debug)

il faut donc modifier le point d'entrée de service de façon à indiquer le profil qui indirectement lance le pgm, puis ... lancer la procédure.
Christian Massé (Volubis.fr)

BrigitteG
Messages : 109
Enregistré le : jeu. 20 sept. 2012, 08:56:38

RDP procédure stockée

Message par BrigitteG »

Merci pour votre aide,

1er cas : la procédure stockée a été créée à partir d'opération navigator (exécution d'un script : create procédure...).
Je trouve bien l'objet et en faisant deboggage(point d'entrée de service).

j'ai un message qui me dit que la procédure stockée ne contient pas de données de débogage.

Ce qui est logique puisque ce n'est pas un programme et donc pas compilé.

2ème cas : la procédure stockée a été créée dans un fichier source QSQLSRC. je fais "Lancer des instructions SQL (RUNSQLSTM)" ce qui ne correspond pas non plus à une compile.

Dans ce cas j'ai le message qui me dit "programme introuvable".


Je dois rater quelque chose au niveau des procédures stockées pour pouvoir les déboguer, mais quoi ?

cmasse
Site Admin
Messages : 813
Enregistré le : mer. 14 févr. 2007, 18:00:03
Localisation : Nantes
Contact :

procédure cataloguée et pgm

Message par cmasse »

Une procédure cataloguée correspond toujours à un exécutable sur IBM i.
  • - Soit elle est externe, et vous faites référence à un exécutable déjà compilé
    - Soit elle est SQL et une compilation a lieu à la volée (d'ailleurs regardez dans QTEMP il y a des fichiers sources temporaires contenant du C)
Maintenant vous avez le choix du type :
PROGRAM TYPE MAIN (défaut) = création d'un programme
PROGRAM TYPE SUB (nouveauté) = création d'un programme de service

Enfin, si la procédure est SQL, comme c'est SQL qui compile,vous pouvez indiquer :
  • SET OPTION DBGVIEW = *SOURCE, et vous pourrez utiliser le debuger standard (STRDBG ou RDP)
    ALLOW DEBUG MODE, et vous pourrez debuger avec le debuger SQL accessible depuis le gestionnaire de script de system i navigator
Voyez le détail du CREATE PROCEDURE http://pic.dhe.ibm.com/infocenter/iseri ... crtpsf.htm
Christian Massé (Volubis.fr)

Répondre