목적:
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 Business Rules 실행을 참조하십시오.
주:
열과 행 축만 있는 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의 메모리를 늘리려면 opmn.xml
파일을 Oracle Essbase에 대해 편집하고 ESS_JVM_OPTION1
의 값 등록정보에 있는 숫자를 변경하십시오. 이 항목은 JVM <variable id="ESS_JVM_OPTION1" value="-Xmx256M"/>
에 대해 256MB의 메모리를 설정합니다.
예를 들면 다음과 같습니다.
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