跳至主要內容
Adaptive Planning
上次更新時間 :2024-02-02
步驟︰設定指令碼資料來源

步驟︰設定指令碼資料來源

指令碼資料來源可讓您解決複雜的自訂資料擷取和轉換情境。您可撰寫 Kettle ETL 指令碼,以指定要從中擷取資料的資訊來源,然後將客戶特有業務規則套用至所擷取的資料。在您設定指令碼資料來源之前,您必須在網路中的內部部署 Windows 伺服器上安裝資料代理程式。請參閱「」 Concept: Data Agents 以取得詳細資訊。
Kettle 中使用的平台或指令碼不會自動升級或移轉。如果您使用舊版資料代理程式 (搭配 Kettle 4.4),則必須使用「整合」代理程式使用者介面中「下載舊版代理程式」區段內的連結。如果您想升級至 Kettle 6,則必須在先前從未安裝過任何 Kettle 版本的系統上,重新安裝新的資料代理程式和新的 Kettle 版本。
指令碼資料來源適用於有編寫 Pentaho Kettle 指令碼和使用 Spoon 使用者介面經驗的進階 ETL 實行者。如需更多有關 Pentaho Kettle 和 Spoon 的資訊 (包括大量文件和教程),請參閱 https://docs.hitachivantara.com/p/pentaho-dia
若要設定指令碼資料來源︰
  1. 前往
    整合 > 設計整合
    ,以存取資料設計工具。
  2. 在畫面右側元件庫的「資料來源」資料夾中,按一下
    新建資料來源
    。「新建」對話方塊隨即出現。
  3. 選取
    指令碼資料來源
    做為資料來源類型,並輸入資料來源的名稱。
  4. 按一下
    建立
    。畫面的中央區域會顯示新資料來源的設定和其他資訊。
  5. 輸入資料來源的資訊︰
    • 相關聯的代理程式︰
      從下拉清單中選取代理程式。
    • 進入點︰
      從下拉清單中選取進入點。進入點是系統上的 ETL 指令碼。您可以稍後編輯它。
    • 記錄層級︰
      從下拉清單中選取記錄層級,以指定此資料來源的記錄詳細資料。您的選項有︰
    • 錯誤︰
      僅記錄嚴重錯誤。
    • 資訊︰
      記錄所有基本資訊,例如資料來源的更新時間。
    • 詳細資訊︰
      提供所有階段和動作的詳盡資訊。(此層級主要用於偵錯或稽核,因為其產生的記錄資訊量可能遠超過一般用途實際所需。)
    • 來源 URI︰
      輸入您的指令碼要連線至的 URI (以分號 (;) 分隔)。此欄位僅用於協助您識別和記載您的指令碼連至的基礎來源系統,而軟體不會將其用於任何其他目的。
  6. 在「動作」功能表上按一下
    儲存

啟動 Spoon

儲存指令碼資料來源的基本資訊後,即可啟動 Spoon (ETL 指令碼編輯器)、處理指令碼,並將表格新增至指令碼資料來源。
若要檢視和編輯指令碼︰
  1. 在 Windows 的「開始」功能表中,按一下
    所有程式
  2. 開啟 Workday Adaptive Planning Data Agent 資料夾。若資料代理程式版本為 7.1.44 版 (含) 以下,請開啟 Adaptive Data Agent 資料夾。
  3. 按一下 Adaptive Script Editor。在 Pentaho 啟動顯示畫面和啟動提示之後,Spoon 畫面隨即出現。
  4. 輸入您的
    Adaptive Planning
    登入電子郵件和密碼,然後按一下
    Login Now/Refresh Tenant List
    。如果您已從 Workday 同步使用者,請參閱 「使用 Workday 憑證登入資料代理程式和指令碼編輯器」。
  5. 從下拉清單中選取用戶。通常只有一個用戶。Spoon 會重新整理用戶清單。
  6. 從下拉清單中選取您要用於此資料來源的代理程式。Spoon 會重新整理代理程式清單。
  7. 從「Edit Script」的下拉清單中選取您剛建立的指令碼資料來源。
現在您已登入並告知 Spoon 您正在處理的代理程式和資料來源,可以開始編輯指令碼。
  1. 在 Spoon 畫面的右上角,按一下「Data Integration」。Spoon 的整合觀點隨即出現。
  2. 選取
    File > Open
    並瀏覽至您要檢視和編輯的指令碼,然後按一下
    OK
    。「整合」內包含的「指令碼資料來源」範例指令碼提供有關指令碼結構和資料庫連線的資訊,此資訊在您開發自己的指令碼時可能對您有所幫助。
  3. 視情況編輯指令碼,然後加以儲存。
  4. 按一下右上方的 Adaptive,返回 Adaptive 觀點。Spoon 畫面再次顯示。
  5. 按一下
    Publish Agent Changes
    。這會將指令碼推回至
    Adaptive Planning
    伺服器,儲存在指令碼儲存庫中。
