点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
嗨,
我正在尝试在需要打开的 ASP.NET Web API中创建项目, 填充并下载水晶报表。
我的环境如下:
- Visual Studio 2015
- 已安装CR运行时(最新)
- 已安装Visual Studio CR(最新)
- .NET Framework 4.5
- ASP.NET Web API
- 程序集版本:13.0.21.2533
我正在打开并加载文件。 然后,我要设置参数值,然后设置表登录信息。
我可以在调试中看到我的对象具有所需的行,并且一切正确。 但是当我到达出口时,它将引发以下异常:
{" Message":"发生错误。"," ExceptionMessage":"对象引用未设置为对象的实例。"," ExceptionType":" System.NullReferenceException"," StackTrace":c__DisplayClass10。 b__9(Object instance,Object [] methodParameters)\ r \ n在System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ExecuteAsync(HttpControllerContext controllerContext,IDictionary`2自变量,CancellationToken cancelToken)\ r \ n--堆栈跟踪从 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\ r \ n在System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\ r \ n在系统处引发异常的先前位置。 Web.Http.Controllers.ApiControllerActionInvoker.d__0.MoveNext()\ r \ n ---从上一个引发异常的位置开始的堆栈跟踪--- \ r \ n在System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() \ r \ n在System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotificatio n(任务任务)\ r \ n位于System.Web.Http.Controllers.ActionFilterResult.d__2.MoveNext()\ r \ n--从上一个引发异常的位置开始的堆栈跟踪--- \ r \ n 在System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\ r \ n在System.Web.Http.Controllers.AuthenticationFilterResult.d__0.MoveNext()在System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\ r \ n \ r \ n--从上一个引发异常的位置开始的堆栈跟踪--- System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\ r \ n位于System.Runtime.CompilerServices.TaskAwaiter。 HandleNonSuccessAndDebuggerNotification(任务任务)\ r \ n在System.Web.Http.Dispatcher.HttpControllerDispatcher.d__1.MoveNext()"" style =" color:rgb(0,136,0);">"在CrystalDecisions.CrystalReports.Engine .FormatEngine.ExportToStream(ExportRequestContext reqContext)\ r \ n在CrystalDecisions.CrystalReports.Engine.ReportDocument.ExportToStream(ExportOptions选项)\ r \ n在CrystalDecisions .CrystalReports.Engine.ReportDocument.ExportToStream(ExportFormatType formatType)\ r \ n位于lambda_method处的cubeERP.Controllers.BaseApiController.ShowDocumentForDownload()\ r \ n(System.Web处为Closure,Object,Object [])\ r \ n。 Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor。<> c__DisplayClass10。
即使我导出流或文件或HttpResponse,我也面临相同的异常。
请帮助!
您可以从查看器中导出报告吗?
还可以在Viewer和代码中尝试不同的格式。
请在发生错误的位置张贴代码。
您正在使用哪个版本的CR for VS runtime?
您可以从此处获取SP 26:
https: //wiki.scn.sap.com/wiki/display/BOBJ/Crystal+Reports%2C+Developer+for+Visual+Studio+Downloads
该错误始终表示报表对象已超出代码范围。
以调试模式运行,并验证报告对象是否为空
我确实运行了代码。 在导出流的地方产生了同样的错误。
此外,我正在使用iisexpress x64在调试模式下运行。 权限似乎还可以。 我还在同一父文件夹中读取/写入其他文件(json),它们工作正常。
您将获得更多帮助。
嗨,唐,
我正在运行SP26
正如我提到的,在调试中,我可以看到我的文档对象,它具有所有正确的记录和数据库连接信息。 我什至通过在Visual Studio中打开报表并提供相同的参数和数据库连接来验证该报表,并且工作正常。 但是,当我导出它时,它将引发空指针异常。 我的代码如下:
看起来正确,可能是权限,取决于进程的所有者...。
尝试一下,我将其保存到磁盘也只是为了验证数据是否正确。 在那里:
请帮助解决此问题。
一周热门 更多>