Hola, Por si os sirve de ayuda, adjunto enlace a un documento ser IBM sobre el tema: https://www.ibm.com/support/pages/ifs-stmf-ccsids-1252-437-and-819
Saludos Enviat amb GMail Android El dj., 2 de març 2023, 17:56, datil400 <[email protected]> va escriure: > Hola a tod@s, > > detallo "brevemente" lo que he podido averiguar sobre este tema, revisando > documentación, artículos y por experiencia propia. > > La variable de entorno QIBM_CCSID aparentemente sólo sirve para asignar > automáticamente el CCSID de los archivos nuevos creados desde QSH. No sirve > para una traducción "al vuelo" desde el CCSID del trabajo al CCSID del > archivo. > > La variable de entorno QIBM_QSH_CMD_OUTPUT activa "algún mecanismo" en el > trabajo que redirige la salida a consola (STDOUT) al fichero especificado. > Tengo la sensación de que es un mecanismo ajeno al entorno de ejecución QSH > porque, si el archivo de destino no existe, lo crea siempre con el CCSID > del trabajo, ignorando el valor en QIBM_CCSID. Es más, independientemente > del CCSID que pudiera tener asignado el fichero, siempre guarda los datos > en el CCSID del trabajo. Yo no he sido capaz de enviar al archivo los datos > en otro CCSID. > > Por qué digo esto, porque una vez establecida en el trabajo la variable de > entorno QIBM_QSH_CMD_OUTPUT y antes de ejecutar cualquier comando de shell, > el sistema crea el archivo automáticamente. Por ejemplo, si el archivo > /tmp/qsh.log no existe y ejecutamos > > ADDENVVAR ENVVAR(QIBM_QSH_CMD_OUTPUT) VALUE('FILEAPPEND=/tmp/qsh.log') > QSH('touch -C 819 /tmp/qsh.log') > > Aquí, el fichero /tmp/qsh.log se crea y se fuerza con el CCSID 819. > Además, este comando "touch" no realiza ninguna salida a STDOUT. Sin > embargo, el archivo se crea vacío con el CCSID del trabajo, en mi caso el > 1152. > > Podríamos intuir que /tmp/qsh.log NO se creará hasta que el sistema > necesite redirigir algún dato al fichero, pero no es así. El archivo se > crea en el momento que se realiza la llamada al primer QSH y antes de > ejecutar el comando de shell. > > Finalmente, si en lugar de utilizar la variable de entorno > QIBM_QSH_CMD_OUTPUT se redirige la salida estándar del comando shell a un > archivo (con > o con >>), QSH transforma correctamente los datos del CCSID > del trabajo (1152) al CCSID del archivo (819). > > Y hasta aquí puedo leer. ;-) > > Javier Mora > > > > El jue, 2 mar 2023 a las 13:11, datil400 (<[email protected]>) escribió: > >> Lo que hay de por medio es un SFTP. >> >> Estoy preparando unas pruebas antes de abrir una consulta en IBM. >> >> Gracias >> >> Javier >> >> El jue., 2 mar. 2023 11:41, Alex Martínez <[email protected]> escribió: >> >>> Pues lo único que me suena con el CCSID 500 era al transferir archivos >>> al IBMi por FTP, así que sin saber nada más de tu "captura" de QSH no sé >>> decirte si tiene algo de sentido para ti. ¿hay algún FTP de por medio ? >>> >>> Nota: El CCSID 500 es Latin-1 en EBCDIC >>> >>> https://www.google.com/search?q=ccsid+500+FTP >>> >>> El mié, 1 mar 2023 a las 15:51, datil400 (<[email protected]>) >>> escribió: >>> >>>> Lo que me llama la atención es que sea el CCSID 500, que no lo usamos >>>> para nada. Nuestros trabajos utilizan el 1145. En fin, un lío. >>>> >>>> Gracias por tu interés Alex. >>>> >>>> Javier Mora >>>> >>>> El mié, 1 mar 2023 a las 13:21, Alex Martínez (<[email protected]>) >>>> escribió: >>>> >>>>> Nop, >>>>> >>>>> puedes tener definido un CCSID para el archivo (contenedor) y lo que >>>>> está escrito "dentro" (contenido) estar con otro CCSID diferente, y eso es >>>>> justo tu caso, por lo que veo. >>>>> >>>>> Ten en cuenta que si trabajas desde QSH por defecto trabaja en EBCDIC >>>>> y desde PASE por defecto trabaja en ASCII >>>>> >>>>> >>>>> >>>>> El mié, 1 mar 2023 a las 11:38, datil400 (<[email protected]>) >>>>> escribió: >>>>> >>>>>> Gracias Alex, esa es la comprobación que hice inicialmente. De echo >>>>>> es EBCDIC, pero más curioso todavía, si visualizo los atributos del >>>>>> fichero >>>>>> el CCSID es 819 pero si lo hago desde DSPF + F15 + opción 3, el CCSID que >>>>>> me aparece el es 500. >>>>>> >>>>>> Lo normal es que ambos datos sean el mismo. ¡Estoy alucinando! >>>>>> >>>>>> Según tengo entendido, la variable de entorno QIBM_CCSID la utiliza >>>>>> QSH para asignar el CCSID a los archivos nuevos que se crean. Después, >>>>>> cuando QSH utiliza el archivo (redirección o con la variable de entorno >>>>>> QIBM_QSH_CMD_OUTPUT) es capaz de registrar los datos en el CCSID asignado >>>>>> al archivo, convirtiéndolos desde el CCSID del trabajo. >>>>>> >>>>>> Pero veo que esto no es exactamente así. Sigo investigando. >>>>>> >>>>>> Saludos, >>>>>> >>>>>> Javier Mora >>>>>> >>>>>> El mié, 1 mar 2023 a las 8:01, Alex Martínez (<[email protected]>) >>>>>> escribió: >>>>>> >>>>>>> Hola >>>>>>> >>>>>>> >>>>>>> Con el DSPF puedes ver el contenido en Hexadecimal y simplemente >>>>>>> fijándote en los espacios en blanco ya puedes intuir si está codificado >>>>>>> en >>>>>>> ASCII x'20' o EBCDIC X'40' >>>>>>> >>>>>>> >>>>>>> >>>>>>> El mar, 28 feb 2023 a las 17:13, datil400 (<[email protected]>) >>>>>>> escribió: >>>>>>> >>>>>>>> Hola a tod@s de nuevo, >>>>>>>> >>>>>>>> cuando quiero "capturar" la salida estándar de mandato QSH (y según >>>>>>>> la documentación de IBM), combino las variables de entorno >>>>>>>> QIBM_QSH_CMD_OUTPUT y QIBM_CCSID=819 para almacenar en formato ASCII >>>>>>>> esos >>>>>>>> datos en un archivo del IFS. >>>>>>>> >>>>>>>> Hasta ahora yo pensaba que eso era así, porque desde pantalla verde >>>>>>>> veía bien los datos (mandato DSPF) y el archivo venía correctamente >>>>>>>> "etiquetado" con el CCSID 819 (ASCII). >>>>>>>> >>>>>>>> Pero, ¡sorpresa!, si el archivo lo abro desde Windows, lo que >>>>>>>> visualizo es basura (símbolos raros sin sentido). No tengo claro en qué >>>>>>>> ccsid se están grabando los datos, pero intuyo que lo está haciendo en >>>>>>>> EBCDIC (CCSID 1145). >>>>>>>> >>>>>>>> Antes de darle muchas más vueltas a este tema, ¿tenéis experiencia >>>>>>>> con este tema? ¿Qué estoy haciendo mal? >>>>>>>> >>>>>>>> Saludos 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. >>>>> >>>>> ____________________________________________________ >>>>> Ú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. >> >> ____________________________________________________ > Ú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.
