2013年12月4日 星期三

[SAP][Data Service] 使用 Transform 產生時間維度

時間維度包含了日期、時間及相關屬性例如季、假期、財報的季別...等。
在 Project 下先建立一個 Job 後,直接新增一個 Data Flow。在 Object Library 中切換至 Transforms 頁籤,展開 Data Integrator 資料夾,並點選 Date_Generation,拖拉至工作區中。並將 Query Transform 也拖拉至工作區,在目標 Datastores 中時間維度的資料表也放在工作區中,做為目標工作表。

點擊開啟 Date Generation 物件進入編輯視窗,輸入

  • Start Date:2002.01.01
  • End Date:2013.11.30
  • Increment:daily


接著定義輸出 Query,點擊 Query 物件,可在編輯視窗中看到 Schema In 中有一個欄位,Output Schema 由 Schema In 複製過來。將 DI_GENERATED_DATE 欄位拖拉至 Schema Out 區。( Schema Out 下方 Query 的欄位即是資料庫中的欄位名稱,Type 即是資料庫中的 DataType ,這些都必須一致,轉換時才不會有錯誤!)


Column name:Mapping
  1. Date_ID:DI_GENERATED_DATE
  2. YearNum:to_char(Date_Generation.DI_GENERATED_DATE, 'yyyy')
  3. MonthNum:month(Date_Generation.DI_GENERATED_DATE)
  4. BusQuarter:quarter(Date_Generation.DI_GENERATED_DATE)
變更欄位名稱並修改 Mapping 頁籤中的公式如上所示。
執行 JOB,在 Project Area 點選 JOB 右鍵,選 Execute...


使用預設選項即可,按下 OK 鈕。


執行時可以看到 LOG 的視窗。



沒有留言: