weekstart - script and chart function
This function returns a value corresponding to a timestamp of the first millisecond of the first day (Monday) of the calendar week containing date. The default output format is the DateFormat set in the script.
Syntax:
WeekStart(date [, period_no[, first_week_day]])
Return data type: dual
Arguments:
Argument | Description |
---|---|
date | The date to evaluate. |
period_no | shift is an integer, where the value 0 indicates the week which contains date. Negative values in shift indicate preceding weeks and positive values indicate succeeding weeks. |
first_week_day |
Specifies the day on which the week starts. If omitted, the value of variable FirstWeekDay is used. The possible values first_week_day are:
|
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 week following the week of each invoice date in the table.
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 *,
WeekStart(InvDate, 1) AS WkStart
Resident TempTable;
Drop table TempTable;
The resulting table contains the original dates and a column with the return value of the weekstart() function. You can display the full timestamp by specifying the formatting in the properties panel.
InvDate | WkStart |
---|---|
28/03/2012 | 02/04/2012 |
10/12/2012 | 17/12/2012 |
5/2/2013 | 11/02/2013 |
31/3/2013 | 01/04/2013 |
19/5/2013 | 20/05/2013 |
15/9/2013 | 16/09/2013 |
11/12/2013 | 16/12/2013 |
2/3/2014 | 03/03/2014 |
14/5/2014 | 19/05/2014 |
13/6/2014 | 16/06/2014 |
7/7/2014 | 14/07/2014 |
4/8/2014 | 11/08/2014 |