反饋已提交

網絡繁忙

當前為10.0版本文檔,更多實例內容將在最新幫助文檔中展現,點選跳轉至 最新版幫助文檔

FR

一、概述

  1. 預覽報表時,報表 servlet 會將 cpt 模板轉為 HTML ,在這個 HTML 的 head 頭部中會引入 FR 的 JavaScript,如下:

  2. <script type="text/javascript" src="/webroot/decision/view/report?op=emb&resource=finereport.js"></script>
  3. 這個 finereport.js 中包含了許多內建的 function 以及一些公有的屬性,不管在範本中還是其他網頁中,只要引入了 finereport.js ,就能夠透過 FR.xxx 的形式呼叫公有的屬性與方法。

  4. 所有的地方包括 web 頁面事件、元件事件、超鏈 JavaScript、決策報表事件中都可以獲取到 FR 物件。

二、使用例項

1
在範本中使用。
  1. 訪問範本時會自動引入 finereport.js,因此在範本的 JavaScript 指令碼中可以直接使用 FR.xxx 來呼叫方法。

  2. 新增事件:

    此處以顯示對話方塊為例,對元件新增一個「點選」事件,編輯 JavaScript 指令碼,如下圖1所示。

  3. 程式碼如下。

  4. 效果展示:儲存並填報預覽,點選頁面的"Test"按鈕,會出現一個對話方塊,如下圖2所示。

FR.showDialog("CES",600,400,"CESSSS")

2
在網頁中使用。
  1. 如果需要在自己的網頁中呼叫 FR 的方法,需要先引入 finereport.js ,再透過 FR.xxx 來呼叫。

  2. 新增程式碼:同上例,新建一個 HTML 檔案新增如下程式碼。

  3. 效果展示:把上面的 HTML 保存到%FR_HOME%\webapps\webroot路径下,用浏览器访问此页面,效果如下图所示。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
 <head>
  <title>FineReport Demo</title>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  <!-- Include finereport.js -->
  <script type="text/javascript" src="/webroot/decision/view/report?op=emb&resource=finereport.js"></script>
  <!-- Include finreport.css -->
  <link rel="stylesheet" type="text/css" href="/webroot/decision/view/report?op=emb&resource=finereport.css&cssVersion=1591683351598">
 </head>
 <body>
  <input type="button" value="Test" onclick="showDialog();" />
  <script>
    function showDialog(){
      FR.showDialog("CES", 600, 400, "CESSSS");
    }
  </script>
 </body>  
</html>

3.png

三、FR 常用方法

1
FR.ajax(options)。
  1. 說明:傳送 Ajax 請求,具體參考(AJAX

  2. Parameters:

    options JSON:必填,請求參數。

  3. Returns:void。

2
FR.showDialog(title, width, height, innerContent)。
  1. 說明:顯示一個對話框。

  2. Parameters:

    title:String,標題。

    width:Number,對話框寬度。

    height:Number,對話框高度。

    innerContent:String,對話框內容。

  3. Returns:void。

3
FR.closeDialog()。
  1. 說明:關閉對話框。

  2. Parameters:

    None。

  3. Returns:void。

4
FR.doHyperLinkByGet(url, para, target, feature)。
  1. 說明:超級連結,GET 方式傳遞引數 para 到 target 中,並在 feature 裡面設定視窗屬性。具體參考(連結)。

  2. Parameters:

    url:String,必填,跳轉連結。

    para:JSON,选填,傳遞參數。

    target:String,选填,超連子頁的開啟位置。

    feature:JSON,选填,超連開啟位置的屬性。

  3. Returns:void。

5
FR.doHyperLinkByPost(url, para, target, feature)。
  1. 說明:超級連結,POST 方式傳遞參數 para 到 target 中,並在 feature 裡面設定視窗屬性。具體參考(連結)。

  2. Parameters:

    url:String,必填,跳轉連結。

    para:JSON,选填,傳遞參數。

    target:String,选填,超連子頁的開啟位置。

    feature:JSON,选填,超連開啟位置的屬性。

  3. Returns:void。

6
FR.doURLPrint(config)。
  1. 說明:列印,具體參考(JS 调用 FR 打印方法)。

  2. Parameters:

    config:JSON,必填,列印設定。

  3. 。Returns: void。

7
FR.isArray(object)。
  1. 說明:物件是否為陣列,是返回 true,否返回 false。

  2. Parameters:

    object:Object,某個物件。

  3. Returns: Boolean。

8
FR.isEmpty(object)。
  1. 說明:物件是否為空,是返回 true,否返回 false。

  2. Parameters:

    object:Object,某個物件 。

  3. Returns:Boolean。

9
FR.jsonDecode(encodedString)。
  1. 說明:對 jsonEncode 過的字串解碼。

  2. Parameters:

    encodedString:String,編碼過的字串。

  3. Returns:String。

10
FR.jsonEncode(decodedString)。
  1. 說明:對字串進行 jsonEncode 編碼。

  2. Parameters:

    decodedString:String,待編碼的字串。

  3. Returns:String。

11
FR.removeEvaluate(formula)。
  1. 說明:執行 FR 內建公式,返回公式計算的結果。例如:var a = FR.remoteEvaluate("sum(A1,A2)")表示執行 sum(A1,A2)。

  2. 注:remoteEvaluate(String) 方法不支持 tablename.select 函数。

  3. Parameters:

    ormula:String,必填,具體公式。

  4. Returns:Object。

附件列表


主題: JavaScript應用
已經是第一篇
已經是最後一篇
  • 有幫助
  • 沒幫助
  • 只是瀏覽
  • 圖片不清晰
  • 用語看不懂
  • 功能說明看不懂
  • 操作說明太簡單
  • 內容有錯誤

文 檔回 饋

滑鼠選中內容,快速回饋問題

滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。

不再提示

10s後關閉