reporting-services - SSRS '08 对象引用未设置为对象的实例

标签 reporting-services ssrs-2008

Visual Studio '08 (BIDS) 中预览窗口的完整错误:“本地报告处理期间发生错误。对象引用未设置为对象的实例。”

错误列表或输出窗口中没有详细的错误/警告。

背景:在这份报告中,我使用一个表来显示子报告 [x] 次,具体取决于 SQL 数据库中存在的相关对象的数量。也就是说,子报表设置在表格的一个单元格(唯一的单元格)内,在对数据集中返回的每个项目重复的一行中。

去掉子报表可以让主报表编译运行,所以我感觉这个问题和子报表的排列有关。如果子报表只显示一次,那么主报表编译并运行正常,只有当需要第二个实例时才会出现问题。

当单独测试子报表时,它会在给定每个实例的参数时编译并运行,它被要求从主报表呈现。所以我可以排除第二个实例的数据导致它失败的想法(以某种 div-by-0 类型的方式)。

鉴于错误中缺少详细信息并且子报告自行运行,我不明白为什么会发生这种情况。

有没有人有调试的想法或建议的解决方案?

谢谢

布莱恩

tldr:当子报告重复多次时,主报告失败。

最佳答案

我想出了一个解决办法。向子报告传递 4 个参数,其中一个参数的值引用主报告中表格单元格的值。将此参数更改为设置该表格单元格的表达式 的值解决了该问题。我不知道为什么这是一个解决方案,但确实如此。

更详细地说:[table_cell_a] 有一个计算它的值的表达式。 子报表的 [parameter_a] 设置为“=ReportItems([table_cell_a]”).Value,当我更改 [parameter_a] 的表达式以反射(reflect) [table_cell_a] 的表达式时,一切又恢复正常了。

这是一团糟,我什至无法理解为什么它会这样。如果在调用子报告之前未计算 [table_cell_a],我可以理解。但如果是这样的话,当只有一个子报表时,报表怎么会起作用呢?

如果有人能提供解释,我将不胜感激。

布莱恩

关于reporting-services - SSRS '08 对象引用未设置为对象的实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7008961/

相关文章:

asp.net - 报告查看器控件 (Web) 显示空白报告

wpf - SSRS - 尚未为数据集 'dataset1' 提供数据源实例

reporting-services - SSRS 将变量或值从子报表拉入主报表

excel - SSRS 2008 R2 全局!RenderFormat.Name=EXCELOPENXML

reporting-services - SSRS 模板

reporting-services - 为什么在 "Add Reference..."对话框中看不到 Microsoft.ReportViewer.WebForms 版本 10.0.0.0?

mysql - 从 MYSQL 获取数据时无法设置 SSRS 2008 R2 中数据集错误的命令文本

reporting-services - SSRS 中多个组中的图表组线

sql-server - 如何在 SSRS 2008 RS 中配置/启用基于表单的身份验证

datetime - 如何计算 SSRS 中 2 个 DateTime 字段之间的时差