【发布时间】:2014-12-07 15:45:19
【问题描述】:
我正在使用 Vb.Net Forms 应用程序中的 Crystal Reports。包含 10-12 个子报告的庞大报告,此报告中使用了许多公式,有时此报告显示“对象引用未设置为对象上的实例”我无法弄清楚,我已将异常处理为好吧。当我点击“下一页”按钮时,它会显示在对话框下方。
我不知道为什么会这样。 看了很多博客,有人说是公式错误,有人说“鼠标移动”错误。
下面是我添加的代码,我现在检查一下
Private Sub CrystalReportViewer1_HandleException(ByVal source As _
Object, ByVal e As CrystalDecisions.Windows.Forms.ExceptionEventArgs) _
Handles CrystalReportViewer1.HandleException
'Label1.Text = e.Exception.ToString();
'Here I will trap.
End Sub
以下是我通过应用上述异常代码找到的堆栈跟踪:
Source:CrystalDecisions.CrystalReports.Engine
Message:Object reference not set to an instance of an object.
ST: at CrystalDecisions.CrystalReports.Engine.ReportDocument.get_IsLoaded()
at CrystalDecisions.ReportSource.NonHTTPCachedReportSource.GetReport(RequestContext context, Boolean bAddToCacheWhenCreated)
at CrystalDecisions.ReportSource.LocalReportSourceBase.GetPage(PageRequestContext pageReqContext)
at CrystalDecisions.Windows.Forms.MainReportDocument.GetPage(PageRequestContext context)
【问题讨论】:
-
这应该与您传递的数据有关。当通过 CR 公式处理数据时,它最终会出现异常。尝试检查正在传递的值,并为每个可以为 NULL 的值添加一些 vlaidations
-
当我按下鼠标向下或向上键时,它会弹出这个消息框。
-
表示公式无法执行!
-
今天我发现了其他导致该对话框出现的东西,我将系统设置为待机状态,在报表查看器中左键打开该报表,当我来按鼠标键时,出现异常框,似乎对象或查看者已经失去了参考。有人可以建议吗?
-
@Nadeem_MK :先生,我从 Log 收到了这个错误。运行 Windows 7- 32 位操作系统的机器。
标签: vb.net exception crystal-reports