


上圖是我在c/s模式下傳引數呼叫fastreport報表,顯示正常




下面是我打算在web頁面點擊列印按鈕實作呼叫該報表,代碼還是之前c/s模式下的代碼,點擊列印按鈕,程式會報錯,然后報表顯示這出來,請問下在mvc模式下要怎么寫列印按鈕的代碼
uj5u.com熱心網友回復:
求大佬指導下,非常感謝uj5u.com熱心網友回復:
要使用WebReport,類似以下:public void Print()
{
WebReport webReport = new WebReport();
System.Data.DataSet dataSet = new System.Data.DataSet();
dataSet.ReadXml("C://Program Files (x86)//FastReports//FastReport.Net//Demos//Reports//nwind.xml");
webReport.Report.RegisterData(dataSet, "NorthWind");
webReport.Report.Load("C://Program Files (x86)//FastReports//FastReport.Net//Demos//Reports//Simple List.frx");
webReport.EmbedPictures = true;
webReport.PrintHtml();
}
uj5u.com熱心網友回復:
官方說的和我要實作的功能不一樣,我要做的是點擊列印按鈕,然后傳引數打出不同資料的報表
uj5u.com熱心網友回復:
你看report是不是為null了。這個除錯完。我們在討論是不是 Server.MapPath的路徑正確問題
uj5u.com熱心網友回復:
可以加我QQ看下嗎,3068516469uj5u.com熱心網友回復:
建議你用lodop,可以列印指定的網頁,內容根據引數生成即可。即使用Fastreport也是生成網頁,然后客戶端列印的,不是在服務器上去列印
uj5u.com熱心網友回復:
在視圖頁面點擊按鈕,從后臺取資料,填充到頁面頁面列印推薦adobe列印插件
或者直接用js呼叫window.print();
cs/bs差別大了
uj5u.com熱心網友回復:
我看了下lodop插件,他這個好像比較麻煩,格式全在代碼里面寫的,不太適合開發與實施分開。。
uj5u.com熱心網友回復:
不適合目前的專案。。uj5u.com熱心網友回復:
安裝完fastreport之后自帶有相關的示例,可以打開專案參考
uj5u.com熱心網友回復:
你好,我參照官網的案例,每次都是在webReport.PrintHtml();不能實體化

uj5u.com熱心網友回復:
Controller里不能直接PrintHtml(),要回傳ViewBag什么的,前端再GetHtml():
uj5u.com熱心網友回復:
您好,可以加下你QQ嗎?我這邊要實作的功能和你發的不太一樣,要在web頁面點擊列印按鈕,然后根據傳遞的引數調這張報表列印不同的資料,他們官網https://www.fastreportcn.com/post/1897.html也是這樣寫的
uj5u.com熱心網友回復:
我試了2018版本,測驗官方的代碼是可以運行的,不知道是不是你的web.config配置里沒有加上下面這項:<handlers>
<add name="FastReportHandler" path="FastReport.Export.axd" verb="*" type="FastReport.Web.Handlers.WebExport"/>
</handlers>
uj5u.com熱心網友回復:
uj5u.com熱心網友回復:
看看這兩個地方的配置有沒有
uj5u.com熱心網友回復:
奇了怪了,我也是按照他們官方的寫法,只不過dataset是從資料庫獲取的,不知道為什么會這樣。。。



uj5u.com熱心網友回復:
您好,想問下你這個是那個demo里面的,為啥我沒找到


uj5u.com熱心網友回復:
示例就是你給的鏈接那個照著做的啊,在MvcRazor里面添加一個頁面和兩個方法就好了。你先用加載xml試下,如果可以成功的話就是資料源的問題了吧。
uj5u.com熱心網友回復:
也可以試試highreport報表,是純C#開發的h5報表,完成支持實施人員零代碼實施報表
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/82437.html
標籤:ASP.NET
