【发布时间】:2016-11-10 13:14:11
【问题描述】:
好的,所以我有一个移动应用程序使用的 SOAP Web 服务,我想添加一个新的 Web 方法,它通过水晶报表创建一个报表并将其保存在一个文件夹中。我不想使用作为 web 服务发布的报告,我希望我的报告直接从我的 web 方法创建。那怎么可能呢?注意:我使用的是 Visual Studio 2010 和 vb.net 语言。
【问题讨论】:
标签: asp.net vb.net crystal-reports
好的,所以我有一个移动应用程序使用的 SOAP Web 服务,我想添加一个新的 Web 方法,它通过水晶报表创建一个报表并将其保存在一个文件夹中。我不想使用作为 web 服务发布的报告,我希望我的报告直接从我的 web 方法创建。那怎么可能呢?注意:我使用的是 Visual Studio 2010 和 vb.net 语言。
【问题讨论】:
标签: asp.net vb.net crystal-reports
您需要下载 CR_For_VS 包,然后使用 ReportDocument 类将其导出到文件夹
编辑:代码
您需要在项目中引用 Crystal 库才能使用 ReportDocument 类。下面的代码应该会给你一个开始。
ReportDocument rep = new ReportDocument();
rep.Load(Server.MapPath("~/Report/Quote.rpt"));
rep.SetDatabaseLogon(Global.SQLUsername, Global.SQLPassword, Global.SQLServer, Global.SQLDatabase);
foreach (ReportDocument subRep in rep.Subreports)
{
subRep.SetDatabaseLogon(Global.SQLUsername, Global.SQLPassword, Global.SQLServer, Global.SQLDatabase);
}
rep.SetParameterValue("QuoteID", SessionStore.Current.CurrentQuoteID);
rep.ExportToDisk(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat, SessionStore.Current.DownloadPath + "/" + gvrParent.Cells[(int)gvQuotesColumnIndex.QuoteNo].Text + ".pdf");
【讨论】: