帆软报表嵌入python程序_C#教程之C#服务器端生成报告文档:使用帆软报表
一、帆軟報(bào)表簡(jiǎn)介
報(bào)表工具中,帆軟報(bào)表相比Crystal Report(水晶報(bào)表)、SQL Server Report Service(SSRS)等報(bào)表工具來(lái)說(shuō)算是佼佼者,此外帆軟報(bào)表在統(tǒng)計(jì)圖表、數(shù)據(jù)填報(bào)方面應(yīng)用也不錯(cuò),此處僅針對(duì)帆軟的基本報(bào)表功能的應(yīng)用說(shuō)事兒。
http://www.fanruan.com/
二、服務(wù)器端集成
帆軟報(bào)表使用Java實(shí)現(xiàn),可部署在Tomcat上,客戶端查看報(bào)表時(shí)可直接在瀏覽器上呈現(xiàn)。
對(duì)于企業(yè)應(yīng)用中報(bào)告文檔的生成,可通過(guò)模擬Web請(qǐng)求獲取到報(bào)表/報(bào)告的Word、Pdf輸出文檔;如果需要對(duì)生成的文檔做二次加工,例如與其他文檔合并等,可接著使用Word操作組件、服務(wù)(例如DocX、MS Word DCOM等)或PDF操作組件(iTextSharp等)操作文檔,最終生成一份完整報(bào)告。
例如帆軟報(bào)表服務(wù)路徑為http://localhost:8075/WebReport/ReportServer,傳遞參數(shù)reportlets可指定要訪問(wèn)的報(bào)表路徑,傳遞給該報(bào)表的參數(shù)可繼續(xù)通過(guò)paramname=paramvalue的格式追加到url上,使用HTTP Get請(qǐng)求該URL,則可訪問(wèn)到報(bào)表。
參數(shù)format指定輸出文件格式,可指定為pdf、doc、xls,輸出PDF、Word、Excel文件;需要注意的是,輸出的Word文件實(shí)質(zhì)是RTF文件,如果需要用DocX等Office Open XML操作時(shí),首先需要轉(zhuǎn)換格式,最好的方式莫過(guò)于使用微軟Word DCOM;同樣,Excel也是97-2003格式;報(bào)表輸出這方面來(lái)說(shuō),帆軟做的不夠好。
請(qǐng)求報(bào)表:
HttpWebRequest request =(HttpWebRequest)WebRequest.Create(Url);
request.Method= "GET";
HttpWebResponse response;try{
response=(HttpWebResponse)request.GetResponse();
}catch(Exception ex)
{
}if (response.ContentType != "application/pdf" && response.ContentType != "application/msword" && response.ContentType != "application/x-excel")
{
response.Close();
}
Stream stream= response.GetResponseStream();
寫到文件:
int bufferSize = 2048;byte[] bytes = new byte[bufferSize];stringfileSaveFolder;
fileName=Guid.NewGuid().ToString();string fileSaveName = fileName +extName;string fileSavePath = fileSaveFolder +fileSaveName;
FileStream fs= newFileStream(fileSavePath, FileMode.Create);int length = stream.Read(bytes, 0, bufferSize);while (length > 0)
{
fs.Write(bytes,0, length);
length= stream.Read(bytes, 0, bufferSize);
}
stream.Close();
fs.Close();
總結(jié)
以上是生活随笔為你收集整理的帆软报表嵌入python程序_C#教程之C#服务器端生成报告文档:使用帆软报表的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 有限差分法的基本思想
- 下一篇: c# char unsigned_dll