Topic complex |
Date functions |
Function |
dayofweek() |
Short |
Weekday of a date |
Syntax |
DAYOFWEEK(date : INTEGER) : STRING |
Parameter |
date : date in the format of the tdbengine (days since 0000-01-01) |
Return |
Weekday of a date (German)
"Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag", "Sonntag" |
See also: |
|
Description |
Example:
"Today is "+DAYOFWEEK(TODAY)+", the "+DATESTR(TODAY) ->
Today is Dienstag, the 13.06.2000
You get the original value of the weekday with the formula:
1+(date+5) MOD 7
1 = monday
2 = tuesday
...
Consequently you can write an own function DayOfWeek:
PROCEDURE DayOfWeek(date : INTEGER) : STRING
VAR w_day : INTEGER
w_day:=1+(date+5) MOD 7
IF w_day=1 THEN RETURN "Monday"
ELSIF w_day=2 THEN RETURN "Tuesday"
ELSIF w_day=3 THEN RETURN "Wednesday"
...
END
ENDPROC
or shorter
RETURN choice(w_day,"mon","tue","wed","thu","fri","sat","sun")
|
Example 1: DayOfWeek
PROCEDURE DayOfWeek(date : INTEGER) : STRING
VAR w_day : INTEGER w_day:=1+(date+4) MOD 7
IF w_day=1 THEN RETURN "monday"
ELSIF w_day=2 THEN RETURN "tuesday"
ELSIF w_day=3 THEN RETURN "wednesday"
...
// oder kürzer
// RETURN choice(w_day,"mo","di","mi","do","fr","sa","so")
END
ENDPROC
|
Write a comment:
|