# yearstart Función de script y de gráfico

Esta función devuelve una marca de tiempo correspondiente al inicio del primer día del año que contiene a date. El formato de salida predefinido será el DateFormat definido en el script.

Sintaxis:

YearStart(date[, period\_no[, first\_month\_of\_year]])

En otras palabras, la función `yearstart()` determina en qué año cae la fecha. A continuación devuelve una marca de tiempo, en formato de fecha, del primer milisegundo de ese año. El primer mes del año es, por defecto, enero. No obstante, puede cambiar la definición del primer mes del año usando el argumento `first_month_of_year` en la función `yearstart()`.

Diagrama de la función `yearstart()` que muestra el rango de tiempo que puede abarcar la función.

Diagrama de la función `yearstart()` que muestra el rango de tiempo que puede abarcar la función.

Diagrama de la función `yearstart()`yearstart() que muestra el rango de tiempo que puede abarcar la función. ![El diagrama que muestra cómo la función yearstart() identifica fechas dentro de un determinado período del año y devuelve la marca de tiempo del inicio del año de las fechas que caen en ese año determinado.](https://help.qlik.com/es-ES/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-yearstart-diagram.png)

Cuándo se utiliza

La función `yearstart()` se utiliza como parte de una expresión cuando deseamos que el cálculo utilice la fracción del año que ha transcurrido hasta el momento. Por ejemplo, si desea calcular el interés que se ha acumulado en un año hasta la fecha.

Tipo de datos que devuelve: dual

Argumentos

| Argumento | Descripción |
| --- | --- |
| date | La fecha o marca de tiempo para evaluar. |
| period\_no | period\_no es un entero, donde el valor 0 indica el año que contiene a date. Los valores negativos en period\_no indican años precedentes y los valores positivos indican años subsiguientes. |
| first\_month\_of\_year | Si desea trabajar con años (fiscales) que no comiencen en enero, indique un valor entre 2 y 12 en first\_month\_of\_year. |

Se pueden utilizar los siguientes meses en el `first_month_of_year argument`:

valores de first\_month\_of\_year

| Mes | Valor |
| --- | --- |
| Febrero | 2 |
| Marzo | 3 |
| Abril | 4 |
| Mayo | 5 |
| Junio | 6 |
| Julio | 7 |
| Agosto | 8 |
| Septiembre | 9 |
| Octubre | 10 |
| Noviembre | 11 |
| Diciembre | 12 |

## 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 aplicaciones 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 Qlik Sense interfaz de usuario. Qlik Sense se mostrará en el mismo idioma que el navegador que esté utilizando.

Ejemplos de funciones

| Ejemplo | Resultado |
| --- | --- |
| `yearstart('10/19/2001')` | Devuelve 01/01/2001 00:00:00. |
| `yearstart('10/19/2001',-1)` | Devuelve 01/01/2000 00:00:00. |
| `yearstart('10/19/2001',0,4)` | Devuelve 04/01/2001 00:00:00. |

## Ejemplo 1: ejemplo básico

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/yearstart.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 entre 2020 y 2022 se carga en una tabla llamada "`Transactions`".

* El campo de fecha se ha proporcionado en el formato de la variable del sistema `DateFormat` (`MM/DD/YYYY`).

* Una instrucción load precedente que contiene lo siguiente:

  * La función `yearstart()` que está establecida como el campo `year_start`.

  * La función `Timestamp()` que está definida como el campo `year_start_timestamp`.

Script de carga

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

Transactions: 
    Load 
       *, 
       yearstart(date) as year_start, 
       timestamp(yearstart(date)) as year_start_timestamp 
       ; 
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,08/14/2020,82.06 
8194,10/07/2020,40.39 
8195,12/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,12/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 
]; 
```

Resultados

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

* `id`
* `date`
* `year_start`
* `year_start_timestamp`

Tabla de resultados

| ID | date | year\_start | year\_start\_timestamp |
| --- | --- | --- | --- |
| 8188 | 01/13/2020 | 01/01/2020 | 1/1/2020 12:00:00 AM |
| 8189 | 02/26/2020 | 01/01/2020 | 1/1/2020 12:00:00 AM |
| 8190 | 03/27/2020 | 01/01/2020 | 1/1/2020 12:00:00 AM |
| 8191 | 04/16/2020 | 01/01/2020 | 1/1/2020 12:00:00 AM |
| 8192 | 05/21/2020 | 01/01/2020 | 1/1/2020 12:00:00 AM |
| 8193 | 08/14/2020 | 01/01/2020 | 1/1/2020 12:00:00 AM |
| 8194 | 10/07/2020 | 01/01/2020 | 1/1/2020 12:00:00 AM |
| 8195 | 12/05/2020 | 01/01/2020 | 1/1/2020 12:00:00 AM |
| 8196 | 01/22/2021 | 01/01/2021 | 1/1/2021 12:00:00 AM |
| 8197 | 02/03/2021 | 01/01/2021 | 1/1/2021 12:00:00 AM |
| 8198 | 03/17/2021 | 01/01/2021 | 1/1/2021 12:00:00 AM |
| 8199 | 04/23/2021 | 01/01/2021 | 1/1/2021 12:00:00 AM |
| 8200 | 05/04/2021 | 01/01/2021 | 1/1/2021 12:00:00 AM |
| 8201 | 06/30/2021 | 01/01/2021 | 1/1/2021 12:00:00 AM |
| 8202 | 07/26/2021 | 01/01/2021 | 1/1/2021 12:00:00 AM |
| 8203 | 12/27/2021 | 01/01/2021 | 1/1/2021 12:00:00 AM |
| 8204 | 06/06/2022 | 01/01/2022 | 1/1/2022 12:00:00 AM |
| 8205 | 07/18/2022 | 01/01/2022 | 1/1/2022 12:00:00 AM |
| 8206 | 11/14/2022 | 01/01/2022 | 1/1/2022 12:00:00 AM |
| 8207 | 12/12/2022 | 01/01/2022 | 1/1/2022 12:00:00 AM |

El campo `year_start` se crea en la instrucción load anterior utilizando la función `yearstart()` e introduciendo el campo de fecha como argumento de la función.

La función `yearstart()` identifica inicialmente en qué año cae el valor de la fecha y devuelve una marca de tiempo del primer milisegundo de ese año.

Diagrama de la función `yearstart()` y la transacción 8199.

Diagrama de la función `yearstart()` y la transacción 8199.

Diagrama de la función `yearstart()`yearstart() y la transacción 8199. ![Diagrama que muestra que la transacción 8199 tuvo lugar el 23 de abril y que la función yearstart() identifica el inicio de ese año.](https://help.qlik.com/es-ES/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-yearstart-example1-diagram.png)

La transacción 8199 tuvo lugar el 23 de abril de 2021. La función `yearstart()` devuelve el primer milisegundo de ese año, que es el 1 de enero a las 12:00:00 AM.

## Ejemplo 2: period\_no

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/yearstart.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 tarea es crear un campo, "`previous_year_start`", que devuelva la marca de tiempo de la fecha de inicio del año anterior al año en que tuvo lugar una transacción.

Script de carga

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

Transactions: 
    Load 
       *, 
       yearstart(date,-1) as previous_year_start, 
       timestamp(yearstart(date,-1)) as previous_year_start_timestamp 
       ; 
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,08/14/2020,82.06 
8194,10/07/2020,40.39
8195,12/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,12/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 
]; 
```

