# indaytotime Script- en diagramfunctie

Deze functie retourneert True als timestamp binnen het gedeelte van de dag ligt dat base\_timestamp bevat tot en met de exacte milliseconde van base\_timestamp.

Syntaxis:

InDayToTime (timestamp, base\_timestamp, period\_no[, day\_start])

De `indaytotime()`-functie retourneert een booleaans resultaat afhankelijk van het feit wanneer een tijdstempelwaarde plaatsvindt tijdens het segment van de dag. De begingrens van dit segment is het begin van de dag, die standaard is ingesteld op middernacht. Het begin van de dag dit kan worden aangepast via het argument `day_start` van de functie `indaytotime()`. De eindgrens van het dagsegment wordt bepaald door een `base_timestamp`-argument van de functie.

Diagram van `indaytotime`-functie.

Diagram van `indaytotime`-functie.

Diagram van `indaytotime`indaytotime-functie. ![Diagram toont de relaties tussen de variabelen van de indaytotime-functie.](https://help.qlik.com/nl-NL/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-indaytotime-diagram-overview.png)

Wanneer gebruikt u indaytotime

De functie `indaytotime()` retourneert een booleaanse waarde. Dit type functie wordt doorgaans gebruikt als voorwaarde in een `if expression`. De functie `indaytotime()` retourneert een aggregatie of berekening afhankelijk van het feit of een tijdstempel aanwezig is in het segment van de dag tot en met de tijd van de basistijdstempel.

De functie `indaytotime()` kan bijvoorbeeld worden gebruikt om de som van ticketverkopen te tonen voor shows die tot nu toe vandaag hebben plaatsgevonden.

Retourgegevenstypen: Booleaanse waarde

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

Argumenten

| Argument | Beschrijving |
| --- | --- |
| ` timestamp  ` | De datum en tijd die u wilt vergelijken met `base_timestamp`. |
| ` base_timestamp  ` | Datum en tijd op basis waarvan de tijdstempel wordt geëvalueerd. |
| ` period_no  ` | De dag kan worden verschoven met `period_no`. `period_no` is een geheel getal, waarbij de waarde 0 de dag aangeeft die `base_timestamp` bevat. Negatieve waarden in `period_no` geven voorafgaande dagen aan en positieve waarden geven volgende dagen aan. |
| ` day_start  ` | (Optioneel) Als u wilt werken met dagen die niet om middernacht beginnen, kunt u een verschuiving als een fractie van een dag opgeven in `day_start`. Bijvoorbeeld gebruik 0.125 voor 3 AM |

## 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 |
| --- | --- |
| `indaytotime` ('01/12/2006 12:23:00 PM', '01/12/2006 11:59:00 PM', 0) | Retourneert True |
| `indaytotime` ('01/12/2006 12:23:00 PM', '01/12/2006 12:00:00 AM', 0) | Retourneert False |
| `indaytotime` '01/11/2006 12:23:00 PM', '01/12/2006 11:59:00 PM', -1) | Retourneert True |

## Voorbeeld 1 – geen aanvullende argumenten

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/indaytotime.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 transacties voor de periode tussen 4 en 5 januari wordt geladen in een tabel met de naam 'Transactions'.

* Een datumveld dat wordt weergegeven in de `TimeStamp`-systeemvariabele `(M/D/YYYY h:mm:ss[.fff] TT)`-opmaak.

* Een voorafgaande lading met de functie `indaytotime()` dat is ingesteld als `'in_day_to_time'`, het veld dat bepaalt of de transacties vóór 09.00 AM plaatsvinden.

Load-script

```
SET TimestampFormat='M/D/YYYY h:mm:ss[.fff] TT';

Transactions:
    Load
        *,
        indaytotime(date,'01/05/2022 9:00:00 AM',0) as in_day_to_time
        ;
Load
*
Inline 
[
id,date,amount
8188,'01/04/2022 3:41:54 AM',25.66
8189,'01/04/2022 4:19:43 AM',87.21
8190,'01/04/2022 4:53:47 AM',53.80
8191,'01/04/2022 8:38:53 AM',69.98
8192,'01/04/2022 10:37:52 AM',57.42
8193,'01/04/2022 1:54:10 PM',45.89
8194,'01/04/2022 5:53:23 PM',82.77
8195,'01/04/2022 8:13:26 PM',36.23
8196,'01/04/2022 10:00:49 PM',76.11
8197,'01/05/2022 7:45:37 AM',82.06
8198,'01/05/2022 8:44:36 AM',17.17
8199,'01/05/2022 11:26:08 AM',40.39
8200,'01/05/2022 6:43:08 PM',37.23
8201,'01/05/2022 10:54:10 PM',88.27
8202,'01/05/2022 11:09:09 PM',95.93
];
```

Resultaten

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

* `date`

