页面树结构
转至元数据结尾
转至元数据起始

通过参数进行数据筛选时,有些情况下用户希望当不选择参数值、或选择“全部”、“所有”这样的参数值时返回所有数据。基于这样的需求,对SQL查询和存储过程查询有不同的实现方式,具体操作参考如下示例。

文档目录:

示例1:SQL查询_查询条件使用{[  ]}方式

该示例实现步骤如下:

1、创建参数。创建过程参考“演示下拉框参数控件”示例。

2、在可视化查询、SQL查询中,使用 {[ ]} 的方式编写表达式。表达式 {[ 字段 运算符 参数 ]} 是一种特殊的用法,通过这样的设置,参数下拉选项中会自动增加一个“空行”,当选择空行时忽略该参数,返回所有数据。设置方式如下: 

3、使用该查询创建的灵活分析,展示效果如下: 

注:此种方式不支持页面参数。当报表中使用了这种方式, 并且将参数设置为页面的公共参数时,这个设置会失效。如果是页面的公共参数,请参考下面的方式

 

示例2:SQL查询_参数定义中增加全部方式

该示例实现步骤如下:

1、创建参数。注意参数的备选值需要增加 all 选项。参数设置如下: 

2、在可视化查询、SQL查询中设置过滤表达式。过滤条件通过“字段 = 参数 or 参数 = ‘all’ ”的方式设置。这样当选择参数的某个具体值时,“字段=参数”的过滤条件生效,当选择全部时“参数=’all’”的过滤条件生效。 

3、使用该查询创建的报表,展示效果如下: 

 

示例3:存储过程查询_参数允许为空方式

该示例实现步骤如下:

1、创建参数。参数创建过程参考“演示下拉框参数控件”示例。注意参数设置第二步中,勾选“允许为空(存储过程查询)”选项。

2、新建存储过程查询,拖拉输出字段,并绑定存储过程的输入参数到上一步创建的参数上。 

3、基于该存储过程创建报表,展示效果如下: