2015-12-17 49 views
-1

我想根据另一个数据集中的数据获取数据(动态),并将结果放入不同数据集的文本框中。从另一个数据集检索SSRS动态数据

现在,我得到的数据是静态的,我试图用各种表情,但无济于事。

问题在于编辑文本框表达式。由于我从不同的数据集获取数据,它总是要求我在我的表达式中使用数据集合函数。如果我从获取数据的位置指定数据集,那么我无法使其动态变化 - 并且会得到不希望的结果。

而另一条出路,我试图在合并数据集为一体,而不是整数倍,并且只使用它,但是这是不成功的。

我怎样才能使它工作,得到的结果,我想:

Employee list by department

顺便提一下,文本框和表是在不同的范围。我试图将它们合并到一个范围内。

+0

关于你的投入和期望的输出更精确的信息将是有益的 – Jonnus

+0

部门名称(X)将被自动更改。在我的报告的第一页中,我会列出所有IT员工,下一个生产部门的员工等等......同时,第一个文本框将相应地更改。文本框(部门)和员工表都在不同的数据集中,它们都在同一个公司。我如何使它动态改变我的部门ID? – LittleBirdy

+0

[IMG] http://i64.tinypic.com/2a5g3vb.png [/ IMG] – LittleBirdy

回答

1

从另一个数据集中获取数据需要聚合函数,因为它不能告诉你想要的数据,从该数据集,以便它迫使你汇总,以便它可以返回一个特定的值,而不是值的整个列表。

我觉得你是以后有什么Lookup功能。查找允许您根据表数据集中的值从另一个数据集查找值。为了给出一个简单的例子,假设你的表是雇员,你在该表上有一个部门标识,另一个数据集称为“部门”,它有一个ID和一个名称。你可以查找该部门的名称中使用下列表达式:

=Lookup(Fields!DeptId.Value, Fields!Id.Value, Fields!Name.Value, "Departments") 

这将使用当前表的数据集的DeptId场来查找Departments数据集由Id场并返回Name领域。

+0

感谢您的评论Chris。但是,我仍然收到dataset集合错误。 – LittleBirdy

0
=Lookup(First(ReportItems!EmpID.Value),Fields!EmpID.Value,Fields!Dept.Value,"dataset_which_u_retrieve_the_data_from") 

问题解决了!通过使用reportItems而不是Fields,因为我仅检索一个数据,而不是整个字段。

谢谢你们帮助我。