实现报表组参数查询

阅读(7032) 标签: 报表组参数,

对普通的报表可以进行参数查询,报表组也同样可以,只需要将组内各报表设置好参数之后,再设置一下报表组参数就可以了。

比如,在订单表和订单明细表中,我们将两个表的订单ID设置为参数。单独将报表发布后,看到的查询页面如下图所示。

订单查询页面:

订单明细查询页面:

虽然分别都可以达到要求,但我们更希望报表组可以统一查询。下面来介绍一下这个功能的实现方法,同时介绍报表组参数的工作方法。

与普通报表的参数设置类似,首先要统一对参数进行定义。在报表组设计界面选择配置-参数,添加新参数orderid,如下图:

 

这个参数将在整个报表组内可用,但注意是报表组内,不是组内的报表内。要把这个参数引入报表内,例如sheet1表内,在sheet1页面右键选择报表项设置,单击“添加”按钮来添加sheet1表对应的参数,如下图所示。

这里的名称对应着报表内的参数设置中的名称,例如在本例中,sheet1中的订单表的订单ID参数名为arg1,这里的名称就写成arg1,这样这个参数就可以直接传给订单表的arg1参数。

表达式即参数的值,这里写入orderid,引用刚才定义的报表组参数。

用同样的方法,为设置sheet2设置同样的参数(订单明细表中的订单ID参数名也为arg1)。

至此,报表组的参数就设置好了,保存报表组。

如果报表组的参数和组内报表的参数一样,可省略报表项设置中的参数定义,例如:当报表组的参数名称为arg1时,sheet1sheet2就不用在报表项设置中定义参数了。

 

为了方便地在网页上实现参数查询,在发布之前我们还需要设计一个简单的参数查询报表。如下图所示。

B2单元格设置变量名,因为这个参数查询报表是为整个报表组的查询设计的,所以应该使用报表组参数,故变量名设置为orderid,这里我们保存为“订单_arg.rpx”。

然后就可以发布了,用如下图所示的jsp文件来发布这个带参数的报表组。

将图中红框部分填写为设计好的参数查询报表的文件名即可。

网页上的效果如下图所示。

随意输入一个订单号来查询:

sheet1

sheet2: