# inyear - función de script y de gráfico

Esta función devuelve True si timestamp se encuentra dentro del año que contiene base\_date.

Sintaxis:

InYear (timestamp, base\_date, period\_no [, first\_month\_of\_year])

**Tipo de datos que devuelve:** Booleano

Argumentos:

Argumentos de InYear

| Argumento | Descripción |
| --- | --- |
| timestamp | La fecha que desee comparar con base\_date. |
| base\_date | La fecha que se utiliza para evaluar el año. |
| period\_no | El año puede desplazarse mediante period\_no. period\_no es un entero, en el que el valor 0 indica el año que contiene base\_date. Los valores negativos en period\_no indican años precedentes y los valores positivos indican años posteriores. |
| first\_month\_of\_year | Si desea trabajar con años (fiscales) que no comiencen en enero, especifique un valor entre 2 y 12 en first\_month\_of\_year. |

Ejemplos y resultados:

Estos ejemplos utilizan el formato de fecha DD/MM/YYYY. El formato de fecha se especifica en la sentencia SET DateFormat en la parte superior de su script de carga. Cambie el formato en los ejemplos según se ajuste a sus necesidades.

Ejemplo 1:

`inyear ('25/01/2013', '01/01/2013',   0 )`

Devuelve True

Ejemplo 2:

`inyear ('25/01/2012', '01/01/2013',   0)`

Devuelve False

Ejemplo 3:

`inyear ('25/01/2013', '01/01/2013',   -1)`

Devuelve False

Ejemplo 4:

`inyear ('25/01/2012', '01/01/2013',   -1 )`

Devuelve True

Ejemplo 5:

`inyear ('25/01/2013', '01/01/2013',   0, 3)`

Devuelve True

Ejemplo 6:

`inyear ('25/03/2013', '01/07/2013',   0, 3 )`

Devuelve False. Los valores de base\_date y first\_month\_of\_year especifican que timestamp debe caer dentro de 01/03/2012 y 28/02/2013.

Ejemplo 7:

Añada el script de ejemplo a su documento y ejecútelo. A continuación, añada como mínimo los campos de la columna de resultados a una hoja de su documento para ver el resultado.

Este ejemplo comprueba si una fecha de facturación cae en el año fiscal especificado fijando el valor de first\_month\_of\_year en 4, y teniendo la fecha base\_date entre 1/4/2012 y 31/03/2013.

`TempTable:` `LOAD RecNo() as InvID, * Inline [` `InvDate` `28/03/2012` `10/12/2012` `5/2/2013` `31/3/2013` `19/5/2013` `15/9/2013` `11/12/2013` `2/3/2014` `14/5/2014` `13/6/2014` `7/7/2014` `4/8/2014` `];` ` `

Verifica si InvDate está en el año financiero de 1/04/2012 a 31/03/2013:

`InvoiceData:` `LOAD *,` `InYear(InvDate, '31/01/2013', 0, 4) AS FinYr1213` `Resident TempTable;`

`Drop table TempTable;`

La tabla resultante contiene las fechas originales y una columna con el valor de retorno de la función inyear().

Resultados del ejemplo 7

| InvDate | FinYr1213 |
| --- | --- |
| 28/03/2012 | 0 (False) |
| 10/12/2012 | -1 (True) |
| 5/2/2013 | -1 (True) |
| 31/3/2013 | -1 (True) |
| 19/5/2013 | 0 (False) |
| 15/9/2013 | 0 (False) |
| 11/12/2013 | 0 (False) |
| 2/3/2014 | 0 (False) |
| 14/5/2014 | 0 (False) |
| 13/6/2014 | 0 (False) |
| 7/7/2014 | 0 (False) |
| 4/8/2014 | 0 (False) |