在润乾报表中,普通参数的传递分为报表数据集参数,报表单元格参数等.那么,如果来实现两个数据集间传递参数呢?
两个数据集间传递参数的实现过程是,把第一个数据集的结果当做参数传到第二个数据集中.
第一步:假设我们要把ds1的查询结果当做参数传递到ds2中.我们先看一下ds1和ds2的数据解结构:
ds1:
ds2:
第二步:设置数据集:
ds1:
ds2:
看过数据集的设置,我们就知道了,现在是要把ds1中的userid当作参数来对ds2进行检索.
第三步:这里是关键的一点,就是设置参数来对ds2中的?号进行绑定,进入到ds2数据集参数选项中:
可以看到,我们在参数表达式这里写的是ds1.select(userid),也就是说,?号绑定的是ds检索出来的userid.
第四步:设计报表模版:
我们预览一下,看一下效果:
可以看到,ds1中的userid被当作参数传递到了ds2中,然后ds2进行了数据展现.
需要注意的是,当计算ds2时,ds1数据集必须已经产生,也就是说ds1必须放在ds2上边:
数据集解析是有顺序的,所以先要计算出当参数的数据集,然后再利用.
由此我们可以举一反三,多个数据集之间传递参数参考这种办法,就可以去实现多种多样的业务功能了.