sexta-feira, 26 de março de 2010

SPELL_AMOUNT

Função que serve para retornar por extenso um valor em reais e o valor em número em reais se você passar BRL para ela, caso decida por outra moeda, é só mudar de BRL para a moeda que você deseja,

Caso ela não retorne nenhuma descrição para o número informado, verificar se este valor existe na visão V_T015Z

REPORT zteste.

TABLES spell.

DATA: BEGIN OF palavra,
inteiro LIKE spell-word,
real(6),
filler(3),
decimal LIKE spell-decword,
centavos(8),
END OF palavra.

DATA: valor(8) TYPE p DECIMALS 2,
DECIMALS TYPE p,
word LIKE spell.

valor = 710 / 3.

CALL FUNCTION 'SPELL_AMOUNT'
EXPORTING
amount = valor
currency = 'BRL'
filler = ' '
language = sy-langu
IMPORTING
in_words = word
EXCEPTIONS
not_found = 1
too_large = 2
OTHERS = 3.

palavra-inteiro = word-word.

IF valor > 1.
palavra-real = 'REAIS'.
ELSE.
palavra-real = 'REAL'.
ENDIF.

IF word-decword NE ' '.
palavra-filler = 'E '.
palavra-decimal = word-decword.
palavra-centavos = 'CENTAVOS'.
ENDIF.

CONDENSE palavra.

WRITE palavra.

WRITE: / valor.

Nenhum comentário:

Postar um comentário