# inmonthtodate Script- en diagramfunctie

Retourneert True als date binnen het gedeelte van de maand ligt dat basedate bevat tot en met de laatste milliseconde van basedate.

Syntaxis:

InMonthToDate (timestamp, base\_date, period\_no)

Retourgegevenstypen: Booleaanse waarde

Diagram van `inmonthtodate`-functie.

Diagram van `inmonthtodate`-functie.

Diagram van `inmonthtodate`inmonthtodate-functie. ![Diagram dat laat zien hoe de inmonthtodate-functie kan worden gebruikt om te bepalen of een tijdstempel al dan niet in een bepaalde maand valt.](https://help.qlik.com/nl-NL/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-inmonthtodate-diagram1.png)

De `inmonthtodate()`-functie identificeert een geselecteerde maand als een segment. De begingrenswaarde is het begin van de maand. De eindgrens kan worden ingesteld als een latere datum in de maand. Dit bepaalt vervolgens of een reeks datums al dan niet in dit segment vallen en retourneert een booleaanse waarde voor TRUE of FALSE.

Argumenten

| Argument | Beschrijving |
| --- | --- |
| timestamp | De datum die u wilt vergelijken met base\_date. |
| base\_date | Datum op basis waarvan de maand wordt geëvalueerd. |
| period\_no | De maand kan worden verschoven met period\_no. period\_no is een geheel getal, waarbij de waarde 0 de maand aangeeft die base\_date bevat. Negatieve waarden in period\_no geven voorafgaande maanden aan en positieve waarden geven volgende maanden aan. |

Wanneer gebruikt u inmonthtodate

De functie `inmonthtodate()` retourneert een booleaanse waarde. Dit type functie wordt doorgaans gebruikt als voorwaarde in een `if expression`. De `inmonthtodate()`-functie retourneert een aggregatie of berekening die afhankelijk is van of een datum plaatsvond in de maand tot en met de desbetreffende datum.

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

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

Voorbeelden van functies

| Voorbeeld | Resultaat |
| --- | --- |
| `inmonthtodate ('01/25/2013', '25/01/2013',<br>0)` | Retourneert True |
| `inmonthtodate ('01/25/2013', '24/01/2013',<br>0)` | Retourneert False |
| `inmonthtodate ('01/25/2013', '28/02/2013',<br>-1)` | Retourneert True |

## Voorbeeld 1 – geen aanvullende argumenten

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/inmonthtodate.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 voor 2022 wordt in de tabel `Transactions` geladen.

* Een datumveld dat wordt weergegeven in de `DateFormat`-systeemvariabele (met de notatie `MM/DD/YYYY`).

* Een voorgaande load-instructie met:

  * De `inmonthtodate()`-functie die is ingesteld als het veld `in_month_to_date`. Dit bepaalt welke transacties plaatsvonden tussen 1 juli en 26 juli 2022.

Load-script

```
SET DateFormat='MM/DD/YYYY'; 
						
Transactions: 
    Load 
    *, 
    inmonthtodate(date,'07/26/2022', 0) as in_month_to_date 
    ; 
Load 
* 
Inline  
[ 
id,date,amount 
8188,'1/19/2022',37.23 
8189,'1/7/2022',17.17 
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 
]; 
```

Resultaten

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

* `date`
* `in_month_to_date`

Resultatentabel

| date | in\_month\_to\_date |
| --- | --- |
| 1/7/2022 | 0 |
| 1/19/2022 | 0 |
| 2/5/2022 | 0 |
| 2/28/2022 | 0 |
| 3/16/2022 | 0 |
| 4/1/2022 | 0 |
| 5/7/2022 | 0 |
| 5/16/2022 | 0 |
| 6/15/2022 | 0 |
| 6/26/2022 | 0 |
| 7/9/2022 | -1 |
| 7/22/2022 | -1 |
| 7/23/2022 | -1 |
| 7/27/2022 | 0 |
| 8/2/2022 | 0 |
| 8/8/2022 | 0 |
| 8/19/2022 | 0 |
| 9/26/2022 | 0 |
| 10/14/2022 | 0 |
| 10/29/2022 | 0 |

Het veld `in_month_to_date` wordt gemaakt in de vorige load-instructie met behulp van de functie `inmonthtodate()`.

Het eerste argument identificeert welk veld wordt geëvalueerd. Het tweede argument is een vastgestelde datum, 26 juli, die de `base_date` is. Dit `base_date`-argument identificeert welke maand is gesegmenteerd en wat de eindgrens van dat segment is.

Een `period_no` van `0` is het laatste argument, wat betekent dat de functie geen maanden voor of na de gesegmenteerde maand vergelijkt.

Diagram van `inmonthtodate`-functie zonder aanvullende argumenten.

Diagram van `inmonthtodate`-functie zonder aanvullende argumenten.

Diagram van `inmonthtodate`inmonthtodate-functie zonder aanvullende argumenten. ![Diagram dat het bereik van transacties toont waarbij de inmonthtodate-functie de waarde TRUE heeft vastgesteld.](https://help.qlik.com/nl-NL/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-inmonthtodate-example1-diagram.png)

Elke transactie die tussen 1 juli en 26 juli plaatsvindt, retourneert een booleaans resultaat TRUE. Alle transacties die in juli na 26 juli plaatsvinden, retourneren een booleaans resultaat FALSE. Hetzelfde geldt voor transacties in een andere maand van het jaar.

## Voorbeeld 2 – period\_no

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

#### Load-script en resultaten

Overzicht

Dezelfde gegevensverzameling en het scenario uit het eerste voorbeeld worden gebruikt.

In dit voorbeeld wordt een veld gemaakt, `six_months_prior`, dat bepaalt of de transacties zes hele maanden vóór 1 juli en 26 juli plaatsvonden.

Load-script

```
SET DateFormat='MM/DD/YYYY'; 
						
Transactions: 
    Load 
    *, 
    inmonthtodate(date,'07/26/2022', -6) as six_months_prior 
    ; 
Load 
* 
Inline  
[ 
id,date,amount 
8188,'1/19/2022',37.23 
8189,'1/7/2022',17.17 
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 
]; 
```

Resultaten

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

* `date`

* `six_months_prior`

Resultatentabel

| date | six\_months\_prior |
| --- | --- |
| 1/7/2022 | -1 |
| 1/19/2022 | -1 |
| 2/5/2022 | 0 |
| 2/28/2022 | 0 |
| 3/16/2022 | 0 |
| 4/1/2022 | 0 |
| 5/7/2022 | 0 |
| 5/16/2022 | 0 |
| 6/15/2022 | 0 |
| 6/26/2022 | 0 |
| 7/9/2022 | 0 |
| 7/22/2022 | 0 |
| 7/23/2022 | 0 |
| 7/27/2022 | 0 |
| 8/2/2022 | 0 |
| 8/8/2022 | 0 |
| 8/19/2022 | 0 |
| 9/26/2022 | 0 |
| 10/14/2022 | 0 |
| 10/29/2022 | 0 |

Door `-6` als het `period_no`-argument te gebruiken in de `inmonthtodate()`-functie, verschuiven de grenzen van het maandsegment in de vergelijking met zes maanden. In eerste instantie is het maandsegment gelijk aan de periode tussen 1 juli en 26 juli. De `period_no` verschuift dit segment vervolgens naar zes maanden eerder en de datumgrenzen worden verschoven en vallen tussen 1 januari en 26 januari.

Diagram van functie `inmonthtodate` waarbij period\_no is ingesteld op -6.

Diagram van functie `inmonthtodate` waarbij period\_no is ingesteld op -6.

Diagram van functie `inmonthtodate`inmonthtodate waarbij period\_no is ingesteld op -6. ![Diagram toont het transactiebereik met het period_no-argument ingesteld op -6.](https://help.qlik.com/nl-NL/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-inmonthtodate-example2-diagram.png)

Elke transactie die tussen 1 januari en 26 januari plaatsvindt, retourneert een booleaans resultaat TRUE.

## Voorbeeld 3 – Diagramvoorbeeld

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

#### uitdrukking

Overzicht

Dezelfde gegevensverzameling en het scenario uit het eerste voorbeeld worden gebruikt.

In dit voorbeeld is de gegevensverzameling ongewijzigd en wordt geladen in de applicatie. De taak is om een berekening te maken die bepaalt of transacties plaatsvonden tussen 1 juli en 26 juli als een meting in een diagram van de applicatie.

Load-script

```
SET DateFormat='MM/DD/YYYY'; 
						
Transactions: 
Load 
* 
Inline  
[ 
id,date,amount 
8188,'1/19/2022',37.23 
8189,'1/7/2022',17.17 
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 
]; 
```

Resultaten

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

`date`

Om te berekenen of transacties plaatsgevonden tussen 1 juli en 26 juli, maakt u de volgende meting:

`=inmonthtodate(date,'07/26/2022', 0)`

Resultatentabel

| date | =inmonthtodate(date,'07/26/2022', 0) |
| --- | --- |
| 1/7/2022 | 0 |
| 1/19/2022 | 0 |
| 2/5/2022 | 0 |
| 2/28/2022 | 0 |
| 3/16/2022 | 0 |
| 4/1/2022 | 0 |
| 5/7/2022 | 0 |
| 5/16/2022 | 0 |
| 6/15/2022 | 0 |
| 6/26/2022 | 0 |
| 7/9/2022 | -1 |
| 7/22/2022 | -1 |
| 7/23/2022 | -1 |
| 7/27/2022 | 0 |
| 8/2/2022 | 0 |
| 8/8/2022 | 0 |
| 8/19/2022 | 0 |
| 9/26/2022 | 0 |
| 10/14/2022 | 0 |
| 10/29/2022 | 0 |

De veldmeting `in_month_to_date` wordt in een diagram gemaakt met behulp van de functie `inmonthtodate()`.

Het eerste argument identificeert welk veld wordt geëvalueerd. Het tweede argument is een vastgestelde datum, 26 juli, die de `base_date` is. Dit base\_date-argument identificeert welke maand is gesegmenteerd en wat de eindgrens van dat segment is. Een `period_no` van 0 is het laatste argument. Dit betekent dat de functie geen maanden voor of na de gesegmenteerde maand vergelijkt.

Diagram van `inmonthtodate`-functie zonder aanvullende argumenten.

Diagram van `inmonthtodate`-functie zonder aanvullende argumenten.

Diagram van `inmonthtodate`inmonthtodate-functie zonder aanvullende argumenten. ![Het diagram toont het transactiebereik tussen 1 juli en 26 juli.](https://help.qlik.com/nl-NL/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-inmonthtodate-example3-diagram.png)

Elke transactie die tussen 1 juli en 26 juli plaatsvindt, retourneert een booleaans resultaat TRUE. Alle transacties die in juli na 26 juli plaatsvinden, retourneren een booleaans resultaat FALSE. Hetzelfde geldt voor transacties in een andere maand van het jaar.

## Voorbeeld 4 – Scenario

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

#### Load-script en resultaten

Overzicht

In dit voorbeeld wordt een gegevensset geladen in de tabel ‘`Products`’. De tabel bevat de volgende velden:

* Product-id

* Productiedatum

* Kostprijs

Door een fout in de apparatuur waren producten die in de maand juli 2022 zijn geproduceerd defect. Het probleem is op 27 juli 2022 opgelost.

De eindgebruiker wil graag een diagram dat op maand de status toont van producten die zijn geproduceerd als 'defect' (booleaans WAAR) of 'foutloos' (booleaans NIET WAAR) en de kosten van de producten die in die maand zijn geproduceerd.

Load-script

```
Products: 
Load 
* 
Inline  
[ 
product_id,manufacture_date,cost_price 
8188,'1/19/2022',37.23 
8189,'1/7/2022',17.17 
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 
]; 
```

Resultaten

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

* `=monthname(manufacture_date)`
* `=if(Inmonthtodate(manufacture_date,makedate(2022,07,26),0),'Defective','Faultless')`

Maak deze meting om de som van de kosten van de producten te berekenen:

`=sum(cost_price)`

Stel de Getalnotatie van de meting in op Geld.

Resultatentabel

| monthname(manufacture\_date) | if(Inmonthtodate(manufacture\_date,makedate(2022,07,26),0),'Defect','Foutloos') | Sum(cost\_price) |
| --- | --- | --- |
| januari 2022 | Foutloos | $54.40 |
| februari 2022 | Foutloos | $145.69 |
| maart 2022 | Foutloos | $53.80 |
| april 2022 | Foutloos | $82.06 |
| mei 2022 | Foutloos | $127.60 |
| juni 2022 | Foutloos | $141.82 |
| juli 2022 | Defect | $144.66 |
| juli 2022 | Foutloos | $69.98 |
| augustus 2022 | Foutloos | $147.46 |
| september 2022 | Foutloos | $84.21 |
| oktober 2022 | Foutloos | $163.91 |

De functie `inmonthtodate()` retourneert een booleaanse waarde bij het evalueren van de productiedatums van elk product.

Voor de datums die een booleaanse waarde voor TRUE retourneren, wordt het product gemarkeerd als Defect. Voor elk product dat de waarde voor FALSE retourneert, en dus niet op in de maand tot en met 26 juli is geproduceerd, wordt het product als Foutloos gemarkeerd.