Zu Hauptinhalt springen

lunarweekstart - Skript- und Diagrammfunktion

Diese Funktion liefert den Zeitstempel der ersten Millisekunde der Mondwoche, in der date liegt. Mondwochen werden in QlikView festgelegt, indem der 1. Januar als erster Tag der Woche gezählt wird.

Syntax:  

LunarweekStart(date[, period_no[, first_week_day]])

Rückgabedatentyp: dual

Argumente:  

LunarweekStart-Argumente
Argument Beschreibung
date Das zu berechnende Datum.
period_no period_no ist eine ganze Zahl oder eine Formel, die eine ganze Zahl ergibt, wobei 0 für die Mondwoche steht, die date enthält. Negative Werte von period_no stehen für vorangehende, positive Werte für nachfolgende Mondwochen.
first_week_day Ein Startwert, der größer oder kleiner als Null sein kann. Dadurch wird der Beginn des Jahres um die angegebene Anzahl an Tagen und/oder den Bruchteil eines Tages verschoben.

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:  

lunarweekstart('12/01/2013')

Liefert 08/01/2013.

Beispiel 2:  

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

Liefert 01/01/2013.

Beispiel 3:  

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

Liefert 09/01/2013.
Weil der Startwert durch die Einstellung von first_week_day auf 1 festgelegt wurde, bedeutet dies, dass der Anfang des Jahres auf 02/01/2013 verändert wird.

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 Mondwoche für jedes Rechnungsdatum in der Tabelle ermittelt, wobei date um eine Woche verschoben wird, weil period_no als 1 festgelegt wurde.

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;

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

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

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