Hola a ver si me peudes ayudar en este caso: Al imprimir en un sapscript el monto en letras usando la function ‘SPELL_AMOUNT’ me coloca el monto con un espacio:
Dodne dice en letras seiscientos me esta colocando SEISCIENTO S deja un espacio en blanco en esa palabra si imprimo otra queda asi:
Deja un espacio en la palabra nueve (NU EVE). revise el programa que envia el monto en letra:
FORM zm_letras TABLES zin STRUCTURE itcsy
zout STRUCTURE itcsy.
DATA: monto(20),
letras LIKE spell,
m LIKE spell-number,
f TYPE p DECIMALS 2.
READ TABLE zin WITH KEY name = 'ZMONTO'.
monto = zin-value.
REPLACE ALL OCCURRENCES OF ',' IN monto WITH '*'.
REPLACE ALL OCCURRENCES OF '.' IN monto WITH ' '.
REPLACE ALL OCCURRENCES OF '*' IN monto WITH '.'.
CONDENSE monto.
m = monto.
sy-waers = 'VEB'.
CLEAR letras.
CALL FUNCTION 'SPELL_AMOUNT'
EXPORTING
amount = m
currency = sy-waers
* FILLER = ' '
language = sy-langu
IMPORTING
in_words = letras
EXCEPTIONS
not_found = 1
too_large = 2
OTHERS = 3.
IF sy-subrc = 0.
ENDIF.
READ TABLE zout WITH KEY name = 'ZLETRAS'.
zout-value = letras-word(80).
MODIFY zout INDEX sy-tabix.
READ TABLE zout WITH KEY name = 'ZLETRAS2'.
zout-value = letras-word+80(80).
MODIFY zout INDEX sy-tabix.
READ TABLE zout WITH KEY name = 'ZDEC'.
CONCATENATE 'CON' letras-decword 'CENTIMOS'
INTO zout-value SEPARATED BY space.
MODIFY zout INDEX sy-tabix.
ENDFORM. "ZM_LETRAS
Y observo que el toma los valores asi:
Le amplie a 83 en vez de 80 y queda todo en la linea ZLETRAS pero igual al imprimir sale mal.
Y visualizo asi en el debuger:
Se ve bien pero al llegar al Sapscript
En el sapscript la impresion de estos montos letras esta asi:
Revise la tabla T015Z a ver si los montos en letras estaban con algún detalle pero se ven correctos.
Que puedo revisar?
Muchas Gracias
Saludos
Ana