SSRS每个选定的新页面参数

问题描述:

我有一个使用3个数据集的报告,并在报告中使用了多个表格和文本框和表达式。当我运行报告时,我必须选择一个参数,在本例中为“城市”。SSRS每个选定的新页面参数

我想每个城市(参数)的新的一页,我已经阅读使用分页符和分组,但我选择了一个列表从工具箱,把那我的报告的顶部,选择2“城市”,并预计它返回2页,但它返回49页(大部分空白)

我想每个城市一个独立的页面我怎么能做到这一点?

感谢

如果我理解正确的话(这很难确定,如果你不发表您的当前设计),那么你将使用子报表更好。

我假设城市是在你的数据库中的表和每个具有唯一的ID。如果你只有名字,那么你可以使用代替CityID,它仍然可以工作。

创建一份新报告。 创建新的数据集(比如dsSelectedCities和设定数据集查询到类似...

SELECT CityID, CityName FROM myCitiesTable WHERE CityID IN (@CityParameter) 

这将自动生成一个名为@CityParameter的报告参数,设置可用值等你在这个原始报表做的方式,因此,如果您需要添加其他数据集为这个那么这样做。在这个例子中,我假定标签将CityName和值将被CityID。无论进入价值是什么将被传递给我们的报表。

现在添加一个表给你报告,它只需要一列宽和一行长,所以只需删除任何其他r行和列只是确保你离开细节行而不是标题。

设定数据集表是dsSelectedCities

使这个剩余的细胞与宽度足以容纳子报表(这将是你最初写的报告)。

在细胞中,插入一个子报表 设置报表属性指向原始报表和参数设置为CityID

此表将作为一个循环,为dsSelectedCities找到的每个记录它会给我们一个排。由于每行将有一个CityID我们将其传递给子报表,子报表反过来只显示一个城市。

设置的详细信息组的分页选项实例之间打破。

你可能不得不修改原来的报告,接受单个CityID,这取决于它是如何设计的,但希望这应该让你去。

如果不清楚然后发布当前报告的设计,包括有关参数的所有细节,我会更新的答案。

+0

嗨我会在报告中提出一个问题,我已经有了一个城市数据集。这些基本上是数据库中的记录。即使我正在为新报告重新创建数据集,是否仍保留原始报告中的数据集? –

+0

我会建议您制作原始报告的副本,删除与默认值或可用值相关的任何参数设置,然后查看数据集是否仍然需要。任何纯粹用于填充参数的数据集几乎肯定是多余的,应该删除,因为这些只是无故减缓了报表处理速度。通过在城市参数中输入CityID,您应该处于可以运行报告(子报表)的位置,并为您提供单个城市所需的信息。 –

+0

我正在努力处理这个子报表。我提到了一个新的报告,并创建了一个包含cityname和cityid的数据集。在我设置了“允许多个值”的参数上,对于可用值,我选择了数据集并选择了cityname字段。在子报表参数上,我将该参数设置为cityid字段。当我运行报告时,我得到'一个或多个参数没有为子报告指定'。有任何想法吗? –