从另一个数据集检索 SSRS 动态数据
SSRS dynamic data retrieval from another dataset
我想根据另一个数据集中的数据(动态)获取数据,并将结果放在不同数据集的文本框中。
现在,我得到的数据是静态的,我尝试使用很多表达式但无济于事。
问题在于编辑文本框表达式。由于我从不同的数据集获取数据,它总是要求我在表达式中使用数据集聚合函数。如果我从获取数据的位置指定了数据集,那么我将无法使其动态化 - 我会得到不想要的结果。
我尝试的另一种出路是将数据集合并成一个而不是多个数据集并只使用它,但这是不成功的。
我怎样才能得到我想要的结果:
顺便说一句,文本框和表格在不同的范围内。我也尝试过将它们合并到一个范围内。
从另一个数据集中获取数据需要一个聚合函数,因为它无法告诉您想要从该数据集中得到什么数据,因此它会强制您对其进行聚合,以便它可以 return 一个特定的值而不是整个列表的价值。
我想你追求的是 Lookup 功能。查找允许您根据 table 数据集中的值从另一个数据集中查找值。举一个简单的例子,假设你的 table 是员工,你在 table 上有一个部门 ID,另一个名为 "Departments" 的数据集有一个 ID 和一个名称。您可以使用以下表达式查找部门名称:
=Lookup(Fields!DeptId.Value, Fields!Id.Value, Fields!Name.Value, "Departments")
这使用当前 table 的数据集的 DeptId
字段通过 Id
字段和 return Name
字段。
=Lookup(First(ReportItems!EmpID.Value),Fields!EmpID.Value,Fields!Dept.Value,"dataset_which_u_retrieve_the_data_from")
问题已解决!使用 reportItems 而不是字段,因为我只检索一个数据,而不是整个字段。
感谢大家帮助我。
我想根据另一个数据集中的数据(动态)获取数据,并将结果放在不同数据集的文本框中。
现在,我得到的数据是静态的,我尝试使用很多表达式但无济于事。
问题在于编辑文本框表达式。由于我从不同的数据集获取数据,它总是要求我在表达式中使用数据集聚合函数。如果我从获取数据的位置指定了数据集,那么我将无法使其动态化 - 我会得到不想要的结果。
我尝试的另一种出路是将数据集合并成一个而不是多个数据集并只使用它,但这是不成功的。
我怎样才能得到我想要的结果:
顺便说一句,文本框和表格在不同的范围内。我也尝试过将它们合并到一个范围内。
从另一个数据集中获取数据需要一个聚合函数,因为它无法告诉您想要从该数据集中得到什么数据,因此它会强制您对其进行聚合,以便它可以 return 一个特定的值而不是整个列表的价值。
我想你追求的是 Lookup 功能。查找允许您根据 table 数据集中的值从另一个数据集中查找值。举一个简单的例子,假设你的 table 是员工,你在 table 上有一个部门 ID,另一个名为 "Departments" 的数据集有一个 ID 和一个名称。您可以使用以下表达式查找部门名称:
=Lookup(Fields!DeptId.Value, Fields!Id.Value, Fields!Name.Value, "Departments")
这使用当前 table 的数据集的 DeptId
字段通过 Id
字段和 return Name
字段。
=Lookup(First(ReportItems!EmpID.Value),Fields!EmpID.Value,Fields!Dept.Value,"dataset_which_u_retrieve_the_data_from")
问题已解决!使用 reportItems 而不是字段,因为我只检索一个数据,而不是整个字段。
感谢大家帮助我。