RE: CPF4131 Error de nivel

2018-10-30 Por tema Joaquín Flor López
Hola Juan,

 

Pues sí, ya Carlos me puso sobre la pista y la solución que das es la correcta 
para solucionar el problema.

 

Muchas gracias.

 

De: forum.help400-boun...@listas.combios.es 
 En nombre de Juan García
Enviado el: martes, 30 de octubre de 2018 12:35
Para: forum. help400 
Asunto: Re: CPF4131 Error de nivel

 

Hola

 

Puedes utilizar, si es un programa RPG, la subrutina de excepción/error de 
archivos INFSR(NOMBRE_DE_SUBRUTINA) en la especificación F del fichero de 
pantalla, esta subrutina toma el control cuando se produce un CPF y en ella 
controlas el error.

 

Un saludo

 

El dom., 28 oct. 2018 a las 18:31, Carlos (mailto:cuentadecorreodecar...@gmail.com> >) escribió:

Hola

No tengo un sistema a mano, pero si no estoy equivocado el CPF4131 no da 
opciones de respuesta, así que será un mensaje de programa el que avisa de que 
te ha dado ese mensaje y te pide una respuesta. Tendrás que monitorizar, aparte 
del CPF4131, el que te saca el mensaje que espera respuesta (si el programa es 
RPG será un RPG, por ejemplo).

Saludos

Carlos

 

El 28/10/18 a las 12:58, Joaquín Flor López escribió:

Hola Ignacio,

 

Gracias por tu respuesta. Sí, puede ser para un fichero de pantalla o un 
fichero de datos (como es mi caso). Pero eso hace que no me entere si tiene un 
nivel diferente y lo que quiero es tener control sobre ello. Tengo monitorizado 
el CPF4131 para sacar una pantalla muy bonita informando del problema porque el 
programa tiene que procesar el fichero sin problema de nivelación. Pero sucede 
una cosa muy curiosa, la pantalla rompe con el típico error descontrolado, con 
las opciones de C, G, I, etc. (lo cual queda muy feo) y al contestar ejecuta la 
instrucción que he monitorizado y sale mi pantalla bonita.

 

¿Por qué el CPF4131 tiene ese comportamiento y los demás errores (bueno, 
tampoco he probado todos) se comportan de manera diferente?

 

Saludos.

 

De: forum.help400-boun...@listas.combios.es 
   
 
 En nombre de Téllez Alvarado, Ignacio
Enviado el: sábado, 27 de octubre de 2018 14:54
Para: forum.help400   

Asunto: RE: CPF4131 Error de nivel

 

Joaquin:

NO es recomendable,   pero puedes hacer esto

CHGDSPF FILE(*LIBL/PANTALLA)

LVLCHK(*NO) 



Atte

Ignacio 

 

De: forum.help400-boun...@listas.combios.es 
  
[mailto:forum.help400-boun...@listas.combios.es] En nombre de Joaquín Flor López
Enviado el: sábado, 27 de octubre de 2018 8:34
Para: forum.help400@listas.combios.es  
Asunto: CPF4131 Error de nivel

 

Buenos días,

 

¿Alguien sabe cómo se puede manejar el error CPF4131 para que no salga la 
típica pantalla de error del AS/400?

 

He probado con el MONMSG CPF4131, incluso con el CPF, pero aunque hace el 
EXEC del MONMSG, antes rompe la pantalla como si no se hubiese monitorizado.

 

Saludos.


