【问题标题】:SSRS 2005 Subreports occasionally emptySSRS 2005 子报表偶尔为空
【发布时间】:2013-01-17 04:47:08
【问题描述】:

我有一个“父级”报告,它故意不显示任何内容,但会查询要计费的工作编号数据集。然后,此父报表循环遍历这些作业,并将它们一一传递到两个子报表。第一个子报表是对传入的工作计费的摘要。第二个子报表是该工作发票、员工、工时、费率等所有详细信息的明细。

Parent 向 SubReports 提交大约 400 个作业。总结报告打印精美。详细信息子报表在大约 90 - 95% 的情况下会这样做,但在某些作业中它是空白的,并且我看到错误消息表明子报表无法显示。

在研究这个时,最常见的反应是参数的传入方式有问题。这里似乎不是这种情况,特别是考虑到 400 个工作中大约 380 多个显示细节精美。因此,我对该 SubReport 运行了特定查询,以查看我是否真的获得了其中一项违规作业的数据。是的,数百行数据,所以数据在那里,正在传递单个参数。

还有什么可能导致此错误?

报告继续过去的错误,这很好,但我也需要显示这些详细信息表。

【问题讨论】:

    标签: reportingservices-2005


    【解决方案1】:

    为了调试此类问题,我采用以下方法。

    1. 确定它是否是一组特定的数据。 IE 它是一组特定的工作编号。您可以通过某种方式(参数、硬代码等)限制查询来做到这一点
    2. 如果与数据相关,请缩小范围,直到找到导致问题的实际数据
    3. 如果不是数据相关,我会一一缩小渲染技术的范围。

      • 首先我使用不同的浏览器
      • 然后我尝试不同的报表服务器
      • 终于有了不同的报表查看器(SharePoint 原生、直接、Visual Studio 等)。

    通常我发现这是一个小的数据转换问题,会抛出以下数据流渲染。

    也不要忽视报告系统中的错误 - 在我看来,您使用的是旧技术。

    注意仅仅因为子报表自己呈现,并不意味着它将与主报表一起工作。不同部分的交互方式也很重要。

    【讨论】:

    • Preet,感谢您的及时回复。我一直在使用类似于您建议的有条不紊的方法。 - 我已经硬编码了参数为 105880 的作业编号。 - 我已经直接进入 SQL Mgmt Studio 并在那里运行查询。正如您所指出的,这指出了一个渲染问题。唯一可用的浏览器是 IE。我们使用的是 Deltek Vision 6.2SP2,并且该应用程序仅适用于 IE。呈现问题出现在那里,并且出现在 SSRS 2005 的预览中(同样,Vision 支持的内容)。当报告打印成硬拷贝时也会发生这种情况。 (续)
    • 这些报告有数百页,违规页面分散在各处,而所有其他页面均正常呈现。这些报告的数据中一定有一些东西会导致 SSRS 出现问题。我会继续挖掘,但我认为这里的某个人可能触手可及。这个地方充满了经验和智慧。
    • 谢谢,但您需要进一步缩小范围,然后隔离技术,最好的方法是剥离越来越多的数据和越来越多的渲染技术。您也可以更改 Sp 以仅返回有错误的子报表数据。
    【解决方案2】:

    此问题已解决。我在这里为任何可能遇到类似情况的人发布我的解决方案,即使这似乎是一个相当奇怪的情况。该问题与应用于表的各种元素的 Hidden 属性有关。

    在我们公司,工作组被分配到程序中。其中一个项目的项目经理希望在他的项目中看到按“子工作”分组的收入小计。没有人愿意看到这一点。我的解决方案是在报告中创建字段(在有问题的表中),只有在报告他的程序时才将可见性属性设置为 true。

    这些报告的分组是程序/作业/子作业。我正在使用 IIF 语句将隐藏属性应用于表中的各个字段。如果是他的程序,显示数据,否则,不显示。事实证明,SSRS 2005 中的某些内容因这些隐藏字段而发生冲突,但仅限于某些工作,并且当这些工作通过时,这种冲突会导致“找不到对象”异常。我仍然不确定冲突是什么,以及为什么它没有总是 出现。大约 95% 的报告正常打印。

    解决方案是将所有隐藏值移动到表的一列,并将隐藏属性仅应用于该列。因此,整个列被隐藏起来,并且其中的所有内容都遵循列本身的隐藏属性。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-12-28
      • 1970-01-01
      • 2010-10-30
      • 1970-01-01
      • 1970-01-01
      • 2012-05-07
      • 1970-01-01
      相关资源
      最近更新 更多