# 数据存储

表单应用的数据与模型紧密联系,用户提交的数据将保存在相应模型对应的数据表中。在制作表单应用时,表单应用支持自动生成模型,同时也支持直接使用已有的模型创建表单应用。本文主要讲解自动创建模型与引入已有模型各自的特点。

# 自动创建模型

表单应用在创建并发布后,系统会根据表单设计器中的设置自动创建相应的数据模型,比如根据表单布局和字段配置生成对应的业务表等。若对表单模型没有业务或技术上的要求,比如不限定物理字段名的命名规范等,可以直接使用系统自动创建模型的机制,只需要按需设置好数据期、填报单位以及对应的单元格的类型,并发布表单应用即可,具体介绍见下方章节。

# 表单粒度设置

表单应用相关的粒度设置会对自动生成业务表有所影响,比如在表单应用中,通常通过填报单位、数据期等信息来唯一确定一条数据。因此当设置了数据期填报单位后,表单应用会在自动生成的业务表中增加这两个字段作为主键,这两个字段相关信息以及表单应用还支持设置的其他粒度详情如下:

  • 数据期:设置数据期为固定周期后,表单应用自动创建的业务表上会增加一个数据期的主键,且该字段的字段角色与选定的填报周期一致。
  • 填报单位:选择填报单位后,表单应用自动创建的业务表上会增加一个填报单位的主键,同时该字段会绑定填报单位维表。
  • 填报明细数据:勾选填报明细数据后,需要设置一个明细数据主键,随着明细主键的设置,系统会将该字段自动设置为主键。

# 生成业务表

业务表主要是存储表单页面中填报的数据。表单应用会根据表单粒度设置与表样的数据映射自动生成模型,无需手动绑定字段,单元格初次设置单元格类型后会在数据源处生成对应的数据模型及字段,后续依次设置其他字段时,数据模型会自动创建字段并进行绑定。在发布表单应用前,所有内部生成的模型都是临时的,此时修改单元格类型,模型字段也会相应变化,单元格类型与模型字段相应关系如下表格:

表单应用会根据表样按照其数据映射自动生成模型,

业务表

单元格类型 对应字段类型
文本输入 字符型
数值输入 浮点型
下拉框 字符型,在可选项属性处选择维表后,该字段也将绑定对应的维表,若允许多选,则默认字段存储设置为允许多值
日期 字符型,字段角色自动设置为日期
时间 字符型,字段角色自动设置为时间
选择面板 字符型,在可选项属性处选择维表后,该字段也将绑定对应的维表,若允许多选,则默认字段存储设置为允许多值
勾选框 整型
搜索框 字符型
上传附件 字符型,字段角色自动设置为附件,若允许上传多个附件则默认字段存储设置为允许多值
上传图片 字符型,字段角色自动设置为图片,若允许上传多个附件则默认字段存储设置为允许多值
字格 浮点型
进度条 浮点型

TIP

在表单发布前,可在数据属性处调整字段长度,浮点型还支持调整小数位数。也可以通过切换视图来批量修改字段的属性,具体可见视图

# 修改表单模型

表单自动生成的模型一经发布,已有字段便不再受表单内单元格类型的改变或删除的影响,仅支持新增字段,若需要修改或删除,需要在数据模块中对模型进行处理,具体可见模型管理。比如随表单的发布,自动生成了公司基本信息表,该表中有公司名称、公司规模两个字段且都为字符型,后续在表单上进行修改是否存在影响具体如下:

  • 修改单元格类型:字段不发生变化。如在设计器页面修改公司规模的单元格类型为数值输入,保存发布后,公司规模的字段不会发生变化。
  • 删除单元格:字段不发生变化。如在设计器界面删除公司规模的相关单元格,保存发布后,公司规模的字段不发生变化,依旧存在。
  • 新增:新增一个字段。如在设计器界面新增一个公司地址的单元格,表单发布后,模型表中会新增一个公司地址的字段。

# 显示隐藏的表单模型

表单应用通常会将一些非数据源列表引入的数据源隐藏起来,避免数据源列表中显示过多的数据源。这些隐藏起来的数据源通常不会直接被单元格的引用,但在表单应用中也需要查询这些表。按照不同的用途可以将这些表分为系统表和可选项表,具体介绍见下方。想要显示这些隐藏的表单模型可点击数据源右侧的,选择显示隐藏数据集

  • 系统表:记录表单应用中的填报状态、校验信息等基本信息的数据模型,发布应用时会自动生成。如索引表、数据期表等。
  • 可选项表:下拉框可选项处,或填报单位处引入的维表。如填报单位维表、下图中的产品维表等。

显示隐藏数据模型

# 表单应用系统表

表单应用的系统表主要是指记录表单应用中的填报状态、校验信息等基本信息的数据模型。表单应用发布后,系统会根据相关设置自动生成对应的系统表,比如根据数据期的设置可生成对应的索引表和数据期表等。

# 索引表

索引表主要用于记录表单应用的填报状态,包括锁定状态、流程状态、提交时间等内容。填报单位列表主要是以填报单位表为主查询,通过关联索引表获取单位的填报状态,如填报单位的应报数、已报数等。需要注意的是只有表单应用中设置了填报单位或数据期时,才会自动生成该表。关于索引表的更多详情可见文档数据索引表

# 数据期表

数据期表主要用于存储数据期、数据期描述等相关内容。数据期表内的数据与用户填报时能切换的数据期有关,如表单应用是月报,当前月份为6月,填报将从6月开始,数据期的下拉框内可选择的日期仅有选项6月。但如果用户希望填写前几个月的数据,此时可以在数据期表中插入前几个月的数据期,填报界面的数据期下拉框内便会出现这些选项。需要注意的是,只有表单应用的数据期为固定周期时,才会自动生成该表。关于数据期表的更多详情可见文档数据期表

# 校验结果表

校验结果表主要用于记录批量校验的相关信息,比如校验类型、校验公式、错误级别等。需要注意的是,只有表单应用在设置>数据填写>数据校验勾选启用批量校验,才会在发布应用时自动生成该表。关于校验结果表的更多详情可见文档校验结果表

# 引入已有模型

表单应用支持引入已有模型来实现表单对应的数据存储。引入的模型需注意相关的字段设置,具体可见引入外部模型实现数据映射。需要注意的是,表单应用不会主动修改外部引入的模型。比如引入已有模型制作表单应用时,若需要新增一个字段存储数据,需要事先在模型中添加好新字段,然后再回到应用中在对应单元格上绑定字段

是否有帮助?
0条评论
评论