-
Notice of Confidentiality: The information transmitted is intended only for the 
sender and person or entity to which it is addressed and may contain 
confidential and/or privileged material. Any review, e-transmission, 
dissemination or other use of, or taking of any action in reliance upon, this 
information by persons or entities other than the intended recipient is 
prohibited.
If you received this in error, please contact the sender immediately by return 
electronic transmission and then immediately delete this transmission, 
including all attachments, without copying, distributing or disclosing same.
--
Aviso de Confidencialidad: Este correo electrónico y/o el material adjunto es 
para uso exclusivo del emisor y la persona o entidad a la que expresamente se 
le ha enviado, y puede contener información confidencial o material 
privilegiado. Si usted no es el destinatario legítimo del mismo, por favor 
repórtelo inmediatamente al remitente del correo y bórrelo.
Cualquier revisión, retransmisión, difusión o cualquier otro uso de este 
correo, por personas o entidades distintas a las del destinatario legítimo, 
queda expresamente prohibido. Este correo electrónico no pretende ni debe ser 
considerado como constitutivo de ninguna relación legal, contractual o de otra 
índole similar.

 


Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
Forum.Help400 © Publicaciones Help400, S.L.


Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
Forum.Help400 © Publicaciones Help400, S.L.


Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
Forum.Help400 © 

RE: QP2SHELL y parámetros terminados en nulo

2018-10-30 Por tema Javier Mora
El comando que estoy utilizando es GhostScript (gs) y creo (porque no lo veo) 
que no tiene una opción de depuración.

Actualmente estoy intentado provocar el error, pero no lo consigo.

Revisando de nuevo toda la cadena de parámetros he encontrado uno que estaba 
mal escrito, estaba en mayúsculas cuando debiera estar en minúsculas. Desde el 
cambio no ha vuelto a fallar.

Respecto a los parámetros terminados en nulo, de momento, he tomado la decisión 
de utilizarlos sólo cuando sea una variable. Si utilizo un parámetro fijo no lo 
termino en nulo. Por las pruebas que he hecho no tengo la sensación que 
influya, aunque la documentación de IBM habla claramente de terminar en nulo. 
He visto ejemplos recientes y antiguos de gurús como Scott Klement donde 
utiliza el nulo en unos casos y en otros no.

He probado la redirección de la salida y error estándar. Funciona bien si la 
especifico por separado, por ejemplo:

gs …. > gs_salida.log 2> gs_error.log

pero si intento utilizar

gs … &> gs_salida_y_error.log

no funciona, el fichero de salida siempre está en blanco cuando fuerzo un error 
conocido.

¿Puede ser que no funcione por el CCSID de la cadena con el comando? Cuando 
ejecuto QP2TERM o QP2SHELL QIBM_PASE_CCCSID = 819. Estoy revisando la 
información sobre la variable de entorno QIBM_PASE_CCSID, pero no entiendo muy 
bien cómo trata PASE el CCSID.

Gracias Alex por tus aportaciones.

De: forum.help400-boun...@listas.combios.es 
[mailto:forum.help400-boun...@listas.combios.es] En nombre de Alex Martínez
Enviado el: martes, 30 de octubre de 2018 9:09
Para: forum.help400
Asunto: Re: QP2SHELL y parámetros terminados en nulo

Hola de nuevo

¿y el mandato AIX no tiene opciones para depuración o log?

Prueba a hacer la llamada redirigiendo la salida de errores 2> a un archivo 
log, por ejemplo:

CALL QP2SHELL PARM('/QOpenSys/usr/bin/sh' '-c' 'ls -la /dir 2> /tmp/err.txt')

El lun., 29 oct. 2018 a las 16:09, Javier Mora 
(mailto:jm...@musgrave.es>>) escribió:
Hola Alex,

cuando me refiero a errores intermitentes lo que quiero decir es, que ante unas 
circunstancias aparentemente iguales, unas veces funciona la llamada al comando 
AIX (a través de QP2SHELL) y otras veces aparece un pantallazo (una especie de 
consola) con los errores. El problema es que el error que aparece no aclara qué 
está sucediendo.

Estoy en la fase de descartar causas, las que me has plantado no las tenía en 
mi lista (salvo el grupo de activación). Después de comprobar que la cadena del 
comando a ejecutar, la existencia de los objetos, posibles mensajes de error 
“ocultos”, etc, la primera duda que me planteé fue si estaba utilizando 
correctamente QP2SHELL. De ahí, mis dudas sobre la cadena terminada en null, 
que no estaba utilizando y los ejemplos (contradictorios para mí) dónde unos 
utilizan el NULL para todos los parámetros, otros sólo para los pasados con 
variables y en otros en ningún parámetro.

