如何打开Crystal Report文件(.rpt)并可以修改文件中的数据源信息。

2020-08-25 09:47发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中) 试图通过Java代码打开文件或...

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

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


试图通过Java代码打开文件或修改文件,出现以下错误:-

-试图将数据从RPT导出到PDF文件-再次由于数据源的原因,导致" ReportSDKException:查找JNDI名称(IW)错误"。

-试图连接到数据库,但是由于"内置Crystal报表数据源"而遇到" ReportSDKException:查找JNDI名称(IW)时出错",因为我们无法打开Crystal报表。

试图通过SAP Crystal Viewer打开文件,但遇到以下工具错误:-"要将数据导入报表,请在Crystal Reports设计器应用程序中打开并重新保存,并选择"保存数据报表"选项。"

然后在Visual Studio中尝试后,我能够打开文件,但看不到数据库信息,但出现错误:-" 无法加载数据库信息Crystal报告数据库连接器crd_ads.dll"。

注意*:-水晶报表是第三方文件,我没有数据库信息。 我必须将此RPT文件转换为PDF文件,但是我尝试使用Java代码,但遇到了以上遗漏的JNDI错误。 因此,转换我需要水晶报表中的数据源信息。 因此,我必须为此打开文件。 那么,如何打开文件并检查数据库信息????????????????

请找到用于转换文件的Java代码段,但出现上述错误:-

ReportClientDocument rcd = new ReportClientDocument(); //File thefile = new File(" D://sample1.rpt"); rcd.open(" E:\\ crystal-reports \\ agelst02.rpt",0);

ByteArrayInputStream byteArrayInputStream =(ByteArrayInputStream)rcd.getPrintOutputController()。export( ReportExportFormat.PDF );

rcd.close(); 文件文件=新文件(" E:\\ crystal-reports \\ myreport.pdf ");

FileOutputStream fileOutputStream =新的FileOutputStream(file);

ByteArrayOutputStream byteArrayOutputStream =新的ByteArrayOutputStream(byteArrayInputStream.available());

byte [] byteArray = new byte [byteArrayInputStream.available()];

int x = byteArrayInputStream.read(byteArray,0,byteArrayInputStream.available());

byteArrayOutputStream.write(byteArray,0,x);

byteArrayOutputStream.writeTo(fileOutputStream);

System.out.println("文件已成功导出");

//关闭流。 byteArrayInputStream.close();

byteArrayOutputStream.close(); fileOutputStream.close();

}