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 a base_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.
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 de datos. Cambie el formato en los ejemplos según se ajuste a sus necesidades.
Ejemplos de script
Ejemplo
Resultado
inyear ('25/01/2013', '01/01/2013', 0 )
Devuelve True
inyear ('25/01/2012', '01/01/2013', 0)
Devuelve False
inyear ('25/01/2013', '01/01/2013', -1)
Devuelve False
inyear ('25/01/2012', '01/01/2013', -1 )
Devuelve True
inyear ('25/01/2013', '01/01/2013', 0, 3)
Devuelve True
El valor de base_date y el de first_month_of_year especifican que timestamp debe estar dentro de 01/03/2012 y 28/02/2013
inyear ('25/03/2013', '01/07/2013', 0, 3 )
Devuelve True
Example:
Agregue el script de ejemplo en su app y ejecútelo. A continuación, agregue como mínimo los campos de la columna de resultados en una hoja de su app para ver el resultado.
Este ejemplo comprueba si la fecha de una factura entra en el año fiscal especificado estableciendo el valor de first_month_of_year en 4 y teniendo la 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
];
Compruebe 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().