匯入資料、執行計算指令碼,以及從區塊儲存資料庫複製資料至聚總儲存資料庫

使用這些指令碼從檔案匯入資料、重新整理立方體、執行商業規則來計算立方體,然後將資料發送到 ASO 立方體。

這些指令碼會執行下列動作:

  • 登入環境。
  • 上傳 data.csv 檔案。
  • 使用 loadingq1data 工作,將資料從 data.csv 匯入至應用程式。
  • 重新整理立方體。
  • 執行商業規則以轉換資料。
  • 使用工作,將資料發送至聚總儲存資料庫。
  • 登出。

Windows 範例指令碼

透過複製此指令碼以建立 importDataPlus.ps1。將它儲存至本機目錄。
$inputproperties = ConvertFrom-StringData(Get-Content ./input.properties -raw)
$username="$($inputproperties.username)"
$passwordfile="$($inputproperties.passwordfile)"
$serviceURL="$($inputproperties.serviceURL)"
$importDataJobName="$($inputproperties.importDataJobName)"
$businessRuleName="$($inputproperties.businessRuleName)"
$planTypeMapName="$($inputproperties.planTypeMapName)"
$param1Key="$($inputproperties.param1Key)"
$param1Value="$($inputproperties.param1Value)"
$param2Key="$($inputproperties.param2Key)"
$param2Value="$($inputproperties.param2Value)"
$clearData="$($inputproperties.clearData)"

epmautomate login ${username} ${passwordfile} ${serviceURL}
epmautomate uploadfile ${file1}
epmautomate importdata ${importDataJobName} ${file1}
epmautomate refreshcube
epmautomate runbusinessrule ${businessRuleName} ${param1Key}=${param1Value} ${param2Key}=${param2Value}
epmautomate runplantypemap ${planTypeMapName} clearData=${clearData}
epmautomate logout

Linux/UNIX 範例指令碼

透過複製此指令碼以建立 importDataPlus.ps1。將它儲存至本機目錄。
#!/bin/bash
. ./input.properties
export JAVA_HOME=${javahome}
${epmautomatescript} login "${username}" "${passwordfile}" "${serviceURL}"
${epmautomatescript} uploadfile "${file1}"
${epmautomatescript} importdata "${importDataJobName}" "${file1}"
${epmautomatescript} refreshcube
${epmautomatescript} runbusinessrule "${businessRuleName}" "${param1Key}=${param1Value}" "${param2Key}=${param2Value}"
${epmautomatescript} runplantypemap "${planTypeMapName}" clearData=${clearData}
${epmautomatescript} logout

建立 input.properties 檔案

Windows

username=exampleAdmin
passwordfile=examplePassword.epw
serviceURL=exampleURL
File1=FILE_NAME.csv
importDataJobName=FILE_NAME
businessRuleName=RULE_NAME
planTypeMapName=PLAN_TYPE_MAP_NAME
param1Key=RUN-TIME PARAMETER_1
param1Value=RUN-TIME PARAMETER_1_VALUE
param2Key=RUN-TIME PARAMETER_2
param2Value=RUN-TIME PARAMETER_2_VALUE
clearData=true
Linux/UNIX
javahome=JAVA_HOME
epmautomatescript=EPM_AUTOMATE_LOCATION
username=exampleAdmin
passwordfile=examplePassword.epw
serviceURL=exampleURL
File1=FILE_NAME.csv
importDataJobName=FILE_NAME
businessRuleName=RULE_NAME
planTypeMapName=PLAN_TYPE_MAP_NAME
param1Key=RUN-TIME PARAMETER_1
param1Value=RUN-TIME PARAMETER_1_VALUE
param2Key=RUN-TIME PARAMETER_2
param2Value=RUN-TIME PARAMETER_2_VALUE
clearData=true

表格 3-17 input.properties 參數

參數 描述
javahome JAVA_HOME 位置。僅適用於 Linux/UNIX。
epmautomatescript EPM Automate 執行檔 (epmautomate.sh) 的絕對路徑。僅適用於 Linux/UNIX。
username 服務管理員的使用者名稱,該管理員也具備身分識別網域管理員角色。
password 服務管理員的密碼,或加密密碼檔案所在的名稱和位置。
serviceURL 環境的 URL,您會從這個環境產生快照。
File1 匯入檔案,資料會從這個匯入檔案載入至應用程式中。
importDataJobName 工作名稱,匯入資料時會使用該工作。
businessRuleName 要在匯入的資料上執行的商業規則
planTypeMapName 計畫類型對映,用於將資料從 BSO 資料庫複製到 ASO 資料庫或從 BSO 資料庫複製到另一個 BSO 資料庫。
param1Key 執行時期提示 1,用於執行商業規則。
param1Value 執行時期提示 1 的值。
param2Key 執行時期提示 2,用於執行商業規則。
param2Value 執行時期提示 2 的值。
clearData 指出是否要刪除接收端資料庫中的資料。指定 false 以保留資料。

執行指令碼

  1. 透過複製上一節的指令碼以建立 importDataPlus.ps1importDataPlus.sh
  2. 建立 input.properties 檔案並將它儲存至 importDataPlus 指令碼所在的目錄。此檔案的內容因作業系統而異。請參閱建立 input.properties 檔案

    確保您在此目錄中具有寫入權限。至於 Windows,您可能需要使用以管理員身分執行選項來啟動 PowerShell,才能執行指令碼。

  3. 啟動指令碼。
    • Windows PowerShell:執行 importDataPlus.ps1
    • Linux/UNIX:執行 ./importDataPlus.sh