簡體   English   中英

水晶報表加載失敗

[英]crystal report load failed

我的水晶報表在執行時間崩潰了,我可以通過網站查看報表,但是幾分鍾后我的報表崩潰了,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;
}

報表文件RD

您不關閉和處置后,該對象using 無論使用

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

要么

RD.Close()
RD.Dispose()

使用后。

您可以使用CrystalReport的實例數是有限制的(默認值為75 ),您可以在regedit看到

“ .NET Framework 4.0的HKEY_LOCAL_MACHINE \\ SOFTWARE \\ SAP BusinessObjects \\ Crystal Reports \\ Report Application Server \\ Server \\ PrintJobLimit”

.rpt的屬性(復制到輸出目錄)中,如果較新則更改為“復制”或“始終復制”。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM