SSRS子查询基于其他查询

时间:2017-09-15 08:59:54

标签: tsql reporting-services

我想对项目进行概述 这包含一些固定信息;表项目与其他表一起加入。
现在报告需要有一些子查询:每个销售人员的销售量,运输中的数量,库存......等等。

我有一个tablix,其中包含项目分组(为每个项目创建一个包含一个工作表的Excel)。

我将如何为每个项目执行一个新的子查询(f.e。选择所有者,总和(总价)来自其中project = xxx group by owner 的商机) 我知道我可以通过子报告实现这一点;但由于我将有大约10个子报告,我希望我能用额外的数据集和一些过滤来解决这个问题(从而将所有逻辑保存在一个文件中)。

实现这一目标的最佳方式是什么?

1 个答案:

答案 0 :(得分:1)

我会用这个查询创建一个数据集:

select owner, project, sum(totalprice) as totalprice from opportunities group by owner, project

接下来,在您要显示所有者和总价信息的Tablix中,您将得到如下表达式:

=LOOKUP(Fields!<FirstDataSetProjectFieldName>.Value, Fields!project.Value, Fields!owner.Value, "<NewDatasetName>")

上面的代码将发送您要搜索的项目的值,将其与新数据集中的相同字段匹配,然后从新数据集返回请求的值。显然,你也可以为总价格做这件事。

查看LOOKUP的文档以更好地处理它,但我认为这是您正在寻找的解决方案。