本文将介绍,如何在一张表单的子表单中,调取另一张表单中符合条件的主表数据,快速完成数据的查询和调用。
1)以学生成绩查询场景为例,在「学生成绩录入」表单的主表中录入学生的基础信息及不同科目的考试成绩:
2)将成绩查询表单的外链发送给家长,家长即可通过学生的学号查询出每次考试的成绩明细,如下图所示:
注:由于安装模板时限制单个表单数据最多为 100 条,故安装模板体验效果时,需要重新按照【2.2 「子表单基础表」录入数据】的步骤录入数据才能成功实现效果,否则将无法体验。
在学习之前建议安装 子表单调取多条主表数据 应用模板,本文将按照模板中的示例数据进行讲解。
以学生成绩查询的场景为例:
1)新建「学生成绩录入」表单,字段设置如下:
字段名称 | 字段类型 |
成绩录入时间 | 日期时间 |
学号 | 单行文本 |
学号序号 | 单行文本 |
学号+序号 | 单行文本 |
学生姓名 | 单行文本 |
科目 | 下拉框 |
分数 | 数字 |
2)新建「学生成绩查询」表单,字段设置如下:
字段名称 | 字段类型 |
输入学号 | 单行文本 |
数字 | 数字 |
成绩明细 | 子表单 |
序号 | 子字段-单行文本 |
学号+序号 | 子字段-单行文本 |
考试时间 | 子字段-日期时间 |
科目 | 子字段-单行文本 |
分数 | 子字段-数字 |
3)新建「子表单基础表」辅助表单,字段设置如下:
字段名称 | 字段类型 |
数字 | 数字 |
子表单 | 子表单 |
单行文本 | 子字段-单行文本 |
数字 | 子字段-数字 |
1)在「子表单基础表 >> 数据管理 >> 导入」处导入附件中的示例数据:200行子表单基础表序号全集.xlsx。
2)导入数据时需确认示例数据和表单字段的关联关系如下:
1)进入「学生成绩录入」表单,选中「学号序号」字段,在「字段属性 >> 默认值」处,设置默认值为「公式编辑」,点击下方「编辑公式」:
2)在公式编辑页面,设置「学号序号」字段的公式为MAPX('count',学号,学号,学号)+1,用于计算当前学号在表单中录入数据的次数。其中,MAPX 函数中后两个字段变量,需要选择「所有表单字段」中「学生成绩录入」表单的学号字段。
3)按照同样的方法,设置「学号+序号」字段的公式为CONCATENATE(学号,学号序号),用于对学号和序号字段进行连接,生成一个新的标记字段。
4)进入「学生成绩查询」表单,同样的设置方法,设置「数字」字段的公式为MAPX('count',输入学号,学号,学号),用于计算当前输入学号在「学生成绩录入」表单中录入成绩的次数。其中,MAPX 函数中后两个字段变量,需要选择「所有表单字段」中「学生成绩录入」表单的学号字段。
5)按照同样的方法,设置子表单中「学号+序号」字段的公式为CONCATENATE(输入学号,成绩明细.序号),用于对学号和序号字段进行连接,生成新的标记字段,作为数据联动的条件。
1)进入「学生成绩查询」表单,选中「成绩明细」整个子表单,在「字段属性 >> 默认值」处,设置选项为「数据联动」,点击「数据联动设置」:
2)进入数据联动设置页面,设置内容如下:
全部设置完成点击「确认」。
3)同样的方法,设置「考试时间」字段的数据联动如下:
全部设置完成点击「确认」。
4)同理,可设置成绩明细中「科目」和「分数」字段的数据联动,当「学号+序号」相同时,联动显示出「科目」和「分数」。
1)对于如下表单中的辅助字段,可以在「字段属性 >> 字段权限」处设置字段为不可见:
2)在「表单属性 >> 不可见字段赋值」处,设置赋值规则为「始终重新计算」:
效果演示参见本文【1.3 预期效果】。