Replicação de “Nós” no DataMapper

A técnica de replicação de nós no DataMapper é usada para criarmos um número específico de ocorrências de um XML dentro de um Source e com isso mapeá-las para Destinations distintos.

Ela é bem simples de ser implementada:

Primeiro faça a configuração de um XML no Source:

Imagem_001

Depois, escolha e configure os seus Destinations:

 Imagem_002

Com o Source e os Destinations devidamente configurados abra a tela de mapeamento:

Imagem_003

Agora, escolha qual o nó complexo você quer replicar. É importante que ele seja do tipo “Complexo” (aquele que pode ocorrer mais de uma vez). Clique com o botão direito do mouse e selecione a opção propriedades. A seguinte tela irá aparecer:

Imagem_004

Para que a replicação dos nós seja habilitada marque o check box Replication e clique em OK.

Imagem_005

*Veja que o nó complexo ganhou um sufixo em seu nome (#1).

Para replicar os nós você deve novamente clicar com o botão direito do mouse em cima do nó complexo, mas agora no menu de contexto selecione a opção Add Replication.

Imagem_006

 

O Magic xpi então criará um novo nó com o mesmo nome, mas agora com o sufixo #2.

Imagem_007

*Nota: Os nós replicados sempre terão o mesmo nome seguido do sufixo “#” e um número sequencial.

Agora podemos mapear cada nó replicado para um Destination diferente.

Imagem_008

*Nota: A replicação de nós não tem limites, podemos replicar quantos nós precisarmos.

O que estamos dizendo ao DataMapper é:

Na primeira ocorrência (#1) do nó ‘row’ do Source, mapeie para o DestinationFluxo_A’.

Mas na segunda ocorrência (#2), mapeie para o ‘Fluxo_B’.

É uma condição de seleção de destino, em função de qual ocorrência do Source está sendo processada no momento.

Se quisermos apagar um nó replicado precisamos apenas clicar com o botão direito em cima deste nó e no menu de contexto escolhemos a opção Remove Replication.

Imagem_009

Douglas - Analista Programador Magic Software Brasil
Douglas – Analista Programador Magic Software Brasil

 

 

 

Deixe um comentário

O seu endereço de e-mail não será publicado.