!***************************************************************************! !* *! !* WDAY *! !* ROUTINE to get the day of week within a basic program *! !* *! !***************************************************************************! ! Copyright (C) 1987 ! by ! Attorney's Title Services, Inc. ! All Rights Reserved ! Written by: Jim Benard ! !Edit History: !1.0 Feb 27, 1987 created. /jlb MAP1 JULIAN, F, 6 ! Julian date MAP1 DATE1, S, 10 ! Starting Date (ccyymmdd) MAP1 JYEAR, F, 6 ! Current Year MAP1 JMONTH, F, 6 ! Current Month MAP1 JDAY, F, 6 ! Current Day MAP1 DATE'KEY, S, 10,"19870227" ! Starting Date (ccyymmdd) MAP1 DAY'OF'WEEK( 7 ), S, 9 ! Day of the week. DAY'OF'WEEK( 1 ) = "Monday" DAY'OF'WEEK( 2 ) = "Tuesday" DAY'OF'WEEK( 3 ) = "Wednesday" DAY'OF'WEEK( 4 ) = "Thursday" DAY'OF'WEEK( 5 ) = "Friday" DAY'OF'WEEK( 6 ) = "Saturday" DAY'OF'WEEK( 7 ) = "Sunday" !//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\! DAY'OF'WEEK: !* Routine to calculate the day of the week using *! !* ancient calculations and virgin sacrifices. *! !********************************************************! DATE1 = STR(DATE'KEY) JYEAR = VAL( DATE1[1,4] ) JMONTH = VAL( DATE1[5,6] ) JDAY = VAL( DATE1[7,8] ) IF (JMONTH > 2) THEN JMONTH = JMONTH - 2 & ELSE JMONTH = JMONTH + 10 & : JYEAR = JYEAR - 1 JULIAN = ( INT(365.25 * JYEAR) + INT(367 * JMONTH/12) + JDAY + 1721089 ) JULIAN = ( JULIAN - INT((((INT(JYEAR/100) + 1) * 3) /4))) !* Julian date. . . JDAY = INT( ((JULIAN/7 - INT(JULIAN/7)) * 7) + 0.5 ) + 1 PRINT DAY'OF'WEEK(JDAY) END !//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\!