DEMARRAGE AUTOMATIQUE D'UN PROGRAMME LORS DE L'ARRIVEE D'UN MESSAGE DANS UNE FILE D'ATTENTE ## ## ## ## # # ######## ######### ## ## ## ## ################## TOTO *MSGQ |
DEMARRAGE AUTOMATIQUE D'UN PROGRAMME LORS DE L'ARRIVEE D'UN MESSAGE DANS UNE FILE D'ATTENTE CHGMSGQ MSGQ(TOTO) DLVRY(*BREAK) PGM(PROGMSG) SNDMSG MSG('traitement 1') TOMSGQ(TOTO) * * * * * * ## * ## ## ## # # ######## ######### ## traitement 1 ## -----> ############################## PROGMSG ## ## ## ## ################## ## ## *PGM ## ## TOTO *MSGQ ## ## ############################## |
DEMARRAGE AUTOMATIQUE D'UN PROGRAMME LORS DE L'ARRIVEE D'UN MESSAGE DANS UNE FILE D'ATTENTE CHGMSGQ MSGQ(TOTO) DLVRY(*BREAK) PGM(PROGMSG) SNDMSG MSG('traitement 1') TOMSGQ(TOTO) * * * * * * ## * ## ## ## # # ######## ######### ## Traitement 1 ## -----> ############################## ## ## ## PGM (&MSGQ &LIB &CLE) ## ################## ## DCL &MSGQ *CHAR 10 ## ## DCL &LIB *CHAR 10 ## ## DCL &CLE *CHAR 4 ## ############################## |
DEMARRAGE AUTOMATIQUE D'UN PROGRAMME LORS DE L'ARRIVEE D'UN MESSAGE DANS UNE FILE D'ATTENTE CHGMSGQ MSGQ(TOTO) DLVRY(*BREAK) PGM(PROGMSG) SNDMSG MSG('traitement 1') TOMSGQ(TOTO) * * * ################################### * ## A l'envoi de chaque message ## * ## le pgm est automatiquement ## * ## appellé par le système. ## ## * ## ################################### ## ## # # ######## ######### ## traitement 1 ## -----> ############################## ## ## ## PGM (&MSGQ &LIB &CLE) ## ################## ## DCL &MSGQ *CHAR 10 ## ## DCL &LIB *CHAR 10 ## ## DCL &CLE *CHAR 4 ## ############################## |
DEMARRAGE AUTOMATIQUE D'UN PROGRAMME LORS DE L'ARRIVEE D'UN MESSAGE DANS UNE FILE D'ATTENTE # # # ################################### # ## Le programme doit ## # ## recevoir les paramètres ## # ## suivants : ## ## # ## ################################### ## ## # # ######## ######### ## traitement 1 ## -----> ############################## ## ## ## PGM (&MSGQ &LIB &CLE) ## ################## ## DCL &MSGQ *CHAR 10 ## ## DCL &LIB *CHAR 10 ## ## DCL &CLE *CHAR 4 ## ############################## |
DEMARRAGE AUTOMATIQUE D'UN PROGRAMME LORS DE L'ARRIVEE D'UN MESSAGE DANS UNE FILE D'ATTENTE # # # ################################### ########################## ## ## ########################## ## Le nom de la MSGQ ## # ## ## ## # ## ################################### ## ## # # ######## ######### ## traitement 1 ## -----> ############################## ## ## ## PGM (&MSGQ &LIB &CLE) ## ################## ## DCL &MSGQ *CHAR 10 <--- ## ## DCL &LIB *CHAR 10 ## ## DCL &CLE *CHAR 4 ## ############################## |
DEMARRAGE AUTOMATIQUE D'UN PROGRAMME LORS DE L'ARRIVEE D'UN MESSAGE DANS UNE FILE D'ATTENTE # # # ################################### # ## ## # ## Sa bibliothèque ## # ## ## ## # ## ################################### ## ## # # ######## ######### ## Traitement 1 ## -----> ############################## ## ## ## PGM (&MSGQ &LIB &CLE) ## ################## ## DCL &MSGQ *CHAR 10 ## ## DCL &LIB *CHAR 10 <--- ## ## DCL &CLE *CHAR 4 ## ############################## |
DEMARRAGE AUTOMATIQUE D'UN PROGRAMME LORS DE L'ARRIVEE D'UN MESSAGE DANS UNE FILE D'ATTENTE # # # ################################### # ## ## # ## La clé du message ## # ## ## ## # ## ################################### ## ## # # ######## ######### ## Traitement 1 ## -----> ############################## ## ## ## PGM (&MSGQ &LIB &CLE) ## ################## ## DCL &MSGQ *CHAR 10 ## ## DCL &LIB *CHAR 10 ## ## DCL &CLE *CHAR 4 <--- ## ############################## |
DEMARRAGE AUTOMATIQUE D'UN PROGRAMME LORS DE L'ARRIVEE D'UN MESSAGE DANS UNE FILE D'ATTENTE # # # ################################### # ## ## # ## Il doit recevoir le message ## # ## et le traiter. ## ## # ## ################################### ## ## # # ######## ######### ## ####### ## -----> ############################## ## ## ## RCVMSG MSGQ(&LIB/&MSGQ) ## ################## ## MSGKEY(&CLE) MSGID(&ID) ## ## RMV(*YES) MSG(&TEXTE)... ## ## /* traitement */ ## ############################## |
DEMARRAGE AUTOMATIQUE D'UN PROGRAMME LORS DE L'ARRIVEE D'UN MESSAGE DANS UNE FILE D'ATTENTE IL EST AUSSI POSSIBLE DE METTRE UN PROGRAMME EN ATTENTE DE MESSAGE DE MANIERE INDEFINIE. # ################################### # ## le programme pourra alors ## # ## être lancé le premier. ## # ## (sans paramètres). ## ## # ## ################################### ## ## # # ######## ######### ## ####### ## <----- ############################## ## ## ## PGM ## ################## ## RCVMSG MSG(&TEXTE) <<< ## ## MSGQ(TOTO) WAIT(*MAX) ## ## /* traitement */ ## ############################## |
IL EST AUSSI POSSIBLE DE METTRE UN PROGRAMME EN ATTENTE DE MESSAGE DE MANIERE INDEFINIE. # # # ################################### # ## Il sortira de l'instruction ## # ## RCVMSG(non consommatrice de ## # ## CPU) à l'arrivée d'un msg. ## ## # ## ################################### ## ## # # ######## ######### ## traitement 2 ## -----> ############################## ## ## ## PGM ## ################## ## RCVMSG MSG(&TEXTE) ## ## MSGQ(TOTO) WAIT(*MAX) ## ## /* traitement */ <<< ## ############################## |