# lastworkdate - スクリプトおよびチャート関数

lastworkdate 関数は、オプションで指定された holiday を考慮した上で、start\_date に開始した場合に no\_of\_workdays (月～金曜日) の日数に達する最早終了日を返します。start\_date と holiday は、有効な日付またはタイムスタンプでなければなりません。

構文:

lastworkdate(start\_date, no\_of\_workdays {, holiday})

**戻り値データ型：**デュアル

引数：

Lastworkdate 引数

| 引数 | 説明 |
| --- | --- |
| start\_date | 評価する開始日。 |
| no\_of\_workdays | 作成する作業日数。 |
| holiday | 作業日から除外する休日期間。休日期間は、開始日と終了日で指定され、コンマで区切られます。<br><br>`  '25/12/2013', '26/12/2013' `<br><br>コンマで区切ることで、複数の休日期間を除外することもできます。<br><br>`  '25/12/2013', '26/12/2013', '31/12/2013', '01/01/2014' ` |

例と結果:

これらの例は、日付書式 DD/MM/YYYY を使用しています。日付書式は、ロード スクリプト上部の SET DateFormat ステートメントで指定されています。必要に応じて、書式を変更してください。

例1：

`lastworkdate ('19/12/2014', 9)`

「31/12/2014」を返します。

例2：

`lastworkdate ('19/12/2014', 9, '2014-12-25', '2014-12-26')`

2 日間の休日期間を考慮したため、'02/01/2015' を返します。

例3：

ドキュメントに例のスクリプトを追加して実行します。その後、結果列に含まれている項目をドキュメントのシートに追加して結果を表示します。

`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;`

` `

結果テーブルには、テーブルの各レコードに対する LastWorkDate の戻り値が表示されます。

例 3 の結果

| 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 |