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
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.