lastworkdate - fonction de script et fonction de graphique
Dernière mise à jour : 07/10/2026
La fonction lastworkdate renvoie la première date de fin permettant d'atteindre la valeur de l'argument no_of_workdays (du lundi au vendredi) si celle-ci commence à la date définie par start_date en tenant compte de tous les arguments holiday facultatifs répertoriés. Les valeurs des arguments start_date et holiday doivent correspondre à des dates ou à des horodatages valides.
Syntaxe :
lastworkdate(start_date, no_of_workdays {, holiday})
Type de données renvoyé : double
Arguments :
| Argument | Description |
|---|---|
| start_date | Date de début à évaluer. |
| no_of_workdays | Nombre de jours ouvrables à atteindre. |
| holiday |
Périodes de congé à exclure des jours ouvrables. Une période de congé se définit comme une date de début et une date de fin, séparées par des virgules. Exemple : '25/12/2013', '26/12/2013' Vous pouvez exclure plusieurs périodes de congé si vous les séparez par des virgules. Exemple : '25/12/2013', '26/12/2013', '31/12/2013', '01/01/2014' |
Exemples et résultats :
Ces exemples utilisent le format de date DD/MM/YYYY. Le format de date est indiqué dans l'instruction SET DateFormat située en haut de votre script de chargement. Modifiez le format utilisé dans les exemples en fonction de vos exigences.
Exemple 1:
lastworkdate ('19/12/2014', 9)
Renvoie '31/12/2014'.
Exemple 2:
lastworkdate ('19/12/2014', 9, '2014-12-25', '2014-12-26')
Renvoie 02/01/2015, car une période de congé de deux jours est prise en compte.
Exemple 3:
Ajoutez l'exemple de script à votre document et exécutez-le. Ensuite, ajoutez au moins les champs répertoriés dans la colonne des résultats à une feuille de votre document afin de visualiser le résultat.
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 table résultante affiche les valeurs renvoyées par la fonction LastWorkDate pour chaque enregistrement de la table.
| 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 |