Resultados

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

* `id`
* `date`
* `previous_year_start`
* `previous_ year_start_timestamp`

Tabla de resultados

| ID | date | previous\_year\_start | previous\_year\_start\_timestamp |
| --- | --- | --- | --- |
| 8188 | 01/13/2020 | 01/01/2019 | 1/1/2019 12:00:00 AM |
| 8189 | 02/26/2020 | 01/01/2019 | 1/1/2019 12:00:00 AM |
| 8190 | 03/27/2020 | 01/01/2019 | 1/1/2019 12:00:00 AM |
| 8191 | 04/16/2020 | 01/01/2019 | 1/1/2019 12:00:00 AM |
| 8192 | 05/21/2020 | 01/01/2019 | 1/1/2019 12:00:00 AM |
| 8193 | 08/14/2020 | 01/01/2019 | 1/1/2019 12:00:00 AM |
| 8194 | 10/07/2020 | 01/01/2019 | 1/1/2019 12:00:00 AM |
| 8195 | 12/05/2020 | 01/01/2019 | 1/1/2019 12:00:00 AM |
| 8196 | 01/22/2021 | 01/01/2020 | 1/1/2020 12:00:00 AM |
| 8197 | 02/03/2021 | 01/01/2020 | 1/1/2020 12:00:00 AM |
| 8198 | 03/17/2021 | 01/01/2020 | 1/1/2020 12:00:00 AM |
| 8199 | 04/23/2021 | 01/01/2020 | 1/1/2020 12:00:00 AM |
| 8200 | 05/04/2021 | 01/01/2020 | 1/1/2020 12:00:00 AM |
| 8201 | 06/30/2021 | 01/01/2020 | 1/1/2020 12:00:00 AM |
| 8202 | 07/26/2021 | 01/01/2020 | 1/1/2020 12:00:00 AM |
| 8203 | 12/27/2021 | 01/01/2020 | 1/1/2020 12:00:00 AM |
| 8204 | 06/06/2022 | 01/01/2021 | 1/1/2021 12:00:00 AM |
| 8205 | 07/18/2022 | 01/01/2021 | 1/1/2021 12:00:00 AM |
| 8206 | 11/14/2022 | 01/01/2021 | 1/1/2021 12:00:00 AM |
| 8207 | 12/12/2022 | 01/01/2021 | 1/1/2021 12:00:00 AM |

