Objetivo:
Copia dados de um banco de dados para outro usando scripts MDX.
Sintaxe:
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 baseia-se em uma expressão MDX que define a área a ser copiada. Ela cria uma grade na memória, usa a expressão MDX para preencher a grade do banco de dados de origem e, em seguida, atualiza os dados para o banco de dados de destino. @CalcMgrMDXDataCopy usa um nome de usuário e uma senha criptografados usando calcmgrCmdLine.jar.
Por exemplo, para criptografar um nome de usuário e uma senha, gere uma chave usando java -jar calcmgrCmdLine.jar -gk. Isso retornará uma chave como: 83qosW4LbxVGp6uBwqtQWb, que pode ser usada para criptografa o nome de usuário e a senha. Se criptografar o nome do usuário, você também deverá criptografar a senha. Para obter mais detalhes sobre o uso de CalcmgrCmdLine.jar, consulte Inicialização de Regras de Negócios do Essbase com o Iniciador de Linha de Comandos.
Nota:
É suportada uma expressão MDX com apenas o eixo de coluna e linha.
Sintaxe:
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">
<Mapeamentos de Membros de Origem> e <Mapeamentos de Membros de Destino> são usados quando os nomes de membro na origem diferem do destino. Eles devem ser separados por vírgulas. Não são permitidas funções.
<Colunas de PDV de destino> é usado quando há mais dimensões no destino do que na origem.
<LINHAS POR PÁGINA> é usado para disparar uma atualização para o destino. O padrão é -1, em que a atualização acontece quando a grade completa é preenchida. Se você defini-la como 30, assim que 30 linhas forem preenchidas, uma atualização será disparada. Depois, ela continuará nas próximas 30 linhas.
<Servidor de Origem> e <Servidor de Destino> são usados quando o servidor de origem e de destino forem diferentes. Se eles não forem diferentes, use "" como espaço reservado.
<MDX Where> é usado quando você deseja especificar um argumento para o script.
<"true" ou "false">, "true" acrescentará arquivo de log, e "false" removerá o arquivo de log. "True" será o padrão se esse parâmetro for deixado em branco.Para aumentar a memória do JVM em que a função definida pelo usuário é executada, edite o arquivo opmn.xml para o Oracle Essbase e altere o número na propriedade de valor de ESS_JVM_OPTION1. Essa entrada define 256 MB de memória para o JVM <variable id="ESS_JVM_OPTION1" value="-Xmx256M"/>
Por exemplo:
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