# monthname - skript- och diagramfunktion

Denna funktion returnerar ett visningsvärde med månaden (formaterat enligt skriptvariabeln MonthNames) och året med ett underliggande numeriskt värde som motsvarar en tidsmarkör för den första millisekunden av månadens första dag.

Syntax:

MonthName(date[, period\_no])

Returnerad datatyp: dual

Diagram för monthname-funktionen

Diagram för monthname-funktionen

Diagram för monthname-funktionen ![Exempeldiagram för monthname-funktionen, som visar hur funktionen returnerar det kombinerade resultatet för en månad och ett år när det ges ett specifikt inmatningsdatum.](https://help.qlik.com/sv-SE/sense/November2024/Subsystems/Hub/Content/Resources/Images/scripting-functions-monthname-general.png)

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. |

Exempel på funktioner

| Exempel | Resultat |
| --- | --- |
| `monthname('10/19/2013')` | Returnerar Oct 2013 |
| `monthname('10/19/2013', -1)` | Returnerar Sep 2013 |

## 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 1 – Grundläggande exempel

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/monthname.htm)

#### Laddningsskript och resultat

Ö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 läses in i en tabell som heter `Transactions`.

* Datumfältet tillhandahålls i formatet (ÅÅÅÅ-MM-DD) i systemvariabeln `DateFormat`.

* Skapandet av ett fält, `transaction_month`, som returnerar månaden då transaktionerna ägde rum.

Laddningsskript

```
SET DateFormat='MM/DD/YYYY';
SET MonthNames='Jan;Feb;Mar;Apr;May;Jun;Jul;Aug;Sep;Oct;Nov;Dec';
						
Transactions:
    Load
        *,
        monthname(date) as transaction_month
        ;
Load
*
Inline
[
id,date,amount
8188,1/7/2022,17.17
8189,1/19/2022,37.23
8190,2/28/2022,88.27
8191,2/5/2022,57.42
8192,3/16/2022,53.80
8193,4/1/2022,82.06
8194,5/7/2022,40.39
8195,5/16/2022,87.21
8196,6/15/2022,95.93
8197,6/26/2022,45.89
8198,7/9/2022,36.23
8199,7/22/2022,25.66
8200,7/23/2022,82.77
8201,7/27/2022,69.98
8202,8/2/2022,76.11
8203,8/8/2022,25.12
8204,8/19/2022,46.23
8205,9/26/2022,84.21
8206,10/14/2022,96.24
8207,10/29/2022,67.67
];
```

Resultat

Ladda data och öppna ett ark. Skapa en ny tabell och lägg till dessa fält som dimensioner:

* `date`

* `transaction_month`

Resultattabell

| date | transaction\_month |
| --- | --- |
| 1/7/2022 | Jan 2022 |
| 1/19/2022 | Jan 2022 |
| 2/5/2022 | Feb 2022 |
| 2/28/2022 | Feb 2022 |
| 3/16/2022 | Mar 2022 |
| 4/1/2022 | Apr 2022 |
| 5/7/2022 | Maj 2022 |
| 5/16/2022 | Maj 2022 |
| 6/15/2022 | Jun 2022 |
| 6/26/2022 | Jun 2022 |
| 7/9/2022 | Jul 2022 |
| 7/22/2022 | Jul 2022 |
| 7/23/2022 | Jul 2022 |
| 7/27/2022 | Jul 2022 |
| 8/2/2022 | Aug 2022 |
| 8/8/2022 | Aug 2022 |
| 8/19/2022 | Aug 2022 |
| 9/26/2022 | Sep 2022 |
| 10/14/2022 | Okt 2022 |
| 10/29/2022 | Okt 2022 |

`transaction_month`-fältet skapades i den föregående load-satsen genom att använda `monthname()`-funktionen och skicka `date`-fältet som funktionens argument.

Diagram för monthname-funktionen

Diagram för monthname-funktionen

Diagram för monthname-funktionen![Diagram som visar resultatet av att använda monthname-funktionen för att bestämma månaden då en transaktion ägde rum.](https://help.qlik.com/sv-SE/sense/November2024/Subsystems/Hub/Content/Resources/Images/scripting-functions-monthname-basic-example.png)

`monthname()`-funktionen identifierar att transaktion 8192 ägde rum i mars 2022 och returnerar detta värde med hjälp av systemvariabeln `MonthNames`.

## Exampel 2 – period\_no

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/monthname.htm)

#### Laddningsskript och resultat

Översikt

Öppn skriptredigeraren och lägg till laddningsskriptet nedan till en ny flik.

Laddningsskriptet innehåller:

* Samma inline-datauppsättning och scenario som det första exemplet används.

* Skapandet av ett fält, `transaction_previous_month`, som returnerar tidsmarkören för månadsslutet före transaktionen ägde rum.

Laddningsskript

```
SET DateFormat='MM/DD/YYYY';
SET MonthNames='Jan;Feb;Mar;Apr;May;Jun;Jul;Aug;Sep;Oct;Nov;Dec';

Transactions:
    Load
        *,
        monthname(date,-1) as transaction_previous_month
        ;
Load
*
Inline
[
id,date,amount
8188,1/7/2022,17.17
8189,1/19/2022,37.23
8190,2/28/2022,88.27
8191,2/5/2022,57.42
8192,3/16/2022,53.80
8193,4/1/2022,82.06
8194,5/7/2022,40.39
8195,5/16/2022,87.21
8196,6/15/2022,95.93
8197,6/26/2022,45.89
8198,7/9/2022,36.23
8199,7/22/2022,25.66
8200,7/23/2022,82.77
8201,7/27/2022,69.98
8202,8/2/2022,76.11
8203,8/8/2022,25.12
8204,8/19/2022,46.23
8205,9/26/2022,84.21
8206,10/14/2022,96.24
8207,10/29/2022,67.67
];
```