En este caso, como se usó un `period_no` de `-1` como argumento de desplazamiento en la función `yearstart()`, la función identifica primero el año en que se realizan las transacciones. Luego busca un año antes e identifica el primer milisegundo de ese año.

Diagrama de la función `yearstart()` con un desplazamiento de `period_no` de -1.

Diagrama de la función `yearstart()` con un desplazamiento de `period_no` de -1.

Diagrama de la función `yearstart()`yearstart() con un desplazamiento de `period_no`period\_no de -1. ![Diagrama que muestra la función yearstart() con un period_no de menos 1 que coloca el rango de años de la función un año atrás.](https://help.qlik.com/es-ES/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-yearstart-example2-diagram.png)

La transacción 8199 tuvo lugar el 23 de abril de 2021. La función `yearstart()` devuelve el primer milisegundo del año anterior, 1 de enero de 2020 a las 12:00:00 AM, para el campo "`previous_year_start`".

## Ejemplo 3: first\_month\_of\_year

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/yearstart.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 el año comience a partir del 1 de abril.

Script de carga

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

Transactions: 
    Load 
       *, 
       yearstart(date,0,4) as year_start, 
       timestamp(yearstart(date,0,4)) as year_start_timestamp 
       ; 
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,08/14/2020,82.06 
8194,10/07/2020,40.39 
8195,12/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,12/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 
];  
```

Resultados

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

* `id`
* `date`
* `year_start`
* `year_start_timestamp`

Tabla de resultados

| ID | date | year\_start | year\_start\_timestamp |
| --- | --- | --- | --- |
| 8188 | 01/13/2020 | 04/01/2019 | 4/1/2019 12:00:00 AM |
| 8189 | 02/26/2020 | 04/01/2019 | 4/1/2019 12:00:00 AM |
| 8190 | 03/27/2020 | 04/01/2019 | 4/1/2019 12:00:00 AM |
| 8191 | 04/16/2020 | 04/01/2020 | 4/1/2020 12:00:00 AM |
| 8192 | 05/21/2020 | 04/01/2020 | 4/1/2020 12:00:00 AM |
| 8193 | 08/14/2020 | 04/01/2020 | 4/1/2020 12:00:00 AM |
| 8194 | 10/07/2020 | 04/01/2020 | 4/1/2020 12:00:00 AM |
| 8195 | 12/05/2020 | 04/01/2020 | 4/1/2020 12:00:00 AM |
| 8196 | 01/22/2021 | 04/01/2020 | 4/1/2020 12:00:00 AM |
| 8197 | 02/03/2021 | 04/01/2020 | 4/1/2020 12:00:00 AM |
| 8198 | 03/17/2021 | 04/01/2020 | 4/1/2020 12:00:00 AM |
| 8199 | 04/23/2021 | 04/01/2021 | 4/1/2021 12:00:00 AM |
| 8200 | 05/04/2021 | 04/01/2021 | 4/1/2021 12:00:00 AM |
| 8201 | 06/30/2021 | 04/01/2021 | 4/1/2021 12:00:00 AM |
| 8202 | 07/26/2021 | 04/01/2021 | 4/1/2021 12:00:00 AM |
| 8203 | 12/27/2021 | 04/01/2021 | 4/1/2021 12:00:00 AM |
| 8204 | 06/06/2022 | 04/01/2022 | 4/1/2022 12:00:00 AM |
| 8205 | 07/18/2022 | 04/01/2022 | 4/1/2022 12:00:00 AM |
| 8206 | 11/14/2022 | 04/01/2022 | 4/1/2022 12:00:00 AM |
| 8207 | 12/12/2022 | 04/01/2022 | 4/1/2022 12:00:00 AM |

En este caso, como el argumento `first_month_of_year` de `4` se utiliza en la función `yearstart()`, establece el primer día del año en el 1 de abril y el último día del año en el 31 de marzo.

Diagrama de la función `yearstart()` con abril establecido como primer mes del año.

Diagrama de la función `yearstart()` con abril establecido como primer mes del año.

Diagrama de la función `yearstart()`yearstart() con abril establecido como primer mes del año. ![Diagrama que muestra la función yearstart() con abril establecido como primer mes del año.](https://help.qlik.com/es-ES/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-yearstart-example3-diagram.png)

La transacción 8199 tuvo lugar el 23 de abril de 2021. Dado que la función `yearstart()` establece el inicio del año en el 1 de abril y lo devuelve como el valor "`year_start`" de la transacción.

## Ejemplo 4: ejemplo de objeto gráfico

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/yearstart.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. El cálculo que devuelve la marca de tiempo de la fecha de inicio del año en el que se realizó una transacción se crea como una medida en un objeto gráfico de la aplicación.

Script de carga

```
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,08/14/2020,82.06 
8194,10/07/2020,40.39 
8195,12/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,12/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 
]; 
```

Resultados

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

* `id`
* `date`

Para calcular en qué año tuvo lugar una transacción, cree las siguientes medidas:

* `=yearstart(date)`
* `=timestamp(yearstart(date))`

Tabla de resultados

| ID | date | =yearstart(date) | =timestamp(yearstart(date)) |
| --- | --- | --- | --- |
| 8188 | 06/06/2022 | 01/01/2022 | 1/1/2022 12:00:00 AM |
| 8189 | 07/18/2022 | 01/01/2022 | 1/1/2022 12:00:00 AM |
| 8190 | 11/14/2022 | 01/01/2022 | 1/1/2022 12:00:00 AM |
| 8191 | 12/12/2022 | 01/01/2022 | 1/1/2022 12:00:00 AM |
| 8192 | 01/22/2021 | 01/01/2021 | 1/1/2021 12:00:00 AM |
| 8193 | 02/03/2021 | 01/01/2021 | 1/1/2021 12:00:00 AM |
| 8194 | 03/17/2021 | 01/01/2021 | 1/1/2021 12:00:00 AM |
| 8195 | 04/23/2021 | 01/01/2021 | 1/1/2021 12:00:00 AM |
| 8196 | 05/04/2021 | 01/01/2021 | 1/1/2021 12:00:00 AM |
| 8197 | 06/30/2021 | 01/01/2021 | 1/1/2021 12:00:00 AM |
| 8198 | 07/26/2021 | 01/01/2021 | 1/1/2021 12:00:00 AM |
| 8199 | 12/27/2021 | 01/01/2021 | 1/1/2021 12:00:00 AM |
| 8200 | 01/13/2020 | 01/01/2020 | 1/1/2020 12:00:00 AM |
| 8201 | 02/26/2020 | 01/01/2020 | 1/1/2020 12:00:00 AM |
| 8202 | 03/27/2020 | 01/01/2020 | 1/1/2020 12:00:00 AM |
| 8203 | 04/16/2020 | 01/01/2020 | 1/1/2020 12:00:00 AM |
| 8204 | 05/21/2020 | 01/01/2020 | 1/1/2020 12:00:00 AM |
| 8205 | 08/14/2020 | 01/01/2020 | 1/1/2020 12:00:00 AM |
| 8206 | 10/07/2020 | 01/01/2020 | 1/1/2020 12:00:00 AM |
| 8207 | 12/05/2020 | 01/01/2020 | 1/1/2020 12:00:00 AM |

La medida "`start_of_year`" se crea en el objeto gráfico utilizando la función `yearstart()` e introduciendo el campo de fecha como argumento de la función.

La función `yearstart()` identifica inicialmente en qué año cae el valor de la fecha y devuelve una marca de tiempo del primer milisegundo de ese año.

Diagrama de la función `yearstart()` y la transacción 8199.

Diagrama de la función `yearstart()` y la transacción 8199.

Diagrama de la función `yearstart()`yearstart() y la transacción 8199. ![Diagrama que muestra la función yearstart() identificando el año en que tiene lugar la transacción 8199 y la marca de tiempo del inicio de ese año.](https://help.qlik.com/es-ES/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-yearstart-example4-diagram.png)

La transacción 8199 tuvo lugar el 23 de abril de 2021. La función `yearstart()` devuelve el primer milisegundo de ese año, que es el 1 de enero a las 12:00:00 AM.

## Ejemplo 5: Escenario

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/yearstart.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 se carga en una tabla denominada "Loans". La tabla contiene los siguientes campos:

  * ID de préstamos: loan\_id

  * El saldo al inicio del año: start\_balance

  * La tasa de interés simple cobrada en cada préstamo por año.

Al usuario final le gustaría tener un objeto gráfico que muestre, por ID de préstamo, el interés actual que se ha acumulado en cada préstamo en el año hasta la fecha.

Script de carga

```
Loans: 
Load 
* 
Inline  
[ 
loan_id,start_balance,rate 
8188,$10000.00,0.024 
8189,$15000.00,0.057 
8190,$17500.00,0.024 
8191,$21000.00,0.034 
8192,$90000.00,0.084 
]; 
```

Resultados

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

* loan\_id

* start\_balance

Para calcular el interés acumulado, cree la siguiente medida:

=start\_balance\*(rate\*(today(1)-yearstart(today(1)))/365)

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

Tabla de resultados

| loan\_id | start\_balance | =start\_balance\*(rate\*(today(1)-yearstart(today(1)))/365) |
| --- | --- | --- |
| 8188 | $10000.00 | $39.73 |
| 8189 | $15000.00 | $339.66 |
| 8190 | $17500.00 | $166.85 |
| 8191 | $21000.00 | $283.64 |
| 8192 | $90000.00 | $3003.29 |

La función yearstart(), utilizando la fecha de hoy como único argumento, devuelve la fecha de inicio del año actual. Al restar ese resultado de la fecha actual, la expresión devuelve la cantidad de días que han transcurrido en lo que va del año.

Después este valor se multiplica por la tasa de interés y se divide por 365 para obtener la tasa de interés efectiva del período. Luego, la tasa de interés efectiva del período se multiplica por el saldo inicial del préstamo para obtener los intereses que se han acumulado en lo que va del año.