# indaytotime - Función de script y de gráfico

Esta función devuelve True si timestamp se encuentra dentro de la parte del día que contiene a base\_timestamp hasta e incluido el milisegundo exacto de base\_timestamp.

Sintaxis:

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

La función `indaytotime()` devuelve un resultado booleano determinado por si un valor de marca de tiempo ocurre durante el segmento del día. El límite de inicio de este segmento es el comienzo del día, el cual se ha fijado por defecto en la medianoche, pero esto se puede modificar mediante el argumento `day_start` de la función `indaytotime()`. El límite final del segmento del día se determina mediante un argumento `base_timestamp` de la función.

Diagrama de la función `indaytotime`.

Diagrama de la función `indaytotime`.

Diagrama de la función `indaytotime`indaytotime. ![Diagrama que muestra las relaciones entre las variables de la función indaytotime.](https://help.qlik.com/es-ES/sense/November2025/Subsystems/Hub/Content/Resources/Images/scripting-functions-indaytotime-diagram-overview.png)

Cuándo se utiliza

La función `indaytotime()` devuelve un resultado booleano. Normalmente, este tipo de función se utilizará como condición en una `if expression`. La función `indaytotime()` devuelve una agregación o cálculo dependiendo de si una marca de tiempo ocurrió en el segmento del día hasta la hora de la marca de tiempo base inclusive.

Por ejemplo, la función `indaytotime()` puede utilizarse para mostrar la suma de las ventas de entradas de los espectáculos que han tenido lugar hoy.

Tipo de datos que devuelve: Booleano

En Qlik Sense, el valor booleano verdadero viene representado por -1 y el valor falso está representado por 0.

Argumentos

| Argumento | Descripción |
| --- | --- |
| ` timestamp  ` | La fecha y la hora que desea comparar con `base_timestamp`. |
| ` base_timestamp  ` | La fecha y hora que se utiliza para evaluar la fecha-hora. |
| ` period_no  ` | El día se puede desplazar mediante `period_no`. `period_no` es un entero, en el que el valor 0 indica el día que contiene a `base_timestamp`. Los valores negativos en `period_no` indican días precedentes y los valores positivos indican días subsiguientes. |
| ` day_start  ` | (Opcional) Si desea trabajar con días que no comiencen a medianoche, indique un desplazamiento como una fracción de un día en `day_start`. Por ejemplo, use 0,125 para indicar las 3 AM. |

## Configuraciones regionales

A menos que se especifique algo distinto, los ejemplos de este tema utilizan el siguiente formato de fecha: MM/DD/YYYY. El formato de fecha se especifica en la sentencia `SET DateFormat` de su script de carga de datos. El formato de fecha predeterminado puede ser diferente en su sistema, debido a su configuración regional y otros factores. Puede cambiar el formato en los ejemplos a continuación para ajustarlo a sus necesidades. O puede cambiar los formatos en su script de carga para que coincidan con estos ejemplos.

La configuración regional predeterminada en las aps se basa en la configuración del sistema regional de la computadora o servidor donde esté instalado Qlik Sense. Si el servidor de Qlik Sense al que está accediendo está configurado en Suecia, el editor de carga de datos utilizará la configuración regional sueca para las fechas, la hora y la moneda. Estos ajustes de formato regional no están relacionados con el idioma mostrado en la interfaz de usuario de Qlik Sense. Qlik Sense se mostrará en el mismo idioma que esté utilizando en su navegador.

Ejemplos de funciones

| Ejemplo | Resultado |
| --- | --- |
| `indaytotime` ('01/12/2006 12:23:00 PM', '01/12/2006 11:59:00 PM', 0) | Devuelve Verdadero |
| `indaytotime` ('01/12/2006 12:23:00 PM', '01/12/2006 12:00:00 AM', 0) | Devuelve Falso |
| `indaytotime` '01/11/2006 12:23:00 PM', '01/12/2006 11:59:00 PM', -1) | Devuelve Verdadero |

## Ejemplo 1: sin argumentos adicionales

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

#### Script de carga y resultados

Vista general

Abra el Editor de carga de datos y agregue el script de carga a continuación en una nueva pestaña.

El script de carga contiene:

* Un conjunto de datos que contiene un conjunto de transacciones para el período comprendido entre el 4 y el 5 de enero se carga en una tabla denominada "Transacciones".

* Un campo de fecha que se proporciona en el formato `(M/D/YYYY h:mm:ss[.fff] TT)` de la variable del sistema `TimeStamp`.

* Una carga anterior que contiene la función `indaytotime()` que está configurada como el campo `'in_day_to_time'` y que determina si cada una de las transacciones tiene lugar antes de las 9:00 a. m.

Script de carga

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

Resultados

Cargue los datos y abra una hoja. Cree una nueva tabla y agregue estos campos como dimensiones:

* `date`

* `in_day_to_time`

Tabla de resultados

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

Ejemplo 1: diagrama de la función `indaytotime` con límite de 9:00 AM.

Ejemplo 1: diagrama de la función `indaytotime` con límite de 9:00 AM.

