# yearname - script- en diagramfunctie

Deze functie retourneert een jaar in vier cijfers als weergavewaarde met een onderliggende numerieke waarde die overeenkomt met een tijdstempel van de eerste milliseconde van de eerste dag van het jaar dat date bevat.

Schema van het tijdsbereik van de functie `yearname()`.

Schema van het tijdsbereik van de functie `yearname()`.

Schema van het tijdsbereik van de functie `yearname()`yearname(). ![Diagram dat het tijdsbereik toont waarin de functie yearname een resultaat zal opleveren.](https://help.qlik.com/nl-NL/sense/November2024/Subsystems/Hub/Content/Resources/Images/scripting-functions-yearname-diagram1.png)

De functie `yearname()` is anders dan de functie `year()`, omdat u hiermee de datum die u wilt evalueren kunt verschuiven en de eerste maand van het jaar kunt instellen.

Als de eerste maand van het jaar niet januari is, retourneert de functie de twee viercijferige jaren over de periode van twaalf maanden die de datum bevatten. Als het begin van het jaar bijvoorbeeld april is en de datum die wordt geëvalueerd is 06/30/2020, zou het geretourneerde resultaat `2020-2021`zijn.

Diagram van functie `yearname()` met april ingesteld als de eerste maand van het jaar.

Diagram van functie `yearname()` met april ingesteld als de eerste maand van het jaar.

Diagram van functie `yearname()`yearname() met april ingesteld als de eerste maand van het jaar. ![Diagram dat laat zien dat de functie yearname datums binnen een periode van twaalf maanden kan identificeren en dat het retourneren ervan kan afhangen van welke maand is ingesteld als de eerste maand van het jaar.](https://help.qlik.com/nl-NL/sense/November2024/Subsystems/Hub/Content/Resources/Images/scripting-functions-yearname-diagram2.png)

Syntaxis:

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

Retourgegevenstypen: dual

| Argument | Beschrijving |
| --- | --- |
| date | De te evalueren datum of tijdstempel. |
| period\_no | period\_no is een geheel getal, waarbij de waarde 0 het jaar aangeeft dat date bevat. Negatieve waarden in period\_no geven voorgaande jaren aan en positieve waarden geven volgende jaren aan. |
| first\_month\_of\_year | Als u wilt werken met (boek)jaren die niet in januari beginnen, geeft u een waarde op tussen 2 en 12 in first\_month\_of\_year. De weergavewaarde is dan een tekenreeks die twee jaren toont. |

U kunt de volgende waarden gebruiken om de eerste maand van het jaar in te stellen in het argument `first_month_of_year`:

waarden first\_month\_of\_year

| Month | Waarde |
| --- | --- |
| Februari | 2 |
| Maart | 3 |
| April | 4 |
| May | 5 |
| Juni | 6 |
| Juli | 7 |
| Augustus | 8 |
| September | 9 |
| Oktober | 10 |
| November | 11 |
| December | 12 |

Wanneer gebruiken

De functie `yearname()` is handig om aggregaties per jaar te vergelijken. Bijvoorbeeld als u de totale verkoop van producten per jaar wilt zien.

Deze dimensies kunnen in het load-script worden gemaakt door de functie te gebruiken om een veld in een masterkalendertabel te maken. Ze kunnen ook in een diagram worden gemaakt als berekende dimensies

## Landinstellingen

Tenzij anders aangegeven, wordt in de voorbeelden in dit onderwerp de volgende datumindeling gebruikt: MM/DD/JJJJ. De datumopmaak wordt opgegeven in de opdracht `SET DateFormat` in uw script voor het laden van gegevens. De standaard datumindeling is mogelijk anders op uw systeem vanwege landinstellingen en andere factoren. U kunt de indelingen in de voorbeelden wijzigen zodat deze aansluiten op uw behoeften. Of u kunt de indelingen in uw load-script wijzigen zodat ze overeenkomen met deze voorbeelden.

Standaard landinstellingen in apps zijn gebaseerd op de regionale systeeminstellingen van de computer of server waarop Qlik Sense is geïnstalleerd. Als de Qlik Sense-server die u gebruikt is ingesteld op Zweden, gebruikt de editor voor laden van gegevens de Zweedse landinstellingen voor datums, tijd en valuta. Deze landinstellingen voor indelingen zijn niet gerelateerd aan de taal die wordt weergegeven in de gebruikersinterface van Qlik Sense. Qlik Sense wordt weergegeven in dezelfde taal als de browser die u gebruikt.

Voorbeelden van functies

| Voorbeeld | Resultaat |
| --- | --- |
| `yearname('10/19/2001')` | Retourneert '2001.' |
| `yearname('10/19/2001',-1)` | Retourneert '2000.' |
| `yearname('10/19/2001',0,4)` | Retourneert '2001-2002.' |

Gerelateerde onderwerpen

| Onderwerp | Beschrijving |
| --- | --- |
| [year - script- en diagramfunctie](https://help.qlik.com/nl-NL/sense/November2024/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/year.htm) | Deze functie retourneert een geheel getal dat het jaar representeert als de uitdrukking wordt geïnterpreteerd als een datum volgens de standaardinterpretatie van getallen. |

## Voorbeeld 1 – geen aanvullende argumenten

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

#### Load-script en resultaten

Overzicht

Open de editor voor laden van gegevens en voeg het onderstaande load-script toe aan een nieuw tabblad.

Het load-script bevat:

* Een gegevensverzameling met een set transacties tussen 2020 en 2022 wordt geladen in een tabel met de naam '`Transactions`'.

* De systeemvariabele `DateFormat` die is ingesteld op '`MM/DD/YYYY`'.

* Een voorafgaande lading die de `yearname()` gebruikt en die is ingesteld als het veld `year_name`.

Load-script

```
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 
]; 
```

Resultaten

Laad de gegevens en open een werkblad. Maak een nieuwe tabel en voeg deze velden toe als dimensies:

* `date`
* `year_name`

Resultatentabel

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

Het veld '`year_name`' wordt gemaakt in de voorafgaande load-instructie met behulp van de functie `yearname()` en geeft het datumveld door als het argument van de functie.

De functie `yearname()` identificeert in welk jaar de datumwaarde valt en retourneert dit als een viercijferige jaarwaarde.

Diagram van de functie `yearname()` die 2021 als jaarwaarde weergeeft.

Diagram van de functie `yearname()` die 2021 als jaarwaarde weergeeft.

Diagram van de functie `yearname()`yearname() die 2021 als jaarwaarde weergeeft.![Diagram met de functie yearname() retourneert 2021 voor de datum 17 maart 2021.](https://help.qlik.com/nl-NL/sense/November2024/Subsystems/Hub/Content/Resources/Images/scripting-functions-yearname-example1-diagram.png)

## Voorbeeld 2 – period\_no

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

#### Load-script en resultaten

Overzicht

Open de editor voor laden van gegevens en voeg het onderstaande load-script toe aan een nieuw tabblad.

Het load-script bevat:

* Een gegevensset met een set transacties tussen 2020 en 2022 wordt geladen in een tabel met de naam 'Transacties'.

* De systeemvariabele DateFormat die is ingesteld op ‘`MM/DD/YYYY`’.

* Een voorafgaande lading die de `yearname()` gebruikt en die is ingesteld als het veld `year_name`.

Load-script

```
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 
];  
```

Resultaten

Laad de gegevens en open een werkblad. Maak een nieuwe tabel en voeg deze velden toe als dimensies:

* `date`
* `prior_year_name`

Resultatentabel

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

Omdat een `period_no` van `-1` wordt gebruikt als het offset-argument in de functie `yearname()`, identificeert de functie eerst het jaar waarin de transacties plaatsvinden. De functie verschuift dan een jaar eerder en retourneert het resulterende jaar.

Diagram van functie `yearname()` met de `period_no` ingesteld op `-1`.

Diagram van functie `yearname()` met de `period_no` ingesteld op `-1`.

Diagram van functie `yearname()`yearname() met de `period_no`period\_no ingesteld op `-1`-1.![Diagram dat laat zien hoe een period_no van min één het tijdbereik verandert dat de functie yearname() identificeert.](https://help.qlik.com/nl-NL/sense/November2024/Subsystems/Hub/Content/Resources/Images/scripting-functions-yearname-example2-diagram.png)

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

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

#### Load-script en resultaten

Overzicht

Open de editor voor laden van gegevens en voeg het onderstaande load-script toe aan een nieuw tabblad.

Het load-script bevat:

* Dezelfde gegevensset als in het eerste voorbeeld.

* De systeemvariabele `DateFormat` die is ingesteld op '`MM/DD/YYYY`'.

* Een voorafgaande lading die de `yearname()` gebruikt en die is ingesteld als het veld `year_name`.

Load-script

```
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 
];
```

Resultaten

Laad de gegevens en open een werkblad. Maak een nieuwe tabel en voeg deze velden toe als dimensies:

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

Resultatentabel

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

Omdat het argument [ `first_month_of_year` van `4` wordt gebruikt in de functie `yearname()`, verschuift het begin van het jaar van 1 januari naar 1 april. Daarom kruist elke periode van twaalf maanden twee kalenderjaren en retourneert de functie `yearname()` de twee viercijferige jaar voor geëvalueerde datums.

Transactie 8198 vindt plaats op 17 maart 2021. De functie `yearname()` stelt het begin van het jaar in op 1 april en het einde op 30 maart. Daarom vond transactie 8198 plaats in de jaarperiode van 1 april 2020 en 30 maart 2021. Als resultaat retourneert de functie `yearname()` de waarde 2020-2021.

Diagram van functie `yearname()` met maart ingesteld als de eerste maand van het jaar.

Diagram van functie `yearname()` met maart ingesteld als de eerste maand van het jaar.

Diagram van functie `yearname()`yearname() met maart ingesteld als de eerste maand van het jaar.![Diagram met het tijdsbereik dat de functie yearname() identificeert wanneer de eerste maand van het jaar is ingesteld als maart.](https://help.qlik.com/nl-NL/sense/November2024/Subsystems/Hub/Content/Resources/Images/scripting-functions-yearname-example3-diagram.png)

## Voorbeeld 4 – diagramobjectvoorbeeld

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

#### Load-script en diagramuitdrukking

Overzicht

Open de editor voor laden van gegevens en voeg het onderstaande load-script toe aan een nieuw tabblad.

Het load-script bevat:

* Dezelfde gegevensset als in het eerste voorbeeld.

* De systeemvariabele `DateFormat` die is ingesteld op '`MM/DD/YYYY`'.

Het veld dat het jaar retourneert waarin de transactie heeft plaatsgevonden, wordt echter gemaakt als een meting in een grafiekobject.

Load-script

```
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 
];	
```

Resultaten

Laad de gegevens en open een werkblad. Maak een nieuwe tabel en voeg dit veld toe als dimensie:

`date`

Om het veld `year_name` te berekenen, maakt u deze meting:

`=yearname(date)`

Resultatentabel

| date | =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 |

De meting '`year_name`' wordt gemaakt in het diagramobject met behulp van de functie `yearname()` en geeft het veld door als het argument van de functie.

De functie `yearname()` identificeert in welk jaar de datumwaarde valt en retourneert dit als een viercijferige jaarwaarde.

Diagram van de functie `yearname()` met 2021 als jaarwaarde.

Diagram van de functie `yearname()` met 2021 als jaarwaarde.

Diagram van de functie `yearname()`yearname() met 2021 als jaarwaarde.![Diagram dat de functie yearname() toont die 2021 retourneert als de jaarwaarde.](https://help.qlik.com/nl-NL/sense/November2024/Subsystems/Hub/Content/Resources/Images/scripting-functions-yearname-example4-diagram.png)

## Voorbeeld 5 – Scenario

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

#### Load-script en diagramuitdrukking

Overzicht

Open de editor voor laden van gegevens en voeg het onderstaande load-script toe aan een nieuw tabblad.

Het load-script bevat:

* Dezelfde gegevensset als in het eerste voorbeeld.

* De systeemvariabele DateFormat die is ingesteld op 'MM/DD/YYYY'.

De eindgebruiker wil graag een diagram die de totale omzet per kwartaal voor de transacties weergeeft. Gebruik de functie yearname() als een berekende dimensie om dit diagram te maken wanneer de dimensie yearname() niet beschikbaar is in het gegevensmodel.

Load-script

```
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 
];
```

Resultaten

Laad de gegevens en open een werkblad. Maak een nieuwe tabel.

Als u aggregaties per jaar wilt vergelijken, maakt u deze berekende dimensie:

=yearname(date)

Maak deze meting

=sum(amount)

Stel de Getalnotatie van de meting in op Geld.

Resultatentabel

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