工作日计算插件
1. 简介
1.1 插件简介
该插件能够实现,通过输入开始日期、结束日期和排除日期,计算出工作日间隔天数;或者输入开始日期、间隔工作日天数和排除日期,计算出指定的日期。
1.2 应用场景
作为 NETWORKDAYS、WORKDAY 函数的一种封装方式,能更方便个性化的去定义假期方式、和排除指定日期,广泛用于计算特定时期内雇员的工作天数,计算发票到期日、预期交货日期等。
1.3 预期效果
开启工作日函数插件,在「本月工作日天数」表单中输入开始日期、结束日期后,即可返回工作日天数,并自动回填至对应字段中。效果如下所示:
1.4 使用说明
该插件为免费插件,付费版用户可免费使用。
2. 插件安装及启用
2.1 安装插件
1)直接安装
2)插件市场处安装
在简道云「插件市场」处,安装「工作日计算」插件。插件市场处安装方法可参见文档:插件市场中【2.3 插件安装】。
2.2 启用插件
在插件管理中,打开「工作日计算」插件右侧开关,启用插件。
3. 表单搭建
插件使用体验:工作日计算插件模板表单。本文将按照示例表单进行讲解。
1)以计算工作日天数为例,新建「本月工作日天数」表单,字段设置如下所示:
字段名称 | 字段类型 |
开始日期 | 日期时间;在「字段属性 >> 类型」处,选择「年-月-日」 |
结束日期 | |
子表单.排除日期 | |
子表单.排除日期文本 | 单行文本 |
排除日期文本集合 | |
工作日天数 | 数字 |
2)点击「子表单.排除日期文本」,在「字段属性 >>默认值」处选择「公式编辑」,公式设置如下所示:
TEXT(DATE(子表单.排除日期),"yyyy-MM-dd")
3)点击「排除日期文本集合」,在「字段属性 >> 默认值」处选择「公式编辑」,公式设置如下所示:
子表单.排除日期文本
4. 前端事件配置
4.1 添加前端事件
进入「表单属性」,点击前端事件下的设置,添加前端事件:
4.2 设置事件名称和说明
添加好前端事件后,首先设置前端事件的基础信息,即事件名称和事件说明,用于区分前端事件:
4.3 设置触发动作
设置触发动作:触发字段选择「排除日期文本集合」字段。
4.4 设置执行动作
1)设置执行动作如下:
- 选择插件:选择「工作日计算」插件;
- 选择事件:NETWORKDAYS;
- 开始日期:设置为字段值,即「开始日期」字段;
- 结束日期:设置为字段值,即「结束日期」字段;
- 类型:
- 单休:每周按单休计算,国假按休息日计算;
- 双休:每周按双休计算,国假按休息日计算;
- 自定义(包含国假):完全自定义排除日期,包括国假也需要自定义;
- 自定义(排除国假):自定义排除日期,国假按休息日计算;
- 排除日期:设置为字段值,即「排除日期文本集合」字段。
2)在设置字段存储关系处,点击「添加」按钮,添加「工作日天数」字段,并回填至表单字段「工作日天数」中。全部设置完成保点击「保存」。
4.5 效果演示
效果参见本文【1.3 预期效果】。
5. 注意事项
5.1 关于计算类型的说明
目前系统预定义了四种类型(单休、双休、自定义包含国假、自定义排除国假),实际业务中可能存在更加个性化的方式,若有其他类型需求,请通过【6. 联系方式】联系开发者增加。
5.2 关于排除日期处理方式的说明
为方便大家快捷的输入多个排除日期,且格式符合要求,案例中借助了子表单来实现快捷输入,并在子表单中把排除日期转为文本格式,再增加一个主表字段,取出这些排除日期的文本集合,此时排除日期即为固定的结构,且多个值之间以英文逗号隔开。若不借助子表单,只需要排除日期按照 yyyy-MM-dd 格式,多个值以英文逗号隔开即可。
5.3 关于触发字段的说明
本案例采用动态确定排除日期的方式计算工作日天数,因此以「排除日期文本集合」字段作为前端事件的触发字段,实际业务中,根据计算场景的具体情况,确定实际的触发字段即可。(比如,若已定义了固定的排除日期,那么直接使用结束日期触发前端事件计算即可)。
5.4 关于另一个事件WORKDAY计算的说明
WORKDAY 是使用开始日期、工作日天数、排除日期,计算出结束日期,需设置的排除日期和类型和 NETWORKDAYS 的方式相同。
6. 联系方式
该插件为官方合作的服务商开发,若您在使用过程中有任何疑问,可通过以下方式咨询:
- 公司:成都轻如燕企业服务有限公司
- 联系人:赵鹏
- 联系电话:18583980516(微信同号)