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'                           68C               
    PARM      255           DataLen           5 0    C                   PARM   
                 WrkStr1                  C                   PARM      
'QEBCDIC'     XLateTable       10      C                   PARM      'QSYS'     
   XLateTblLib      10       *                                                  
                 C                   CALL      'QDCXLATE'                       
    68C                   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: [email protected]
Date: Mon, 27 Sep 2010 10:49:05 +0200
Subject: Re: recuperar código ASCII desde RPG
To: [email protected]

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 TABLEo estaQTCPASC  *TBL    TCP/IP 
EBCDIC-ASCII TRANSLATE TABLE



Saludos,


Guillermo Andradeshttp://cpiSoftware.es

http://Modernizar.iSeries.es





2010/9/27 JAIME LOPEZ <[email protected]>









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.

Responder a