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

(编辑:jimmy 日期: 2024/10/6 浏览:2)

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

一句话新闻
Windows上运行安卓你用过了吗
在去年的5月23日,借助Intel Bridge Technology以及Intel Celadon两项技术的驱动,Intel为PC用户带来了Android On Windows(AOW)平台,并携手国内软件公司腾讯共同推出了腾讯应用宝电脑版,将Windows与安卓两大生态进行了融合,PC的使用体验随即被带入到了一个全新的阶段。