Follow along with the video below to see how to install our site as a web app on your home screen.
Note: This feature may not be available in some browsers.
CLOSE all
CLEAR
SET SAFETY off
SET TALK OFF
SET STATUS off
? Flat(6.42)
? Flat(6.45)
? Flat(6.47)
FUNCTION Flat
PARAMETERS m.DecValue
PRIVATE m.DecValue,m.RetValue,m.String
m.RetValue = VAL(RIGHT(Str(m.DecValue,14,2),1))
IF m.RetValue < 5
m.RetValue = 0.00
ELSE
m.RetValue = 0.05
ENDIF
m.RetValue = VAL(LEFT(STR(m.DecValue,14,2),13))+m.retValue
RETURN(m.RetValue)
CLOSE all
CLEAR
SET SAFETY off
SET TALK OFF
SET STATUS off
? Flat(6.42)
? Flat(6.45)
? Flat(6.47)
FUNCTION Flat
PARAMETERS m.DecValue
PRIVATE m.DecValue,m.RetValue,m.String
m.RetValue = ROUND(m.DecValue/5,2)*5
RETURN(m.RetValue)
TamarGranor said:
LPARAMETERS nValue, nNearest
LOCAL nRemainder, nReturn
nRemainder = MOD(m.nValue, m.nNearest)
IF m.nRemainder >= m.nNearest/2
nReturn = m.nValue + (m.nNearest - m.nRemainder)
ELSE
nReturn = m.nValue - m.nRemainder
ENDIF
RETURN m.nReturn
I think your code is the best answer for my case Griff! I think I'm going to use that. THANKS so much!! I'm not trying to make comparison here, Just trying to find solution. No hard feelings.GriffMG said:Code:FUNCTION Flat PARAMETERS m.DecValue PRIVATE m.DecValue,m.RetValue,m.String m.RetValue = VAL(RIGHT(Str(m.DecValue,14,2),1)) IF m.RetValue < 5 m.RetValue = 0.00 ELSE m.RetValue = 0.05 ENDIF m.RetValue = VAL(LEFT(STR(m.DecValue,14,2),13))+m.retValue RETURN(m.RetValue)
? RoundToUnit(1.54, 1)
? RoundToUnit(1.54, .1)
? RoundToUnit(1.54, .05)
? RoundToUnit(1.53, .05)
? RoundToUnit(1.52, .05)
Procedure RoundToUnit(tnNumber, tnUnit)
Return Round(tnNumber/tnUnit,0)*tnUnit
EndProc