目的:
使用 MDX 指令碼將資料從某個資料庫複製至另一個資料庫。
語法:
Java Class: com.hyperion.calcmgr.common.cdf.MDXDataCopy.copyData(String,String,String,String,String,String,String,String,String,String,String,String,String,String)
CDF Spec: @CalcMgrMDXDataCopy(Encryption Key,user,password,sourceApplicationName, sourceDatabaseName,targetApplicationName, targetDatabaseName,columnAxisMDX, rowAxisMDX, sourceMemberMappings,targetMemberMappings, targetPOVCols,maxRowsPerPage,loggingFileName)
@CalcMgrMDXDataCopy 依賴定義待複製區域的 MDX 表示式。它會在記憶體中建立一個方格,使用 MDX 表示式從來源資料庫填入方格,然後將資料更新到目標資料庫。@CalcMgrMDXDataCopy 運用 calcmgrCmdLine.jar 使用加密的使用者名稱和密碼。
例如,若要加密使用者名稱和密碼,您必須使用 java -jar calcmgrCmdLine.jar -gk 產生金鑰。這會傳回金鑰,例如:83qosW4LbxVGp6uBwqtQWb,其可用於加密使用者名稱和密碼。若您加密使用者名稱,也必須加密使用者密碼。如需使用 CalcmgrCmdLine.jar 的更多詳細資料,請參閱使用命令行啟動器來啟動 Essbase 商業規則。
註:
支援僅具有欄列軸的 MDX 表示式。
語法:
RUNJAVA com.hyperion.calcmgr.common.cdf.MDXDataCopy
<Key used to encrypt user name and password>
<Encrypted user name>
<Encrypted password>
<Source Application>
<Source Database>
<Target Application>
<Target Database>
<MDX expression that defines column members>
<MDX expression that defines row members>
<Source Member Mappings>
<Target Member Mappings>
<Target POV columns>
<Rows Per Page>
<Log File>
<Source Server>
<Target Server>
<Where MDX>
<"true" or "false">
當來源中的成員名稱與目標中的成員名稱不同時,會使用 <Source Member Mappings> 和 <Target Member Mappings>。這些都必須使用逗號分隔。不允許使用函數。
當目標中的維度比來源中的維度還多時,會使用 <Target POV columns>。
<ROWS PER PAGE> 用於觸發對目標的更新。預設為 -1,當植入完整方格時,會發生更新。如果您將其設為 30,則只要填滿 30 列,就會觸發更新。然後繼續下一個 30 列。
當來源和目的地伺服器不同時,會使用 <Source Server> 與 <Target Server>。如果這兩個伺服器是相同的,您必須使用 "" 作為佔位字元。
當您想要為指令碼指定引數時,會使用 <Where MDX>。
<"true" 或 "false"> 參數,"true" 會附加日誌檔,"false" 會清除日誌檔。如果此參數保留空白,"true" 為預設值。若要增加執行已自行定義函數之 JVM 的記憶體,請為 Oracle Essbase 編輯 opmn.xml 檔案,然後變更 ESS_JVM_OPTION1 之值特性中的數字。此項目為 JVM 設定 256 MB 的記憶體 <variable id="ESS_JVM_OPTION1" value="-Xmx256M"/>
例如:
RUNJAVA com.hyperion.calcmgr.common.cdf.MDXDataCopy
"vta2a536uC/wyX8jM2GlHA==" /* key */
"qza9xZxUX+srS1GrlR2Qboeq77InwkNSQSvBHLO2siidSEglMndoIpneZVPK0tWt" /* user */
"eldizBRIyqdPdXl9Bpu/HIE+YIgvRBa59aTjTDWpWM0T+ZEPjF+zyINfE0KHX0qP" /* password */
"Sample" /* from application */
"Basic" /* from database */
"Samp2" /* to application */
"Basic" /* to database */
"crossjoin({[Jan],[Feb],[March]},{[Budget]})" /* MDX that defines the column members */
"crossjoin(crossjoin({[Sales]},{[100].CHILDREN}),{[Connecticut]})" /* MDX that defines the row members */
"Jan,Feb" /* source member mappings */
"January,February" /* target member mappings */
"VP, IT" /* Target POV columns, members from dimensions that do not exist on the source*/
"-1" /* rows per page */
"c:\\Temp\\cpdata3.log"; /* log file could be empty */
""source server
""destination server
""where MDX