# yearname - skript- och diagramfunktion

Denna funktion returnerar ett fyrsiffrigt år som visningsvärde med ett underliggande numeriskt värde som motsvarar en tidsmarkör för den första millisekunden av den första dagen på det år som innehåller date.

Diagram över tidsintervall för `yearname()` -funktionen.

Diagram över tidsintervall för `yearname()` -funktionen.

Diagram över tidsintervall för `yearname()`yearname() -funktionen. ![Diagram som visar tidsintervallet inom vilket årsnamnsfunktionen kommer att returnera ett resultat.](https://help.qlik.com/sv-SE/sense/May2025/Subsystems/Hub/Content/Resources/Images/scripting-functions-yearname-diagram1.png)

`yearname()`-funktionen skiljer sig från `year()`-funktionen eftersom den låter dig förskjuta det datum du vill utvärdera och låter dig ställa in årets första månad.

Om årets första månad inte är januari kommer funktionen att returnera de två fyrsiffriga åren över den tolvmånadersperiod som innehåller datumet. Till exempel, om början av året är april och datumet som utvärderas är 06/30/2020 så skulle det returnerade resultatet vara `2020-2021`.

Diagram för `yearname()`-funktionen med april inställt som årets första månad.

Diagram för `yearname()`-funktionen med april inställt som årets första månad.

Diagram för `yearname()`yearname()-funktionen med april inställt som årets första månad. ![Diagram som visar att yearname-funktionen kan identifiera datum inom en tolvmånadersperiod och att avkastningen då kan bero på vilken månad som är satt som årets första månad.](https://help.qlik.com/sv-SE/sense/May2025/Subsystems/Hub/Content/Resources/Images/scripting-functions-yearname-diagram2.png)

Syntax:

YearName(date[, period\_no[, first\_month\_of\_year]] )

Returnerad datatyp: dual

| Argument | Beskrivning |
| --- | --- |
| date | Det datum eller den tidsmarkör som ska utvärderas. |
| period\_no | period\_no är ett heltal, där värdet 0 anger det år som innehåller date. Negativa värden i period\_no anger föregående år och positiva värden anger efterföljande år. |
| 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. Visningsvärdet blir då en sträng som visar två år. |

Du kan använda följande värden för att ställa in den första månaden på året i argumentet `first_month_of_year`:

first\_month\_of\_year values

| Månad | Värde |
| --- | --- |
| februari | 2 |
| mars | 3 |
| april | 4 |
| Maj | 5 |
| juni | 6 |
| juli | 7 |
| augusti | 8 |
| september | 9 |
| oktober | 10 |
| november | 11 |
| december | 12 |

Användning

`yearname()`-funktionen är användbar för att jämföra aggregeringar per år. Till exempel om du vill se den totala försäljningen av produkter per vecka.

Dessa dimensioner kan skapas i laddningsskriptet genom att använda funktionen för att skapa ett fält i en Master Calendar-tabell. De kan också skapas i ett diagram som beräknade dimensioner

## 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 |
| --- | --- |
| `yearname('10/19/2001')` | Returnerar '2001.' |
| `yearname('10/19/2001',-1)` | Returnerar "2000". |
| `yearname('10/19/2001',0,4)` | Returnerar "2000-2001". |

Relaterade ämnen

| Avsnitt | Beskrivning |
| --- | --- |
| [year - skript- och diagramfunktion](https://help.qlik.com/sv-SE/sense/May2025/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/year.htm) | Denna funktion returnerar ett heltal som motsvarar året om uttrycket tolkas som ett datum enligt standardtolkningen av tal. |

## Exempel 1 – inga ytterligare argument

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

#### Laddningsskript och resultat

Översikt

Öppna dataladdningsredigeraren och lägg till laddningsskriptet nedan i ett nytt delavsnitt.

Laddningsskriptet innehåller:

* En datauppsättning som innehåller transaktioner mellan år 2020 och 2022 som läses in i en tabell som heter `Transactions`.

* Systemvariabeln `DateFormat` som är inställd på `MM/DD/YYYY`.

* En föregående laddning som innehåller `yearname()`-funktionen som är inställd på `year_name`-fältet.

Laddningsskript

```
SET DateFormat='MM/DD/YYYY'; 
						
Transactions: 
    Load 
      *, 
      yearname(date) as year_name 
      ; 
Load 
* 
Inline  
[ 
id,date,amount 
8188,'01/13/2020',37.23 
8189,'02/26/2020',17.17 
8190,'03/27/2020',88.27 
8191,'04/16/2020',57.42 
8192,'05/21/2020',53.80 
8193,'08/14/2020',82.06 
8194,'10/07/2020',40.39 
8195,'12/05/2020',87.21 
8196,'01/22/2021',95.93 
8197,'02/03/2021',45.89 
8198,'03/17/2021',36.23 
8199,'04/23/2021',25.66 
8200,'05/04/2021',82.77 
8201,'06/30/2021',69.98 
8202,'07/26/2021',76.11 
8203,'12/27/2021',25.12 
8204,'06/06/2022',46.23 
8205,'07/18/2022',84.21 
8206,'11/14/2022',96.24 
8207,'12/12/2022',67.67 
]; 
```

Resultat

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

* `date`
* `year_name`

Resultattabell

| datum | year\_name |
| --- | --- |
| 01/13/2020 | 2020 |
| 02/26/2020 | 2020 |
| 03/27/2020 | 2020 |
| 04/16/2020 | 2020 |
| 05/21/2020 | 2020 |
| 08/14/2020 | 2020 |
| 10/07/2020 | 2020 |
| 12/05/2020 | 2020 |
| 01/22/2021 | 2021 |
| 02/03/2021 | 2021 |
| 03/17/2021 | 2021 |
| 04/23/2021 | 2021 |
| 05/04/2021 | 2021 |
| 06/30/2021 | 2021 |
| 07/26/2021 | 2021 |
| 12/27/2021 | 2021 |
| 06/06/2022 | 2022 |
| 07/18/2022 | 2022 |
| 11/14/2022 | 2022 |
| 12/12/2022 | 2022 |

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

`yearname()`-funktionen identifierar vilket år datumvärdet infaller och returnerar detta som ett fyrsiffrigt årtal.

Diagram över `yearname()`-funktionen som visar 2021 som årsvärde.

Diagram över `yearname()`-funktionen som visar 2021 som årsvärde.

Diagram över `yearname()`yearname()-funktionen som visar 2021 som årsvärde.![Diagram som visar yearname()-funktionen returnerar 2021 för datumet 17 mars 2021.](https://help.qlik.com/sv-SE/sense/May2025/Subsystems/Hub/Content/Resources/Images/scripting-functions-yearname-example1-diagram.png)

## Exempel 2 – period\_no

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

#### Laddningsskript och resultat

Översikt

Öppna dataladdningsredigeraren och lägg till laddningsskriptet nedan i ett nytt delavsnitt.

Laddningsskriptet innehåller:

* En datauppsättning som innehåller transaktioner mellan år 2020 och 2022 som läses in i en tabell som kallas transaktioner.

* Systemvariabeln DateFormat som är inställd på `MM/DD/YYYY`.

* En föregående inläsning som innehåller `yearname()`-funktionen som är inställd på `year_name`-fältet.

Laddningsskript

```
SET DateFormat='MM/DD/YYYY'; 

Transactions: 
    Load 
      *, 
      yearname(date,-1) as prior_year_name 
      ; 
Load 
* 
Inline  
[ 
id,date,amount 
8188,'01/13/2020',37.23 
8189,'02/26/2020',17.17 
8190,'03/27/2020',88.27 
8191,'04/16/2020',57.42 
8192,'05/21/2020',53.80 
8193,'08/14/2020',82.06 
8194,'10/07/2020',40.39 
8195,'12/05/2020',87.21 
8196,'01/22/2021',95.93 
8197,'02/03/2021',45.89 
8198,'03/17/2021',36.23 
8199,'04/23/2021',25.66 
8200,'05/04/2021',82.77 
8201,'06/30/2021',69.98 
8202,'07/26/2021',76.11 
8203,'12/27/2021',25.12 
8204,'06/06/2022',46.23 
8205,'07/18/2022',84.21 
8206,'11/14/2022',96.24 
8207,'12/12/2022',67.67 
];  
```

Resultat

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

* `date`
* `prior_year_name`

Resultattabell

| datum | prior\_year\_name |
| --- | --- |
| 01/13/2020 | 2019 |
| 02/26/2020 | 2019 |
| 03/27/2020 | 2019 |
| 04/16/2020 | 2019 |
| 05/21/2020 | 2019 |
| 08/14/2020 | 2019 |
| 10/07/2020 | 2019 |
| 12/05/2020 | 2019 |
| 01/22/2021 | 2020 |
| 02/03/2021 | 2020 |
| 03/17/2021 | 2020 |
| 04/23/2021 | 2020 |
| 05/04/2021 | 2020 |
| 06/30/2021 | 2020 |
| 07/26/2021 | 2020 |
| 12/27/2021 | 2020 |
| 06/06/2022 | 2021 |
| 07/18/2022 | 2021 |
| 11/14/2022 | 2021 |
| 12/12/2022 | 2021 |

Eftersom en `period_no` på `-1` används som förskjutningsargument i `yearname()`-funktionen så identifierar funktionen först året då transaktionerna äger rum. Funktionen flyttas sedan till ett år tidigare och returnerar det resulterande året.

Diagram för `yearname()`-funktionen med `period_no` inställt på `-1`.

Diagram för `yearname()`-funktionen med `period_no` inställt på `-1`.

Diagram för `yearname()`yearname()-funktionen med `period_no`period\_no inställt på `-1`-1.![Diagram som visar hur en period_no av minus ett ändrar tidsintervallen som yearname()-funktione identifierar.](https://help.qlik.com/sv-SE/sense/May2025/Subsystems/Hub/Content/Resources/Images/scripting-functions-yearname-example2-diagram.png)

## Exempel 3 – first\_month\_of\_year

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

#### Laddningsskript och resultat

Översikt

Öppna dataladdningsredigeraren och lägg till laddningsskriptet nedan i ett nytt delavsnitt.

Laddningsskriptet innehåller:

* Samma datauppsättning som i det första exemplet.

* Systemvariabeln `DateFormat` som är inställd på `MM/DD/YYYY`.

* En föregående inläsning som innehåller `yearname()`-funktionen som är inställd på `year_name`-fältet.

Laddningsskript

```
SET DateFormat='MM/DD/YYYY'; 

Transactions: 
    Load 
      *, 
      yearname(date,0,4) as year_name 
      ; 
Load 
* 
Inline  
[ 
id,date,amount 
8188,'01/13/2020',37.23 
8189,'02/26/2020',17.17 
8190,'03/27/2020',88.27 
8191,'04/16/2020',57.42 
8192,'05/21/2020',53.80 
8193,'08/14/2020',82.06 
8194,'10/07/2020',40.39 
8195,'12/05/2020',87.21 
8196,'01/22/2021',95.93 
8197,'02/03/2021',45.89 
8198,'03/17/2021',36.23 
8199,'04/23/2021',25.66 
8200,'05/04/2021',82.77 
8201,'06/30/2021',69.98
8202,'07/26/2021',76.11 
8203,'12/27/2021',25.12 
8204,'06/06/2022',46.23 
8205,'07/18/2022',84.21 
8206,'11/14/2022',96.24 
8207,'12/12/2022',67.67 
];
```

Resultat

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

* `id`
* `date`
* `year_name`

Resultattabell

| datum | year\_name |
| --- | --- |
| 01/13/2020 | 2019-2020 |
| 02/26/2020 | 2019-2020 |
| 03/27/2020 | 2019-2020 |
| 04/16/2020 | 2020-2021 |
| 05/21/2020 | 2020-2021 |
| 08/14/2020 | 2020-2021 |
| 10/07/2020 | 2020-2021 |
| 12/05/2020 | 2020-2021 |
| 01/22/2021 | 2020-2021 |
| 02/03/2021 | 2020-2021 |
| 03/17/2021 | 2020-2021 |
| 04/23/2021 | 2021-2022 |
| 05/04/2021 | 2021-2022 |
| 06/30/2021 | 2021-2022 |
| 07/26/2021 | 2021-2022 |
| 12/27/2021 | 2021-2022 |
| 06/06/2022 | 2022-2023 |
| 07/18/2022 | 2022-2023 |
| 11/14/2022 | 2022-2023 |
| 12/12/2022 | 2022-2023 |

Eftersom `first_month_of_year`-argumentet för `4` används i `yearname()`-funktionen, flyttas början av året från 1 januari till 1 april. Därför innefattar varje tolvmånadersperiod två kalenderår och funktionen `yearname()` returnerar de två fyrsiffriga åren för utvärderade datum.

Transaktion 8199 ägde rum den 17 mars 2021. `yearname()`-funktionen ställer in början av året på den 1 april och slutet den 30 mars. Därför inträffade transaktion 8198 under årsperioden från 1 april 2020 till 30 mars 2021. På grund av detta returnerar `yearname()`-funktionen värdet 2020-2021.

Diagram för `yearname()`-funktionen med mars inställt som årets första månad.

Diagram för `yearname()`-funktionen med mars inställt som årets första månad.

Diagram för `yearname()`yearname()-funktionen med mars inställt som årets första månad.![Diagram som visar tidsintervallet som yearname()-funktionen identifierar när årets första månad är inställt på Mars/](https://help.qlik.com/sv-SE/sense/May2025/Subsystems/Hub/Content/Resources/Images/scripting-functions-yearname-example3-diagram.png)

## Exempel 4 – Diagramobjektexempel

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

#### Laddningsskript och diagramuttryck

Översikt

Öppna dataladdningsredigeraren och lägg till laddningsskriptet nedan i ett nytt delavsnitt.

Laddningsskriptet innehåller:

* Samma datauppsättning som i det första exemplet.

* Systemvariabeln `DateFormat` som är inställd på `MM/DD/YYYY`.

Fältet som returnerar året då transaktionen skedde i skapas dock som ett mått i ett diagramobjekt.

Laddningsskript

```
SET DateFormat='MM/DD/YYYY'; 
						
Transactions: 
Load 
* 
Inline  
[ 
id,date,amount 
8188,'01/13/2020',37.23 
8189,'02/26/2020',17.17 
8190,'03/27/2020',88.27 
8191,'04/16/2020',57.42 
8192,'05/21/2020',53.80 
8193,'08/14/2020',82.06 
8194,'10/07/2020',40.39 
8195,'12/05/2020',87.21 
8196,'01/22/2021',95.93 
8197,'02/03/2021',45.89 
8198,'03/17/2021',36.23 
8199,'04/23/2021',25.66 
8200,'05/04/2021',82.77 
8201,'06/30/2021',69.98 
8202,'07/26/2021',76.11 
8203,'12/27/2021',25.12 
8204,'06/06/2022',46.23 
8205,'07/18/2022',84.21 
8206,'11/14/2022',96.24 
8207,'12/12/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`

För att beräkna fältet `year_name` skapar du det här måttet:

`=yearname(date)`

Resultattabell

| datum | =yearname(date) |
| --- | --- |
| 01/13/2020 | 2020 |
| 02/26/2020 | 2020 |
| 03/27/2020 | 2020 |
| 04/16/2020 | 2020 |
| 05/21/2020 | 2020 |
| 08/14/2020 | 2020 |
| 10/07/2020 | 2020 |
| 12/05/2020 | 2020 |
| 01/22/2021 | 2021 |
| 02/03/2021 | 2021 |
| 03/17/2021 | 2021 |
| 04/23/2021 | 2021 |
| 05/04/2021 | 2021 |
| 06/30/2021 | 2021 |
| 07/26/2021 | 2021 |
| 12/27/2021 | 2021 |
| 06/06/2022 | 2022 |
| 07/18/2022 | 2022 |
| 11/14/2022 | 2022 |
| 12/12/2022 | 2022 |

`year_name`-måttet skapades i ett diagramobjektet genom att använda `yearname()`-funktionen och skicka datumfältet som funktionens argument.

`yearname()`-funktionen identifierar vilket år datumvärdet infaller och returnerar detta som ett fyrsiffrigt årtal.

Diagram över `yearname()`-funktionen med 2021 som årsvärde.

Diagram över `yearname()`-funktionen med 2021 som årsvärde.

Diagram över `yearname()`yearname()-funktionen med 2021 som årsvärde.![Diagram över yearname()-funktionen som visar 2021 som årsvärde.](https://help.qlik.com/sv-SE/sense/May2025/Subsystems/Hub/Content/Resources/Images/scripting-functions-yearname-example4-diagram.png)

## Exempel 5 – Scenario

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

#### Laddningsskript och diagramuttryck

Översikt

Öppna dataladdningsredigeraren och lägg till laddningsskriptet nedan i ett nytt delavsnitt.

Laddningsskriptet innehåller:

* Samma datauppsättning som i det första exemplet.

* Systemvariabeln DateFormat som är inställd på MM/DD/YYYY.

Slutanvändaren vill ha ett diagram som visar den totala försäljningen per kvartal för transaktionerna. Använd yearname()-funktionen som en beräknad dimension för att skapa detta diagram när dimensionen yearname() inte är tillgänglig i datamodellen.

Laddningsskript

```
SET DateFormat='MM/DD/YYYY'; 

Transactions: 
Load 
* 
Inline  
[ 
id,date,amount 
8188,'01/13/2020',37.23 
8189,'02/26/2020',17.17 
8190,'03/27/2020',88.27 
8191,'04/16/2020',57.42 
8192,'05/21/2020',53.80 
8193,'08/14/2020',82.06 
8194,'10/07/2020',40.39 
8195,'12/05/2020',87.21 
8196,'01/22/2021',95.93 
8197,'02/03/2021',45.89 
8198,'03/17/2021',36.23 
8199,'04/23/2021',25.66 
8200,'05/04/2021',82.77 
8201,'06/30/2021',69.98 
8202,'07/26/2021',76.11 
8203,'12/27/2021',25.12 
8204,'06/06/2022',46.23 
8205,'07/18/2022',84.21 
8206,'11/14/2022',96.24 
8207,'12/12/2022',67.67 
];
```

Resultat

Ladda data och öppna ett ark. Skapa en ny tabell.

För att jämföra aggregationer efter år, skapa den här beräknade dimensionen:

=yearname(date)

Skapa det här måttet:

=sum(amount)

Ange måttens Nummerformatering till Pengar.

Resultattabell

| =yearname(date) | =sum(amount) |
| --- | --- |
| 2020 | $463.55 |
| 2021 | $457.69 |
| 2022 | $294.35 |