Convertir de Currency a Char

Buenas

Estoy en dudas de como hacer esta conversion dentro de un batch input.

He probado

WRITE campo_curr TO var_char.

hace el movimiento pero lo que tengo en campo_curr tiene valor (por ejemplo): 16800.00
y var_char recibe: 16.800,00

uno viene llega con punto (campo_curr) y sale con coma (var_char). El punto es que esto al parecer me esta creando conflictos al guardar en la tabla de sap, pues deberia mostrarme 16.800,00 pero no, al hacer una nueva llamada en el table control muestra 168.000,00 es decir con un cero de mas. Asumo que serán problemas de conversiones en otro caso si saben alguna solucion agradecido

@mestanza Hola,

has probado con

move valor TO char.

cuando tu guardas un valor en campo curr debes tener en cuenta la moneda, de esa manera guarda con mas o menos ceros, en mi caso la moneda COP los valores son almacenados en la tabla con dos ceros menos, si fueran USD esta se almacena igual.

Hola,
prueba WRITE campo_curr TO var_char.CURRENCY var_waerk

saludos

1 me gusta

Ese es mi caso… Me esta guardando con 3 ceros despues de la coma. estoy utilizando
WRITE campo_curr TO var_char.
y me hace la conversion, perfecto, pero al revisar como esta siendo guardado me muestra 16.800,000 y al llamarlo me corre la coma un espacio.

Es decir, mando en campo_curr 1680 y en var_char recibo 1680,00 al revisar la tabla veo que hay guardado 1680,000 cuando hago de nuevo el llamado a el table control me muestra 16.800,00 es decir se corre la coma,

hago la consulta de conversion pues pienso que es por ahi. Y las propuesta que han dado ya las he probado y no me resultan.

Conclusion: ni idea que hacer

Hola,

Puedes verificar en los atributos de tu programa, si no está marcado este campo:

Entiendo que debe estar marcado, pero puedes probar marcarlo/desmarcarlo dependiendo el caso a ver si no es eso lo que te está haciendo el problema.

Saludos.

Ya lo desmarque y nada, cae en error. Lo regrese y quede igual…

Mas graficamente:

Asi me carga en la table

Reviso como queda guardado y me muestra lo siguiente

y al volver a entrar a la table me muestra esto:

Hola,

El campo que estas tratando de mostrar es el del var_char o el campo_curr?
Si es el var_char por este no debería tener problema por ser texto, lo otro estas trabajando con una dynpro y control table,o un ALV?

Esta cargado en campo_curr pero lo debo de pasar a var_char pues lo estoy enviando a traves de un batch input

como esta la definición del campo en la tabla?

campo_curr esta como:

y var_char

Buenas:

has probado

WRITE curr TO char LEFT-JUSTIFIED.

Buenas.

Si, ya lo he probado y nada. Me sigue trayendo el mismo error

Resuelto el problema!!

Pues no era la conversion de curr a char, eso estaba a la perfeccion. pues era un campo de la “regla de calculo” (RV13A-KRECH) del batch input. Estaba reflejada como ‘A’ (Porcentual), cuando para el caso de cantidad (MI CASO), deberia ser reflejada con ‘C’ (Cantidad).

Muchas gracias a todos por el interes en la resolucion del problema

2 Me gusta

Este tema se cerró automáticamente 7 días después del último post. No se permiten nuevas respuestas.