2012-02-22 27 views
0

Crystal Reportsが実行時にクラッシュしましたが、ウェブサイトでもレポートを表示できましたが、数分後にレポートがクラッシュし、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

実際のエラーテキストを投稿できますか? –

+0

実際のエラーテキストは読み込み失敗です= = –

答えて

0

in propertis(出力ディレクトリにコピーする).rptのコピーが新しい場合はコピーするか、常にコピーするに変更します。

1

ReportDocumentをRD

あなたは閉じてusing後にこのオブジェクトを配置されていません。 それを使用した後

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

または

RD.Close() 
RD.Dispose() 

を使用しますか。あなたはCrystalReportの使用できるインスタンスの数に制限はあり

あなたがのためのCrystal Reportsを\ regedit

「HKEY_LOCAL_MACHINE \ソフトウェア\のSAP BusinessObjectsの中でそれを見ることができます(デフォルト値はがあります)。 NET Framework 4.0 \レポートアプリケーションサーバー\サーバー\ PrintJobLimit "

+0

確認しましょう! –

+1

@AkhilNair確かに.. –

関連する問題