Mam kwotę w formacie 12,35 zł.
Chcę to zmienić na zapis słowny.
Idealnie by było mieć coś w stylu HR_IN_CHG_INR_WRDS dla naszego języka/waluty, ale z tego, co widzę, to raczej nie uświadczy się takich dobroci
SPELL_AMOUNT pomija znak dziesiętny i całą kwotę traktuje jako liczbę całkowitą, czyli 1235 zł.
Czy nadal nie ma gotowego FM, który ogarnia kwoty z groszami?
Jestem skazany na rozbicie kwoty na złotówki i grosze i oddzielne puszczenie FM dla każdego z nich?
Kwota słownie (SPELL_AMOUNT, HR_IN_CHG_INR_WRDS)
Re: Kwota słownie (SPELL_AMOUNT, HR_IN_CHG_INR_WRDS)
Nie wiedziałem o tym Ale racja, Biznes potwierdził, sporo ułatwiło to pracę
Dzięki za info.
-
- Posty: 57
- Rejestracja: czw maja 23, 2013 6:49 pm
- Has thanked: 21 times
- Been thanked: 14 times
Re: Kwota słownie (SPELL_AMOUNT, HR_IN_CHG_INR_WRDS)
czy dobrze przekazujesz kwotę do FM? parametrem wejściowym jest kwota w formacie P(8) DECIMALS 2 (przykład 1724.07). w takim przypadku parametr eksportowy in_words wypełniany jest prawidłowymi wartościami.
EDIT:
jednak parametr wejściowy nie jest określony - nie spojrzałem dobrze.
przetestuj sobie ten FM.
gdy np. nie podasz waluty to nie otrzymasz miejsc dziesiętnych
-
- Posty: 135
- Rejestracja: śr sie 24, 2022 11:50 am
- Has thanked: 60 times
- Been thanked: 86 times
- Kontakt:
Re: Kwota słownie (SPELL_AMOUNT, HR_IN_CHG_INR_WRDS)
Ta kwota działa. Zarówno z , jak i . I taj podajemy w '...', więc system robi koercję (en. coercion).
SAP ABAP Certified Developer
Re: Kwota słownie (SPELL_AMOUNT, HR_IN_CHG_INR_WRDS)
Teraz to zbaraniałem...
Jakie dokładnie wartości podałeś dla
AMOUNT
CURRENCY
FILLER
LANGUAGE
w powyższym przykładzie?
-
- Posty: 135
- Rejestracja: śr sie 24, 2022 11:50 am
- Has thanked: 60 times
- Been thanked: 86 times
- Kontakt:
Re: Kwota słownie (SPELL_AMOUNT, HR_IN_CHG_INR_WRDS)
Kod: Zaznacz cały
CALL FUNCTION 'SPELL_AMOUNT'
EXPORTING
amount = '12,35'
currency = 'PLN'
* FILLER = ' '
language = sy-langu
IMPORTING
in_words = in_words
EXCEPTIONS
not_found = 1
too_large = 2
OTHERS = 3.
SAP ABAP Certified Developer
Re: Kwota słownie (SPELL_AMOUNT, HR_IN_CHG_INR_WRDS)
Dramat.
Zerkając w zawartość IN_WORDSa z poziomu se37, nie zwróciłem uwagi na dłuuuuuuuuuuugi pasek przwijania. Oczywiście, że DECWORD było ładnie wypełnione...
Następnym razem muszę oglądać takie rzeczy debuggerem...
Dziękuję za pomoc
Zerkając w zawartość IN_WORDSa z poziomu se37, nie zwróciłem uwagi na dłuuuuuuuuuuugi pasek przwijania. Oczywiście, że DECWORD było ładnie wypełnione...
Następnym razem muszę oglądać takie rzeczy debuggerem...
Dziękuję za pomoc
-
- Posty: 135
- Rejestracja: śr sie 24, 2022 11:50 am
- Has thanked: 60 times
- Been thanked: 86 times
- Kontakt:
Re: Kwota słownie (SPELL_AMOUNT, HR_IN_CHG_INR_WRDS)
Zdecydowanie lepiej, choć i tam zdarzają się rozsunięcia przy typach znakowych Ale jak się wklikasz, to widać.
SAP ABAP Certified Developer