# inyeartodate Script- en diagramfunctie

Deze functie retourneert True als timestamp binnen het gedeelte van het jaar ligt dat base\_date bevat tot en met de laatste milliseconde van base\_date.

Syntaxis:

InYearToDate (timestamp, base\_date, period\_no[, first\_month\_of\_year])

Retourgegevenstypen: Booleaanse waarde

Informatie

In Qlik Sense wordt de booleaanse waarde Waar vertegenwoordigd door -1 en de waarde Onwaar door 0.

Diagram van functie inyeartodate

Diagram van functie inyeartodate

Diagram van functie inyeartodate ![Voorbeelddiagram van het datumbereik waarbinnen de functie inyeartodate de waarde WAAR retourneert.](https://help.qlik.com/nl-NL/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-inyeartodate-general.png)

De functie `inyeartodate()` segmenteert een bepaald gedeelte van het jaar met de `base_date`, waarbij de maximaal toegestane datum voor dat jaarsegment wordt aangegeven. De functie evalueert vervolgens of een datumveld of waarde in dit segment valt en retourneert een booleaans resultaat.

Argumenten

| Argument | Beschrijving |
| --- | --- |
| timestamp | De datum die u wilt vergelijken met base\_date. |
| base\_date | Datum op basis waarvan het jaar wordt geëvalueerd. |
| period\_no | Het jaar kan worden verschoven met period\_no. period\_no is een geheel getal, waarbij de waarde 0 het jaar aangeeft dat base\_date bevat. Negatieve waarden in period\_no geven voorafgaande 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. |

## Wanneer gebruikt u inyeartodate

De functie `inyeartodate()` retourneert een booleaanse waarde. Dit type functie wordt doorgaans gebruikt als voorwaarde in een `if`-uitdrukking. Dit retourneert een aggregatie of berekening afhankelijk van of een geëvalueerde datum plaatsvond in het jaar tot en met de betreffende datum.

De functie `inyeartodate()` bijvoorbeeld kan worden gebruikt om alle materieel te identificeren die in een jaar tot en met een specifieke datum is geproduceerd.

Deze voorbeelden gebruiken de datumopmaak MM/DD/YYYY. De datumopmaak wordt opgegeven in de opdracht `SET DateFormat` boven aan uw load-script voor gegevens. Wijzig de opmaak in de voorbeelden zodat deze in uw behoeften voorziet.

Voorbeelden van functies

| Voorbeeld | Resultaat |
| --- | --- |
| `inyeartodate ('01/25/2013', '02/01/2013', 0)` | Retourneert `TRUE`. |
| `inyeartodate ('01/25/2012', '01/01/2013', 0)` | Retourneert `FALSE`. |
| `inyeartodate ('01/25/2012', '02/01/2013', -1)` | Retourneert `TRUE`. |
| `inyeartodate ('11/25/2012', '01/31/2013', 0, 4)` | Retourneert `TRUE`.<br>De waarde van `timestamp` valt binnen het fiscale jaar dat begint in de vierde maand en vóór de waarde van `base_date`. |
| `inyeartodate ('3/31/2013', '01/31/2013', 0, 4 )` | Retourneert `FALSE`.<br>Retourneert Vergeleken met het voorafgaande voorbeeld ligt de waarde van nog steeds binnen het fiscale jaar, maar valt deze na de waarde van , dus valt deze buiten het gedeelte van het jaar.`timestampbase_date` |

## Landinstellingen

Tenzij anders aangegeven, wordt in de voorbeelden in dit onderwerp de volgende datumindeling gebruikt: MM/DD/YYYY. 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. Ga voor meer informatie naar [Regionale instellingen voor applicaties en scripts aanpassen](https://help.qlik.com/nl-NL/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/regional-settings-in-apps.htm).

Standaard landinstellingen in applicaties zijn gebaseerd op het gebruikersprofiel. Deze landinstellingen voor indelingen zijn niet gerelateerd aan de taal die wordt weergegeven in de gebruikersinterface van Qlik Cloud. Qlik Cloud wordt weergegeven in dezelfde taal als de browser die u gebruikt.

Als u een applicatie-ontwikkelaar bent, kunt u de standaardregio instellen voor applicaties die u maakt. Ga voor meer informatie naar [Instellen van uw voorkeur voor regionale instellingen voor het maken van apps en scripts in Qlik Cloud Analyse](https://help.qlik.com/nl-NL/cloud-services/Subsystems/Hub/Content/Sense_Hub/UserInterface/Languages.htm#Setting).

## Voorbeeld 1 – geen aanvullende argumenten

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

#### Load-script en resultaten

Overzicht

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

Het load-script bevat:

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

* Het datumveld opgegeven in de `DateFormat`-systeemvariabele (MM/DD/YYYY) indeling.

* Het aanmaken van een veld, `in_year_to_date`, dat bepaalt welke transacties hebben plaatsgevonden in het jaar tot en met 26 juli 2021.

Load-script

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

Transactions:
    Load
        *,
        inyeartodate(date,'07/26/2021', 0) as in_year_to_date
        ;
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,'06/14/2020',82.06
8194,'08/07/2020',40.39
8195,'09/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,'07/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`

* `in_year_to_date`

Resultatentabel

| date | jaar tot heden |
| --- | --- |
| 01/13/2020 | 0 |
| 02/26/2020 | 0 |
| 03/27/2020 | 0 |
| 04/16/2020 | 0 |
| 05/21/2020 | 0 |
| 06/14/2020 | 0 |
| 08/07/2020 | 0 |
| 09/05/2020 | 0 |
| 01/22/2021 | -1 |
| 02/03/2021 | -1 |
| 03/17/2021 | -1 |
| 04/23/2021 | -1 |
| 05/04/2021 | -1 |
| 06/30/2021 | -1 |
| 07/26/2021 | -1 |
| 07/27/2021 | 0 |
| 06/06/2022 | 0 |
| 07/18/2022 | 0 |
| 11/14/2022 | 0 |
| 12/12/2022 | 0 |

Het veld `in_year_to_date` wordt gemaakt in de vorige load-instructie met behulp van de functie `inyeartodate()`. Het eerste verstrekte argument geeft aan welk veld wordt geëvalueerd.

Het tweede argument is een vastgestelde datum voor 26 juli 2021, de `base_date` die de eindgrens van het jaarsegment aangeeft. Een `period_no` van 0 is het laatste argument, wat betekent dat de functie geen jaren voor of na het gesegmenteerde jaar vergelijkt.

Diagram van functie inyeartodate, geen aanvullende argumenten

Diagram van functie inyeartodate, geen aanvullende argumenten

Diagram van functie inyeartodate, geen aanvullende argumenten ![Diagram toont het datumbereik waarvoor de functie inyeartodate de waarde WAAR retourneert.](https://help.qlik.com/nl-NL/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-inyeartodate-examples-no-additional-arguments.png)

Elke transactie die tussen 1 januari en 26 juli plaatsvindt, retourneert een booleaans resultaat van `TRUE`. Transactiedatums vóór 2021 en na 26 juli 2021 retourneren `FALSE`.

## Voorbeeld 2 – period\_no

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

#### Load-script en resultaten

Overzicht

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

Het load-script bevat:

* Dezelfde gegevensset en het scenario uit het eerste voorbeeld.

* Het aanmaken van een veld, `previous_year_to_date`, dat bepaalt welke transacties een volledig jaar voor het einde van het jaarsegment dat eindigt op 26 juli 2021 hebben plaatsgevonden.

Load-script

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

Transactions:
    Load
        *,
        inyeartodate(date,'07/26/2021', -1) as previous_year_to_date
        ;
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,'06/14/2020',82.06
8194,'08/07/2020',40.39
8195,'09/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,'07/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`

* `previous_year_to_date`

Resultatentabel

| date | vorig jaar tot heden |
| --- | --- |
| 01/13/2020 | -1 |
| 02/26/2020 | -1 |
| 03/27/2020 | -1 |
| 04/16/2020 | -1 |
| 05/21/2020 | -1 |
| 06/14/2020 | -1 |
| 08/07/2020 | 0 |
| 09/05/2020 | 0 |
| 01/22/2021 | 0 |
| 02/03/2021 | 0 |
| 03/17/2021 | 0 |
| 04/23/2021 | 0 |
| 05/04/2021 | 0 |
| 06/30/2021 | 0 |
| 07/26/2021 | 0 |
| 07/27/2021 | 0 |
| 06/06/2022 | 0 |
| 07/18/2022 | 0 |
| 11/14/2022 | 0 |
| 12/12/2022 | 0 |

Een `period_no`-waarde van -1 geeft aan dat de functie `inyeartodate ()` het invoerkwartaalsegment vergelijkt met het voorgaande jaar. Met een invoerdatum van 26 juli 2021, werd het segment van 1 januari 2021 tot 26 juli 2021 aanvankelijk geïdentificeerd als het jaar tot heden. De `period_no` compenseert dit segment vervolgens een volledig jaar eerder, waardoor de datumgrenzen van 1 januari tot 26 juli 2020 worden.

Diagram van functie inyeartodate, period\_no example

Diagram van functie inyeartodate, period\_no example

Diagram van functie inyeartodate, period\_no example ![Diagram toont het datumbereik waarvoor de functie inyeartodate de waarde WAAR retourneert.](https://help.qlik.com/nl-NL/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-inyeartodate-examples-period-no.png)

Daarom zal elke transactie die plaatsvindt tussen 1 januari en 26 juli 2020 een booleaans resultaat van `TRUE` retourneren.

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

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

#### Load-script en resultaten

Overzicht

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

Het load-script bevat:

* Dezelfde gegevensset en het scenario uit het eerste voorbeeld.

* Het aanmaken van een veld, `in_year_to_date`, dat bepaalt welke transacties hebben plaatsgevonden in hetzelfde jaar tot 26 juli 2021.

In dit voorbeeld stellen we maart in als de eerste maand van het fiscale jaar.

Load-script

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

Transactions:
    Load
        *,
        inyeartodate(date,'07/26/2021', 0,3) as in_year_to_date
        ;
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,'06/14/2020',82.06
8194,'08/07/2020',40.39
8195,'09/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,'07/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`

* `in_year_to_date`

Resultatentabel

| date | jaar tot heden |
| --- | --- |
| 01/13/2020 | 0 |
| 02/26/2020 | 0 |
| 03/27/2020 | 0 |
| 04/16/2020 | 0 |
| 05/21/2020 | 0 |
| 06/14/2020 | 0 |
| 08/07/2020 | 0 |
| 09/05/2020 | 0 |
| 01/22/2021 | 0 |
| 02/03/2021 | 0 |
| 03/17/2021 | -1 |
| 04/23/2021 | -1 |
| 05/04/2021 | -1 |
| 06/30/2021 | -1 |
| 07/26/2021 | -1 |
| 07/27/2021 | 0 |
| 06/06/2022 | 0 |
| 07/18/2022 | 0 |
| 11/14/2022 | 0 |
| 12/12/2022 | 0 |

Door 3 te gebruiken als het `first_month_of_year`-argument in de `inyeartodate()`-functie, begint de functie het jaar op 1 maart. De `base_date` van 26 juli 2021 stelt dan de einddatum in voor dat jaarsegment.

Diagram van functie inyeartodate, first\_month\_of\_year example

Diagram van functie inyeartodate, first\_month\_of\_year example

Diagram van functie inyeartodate, first\_month\_of\_year example ![Diagram toont het datumbereik waarvoor de functie inyeartodate de waarde WAAR retourneert.](https://help.qlik.com/nl-NL/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-inyeartodate-examples-first-mth-yr.png)

Daarom zal elke transactie die plaatsvindt tussen 1 maart en 26 juli 2021 een booleaans resultaat van `TRUE` retourneren, terwijl transacties met datums buiten deze grenzen een waarde van `FALSE` zullen retourneren.

## Voorbeeld 4 – diagramobjectvoorbeeld

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/inyeartodate.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 en scenario als het eerste voorbeeld. In dit voorbeeld wordt de ongewijzigde gegevensset echter in de applicatie geladen. De berekening die bepaalt welke transacties plaatsvonden in hetzelfde jaar tot 26 juli 2021 is gemaakt als meting in een diagramobject van de toepassing.

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,'06/14/2020',82.06 
8194,'08/07/2020',40.39 
8195,'09/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,'07/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.

Maak de volgende meting:

=inyeartodate(date,'07/26/2021', 0)

Resultatentabel

| date | =inyeartodate(date,'07/26/2021', 0) |
| --- | --- |
| 01/13/2020 | 0 |
| 02/26/2020 | 0 |
| 03/27/2020 | 0 |
| 04/16/2020 | 0 |
| 05/21/2020 | 0 |
| 06/14/2020 | 0 |
| 08/07/2020 | 0 |
| 09/05/2020 | 0 |
| 01/22/2021 | -1 |
| 02/03/2021 | -1 |
| 03/17/2021 | -1 |
| 04/23/2021 | -1 |
| 05/04/2021 | -1 |
| 06/30/2021 | -1 |
| 07/26/2021 | -1 |
| 07/27/2021 | 0 |
| 06/06/2022 | 0 |
| 07/18/2022 | 0 |
| 11/14/2022 | 0 |
| 12/12/2022 | 0 |

De meting in\_year\_to\_date wordt in het diagramobject gemaakt met behulp van de functie inyeartodate(). Het eerste verstrekte argument geeft aan welk veld wordt geëvalueerd. Het tweede argument is een vastgestelde datum voor 26 juli 2021, de base\_date die de eindgrens van het vergelijkende jaarsegment aangeeft. Een period\_no van 0 is het laatste argument, wat betekent dat de functie geen jaren voor of na het gesegmenteerde jaar vergelijkt.

Diagram van functie inyeartodate, diagramobjectvoorbeeld

Diagram van functie inyeartodate, diagramobjectvoorbeeld

Diagram van functie inyeartodate, diagramobjectvoorbeeld ![Diagram toont het datumbereik waarvoor de functie inyeartodate de waarde WAAR retourneert.](https://help.qlik.com/nl-NL/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-inyeartodate-examples-chart-object.png)

Elke transactie die tussen 1 januari en 26 juli 2021 plaatsvindt, retourneert een booleaans resultaat van TRUE. Transactiedatums vóór 2021 en na 26 juli 2021 retourneren FALSE.

## Voorbeeld 5 – Scenario

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

#### Load-script en diagramuitdrukking

Overzicht

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

Het load-script bevat:

* Een gegevensset die wordt geladen in een tabel met de naam Products.

* Informatie over product-id, producttype, productiedatum en kostprijs.

De eindgebruiker wil een diagramobject dat, per producttype, de kosten weergeeft van de producten die in 2021 tot 26 juli zijn geproduceerd.

Load-script

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

Resultaten

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

Maak een meting die de som berekent van elk product dat vóór 27 juli in 2021 is geproduceerd:

=sum(if(inyeartodate(manufacture\_date,makedate(2021,07,26),0),cost\_price,0))

Stel de Getalnotatie van de meting in op Geld.

Resultatentabel

| producttype | =sum(if(inyeartodate(manufacture\_date,makedate(2021,07,26),0),cost\_price,0)) |
| --- | --- |
| product A | $95.93 |
| product B | $128.66 |
| product C | $61.89 |
| product D | $146.09 |

De functie inyeartodate() retourneert een booleaanse waarde bij het evalueren van de productiedatums van elk product. Voor elk product dat in 2021 vóór 27 juli is geproduceerd, retourneert de functie inyeartodate() een booleaanse waarde van TRUE en telt de cost\_price op.

Product D is het enige product dat in 2021 ook na 26 juli is geproduceerd. De vermelding met product\_ID 8203 is geproduceerd op 27 december en kost $25.12. Daarom zijn deze kosten niet opgenomen in het totaal voor Product D in het diagramobject.