反饋已提交
網絡繁忙
有時候我們希望在某張報表中可以透過傳參的方式列印其他報表。
例如:有一張訂單表,對於每條記錄後面都希望有一個“列印”按鈕,點選的時候可以將該記錄對應的明細報表列印出來。效果如下圖所示:
透過 JavaScript 類型的超級連結,實現點選超連結後呼叫 FineReport 的列印方法,傳遞需要列印的報表路徑及參數,將報表列印出來。
1)子範本是被列印的範本,建立普通報表,新增資料集 ds1:SELECT * FROM 訂單明細
2)設計子範本表格,將對應欄位拖到儲存格中,如下圖所示:
3)為了在主範本中將參數傳遞給子範本,需要透過參數設定資料過濾。子範本和主範本共有的欄位是訂單ID,所以用這個欄位來設定過濾。如下圖所示:
1)主範本是列印的地方,建立普通報表,新增資料集 ds1:SELECT * FROM 訂單 limit 10
2)設計主範本表格,將對應欄位拖到儲存格中,其中 F2 儲存格填寫文字“列印”,這個儲存格後面會新增超連結,如下圖所示:
主範本選中 F2 儲存格,新增一個 JavaScript 類型的超級連結,新增一個id,其值為=A2,作為傳參用,然後填寫 JavaScript 程式碼,如下圖所示:
JavaScript 程式碼如下:
var reportURL="/webroot/decision/view/report?viewlet=doctw%252FParameter%252F%25E5%258F%2583%25E6%2595%25B8%25E5%2582%25B3%25E9%2581%259E%25E5%2588%2597%25E5%258D%25B0_%25E5%25AD%2590%25E7%25AF%2584%25E6%259C%25AC.cpt&id=" +id; //範例用到的子範本路徑,可根據實際修改FR.doURLPDFPrint(reportURL); //呼叫FR列印方法
主範本點選分頁預覽,效果如 1.1 應用場景中所示。
注1:列印不支援行動端。
注2:填報預覽也可以透過按鈕元件的點選事件來呼叫列印事件,並且可以傳遞參數。
已完成範本參見:
%FR_HOME%\webapps\webroot\doctw\Parameter\參數傳遞列印_主範本.cpt
%FR_HOME%\webapps\webroot\doctw\Parameter\參數傳遞列印_子範本.cpt
點選下載範本:
參數傳遞列印_主範本.cpt
參數傳遞列印_子範本.cpt
滑鼠選中內容,快速回饋問題
滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。
不再提示
10s後關閉
反馈已提交
网络繁忙