S_AmtD is Double
S_AmtD = (S_Qty * S_Unit)
S_Amt = S_AmtD
Maybe the above will show something.

Ron Rose
  ----- Original Message ----- 
  From: [email protected] 
  To: RBASE-L Mailing List 
  Sent: Thursday, September 23, 2010 12:50 PM
  Subject: [RBASE-L] - Difference between DOS and Windows computed column


  As we are migrating a DOS 6.1 app over to windws 7.6, we noticed a difference 
with a computed column.

  S_Amt  =  (S_Qty * S_Unit)
  S_Amt is Currency
  S_Qty is Integer
  S_Unit is Double

  As an example, 
  S_Amt = 20389 * 0.565  

  On a calculator, the answer is 11519.785

  The computed column in DOS 6.1 shows 11519.78
  The computed column in Windows 7.6 shows  11519.79

  Obviously the 7.6 answer is "right".  Turns out the client was undercharging 
their customers by .01 on these types of amounts, and the customer would have 
paid 11519.78.  But if they make any change to the row in windows 7.6, it 
recalculates that s_Amt column, it increases by .01, and now the balance due is 
.01!   

  Does anyone remember this being a difference between older versions and newer 
versions?   Just looking for a clue as to why/when this behavior changed.  I'm 
assuming there's no way to change 7.6 so that it behaves like 6.1, even if it's 
"wrong"?   The problem we're having is that a user can make a change to the 
row's data in either DOS or Windows as we migrate, and that changes this amount 
back and forth!!

  Karen
  !DSPAM:4c9bafd1588389731018444! 

Reply via email to