Hola,

 

No sé si alguien se habrá encontrado con el problema de tener una variable
numérica de más de 15 dígitos en una CL.

Si intentas definirla da error pero si lo que declaras es un fichero que
tiene una variable numérica de más de 15 dígitos, entonces da el error de
gravedad 10 CPI0306 y lo que hace es convertirla a una variable tipo *CHAR
con una longitud resultante de dividir entre 2 los dígitos de la variable
numérica + 1, o sea, que si tenemos la variable IMPORT de 20 dígitos
empaquetada en el fichero, en el CL aparece como &IMPORT de tipo *CHAR y 11
caracteres de longitud.

 

La pregunta es ¿Se puede tratar de alguna forma esa variable tipo *CHAR en
el CL y saber el número que contiene?

 

Por lo que yo he visto, si vemos el fichero con DSPPFM y vemos la
representación del número de la forma “???ìó¡?” pues es eso lo que contiene
la variable tipo *CHAR al leer un registro del fichero en el CL. Pero si el
fichero tiene el campo desempaquetado y tiene el valor 12345678901234567890
pues en la variable tipo *CHAR lo trunca y solo recoge los 11 primeros
dígitos y lo guarda como 12345678901.

 

Si a alguien le ha pasado, le agradecería contase su experiencia y si lo
pudo resolver.

 

Muchas gracias.

 

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

Responder a