2012-02-22 94 views
0

我的水晶报告在执行时崩溃,我能够通过网站查看我的报告,但几分钟后,我的报告崩溃了,asp.net告诉我,加载报告失败。实际发生的问题是什么?它会在执行期间崩溃吗?水晶报告加载失败

protected void Page_Load(object sender, EventArgs e) 
{ 
    //load report 
    ReportDocument RD = new ReportDocument(); 

    //base on App_Code xsdfile name 
    top5movie ds = new top5movie(); 

    DataTable dt= new DataTable(); 
    dt.TableName = "Report"; 
    dt = getAllOrders().Tables[0]; 
    ds.Tables[0].Merge(dt); 

    RD.Load(Server.MapPath("~/CrystalReport2.rpt")); 
    RD.SetDataSource(ds); 



    CrystalReportViewer1.ReportSource = RD; 


    //end load report 
} 

//report function 
public DataSet getAllOrders() 
{ 
    SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString); 
    SqlCommand cmdSelect = new SqlCommand("selectTop5Movie",conn); 
    DataSet ds = null; 
    SqlDataAdapter dts; 
    try 
    { 
     conn.Open(); 
     cmdSelect.Connection = conn; 

     ds = new DataSet(); 
     dts = new SqlDataAdapter(cmdSelect); 
     dts.Fill(ds, "movieTitle"); 
     dts.Fill(ds, "userName"); 
     dts.Fill(ds, "uploadDate"); 
     dts.Fill(ds, "movieClicks"); 

    } 
    catch (Exception ex) 
    { 
     throw new Exception(ex.Message); 
    } 
    finally 
    { 
     cmdSelect.Dispose(); 
     if (conn.State != ConnectionState.Closed) 
      conn.Close(); 
    } 
    return ds; 
} 
+0

您能发布实际的错误文本吗? – 2012-02-22 22:59:15

+0

实际的错误文本是加载报告失败= = – 2012-02-23 03:51:16

回答

0

您的.rpt的属性(复制到输出目录)更改为复制如果更新或始终复制。

1

的ReportDocument RD

您不关闭和using处置后该对象。 要么使用

using(ReportDocument RD = new ReportDocument()) 
{ 
} 

RD.Close() 
RD.Dispose() 

使用后。

有你可以使用CrystalReport实例的数量限制(默认值是) 你可以看到,在regedit

“HKEY_LOCAL_MACHINE \ SOFTWARE \ SAP的BusinessObjects \水晶报表。 NET Framework 4.0 \ Report Application Server \ Server \ PrintJobLimit“

+0

好吧,让我检查! – 2017-04-20 11:25:27

+1

@AkhilNair sure .. – 2017-04-20 11:26:43