Possibility to extract week number from a date
Could you add to DateTime module possibility to extract week number from a date in script? Like in std .net: System.Globalization.ISOWeek.GetWeekOfYear(DateTime.Now).
We would like to inform you that this feature request has been declined as a workaround was presented under the comments section.
-
AdminOla Carlander
(Admin, Novacura)
commented
Hi, yes, but you can as well:
open DateTime;
function dayNumber(self date: datetime): number {
return case when date.getDayOfWeek() = "monday" then 1
when date.getDayOfWeek() = "tuesday" then 2
when date.getDayOfWeek() = "wednesday" then 3
when date.getDayOfWeek() = "thursday" then 4
when date.getDayOfWeek() = "friday" then 5
when date.getDayOfWeek() = "saturday" then 6
else 7
end;
}function getISOWeek(self date: datetime): number {
let dayNum = date.dayNumber();// ISO-året bestäms av torsdagen i aktuell vecka
let thursday = date.addDays(4 - dayNum);
let isoYear = thursday.getYear();let jan4 = createDate(isoYear, 1, 4);
let jan4DayNum = jan4.dayNumber();let mondayOfDate = date.addDays(1 - dayNum);
let mondayOfJan4Week = jan4.addDays(1 - jan4DayNum);let daysDifference = differenceInDays(mondayOfJan4Week, mondayOfDate);
return round(daysDifference / 7) + 1;
}return date("2021-01-04").getISOWeek();