文档首页 / 数据集参数

数据集参数

数据集如何引用和登记报表参数:参数类型、集合元素类型、默认值、自动提取,以及参数在各数据集类型中的写法。

概述

数据集本身不定义独立的参数,而是引用「报表参数」。报表参数在报表设计器的「报表参数」对话框中集中声明,运行时由查询表单、URL 或调用方传入值,引擎只会把已声明的报表参数交给数据集。

各类型数据集引用参数的方式:

数据集类型 引用方式
SQL 数据集 SQL 中写 $参数名、${表达式}、#{脚本},见 SQL 参数与动态语法
存储过程 {call 过程名($参数名, ...)}
API 数据集 请求URL、参数、请求头中写 $参数名 或 ${表达式}
派生数据集脚本 脚本中用 $参数名
后处理脚本与计算字段 用 $参数名

功能入口

  • 「报表参数」对话框:设计器中打开,点击「添加参数」新增,表格中设置参数名称、参数类型、默认值模式、默认值、备注说明。
  • SQL 数据集编辑对话框底部:「报表参数」按钮,与「从SQL提取参数到报表参数」按钮。

操作步骤

  1. 在数据集中写好参数引用。
  2. 点击「从SQL提取参数到报表参数」,或直接「数据预览」、保存,系统会把 SQL 中引用的参数自动登记为报表参数。API 数据集保存和预览时同样登记 ${$x} 引用。
  3. 在「报表参数」对话框中确认每个参数的「参数类型」,并设置默认值。
  4. 在查询表单中为参数绑定控件,参数联动的做法见 查询表单 与 报表参数。

属性说明

参数类型

界面文案 类型值 说明
字符串 String 文本
数值 Number 数字
布尔值 Boolean 真假
日期 Date 仅日期
日期时间 DateTime 含时间
集合 List 多个值,与 IN (${$名}) 配合

集合参数还需选择元素类型:「文本元素」或「数值元素」。手写的模板里若含日期等其他元素类型,编辑时会保留原值。

默认值

默认值有三种模式:固定值、表达式、日期预设。日期预设仅对日期类参数出现,如「当天」「本月月初」。参数在公共数据集里同样有类型与默认值,见 公共数据集。

参数取值来源

运行时引擎只会把已声明的报表参数交给数据集,因此数据集中引用的参数必须先在「报表参数」中登记。

示例

SQL 数据集:

SELECT visit_id, dept_code, fee
FROM outpatient_visit
WHERE visit_date >= $startDate
  AND visit_date <  $endDate
  AND dept_code IN (${$deptCodes})

提取后得到三个参数,设置如下:

参数名称 类型 默认值
startDate 日期 日期预设「本月月初」
endDate 日期 表达式 now()
deptCodes 集合(文本元素) 空

endDate 的默认表达式使用了内置函数,见 内置函数。

注意事项

注意:自动提取只登记参数,类型需要自己确认。类型选错(如把多选的科室设为字符串)会让 IN (${$deptCodes}) 无法展开。

注意:${名} 缺少 $ 时取不到值,引用报表参数要写成 $名。

提示:日期区间的右端用小于号(< $endDate),并让默认值取「次日零点」,避免漏掉结束日当天的记录。

相关文档

联系我们

请填写您的信息,我们将在 1 个工作日内与您联系。