<< Click to Display Table of Contents >> 自由表填报应用举例 |
场景:数据不确定且未提前准备的情况下,希望不做任何操作就能将交叉表样式的数据全部导入到数据库目标表中
分析场景:
1.数据样式是交叉表 - 无法使用平表样式填报的"填报参数"组件,需要使用到"自由表填报"组件
2.数据不确定且未提前准备 - 可用使用自由表填报常量单元格入库
3.不做任何操作+全部导入 - 需要勾选上"填报时,提交全部数据"
❖制作自由表填报
•元数据模式下常量自由表填报组件数据如图所示:
•设置单元格和数据库目标表数据列之间的对应关系
o我们可先将自由表填报上的单元格按照数据特征划分区域,如图所示:
o根据划分的区域,可用将对应的单元格和数据库目标字段做匹配,结构如图所示:
•设置行列关系
设置单元格之间的关系,将逻辑上是一行数据的单元格选择到行列关系表格中的一行中。
例如:user - 汽水 - 东部市场 - 销售额1 是一行数据 ;user - 汽水 - 西部市场 - 销售额2 是另一行数据。
•提交类型为"智能提交"
•勾选了"填报时,提交全部数据"
•数据库目标表的主键情况由实际用户场景决定,此次暂定未主键和条件列一致,表结构如图:
•其他未说明项均为默认值
❖数据回填,提交入库
操作1:查看报告模块中打开报表
结果:报表初始值和数据库目标表初始值 如图所示:
操作2:不做任何操作,直接点击提交入库
结果:自由表填报中所有的数据全部做智能提交(所有数据先做update,检测到该数据不存在后,转换为插入数据),结果如图:
操作3:cell5 和 cell6 中输入值,并提交数据
结果1:提交后单元格中输入的数据被保留
结果2:数据库目标表update两行数据,如图所示:
操作4: 点击刷新报表,点击提交入库
结果1:报表被刷新,自由表填报上的数据被重置到初始值
结果2:自由表填报组件上的全部数据,再次做智能提交(更新相同条件列的数据),结构如图所示: