我遇到的问题是:
我有一个包含一个数据集X的输出的表,在输出字段中我有一个COUNT聚合,它返回一个数字。
我想要做的是:在已有另一个数据集Y的另一个表中使用此数字, 我想直接得到我的聚合COUNT处理的最终数字。 在这种情况下,表格的关节没有用,因为它不会返回被处理的“数字”。
答案 0 :(得分:6)
这样做的一种聪明方法是创建一个报告变量来存储数据集X的聚合。例如,我们将其命名为aggregationX:
创建变量后,单击表X中的聚合数据 - >脚本 - >的onCreate
输入此脚本:
vars["aggregationX"]=this.getValue();
然后,您可以在聚合X之后放置的报表元素的所有表达式中使用vars [“aggregationX”]:在数据集Y的计算列中,表Y的数据绑定,过滤器,排序表达式,突出显示表达式,动态文本等< / p>
答案 1 :(得分:2)
第一条规则:始终为列绑定提供有意义的名称(不只是:&#34;聚合&#34;,但&#34; numRows&#34;或类似的东西)!
第二条规则:报告变量是全局变量,因此它们被视为不良做法 - 只有在您找不到任何其他解决方案时才使用它们。
在最常见的情况下,您可以将表(基于数据集)y放入表x的详细行中。然后,您可以使用语法row._outer [&#34; numRows&#34;]访问计数。 如果您还需要数据集y中的计数,您可以轻松地将其作为数据集参数传递(使用绑定选项卡中的&#34;参数绑定&#34;按钮)。
您只需要Dominique提供的报表变量解决方案,如果(出于任何原因)您的布局不允许您将表格y放在表格x的详细信息行中。