如何给报表参数设置动态默认值

报表运用参数进行查询的时候,刚开始的参数的值并不是都为空的,有的时候需要给参数设置默认值。润乾报表中给参数设置静态的值是很简单的,只要在参数设置界面的表达式中写上自己想要的值就可以了。但同时也会出现参数的默认值并不是一个给定的值,而是通过表达式求出来的动态的值,比如说需要将参数的默认值设置为系统时间所在的年份,这个时候并不能简单的写成2012或者2013,因为系统的时间是不确定的,是一直在变化的。下面就以设定系统时间的年份作为动态参数介绍下如何设置动态默认值。

首先要设置一个参数arg1用作接受页面上输入的参数,而后再设置一个flag参数作为标志,这个参数的默认值为1,再设置一个参数arg2,设置为动态参数,arg2的表达式为:if(flag==”1”,year(now()),2012),如下图所示:

报表中A1=arg1,A2:=arg2,用作报表发布后能直观的看见arg1,以及arg2的变化

设计好结果报表后就要设置参数模板,参数模板的设置很简单,只要设置arg1,flag参数,用来向报表输入参数。参数arg1所在的单元格可以先设置为空,flag设置为初1以外的任何值,这里我们设置为2.

以上设置好后,将参数模板和报表一起发布,可以只看见arg2所在的位置显示的是2012,即目前系统时间所对应的年份,

在输入年份的单元格中输入2011,点击查询后页面上显示的就是输入的结果:

 

 

至此设置参数的动态默认值就设置完了。Arg1是用来接收页面所输入的参数,arg2是需要传到报表或者报表数据集中的参数,设置为if(flag==”1”,year(now()),arg1)的意思是要是flag的值为1arg2的值为year(now())即系统当前时间所对应的年份,若flag不为1,则arg2的值就是arg1的值,即页面上输入的值。

 

你可能感兴趣的:(如何给报表参数设置动态默认值)