Gå till huvudinnehåll

monthsname - skript- och diagramfunktion

Denna funktion returnerar ett visningsvärde som representerar månadsintervallet i perioden (formaterat enligt skriptvariabeln MonthNames) liksom året. Det underliggande numeriska värdet motsvarar en tidsmarkör för den första millisekunden i månaden, tvåmånadersperioden, kvartalet, fyramånadersperioden eller halvåret som innehåller ett basdatum.

Syntax:  

MonthsName(n_months, date[, period_no[, first_month_of_year]])

Typ av returdata: dual

Argument:  

MonthsName-argument
Argument Beskrivning
n_months Antalet månader som definierar perioden. Ett heltal eller ett uttryck som resulterar i ett heltal som måste vara ett av följande: 1 (motsvaras av inmonth() -funktionen), 2 (tvåmånadersperiod), 3 (motsvaras av inquarter()-funktionen), 4 (fyramånadersperiod) eller 6 (halvår).
date Det datum som ska evalueras.
period_no Periodens startpunkt kan flyttas med period_no, ett heltal, eller ett uttryck som resulterar i ett heltal, där värdet 0 anger den period som innehåller base_date. Negativa värden i period_no anger föregående perioder och positiva värden anger efterföljande perioder.
first_month_of_year

Om du vill arbeta med (budget)år som inte börjar i januari kan du ange ett värde mellan 2 och 12 i first_month_of_year.

Exempel och resultat:  

I de här exemplen används datumformatet DD/MM/YYYY. Datumformatet anges i SET DateFormat-satsen längst upp i laddningsskriptet. Ändra formatet i exemplen så att det passar dina krav.

Exempel 1:  

monthsname(4, '19/10/2013')

Returnerar Sep-Dec 2013.
Eftersom SET Monthnames-satsen i det här och de andra exemplen har angetts som Jan;Feb;Mar och så vidare.

Exempel 2:  

monthsname(4, '19/10/2013', -1)

Returnerar May-Aug 2013.

Exempel 3:  

monthsname(4, '19/10/2013', 0, 2)

Returnerar Oct-Jan 2014.
Eftersom året har angetts att börja med månad 2 och därför slutar fyramånadersperioden med den första månaden av nästföljande år.

Exempel 4:  

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 skapas månadens namn för varje faktureringsdatum i tabellen av månadsintervallet i tvåmånadersperioden samt året. Intervallet flyttas med 4x2 månader genom att du anger 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 *,

MonthsName(2, InvDate, 4) AS MthsName

Resident TempTable;

Drop table TempTable;

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

Resultat för exempel 4
InvDate MthsName
28/03/2012 Nov-Dec 2012
10/12/2012 Jul-Aug 2013
5/2/2013 Sep-Oct 2013
31/3/2013 Nov-Dec2013
19/5/2013 Jan-Feb 2014
15/9/2013 May-Jun 2014
11/12/2013 Jul-Aug 2014
2/3/2014 Nov-Dec 2014
14/5/2014 Jan-Feb 2015
13/6/2014 Jan-Feb 2015
7/7/2014 Mar-Apr 2015
4/8/2014 Mar-Apr 2015

Var den här sidan till hjälp för dig?

Om du stöter på några problem med den här sidan eller innehållet på den, t.ex. ett stavfel, ett saknat steg eller ett tekniskt fel – meddela oss!

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