我有2个申请:
第一个应用程序发送参数,例如报告文件名,通过命令行向第二个应用程序报告参数。然后第二个应用程序显示准备好的报告。
现在我想更改一些报告字段。我在第一个应用程序中的代码:
ReportDocument rDoc = new ReportDocument();
rDoc.Load(@"D:\reports\report_1.rpt");
rDoc.Database.Tables[0].Location = "newDBName.schema.oldTableName";
rDoc.SaveAs(@"D:\reports\report_1_modif.rpt",ReportFileFormat.VSNetFileFormat);
我想修改rpt文件,因为我想从存档数据库中获取数据。 “CrystalDecisions.CrystalReports.Engine”参考版本为9.1.5000.0。 因此,由于版本不兼容,第二个应用程序无法使用已修改的rpt文件。第二个应用程序只能使用8.5文件格式。
当我在CR Developer中打开rpt文件时,我可以手动更改位置并以8.5文件格式保存。在这种情况下,第二个程序通常适用于修改过的文件。
所以我的问题是:“我怎么能在.Net C#open rpt文件8.5中,修改并以8.5格式保存另一个名字?”。也许我应该使用一些非托管代码?
Crystal Reports 8.5于2001年发布。2002年.Net。
答案 0 :(得分:0)
我解决了问题。我的方法:
UPD。我们需要p2soledb.dll来使用OLE DB。