Gå till huvudinnehåll

inweek - skript- och diagramfunktion

Denna funktion returnerar True om timestamp ligger inom den vecka som innehåller base_date.

Syntax:  

InWeek (timestamp, base_date, period_no[, first_week_day])

Typ av returdata: Boolesk

Argument:  

InWeek-argument
Argument Beskrivning
timestamp Det datum du vill jämföra mot base_date.
base_date Datum som används för att utvärdera veckan.
period_no Veckans startpunkt kan flyttas med period_no. period_no är ett heltal där värdet 0 anger den vecka som innehåller base_date. Negativa värden i period_no anger föregående veckor och positiva värden anger efterföljande veckor.
first_week_day

Som standardinställning är veckans första dag måndag, och börjar vid midnatt mellan söndag och måndag. Om du vill att veckan ska starta en annan dag anger du den flyttade startpunkten med first_week_day. Denna kan ges som ett helt antal dagar och/eller delar av en dag.

Exempel 1:  

inweek ('12/01/2006', '14/01/2006', 0)

Returnerar True

Exempel 2:  

inweek ('12/01/2006', '20/01/2006', 0 )

Returnerar False

Exempel 3:  

inweek ('12/01/2006', '14/01/2006', -1 )

Returnerar False

Exempel 4:  

inweek ('07/01/2006', '14/01/2006', -1)

Returnerar True

Exempel 5:  

inweek ('12/01/2006', '09/01/2006', 0, 3)

Returnerar False
Eftersom first_week_day är angett som 3 (torsdag), vilket gör 12/01/2006 till den första dagen i veckan efter veckan som innehåller 09/01/2006.

Exempel 6:  

Lägg till exempelskriptet i dokumentet och kör det. Lägg sedan till åtminstone de fält som listas i resultatkolumnen på ett ark i dokumentet för att se resultatet.

I det här exemplet undersöker vi om ett faktureringsdatum infaller under den fjärde veckan efter veckan i base_date, genom att ange period_no som 4.

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 *,

InWeek(InvDate, '11/01/2013', 4) AS InWeekPlus4

Resident TempTable;

Drop table TempTable;

Den resulterande tabellen innehåller de ursprungliga datumen och en kolumn med returvärdet för inweek()-funktionen.

InvDate 5/2/2013 infaller under veckan som ligger fyra veckor efter base_date: 11/1/2013.

Resultat för exempel 6
InvDate InWeekPlus4
28/03/2012 0 (False)
10/12/2012 0 (False)
5/2/2013 -1 (True)
31/3/2013 0 (False)
19/5/2013 0 (False)
15/9/2013 0 (False)
11/12/2013 0 (False)
2/3/2014 0 (False)
14/5/2014 0 (False)
13/6/2014 0 (False)
7/7/2014 0 (False)
4/8/2014 0 (False)

Gå med i programmet Analytics Modernization

Remove banner from view

Modernisera utan att kompromissa med dina värdefulla QlikView-appar med programmet för analysmodernisering. Klicka här för mer information eller ta kontakt: ampquestions@qlik.com