| The following code sets the symbols #SETS_DATE and $SETS_DATE with
the date of the nearest Saturday (for an timesheet application).
If you are looking for the next Monday, change the offsets to
+1,0,+6,+5,+4, +3,+2 respectively.
This code is an enhancement from an example I got from Jack
Creamer.
_Mike
GET OA$FUNCTION = "GET #SETSOFFSET" OA$_DAY_OF_WEEK_1::1 " = '-1'"\
GET OA$FUNCTION = "GET #SETSOFFSET" OA$_DAY_OF_WEEK_2::1 " = '-2'"\
GET OA$FUNCTION = "GET #SETSOFFSET" OA$_DAY_OF_WEEK_3::1 " = '-3'"\
GET OA$FUNCTION = "GET #SETSOFFSET" OA$_DAY_OF_WEEK_4::1 " = '-4'"\
GET OA$FUNCTION = "GET #SETSOFFSET" OA$_DAY_OF_WEEK_5::1 " = '+2'"\
GET OA$FUNCTION = "GET #SETSOFFSET" OA$_DAY_OF_WEEK_6::1 " = '+1'"\
GET OA$FUNCTION = "GET #SETSOFFSET" OA$_DAY_OF_WEEK_7::1 " = '+0'"\
DATE_CONVERT #SETS_DAYOFWEEK,OA$DATE_FULL,5\
GET OA$FUNCTION = 'GET #SETS_DATE_STRING = OA$_TM_SETDATE_TODAY " "
#SETSOFFSET' #SETS_DAYOFWEEK ' OA$_TM_SETDATE_D'\
DATE_CONVERT #SETS_DATE,#SETS_DATE_STRING,2\
GET #NULL = CAL$SET_DATE:"$SETS_DATE".%WHOLE[#SETS_DATE]
|