使用CR13运行时的Windows 10 64位上的Crystal Reports失败

2020-09-05 03:47发布

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

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


你好

我在64位操作系统中生成报告时遇到问题。 我正在使用CR13 .Net运行时。 相同的代码完全可以在32位上工作,但在64位上会引发异常" CrystalDecisions.ReportAppServer.DataSetConversion.dll中发生了'CrystalDecisions.CrystalReports.Engine.DataSourceException类型的首次机会异常"。 >

注意事项:

1.无论是数据集还是连接数据库时,我都面临这个问题。

2.以下是源代码,我们使用C ++ Windows应用程序并使用托管CLR项目调用Crystal .Net API:

 reportDoc-> ReportOptions-> EnableSavePreviewPicture = false;
 reportDoc-> ReportOptions-> EnableUseIndexForSpeed = true;
 reportDoc-> ReportOptions-> EnableSaveDataWithReport = false;
 CrystalDecisions :: Shared :: ExportOptions ^ exportOpts = reportDoc-> ExportOptions;
 CrystalDecisions :: Shared :: DiskFileDestinationOptions ^ diskOpts = exportOpts-> CreateDiskFileDestinationOptions();
 diskOpts-> DiskFileName = gcnew System :: String(filePath);
 exportOpts-> ExportDestinationOptions = diskOpts;
 exportOpts-> ExportDestinationType = CrystalDecisions :: Shared :: ExportDestinationType :: DiskFile;
 SetPDFExportOptions(exportOpts);//功能在下面定义,以供参考
 reportDoc-> Export(exportOpts);//这是我得到异常的地方
 
无效SetPDFExportOptions(CrystalDecisions :: Shared :: ExportOptions ^ exportOpts)
 {
 exportOpts-> ExportFormatType = CrystalDecisions :: Shared :: ExportFormatType :: PortableDocFormat;
 CrystalDecisions :: Shared :: PdfFormatOptions ^ pdfFormatOptions = exportOpts-> CreatePdfFormatOptions();
 pdfFormatOptions-> UsePageRange = false;
 exportOpts-> ExportFormatOptions = pdfFormatOptions;
 }
 

有人可以帮忙吗?

谢谢

Jai

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

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


你好

我在64位操作系统中生成报告时遇到问题。 我正在使用CR13 .Net运行时。 相同的代码完全可以在32位上工作,但在64位上会引发异常" CrystalDecisions.ReportAppServer.DataSetConversion.dll中发生了'CrystalDecisions.CrystalReports.Engine.DataSourceException类型的首次机会异常"。 >

注意事项:

1.无论是数据集还是连接数据库时,我都面临这个问题。

2.以下是源代码,我们使用C ++ Windows应用程序并使用托管CLR项目调用Crystal .Net API:

 reportDoc-> ReportOptions-> EnableSavePreviewPicture = false;
 reportDoc-> ReportOptions-> EnableUseIndexForSpeed = true;
 reportDoc-> ReportOptions-> EnableSaveDataWithReport = false;
 CrystalDecisions :: Shared :: ExportOptions ^ exportOpts = reportDoc-> ExportOptions;
 CrystalDecisions :: Shared :: DiskFileDestinationOptions ^ diskOpts = exportOpts-> CreateDiskFileDestinationOptions();
 diskOpts-> DiskFileName = gcnew System :: String(filePath);
 exportOpts-> ExportDestinationOptions = diskOpts;
 exportOpts-> ExportDestinationType = CrystalDecisions :: Shared :: ExportDestinationType :: DiskFile;
 SetPDFExportOptions(exportOpts);//功能在下面定义,以供参考
 reportDoc-> Export(exportOpts);//这是我得到异常的地方
 
