lastworkdate - función de script y de gráfico
La función lastworkdate devuelve la primera fecha de finalización para obtener el no_of_workdays (Lunes-Viernes) si comienza en start_date y teniendo en cuenta cualquier vacaciones holiday opcionalmente indicadas. start_date y holiday deben ser fechas o indicaciones de fecha-hora válidas.
Sintaxis:
lastworkdate(start_date, no_of_workdays {, holiday})
Tipo de datos que devuelve: dual
Argumentos:
Argumento | Descripción |
---|---|
start_date | La fecha de inicio que se ha de evaluar. |
no_of_workdays | El número de días laborables que se ha de alcanzar. |
holiday |
Los períodos de vacaciones que deben excluirse de los días laborables. Un periodo de vacaciones se indica como una fecha inicial y una fecha final, separadas por comas. Ejemplo: '25/12/2013', '26/12/2013' Puede excluir más de un período de vacaciones, separados por comas. Ejemplo: '25/12/2013', '26/12/2013', '31/12/2013', '01/01/2014' |
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:
lastworkdate ('19/12/2014', 9)
Devuelve '31/12/2014'
Ejemplo 2:
lastworkdate ('19/12/2014', 9, '2014-12-25', '2014-12-26')
Devuelve “02/01/2015” como período de vacaciones de dos días considerado.
Ejemplo 3:
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.
ProjectTable:
LOAD *, recno() as InvID INLINE [
StartDate
28/03/2014
10/12/2014
5/2/2015
31/3/2015
19/5/2015
15/9/2015
] ;
NrDays:
Load *,
LastWorkDate(StartDate,120) As EndDate
Resident ProjectTable;
Drop table ProjectTable;
La tabla resultante muestra los valores devueltos de LastWorkDate para cada uno de los registros de la tabla.
InvID | StartDate | EndDate |
---|---|---|
1 | 28/03/2014 | 11/09/2014 |
2 | 10/12/2014 | 26/05/2015 |
3 | 5/2/2015 | 27/07/2015 |
4 | 31/3/2015 | 14/09/2015 |
5 | 19/5/2015 | 02/11/2015 |
6 | 15/9/2015 | 29/02/2016 |