Zu Hauptinhalt springen

weekstart - Skript- und Diagrammfunktion

Diese Funktion liefert den Zeitstempel der ersten Millisekunde des ersten Tags der Kalenderwoche (beginnend mit Montag), in der date liegt. Das Ergebnis wird entsprechend dem im Skript definierten DateFormat formatiert.

Syntax:  

WeekStart(date [, period_no = 0 [, first_week_day=0]])

Rückgabedatentyp: dual

Argumente:  

WeekStart-Argumente
Argument Beschreibung
date Das zu berechnende Datum.
period_no shift ist eine ganze Zahl, wobei 0 für die Woche steht, die date enthält. Negative Werte von shift stehen für vorangehende, positive Werte für nachfolgende Wochen.
first_week_day

Wenn Sie first_week_day nicht angeben, wird der Wert der Variable FirstWeekDay als erster Wochentag verwendet.

Wenn Sie einen anderen Tag als ersten Wochentag verwenden möchten, stellen Sie first_week_day folgendermaßen ein:

  • 0 für Montag
  • 1 für Dienstag
  • 2 für Mittwoch
  • 3 für Donnerstag
  • 4 für Freitag
  • 5 für Samstag
  • 6 für Sonntag

Die von der Funktion gelieferte ganze Zahl nutzt nun den ersten Wochentag, den Sie mit first_week_day festlegen, als Basis (0).

Beispiele und Ergebnisse:  

In diesen Beispielen wird das Datumsformat DD/MM/YYYY verwendet. Das Datumsformat wird im Befehl SET DateFormat oben in Ihrem Ladeskript angegeben. Ändern Sie das Format in den Beispielen nach Bedarf.

Beispiel 1:  

weekstart('12/01/2013')

Liefert 07/01/2013.

Beispiel 2:

weekstart('12/01/2013', -1 )

Liefert 31/11/2012.

Beispiel 3:  

weekstart('12/01/2013', 0, 1)

Liefert 08/01/2013.

Beispiel 4:  

Fügen Sie Ihrem Dokument das Beispielskript hinzu und führen Sie sie aus. Fügen Sie einem Arbeitsblatt in Ihrem Dokument dann mindestens diejenigen Felder hinzu, die in der Ergebnisspalte aufgeführt sind, um das Ergebnis anzuzeigen.

In diesem Beispiel wird der erste Tag der Woche ermittelt, die auf die Woche jedes Rechnungsdatums in der Tabelle folgt.

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;

Die sich daraus ergebende Tabelle enthält die ursprünglichen Daten sowie eine Spalte mit dem Rückgabewert der Funktion weekstart(). Sie können den vollständigen Zeitstempel anzeigen, indem Sie die Formatierung in den Diagrammeigenschaften angeben.

Beispiel 4 – Ergebnisse
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

Hat diese Seite Ihnen geholfen?

Wenn Sie Probleme mit dieser Seite oder ihren Inhalten feststellen – einen Tippfehler, einen fehlenden Schritt oder einen technischen Fehler –, teilen Sie uns bitte mit, wie wir uns verbessern können!

Nehmen Sie am Analyse-Modernisierungsprogramm teil

Remove banner from view

Modernisieren Sie mit dem Analyse-Modernisierungsprogramm, ohne Ihre wertvollen QlikView-Apps zu gefährden. Klicken Sie hier für weitere Informationen oder kontaktieren Sie uns: ampquestions@qlik.com