Resultat

Ladda data och öppna ett ark. Skapa en ny tabell och lägg till dessa fält som dimensioner:

* `date`

* `transaction_previous_month`

Resultattabell

| date | transaction\_previous\_month |
| --- | --- |
| 1/7/2022 | Dec 2021 |
| 1/19/2022 | Dec 2021 |
| 2/5/2022 | Jan 2022 |
| 2/28/2022 | Jan 2022 |
| 3/16/2022 | Feb 2022 |
| 4/1/2022 | Mar 2022 |
| 5/7/2022 | Apr 2022 |
| 5/16/2022 | Apr 2022 |
| 6/15/2022 | Maj 2022 |
| 6/26/2022 | Maj 2022 |
| 7/9/2022 | Jun 2022 |
| 7/22/2022 | Jun 2022 |
| 7/23/2022 | Jun 2022 |
| 7/27/2022 | Jun 2022 |
| 8/2/2022 | Jul 2022 |
| 8/8/2022 | Jul 2022 |
| 8/19/2022 | Jul 2022 |
| 9/26/2022 | Aug 2022 |
| 10/14/2022 | Sep 2022 |
| 10/29/2022 | Sep 2022 |

I det här fallet, eftersom ett `period_no` på -1 användes som förskjutningsargument i `monthname()`-funktionen, identifierar funktionen först den månad då transaktionerna äger rum. Den skiftar sedan till en månad innan och returnerar månadens namn och år.

Exempel på diagram för monthname-funktionen, period\_no

Exempel på diagram för monthname-funktionen, period\_no

Exempel på diagram för monthname-funktionen, period\_no![Diagram som visar resultatet av att använda monthname-funktionen för att bestämma månaden då en transaktion ägde rum.](https://help.qlik.com/sv-SE/sense/November2024/Subsystems/Hub/Content/Resources/Images/scripting-functions-monthname-period-no.png)

Transaktion 8192 ägde rum den 16 mars. `monthname()`-funktionen identifierar att månaden innan transaktionen ägde rum var februari och returnerar månaden, i systemvariabelformatet `MonthNames` tillsammans med år 2022.

## Exampel 3 – Diagramobjektexempel

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/monthname.htm)

#### Laddningsskript och diagramuttryck

Översikt

Öppna skriptredigeraren och lägg till laddningsskriptet nedan i en ny flik.

Laddningsskriptet innehåller samma datauppsättning och scenario som i det första exemplet. I det här exemplet har dock den oförändrade datauppsättningen skickats till programmet. Beräkningen som returnerar en tidsmarkör för slutet av månaden då transaktionerna ägde rum skapas som ett mått i ett diagramobjekt för programmet.

Laddningsskript

```
SET DateFormat='MM/DD/YYYY';
SET MonthNames='Jan;Feb;Mar;Apr;May;Jun;Jul;Aug;Sep;Oct;Nov;Dec';

Transactions:
Load
*
Inline
[
id,date,amount
8188,1/7/2022,17.17
8189,1/19/2022,37.23
8190,2/28/2022,88.27
8191,2/5/2022,57.42
8192,3/16/2022,53.80
8193,4/1/2022,82.06
8194,5/7/2022,40.39
8195,5/16/2022,87.21
8196,6/15/2022,95.93
8197,6/26/2022,45.89
8198,7/9/2022,36.23
8199,7/22/2022,25.66
8200,7/23/2022,82.77
8201,7/27/2022,69.98
8202,8/2/2022,76.11
8203,8/8/2022,25.12
8204,8/19/2022,46.23
8205,9/26/2022,84.21
8206,10/14/2022,96.24 
8207,10/29/2022,67.67
];
```

Resultat

Ladda data och öppna ett ark. Skapa en ny tabell och lägg till det här fältet som en dimension:`date`.

Skapa följande mått:

`=monthname(date)`

Resultattabell

| date | =monthname(date) |
| --- | --- |
| 1/7/2022 | Jan 2022 |
| 1/19/2022 | Jan 2022 |
| 2/5/2022 | Feb 2022 |
| 2/28/2022 | Feb 2022 |
| 3/16/2022 | Mar 2022 |
| 4/1/2022 | Apr 2022 |
| 5/7/2022 | Maj 2022 |
| 5/16/2022 | Maj 2022 |
| 6/15/2022 | Jun 2022 |
| 6/26/2022 | Jun 2022 |
| 7/9/2022 | Jul 2022 |
| 7/22/2022 | Jul 2022 |
| 7/23/2022 | Jul 2022 |
| 7/27/2022 | Jul 2022 |
| 8/2/2022 | Aug 2022 |
| 8/8/2022 | Aug 2022 |
| 8/19/2022 | Aug 2022 |
| 9/26/2022 | Sep 2022 |
| 10/14/2022 | Okt 2022 |
| 10/29/2022 | Okt 2022 |

`month_name`-måttet skapades i den föregående load-satsen genom att använda `monthname()`-funktionen och skicka `date`-fältet som funktionens argument.

Exempel på diagram för monthname-funktionen, diagramobjekt

Exempel på diagram för monthname-funktionen, diagramobjekt

Exempel på diagram för monthname-funktionen, diagramobjekt![Diagram som visar resultatet av att använda monthname-funktionen för att bestämma månaden då en transaktion ägde rum.](https://help.qlik.com/sv-SE/sense/November2024/Subsystems/Hub/Content/Resources/Images/scripting-functions-monthname-chart-object.png)

`monthname()`-funktionen identifierar att transaktion 8192 ägde rum i mars 2022 och returnerar detta värde med hjälp av systemvariabeln `MonthNames`.