weekstart - script- en grafiekfunctie
Deze functie retourneert een waarde die overeenkomt met een tijdstempel van de eerste milliseconde van de eerste dag (maandag) van de kalenderweek die date bevat. De standaarduitvoernotatie is de DateFormat die is ingesteld in het script.
Syntaxis:
WeekStart(date [, period_no = 0 [, first_week_day=0]])
Retourgegevenstype: dual
Argumenten:
Argument | Beschrijving |
---|---|
date | De te evalueren datum. |
period_no | shift is een geheel getal, waarbij de waarde 0 de week aangeeft die date bevat. Negatieve waarden in verschuiving geven voorgaande weken aan en positieve waarden geven volgende weken aan. |
first_week_day |
Als u niet first_week_day opgeeft, wordt de waarde van de variabele FirstWeekDay gebruikt als eerste dag van de week. Als u een andere dag als eerste dag van de week wilt gebruiken, stelt u first_week_day in op:
Het gehele getal dat door de functie wordt geretourneerd gebruikt nu de eerste dag van de week die u hebt ingesteld met first_week_day als basis (0). |
Voorbeelden en resultaten:
Deze voorbeelden gebruiken de datumopmaak DD/MM/YYYY. De datumopmaak wordt opgegeven in de opdracht SET DateFormat boven aan uw load-script. Wijzig de opmaak in de voorbeelden zodat deze in uw behoeften voorziet.
Voorbeeld 1:
weekstart('12/01/2013')
Retourneert 07/01/2013.
Voorbeeld 2:
weekstart('12/01/2013', -1 )
Retourneert 31/11/2012.
Voorbeeld 3:
weekstart('12/01/2013', 0, 1)
Retourneert 08/01/2013.
Voorbeeld 4:
Voeg het voorbeeldscript toe aan uw document en voer dit uit. Voeg vervolgens ten minste de velden die in de resultatenkolom staan aan een werkblad in uw document toe om het resultaat te bekijken.
In dit voorbeeld wordt de eerste dag in de week na de week van elke factuurdatum in de tabel geretourneerd.
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;
De resulterende tabel bevat de oorspronkelijke datums en een kolom met de retourwaarde van de functie weekstart(). U kunt de volledige tijdstempel weergeven door de opmaak op te geven in de grafiekeigenschappen.
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 |