Hola; yo creo que tenes que utilizar otra conversion. De ebcdic a AscII // Convierte datos de EBCDIC a ASCII QDCXLATE(BufferLen: buffer : 'QTCPASC': 'QSYS'); De Ascci a EBCDIC // Convierte datos de ASCII a EBCDIC QDCXLATE(BufferLen: buffer : 'QTCPEBC': 'QSYS'); Para agregar el tipo wrktbl ; Saludos
From: jlopez...@hotmail.com To: forum.help400@listas.combios.es Subject: RE: recuperar código ASCII desde RPG Date: Mon, 27 Sep 2010 20:02:44 +0000 Hola a todos Muchas gracias por la respuesta, codifique este fuente para obtener los caracteres y los cargo en un arreglo de 255 en el orden que los obtiene pensaba que era el valor decimal pero al validar con una tabla ASCII no coinciden. Este es el fuente. D ASCII S 1 DIM(255) D EBCDIC S 1 DIM(255) D WrkStr1 s 255 D WrkStr2 s 255 D N s 3 0 D DS D BinValue 1 2B 0 INZ(0) D BinChar 2 2 * C do 255 N C z-add N BinValue C eval %subst(WrkStr1:N:1) = BinChar C enddo * C move WrkStr1 WrkStr2 * C CALL 'QDCXLATE' 68 C PARM 255 DataLen 5 0 C PARM WrkStr1 C PARM 'QEBCDIC' XLateTable 10 C PARM 'QSYS' XLateTblLib 10 * C CALL 'QDCXLATE' 68 C PARM 255 DataLen C PARM WrkStr2 C PARM 'QASCII' XLateTable C PARM 'QSYS' XLateTblLib * C do 255 N C eval EBCDIC(N) = %subst(WrkStr1:N:1) C eval ASCII(N) = %subst(WrkStr2:N:1) C enddo * c eval *inlr = *on La idea era que de acuerdo a la posición del arreglo se retornaba el valor decimal del caracter que se desae buscar pero no coincide. Alguna Idea. Muchas gracias From: andra...@gmail.com Date: Mon, 27 Sep 2010 10:49:05 +0200 Subject: Re: recuperar código ASCII desde RPG To: forum.help400@listas.combios.es al programa qdcxlate le tienes que pasar una tabla de traduccion de caracteres. no dices cual le pasas. puedes ver las tablas que vienen con el sistema con WRKOBJPDM LIB(QSYS) OBJTYPE(*TBL) o cambiando qsys por qusrsys, etc. por ejemplo quiza esta QASCII *TBL EBCDIC TO ASCII TRANSLATE TABLE o esta QTCPASC *TBL TCP/IP EBCDIC-ASCII TRANSLATE TABLE Saludos, Guillermo Andrades http://cpiSoftware.es http://Modernizar.iSeries.es 2010/9/27 JAIME LOPEZ <jlopez...@hotmail.com> Hola a todos Necesito de su valiosa ayuda! Cómo puedo recuperar el código ascii de un caracter desde un programa rpg? por ejemplo: la letra 'A' es ASCII es el valor en decimal 41. He intentado usar 'QDCXLATE' pero no funciona con todos los caracteres como á, í, etc. Muchas gracias por la ayuda. ____________________________________________________ �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.