本文實例講述了水晶報表asp.net的webform下基本用法。分享給大家供大家參考。
具體實現方法如下:
復制代碼 代碼如下:protected void Page_Init(object sender, EventArgs e)
{
ConfigureCrystalReport();
}
protected void Page_Unload(object sender, EventArgs e)
{
if (rptDocument == null)
return;
rptDocument.Close();
rptDocument.Dispose();
}
private void ConfigureCrystalReport()
{
string temp = BusinessObject.Util.Decrypt(Request.QueryString["toid"]);
TourOrderId = Util.ConvertTo<int>(temp, 0);
if (ViewState["reportdoc"] == null)
{
string report_path = "";
report_path = Server.MapPath("~/Report/TourNote.rpt");
DataSet ds = BusinessObject.TourOrders.GetTourNoteDsRpt(TourOrderId);
if (ViewState["reportdata"] == null)
{
ViewState["reportdata"] = ds;
}
else
{
ds = (DataSet)ViewState["reportdata"];
}
rptDocument = new ReportDocument();
rptDocument.Load(report_path);
rptDocument.SetDataSource(ds);
rptDocument.PrintOptions.PaperSize = CrystalDecisions.Shared.PaperSize.DefaultPaperSize;
ViewState["reportdoc"] = rptDocument;
}
else
{
rptDocument = (ReportDocument)ViewState["reportdoc"];
}
this.CrystalReportViewer1.ReportSource = rptDocument;
this.CrystalReportViewer1.HasToggleGroupTreeButton = false;
this.CrystalReportViewer1.DisplayGroupTree = false;
}
使用方法.先建了一個數據集做為數據源,作為水晶報表的數據架構.
代碼裡面調用一個存儲過程,返回擁有多張表的DataSet.
希望本文所述對大家的asp.net程序設計有所幫助。