lastworkdate - 脚本和图表函数
lastworkdate 函数用于返回最早的结束日以获得 no_of_workdays(周一至周五),如果在 start_date 开始考虑任何列出的可选 holiday。start_date 和 holiday 应是有效的日期或时间戳。
语法:
lastworkdate(start_date, no_of_workdays {, holiday})
返回数据类型:双
参数:
参数 | 说明 |
---|---|
start_date | 要评估的开始日期。 |
no_of_workdays | 要实现的工作日天数。 |
holiday |
从工作日排除假期。假期可表述为开始日期和结束日期,以逗号分隔。 示例: '25/12/2013', '26/12/2013' 您可以排除多个假期,以逗号分隔。 示例: '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')
返回 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 值。
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 |