BI報表中如何將網格式報表打印成其它樣式(圖解) 網格式報表打印成其它樣式的方法
發表時間:2023-08-30 來源:明輝站整理相關軟件相關文章人氣:
[摘要]實現思路:可以定義另外一個有固定格式的模板,此模板的數據是根據填報網格式報表中選中的值進行過濾,而在填報網格式報表中則需要在按鈕的點擊事件中定義js,js首先要獲取選中行的數據,然后調用FineReport內置的打印方法,將選中的值以參數的方式加入到打印方法的URL中傳到被打印的模板中。 腳本之家...
實現思路:可以定義另外一個有固定格式的模板,此模板的數據是根據填報網格式報表中選中的值進行過濾,而在填報網格式報表中則需要在按鈕的點擊事件中定義js,js首先要獲取選中行的數據,然后調用FineReport內置的打印方法,將選中的值以參數的方式加入到打印方法的URL中傳到被打印的模板中。
腳本之家友情提醒大家:
需要的原料:1.BI報表FineReport7.1.1 。.大小:148.2M 適用平臺:windows/linux
具體方法步驟請看下面:
第一步:新建需要打印格式模板
定義數據集
由于此模板要根據選中的值進行打印,因此要在此模板中定義參數,在此我們將參數定義成數據集參數。
新建工作簿,增加數據集ds1,SQL語句為:SELECT * FROM 訂單 where 訂單ID in (${ID})。
第二步:表樣設計
將表樣設計成要打印的效果,在此我們將模板設置成如下樣式:
將B2單元格的左父格設置成無,并將其余單元格的左父格設置為B2。
將B3和D3設置形態。
同樣也可以對模板進行分欄。

第三步:保存模板
第四步:修改預覽模板
打開模板
第五步:修改模板
此模板,我們只要修改按鈕的名稱和按鈕的js即可,因此我們將按鈕名稱修改成“打印”,并將js修改成如下代碼:
var $span = $('.fr-checkbox-checkon'); //獲取選中的復選框
var darray = [];
var $tds = $("td").has($span); //獲得選中復選框的單元格
for (var i = 0, len = $tds.length; i < len; i ++) { //遍歷選中的單元格
var id = $($tds[i]).attr("id"); //給選中的單元格增加id屬性
var idn = id.replace("A","B"); //將復選框所在的A列換成客戶編號所在的B列
var vv=document.getElementById(idn).innerHTML; //獲取選中單元格所在B列的數據
darray.push(vv);
}
FR.doURLPDFPrint("${sevletURL}ReportServer?reportlet=/doc/Form/FormFAQ/PrintCol.cpt&ID="+darray); //調用打印方法,URL為之前做好的模板路徑
注:若獲取的vv值為字符串,要將其放入數組中則需要修改成darray.push("'"+vv+"'")。
第六步:保存模板
第七步:效果查看

填報預覽PrintOtherStyle.cpt,選中幾行數據后,點擊打印按鈕,就會按照下圖的效果進行打印。
BI報表中如何將網格式報表打印成其它樣式
第八步:選中一些數據讓其按照以如下圖所示的樣式進行打印

Office辦公軟件是辦公的第一選擇,這個地球人都知道。除了微軟Office,市面上也存在很多其他Office類軟件。