This function returns
a value corresponding to a timestamp of the first millisecond of the
lunar week containing date. Lunar weeks in Qlik Sense are defined by counting 1 January as the first day of the week.
period_no
is an integer or expression resolving to an integer, where the value 0 indicates the lunar week which contains
date. Negative values in period_no indicate preceding lunar weeks
and positive values indicate succeeding lunar weeks.
first_week_day
An offset that may be greater than or less than zero. This changes the beginning of the year by the specified number of days and/or fractions of
a day.
These examples use the date format DD/MM/YYYY. The date format is specified in the SET DateFormat statement at the top of your data load script. Change the format in the examples to suit your requirements.
Scripting examples
Example
Result
lunarweekstart('12/01/2013')
Returns 08/01/2013.
lunarweekstart('12/01/2013', -1)
Returns 01/01/2013.
lunarweekstart('12/01/2013', 0, 1
)
Returns 09/01/2013. Because the offset specified by setting first_week_day to 1 means the beginning of the year is changed to 02/01/2013.
Example:
Add the example script to your app and run it. Then add the fields listed in the results column to a sheet in your app to see the result.
This example finds the first day of the lunar week of each invoice date in the table, where the date is shifted by one week by specifying period_no as 1.
TempTable:
LOAD RecNo() as InvID, * Inline [
InvDate
28/03/2012
10/12/2012
5/2/2013
31/3/2013
19/5/2013
15/9/2013
11/12/2013
2/3/2014
14/5/2014
13/6/2014
7/7/2014
4/8/2014
];
InvoiceData:
LOAD *,
LunarWeekStart(InvDate, 1) AS LWkStart
Resident TempTable;
Drop table TempTable;
The resulting table contains the original dates and a column with the return value of the lunarweekstart() function. You can display the full timestamp by specifying the formatting in the properties panel.
Results table
InvDate
LWkStart
28/03/2012
01/04/2012
10/12/2012
16/12/2012
5/2/2013
12/02/2013
31/3/2013
02/04/2013
19/5/2013
21/05/2013
15/9/2013
17/09/2013
11/12/2013
17/12/2013
2/3/2014
05/03/2014
14/5/2014
21/05/2014
13/6/2014
18/06/2014
7/7/2014
09/07/2014
4/8/2014
06/08/2014
Did this page help you?
If you find any issues with this page or its content – a typo, a missing step, or a technical error – let us know how we can improve!