1. 概述
1.1 版本
| FineDataLink 版本 | 功能說明 |
|---|---|
| 4.1.5.5 | - |
| 4.2.13.4 | 檔案傳輸節點中,檔案來源和去向支援:Server Message Block |
| 4.2.14.4 | 新增內建參數${檔案傳輸節點名稱.success_files}、${檔案傳輸節點名稱.failed_files},分別代表檔案傳輸節點成功傳輸的檔案名稱列表、失敗傳輸的檔案名稱列表 |
| 4.2.16.4 | 當配置的資料夾地址不存在時,可選擇「自動建立」或「運作報錯」 |
1.2 應用場景
簡道雲/API附件移動:使用者想要將簡道雲/APIAPI中的附件做資料歸檔,下載附件同步至FTP伺服器或本地或其他業務系統(APIAPI);
FTP/本地間檔案移動:FTP檔案讀取後移動至FTP其他資料夾做備份。

注:簡道雲附件需要首先使用簡道雲輸入節點獲取附件下載 URL 在進行檔案傳輸,詳情參見本文第四章最佳實踐。
1.3 功能簡介
FineDataLink 支援使用「檔案傳輸」節點,進行多種類型的下載/上傳檔案:API下載/上傳、伺服器本地目錄、FTP/SFTP伺服器、Amazon S3、Server Message Block。
注:僅對檔案流本身做同步,而非取檔案內容資料。

注:該節點不受髒資料臨界值的控制,遇到髒檔案就報錯。
| 支援傳輸的檔案類型 |
|---|
| 檔案類型支援 Excel ,可填寫後綴名:.xls、.xlsx、.XLS、.XLSX |
檔案類型支援 CSV 時,可填寫後綴名:csv、CSV、txt、TXT、tsv、log、dt(csv 和 xml 混合格式)/dbf 等。 |
| 自訂檔案類型:可讀取 xml、json、png、mp4 等後綴的檔案類型。 |
2. 前提條件
如需使用伺服器本地目錄、FTP/SFTP、Amazon S3 或 Server Message Block作為檔案來源或者去向,請先建立對應資料連結:
3. 功能說明
3.1 檔案來源
3.1.1 API
資料源選擇 API,則可以獲取 API API附件。該方式預設為下載檔案,不限制檔案後綴類型,若 API 不是下載檔案則運作後端報錯。

3.1.2 FTP/SFTP
資料源選擇檔案輸入-FTP/SFTP,則可以獲取伺服器下的檔案。
讀取方式支援:「檔案讀取」和「資料夾讀取」
當讀取方式選擇為「檔案讀取」,「檔案地址」支援使用參數。
注1:讀取檔案後綴不區分大小寫,根據使用者手動輸入檔案後綴讀取檔案,支援寫多種格式,以逗號為分隔符(自動獲取(FTP/SFTP)/手動上傳(本地)),跨越路徑下非該格式檔案。
注2:「讀取檔案後綴」中不限制檔案後綴類型。

當讀取方式選擇為「資料夾讀取」,「資料夾地址」支援指定資料夾讀取,同時也支援使用參數。

| 配置項 | 說明 |
|---|---|
| 資料夾地址 | 可選擇有權限的資料夾,支援使用參數,使用方法與檔案輸入相同。 |
| 讀取子資料夾 | 勾選時,讀取時包括子資料夾中的檔案。 不勾選,讀取時忽略子資料夾中的檔案。 |
| 檔案篩選條件 | 在選擇「資料夾讀取」時顯示。 允許配置篩選條件過濾資料夾下的多個檔案,獲取符合要求的部分檔案進行讀取。 檔案篩選條件僅在配置資料夾的情況下生效。 支援新增條件,支援為檔案名稱(包含後綴)、檔案修改時間指定篩選條件:
支援透過參數篩選,判斷邏輯說明詳情參見:條件判斷邏輯說明 |
注:勾選「讀取子檔案」按鈕後,子檔案不同路徑下重名,例如資料夾a下有以下路徑:
資料夾a/子檔案b/檔案c
資料夾a/子檔案b/檔案d
資料夾a/檔案c
此時處理方式為:傳輸的檔案名稱預設命名為b_c,b_d,c,在「檔案去向」Tab 中遵循檔案上傳重名策略。
3.1.3 本地伺服器目錄
資料源選擇「檔案輸入-本地伺服器目錄」,則可以獲取 FineDataLink 本地伺服器下的檔案。
配置項說明請參見本文 3.1.2 節。
注:單檔案讀取支援手動上傳檔案至有權限的 FDL 伺服器本地目錄中。上傳檔案名稱限制:上傳檔案名稱不能包含「 ? * : " < > \ / | 」,不能以空格開頭。上傳檔案大小不能超過 100M 。

3.1.4 Amazon S3
資料源選擇「檔案輸入>Amazon S3」,可以獲取 Amazon S3 資料源的檔案。
配置項說明請參見本文 3.1.2 節。

3.1.5 Server Message Block
4.2.13.4 及之後版本,檔案來源支援:Server Message Block,可以獲取 Server Message Block 資料源的檔案。

3.2 檔案去向
3.2.1 API匯出
資料源選擇 API,則可以上傳附件到 API。和API匯出算子配置保持一緻,但是 body 中僅支援 binary 類型。

| 配置項 | 說明 |
|---|---|
| 請求方式 | 請求方式支援POST、PUT、DELETE、PATCH |
| URL | 預設為空,支援輸入參數 |
| Headers | 對應的Content-Type預設為:application/octet-stream,限制不可更改 |
| 其他說明 | 配置預設為:獲取前置檔案下載值 只允許傳入值有一列值,超過1列時,運作報錯;若使用者要上傳多個檔案,則需要使用循環容器節點。 一般用來上傳檔案,由於沒有鍵值,所以一次只能上傳一個檔案。 |
3.2.2 FTP/SFTP
資料源選擇檔案匯出-FTP/SFTP,則可以將檔案上傳至指定伺服器。
輸入資料夾地址,並設定上傳後的檔案名稱以及上傳檔案的重名策略,如下圖所示:

| 配置項 | 說明 |
|---|---|
| 資料夾地址 | 填寫檔案匯出目錄,將以「資料連結」中所選路徑作為寫入目錄。 檔案目錄支援使用參數和直接選擇兩種方式:
4.2.16.4 及之後版本,新增以下配置項。當配置的資料夾地址不存在時,可選擇「自動建立」或「運作報錯」 使用場景:若資料夾地址中使用參數,運作時發現資料夾地址不存在,可以自動建立資料夾並匯出資料
|
| 檔案名稱 |
|
| 檔案重名策略 | 提供寫入伺服器時檔案重名時的處理策略
|
3.2.3 本地伺服器目錄
除資料夾地址必須選擇資料連結自身資料夾及其子資料夾,其餘配置項與 FTP/SFTP 相同。
3.2.4 Amazon S3
除資料夾地址必須選擇資料連結自身儲存桶資料夾及其子資料夾,其餘配置項與 FTP/SFTP 相同。
3.2.5 Server Message Block
4.2.13.4 及之後版本,檔案去向支援:Server Message Block。
除資料夾地址必須選擇資料連結自身資料夾及其子資料夾,其餘配置項與 FTP/SFTP 相同。
3.3 傳輸成功/傳輸失敗的檔案名稱列表
4.2.14.4 及之後版本,新增 內建參數 ${檔案傳輸節點名稱.success_files}、${檔案傳輸節點名稱.failed_files},分別代表檔案傳輸節點成功傳輸的檔案名稱列表、失敗傳輸的檔案名稱列表。

