0

数据集 1 = 可报告数据

可报告的数据

数据集 2 = 查找信息

查找信息

我可以使用 Lookup 将他们的数据“合并”到一个表中。(从这里:加入两个数据集以在报表生成器 3 中创建单个 tablix)。将 tablix 指向 Dataset1,获取 Location 的公式为:

=查找(字段!PersonId.Value,字段!PersonId.Value,字段!Location.Value,“Dataset2”)

可以得到这个表

我的问题来自于尝试更进一步并应用一个依赖于从数据集 2 中找到的数据的行组。

想得到这张桌子

我无法重新设计并以某种方式提出组合 T-SQL 查询。数据集 1 来自大于 8,000 个字符的 SSAS MDX 表达式,因此尝试通过 OpenQuery 将其操作到 SQL 失败,因为命令长度太大。

我也无法翻转数据集并让数据集 2 成为报告布局的驱动程序并在数据集 1 上进行查找。数据集 2 将没有来自数据集 1 的 PersonId 列表的上下文,因此具有比将要多得多的行数必要的。查找必须来自数据集 1。

感谢您的时间和建议!

4

1 回答 1

0

事实证明,通过数据集 2 上的查找应用分组时完全没有问题。我的问题是用户错误;我忘了在第一个字段中添加“.Value”。

错误:=Lookup(Fields!PersonId, Fields!PersonId.Value, Fields!Location.Value, "Dataset2")

于 2017-08-30T15:52:32.880 回答