Esa confusión es la causa de mi pregunta.

Estoy probando varias cosas para ver si encuentro algún patrón que me ofrezca 
una pista. De momento no veo nada.

De: 
forum.help400-boun...@listas.combios.es
 
[mailto:forum.help400-boun...@listas.combios.es]
 En nombre de Alex Martínez
Enviado el: lunes, 29 de octubre de 2018 14:53
Para: forum.help400
Asunto: Re: QP2SHELL y parámetros terminados en nulo

Hola

No explicas en qué consisten los "errores intermitentes", ¿es problemas con 
parámetros numéricos? ¿parámetros de tipo string que incluyen Ñs o acentos? 
¿debe usar el mismo grupo de activación?

Lo poco que he utilizado QP2SHELL desde un CL es con string terminado en nulo y 
numéricos convertidos en string

Hay un QP2SHELL2 para realizar la llamada en el mismo grupo de activación ILE, 
dado que QP2SHELL crea un nuevo grupo de activación, que no se si te puede 
afectar

Y si los problemas están relacionados con el CCSID de éstos parámetros, 
recuerdo un caso en que los caracteres especiales al pasarlos (no sé si eran 
acentos o Ñs... ) y habia que establecer la variable de entorno QIBM_PASE_CCSID


https://www.ibm.com/support/knowledgecenter/de/ssw_ibm_i_72/apis/qp2shell.htm

El lun., 29 oct. 2018 a las 13:21, Javier Mora 
(mailto:jm...@musgrave.es>>) escribió:
Hola a tod@s,

en una utilidad que utiliza un programa en PASE estoy teniendo errores de forma 
intermitente. Para la ejecución del comando AIX estoy llamando a QP2SHELL desde 
un programa CL. He revisado todo lo que se me ha ocurrido, pero sigo con algún 
error intermitente durante la ejecución.

Pensando que estoy utilizando mal QP2SHELL, he buscado información y encuentro 
alguna contradicción respecto al uso de los parámetros terminados en nulo. Lo 
que he entendido es que cuando se utiliza QP2SHELL desde la línea de mandatos 
no es necesario terminar en nulo los parámetros (no se me ocurre cómo podría 
hacerlo) pero desde un programa CL sí que es necesario terminar todos los 

Re: CPF4131 Error de nivel

2018-10-30 Por tema Juan García
Hola

Puedes utilizar, si es un programa RPG, la subrutina de excepción/error
de archivos INFSR(NOMBRE_DE_SUBRUTINA) en la especificación F del fichero
de pantalla, esta subrutina toma el control cuando se produce un CPF y en
ella controlas el error.

Un saludo

El dom., 28 oct. 2018 a las 18:31, Carlos ()
escribió:

