Fil d’Ariane du forum – Vous êtes ici :ForumForums techniques: AS/400Les points d'exit
Vous devez vous identifier pour créer des messages et des sujets.

Les points d'exit

Je viens de découvrir que la plus part de mes problèmes sont dus à mon ignorance des points d'exit et particulièrement le point d'exit QIBM_QCA_CHG_COMMAND.
J'aimerais bien pouvoir les maitriser...

A L'AIDE 😮

Et en français si c'est possible.

Et Babelfish alors ?

Citation de Philippe

Et Babelfish alors ?

Avec Babelfish je n'ai pas pu avancer. Il me faut un bon exemple simple et en français (qui chante la marseillaise si possible).

Personne au forum n'a utilisé les points d'exit ?

Voici un exemple en français

**************************************************************************
* Exit Point QIBM_QCA_CHG_COMMAND
*
* L'exit point envoi 3 Paramètres
*
* - Paramètre 1
*
* ****************************************************************************************************************
* * Descriptif * Input/Output * Valeur * Type & longueur *
* ****************************************************************************************************************
* * Nom de l'exit point * Input * QIBM_QCA_CHG_COMMAND * 20 Alpha *
* * Format de l'exit point * Input * CHGC0100 * 8 Alpha *
* * Nom de la commande * Input * * 10 Alpha *
* * Bibliothèque de la commande * Input * * 10 Alpha *
* * Commande modifiable * Input * 0=Non Modifiable * 1 Alpha *
* * * * 1=Modifiabl * *
* * Prompt(F4) sur la commande * Input * 0=Non promptée * 1 Alpha *
* * * * 1=prompté * *
* * Reservé * Input * * 2 Alpha *
* * Offset de début de la chaîne de commande * Input * * 4 Binaire *
* * Longueur de la chaîne de commande * Input * * 4 Binaire *
* * Chaîne de commande * Input * * Alpha lg *
* * * * * variable *
* ****************************************************************************************************************
*
* - Paramètre 2
*
* ****************************************************************************************************************
* * Descriptif * Input/Output * Valeur * Type & longueur *
* ****************************************************************************************************************
* * Chaîne de remplacement de commande * Output * * Alpha lg *
* * * * * variable *
* ****************************************************************************************************************
*
* - Paramètre 3
*
* ****************************************************************************************************************
* * Descriptif * Input/Output * Valeur * Type & longueur *
* ****************************************************************************************************************
* * Longueur de la chaîne de remplacement de commande * Output * * 4 binare *
* ****************************************************************************************************************
*
* Incription du programme sur l'exit point (à faire pour chaque commande)
*
* Exemple sur la commande CRTOBJPHL
*
* ADDEXITPGM EXITPNT(QIBM_QCA_CHG_COMMAND) +
* FORMAT(CHGC0100) +
* PGMNBR(*LOW) +
* PGM(PHLSOFT/PW_CCMDFT) +
* PGMDTA(*JOB 20 'CRTOBJPHL PHLSOFT')
*
param1 ds 32767
Exit_point_Name...
20
Exit_point_Format...
8
Command_Name 10
Library_Name 10
D Change N
D prompt N
D 2
D Offset 9B 0
D Command_length 9B 0
D command_string 32700

Dparam2 ds
Dreplace_command_string...
D 32700

Dparam3 ds
Dreplace_command_string_length...
D 9B 0
*** Variable de travail
DCMD S 32700 varying

C *entry plist
C parm param1
C parm param2
C parm param3

*** Exemple placer une valeur dans le paramètre TGTRLS dela commande SAVLIB
*** si celle ci n'est pas indiquée
C if change and Command_Name='SAVLIB'

C eval cmd=%subst(param1:offset+1:command_length)
C if %scan('TGTRLS(':cmd)=0
C eval cmd=cmd+' TGTRLS(*PRV)'
C endif

C eval replace_command_string=cmd
C eval replace_command_string_length=%len(cmd)
C endif
C eval *inlr=*on