在单个报告中使用两个不同的数据集

时间:2013-07-30 18:27:52

标签: reporting-services ssrs-2008 report

我有两个不同的2个数据集,它们有不同的文件,它们通过两个具有相同输入参数的存储过程填充。每个数据集有不同的列和180左右的列没有,我关心的是我将如何使用这两个不同的数据集单个报告有两个不同的字段(两个不同的表)。对于一个数据集我使用了报告向导,但无法找出第二个数据集。请建议同样的..

4 个答案:

答案 0 :(得分:10)

您可以在一个报告的不同报告区域中使用两个不同的数据集。例如,如果您有两个数据集,可以说DS1显示EmployeeDetail,DS2显示SalesInfo。您可以在两个表中单独使用它们,一个显示Employees Details,另一个显示Sales Info。如果您计划合并此数据并在一个表中使用它,则这些是选项。

  1. 推荐选项:重新编写查询以创建包含您希望以表格方式显示的可能数据的单个数据集。

  2. 会工作但速度会慢很多:在主报表的表格中使用DS1,其中每行包含Epmloyee详细信息,Wihtin表示Row调用Sub-Report传递EmployeeDetail&key,该列与列相关在SalesInfo中。创建显示SaledInfo数据的子报告,在主报告中将此报告从DS1传递给该子报告。

答案 1 :(得分:5)

在第三列中指定数据集名称 例如:

=First(Fields!fieldname.Value,"DataSet1")

答案 2 :(得分:3)

在报告中使用两个不同或多个数据集根本不是问题,只要它们不属于同一数据区域(图表,表格等)

  • 除了Ron的回答之外,如果您希望从一个数据区域中的不同数据集中获取数据,您还可以在字段表达式中使用LookupLookupSet
  • 此外,您还可以创建一个数据集并从数据区域中过滤掉一些数据。例如,如果您有一个所有员工的大数据集,并且您希望在表中显示2012年加入的所有员工,则可以使用表的过滤器属性过滤掉数据集。

答案 3 :(得分:-1)

您只需在报表中添加多个表,然后从每个表的tablix属性中更改datasetName。

您还需要绑定源来填充该数据集。

this.invoiceTableAdapter.Fill(this.ARQutationDataSet.invoice);