> Hola
>
> No tengo un sistema a mano, pero si no estoy equivocado el CPF4131 no da
> opciones de respuesta, así que será un mensaje de programa el que avisa de
> que te ha dado ese mensaje y te pide una respuesta. Tendrás que
> monitorizar, aparte del CPF4131, el que te saca el mensaje que espera
> respuesta (si el programa es RPG será un RPG, por ejemplo).
>
> Saludos
>
> Carlos
>
>
> El 28/10/18 a las 12:58, Joaquín Flor López escribió:
>
> Hola Ignacio,
>
>
>
> Gracias por tu respuesta. Sí, puede ser para un fichero de pantalla o un
> fichero de datos (como es mi caso). Pero eso hace que no me entere si tiene
> un nivel diferente y lo que quiero es tener control sobre ello. Tengo
> monitorizado el CPF4131 para sacar una pantalla muy bonita informando del
> problema porque el programa tiene que procesar el fichero sin problema de
> nivelación. Pero sucede una cosa muy curiosa, la pantalla rompe con el
> típico error descontrolado, con las opciones de C, G, I, etc. (lo cual
> queda muy feo) y al contestar ejecuta la instrucción que he monitorizado y
> sale mi pantalla bonita.
>
>
>
> ¿Por qué el CPF4131 tiene ese comportamiento y los demás errores (bueno,
> tampoco he probado todos) se comportan de manera diferente?
>
>
>
> Saludos.
>
>
>
> *De:* forum.help400-boun...@listas.combios.es
> 
>  *En nombre de *Téllez Alvarado,
> Ignacio
> *Enviado el:* sábado, 27 de octubre de 2018 14:54
> *Para:* forum.help400 
> 
> *Asunto:* RE: CPF4131 Error de nivel
>
>
>
> Joaquin:
>
> NO es recomendable,   pero puedes hacer esto
>
> CHGDSPF FILE(*LIBL/PANTALLA)
>
> LVLCHK(*NO)
>
>
>
> Atte
>
> Ignacio
>
>
>
> *De:* forum.help400-boun...@listas.combios.es [
> mailto:forum.help400-boun...@listas.combios.es
> ] *En nombre de *Joaquín Flor
> López
> *Enviado el:* sábado, 27 de octubre de 2018 8:34
> *Para:* forum.help400@listas.combios.es
> *Asunto:* CPF4131 Error de nivel
>
>
>
> Buenos días,
>
>
>
> ¿Alguien sabe cómo se puede manejar el error CPF4131 para que no salga la
> típica pantalla de error del AS/400?
>
>
>
> He probado con el MONMSG CPF4131, incluso con el CPF, pero aunque hace
> el EXEC del MONMSG, antes rompe la pantalla como si no se hubiese
> monitorizado.
>
>
>
> Saludos.
>
>
> -
> Notice of Confidentiality: The information transmitted is intended only
> for the sender and person or entity to which it is addressed and may
> contain confidential and/or privileged material. Any review,
> e-transmission, dissemination or other use of, or taking of any action in
> reliance upon, this information by persons or entities other than the
> intended recipient is prohibited.
> If you received this in error, please contact the sender immediately by
> return electronic transmission and then immediately delete this
> transmission, including all attachments, without copying, distributing or
> disclosing same.
> --
> Aviso de Confidencialidad: Este correo electrónico y/o el material adjunto
> es para uso exclusivo del emisor y la persona o entidad a la que
> expresamente se le ha enviado, y puede contener información confidencial o
> material privilegiado. Si usted no es el destinatario legítimo del mismo,
> por favor repórtelo inmediatamente al remitente del correo y bórrelo.
> Cualquier revisión, retransmisión, difusión o cualquier otro uso de este
> correo, por personas o entidades distintas a las del destinatario legítimo,
> queda expresamente prohibido. Este correo electrónico no pretende ni debe
> ser considerado como constitutivo de ninguna relación legal, contractual o
> de otra índole similar.
>
> 
> Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
> Forum.Help400 © Publicaciones Help400, S.L.
>
> 
> Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
> Forum.Help400 © Publicaciones Help400, S.L.

Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
Forum.Help400 © Publicaciones Help400, S.L.

Re: QP2SHELL y parámetros terminados en nulo

2018-10-30 Por tema Alex Martínez
Hola de nuevo

¿y el mandato AIX no tiene opciones para depuración o log?

Prueba a hacer la llamada redirigiendo la salida de errores 2> a un archivo
log, por ejemplo:

