On May 3, 12:09 am, Dave Angel <da...@ieee.org> wrote: > Krishnakant wrote: > > hello all, > > I am using postgresql as a database server for my db application. > > > The database is related to accounts and point of sales and many > > calculations involve money datatype. > > > The application logic is totally done in python. Now the problem is > > that there is a situation where we calculate tax on % of the total > > amount on the invoice. The percentage is in terms of float but the > > eventual amount has to be in a money datatype. > > > The product cost comes in money datatype from postgresql and the tax % > > comes in float. So I would like to know if python supports some thing > > similar to money datatype so that I can cast my total amount (in money ) > > divided by tax% (in float ) so money divided by float should be the > > result and that result should be in money datatype. > > For example a product x has the cost Rs. 100 which is stored in the > > tabel as money type. and in the tax table for that product the VAT is > > 5% and this 5% is stored in float datatype. So after using both these > > values the resulting total 105Rs. should be in money type and not float. > > I awaite some reply, > > Thanks in advice. > > happy hacking. > > Krishnakant. > > Tax rate isn't divided, it's multiplied. But probably that's just a > typo in your message. > > Short answer is use your money class to convert the float into money. > And then test, to see that's really what you wanted. Be sure and check > the edge cases, because float is a binary system, and you can get both > quantization and rounding problems converting between them. > > Is the money you're dealing with decimal-based? So maybe money values > are integers plus two more digits of fractional precision? > > It's going to be tough for somebody with no access to that "money type" > to guess what your problem is. What operations does it currently > support? If it supports multiply, then just change the tax rate to be a > money type.
Aarrgghh!! If the "money type" supports multiplying money by money, the author should be put in the stocks and pelted with rotten vegetables. (IMHO) -- http://mail.python.org/mailman/listinfo/python-list