內建參數

  • 文檔創建者:Wendy123456
  • 編輯次數:24
  • 最近更新:帆软用户UT9OHLQhgP 于 2026-10-10
  • 1. 概述

    1.1 版本說明

    FineDataLink 版本功能變動
    1.7增加內建參數:${cyctime}、${workname.opresult}、${jobname.opresult}
    4.0.3

    1)增加內建參數:${prepose.successInfo}、${prepose.failedInfo}

    2)${workname.opresult}內建參數匯出的三個值中,fail 改成了 error

    3)${jobname.opresult}內建參數,新增匯出值 skipped

    4.0.3.1
    新增參數:${loopTimes}
    4.1.0新增參數:${workname.jobname.opresult}、${workname}
    4.1.2優化內建參數 ${cyctime} 的取值邏輯
    4.1.8.3內建參數類型由預設正文改為Date、int等,詳情參見本文1.3 節。
    4.2.4.3${workname} 在預覽資料時,會顯示實際值
    4.2.14.4新增內建參數${檔案傳輸節點名稱.success_files}、${檔案傳輸節點名稱.failed_files},分別代表 檔案傳輸 節點成功傳輸的檔案名稱列表、失敗傳輸的檔案名稱列表
    5.0.7.3新增參數:${呼叫檢查任務節點名稱.det_execute_id}、${呼叫檢查任務節點名稱.det_result}

    1.2 應用場景

    FDL 提供了一些內建參數,這些參數無需定義即可直接呼叫。

    1.3 功能簡介

    目前可以使用的內建參數如下:

    內建參數
    生效範圍用法定義參數類型
    變更記錄
    ${cyctime}當前任務內直接引用

    ${cyctime} 為 ETL 任務每次運作的時間節點,格式為yyyy-mm-dd hh:mm:ss,匯出的實際值格式為:2021-09-09 20:45:50,取值精確到時分秒

    這個時間是任務進入運作佇列的時間,並非實際運作的時間,實際運作的時間比進入運作佇列的時間要晚一些

    當需要使用任務運作的時間做一些操作時,就可以引用內建 ${cyctime} 參數,例如:

    某個任務 30 天運作一次,那每次只需更新運作時間節點( ${cyctime})前 30 天的資料就可以了

    日期類型:date1.7版本,增加此參數
    ${workname}當前任務直接引用當前任務名稱正文類型:String4.1.0版本,增加此參數
    ${prepose.successInfo}當前任務內直接引用步驟流中,該節點上游節點中,所有執行成功的節點名稱(陣列字串)

    舉例:[[SQL腳本],[資料轉換]]

    正文類型:String4.0.3版本,增加此參數
    ${prepose.failedInfo}當前任務內直接引用步驟流中,該節點上游節點中,所有執行失敗的節點名稱(陣列字串)

    舉例:[[SQL腳本],[資料轉換]]

    正文類型:String4.0.3版本,增加此參數
    ${loopTimes}循環容器內直接引用容器內當前循環次數,初次為 1 ,後續每次循環增量加 1數值類型:int4.0.3.1版本,增加此參數
    ${任務名稱.opresult}所有任務需選擇任務

    workname是任務的名稱,opresult是最近一次運作的結果。範例:${任務1.opresult}

    可以匯出三個值:

    • success:任務運作成功

    • error:任務運作報錯(4.0.3 版本之前,該值為 fail)

    • invalid:任務中止運作(異常任務,一般是任務運作時關閉了FineDataLink,啟動後會將狀態置為invalid)

    • interrupt:任務中止運作(手動點了終止按鈕,狀態就是interrupt)

    這個參數一般用於設定 條件分支 節點的判斷條件

    正文類型:String

    1.7版本,增加此參數

    4.0.3版本,fail 改成了error

    ${節點名稱.opresult}當前任務內需選擇節點當前任務-指定節點的最近一次運作結果; 範例:${資料同步.opresult}

    可以匯出三個值:

    • success:節點運作成功

    • fail:節點運作失敗

    • skipped:節點跨越執行(4.0.3 版本新增)

    正文類型:String

    1.7版本,增加此參數

    4.0.3版本,新增skipped狀態

    ${任務名稱.節點名稱.opresult}有定時任務管理權限的任務下的節點(除當前任務,當前任務節點還是現有參數jobname.opresult)需選擇節點+任務

    指定任務(非當前任務)-指定節點的最近一次運作結果; 範例:${任務1.資料同步.opresult}

    可以匯出三個值:

    • success:節點運作成功

    • fail:節點運作失敗

    • skipped:節點跨越執行

    正文類型:String4.1.0版本,增加此參數
    ${呼叫檢查任務節點名稱.det_execute_id}當前任務需選擇呼叫檢查任務節點

    指定選擇的呼叫檢查任務的最近一次的運作記錄id;

    範例:${呼叫檢查任務.det_execute_id}


    正文類型:String5.0.7.3 及之後版本,增加此參數
    ${呼叫檢查任務節點名稱.det_result}當前任務需選擇呼叫檢查任務節點

    當前任務-指定選擇的呼叫檢查任務的最近一次的檢查結果;

    範例:${呼叫檢查任務.det_result}

    可以匯出四個值:透過、不透過、 檢查失敗、中斷


    正文類型:String5.0.7.3 及之後版本,增加此參數
    ${檔案傳輸節點名稱.success_files}當前任務
    需選擇檔案傳輸功能說明節點

    當前任務-指定檔案傳輸節點成功傳輸的檔案名稱列表; 範例:${檔案傳輸.opresult}

    注:需在檔案傳輸節點後使用此參數,即節點順序為:檔案傳輸節點→使用該參數的節點

    正文類型:String4.2.14.4 及之後版本,可使用此參數
    ${檔案傳輸節點名稱.failed_files}當前任務

    當前任務-指定檔案傳輸節點失敗傳輸的檔案名稱列表; 範例:${檔案傳輸.opresult}

    注:需在檔案傳輸節點後使用此參數,即節點順序為:檔案傳輸節點→使用該參數的節點

    正文類型:String

    2. ${cyctime}——調度配置任務運作時間

    2.1 取值邏輯說明

    • 如果實體是由「排程管理」觸發生成,${cyctime} 值為每次調度開始的時間。

    • 如果實體是使用者「手動觸發」\「事件調度」觸發生成,或 重試 時未指定業務日期,則 ${cyctime} 的時間值為 實體開始構建時間

    • 如果實體是使用者「重試實體」觸發生成,若指定了業務日期,則 ${cyctime} 的時間值為使用者指定的時間。

    ${cyctime} 的格式為yyyy-mm-dd hh:mm:ss,匯出的實際值格式為:2021-09-09 20:45:50,取值精確到時分秒。

    2.2 範例

    範例:實體是由「排程管理」觸發生成。

    使用內建參數 ${cyctime} ,實現每次運作任務時,只同步運作時間點前 31 天的資料。

    1)建立定時任務,拖入一個「資料同步」節點。

    2)如下圖設定節點的資料來源,其中 SQL 語句的作用是:從表「出庫臨時表」中取出 前 31 天的資料。

    SQL 語句如下:

    SELECT * FROM `demo1`.`出庫臨時表` 
    where 出庫日期>DATE_SUB('${cyctime}',interval 31 day)

    點選「資料預覽」,可看到取出的是系統當前時間前 31 天的資料。如下圖所示:

    注:點選「資料預覽」時 cyctime 的預設值為系統的當前時間;而當任務運作時 cyctime 的值為任務調度執行的時間,所以資料預覽的資料與實際運作寫入到資料庫的資料可能不一致。

    3)後續步驟中使用者根據實際情況設定「資料去向」、「執行頻率」即可。「資料同步」節點的使用範例可參見:資料同步-資料庫表

    3. ${workname.opresult}——條件分支節點判斷

    內建參數 ${workname.opresult} 一般用於設定 條件分支 節點的判斷條件。

    範例:「資料複製和分流」定時任務執行成功後再執行「任務CC」。4.0.30 及之後版本,該場景可用 事件調度 實現

    1)「任務CC」中是一個「資料同步」節點,實現跨庫同步。如下圖所示:

    2)現希望「資料複製和分流」定時任務執行成功後再執行「任務CC」,使用內建參數 ${workname.opresult} 實現。

    在「資料同步」節點前拖入「條件分支」節點,「條件分支」節點中判斷條件設定為:${1-Data Synchronization.opresult}等於success

    需注意,4.1.0 及之後版本,「條件分支」節點中使用該參數時,需要選擇任務。如下圖所示:

    1698129832806472.gif

    4.1.0 之前版本,「條件分支」節點中使用該參數時,參數欄直接填「資料複製和分流.opresult」然後回車,最右側正文框填「success」。

    4. ${jobname.opresult}——當前任務指定節點運作結果

    注:該參數使用時,格式為:${上游節點名稱.opresult}

    1)「訊息通知」節點訊息內容修改為:${資料同步.opresult}。如下圖所示:

    2)「資料同步」節點執行成功後,企業微信群訊息傳回「success」,如下圖所示:

    15.png

    5. ${prepose.successInfo}——上游運作成功節點名稱

    前期準備:參考 遠端執行判斷 文檔中的 3.1、3.2、3.3.2 節內容。

    1)「訊息通知」節點訊息內容修改為:${prepose.successInfo}。如下圖所示:

    16.png

    2)任務執行後,企業微信群訊息如下圖所示:

    訊息通知內容為:「訊息通知」上游節點中,所有執行成功的節點名稱「銷量表抽取資料」。

    17.png

    6. ${prepose.failedInfo}——上游運作失敗節點名稱

    1)參考本文第五章範例,將「訊息通知」節點訊息內容修改為:${prepose.failedInfo}。如下圖所示:

    18.png

    2)任務執行後,企業微信群訊息如下圖所示:

    訊息通知內容為:「訊息通知」上游節點中,所有執行失敗的節點名稱「salesum」。

    19.png

    7. ${loopTimes}——循環容器當前循環次數

    前期準備:參考 循環容器節點 文檔

    該在循環容器內部生效,容器內當前循環次數,初次為 1 ,後續每次循環增量加。

    1)在「循環容器」節點內拖入「訊息通知」節點。設定介面如下圖所示:

    20.png

    2)任務執行後,傳回循環次數,如下圖所示:

    1654140060139914.png

    8. ${workname}-當前任務名稱

    取當前任務名稱。

    範例:「訊息通知」節點中使用該參數,通知任務執行成功。

    1)任務「測試內建參數」中,存在一個「資料同步」節點和一個「訊息通知」節點。

    2)「訊息通知」節點中,設定介面如下圖所示:

    3)任務執行成功後,通知內容如下圖所示:

    1698199018162358.png

    9. ${workname.jobname.opresult}-非當前任務(指定任務)節點運作結果

    指定任務(非當前任務)-指定節點的最近一次運作結果; 範例:${任務1.資料同步.opresult}

    注:若使用者希望獲取當前任務中的節點,建議使用${jobname.opresult}。

    範例:「01資料同步」任務中的「資料同步」節點執行成功後,再執行「任務2」中的「資料同步」節點。

    1)「任務2」中是一個「資料同步」節點,實現跨庫同步。如下圖所示:

    2)現希望「01資料同步」任務中的「資料同步」節點執行成功後,再執行「任務2」中的「資料同步」節點。

    在「資料同步」節點前拖入「條件分支」節點,「條件分支」節點中判斷條件設定如下所示:

    1698373805338091.gif

    10. ${呼叫檢查任務節點名稱.det_execute_id}

    5.0.7.3 及之後版本,新增此內建參數。

    當前任務-指定選擇的呼叫檢查任務的最近一次的運作記錄 id;範例:${呼叫檢查任務.det_execute_id}

    在訊息通知中,可呼叫此參數通知異常檢查任務的運作記錄 id,方便後續排查。


    11. ${呼叫檢查任務節點名稱.det_result}

    5.0.7.3 及之後版本,新增此內建參數。

    當前任務-指定選擇的呼叫檢查任務的最近一次的檢查結果;範例:${呼叫檢查任務.det_result}

    在定時任務中呼叫檢查任務,可使用「條件分支」根據檢查任務的結果執行不同的後續流程。詳情請參見:呼叫檢查任務

    12. ${檔案傳輸節點名稱.success_files}

    該參數具體說明請參見本文 1.3 節,可在當前任務內獲取指定檔案傳輸節點成功傳輸的檔案名稱列表。

    範例:

    1)檔案傳輸節點傳輸某個資料夾下的檔案。如下圖所示:


    2)拖入一個資料同步節點,使用${檔案傳輸節點名稱.success_files}參數,讀取傳輸成功的檔案列表,並寫入到指定表中進行記錄。如下圖所示:


    3)任務運作後,結果如下圖所示:


    13. ${檔案傳輸節點名稱.failed_files}

    範例與本文 12 章內容類似,可參考 12 章內容使用該參數。

    需要注意的是,若檔案傳輸節點傳輸失敗,將不會執行後面的節點,若想記錄失敗傳輸的檔案名稱列表,右鍵點選遠端,遠端執行判斷修改為無條件執行即可。如下圖所示:





    附件列表


    主題: 資料開發-定時任務
    已經是第一篇
    已經是最後一篇
    • 有幫助
    • 沒幫助
    • 只是瀏覽
    中文(繁體)

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

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

    不再提示

    10s後關閉

    獲取幫助
    線上支援
    獲取專業技術支援,快速幫助您解決問題
    工作日9:00-12:00,13:30-17:30在线
    頁面反饋
    針對當前網頁的建議、問題反饋
    售前咨詢
    業務咨詢
    電話:0933-790886或 0989-092892
    郵箱:taiwan@fanruan.com
    頁面反饋
    *問題分類
    不能為空
    問題描述
    0/1000
    不能為空

    反馈已提交

    网络繁忙