如何预约多天会议室?

点击安装 「多天会议室预约」应用模板 ,体验使用效果。

1.业务场景

在针对固定场所的预约场景中,存在需要对场所进行多天预约的情况,并且对一次性预约天数有限制这里以会议室为例。需要实现根据预约开始时间和预约天数(以一次限制最多5天为例),判断当前时段是否可预约,不可预约的日期是哪几天。

2.表单效果

一个表单,填入预约人、会议室、预约开始时间、预约天数(最多5天),显示是否可预约、不可预约天数。

3.解决思路

在子表单内根据预约开始时间和预约天数,自动生成会议室预约唯一值,即预约日期和预约会议室的组合值。聚合表记录历史提交数据,根据当前预约的会议室预约唯一值数据联动聚合表,联动结果为空值则说明之前没有预约过。

4.设置步骤

表单设置

【子表单行数基础表】 :主表和子表字段全部采用数字字段;录入尽可能多的数据用于后续的数据联动。


【会议室预约表】 :预约基础信息+子表单辅助计算。

预约基础信息表:会议室基本的预约信息填报以及可否预约校验。


(1)序号:子表单整体设置默认值,根据“预约天数”联动【子表单行数基础表】中的序号数字字段。 (2)日期时间:自动根据预约开始时间和预约天数生成预约的日期。

IF(ISEMPTY(预约明细.序号)==0,DATEDELTA(开始时间,预约明细.序号-1),'')。

预约明细辅助表:


辅助1:连接会议室名称+日期,作为唯一值。
IF(ISEMPTY(预约明细.日期时间)!=1,CONCATENATE(TEXT(DATE(预约明细.日期时间),'yyyyMMdd'),会议室),'')

辅助2:数字字段设置默认值为1,作为辅助聚合表的指标。

辅助3:数据联动聚合表中的辅助3作为指标的数据。 辅助4:获取辅助3不为空的预约日期的文本格式。

IF(IF(AND(ISEMPTY(预约明细.辅助3)==0,ISEMPTY(预约明细.序号)==0),1,0)!=0,TEXT(DATE(预约明细.日期时间),'yyyy-MM-dd'),'')

聚合表设置

通过聚合表计算已提交的数据,在预约明细中调用聚合表数据校验当前时间段是否已被预约。


5.效果演示


表单外链体验:点击体验

模版安装体验:点击安装




本文是否对您有帮助?
 有帮助
 没帮助
您是否遇到了以下问题?
如需获取即时帮助,请联系技术支持