此主題說明使用 EPM 整合代理程式,將資料從 Oracle Enterprise Performance Management Cloud 應用程式載入至內部部署資料倉儲所需的步驟。有兩種不同的方法可用於載入資料:
分別依「應用程式」選項中的表格名稱和「應用程式維度」中的表格欄載入資料。(Insert 查詢由 EPM 整合代理程式自動產生)。
使用自訂 SQL Insert 查詢,依表格名稱和欄載入資料。
若要使用 EPM 整合代理程式,將資料從 EPM Cloud 應用程式載入至內部部署資料倉儲,請執行下列動作:
建立將匯出資料的 RDBMS 表格。
在此範例中,名為 VISION_DATA 的表格具有 Vision 應用程式的所有維度,以及稱為 BATCH_ID 和 DATA_AMOUNT 的另外兩個欄。BATCH_ID 欄用於填入來自 EPM Cloud 的資料整合程序 ID。DATA_AMOUNT 欄用於填入「金額」欄。
藉由包含欄名稱的標頭記錄,將表格內容匯出至 CSV 檔案以進行應用程式登錄。
CSV 輸出檔案如下所示:
假設這些欄完全代表目標表格欄。SQL Insert 陳述式是根據欄名稱產生。
依序導覽至資料交換、資料整合頁籤、動作功能表,然後選取應用程式。
在應用程式頁面上,完成下列動作,以登錄寫回程序的資料匯出應用程式:
在類別中,選取資料匯出。
在類型中,選取資料匯出至內部部署資料庫。
上傳並選取從步驟 2 建立的檔案。
系統會建立「資料匯出」應用程式,並且應用程式的名稱與用於登錄應用程式的檔案名稱相符。
在應用程式頁面上,按一下應用程式右側的 ,然後選取應用程式詳細資料。
選取維度頁籤。
應用程式登錄程序會自動將 CSV 檔案中所有欄的維度分類指派為「一般」,並據此指派「資料表格欄名稱」。
對科目、金額、期間和年度欄進行適當分類:
當欄對映至匯入格式的來源欄,並且來源欄位中一律具有值時,將欄分類為科目。在下列範例中,"ACCOUNT" 欄已分類為「科目」。此維度的資料表格欄名稱已分類為 "ACCOUNT"。
將 DATA_AMOUNT 分類為「金額」,並將資料表格欄名稱保留空白。
將 YEAR 分類為「年度」,並將資料表格欄名稱保留空白。
將 PERIOD 分類為「期間」,並將資料表格欄名稱保留空白。
從應用程式頁面中,按一下應用程式右側的 ,然後選取應用程式詳細資料。
選取選項頁籤。
指定表格名稱、JDBC URL 和資料庫認證。
將 Insert 查詢保留空白。如果您未指定「Insert 查詢」,則會假設應用程式維度表示目標資料庫欄名稱完全相同。應用程式維度應包含需要在寫回程序中填入之目標表格的每個欄。否則,整合就會失敗。
建立來源應用程式與目標 EPM Cloud 應用程式之間的整合。
下列範例顯示來源 "Vision Planning" 應用程式和稱為 "ORACLE_DWH" 的目標「資料匯出」應用程式。
對映所有欄並使用 "copysource()" 作為 "Amount" 和 "BATCH_ID" 除外的所有維度的目標表示式。
表示式會套用至成員對映中的 "BATCH_ID"。"Amount" 維度沒有目標表示式。
從對映成員中,使用 TDATASEG_T 表格的 LOADID 欄建立 BATCH_ID 的 #SQL 對映。
依序從選項、篩選條件中,視需要指定任何來源規劃應用程式篩選條件。
在下列範例中,未選取篩選條件,因為 (開始/結束期間範圍) 的 Vision 應用程式中的所有資料都會匯入並匯出至目標應用程式。
依序從選項、來源立方體中,指定來源立方體 (計畫類型)。接著從期間對映類型中,指定預設。然後按一下儲存,如下所示。
在可存取目標資料庫的內部部署主機上啟動 EPM 整合代理程式。
在資料整合中,執行指定期間範圍的整合。
在下列範例中,選取了期間 Jan-16 到 Dec-16:
觀察內部部署代理程式從 EPM Cloud 擷取工作詳細資料,並等待該程序完成。
從程序詳細資料中,開啟日誌檔並記下匯出的資料記錄總數和 Insert 查詢陳述式:
驗證是否已順利匯出目標資料庫中的記錄。
請注意,雲端程序 ID 已順利對映至資料庫中的 BATCH_ID 欄。
使用 EPM Cloud 中的 Insert 查詢,將相同的資料匯出至名稱為 VISION_DATA_2 的另一個表格。
INSERT 查詢可讓您使用複雜的 SQL 表示式來對映資料庫的欄。SQL 表示式是在目標資料庫上執行,而不是在雲端資料庫 (Oracle) 上執行。這可讓您靈活地使用專用於資料庫類型的 SQL 表示式,例如 MS SQL 伺服器、MYSQ 等。您也可以使用來自另一個表格的子查詢來衍生欄值。
在下列範例中:
BATCH_ID 已重新命名為:BATCH_NUMBER。
ENTITY 已重新命名為:ORGANIZATION。
YEAR 與 PERIOD 欄已被移除,並建立了 PERIOD_NAME 欄以在同一欄中填入「年度」與「期間」。
您不需要 CSV 檔案即可登錄應用程式,因為已使用一組不同的欄名稱登錄了應用程式。使用 SQL Insert 查詢的優點是,您可以使用已登錄應用程式的欄名稱來對映使用 SQL Insert 查詢的實際欄名稱。因此,應用程式可以包含與目標資料庫的實際欄名稱完全不同的維度。應用程式維度也可以僅表示目標資料庫表格中填入之實際欄的子集。
如需詳細資訊,請參閱:使用自訂 INSERT 查詢寫回。
INSERT 查詢中的值是以將目標維度名稱括在 ~~ (波狀符號) 中來表示。例如,如果需要將「資料匯出」應用程式中名稱為 ABC 的維度對映至資料庫中的 DEF 欄,則請將 DEF 欄的值指定為 ~ABC~。
使用下列值建立新查詢:
將 BATCH_ID 重新對映至 BATCH_NUMBER。
使用首碼 Acc,例如 ACCOUNT。
使用首碼 Org,例如 ORGANISATION。
將「期間」與「年度」串連成 PERIOD_NAME。
使用首碼 Prd,例如 PRODUCT。
將 DATA_AMOUNT 四捨五入至 2 位小數。
在應用程式詳細資料中,指定已登錄「資料匯出」應用程式中的查詢名稱,並將表格名稱保留空白。
再次執行一段期間範圍的整合程序,並等待該程序成功。
驗證是否已正確填入目標表格。