2011-09-30 120 views
2

我在ASP.NET 4.0應用程序中使用CrystalReports 13(13.0.2000.0)。
我需要在HTML中導出報表,因爲我想要一個靜態報表頁面,而不需要允許用戶交互的reporviewer。Crystal Reports導出爲HTML

如果我嘗試下面的代碼:

Source1.ReportDocument.ExportToHttpResponse( 
    CrystalDecisions.Shared.ExportFormatType.HTML32 /*or HTML40*/ 
    , this.Response , false, "report"); 

應用產生一個錯誤(詳情:導出在HTML格式HTTP響應不支持

如果我嘗試ReportExporter,HTML32和HTML格式不適用於ExportFormat。

有人可以幫忙嗎?

回答

2

報告可以在HTML被視爲

MemoryStream oStream; // using System.IO 
    oStream = (MemoryStream) 
    rd.ExportToStream(
    CrystalDecisions.Shared.ExportFormatType.HTML40); 
    Response.Clear(); 
    Response.Buffer = true; 
    Response.ContentType = "text/html"; 
    Response.BinaryWrite(oStream.ToArray()); 
    Response.End(); 

但格式可能會受到影響。

參考:How to Export Crystal Report in ASP.NET

0

將pdf幫助(我見過的例子使用pdf導出)?如果這樣做很容易做到,但確實需要您的用戶安裝acrobat reader。從錯誤似乎導出爲HTML格式的HTTP響應,在釋放尚未實現,但有可能是一個補丁來修復它,嘗試修補到最新版本,

MD

+0

不,PDF沒有幫助:實際上我用的PDF,但IE9 64還沒有得到PDF插件,所以一些用戶遇到瀏覽器要求下載一個文件,而不是在瀏覽器中查看它。 –

+1

您可以將html文檔保存到磁盤,然後使用重定向到該方法作爲解決方法,但是我找不到其他任何方法, –

+0

如果您打算這樣做,請確保您添加唯一性到時間名稱(我發現datetime是一個有用的字符串)來支持併發 –

1

因爲你標記起來我以爲我會升級它到答案關閉和代表:

你可以將html文件保存到磁盤,然後使用重定向到作爲解決方法,但我找不到任何其他方式做到這一點。如果你要那樣做,請確保您添加獨特的FIME名字(我發現日期時間是一個有用的字符串),以支持併發,

MD