无效SetPDFExportOptions(CrystalDecisions :: Shared :: ExportOptions ^ exportOpts)
 {
 exportOpts-> ExportFormatType = CrystalDecisions :: Shared :: ExportFormatType :: PortableDocFormat;
 CrystalDecisions :: Shared :: PdfFormatOptions ^ pdfFormatOptions = exportOpts-> CreatePdfFormatOptions();
 pdfFormatOptions-> UsePageRange = false;
 exportOpts-> ExportFormatOptions = pdfFormatOptions;
 }
 

有人可以帮忙吗?

谢谢

Jai

付费偷看设置
发送
10条回答
My梦
1楼 · 2020-09-05 04:09.采纳回答

嗨Jai,

我建议新手在CR Designer中打开报表,完整版不是VS中嵌入的版本。 在您的情况下,打开报告并在DB菜单中设置DB位置,如果有,请选择TTX(如果没有),然后选择XML文件,还需要将Schema嵌入其中。 然后验证,如果出现任何与映射不匹配的弹出窗口,请修复您的数据源。

默认情况下,当您选择ttx时,将使用默认的虚拟数据集,直到找到数据文件为止。

首先与设计人员一起玩,.NET SDK使用相同的功能,因此工作流程相同。 一旦获得一份报告转换后的搜索结果,即可搜索此KBA-

1553921 是否有实用程序可以帮助编写数据库 登录代码?

运行该应用程序,它将生成将报告数据源转换为代码所需的连接信息。 然后使用标记显示报告是否已转换,如果尚未转换到该例程中。 如果尚未将其另存为新文件和/或从现在开始使用它...

很多示例代码都在这里,主要下载的WIKI也有2个示例,其中一个用于参数, 有登录代码,有一个用于打印的代码...

Don

天桥码农
2楼-- · 2020-09-05 04:22
愤怒的猪头君
3楼-- · 2020-09-05 04:32

Hi Don ,

感谢您的答复。

我是最新的CRforVS13SP25_0-10010309.EXE

谢谢

SAP小菜
4楼-- · 2020-09-05 04:05

我正在检查安装的运行时。 我在win64_64路径中只有一个文件: " C:\ Program Files(x86)\ SAP BusinessObjects \ .NET Framework 4.0的Crystal Reports \ Common \ SAP BusinessObjects Enterprise XI 4.0 \ win64_x64 \ dotnet \ CrystalDecisions.Data.AdoDotNetInterop.dll"。 是原因吗? 我确实正确安装了它,因为它非常简单地使用了CRforVS13SP25_0-10010309.EXE并执行了64位设置。

能不能别闹
5楼-- · 2020-09-05 04:22

不,您没有完全安装它,最后是安装程序 询问是否要安装64位运行时,您可能没有选中它。尝试进行修复/修改并再次安装。

Don

樱桃小丸子0093
6楼-- · 2020-09-05 04:23
< p>我已经尝试了多次安装和卸载,但在win64_64路径中的dotnet文件夹中只有一个文件" C:\ Program Files(x86)\ SAP BusinessObjects \ Crystal Reports for .NET Framework 4.0 \ Common \ SAP BusinessObjects Enterprise XI 4.0 \ win64_x64 \ dotnet \ ",但是我确实在 C:\ Program Files(x86)\ SAP BusinessObjects \ Crystal Reports for .NET Framework 4.0 \ Common \中拥有所有.dll文件 SAP BusinessObjects Enterprise XI 4.0 \ win64_x64 \" 文件夹。

我确实从CrystalDecisions.ReportAppServer.DataSetConversion.dll中获得了一个异常,该异常位于程序集文件夹" C:\ Windows \ assembly \ GAC_MSIL" 中 >

我尝试与Procmon进行检查,它显示它正在从程序集文件夹" C:\ Windows \ assembly \ GAC_MSIL "中访问文件,

Nan4612
7楼-- · 2020-09-05 04:21

对于该文件夹中的一个文件,这是正常的。 它们大多位于该文件夹上方的文件夹中。

尝试将其包装在Try/Catch块中,看看还有什么丢失。 当您从查看器中导出时?

一周热门 更多>