Hola de nuevo:
Parece que funciona esta solucion para no bloquear la cola QSYSOPR con RCVMSG:
LOOP:
CHGVAR VAR(&MSGID) VALUE(' ')
RCVMSG MSGQ(QSYS/QSYSOPR) MSGTYPE(*INQ) WAIT(0) +
RMV(*NO) KEYVAR(&MSGMRK) MSG(&MSG) +
SECLVL(&SECLVL) MSGID(&MSGID) +
SENDER(&SENDER) SENDERFMT(*SHORT)
IF COND(&MSGID *EQ ' ') THEN(DO)
DLYJOB DLY(&DLY)
GOTO LOOP
ENDDO
CHGVAR VAR(&MSGID) VALUE(' ')
RCVMSG MSGQ(QSYS/QSYSOPR) MSGTYPE(*INQ) WAIT(0) +
RMV(*NO) KEYVAR(&MSGMRK) MSG(&MSG) +
SECLVL(&SECLVL) MSGID(&MSGID) +
SENDER(&SENDER) SENDERFMT(*SHORT)
IF COND(&MSGID *EQ ' ') THEN(DO)
DLYJOB DLY(&DLY)
GOTO LOOP
ENDDO
Gracias a todos y saludos
2006/4/19, alex martinez <[EMAIL PROTECTED]>:
Hola Marti:
La cola se bloquea mientras se realiza la espera, tanto si utilizas el
mandato RCVMSG o la API QMHRCVM, quizás la solución pase por cambiar
la espera de WAIT(*MAX) a un valor menor y construir un bucle con un
DLYJOB, por ejemplo.
Esta solución al problema unicamente sirve si ningun otro proceso
bloquea la *MSGQ con WAIT(*MAX), claro.
SAlu2
2006/4/19, Marti Riera <[EMAIL PROTECTED]>:
>
> Hola a [EMAIL PROTECTED]:
>
> Alguien sabe como leer mensajes de la cola QSYSOPR sin bloquearla?
>
> Yo actualmente utilizo el mandato RCVMSG para leer los mensajes que esperan
> respuesta en la cola del operador:
> RCVMSG MSGQ(QSYS/QSYSOPR) MSGTYPE(*INQ) WAIT(*MAX) RMV(*NO)
> KEYVAR(&MSGMRK) MSG(&MSG) SECLVL(&SECLVL) MSGID(&MSGID) SENDER(&SENDER)
> SENDERFMT(*SHORT)
>
> Hasta ahora me ha ido bien pero tiene una pega que bloquea la cola de
> mensajes QSYSOPR como *EXCL y ahora estamos haciendo pruebas con otro
> producto que intenta leerla también pero casca por dicho bloqueo (además no
> puedo configurarlo), por tanto esto intentando cambiar mi programa para que
> no bloquee, pero la verdad no se como hacerlo de manera fácil.
>
> Gracias anticipadas por vuestras arrotaciones y Saludos.
>
>
>
> --
> Martí Riera
--
Mi blog sobre as400
http://www.ajut400.com
__________________________________________________
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 visita la siguente URL:
http://coyote.combios.es/mailman/listinfo/forum.help400
--
Martí Riera
