>Hi,
>
>Does anyone have a good algorithm for rounding a number (money) to the nearest 50 cents, 75 cents, etc? I'm trying to avoid breaking it down into integer and decimal components and running through a case statement. I'm hoping for some slick one or two line UDF.
>
>thanks!
>Ken
OK, I'll give it a shot. How about:
FOR lnCount = 1 TO 5 step .01
? ALLTRIM(STR(lnCount,6,2)) + " Rounded: " + ALLTRIM(STR(RoundQtr(lnCount),6,2))
ENDFOR
FUNCTION RoundQtr()
LPARAMETER lnAmount
LOCAL lnRoundedAmt
lnRoundedAmt = .25 * (ROUND(lnamount/.25,0))
RETURN lnRoundedAmt
It seems to work OK.