CALL QP2SHELL PARM('/QOpenSys/usr/bin/sh' '-c' 'ls -la /dir 2>
/tmp/err.txt')


El lun., 29 oct. 2018 a las 16:09, Javier Mora ()
escribió:

> Hola Alex,
>
>
>
> cuando me refiero a errores intermitentes lo que quiero decir es, que ante
> unas circunstancias aparentemente iguales, unas veces funciona la llamada
> al comando AIX (a través de QP2SHELL) y otras veces aparece un pantallazo
> (una especie de consola) con los errores. El problema es que el error que
> aparece no aclara qué está sucediendo.
>
>
>
> Estoy en la fase de descartar causas, las que me has plantado no las tenía
> en mi lista (salvo el grupo de activación). Después de comprobar que la
> cadena del comando a ejecutar, la existencia de los objetos, posibles
> mensajes de error “ocultos”, etc, la primera duda que me planteé fue si
> estaba utilizando correctamente QP2SHELL. De ahí, mis dudas sobre la cadena
> terminada en null, que no estaba utilizando y los ejemplos (contradictorios
> para mí) dónde unos utilizan el NULL para todos los parámetros, otros sólo
> para los pasados con variables y en otros en ningún parámetro.
>
>
>
> Esa confusión es la causa de mi pregunta.
>
>
>
> Estoy probando varias cosas para ver si encuentro algún patrón que me
> ofrezca una pista. De momento no veo nada.
>
>
>
> *De:* forum.help400-boun...@listas.combios.es [mailto:
> forum.help400-boun...@listas.combios.es] *En nombre de *Alex Martínez
> *Enviado el:* lunes, 29 de octubre de 2018 14:53
> *Para:* forum.help400
> *Asunto:* Re: QP2SHELL y parámetros terminados en nulo
>
>
>
> Hola
>
>
>
> No explicas en qué consisten los "errores intermitentes", ¿es problemas
> con parámetros numéricos? ¿parámetros de tipo string que incluyen Ñs o
> acentos? ¿debe usar el mismo grupo de activación?
>
>
>
> Lo poco que he utilizado QP2SHELL desde un CL es con string terminado en
> nulo y numéricos convertidos en string
>
>
>
> Hay un QP2SHELL2 para realizar la llamada en el mismo grupo de activación
> ILE, dado que QP2SHELL crea un nuevo grupo de activación, que no se si te
> puede afectar
>
>
>
> Y si los problemas están relacionados con el CCSID de éstos parámetros,
> recuerdo un caso en que los caracteres especiales al pasarlos (no sé si
> eran acentos o Ñs... ) y habia que establecer la variable de entorno
> QIBM_PASE_CCSID
>
>
>
>
>
>
> https://www.ibm.com/support/knowledgecenter/de/ssw_ibm_i_72/apis/qp2shell.htm
>
>
>
> El lun., 29 oct. 2018 a las 13:21, Javier Mora ()
> escribió:
>
> Hola a tod@s,
>
>
>
> en una utilidad que utiliza un programa en PASE estoy teniendo errores de
> forma intermitente. Para la ejecución del comando AIX estoy llamando a
> QP2SHELL desde un programa CL. He revisado todo lo que se me ha ocurrido,
> pero sigo con algún error intermitente durante la ejecución.
>
>
>
> Pensando que estoy utilizando mal QP2SHELL, he buscado información y
> encuentro alguna contradicción respecto al uso de los parámetros terminados
> en nulo. Lo que he entendido es que cuando se utiliza QP2SHELL desde la
> línea de mandatos no es necesario terminar en nulo los parámetros (no se me
> ocurre cómo podría hacerlo) pero desde un programa CL sí que es necesario
> terminar todos los parámetros en nulo.
>
>
>
> Pero viendo algunos ejemplos
>
>
>
> http://www-01.ibm.com/support/docview.wss?uid=nas8N1022523
>
>
> https://www.ibm.com/support/knowledgecenter/en/ssw_ibm_i_71/rzalf/rzalfshell.htm
>
> https://archive.midrange.com/midrange-l/201211/msg00522.html
>
>
> http://www.code400.com/forum/forum/iseries-programming-languages/ifs/144618-qpshell-qpshell2-errors-and-qprint
>
>
>
> tengo la sensación que *sólo hay que terminar en nulo los parámetros que
> sean variables* pero los que se pasan como constante no es necesario.
>
>
>
> Para descartar como posible causa de los errores este tema de los
> parámetros terminados en nulo, alguien con experiencia en PASE ¿podría
> confirmarme o aclararme este tema?
>
>
>
> Un saludo y gracias por vuestros comentarios
>
>
>
> *Javier Mora*
>
> 
> Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
> Forum.Help400 © Publicaciones Help400, S.L.
>
> 
> Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
> Forum.Help400 © Publicaciones Help400, S.L.

Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
Forum.Help400 © Publicaciones Help400, S.L.