* `in_day_to_time`

Resultatentabel

| date | in\_day\_to\_time |
| --- | --- |
| 01/04/2022 3:41:54 AM | 0 |
| 01/04/2022 4:19:43 AM | 0 |
| 01/04/2022 04:53:47 AM | 0 |
| 01/04/2022 8:38:53 AM | 0 |
| 01/04/2022 10:37:52 AM | 0 |
| 01/04/2022 1:54:10 PM | 0 |
| 01/04/2022 5:53:23 PM | 0 |
| 01/04/2022 8:13:26 PM | 0 |
| 01/04/2022 10:00:49 PM | 0 |
| 01/05/2022 7:45:37 AM | -1 |
| 01/05/2022 8:44:36 AM | -1 |
| 01/05/2022 11:26:08 AM | 0 |
| 01/05/2022 6:43:08 PM | 0 |
| 01/05/2022 10:54:10 PM | 0 |
| 01/05/2022 11:09:09 PM | 0 |

Voorbeeld 1: diagram van `indaytotime`-functie met limiet van 9:00 AM.

Voorbeeld 1: diagram van `indaytotime`-functie met limiet van 9:00 AM.

Voorbeeld 1: diagram van `indaytotime`indaytotime-functie met limiet van 9:00 AM. ![Diagram met indaytotime()-functie met een limiet van 9.00 uur.](https://help.qlik.com/nl-NL/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-indaytotime-example1-diagram.png)

Het `in_day_to_time field` wordt gemaakt in de voorafgaande load-instructie met behulp van de `indaytotime()`-functie en geeft het datumveld door, een vastgelegde tijdstempel voor 09.00 uur op 5 januari en een offset van 0 als de argumenten van de functie. Alle transacties die plaatsvinden tussen middernacht en 09.00 uur op 5 januari retourneren TRUE.

## Voorbeeld 2 – period\_no

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

#### Load-script en resultaten

Overzicht

De load-instructie gebruikt dezelfde gegevensset en hetzelfde scenario als die in het eerste voorbeeld.

Maar in dit voorbeeld berekent u of de transactiedatum één dag vóór 09.00 uur op 5 januari plaatsvond.

Load-script

```
SET TimestampFormat='M/D/YYYY h:mm:ss[.fff] TT';

Transactions:
    Load
        *,
        indaytotime(date,'01/05/2022 9:00:00 AM', -1) as in_day_to_time
        ;
Load
*
Inline 
[
id,date,amount
8188,'01/04/2022 3:41:54 AM',25.66
8189,'01/04/2022 4:19:43 AM',87.21
8190,'01/04/2022 4:53:47 AM',53.80
8191,'01/04/2022 8:38:53 AM',69.98
8192,'01/04/2022 10:37:52 AM',57.42
8193,'01/04/2022 1:54:10 PM',45.89
8194,'01/04/2022 5:53:23 PM',82.77
8195,'01/04/2022 8:13:26 PM',36.23
8196,'01/04/2022 10:00:49 PM',76.11
8197,'01/05/2022 7:45:37 AM',82.06
8198,'01/05/2022 8:44:36 AM',17.17
8199,'01/05/2022 11:26:08 AM',40.39
8200,'01/05/2022 6:43:08 PM',37.23
8201,'01/05/2022 10:54:10 PM',88.27
8202,'01/05/2022 11:09:09 PM',95.93
];
```

Resultaten

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

* `date`

* `in_day_to_time`

Resultatentabel

| date | in\_day\_to\_time |
| --- | --- |
| 01/04/2022 3:41:54 AM | -1 |
| 01/04/2022 4:19:43 AM | -1 |
| 01/04/2022 04:53:47 AM | -1 |
| 01/04/2022 8:38:53 AM | -1 |
| 01/04/2022 10:37:52 AM | 0 |
| 01/04/2022 1:54:10 PM | 0 |
| 01/04/2022 5:53:23 PM | 0 |
| 01/04/2022 8:13:26 PM | 0 |
| 01/04/2022 10:00:49 PM | 0 |
| 01/05/2022 7:45:37 AM | 0 |
| 01/05/2022 8:44:36 AM | 0 |
| 01/05/2022 11:26:08 AM | 0 |
| 01/05/2022 6:43:08 PM | 0 |
| 01/05/2022 10:54:10 PM | 0 |
| 01/05/2022 11:09:09 PM | 0 |

Voorbeeld 2: diagram van `indaytotime`-functie met transacties vanaf 4 januari.

Voorbeeld 2: diagram van `indaytotime`-functie met transacties vanaf 4 januari.

Voorbeeld 2: diagram van `indaytotime`indaytotime-functie met transacties vanaf 4 januari. ![Diagram toont de functie indaytotime () die een period_no van -1 gebruikt voor het retourneren van transacties vanaf 4 januari.](https://help.qlik.com/nl-NL/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-indaytotime-example2-diagram.png)

In dit voorbeeld bepaalt de functie of elk van de transactiedatums vóór 09.00 uur op 4 januari plaatsvonden omdat een offset-argument van -1 is gebruikt in de `indaytotime()`-functie. Dit kan worden geverifieerd in de uitvoertabel waar een transactie een booleaans resultaat van TRUE retourneert.

## Voorbeeld 3 – day\_start

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

#### Load-script en resultaten

Overzicht

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

Maar in dit voorbeeld is het bedrijfsbeleid dat de werkdag begint en eindigt om 8 AM.

Load-script

```
SET TimestampFormat='M/D/YYYY h:mm:ss[.fff] TT';

Transactions:
    Load
        *,
        indaytotime(date,'01/05/2022 9:00:00 AM', 0,8/24) as in_day_to_time
        ;
Load
*
Inline 
[
id,date,amount
8188,'01/04/2022 3:41:54 AM',25.66
8189,'01/04/2022 4:19:43 AM',87.21
8190,'01/04/2022 4:53:47 AM',53.80
8191,'01/04/2022 8:38:53 AM',69.98
8192,'01/04/2022 10:37:52 AM',57.42
8193,'01/04/2022 1:54:10 PM',45.89
8194,'01/04/2022 5:53:23 PM',82.77
8195,'01/04/2022 8:13:26 PM',36.23
8196,'01/04/2022 10:00:49 PM',76.11
8197,'01/05/2022 7:45:37 AM',82.06
8198,'01/05/2022 8:44:36 AM',17.17
8199,'01/05/2022 11:26:08 AM',40.39
8200,'01/05/2022 6:43:08 PM',37.23
8201,'01/05/2022 10:54:10 PM',88.27
8202,'01/05/2022 11:09:09 PM',95.93
];
```

Resultaten

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

* `date`

* `in_day_to_time`

Resultatentabel

| date | in\_day\_to\_time |
| --- | --- |
| 01/04/2022 3:41:54 AM | 0 |
| 01/04/2022 4:19:43 AM | 0 |
| 01/04/2022 04:53:47 AM | 0 |
| 01/04/2022 8:38:53 AM | 0 |
| 01/04/2022 10:37:52 AM | 0 |
| 01/04/2022 1:54:10 PM | 0 |
| 01/04/2022 5:53:23 PM | 0 |
| 01/04/2022 8:13:26 PM | 0 |
| 01/04/2022 10:00:49 PM | 0 |
| 01/05/2022 7:45:37 AM | 0 |
| 01/05/2022 8:44:36 AM | -1 |
| 01/05/2022 11:26:08 AM | 0 |
| 01/05/2022 6:43:08 PM | 0 |
| 01/05/2022 10:54:10 PM | 0 |
| 01/05/2022 11:09:09 PM | 0 |

Voorbeeld 3: diagram van `indaytotime`-functie met transacties vanaf 08.00 uur tot 09.00 uur.

Voorbeeld 3: diagram van `indaytotime`-functie met transacties vanaf 08.00 uur tot 09.00 uur.

Voorbeeld 3: diagram van `indaytotime`indaytotime-functie met transacties vanaf 08.00 uur tot 09.00 uur. ![Diagram toont de indaytotime ()-functie met transacties vanaf 08.00 AM  tot 09.00 AM.](https://help.qlik.com/nl-NL/cloud-services/Subsystems/Hub/Content/Resources/Images/scripting-functions-indaytotime-example3-diagram.png)

Omdat het argument `start_day` van 8/24, dat overeenkomt met 8:00 AM, wordt gebruikt in de functie `indaytotime()`, begint en eindigt elke dag om 8:00 AM. Daarom zal de functie `indaytotime()` een booleaanse waarde voor WAAR retourneren voor elke transactie die plaatsvond tussen 8:00 AM en 9:00 AM op 5 januari.

## Voorbeeld 4 – diagramobject

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

#### uitdrukking

Overzicht

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

In dit voorbeeld is de gegevensverzameling echter niet gewijzigd en wordt in de applicatie geladen. U maakt een berekening om te bepalen of een transactie plaatsvindt op 5 januari vóór 09.00 uur door een meting te maken in een diagramobject.

Load-script

```

Transactions:
Load
*
Inline 
[
id,date,amount
8188,'01/04/2022 3:41:54 AM',25.66
8189,'01/04/2022 4:19:43 AM',87.21
8190,'01/04/2022 4:53:47 AM',53.80
8191,'01/04/2022 8:38:53 AM',69.98
8192,'01/04/2022 10:37:52 AM',57.42
8193,'01/04/2022 1:54:10 PM',45.89
8194,'01/04/2022 5:53:23 PM',82.77
8195,'01/04/2022 8:13:26 PM',36.23
8196,'01/04/2022 10:00:49 PM',76.11
8197,'01/05/2022 7:45:37 AM',82.06
8198,'01/05/2022 8:44:36 AM',17.17
8199,'01/05/2022 11:26:08 AM',40.39
8200,'01/05/2022 6:43:08 PM',37.23
8201,'01/05/2022 10:54:10 PM',88.27
8202,'01/05/2022 11:09:09 PM',95.93
];
```

Resultaten

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

`date`.

Maak de volgende meting om te berekenen of een transactie plaatsvindt op 5 januari vóór 09.00 uur:

`=indaytotime(date,'01/05/2022 9:00:00 AM',0)`

Resultatentabel

| date | inday(date,'01/05/2022 12:00:00 AM',0) |
| --- | --- |
| 01/04/2022 3:41:54 AM | 0 |
| 01/04/2022 4:19:43 AM | 0 |
| 01/04/2022 04:53:47 AM | 0 |
| 01/04/2022 8:38:53 AM | 0 |
| 01/04/2022 10:37:52 AM | 0 |
| 01/04/2022 1:54:10 PM | 0 |
| 01/04/2022 5:53:23 PM | 0 |
| 01/04/2022 8:13:26 PM | 0 |
| 01/04/2022 10:00:49 PM | 0 |
| 01/05/2022 7:45:37 AM | -1 |
| 01/05/2022 8:44:36 AM | -1 |
| 01/05/2022 11:26:08 AM | 0 |
| 01/05/2022 6:43:08 PM | 0 |
| 01/05/2022 10:54:10 PM | 0 |
| 01/05/2022 11:09:09 PM | 0 |

De meting `in_day_to_time` wordt gemaakt in het diagramobject met behulp van de functie `indaytotime()` en geeft het datumveld door, een vastgelegde tijdstempel voor 09.00 uur op 5 januari en een offset van `0` als de argumenten van de functie. Alle transacties die plaatsvinden tussen middernacht en 09.00 uur op 5 januari retourneren TRUE. Dit wordt gevalideerd in de resultatentabel.

## Voorbeeld 5 – Scenario

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

#### Load-script en resultaten

Overzicht

In dit voorbeeld wordt een gegevensverzameling met ticketverkopen voor een lokale bioscoop geladen in een tabel met de naam Ticket\_Sales. Vandaag is het 3 mei 2022 en het is 11:00 AM.

De gebruiker wil graag een KPI-diagramobject gebruiken om de omzet te tonen van alle shows die tot dusver vandaag hebben plaatsgevonden.

Load-script

```
SET TimestampFormat='M/D/YYYY h:mm:ss[.fff] TT';

Ticket_Sales:
Load
*
Inline 
[
sale ID, show time, ticket price
1,05/01/2022 09:30:00 AM,10.50
2,05/03/2022 05:30:00 PM,21.00
3,05/03/2022 09:30:00 AM,10.50
4,05/03/2022 09:30:00 AM,31.50
5,05/03/2022 09:30:00 AM,10.50
6,05/03/2022 12:00:00 PM,42.00
7,05/03/2022 12:00:00 PM,10.50
8,05/03/2022 05:30:00 PM,42.00
9,05/03/2022 08:00:00 PM,31.50
10,05/04/2022 10:30:00 AM,31.50
11,05/04/2022 12:00:00 PM,10.50
12,05/04/2022 05:30:00 PM,10.50
13,05/05/2022 05:30:00 PM,21.00
14,05/06/2022 12:00:00 PM,21.00
15,05/07/2022 09:30:00 AM,42.00
16,05/07/2022 10:30:00 AM,42.00
17,05/07/2022 10:30:00 AM,10.50
18,05/07/2022 05:30:00 PM,10.50
19,05/08/2022 05:30:00 PM,21.00
20,05/11/2022 09:30:00 AM,10.50
];
```

Resultaten

Doe het volgende:

1. Maak een KPI-object.

2. Maak met behulp van de functie indaytotime() een meting die de som toont van alle ticketverkopen voor shows die tot dusver vandaag hebben plaatsgevonden:

=sum(if(indaytotime([show time],'05/03/2022 11:00:00 AM',0),[ticket price],0))

1. Maak een label voor het KPI-object, ‘Current Revenue’.

2. Stel de Getalnotatie van de meting in op Geld.

Het totaal van ticketverkopen tot 11:00 AM op 3 mei 2022 is $52,50.

De functie indaytotime () retourneert een booleaanse waarde bij het vergelijken van de showtijden van elk van de ticketverkopen met de huidige tijd ('05/03/2022 11:00:00 AM’). Voor elke show op 3 mei vóór 11:00 AM retourneert de functie indaytotime () een booleaanse waarde WAAR en de ticketprijs wordt meegenomen in het somtotaal.