firstworkdate - función de script y de gráfico
La función firstworkdate devuelve la última fecha de inicio para obtener un no_of_workdays (de lunes a viernes) sin sobrepasar end_date teniendo en cuenta la lista opcional de vacaciones. end_date y holiday deberían ser fechas o fecha-hora válidas.
Sintaxis:
firstworkdate(end_date, no_of_workdays [, holiday] )
Tipo de datos que devuelve: Entero
Argumentos:
Argumento | Descripción |
---|---|
end_date | La fecha/hora de la fecha final 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:
firstworkdate ('29/12/2014', 9)
Devuelve 17/12/2014.
Ejemplo 2:
firstworkdate ('29/12/2014', 9, '25/12/2014', '26/12/2014')
Devuelve 15/12/2014 como periodo 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 [
EndDate
28/03/2015
10/12/2015
5/2/2016
31/3/2016
19/5/2016
15/9/2016
] ;
NrDays:
Load *,
FirstWorkDate(EndDate,120) As StartDate
Resident ProjectTable;
Drop table ProjectTable;
La tabla resultante muestra los valores devueltos de FirstWorkDate para cada uno de los registros de la tabla.
InvID | EndDate | StartDate |
---|---|---|
1 | 28/03/2015 | 13/10/2014 |
2 | 10/12/2015 | 26/06/2015 |
3 | 5/2/2016 | 24/08/2015 |
4 | 31/3/2016 | 16/10/2015 |
5 | 19/5/2016 | 04/12/2015 |
6 | 15/9/2016 | 01/04/2016 |