通過將步驟合併到同一鏈中,可以進一步簡化數據管理。在此連接學習路徑中,我們將介紹替換 Wdata 表中數據的最佳方法,這是一個使用一個鏈的兩步過程。
主要業務用例 | 表管理 |
小學學習目標 | 使用鏈替換 Wdata 表中的數據 |
必要條件 | |
支援範本 | 中電 |替換表中的數據 |
第 1 步:運行鏈
- 導航到 CLP |上傳數據到表 鏈
- 按兩下“執行”,然後選擇“使用輸入運行”
- 為運行時輸入添加值
- Table ID — CLP 員工詳細資訊表的 ID
- 檔名 - 您希望調用檔的任何名稱,在本例中,我們將檔稱為“員工詳細資訊”
- 檔位置 - https://cs-sftp-training-bucket.s3.amazonaws.com/cs-training/transformation-qs/employee_detail.csv
- 按兩下“開始”
- 鏈完成後,按兩下將 文件匯入到表 節點以驗證成功
- 現在,CLP 員工詳細資訊表中有可用的數據,我們現在將用更新的數據集替換這些數據,使用單一鏈刪除舊數據並上傳新數據。
第 2 步:創建鏈
- 添加新 鏈
- 為鏈命名: CLP |替換表中的數據
- 拯救鏈條
第 3 步:運行時輸入
我們使用 Runtime Inputs Command 來啟動鏈。這使我們能夠指定檔名和運行鏈時檔將被導入到的表的ID。
- 從 Chain Trigger Events 的 Start 區域添加 Runtime Inputs Command
- 通過雙擊 Command 來編輯 Runtime Inputs Chain Event
- 新增以下三個輸入:
- 輸入 1:
- 類型:TextField
- 顯示名稱: 表ID
- 必需:選中
- 輸入 2:
- 類型:TextField
- 顯示名稱: 檔名
- 必需:選中
- 輸入 3:
- 類型:TextField
- 顯示名稱: 檔位置
- 必需:選中
- 輸入 1:
- 新增以下三個輸入:
- 保存命令
第 4 步:列出檔
為了刪除表中的舊檔,我們需要檔ID。為了以程式設計方式查找 FileID,我們將使用 List Files 命令。此命令使用表ID來搜索該表中的所有檔,並為我們提供文件的輸出以及有關這些文件的資訊,包括檔案ID。
- 將清單檔命令添加到鏈畫布
- 將 運行時輸入 鏈事件連接到 List Files 命令
- 按兩下命令進行配置。
- 按兩下「表ID」欄位
- 在左側 的「變數 」面板中,按一下向下箭頭以展開 「觸發器」。
- 按兩下向下箭頭以展開 Runtime Inputs
- 選擇 TableID
- 按兩下「表ID」欄位
- 保存命令
第 5 步:從表中取消導入檔
與將數據上傳到表類似,從表中刪除數據的過程分為兩個步驟。首先必須將檔移至暫存狀態,然後才能刪除該檔。要將檔設置為暫存,需要取消導入該檔。我們將使用 Un-Import File from Table Command 來準備要刪除的數據集。
- 將「從表」命令中取消導入檔添加到「鏈」畫布
- 將「 列出檔 」命令連接到「 從表中取消導入檔」 命令
- 按兩下命令進行配置。
- 按兩下「表ID」欄位
- 在左側 的「變數 」面板中,按一下向下箭頭以展開 「觸發器」。
- 按兩下向下箭頭以展開 Runtime Inputs
- 選擇 TableID
- 按兩下檔案 ID 欄位
- 在左側的“變數”面板中,按下向下箭頭以展開 “清單檔”
- 選擇 檔案清單
- 按兩下列出檔案 - 檔案清單「變數以轉換變數」。
- 按兩下選擇轉換“,然後選擇”從 JSON 獲取值”
- 按兩下加號以添加變數轉換
- 在“值”字段中,鍵入“0”,然後按回車鍵。出現 =0 后,輸入“id”並再次按回車鍵。該變數現在將讀取 List Files 命令的 JSON 輸出,並查找表中第一個檔的 ID。
- 按兩下「表ID」欄位
提示!在解析 JSON 值時,請特別注意大寫與小寫
-
-
-
- 按兩下接受”
- 按兩下接受”
-
-
- 保存命令
第 6 步:下載檔
接下來,我們可以從表中刪除暫存檔,也可以準備要上傳的新檔。建議在取消導入舊檔後上傳新檔,以確保該過程成功,然後再正式刪除任何數據。要準備要上傳的新文件,我們首先必須使用 HTTP Request Get Command 下載檔。我們已經為鏈託管了一個在線檔供下載,以演示從雲端下載檔。
- 將 HTTP 請求連接器的 Get 命令添加到 Chain 畫布
- 將「 從表 中取消導入檔案」 命令連接到「 獲取」 命令
- 按兩下命令進行配置。
- 按兩下 URL 欄位
- 在左側 的“選擇變數”面板中,按下向下箭頭以展開 “觸發器”
- 按兩下向下箭頭以展開 Runtime Inputs
- 選擇 檔案位置
- 將「 內容類型 」欄位更新為: application/csv
- 按兩下 URL 欄位
- 保存命令
第 7 步:創建檔案
就像我們在“將數據上傳到表連接”學習路徑中所做的那樣,我們將按照兩步過程將數據上傳到 Wdata 表。首先需要在暫存狀態下創建檔,然後才能導入該檔以供最終使用。我們將使用 Create File 命令在 Wdata 表中以 Staged 狀態創建檔,表示它已創建但尚未作為數據集導入。
- 將 Workiva 連接器中的 Create File Command 添加到 Chain 畫布
- 將 Get 命令連接到 Create File 命令
- 按兩下命令進行配置。
- 按兩下「表ID」欄位
- 在左側 的“選擇變數”面板中,按下向下箭頭以展開 “觸發器”
- 按兩下向下箭頭以展開 Runtime Inputs
- 選擇 表ID
- 按兩下「 檔 」欄位
- 在左側 的“選擇變數”面板中,按兩下向下箭頭以展開 “獲取”
- 選擇 回應
- 按兩下「 名稱 」欄位
- 在左側 的“選擇變數 ”面板中,按下向下箭頭以展開 “觸發器”
- 按兩下向下箭頭以展開 Runtime Inputs
- 選擇 檔名
- 在左側 的“選擇變數 ”面板中,按兩下向下箭頭以展開 “運行時”
- 選擇 Chain.ExecutionDateTime
- 鍵入“.csv“,在兩個變數之後
- 我們使用 Chain.ExecutionDateTime 變數來顯示檔的生成時間,並確保每個檔都有唯一的名稱
- 按兩下「表ID」欄位
第 8 步:將檔案匯入到表格中
將文件上傳到 Wdata 表的第二步是導入數據,使其在查詢中可用。此步驟將暫存檔作為數據集導入到指定的表中。
- 將 Import File to Table 命令從 Workiva 連接器添加到 Chain 畫布
- 將「 創建檔案 」命令連接到「 將檔案導入表 」 命令
- 按兩下命令進行配置。
- 按兩下「表ID」欄位
- 在左側 的“選擇變數 ”面板中,按下向下箭頭以展開 “觸發器”
- 按兩下向下箭頭以展開 Runtime Inputs
- 選擇 表ID
- 按兩下檔案 ID 欄位
- 在左側 的“選擇變數 ”面板中,按下向下箭頭以展開 “創建檔”
- 選擇 結果
- 按兩下建立 檔案 - 結果“ 進行轉換
- 在「選擇轉換」下拉清單中,選擇“從 JSON 獲取值”
- 按兩下 + 按鈕
- 在“值”欄位中,鍵入 id 並按 Enter 鍵
- 按兩下接受”
- 按兩下「表ID」欄位
- 保存命令
第 9 步:刪除檔
現在,新數據已經上傳並可以使用,並且舊數據集已經暫存,最後一步是正式刪除舊數據。此步驟使用「刪除檔」命令從表中刪除數據集。
- 將 Workiva 連接器中的 Delete File 命令添加到 Chain 畫布
- 將「 將檔案匯入表」 命令連接到「 刪除檔案」 命令
- 按兩下命令進行配置。
- 為確保刪除已取消導入的同一檔,我們將採用與從表命令中取消導入檔相同的方式生成檔 ID,如下所述:
- 按兩下檔案 ID 欄位
- 在左側的“變數”面板中,按下向下箭頭以展開 “清單檔”
- 選擇 檔案清單
- 按兩下列出檔案 - 檔案清單「變數以轉換變數」。
- 按兩下選擇轉換“,然後選擇”從 JSON 獲取值”
- 按兩下加號以添加變數轉換
- 在“值”字段中,鍵入“0”,然後按回車鍵。出現 =0 后,輸入“id”並再次按回車鍵。該變數現在將讀取 List Files 命令的 JSON 輸出,並查找表中第一個檔的 ID。
提示!在解析 JSON 值時,請特別注意大寫與小寫
-
-
-
- 按兩下接受”
- 按兩下接受”
-
-
- 保存命令
第 10 步:測試練習
現在鏈已經完成,請測試結果。
- 按兩下“執行”,然後選擇“使用輸入運行”
- 為運行時輸入添加值
- Table ID — CLP 員工詳細資訊表的 ID
- 檔名 - 您希望調用檔的任何名稱,在本例中,我們將檔稱為“員工詳細資訊”
- 檔位置 - https://cs-sftp-training-bucket.s3.amazonaws.com/cs-training/transformation-qs/employee_detail_replace.csv
- 按兩下“開始”
- 鏈應該已成功刪除舊檔,並將其替換為新檔到您的表中
- 您可以通過導航到 Wdata 中的表並查看右側面板中的數據集來驗證表中的數據是否已被替換
要了解有關使用 Chains 簡化數據收集的更多資訊,請查看其餘的 數據集中化路徑!