0

所以我知道你可以在单元格中嵌套子报表,但是如果我有很多数据并且我想动态填充子报表怎么办。你能在任何人都知道的 SSRS 中做到这一点吗?

我通常深入到子报表,但是您是否可以捕获隐藏变量或其他值,或者选择对单元格的引用并生成它?

我研究了 Me.Value 和 ReportItems![ItemName].Value 的概念,但它们与静态位置有关,而不是鼠标选择的活动单元格。有谁知道这是 RDL 语言的限制还是可能?在最简单的例子中,我可以说我有一个只有一个字段“名称”的数据集,它有两个值“布雷特”和“肖恩”。我创建了一个表并只设置了一个带有标题的列。我在该表之外创建了一个带有表达式的文本框,因为它是报表正文中的自己的元素(重新创建我想要传递给子报表的内容)。我希望捕获对所选表格元素中内容的引用。

我能否以某种方式让报告知道我单击了表格中的单元格并生成了一个触发该值的事件?还是该语言无法构建这样的引用?我很好奇,因为我不确定,所以我想我会问。

4

2 回答 2

0

所以简短的回答不是真的,因为生成的报告和基础数据是静态的,并且没有用于生成更多数据的事件框架 - 只是改变现有数据的显示(展开/折叠、排序等)(所以理论上,您可以通过单击文本框使文本框的可见性成为交互式,然后将某些“主报告”中各种数据行的可见性设置为等于文本框的可见性,因此它们“隐藏”和“显示” “当用户点击不同的文本框时。但是你必须有一个“重置所有可见性”按钮,一个主报告,以及很多代码隐藏来找出你的子报告可见性行......听起来像维护噩梦!)

显然,您最好的选择是构建一个带有报表查看器控件的 ASP.NET Web 应用程序。然后,您将获得 jQuery 和服务器端请求的所有优点,以处理将参数从客户端传回服务器、生成子报表、返回它(最好作为 ATOM 数据馈送)、解析它,然后将其注入 DOM您希望用户如何看到它。

有些人已经设法将 jQuery 注入到 SSRS 报表管理器的标题中,所以如果你真的很喜欢冒险,你可以尝试在报表管理器中重新创建相同的体验,但这听起来很麻烦。

于 2013-02-11T01:38:43.700 回答
-1

我猜您正在寻找 SSRS 中的功能,即操作。您可以在单击单元格时定义一个动作,从而为您提供各种动作选项。

对于单击单元格,转到文本框属性,选择作为转到报告的操作并添加要传递的参数。

在此示例中,我有 Report1 ,当我单击 JobCandidate 单元格时,我导航到 Report2,同时我传递了一个参数,该参数是 Report2 中的 Report 2 参数 Param1 使用的 JobCandidate ID。传递给 Param1 的值本质上是单元格值,在本例中为 Fields!JobCandidateId.Value 在此处输入图像描述

在此处输入图像描述

于 2013-02-09T04:30:25.353 回答