反饋已提交

網絡繁忙

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

QUERY

一、概述

  1. FineReport10.0(2019-03-01)版本之後,提供了一個用於解析 JSON 文字的函式,有以下兩個作用:

  2. 用於提取內建參數 $fine_position 中的值,使用方式:=<mark>query</mark>($fine_position, "function(){return $ instanceof Array ? $.map(el => el.jobTitle) : $.jobTitle}")。

  3. 用於提取 JSON 格式的文字中的特定值,用於到報表中展示,避免使用報表中的文字函式進行各種切割。

  4. 該函式的第一個參數為待處理的字串,可以是一個 JSON 格式的字串,也可以是一個普通字串。

  5. 該函式的第二個參數是查詢語句,是一個標準的 JavaScript 語句,其中用 $ 表示第一個參數的值,可以參與運算。

  6. 使用方式:

  7. QUERY("{\"job\":\"司機\",\"age\":45}", "$.age")等於45。

    QUERY("{\"job\":\"司機\",\"age\":45}", "function() {return $.age > 50 ? 100 : 0}")等於0。

    QUERY("[\"a\",\"b\"]", "$")等於["a","b"]。

    QUERY("[\"a\",\"b\"]", "$[1]")等於"b"。

    QUERY("{\"value\":20.5,\"status\":true}", "$.status")等於true。

    QUERY("{\"value\":20.5,\"status\":true}", "$.value")等於20.5。

    QUERY("hello", "$")等於"hello"。

    QUERY("hello", "$.slice(0, 3)")等於"hel"。

    QUERY("hello", "$ + \" world\"")等於"hello world"。


附件列表


主題: 函式應用
  • 有幫助
  • 沒幫助
  • 只是瀏覽
  • 圖片不清晰
  • 用語看不懂
  • 功能說明看不懂
  • 操作說明太簡單
  • 內容有錯誤

文 檔回 饋

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

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

不再提示

10s後關閉