支援下列資料匯入模式。設定可能因表格而異。
  • 每次匯入資料時取代所有記錄
  • 遠端代理程式會掃描所有來源記錄,並在每次必須同步資料時傳輸已變更的記錄
  • 傳送所有在指定期間範圍內的記錄

將表格和欄新增至指令碼資料來源

準備好指令碼後,您可以在整合中將表格和欄新增至資料來源。
資料來源中定義的欄必須與 ETL 指令碼中定義的欄完全相符,否則資料載入會失敗。
若要將表格新增至指令碼資料來源,請執行下列步驟︰
  1. 在「資料元件」功能表中展開「自訂表格」項目。
  2. 指令碼表格
    項目拖放到「要匯入的表格」區域。當您拖放此項目時,「指令碼表格」對話方塊隨即出現︰
  3. 輸入表格設定︰
    • 名稱︰
      輸入表格的名稱。
    • 資料匯入模式︰
      選取其中一種匯入模式︰
      • 每次匯入資料時取代所有記錄︰
        這是預設值。每當匯入資料時,都會取代階段處理區域中的所有記錄。
      • 匯入時使用遠端快取,找出並傳送已變更的記錄︰
        「整合」會查看階段處理區域,並將其與試算表或資料庫中的記錄進行比較,然後僅匯入已變更的記錄。
      • 傳送所有在指定期間範圍內的記錄︰
        當您選取此模式時,系統會提示您輸入期間範圍和套用此範圍的欄整合。任何符合此選取條件的記錄都會匯入。
    • 資料匯入篩選條件︰
      使用此項來輸入 SQL 運算式,以篩選要匯入的資訊或設定其格式。從資料庫擷取資料前,系統會先套用 SQL 篩選條件,以減少需要匯入的資料量,讓您進一步控制要將哪些資料帶到階段處理區域中。按一下欄位,即可顯示先前所述的「編輯 SQL 篩選條件」對話方塊。(您在此處輸入的篩選條件會套用至資料庫中的實際資料,而不是階段處理區域中的預覽資料。)
  4. 按一下
    套用
    以套用設定。
若要將欄新增至指令碼資料來源,請執行下列步驟︰
  1. 在「資料元件」功能表中展開「自訂欄」項目。
  2. 將其中一個欄類型拖放到「要匯入的表格」區域。當您拖放此項目時,「自訂欄」對話方塊隨即出現。
  3. 輸入欄設定︰
    • 名稱︰
      輸入欄的名稱。欄名稱必須與 Spoon 的指令碼中指定的欄名稱完全相符,包括大小寫和內嵌空格。
    • 欄類型︰
      可識別欄類型的僅供顯示欄位。
    • 轉換欄類型︰
      您無法變更此值,但 SQL 欄除外。對於 SQL 欄,您可以從多個轉換選項中選取任何一個。
  4. 按一下
    套用
    以套用設定。

管理欄

如果您正在處理的表格有大量的欄,則可使用「管理欄」快速編輯要匯入的欄。「管理欄」對話方塊會在表格中顯示欄,方便您隨後勾選或取消勾選要匯入的欄。
若要管理要匯入的欄︰
  1. 按一下表格名稱右側分頁上的箭頭。隨即顯示包含數個選項的浮動功能表。
  2. 在浮動功能表上按一下
    管理欄
    。「管理欄」對話方塊隨即出現。
  3. 勾選欄旁邊的方塊以匯入該欄。勾選某欄時,該欄也會在儲存快顯內容後顯示在預覽視窗中。取消勾選欄可將該欄從預覽視窗中移除。您無法變更系統所產生欄位的匯入狀態,例如
    isDeleted
    。您也可選取欄屬性並設定屬性,或將欄拖放至設計工具上,藉此變更個別欄的匯入狀態。

自訂表格

針對每個表格,您可自訂資料的匯入方式。
若要自訂表格設定,請執行下列步驟︰
  1. 按一下表格名稱右側分頁上的箭頭。隨即顯示包含數個選項的浮動功能表。
  2. 在浮動功能表上按一下
    表格設定
  3. 按一下
    套用
    以套用設定。
  4. 對每個表格重複步驟 1-3。
  5. 按一下
    儲存
    以儲存資料來源中的設定。

設定欄選項

使用「要匯入的表格」區段時,您可預覽資料在資料來源中呈現的方式,或是匯入後在階段處理區域呈現的結果。將滑鼠移到每一欄的標題上,然後按一下其名稱旁邊的下拉清單,即可變更其選項。選項包括︰
  • 遞增排序︰
    依據此欄將整個表格遞增排序。
  • 遞減排序︰
    依據此欄將整個表格遞減排序。
  • 欄設定︰
    此對話方塊可用來變更階段處理表內欄的屬性。
  • 名稱︰
    欄的名稱,顯示在標頭中
  • 欄類型︰
    該欄使用的資料類型
  • 轉換欄類型︰
    從此下拉式功能表中選取新的類型。
  • 排除欄而不要匯入︰
    選取此項可從要匯入的資料中移除此欄。
  • 刪除自訂欄︰
    選取此項可刪除整欄。(僅適用於自訂欄。)

