Abundando en la soluci�n de alocar/desalocar aqu� tienes un CL que submite
un objeto una sola vez (se debe ejecutar siempre el programa desde aqu�, en
caso contrario puedes tener m�s de una instancia del programa ejecurtandose
simult�neamente)


*************** Beginning of data ************************************* 
             PGM        PARM(&NAMELIB &NAMEPGM)                         
             DCL        VAR(&NAMEPGM) TYPE(*CHAR) LEN(10) /* Name of +  
                          the program to execute */                     
             DCL        VAR(&NAMELIB) TYPE(*CHAR) LEN(10) /* Name of +  
                          the library of the program */                 
             DCL        VAR(&LIBPGM) TYPE(*CHAR) LEN(21) /* Name of +   
                          the library + the program */                  
             CHGVAR     VAR(&LIBPGM) VALUE(&NAMELIB *TCAT '/' *TCAT +   
                          &NAMEPGM) /* Concatenate lib + pgm */         
             ALCOBJ     OBJ((&NAMELIB/&NAMEPGM *PGM *EXCL)) WAIT(0) +   
                          /* First of all we try to allocate the +      
                          program */                                    
             MONMSG     MSGID(CPF1002 CPF0952 CPF0939 CPA0701 +         
                          CPF1085 CPF0001) EXEC(GOTO +                  
                          CMDLBL(THATSALL)) /* The allocate Fails +     
                          -> The program is running -> That's all +     
                          folks */                                      
             DLCOBJ     OBJ((&NAMELIB/&NAMEPGM *PGM *EXCL)) /* The +    
                          allocate success, so des-allocate */          
             SBMJOB     CMD(CALL PGM(&NAMELIB/&NAMEPGM)) +              
                          JOB(&NAMEPGM) JOBQ(QNECK) LOG(0 30 +          
                          *NOLIST) LOGCLPGM(*NO) INQMSGRPY(*RQD) +      
                          MSGQ(*NONE) /* The program is not running +   
                          and the program is des-allocated, now you +   
                          can run the program. THE FIRST +              
                          INSTRUCTION OF THE PROGRAM MUST BE +          
                          'ALCOBJ MYSELF *PGM *EXCL'*/                  
             MONMSG     MSGID(CPD0028 CPD0170) EXEC(GOTO +              
                          CMDLBL(THATSALL)) /* The Program is not +     
                          in the disk -> That's all folks */            
 THATSALL:   ENDPGM                                                     
****************** End of data **************************************** 

 No es necesario desalocar el objeto al salir pues se desaloca el solo. 

 Este CL ha funcionado durante bastante tiempo sin ning�n problema.

 Saludos. Tono

-----Original Message-----
From: Juan Ram�n Garcia [mailto:[EMAIL PROTECTED]
Sent: lunes 24 de febrero de 2003 10:11
To: [EMAIL PROTECTED]
Subject: RE: IF ACTIVE .....


Hola, en el siguiente enlace tienes un art�culo sobre este tema
http://www.recursos-as400.com/wrk400/150999/maquinista.shtml

Un saludo.
Juanra

----- Original Message -----
From: j_losada losada <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Saturday, February 22, 2003 2:34 AM
Subject: IF ACTIVE .....


> Buenas noches foro,
>
> tal vez alguno de la vieja escuela (sist. 36) me pueda ayudar en el
AS/400,
> necesito hacer una CL que haga en si lo que en RPG II se controlaba con un
> IF ACTIVE.
> Es decir, tengo un trabajo (ej.: AAAA) que ha de estar permanente activo,
en
> caso de que falle por alguna causa se ha de arrancar automaticamente con
un
> mandato (ej.: XXXX)
> Esto en RPG II sobre sist. 36 se podia controlar con un procedimiento del
> tipo:
>
> INICIO TAG
> IF ACTIVE AAAA GOTO FIN
> XXXX
> FIN TAG
> GOTO INICIO
>
> Mas o menos,... no se si me explico, pues bien, como lo hariais con una
CL?
>
> Gracias a todos



_____________________________________________________
Forum.HELP400 es un servicio m�s de NEWS/400.
� Publicaciones Help400, S.L. - Todos los derechos reservados
http://www.help400.es
_____________________________________________________

Para darte de baja, env�a el mensaje resultante de pulsar
mailto:[EMAIL PROTECTED]

_____________________________________________________
Forum.HELP400 es un servicio m�s de NEWS/400.
� Publicaciones Help400, S.L. - Todos los derechos reservados
http://www.help400.es
_____________________________________________________

Para darte de baja, env�a el mensaje resultante de pulsar
mailto:[EMAIL PROTECTED]

Responder a