水晶报表asp.net的webform下基本用法实例

本文实例讲述了水晶报表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程序设计有所帮助。