從階段處理表下載資料

您可以從單一階段處理表下載資料。
若要從單一階段處理表下載資料︰
  1. 在「要匯入的表格」區段中,按一下表格標題中的向下箭頭。
  2. 選取
    下載資料
  3. 在出現
    此作業會傳送一封電子郵件,內含下載資料的 URL
    提示時,按一下
    傳送
    Adaptive Planning
    將內含 URL 的電子郵件傳送至與資料設計人員相關聯的電子郵件帳戶。
  4. 開啟電子郵件,然後按一下 URL。資料會以 .csv 格式下載。

使用進階篩選條件

在「來源」下拉式功能表下方,您可按一下
進階篩選條件
,在
要匯入的表格
預覽區域中顯示用於篩選資料的選項。「進階篩選條件」提供的工具可讓您檢視及瀏覽階段處理表或指令碼內的部分資料。(當您從「來源」下拉清單中選取指令碼時,預覽要求會傳送至代理程式進行處理。)藉由變更篩選條件屬性,您可變更預覽視窗內顯示的資料檢視內容,而不需變更階段處理區域中的資料。
預覽區域專門用於預覽階段處理區域中的一小部分資料。您可以探索試算表中提供的資料,並藉由檢查階段處理區域來驗證您是否取得預期的資料。(在預覽功能中設定的篩選條件不會影響階段處理區域中的實際資料。)
進階篩選條件的選項有︰
  • 相異列
    ︰勾選此方塊可隱藏重複的列。
  • 最大列數
    ︰在文字方塊中輸入數字,以限制預覽區域中顯示的列數。
  • ︰勾選或取消勾選此下拉式功能表中的欄,即可顯示欄或隱藏已顯示的欄。
從此清單中移除欄並不會從匯入清單中移除欄。
  • SQL 篩選條件
    ︰按一下大型文字方塊可顯示「編輯 SQL 篩選條件」對話方塊 (先前所述),您可在其中輸入 SQL 篩選條件以限縮預覽中顯示的列。請按一下
    套用
    ,自動檢查篩選條件的 SQL 語法。(運算式中會標出所有語法錯誤。)如需詳細的 SQL 語法說明,您可以在「附註」區段中按一下線上說明。
按一下
移除篩選條件
(在「來源」下拉式功能表旁邊),以清除所有進階篩選條件設定。
在表格自訂流程中,您也可以使用 SQL 運算式建立聯結表格和自訂欄。

新增和編輯參數

您可使用參數將資訊傳遞給基礎 Kettle 指令碼。這些參數可使用預設值來設定。然後,指令碼可使用參數來控制 ETL 指令碼中的轉換和篩選。
若要新增參數︰
  1. 按一下「參數」標題右側的
    編輯參數
    圖示。「參數編輯器」對話方塊隨即出現。
  2. 在左側窗格中按一下您要新增參數的資料夾。資料夾名稱會顯示在右側窗格中。
  3. 按一下
    新增
    ,然後從浮動功能表中選取下列選項之一︰
    • 資料夾︰
      新建資料夾
    • 布林值
      ︰建立布林值參數 (True/False)
    • 整數
      ︰建立整數參數
    • 文字
      ︰建立文字參數
    • 密碼
      ︰建立密碼參數
    • 期間範圍
      ︰建立期間範圍參數 (開始/結束日期)
    • 維度
      ︰建立維度
    • 實際值版本
      ︰建立實際值版本
    • 計畫版本
      ︰建立計畫版本
  4. 在右側窗格中,輸入所選選項的資訊。
  5. 按一下
    套用
連按兩下左窗格中您要編輯的項目並變更欄位中的資訊,然後按一下「套用」以儲存變更,即可編輯個別的參數或資料夾。
您也可以建立資料夾以將參數分組,然後將參數拖曳至該資料夾。

使用指令碼資料來源匯入資料

設定並儲存指令碼資料來源後,即可匯入資料。
若要使用指令碼資料來源匯入資料︰
  1. 在「動作」功能表中按一下
    匯入資料
    。選取的資料會依 ETL 指令碼以及任何 SQL 運算式篩選,然後載入階段處理區域。您可以在階段處理區域中預覽資料。
資訊會保留在階段處理區域中,直到您將其清除,或直到後續資料載入導致其依據作用中的「資料匯入模式」設定而清除。
若要從階段處理區域中清除資料︰
  1. 在「動作」功能表中按一下
    清除階段處理表
    。資料來源中所有表格的階段處理區域都已清除。