|
function gf_amount_in_word_indonesia (double ad_amount) return string double ld_divisor,ld_large_amount,ld_tiny_amount,ld_dividen,ld_dummy string ls_word string ls_weight1,ls_weight2,ls_unit,ls_follower string ls_prefix[] = {'SE','DUA ','TIGA ','EMPAT ','LIMA ','ENAM ','TUJUH ','DELAPAN ','SEMBILAN '} string ls_sufix[] = {'SATU ','DUA ','TIGA ','EMPAT ','LIMA ','ENAM ','TUJUH ','DELAPAN ','SEMBILAN '} ls_word = '' ld_large_amount = abs(truncate(ad_amount,0) ) ld_tiny_amount = round((abs(ad_amount) - ld_large_amount ) * 100,0) ld_divisor = 1000000000000.00 // tidak boleh lebih dari 999,999,999,999,997 if ad_amount > 999999999999997 THEN return 'OUT OF RANGE' IF ad_amount < 0 THEN RETURN 'OUT OF RANGE' //IF ld_large_amount > ld_divisor THEN return 'OUT OF RANGE' DO WHILE ld_divisor >= 1 ld_dividen = truncate(ld_large_amount / ld_divisor,0) ld_large_amount = mod(ld_large_amount,ld_divisor) ls_unit = '' IF ld_dividen > 0 THEN CHOOSE CASE ld_divisor CASE 1000000000000.00 ls_unit = 'TRILYUN ' CASE 1000000000.00 ls_unit = 'MILYAR ' CASE 1000000.00 ls_unit = 'JUTA ' CASE 1000.00 ls_unit = 'RIBU ' END CHOOSE END IF ls_weight1 = '' ld_dummy = ld_dividen IF ld_dummy >= 100 THEN ls_weight1 = ls_prefix[truncate(ld_dummy / 100,0) ] + 'RATUS ' ld_dummy = mod(ld_dividen,100) CHOOSE CASE ld_dummy CASE IS < 10 IF ld_dummy = 1 AND ls_unit = 'RIBU ' THEN ls_weight1 += 'SE' ELSEIF ld_dummy > 0 THEN ls_weight1 += ls_sufix[ld_dummy] END IF CASE 11 TO 19 ls_weight1 += ls_prefix[mod(ld_dummy,10) ] + 'BELAS ' CASE ELSE ls_weight1 += ls_prefix[truncate(ld_dummy / 10,0) ] + 'PULUH ' IF mod(ld_dummy,10) > 0 THEN ls_weight1 += ls_sufix[mod(ld_dummy,10) ] END CHOOSE ls_word += ls_weight1 + ls_unit ld_divisor /= 1000.00 LOOP IF truncate(ad_amount,0) = 0 THEN ls_word = 'NOL ' ls_follower = '' CHOOSE CASE ld_tiny_amount CASE IS < 10 IF ld_tiny_amount > 0 THEN ls_follower = 'KOMA NOL ' + ls_sufix[ld_tiny_amount] CASE ELSE ls_follower = 'KOMA ' + ls_sufix[truncate(ld_tiny_amount / 10,0) ] IF mod(ld_tiny_amount,10) > 0 THEN ls_follower += ls_sufix[mod(ld_tiny_amount,10) ] END CHOOSE //ls_word += 'Rupiah ' + ls_follower --> tulisan rupiah ls_word += ls_follower IF ad_amount < 0 THEN ls_word = 'MINUS ' + ls_word return trim(ls_word) SELAMAT MENCOBA Putu mr_beemx wrote:
--
__._,_.___
![]() ----------------------------------------------- IndoPB - Indonesia PB User Group http://groups.yahoo.com/group/indopb
Your email settings: Individual Email|Traditional
Change settings via the Web (Yahoo! ID required) Change settings via email: Switch delivery to Daily Digest | Switch to Fully Featured Visit Your Group | Yahoo! Groups Terms of Use | Unsubscribe __,_._,___ |
- [indopb] kalimat terbilang mr_beemx
- Re: [indopb] kalimat terbilang I Putu Rawijaya
- [indopb] Re: kalimat terbilang Hotdin Gurning
- [indopb] Re: kalimat terbilang Hotdin Gurning
- [indopb] Lowongan PB Pro ScootZ