Ejemplo 1: diagrama de la función `indaytotime`indaytotime con límite de 9:00 AM. ![Diagrama que muestra la función indaytotime() con un límite de 9:00.](https://help.qlik.com/es-ES/sense/November2025/Subsystems/Hub/Content/Resources/Images/scripting-functions-indaytotime-example1-diagram.png)

El campo `in_day_to_time field` se crea en la sentencia de carga anterior utilizando la función `indaytotime()` e introduciendo el campo de fecha, una marca de tiempo codificada para las 9:00 AM del 5 de enero y un desplazamiento de 0 como argumentos de la función. Todas las transacciones que se produzcan entre la medianoche y las 9:00 AM del 5 de enero devuelven VERDADERO.

## Ejemplo 2: period\_no

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

#### Script de carga y resultados

Vista general

El script de carga utiliza el mismo conjunto de datos y el mismo escenario que se utilizó en el primer ejemplo.

Sin embargo, en este ejemplo, calcularemos si la fecha de la transacción ocurrió un día antes de las 9:00 AM del 5 de enero.

Script de carga

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

Resultados

Cargue los datos y abra una hoja. Cree una nueva tabla y agregue estos campos como dimensiones:

* `date`

* `in_day_to_time`

Tabla de resultados

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

Ejemplo 2: diagrama de la función `indaytotime` con las transacciones del 4 de enero.

Ejemplo 2: diagrama de la función `indaytotime` con las transacciones del 4 de enero.

Ejemplo 2: diagrama de la función `indaytotime`indaytotime con las transacciones del 4 de enero.![Diagrama que muestra la función indaytotime () que usa un period_no de -1 para devolver transacciones desde el 4 de enero.](https://help.qlik.com/es-ES/sense/November2025/Subsystems/Hub/Content/Resources/Images/scripting-functions-indaytotime-example2-diagram.png)

En este ejemplo, como se utilizó un desplazamiento de -1 como argumento de desplazamiento en la función `indaytotime()`, ésta determina si cada fecha de transacción tuvo lugar antes de las 9:00 AM del 4 de enero. Esto puede verificarse en la tabla de salida donde una transacción devuelve un resultado booleano de TRUE.

## Ejemplo 3: day\_start

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

#### Script de carga y resultados

Vista general

Se utilizan el mismo conjunto de datos y el mismo escenario que en el primer ejemplo.

Sin embargo, en este ejemplo, la política de la empresa es que la jornada laboral comienza y termina a las 8 a.m.

Script de carga

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

Resultados

Cargue los datos y abra una hoja. Cree una nueva tabla y agregue estos campos como dimensiones:

* `date`

* `in_day_to_time`

Tabla de resultados

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

Ejemplo 3: diagrama de la función `indaytotime` con transacciones de 8:00 AM a 9:00 AM.

Ejemplo 3: diagrama de la función `indaytotime` con transacciones de 8:00 AM a 9:00 AM.

Ejemplo 3: diagrama de la función `indaytotime`indaytotime con transacciones de 8:00 AM a 9:00 AM.![Diagrama que muestra la función indaytotime() que muestra transacciones desde las 8:00 am hasta las 9:00 am.](https://help.qlik.com/es-ES/sense/November2025/Subsystems/Hub/Content/Resources/Images/scripting-functions-indaytotime-example3-diagram.png)

Debido a que el argumento 8/24 de `start_day`, que equivale a las 8:00 a. m., se utiliza en la función `indaytotime()`, cada día comienza y termina a las 8:00 a. m. Por lo tanto, la función `indaytotime()` devolverá un resultado booleano TRUE para cualquier transacción que haya tenido lugar entre las 8:00 a. m. y las 9:00 a. m. del 5 de enero.

## Ejemplo 4 : Objeto gráfico

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

#### Script de carga y expresión de gráfico

Vista general

Se utilizan el mismo conjunto de datos y el mismo escenario que en el primer ejemplo.

Sin embargo, en este ejemplo, el conjunto de datos sin modificar se carga en la aplicación. Haremos un cálculo para ver si una transacción tiene lugar el 5 de enero antes de las 9:00 AM creando una medida en un objeto gráfico.

Script de carga

```

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

Resultados

Cargue los datos y abra una hoja. Cree una nueva tabla y agregue este campo como dimensión:

`date`.

Para determinar si una transacción tiene lugar el 5 de enero antes de las 9:00 AM, cree la siguiente medida:

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

Tabla de resultados

| date | =indaytotime(date,'01/05/2022 9: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 |

La medida `in_day_to_time` se crea en el objeto gráfico utilizando la función `indaytotime()` e introduciendo el campo de fecha, una marca de tiempo codificada para las 9:00 a. m. del 5 de enero y un desplazamiento de `0` como argumentos de la función. Todas las transacciones que se produzcan entre la medianoche y las 9:00 AM del 5 de enero devuelven VERDADERO. Esto se valida en la tabla de resultados.

## Ejemplo 5: Escenario

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

#### Script de carga y resultados

Vista general

En este ejemplo, un conjunto de datos que contiene las ventas de entradas de un cine local se carga en una tabla llamada Ticket\_Sales. Hoy es 3 de mayo de 2022 y son las 11:00 AM.

El usuario desea que un objeto gráfico de KPI muestre los ingresos obtenidos de todos los espectáculos que han tenido lugar hoy.

Script de carga

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

Resultados

Haga lo siguiente:

1. Cree un objeto KPI.

2. Cree una medida que muestre la suma de todas las ventas de entradas para los espectáculos que han tenido lugar hoy hasta el momento utilizando la función indaytotime():

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

1. Cree una etiqueta para el objeto KPI denominada "Ingresos actuales".

2. Establezca el Formato numérico de la medida en Moneda.

La suma total de las ventas de entradas hasta las 11:00 horas del 3 de mayo de 2022 es de 52,50 dólares.

La función indaytotime () devuelve un valor booleano al comparar las horas de espectáculo de cada una de las ventas de entradas con la hora actual ('05/03/2022 11:00:00 AM'). Para cualquier espectáculo del 3 de mayo antes de las 11:00 horas, la función indaytotime () devuelve un valor booleano de TRUE y su precio de entrada se incluirá en la suma total.