|
#1
|
||||
|
||||
He...creo que te estas equivocando....
Una cosa es como se muestra la información ( la ',' o '.' como separador decimal se configura en el perfil del usuario ) y otra es la representación interna de los datos, donde SIEMPRE es el '.' separador decimal y no hay mas. Otra cosa es que pintes la variable en una variable de carcteres WRITE <VAR_NUMERICA> TO <VAR_CARACTERES> UNIT <CAMPO_QUAN>. Y luego uses el TRASLATE <VAR_CARACTERES> USING ',.' . Lo mismo al revés, si tienes '1000,98' porque tu usuario tiene la coma como decimal , pues TRASLATE <VAR> USIGN ',.' para que lo convierta en '1000.98' y eso a la variable numerica. |
#2
|
|||
|
|||
Problema con conversión de tipos
Crounly,
el problema que tengo no es a la hora de pintar la variable sino cuando opero con ella. Concretamente tengo lo siguiente: mat-unidad = ( t_stpo-comp_qty / t_stko-base_quan ) * t_stko-kausfb. Cuando estoy depurando el programa el contenido de los campos es el siguiente: t_stpo-comp_qty = 7,220 t_stko-base_quan = 100 t_stko-kausfb = 77.66 Los campos t_stpo-comp_qty y t_stko-base_quan son de tipo quan(13, 3) y el t_stko-kausfb es de tipo decimal (5, 3). El dump que me da cuando intento hacer la operación es: CX_SY_CONVERSION_NO_NUMBER "The program attempted to interpret the value " 7,220 " as a number, but since the value contravenes the rules for correct number formats, this was not possible." Si se te ocurre cualquier idea será bienvenida. Muchas gracias. |
#3
|
||||
|
||||
ese t_stpo-comp_qty = 7,220, seguro que es una variable de caracter
Y la coma, te aparece por el perfil de usuario ( SU01 -> pestaña valores fijos ) Tendras que hacer un TRALATE t_stpo-comp_qty USING ',.' para sustituir la coma decimal por punto. Prueba y nos cuentas Suerte |
#4
|
|||
|
|||
Problema con conversión de tipos
Buenas,
pues al final lo he solucionado usando la función call function 'RS_CONV_EX_2_IN_NO_DD' exporting input_external = stko-base_quan importing output_internal = menge_cab exceptions error_message = 100 others = 200. donde menge_cab lo tengo declarado como: data: menge_cab type p decimals 3. Muchas gracias por la ayuda. Saludos. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|