*=========== définition des paramètres recus ========================= Ddata DS D fichier 10 D biblio 10 D membre 10 D evenem 1 D moment 1 D niv_verrou 1 D filler1 3 D ccsid 9B 0 D filler2 8 * enregistrement avant déplacement et longueur D dep_enrav 9B 0 D lg_enrav 9B 0 * description enregistrement avant déplacement et longueur D dep_desav 9B 0 D lg_desav 9B 0 * enregistrement après (idem) D dep_enrap 9B 0 D lg_enrap 9B 0 D dep_desap 9B 0 D lg_desap 9B 0 D filler3 16 D variable 9900A Dparam S 9999 Dlgparam S 9B 0 Ddep S 9B 0 Denregav E DS EXTNAME(fichierp1) PREFIX(av) Denregap E DS EXTNAME(fichierp1) PREFIX(ap) *=========== variables pour API envoi de messages =================== D ERRDS DS D LGDS 1 4B 0 INZ(16) D LGERR 5 8B 0 D MSGID 9 15 D RESERV 16 16 D MSGFL DS D MSGF 10 INZ('QCPFMSG') D MSGL 10 INZ('*LIBL') D ID S 7 INZ('CPF9898') D MSGTXT S 50 INZ('<-- texte de votre message -->') D LENTXT S 9B 0 INZ(50) D MSGTYP S 10 D PGMQ S 10 INZ('*PGMBDY') D STACK S 9B 0 |
D KEY S 9B 0 *=========== DEBUT DU PROGRAMME ====================================== C *entry plist C parm param C parm lgparam * * mise en place du paramètre reçu * C eval data = %subst(param:1:lgparam) * * mise en place du buffer avant * C if dep_enrav <> 0 C eval dep = dep_enrav + 1 C eval enregav = %subst(data:dep:lg_enrav) C endif * * mise en place du buffer après * C if dep_enrap <> 0 C eval dep = dep_enrap + 1 C eval enregap = %subst(data:dep:lg_enrap) C endif * placez ici votre test C* if <---------------> C exsr env_msg C* endif C eval *inlr = *on * C env_msg begsr * * envoi d'un message diagnostic au pgm applicatif * C CALL 'QMHSNDPM' C PARM 'CPF9898' ID 7 C PARM MSGFL C PARM MSGTXT C PARM LENTXT C PARM '*DIAG' MSGTYP C PARM PGMQ C PARM 2 STACK C PARM KEY C PARM ERRDS * |
* envoi d'un message escape( erreur) au système * C CALL 'QMHSNDPM' C PARM 'CPF9898' ID 7 C PARM MSGFL C PARM MSGTXT C PARM LENTXT C PARM '*ESCAPE' MSGTYP C PARM PGMQ C PARM 1 STACK C PARM KEY C PARM ERRDS C endsr |