Click here to Skip to main content
11,478,174 members (71,418 online)
Rate this: bad
Please Sign up or sign in to vote.
See more: CrystalReports
i am using towords() function to convert amount to words


i am getting output like "six thousand four hundred "

but i want with decimal also

if value goes like this 6400.75 then i neeed

"six thousand four hundred and seventy paise"
Posted 20-Mar-13 0:36am

1 solution

Rate this: bad
Please Sign up or sign in to vote.

Solution 1


try like below.
Towords(truncate(6400.75), 0) + " Rupees and " + towords(abs(100 * (truncate(6400.75)- 6400.75)), 0) + "Paise";
result is: six thousand four hundred Rupees and seventy five paise

The first part i.e.
Towords(truncate(6400.75), 0) 
returns 6400, and will ignore the decimal place.

Second part i.e.
(abs(100 * (6400.75 - truncate(6400.75))

converts it to a positive value and multiplies the value to be non decimal.

If you have more decimal places you'll have to adjust the 100 multiplier.

hope it helps.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
0 Frankie-C 160
1 Sergey Alexandrovich Kryukov 149
2 Sascha Lefèvre 145
3 F-ES Sitecore 130
4 siddartha kopparapu 103
0 Sergey Alexandrovich Kryukov 7,675
1 OriginalGriff 7,321
2 Sascha Lefèvre 3,034
3 Maciej Los 2,491
4 Richard Deeming 2,325

Advertise | Privacy | Mobile
Web04 | 2.8.150520.1 | Last Updated 20 Mar 2013
Copyright © CodeProject, 1999-2015
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100