Pascal_Osthus-bugat_1753

AS400 -- Contrôle de l'agent: Compilation d'un UCEX_END opérationnel.

Discussion created by Pascal_Osthus-bugat_1753 on Oct 30, 2016

S'il est question de contrôler l’arrêt de l'agent AS400 avec le programme UCEX_END, le membre de ce dernier devra être revu et ajusté avant compilation afin d'être opérationnel. Par défaut AUTOMIC, livre le membre CLP avec le contenu suivant.



================================================================================
 PGM        PARM(&EXECNR)                             
                                                      
 DCL        VAR(&EXECNR) TYPE(*DEC) LEN(6)            
                                                      
 DCL        VAR(&EXECNRA) TYPE(*CHAR) LEN(6)          
 DCL        VAR(&DTAQ) TYPE(*CHAR) LEN(10)            
 DCL        VAR(&DTAQL) TYPE(*CHAR) LEN(10) +         
              VALUE('AE_UC300')                       
 DCL        VAR(&LEN) TYPE(*DEC) LEN(5 0) VALUE(20)   
 DCL        VAR(&VAL) TYPE(*CHAR) LEN(20) VALUE('END')
                                                      
 CHGVAR     VAR(&EXECNRA) VALUE(&EXECNR)              
 CHGVAR     VAR(&DTAQ) VALUE('DQ' *CAT &EXECNRA)      
                                                      
 CALL       PGM(QSNDDTAQ) PARM(&DTAQ &DTAQL &LEN &VAL)
 ENDPGM                                                      
================================================================================

Ce CLP ne peut être utilisé ainsi. Le paramètre &EXECNNR n'existe pas, le nom de la Dataqueue est 'DQ' tout court. Afin d'obtenir un CLP exploitable il conviendra de le modifier comme suit;                                


================================================================================
PGM                                                   
                                                             
DCL        VAR(&DTAQ) TYPE(*CHAR) LEN(10)             
DCL        VAR(&DTAQL) TYPE(*CHAR) LEN(10) +          
                    VALUE('UC4V11')                          
DCL        VAR(&LEN) TYPE(*DEC) LEN(5 0) VALUE(20)    
DCL        VAR(&VAL) TYPE(*CHAR) LEN(20) VALUE('END') 
                                                             
CHGVAR     VAR(&DTAQ) VALUE('DQ')                     
                                                             
CALL       PGM(QSNDDTAQ) PARM(&DTAQ &DTAQL &LEN &VAL) 
ENDPGM                                                
================================================================================

L'unique paramètre critique est la valeur assignée à la variable &DTAQL. Cette dernière doit contenir le nom de la librairie qui contient l'installation de l'agent. Dans le cas présent, il s'agira de la librarie UC4V11.

Une fois ces modifications apportées dans l'éditeur de texte de STRPDM, on peut compiler le membre et obtenir et obtenir un programme d'arrêt opérationnel.

Le contrôle de l'agent se fera ensuite à l'aide des commandes suivantes:     

CALL PGM (UC4V11/UCEX_END) -- Arrêt de l'agent AS400
CALL PGM (UC4V11/UCEX_RUN) -- Démarrage de l'agent AS400




Outcomes