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

Esta función devuelve un valor correspondiente a una marca de tiempo del primer milisegundo del primer día de la semana natural que contiene a date. El formato de salida predefinido es el DateFormat definido en el script.

Sintaxis:

WeekStart(timestamp [, period\_no [, first\_week\_day ]])

Tipo de datos que devuelve: dual

La función `weekstart()` determina en qué semana cae la fecha. Luego devuelve una marca de tiempo, en formato de fecha, con el primer milisegundo de esa semana. El primer día de la semana viene determinado por la variable de entorno `FirstWeekDay`. No obstante, esto puede ser reemplazado por el argumento de `first_week_day` en la función `weekstart()`.

Argumentos

| Argumento | Descripción |
| --- | --- |
| timestamp | La fecha o marca de tiempo para evaluar. |
| period\_no | shift es un entero, donde el valor 0 indica la semana que contiene a date. Los valores negativos en el desplazamiento indican semanas precedentes y los valores positivos indican semanas subsiguientes. |
| first\_week\_day | Especifica el día en el que se inicia la semana. Si se omite, se utiliza el valor de la variable FirstWeekDay.<br><br>Los valores posibles de first\_week\_day son 0 para el lunes, 1 para el martes, 2 para el miércoles, 3 para el jueves, 4 para el viernes, 5 para el sábado y 6 para el domingo.<br><br>Para más información sobre la variable del sistema, vea [FirstWeekDay](https://help.qlik.com/es-ES/sense/November2025/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/FirstWeekDay.htm). |

## Cuándo se utiliza

La función `weekstart()` se suele utilizar como parte de una expresión cuando el usuario desea que el cálculo utilice la fracción de la semana que ya ha transcurrido. Por ejemplo, se podría usar para calcular los salarios totales obtenidos por los empleados en la semana transcurrida hasta ahora.

Los siguientes ejemplos suponen:

```
SET FirstWeekDay=0;
```

Ejemplos de funciones

| Ejemplo | Resultado |
| --- | --- |
| `weekstart('01/12/2013')` | Devuelve 01/07/2013. |
| `weekstart('01/12/2013', -1 )` | Devuelve 11/31/2012. |
| `weekstart('01/12/2013', 0, 1)` | Devuelve 01/08/2013. |

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

Si desea configuraciones ISO para semanas y números de semana, asegúrese de tener lo siguiente en el script:

```
Set DateFormat   ='YYYY-MM-DD'; 
Set FirstWeekDay =0;    // Monday as first week day
Set BrokenWeeks  =0;    //(use unbroken weeks)
Set ReferenceDay =4;    // Jan 4th is always in week 1
```

Si desea la configuración de EE. UU., asegúrese de tener lo siguiente en el script:

```
Set DateFormat   ='M/D/YYYY';
Set FirstWeekDay =6;    // Sunday as first week day
Set BrokenWeeks  =1;    //(use broken weeks)
Set ReferenceDay =1;    // Jan 1st is always in week 1
```

Los ejemplos anteriores dan como resultado lo siguiente, de la función weekstart():

Ejemplo de la función Weekstart

| Fecha | Inicio de la semana ISO | Inicio de semana en EE. UU. |
| --- | --- | --- |
| Sab 2020 Dic 26 | 2020-12-21 | 12/20/2020 |
| Dom 2020 Dic 27 | 2020-12-21 | 12/27/2020 |
| Lun 2020 Dic 28 | 2020-12-28 | 12/27/2020 |
| Mar 2020 Dic 29 | 2020-12-28 | 12/27/2020 |
| Mie 2020 Dic 30 | 2020-12-28 | 12/27/2020 |
| Jue 2020 Dic 31 | 2020-12-28 | 12/27/2020 |
| Vie 2021 Ene 1 | 2020-12-28 | 12/27/2020 |
| Sab 2021 Ene 2 | 2020-12-28 | 12/27/2020 |
| Dom 2021 Ene 3 | 2020-12-28 | 1/3/2021 |
| Lun 2021 Ene 4 | 2021-01-04 | 1/3/2021 |
| Mar 2021 Ene 5 | 2021-01-04 | 1/3/2021 |

Nota informativaEl inicio de la semana es los lunes en la columna ISO y los domingos en la columna de EE. UU.

## Ejemplo 1: sin argumentos adicionales

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

#### Script de carga y resultados

Vista general

Abra el Editor de carga de datos y añada el script de carga inferior en una nueva sección.

El script de carga contiene:

* Un conjunto de datos que contiene un conjunto de transacciones de 2022, que se carga en una tabla llamada "Transactions".

* El campo de fecha proporcionado en el formato de la variable del sistema DateFormat: (MM/DD/AAAA).

* La creación de un campo, start\_of\_week, que devuelve una marca de tiempo con el inicio de la semana en que las transacciones tuvieron lugar.

Script de carga

```
SET FirstWeekDay=6;

Transactions:
    Load
        *,
        weekstart(date) as start_of_week,
        timestamp(weekstart(date)) as start_of_week_timestamp
        ;
Load
*
Inline
[
id,date,amount
8188,1/7/2022,17.17
8189,1/19/2022,37.23
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
];
```

Resultados

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

* date

* start\_of\_week

* start\_of\_week\_timestamp

Tabla de resultados

| date | start\_of\_week | start\_of\_week\_timestamp |
| --- | --- | --- |
| 1/7/2022 | 01/02/2022 | 1/2/2022 12:00:00 AM |
| 1/19/2022 | 01/16/2022 | 16/1/2022 12:00:00 AM |
| 2/5/2022 | 01/30/2022 | 30/1/2022 12:00:00 AM |
| 2/28/2022 | 02/27/2022 | 2/27/2022 12:00:00 AM |
| 3/16/2022 | 03/13/2022 | 13/3/2022 12:00:00 AM |
| 4/1/2022 | 03/27/2022 | 27/3/2022 12:00:00 AM |
| 5/7/2022 | 05/01/2022 | 5/1/2022 12:00:00 AM |
| 5/16/2022 | 05/15/2022 | 15/5/2022 12:00:00 AM |
| 6/15/2022 | 06/12/2022 | 6/12/2022 12:00:00 AM |
| 6/26/2022 | 06/26/2022 | 6/26/2022 12:00:00 AM |
| 7/9/2022 | 07/03/2022 | 7/3/2022 12:00:00 AM |
| 7/22/2022 | 07/17/2022 | 17/7/2022 12:00:00 AM |
| 7/23/2022 | 07/17/2022 | 17/7/2022 12:00:00 AM |
| 7/27/2022 | 07/24/2022 | 24/7/2022 12:00:00 AM |
| 8/2/2022 | 07/31/2022 | 31/7/2022 12:00:00 AM |
| 8/8/2022 | 08/07/2022 | 8/7/2022 12:00:00 AM |
| 8/19/2022 | 08/14/2022 | 8/14/2022 12:00:00 AM |
| 9/26/2022 | 09/25/2022 | 25/9/2022 12:00:00 AM |
| 10/14/2022 | 10/09/2022 | 10/9/2022 12:00:00 AM |
| 10/29/2022 | 10/23/2022 | 23/10/2022 12:00:00 AM |

El campo start\_of\_week se crea en la instrucción load precedente utilizando la función weekstart() e introduciendo el campo de fecha como argumento de la función.

La función weekstart() identifica inicialmente en qué semana cae el valor de la fecha y devuelve una marca de tiempo del primer milisegundo de esa semana.

Diagrama de la función weekstart(), ejemplo sin argumentos adicionales

Diagrama de la función weekstart(), ejemplo sin argumentos adicionales

Diagrama de la función weekstart()weekstart(), ejemplo sin argumentos adicionales![Diagrama que muestra cómo la función weekstart convierte la fecha de la transacción en una marca de tiempo con el primer milisegundo de la semana en la que ocurre la transacción.](https://help.qlik.com/es-ES/sense/November2025/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekstart-examples-no-add-arg.png)

La transacción 8191 tuvo lugar el 5 de febrero. La variable del sistema FirstWeekDay establece el primer día de la semana en domingo. La función weekstart() identifica que el primer domingo antes del 5 de febrero, y por lo tanto el inicio de la semana, fue el 30 de enero. Por lo tanto, el valor de start\_of\_week de esa transacción devuelve el primer milisegundo de ese día, que es el 30 de enero a las 12:00:00 a. m.

## Ejemplo 2: period\_no

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

#### Script de carga y resultados

Vista general

Abra el Editor de carga de datos y añada el script de carga inferior en una nueva sección.

El script de carga contiene:

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

* La creación de un campo, previous\_week\_start, que devuelve la fecha y hora de inicio del trimestre anterior a la transacción.

Script de carga

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

Transactions:
    Load
        *,
        weekstart(date,-1) as previous_week_start,
        timestamp(weekstart(date,-1)) as previous_week_start_timestamp
        ;
Load
*
Inline
[
id,date,amount
8188,1/7/2022,17.17
8189,1/19/2022,37.23
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
];
```

Resultados

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

* date

* previous\_week\_start

* previous\_week\_start\_timestamp

Tabla de resultados

| date | previous\_week\_start | previous\_week\_start\_timestamp |
| --- | --- | --- |
| 1/7/2022 | 12/26/2021 | 26/12/2021 12:00:00 AM |
| 1/19/2022 | 01/09/2022 | 1/9/2022 12:00:00 AM |
| 2/5/2022 | 01/23/2022 | 1/23/2022 12:00:00 AM |
| 2/28/2022 | 02/20/2022 | 20/2/2022 12:00:00 AM |
| 3/16/2022 | 03/06/2022 | 3/6/2022 12:00:00 AM |
| 4/1/2022 | 03/20/2022 | 20/3/2022 12:00:00 AM |
| 5/7/2022 | 04/24/2022 | 24/4/2022 12:00:00 AM |
| 5/16/2022 | 05/08/2022 | 5/8/2022 12:00:00 AM |
| 6/15/2022 | 06/05/2022 | 6/5/2022 12:00:00 AM |
| 6/26/2022 | 06/19/2022 | 19/6/2022 12:00:00 AM |
| 7/9/2022 | 06/26/2022 | 6/26/2022 12:00:00 AM |
| 7/22/2022 | 07/10/2022 | 7/10/2022 12:00:00 AM |
| 7/23/2022 | 07/10/2022 | 7/10/2022 12:00:00 AM |
| 7/27/2022 | 07/17/2022 | 17/7/2022 12:00:00 AM |
| 8/2/2022 | 07/24/2022 | 24/7/2022 12:00:00 AM |
| 8/8/2022 | 07/31/2022 | 31/7/2022 12:00:00 AM |
| 8/19/2022 | 08/07/2022 | 8/7/2022 12:00:00 AM |
| 9/26/2022 | 09/18/2022 | 18/9/2022 12:00:00 AM |
| 10/14/2022 | 10/02/2022 | 10/2/2022 12:00:00 AM |
| 10/29/2022 | 10/16/2022 | 16/10/2022 12:00:00 AM |

En este caso, como se usó un period\_no de -1 como argumento de desplazamiento en la función weekstart(), la función primero identifica la semana en la que se realizan las transacciones. Luego busca una semana antes e identifica el primer milisegundo de esa semana.

Diagrama de la función weekstart(), ejemplo de period\_no

Diagrama de la función weekstart(), ejemplo de period\_no

Diagrama de la función weekstart()weekstart(), ejemplo de period\_no![Diagrama que muestra cómo la función weekstart convierte la fecha de la transacción en una marca de tiempo con el primer milisegundo de la semana en la que ocurre la transacción.](https://help.qlik.com/es-ES/sense/November2025/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekstart-examples-period-no.png)

La transacción 8196 tuvo lugar el 15 de junio. La función weekstart() identifica que la semana comienza el 12 de junio. Por lo tanto, la semana anterior comenzó el 5 de junio a las 12:00:00 a. m.; este es el valor que devuelve para el campo previous\_week\_start.

## Ejemplo: first\_week\_day

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/weekstart.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 el mismo conjunto de datos y escenario que el primer ejemplo. Sin embargo, en este ejemplo, debemos establecer el martes como el primer día de la semana laboral.

Script de carga

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

Transactions:
    Load
        *,
        weekstart(date,0,1) as start_of_week,
        timestamp(weekstart(date,0,1)) as start_of_week_timestamp
        ;
Load
*
Inline
[
id,date,amount
8188,1/7/2022,17.17
8189,1/19/2022,37.23
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
];
```

Resultados

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

* date

* start\_of\_week

* start\_of\_week\_timestamp

Tabla de resultados

| date | start\_of\_week | start\_of\_week\_timestamp |
| --- | --- | --- |
| 1/7/2022 | 01/04/2022 | 1/4/2022 12:00:00 AM |
| 1/19/2022 | 01/18/2022 | 1/18/2022 12:00:00 AM |
| 2/5/2022 | 02/01/2022 | 2/1/2022 12:00:00 AM |
| 2/28/2022 | 02/22/2022 | 22/2/2022 12:00:00 AM |
| 3/16/2022 | 03/15/2022 | 15/3/2022 12:00:00 AM |
| 4/1/2022 | 03/29/2022 | 29/3/2022 12:00:00 AM |
| 5/7/2022 | 05/03/2022 | 5/3/2022 12:00:00 AM |
| 5/16/2022 | 05/10/2022 | 5/10/2022 12:00:00 AM |
| 6/15/2022 | 06/14/2022 | 6/14/2022 12:00:00 AM |
| 6/26/2022 | 06/21/2022 | 21/6/2022 12:00:00 AM |
| 7/9/2022 | 07/05/2022 | 7/5/2022 12:00:00 AM |
| 7/22/2022 | 07/19/2022 | 19/7/2022 12:00:00 AM |
| 7/23/2022 | 07/19/2022 | 19/7/2022 12:00:00 AM |
| 7/27/2022 | 07/26/2022 | 26/7/2022 12:00:00 AM |
| 8/2/2022 | 08/02/2022 | 8/2/2022 12:00:00 AM |
| 8/8/2022 | 08/02/2022 | 8/2/2022 12:00:00 AM |
| 8/19/2022 | 08/16/2022 | 16/8/2022 12:00:00 AM |
| 9/26/2022 | 09/20/2022 | 20/9/2022 12:00:00 AM |
| 10/14/2022 | 10/11/2022 | 10/11/2022 12:00:00 AM |
| 10/29/2022 | 10/25/2022 | 25/10/2022 12:00:00 AM |

En este caso, como el argumento de first\_week\_date se utiliza en la función weekstart(), establece el primer día de la semana en martes.

Diagrama de la función weekstart(), ejemplo de first\_week\_day

Diagrama de la función weekstart(), ejemplo de first\_week\_day

Diagrama de la función weekstart()weekstart(), ejemplo de first\_week\_day![Diagrama que muestra cómo la función weekstart convierte la fecha de la transacción en una marca de tiempo con el primer milisegundo de la semana en la que ocurre la transacción.](https://help.qlik.com/es-ES/sense/November2025/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekstart-examples-first-week-day.png)

La transacción 8191 tuvo lugar el 5 de febrero. La función weekstart() identifica que el primer martes anterior a esta fecha y, por lo tanto, el inicio de la semana y el valor devuelto, fue el 1 de febrero a las 12:00:00 a. m.

## Ejemplo 4: ejemplo de objeto gráfico

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

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

Vista general

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

El script de carga contiene el mismo conjunto de datos y escenario que el primer ejemplo.

Sin embargo, en este ejemplo, el conjunto de datos sin modificar se carga en la aplicación. El cálculo que devuelve una marca de tiempo del inicio de la semana en que se realizaron las transacciones se crea como una medida en un objeto gráfico de la aplicación.

Script de carga

```
Transactions:

Load
*
Inline
[
id,date,amount
8188,1/7/2022,17.17
8189,1/19/2022,37.23
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
];
```

Resultados

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

Para calcular el inicio de la semana en que se realiza una transacción, agregue las siguientes medidas:

* =weekstart(date)

* =timestamp(weekstart(date))

Tabla de resultados

| date | start\_of\_week | start\_of\_week\_timestamp |
| --- | --- | --- |
| 1/7/2022 | 01/02/2022 | 1/2/2022 12:00:00 AM |
| 1/19/2022 | 01/16/2022 | 16/1/2022 12:00:00 AM |
| 2/5/2022 | 01/30/2022 | 30/1/2022 12:00:00 AM |
| 2/28/2022 | 02/27/2022 | 2/27/2022 12:00:00 AM |
| 3/16/2022 | 03/13/2022 | 13/3/2022 12:00:00 AM |
| 4/1/2022 | 03/27/2022 | 27/3/2022 12:00:00 AM |
| 5/7/2022 | 05/01/2022 | 5/1/2022 12:00:00 AM |
| 5/16/2022 | 05/15/2022 | 15/5/2022 12:00:00 AM |
| 6/15/2022 | 06/12/2022 | 6/12/2022 12:00:00 AM |
| 6/26/2022 | 06/26/2022 | 6/26/2022 12:00:00 AM |
| 7/9/2022 | 07/03/2022 | 7/3/2022 12:00:00 AM |
| 7/22/2022 | 07/17/2022 | 17/7/2022 12:00:00 AM |
| 7/23/2022 | 07/17/2022 | 17/7/2022 12:00:00 AM |
| 7/27/2022 | 07/24/2022 | 24/7/2022 12:00:00 AM |
| 8/2/2022 | 07/31/2022 | 31/7/2022 12:00:00 AM |
| 8/8/2022 | 08/07/2022 | 8/7/2022 12:00:00 AM |
| 8/19/2022 | 08/14/2022 | 8/14/2022 12:00:00 AM |
| 9/26/2022 | 09/25/2022 | 25/9/2022 12:00:00 AM |
| 10/14/2022 | 10/09/2022 | 10/9/2022 12:00:00 AM |
| 10/29/2022 | 10/23/2022 | 23/10/2022 12:00:00 AM |

La medida start\_of\_week se crea en el objeto gráfico utilizando la función weekstart() e introduciendo el campo date como argumento de la función.

La función weekstart() identifica inicialmente en qué semana cae el valor de la fecha y devuelve una marca de tiempo del primer milisegundo de esa semana.

Diagrama de la función weekstart(), ejemplo de objeto gráfico

Diagrama de la función weekstart(), ejemplo de objeto gráfico

Diagrama de la función weekstart()weekstart(), ejemplo de objeto gráfico![Diagrama que muestra cómo la función weekstart convierte la fecha de la transacción en una marca de tiempo con el primer milisegundo de la semana en la que ocurre la transacción.](https://help.qlik.com/es-ES/sense/November2025/Subsystems/Hub/Content/Resources/Images/scripting-functions-weekstart-examples-chart-object.png)

La transacción 8191 tuvo lugar el 5 de febrero. La variable del sistema FirstWeekDay establece el primer día de la semana en domingo. La función weekstart() identifica que el primer domingo anterior al 5 de febrero – y por lo tanto el inicio de la semana– fue el 30 de enero. Por lo tanto, el valor start\_of\_week de esa transacción devuelve el primer milisegundo de ese día, que es el 30 de enero a las 12:00:00 a. m.

## Ejemplo 5: Escenario

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

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

Vista general

Abra el Editor de carga de datos y añada el script de carga inferior en una nueva sección.

El script de carga contiene:

* Un conjunto de datos que se carga en una tabla denominada Payroll.

* Datos que consisten en identificaciones de empleados, nombres de empleados y el salario diario que gana cada empleado.

Los empleados comienzan a trabajar el lunes y trabajan seis días a la semana. La variable del sistema FirstWeekDay no debe modificarse.

Al usuario final le gustaría tener un objeto gráfico que muestre, por ID de empleado y nombre de empleado, los salarios obtenidos en la semana hasta la fecha.

Script de carga

```
Payroll: 
Load
*
Inline 
[
employee_id,employee_name,day_rate
182,Mark, $150
183,Deryck, $125
184,Dexter, $125
185,Sydney,$270
186,Agatha,$128
];
```

Resultados

Haga lo siguiente:

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

   * employee\_id

   * employee\_name

2. A continuación, cree una medida para calcular los salarios obtenidos en la semana hasta la fecha:

   =if(today(1)-weekstart(today(1),0,0)&lt;7,(today(1)-weekstart(today(1),0,0))\*day\_rate,day\_rate\*6)

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

Tabla de resultados

| employee\_id | employee\_name | =if(today(1)-weekstart(today(1),0,0)&lt;7,(today(1)-weekstart(today(1),0,0))\*day\_rate,day\_rate\*6) |
| --- | --- | --- |
| 182 | Mark | $600.00 |
| 183 | Deryck | $500.00 |
| 184 | Dexter | $500.00 |
| 185 | Sydney | $1080.00 |
| 186 | Agatha | $512.00 |

La función weekstart(), al utilizar la fecha de hoy como primer argumento y 0 como tercer argumento, establece el lunes como el primer día de la semana y devuelve la fecha de inicio de la semana actual. Al restar ese resultado de la fecha actual, la expresión devuelve a continuación el número de días que han transcurrido en lo que va de semana.

La condición luego evalúa si ha habido más de seis días esta semana. Si es así, la cifra day\_rate del empleado se multiplica por 6 días. Sino es así, la cifra day\_rate se multiplica por el número de días que han transcurrido en lo que va de semana.