除了特定参数的值之外,我需要有几个(四个)相同的报告。我不希望用户必须手动输入所有参数。
当他们输入以下参数时:
BEATLES
-------
BegDate: 1962
EndDate: 1970
Unit: Beatles
我希望使用以下参数运行四个报告:
LENNON
------
BegDate: 1962
EndDate: 1970
Unit: John Lennon
MCCARTNEY
---------
BegDate: 1962
EndDate: 1970
Unit: Paul McCartney
HARRISON
--------
BegDate: 1962
EndDate: 1970
Unit: George Harrison
STARR
-----
BegDate: 1962
EndDate: 1970
Unit: Ringo Starr
因此,当用户输入三个参数时,前两个(“日期”)参数以及适当的辅助报告“单位”参数(“John Lennon”到第一个参数,“Paul McCartney”到第二个,等等。通过。
报告“机器人”在人们为单位进入“甲壳虫乐队”之后对自己说:“哦,他进入'甲壳虫乐队'!所以我将'约翰列侬'作为单位参数传递到第一份报告,'保罗McCartney'作为第二份报告的单位参数,“(等)。
我尝试通过在几乎相同的存储过程中提供文字值来实现这一点(在某种程度上阐述here,但它根本不起作用。
所以我正在寻找其他方法在同一表面上放置多个相关但不同的报告。最终目标是确保在运行和导出为Excel时,每个报告(LENNON,MCCARTNEY等)都在Excel文件中显示在自己的工作表上。
但是现在,我只需要知道如何将适当的参数从一个报告(“BEATLES”)传递给其他报告(“LENNON”等)。我认为这些都是独立的报告,所有这些都嵌入在一个报告项目/页面中,但也许它们需要是一个报告,然后是一堆子报告(如果你正在读这个,你可能比我的内部工作知道得更好和SSRS的变幻莫测。)
那么,我如何从“基础”SSRS报告中向辅助(子?)报告提供报告参数 - 还是有另一种/更好的方法来实现这一目标?
答案 0 :(得分:1)
我有一个可能适合您的解决方案。
使用您在上面提到的3个参数创建报告。在报告中添加一个数据集,该数据集将获取3个参数并返回与此类似的数据集:
Band Member Start End Page Beatles John Lennon 1962 1970 LENNON Beatles Paul McCartney 1962 1970 MCCARTNEY …
在报告正文中,从工具箱中添加一个列表。将列表的数据集名称设置为上面数据集的名称。在Row Groups中,将有一个标记为(Details)的行。右键单击该行,然后从上下文菜单中选择“组属性”。添加新组,然后选择Page
作为要分组的列。转到“组属性”对话框的“分页符”部分,然后选中在每个组实例之间。如果您愿意,可以添加一个排序,然后单击“确定”按钮。
确保选中“行组”中的(详细信息)行,然后在“属性”中查找“组”选项。展开它,然后查找“页面名称”设置。像这样在字段中添加表达式(下面的屏幕截图):
=Fields!Page.Value
这将使报告中的每个页面都具有此值作为名称。因此,当您将其导出到Excel时,每个工作表将根据此值具有自己的名称。
在列表中添加文本框,并将其值设置为每页上所需的字段。在这种情况下,Page
,Start
,End
和Member
。如果您想要匹配问题中的内容,请添加标签。
只要数据集在您选择正确的参数时返回4个预期的行,您最终应该得到一个包含4个页面的报表,每个页面对应一个成员。当您将其导出到Excel时,您将有4张纸,它们应具有Page
字段中的名称。
希望这能帮到你!
答案 1 :(得分:0)
基于所写的Jupyter Scala,我就是这样做的:
我添加了一个子报表,然后将现有报表拖到它上面。然后我选择了上下文菜单项"子报告属性"并添加了一个参数(" Unit"),为其提供了一个"硬编码/烘焙"值(" CHOPHOUSE")与用户为主报告提供的值不同。
然后,由于我希望保留现有报告中相同的日期值,我向子报告添加了两个参数,并将它们设置为使用与主报告中使用的日期范围相同的值,方法是选择"式" (" fx")按钮并双击相应的参数以用作传入(tramp)值:
有效。