[Résolu]Pb avec passage de paramètres entre CL et RPGLE

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

[Résolu]Pb avec passage de paramètres entre CL et RPGLE

Message par BrigitteG »

Bonjour,

Depuis une procédure stockée j'appelle un CL qui va soumettre un rpgle.

Paramètre de la procédure stockée
Parm1 char(4) 'S999'
Parm2 char(50) 'Racial'
Parm3 char(50) 'mail@ok.fr'
Parm4 char(20000) 'select * from'
Parm5 char(500) ' '

Paramètre CL
Parm1 char(4)
Parm2 char(50)
Parm3 char(50)
Parm4 char(20000)
Parm5 char(500)

Le passage des données de la procédure stockée au CL se passe bien.

Le cl appel le rpgle avec la cmd SBMJOB

SBMJOB CMD(CALL PGM(EXECRSBM) PARM(&parm1 &parm2 +
&parm3 &parm4)) JOB(EXECSBM) LOG(*JOBD +
*JOBD *SECLVL) LOGCLPGM(*YES)

Paramètre RPGLE
DCL-PI *N;
Parm1 CHAR(4);
Parm2 CHAR(50);
Parm3 CHAR(50);
Parm4 CHAR(20000);
End-Pi;

Les valeurs dans les paramètres

Parm1 S999
Parm2 Racial mail@ok.fr
Parm3 mail@ok.fr select * from…
Parm4 select * from… Racial mail…

Les paramètres ont bien la même longueur mais contiennent des parties des autres paramètres et je ne comprends pas pourquoi.

Avez-vous déjà rencontré ce problème et comment le solutionner ?

Merci pour votre aide
Modifié en dernier par BrigitteG le mer. 01 févr. 2023, 11:49:40, modifié 1 fois.

aapra
Messages : 6
Enregistré le : mer. 17 août 2022, 17:08:48

Re: Pb avec passage de paramètres entre CL et RPGLE

Message par aapra »

Hello,

"Le passage des données de la procédure stockée au CL se passe bien." => C'est sûr à 100 % ?
J'obtiens le même résultat en appelant le CL avec les valeurs en dur. :?

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

Re: Pb avec passage de paramètres entre CL et RPGLE

Message par BrigitteG »

Bonjour Aapra,
Oui c'est sur à 100%.
Si j'appelle le pgm rpgle en direct call pgm(RPGLE) parm('S999' 'Racial' 'mail@ok.fr' 'select * from...') j'ai le même problème.
Ce problème est apparu avec une version mais je ne sais plus laquelle. (Nous sommes en V7r4)
Je vois bien une solution en passant par des variables intermédiaire qui seront chargées par du blanc.
Mais je me demande s'il n'y a pas une meilleurs solution.

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

Re: Pb avec passage de paramètres entre CL et RPGLE

Message par BrigitteG »

Après installation des dernières ptf de la v7r4

La solution est de mettre dans la call la longueur de chaque paramètre.

Marotti
Messages : 1
Enregistré le : lun. 27 févr. 2023, 18:57:40

Re: [Résolu]Pb avec passage de paramètres entre CL et RPGLE

Message par Marotti »

Bonjour,

Il est effectivement important de spécifier la longueur de chaque paramètre dans une procédure lors de l'appel de celle-ci. Cela permet de s'assurer que les données envoyées à la procédure sont correctement interprétées. Sans la spécification de la longueur des paramètres, la procédure risque de recevoir des données tronquées ou mal formatées, ce qui peut causer des erreurs de traitement.
Mon site : captaincaz.org

Georgesnott
Messages : 3
Enregistré le : lun. 05 févr. 2024, 21:53:16
Localisation : Russia
Contact :

Optimisation des performances d'un programme RPGLE.

Message par Georgesnott »

Je suis confronté à des problèmes de performances dans mon programme RPGLE et je souhaite l'optimiser. Quelles sont les meilleures pratiques et techniques que je peux utiliser pour améliorer les performances de mon programme ? J'aimerais également savoir s'il existe des outils ou des méthodes spécifiques pour mesurer et analyser les performances d'un programme RPGLE. Merci d'avance pour vos conseils et suggestions.
ограничители перенапряжения опн https://energy-21.ru/katalog/opn/catego ... niya-35-kv опн 110

Répondre