VeryReport · 帮助文档

复杂报表填报快速入门

以「产品行式填报」为例,在复杂报表 .vrp 模板中配置填报控件、填报设置与入库映射,实现新增、修改、删除数据的填报预览与提交。

本文以行式填报报表为例,讲解如何在 VeryReport 复杂报表中把页面数据写入数据库(增、改、删),并支持填报校验与 Excel 导入。结构参考帆软 FineReport《填报功能入门示例》,操作以报表设计器为准。

范围说明:本文介绍的是复杂报表设计器(.vrp 模板)内的填报控件与填报设置,用于在报表预览页录入并写回数据库。这与菜单「数据应用 → 数据填报」下的独立表单应用不是同一功能;表单模块面向审批流与字段级采集,复杂报表填报则嵌入电子表格版式,适合行式/清单类入库场景。

建议先阅读普通报表快速入门,了解数据集与扩展绑定基础。

1. 概述

1.1 功能简介

复杂报表填报可将预览页中用户填写的内容提交到数据库。设计器在单元格上挂载填报控件,通过「填报设置」建立单元格与表字段的映射;引擎按主键先尝试 UPDATE,未命中则 INSERT(智能提交)。单元格右下角橙色三角表示已配置填报控件。

1.2 预期效果

1.3 实现思路

  1. 模板数据集加载初始数据;
  2. 数据行单元格绑定填报控件
  3. 填报设置映射单元格 ↔ 数据库字段,并指定主键;
  4. 使用填报预览验证增删改与提交。

2. 制作步骤

2.1 数据准备

  1. 新建复杂报表,在左侧创建模板数据集 ds1,SQL 示例(取前 5 条产品数据):
SELECT * FROM 产品 ORDER BY 产品ID LIMIT 5

请替换为实际业务表名与字段;演示表需含产品 ID、名称、单价、库存等列。

2.2 报表设计

  1. A1:I1 写入表头:产品ID、产品名称、供应商ID、类别ID、单位数量、单价、库存量、订购量、再订购量(按实际字段调整)。
  2. ds1 对应字段拖入 A2:I2,默认纵向扩展展示多行。
  3. 设置表头样式(加粗、居中、边框);数据区保持纵向扩展。

2.3 添加填报控件

需录入入库的单元格必须配置填报控件(仅展示、不需改动的列可不加)。

  1. 选中 A2:I2 中需要填报的单元格(或扩展后的数据区首行各列)。
  2. 在右侧属性面板切换到 控件设置 Tab。
  3. 「控件类型」选择 文本控件(数字列可选「数字控件」,日期列选「日期控件」)。
  4. 可按列分别设置校验规则(见下表)。
控件类型用途
文本 / 文本域 / 数字录入字符串、长文本、数值
日期 / 下拉 / 单选 / 复选结构化选择与字典项
添加行 / 删除行行式填报中新增、删除数据行(对应预览页增删记录)
校验类型说明
非空必填项校验
邮件 / 手机 / 身份证 / 邮编常用格式校验
长度限制 / 自定义正则自定义规则与错误提示

说明:

2.4 添加增删行控件(可选)

行式填报通常需要「插入记录 / 删除记录」能力,VeryReport 使用专用控件:

  1. 在表格外侧或操作列(如 J2)选中单元格,控件类型选 添加行控件;相邻单元格选 删除行控件
  2. 预览时点击对应单元格即可在当前行后插入新行,或删除选中行(至少保留一行)。

也可在报表中放置文字链接触发增删,预览引擎识别 fillType="INSERT_LINE" / DEL_LINE 属性。

2.5 设置填报属性(入库映射)

将单元格与数据库表字段对应,确定提交写到哪里:

  1. 点击菜单 设置 → 填报设置,打开当前 Sheet 的填报配置对话框。
  2. 点击 添加 新建一条设置,填写名称(如「产品表提交」)。
  3. 选择数据库(数据中心已配置的数据源)与数据表(如 产品)。
  4. 在「字段映射」区域点击 智能添加:自动扫描当前 Sheet 中已配置填报控件的单元格(跳过增删行控件)。
  5. 为每行映射选择数据库字段;「取值类型」选「单元格」并填写地址(如 A2,扩展行会自动跟随)。
  6. 勾选主键列(如「产品ID」)。主键用于 UPDATE 的 WHERE 条件;修改/删除场景至少需要一个主键,与数据库主键概念不同,相当于 SQL 的 WHERE 条件。
  7. 点击「确定」保存;填报设置随 .vrp 模板一并存储。

提交逻辑:引擎对每行数据生成 UPDATE;若影响行数为 0 则执行 INSERT,实现 FineReport「智能提交」同类效果。

2.6 预览页设置(可选)

  1. 菜单 设置 → 模版预览设置,切换到「填报预览」Tab。
  2. 可配置是否显示工具栏。默认工具栏含:提交、打印、导出、Excel 导入。
  3. 提交前会自动执行控件校验;未通过时在单元格旁显示错误提示。

3. 效果预览

  1. 点击 保存。若模板含填报控件,工具栏「预览」默认进入填报预览(也可在下拉中显式选择「填报预览」)。
  2. 修改:在文本框中直接编辑某行产品信息。
  3. 新增:选中一行,点击「添加行」控件,填写新行各列后提交。
  4. 删除:选中行,点击「删除行」控件,再点「提交」写回数据库。
  5. 点击工具栏 提交,校验通过后提示「提交成功」;失败时查看预览错误面板或消息(如填报 SQL 执行错误 52407)。

4. 扩展能力

能力说明
Excel 导入填报预览工具栏支持覆盖/追加导入,批量写入控件
数据字典下拉/单选等控件可绑定自定义、数据集或数据库字典
多 Sheet 填报每个 Sheet 可独立配置多条填报设置
与参数面板组合先按参数过滤再填报,见参数报表入门

4.1 下一步

上一篇参数报表快速入门下一篇仪表板快速入门