lastworkdate - Skript- und Diagrammfunktion
Die Funktion lastworkdate liefert das früheste Enddatum zum Erzielen von no_of_workdays (Montag bis Freitag) beginnend bei start_date, unter Berücksichtigung eventueller optional angegebener holiday. start_date und holiday müssen ein gültiges Datum oder Zeitstempel sein.
Syntax:
lastworkdate(start_date, no_of_workdays {, holiday})
Rückgabedatentyp: dual
Argumente:
Argument | Beschreibung |
---|---|
start_date | Das zu evaluierende Startdatum. |
no_of_workdays | Die Anzahl der zu erreichenden Arbeitstage. |
holiday |
Feiertagszeiträume, die von den Arbeitstagen auszuschließen sind. Ein Feiertagszeitraum wird als durch Kommas getrenntes Start- und Enddatum angegeben. Beispiel: '25/12/2013', '26/12/2013' Sie können getrennt durch Kommas mehr als einen Feiertagszeitraum ausschließen. Beispiel: '25/12/2013', '26/12/2013', '31/12/2013', '01/01/2014' |
Beispiele und Ergebnisse:
In diesen Beispielen wird das Datumsformat DD/MM/YYYY verwendet. Das Datumsformat wird im Befehl SET DateFormat oben in Ihrem Ladeskript angegeben. Ändern Sie das Format in den Beispielen nach Bedarf.
Beispiel 1:
lastworkdate ('19/12/2014', 9)
Liefert '31/12/2014'
Beispiel 2:
lastworkdate ('19/12/2014', 9, '2014-12-25', '2014-12-26')
Liefert 02/01/2015, da ein Feiertagszeitraum von zwei Tagen berücksichtigt wird.
Beispiel 3:
Fügen Sie Ihrem Dokument das Beispielskript hinzu und führen Sie sie aus. Fügen Sie einem Arbeitsblatt in Ihrem Dokument dann mindestens diejenigen Felder hinzu, die in der Ergebnisspalte aufgeführt sind, um das Ergebnis anzuzeigen.
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;
Die resultierende Tabelle zeigt die ausgegebenen Werte von LastWorkDate für jeden der Datensätze in der Tabelle an.
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 |