PDA

Ver la Versión Completa : Ayuda cheques SAPscript


conrad10ar
09/10/06, 15:15:28
Hola,

estoy haciendo una copia del sapscript de cheques f110_es_cheque, porque el formato que necesita la empresa es diferente. El problema que tengo es que quiero poner los importes en letras y no sé como llamar a la función spell_amount desde dentro del sapscript.

Cualquier ayuda que me puedan dar les estaré muy agradecidos.

Gracias a todos. :)

Soporte Funcional
09/10/06, 17:04:48
Que tal!!!

no conozco mucho de sapscripts pero el de cheques que revise, en la ventana donde quieres que aparezca la cantidad con letra viene lo siguiente:

/: IF &REGUD-WAERS& EQ 'MXP'.
M1 (*&SPELL-WORD& PESOS &SPELL-DECIMAL(2)&/100 M.N.*)
/: ENDIF.
/: IF &REGUD-WAERS& EQ 'USD'.
M1 (*&SPELL-WORD& USD &SPELL-DECIMAL(2)&/100*)
/: ENDIF.

Espero te ayude en algo....

Saludos!!!!

chivi82
10/10/06, 08:58:30
Hola, debes utilzar la función SPELL_AMOUNT con los siguientes parámetros:
CALL FUNCTION 'SPELL_AMOUNT'
EXPORTING
AMOUNT = L_ENTRADA "Indicar importe
CURRENCY = 'EUR' "Indicar moneda
LANGUAGE = SY-LANGU "Indicar idioma texto
IMPORTING
IN_WORDS = L_RESULTADO
EXCEPTIONS
NOT_FOUND = 1
TOO_LARGE = 2
OTHERS = 3

L_entrada es el importe que quieras traducir a letras. El resultado lo tendras en L_RESULTADO. Más detallado:
L_RESULTADO-WORD = parte entera
L_RESULTADO-IN_WORDS = parte decimal.

Tendrás que hacer un CONCATENATE para juntar los dos valores.
Espero que te haya sido de ayuda.
Un saludo.

chivi82
10/10/06, 08:59:44
A no me acordaba, será mucho más fácil que hagas la llamada en el programa de control, y después solo muestres el resultado en el SAPSCRIPT.

conrad10ar
10/10/06, 14:11:35
Hola, gracias a todos, pero la que más me sirvió fue la de soporte funcional :D .

Porque a la función spell_amount no se la puede llamar desde el sapscript. Y modificar el programa control me implicaría usar una transacción nueva.

igualmente gracias a todos por la molestia. :)