Gå till huvudinnehåll

inweektodate - skript- och diagramfunktion

Denna funktion returnerar True om timestamp ligger inom den del av veckan som innehåller base_date fram till och inklusive den sista millisekunden av base_date.

Syntax:  

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

Typ av returdata: Boolesk

Argument:  

InWeekToDate-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:  

inweektodate ('12/01/2006', '12/01/2006', 0)

Returnerar True

Exempel 2:  

inweektodate ('12/01/2006', '11/01/2006', 0)

Returnerar False

Exempel 3:  

inweektodate ('12/01/2006', '18/01/2006', -1)

Returnerar False
Eftersom period_no är angett som -1, är de faktiska data som timestamp jämförs med 11/01/2006.

Exempel 4:  

inweektodate ( '11/01/2006', '12/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 12/01/2006.

Exempel 5:  

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, men innan värdet för base_date.

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

InWeekToDate(InvDate, '11/01/2013', 4) AS InWeek2DPlus4

Resident TempTable;

Drop table TempTable;

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

Resultat för exempel 5
InvDate InWeek2DPlus4
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