"此字段名称未知。" 从ReportDocument.Load(),那么如何验证数据库?

2020-09-22 19:39发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)使用以下 VB.NET ,我有一...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


使用以下 VB.NET ,我有一个Crystal Report文件甚至无法加载。 a>代码:

将objRptDoc设为新的CrystalDecisions.CrystalReports.Engine.ReportDocument()
 objRptDoc.Load(" C:\ path \ to \ my.rpt")


它将引发CrystalDecisions.Shared.CrystalReportsException
消息:加载报告失败。
在CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.EnsureDocumentIsOpened()在CrystalDecisions.CrystalReports.Engine.ReportDocument .Load(String filename,OpenReportMethod openMethod,Int16 parentJob)
在CrystalDecisions.CrystalReports.Engine.ReportDocument.Load(String filename)

InnerException类型为System.Runtime.InteropServices.COMException

消息:该字段名称未知。
详细信息:errorKind
我的17320_16748_ {19E5E493-1D64-4084-8E97-6395D78D94EB} .rpt文件中出现错误:
公式小计标签中的错误:< br>'如果{Invoice.ForeignSubTotal} = {Invoice.ForeignTotalAmount},则此字段名称未知。
详细信息:CrystalDecisions.ReportAppServer.ClientDoc.ReportClientDocumentClass上的errorKind

。 .Open(Object&DocumentPath,Int32选项)
在CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.Open(Object&Doc umentPath,Int32选项)
在CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.EnsureDocumentIsOpened()

现在,我或多或少地知道问题出在哪里……如果我在Crystal Designer中打开报表,执行"验证数据库"并将其保存,它将可以正常工作。 但是我希望能够通过自己的代码自动执行此操作,而不是告诉用户他们需要在报表上运行"验证数据库"(尤其是因为用户可能无法访问Crystal报表设计器)。 通常,我会调用ReportDocument.VerifyDatabase()方法,但是假设我已经将报表加载到ReportDocument对象中。 由于我什至无法加载报告,因此无法调用VerifyDatabase。

关于如何实现此目标的任何建议?