1. 概述
1.1 預期效果
如何實現在 iframe 中嵌入報表?效果如下圖所示:
1.2 實現思路
給按鈕控件添加點擊事件,添加 iframe 彈框并在其中嵌入模板,使用 remoteServletURL 獲取模板路徑。
2. 示例
2.1 添加按鈕控件
新建普通報表,在右側屬性面板中點擊控件設置,添加按鈕控件,按鈕名字爲點擊彈框。如下圖所示:
2.2 添加點擊事件
選中按鈕控件,在右側屬性面板中點擊控件設置>事件,添加點擊事件,點擊按鈕可在彈窗中預覽「GettingStarted.cpt」模板。添加參數 cc,值用公式表示爲remoteServletURL,用來獲取模板路徑。如下圖所示:
JavaScript 代碼如下所示:
var iframe = $("<iframe id='inp' name='inp' width='100%' height='100%' scrolling='yes' framedorder='0'>");
// 對話框内 iframe 參數的命名,默認寬高占比是 100%,可向下滾動
iframe.attr("src", cc+"?reportlet=GettingStarted.cpt");
// 給 iframe 添加 src 屬性
var o = {
width : 700,//對話框寬度
height: 500//對話框高度
};
FR.showDialog("添加", o.width, o.height, iframe,o);//彈出對話框
若打開的模板在 %FR_HOME%\webapps\webroot\WEB-INF\reportlets 文件夾的子文件夾中,代碼可這樣修改:
iframe.attr("src", cc+"?reportlet=demo/analytics/financial/EVA經濟附加值模型.cpt");
2.3 效果預覽
保存報表,點擊填報預覽,效果如本文 1.1 節預期效果所示。
注:不支持移動端
3. 模板下載
已完成模板可參見:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\\doc\Form\WidgetExample\iframe中嵌入報表.cpt
點擊下載模板:iframe中嵌入報表.cpt