Olá Arup,
Se você revisar a documentação do Módulo de Função, verá que a tabela T015Z deve ser personalizada para o seu idioma se o formato padrão dos valores escritos não for aceitável.
Infelizmente, os valores são armazenados apenas por idioma e não por moeda. Portanto, se você configurar a tabela para o idioma inglês, todos os usuários que fizerem login em inglês terão o mesmo formato (LAKHS, CRORES, etc.). Isso pode não ser aceitável para usuários em um país como os EUA, onde o formato preferido pode ser MILHÕES, BILHÕES, etc.
Por favor, tenha cuidado antes de prosseguir com a configuração da tabela.
A única outra alternativa (além de modificar a tabela) que consigo pensar é criar seu próprio módulo de função!
ou verifique o seguinte programa
FUNCTION Z_FI_AMT_WRDS_CONVERT .
*"----
" "Interface Local:
*" IMPORTAÇÃO
*" REFERÊNCIA(AMT)
*" EXPORTAÇÃO
*" REFERÊNCIA(PALAVRA) TIPO SPELL-WORD
*"----
amt_c1 = amt.
replace '.' with 'D' into amt_c1.
SEARCH amt_c1 for 'D'.
IF sy-subrc = 0.
amt_wh1 = amt_c1+0(sy-fdpos).
wrk_fdpos = sy-fdpos + 1.
amt_dc1 = amt_c1+wrk_fdpos(2).
ELSE.
amt_wh1 = amt_c1.
amt_dc1 = '00'.
ENDIF.
amtnmr = amt_wh1.
amtdec = amt_dc1.
CONCATENATE amtnmr amtdec INTO amount.
CALL FUNCTION 'SPELL_AMOUNT'
EXPORTAÇÃO
amount = amount
currency = 'INR'
filler = ' '
language = 'E'
IMPORTAÇÃO
in_words = amountrs.
*WRITE: / 'montante em cifras: ' ,'Rs.-->', AMTNMR,'.',AMTDEC.
*WRITE: / 'Montante em PALAVRAS.: ' ,' Rs.' ,AMOUNTRS-WORD,
*'E' ,AMOUNTRS-DECWORD ,'Paisa Apenas'.
*QUEBRA DE LINHA.
CLEAR: unit1,digit1,unit2,digit2,unit3,digit3,unit4,digit4,word1,word2,
word3,word4,word.
digit1 = amtnmr+14.
unit1 = amtnmr+13.
digit2 = amtnmr+12.
unit2 = '0'.
digit3 = amtnmr+11.
unit3 = amtnmr+10.
digit4 = amtnmr+9.
unit4 = amtnmr+8.
digit5 = amtnmr+7.
unit5 = amtnmr+6.
digit6 = amtnmr+5.
unit6 = '0'.
digit7 = amtnmr+4.
unit7 = amtnmr+3.
digit8 = amtnmr+2.
unit8 = amtnmr+1.
digit9 = amtnmr.
unit9 = '0'.
*WRITE:/ 'UNIDADE9 = ' , UNIT9, 'DÍGITO9 = ', DIGIT9.
IF ( unit1 NE '0' ) OR ( digit1 NE '0' ).
SELECT SINGLE wort INTO word1 FROM t015z WHERE einh = unit1
AND ziff = digit1 AND spras = 'E'.
-
word1 = t015z-wort.
REPLACE ';' WITH '' INTO word1.
*write: / word1.
ENDIF.
IF unit2 NE '0' OR digit2 NE '0'.
SELECT SINGLE * FROM t015z WHERE einh = unit2
AND ziff = digit2 AND spras = 'E'.
word2 = t015z-w