Currency Datatype for Packed Record Bug in Delphi 7?



Hi,
I have got a "record" defined in a type library. And this reocord has few
elements which are of currency datatype. I am using this record object to
pass the values between the com+ methods. After the method call one of the
elements (currency field) value get changed automatically. For eg. I am
setting the values for the records as ,
rec.amt = 100
rec.amt1= 100, and I pass the "rec" as one of the param of the com
methods. In this com method if I see the value of rec.Amt it would have
gotten it changed to 98.3040, where rec.Amt1 will be 100. here amt1 & amt2
are of currency type.
if the passing value is 200 for "amt" then the called function will get a
value of 196.6080. if I change the data type of amt to double, it works
fine.

Can I any one tell me what's this issue. Is this bug in delphi7? This was
working fine in delphi5.


Regards,
Ashish P.K.


.