Denna funktion returnerar ett värde som motsvarar en tidsmarkör med den sista millisekunden av den sista dagen i den månad som innehåller date. Det förvalda utdataformatet blir det DateFormat som har definierats i skriptet.
Syntax:
MonthEnd(date[, period_no])
Med andra ord bestämmer monthend()-funktionen vilket år datumet infaller. Den returnerar sedan en tidsmarkör, i datumformat, för den sista millisekunden av den månaden.
Användning
monthend()-funktionen används som en del av ett uttryck när du vill att beräkningen ska använda den del av månaden som ännu inte har inträffat. Till exempel om du vill beräkna den totala ränta som ännu inte uppkommit under månaden.
Returnerad datatyp: dual
Argument
Argument
Beskrivning
date
Det datum eller den tidsmarkör som ska utvärderas.
period_no
period_no är ett heltal som om det är 0 eller utelämnas anger månaden som innehåller date. Negativa värden i period_no anger föregående månader och positiva värden anger efterföljande månader.
Lokala inställningar
Om inget annat anges använder exemplen i detta ämne följande datumformat: MM/DD/ÅÅÅÅ. Datumformatet anges i SET DateFormat-satsen i datainläsningsskriptet. Förvald datumformatering kan vara annorlunda i ditt system, på grund av dina regionala inställningar och andra faktorer. Du kan ändra formaten i exemplen nedan så att det passar dina krav. Eller så kan du ändra formaten i ditt laddningsskript så att de matchar dessa exempel.
Standardregionalinställningar i appar baseras på de regionala systeminställningarna för datorn eller servern där Qlik Sense är installerad. Om Qlik Sense-servern du ansluter till är inställd på Sverige så kommer skriptredigeraren använda regionala inställningar för Sverige för datum, tid och valuta. Dessa regionala formatinställningar är inte relaterade till språket som visas i Qlik Sense användargränssnittet. Qlik Sense kommer att visas på samma språk som webbläsaren du använder.
Exempel på funktioner
Exempel
Resultat
monthend('02/19/2012')
Returnerar 02/29/2012 23:59:59.
monthend('02/19/2001', -1)
Returnerar 01/31/2001 23:59:59.
Exempel 1 – Grundläggande exempel
Översikt
Öppn skriptredigeraren och lägg till laddningsskriptet nedan till en ny flik.
Laddningsskriptet innehåller:
En datauppsättning som innehåller transaktioner för 2022 som laddas i en tabell som heter Transactions.
Ett datumfält i systemvariabeln DateFormat i formatet MM/DD/YYYY.
En föregående load-sats som innehåller:
monthend()-funktionen som är inställd som end_of_month-fält.
timestamp-funktionen som är inställd som end_of_month_timestamp-fält.
Ladda data och öppna ett ark. Skapa en ny tabell och lägg till dessa fält som dimensioner:
id
date
previous_month_end
previous_month_end_timestamp
Resultattabell
id
date
previous_month_end
previous_month_end_timestamp
8188
1/7/2022
12/31/2021
12/31/2021 11:59:59 PM
8189
1/19/2022
12/31/2021
12/31/2021 11:59:59 PM
8190
2/5/2022
01/31/2022
1/31/2022 11:59:59 PM
8191
2/28/2022
01/31/2022
1/31/2022 11:59:59 PM
8192
3/16/2022
02/28/2022
2/28/2022 11:59:59 PM
8193
4/1/2022
03/31/2022
3/31/2022 11:59:59 PM
8194
5/7/2022
04/30/2022
4/30/2022 11:59:59 PM
8195
5/16/2022
04/30/2022
4/30/2022 11:59:59 PM
8196
6/15/2022
05/31/2022
5/31/2022 11:59:59 PM
8197
6/26/2022
05/31/2022
5/31/2022 11:59:59 PM
8198
7/9/2022
06/30/2022
6/30/2022 11:59:59 PM
8199
7/22/2022
06/30/2022
6/30/2022 11:59:59 PM
8200
7/23/2022
06/30/2022
6/30/2022 11:59:59 PM
8201
7/27/2022
06/30/2022
6/30/2022 11:59:59 PM
8202
8/2/2022
07/31/2022
7/31/2022 11:59:59 PM
8203
8/8/2022
07/31/2022
7/31/2022 11:59:59 PM
8204
8/19/2022
07/31/2022
7/31/2022 11:59:59 PM
8205
9/26/2022
08/31/2022
8/31/2022 11:59:59 PM
8206
10/14/2022
09/30/2022
9/30/2022 11:59:59 PM
8207
10/29/2022
09/30/2022
9/30/2022 11:59:59 PM
monthend()-funktionen identifierar först den månad som transaktionerna äger rum i som en period_no av -1 används som argument för förskjutningen. Den skiftar sedan till närmast föregående månad och identifierar den sista millisekunden i den månaden.
Transaktion 8192 ägde rum den 16 mars. monthend()-funktionen identifierar att månaden innan transaktionen ägde rum var februari. Den returnerar sedan den sista millisekunden den månaden, 28 februari 23:59:59.
Exampel 3 – Diagramexempel
Översikt
Samma datauppsättning och scenario som det första exemplet används.
I det här exemplet är dock datauppsättningen oförändrad och har laddats i appen. Uppgiften är att skapa en beräkning som returnerar en tidsmarkör för slutet av månaden då transaktionerna ägde rum som ett mått i ett diagram för appen.
monthend()-funktionen returnerar slutdatumet för den aktuella månaden genom att använda dagens datum som dess enda argument. Uttrycket returnerar antalet dagar som återstår denna månad genom att subtrahera dagens datum från månadens slutdatum.
Detta värde multipliceras sedan med det genomsnittliga dagliga kostnadsanspråket från varje anställd för att beräkna det uppskattade värdet av anspråk som varje anställd förväntas göra under den återstående månaden.
Var den här sidan till hjälp för dig?
Om du hittar några fel på denna sida eller i innehållet – ett stavfel, ett steg som saknas eller ett tekniskt fel – berätta för oss så att vi kan blir bättre!