Ir para o conteúdo

Estruturas Planas para Hierárquicas

Mapeamento Múltiplo

O conceito de mapeamento múltiplo é a ideia de que você precisa mapear uma única estrutura plana para uma estrutura hierárquica por natureza, com segmentos inferiores contendo vários conjuntos de valores, como pares nome/valor. Nessa circunstância, as cópias de uma determinada pasta podem ocorrer várias vezes, cada cópia de pasta deve ser mapeada com as regras apropriadas.

Uma situação de amostra é fornecida abaixo para ilustrar como obter transformações planas para hierárquicas.

Exemplo de Situação

Considere a situação em que a fonte de dados é uma estrutura de dados simples (desnormalizada) e a definição de destino é de natureza hierárquica. No exemplo a seguir, os dados de origem são representados em uma estrutura desnormalizada, como um arquivo simples.

Estruturas e Dados do Documento

  • Estrutura do documento de origem refere-se ao documento de origem. É um arquivo de texto.

  • Source Document Data é o arquivo que contém dados de amostra que espelham a estrutura do arquivo DTD.

  • Estrutura do documento de destino é a estrutura de dados do documento de destino. É de natureza hierárquica, com pelo menos uma linha de cabeçalho e várias linhas de detalhes atribuídas à linha de cabeçalho.

  • Target Output é o resultado final desejado dessa transformação e é enviado para um formato específico.

Mapeamento para Pastas Individuais

O primeiro conjunto de mapeamentos é para itens iguais para cada registro (lembre-se de que pode haver vários registros criados no destino).

  1. Mapeie cada uma dessas entradas de origem para seu respectivo destino:

    Fonte Alvo
    ItemNúmero inventory.warehouse.instockitem.itemnumber
    Quantidade inventory.warehouse.instockitem.itemquantity
    Código do Armazém inventory.warehouse.warehouseinfo.warehousecode
    ArmazémEstado inventory.warehouse.warehouseinfo.warehousestate
  2. Depois de mapear esses quatro elementos, compare seu trabalho com a figura abaixo:

    anexo

Os elementos de dados de origem restantes (cor, peso e custo) exigirão cada um sua própria "cópia" da pasta de destino.

  1. Selecione o nome da pasta que deseja duplicar (neste caso, instockitem).

  2. Clique no ícone de várias pastas anexo para exibir a caixa de diálogo Mapping Options. Como você tem três elementos de dados que deseja mapear separadamente, selecione o botão de opção Criar pastas adicionais e insira o número 3:

    fh mappingoptionsdlog number

  3. Clique em OK para fechar a caixa de diálogo.

Agora você terá três cópias adicionais da pasta instockitem, indicadas por #1, #2 e #3 no final de seus nomes de pasta:

anexo

Origem do Mapa para Novos Elementos de Dados de Destino

Agora você precisa mapear seus elementos de dados de origem para essas novas pastas de destino.

  1. Selecione Cor no painel Origem.
  2. Abra instockitem#1, então Abra a pasta attribute e finalmente Selecione o elemento de dados de valor da pasta attributevalue ( [V] )
  3. Clique no botão Mapear para mapear esse relacionamento.

Repita essas etapas para os elementos de dados Peso e Custo de origem, mapeando-os para os respectivos valores de atributo [V] do iteminstockitem#2 e do iteminstock#3. Compare seu trabalho com a figura abaixo.

anexo

mapsourcetotargetbtn

Definir Códigos de Atributos Associados

Cada um dos elementos de dados que você mapeou para as várias ocorrências das pastas precisa ter seu elemento de dados attributecode correspondente definido corretamente:

  1. Selecione o elemento de dados de valor da pasta do attributecode ([V]) na pasta de atributo do attributecode dentro do item de estoque#1.
  2. Clique no botão Fórmula para iniciar o Construtor de Fórmulas.

    anexo

  3. Digite o Valor apropriado para o campo no campo de expressão na parte superior da janela. Neste exemplo, digite COLOR (mas não use aspas).

  4. Esse código simples é tudo que esse elemento de dados requer, então clique em OK para ignorá-lo
  5. Repita essas etapas para as outras duas pastas que foram criadas, para que cada um dos campos de atributo na origem seja mapeado para seus valores apropriados (PESO e CUSTO) no destino.

Nota

Certifique-se de usar todas as letras maiúsculas, pois o destino XML pode diferenciar maiúsculas de minúsculas.

Você concluiu seu mapeamento de Transformação. Para testá-lo, crie uma operação que faça referência à origem, ao destino apropriado e a essa transformação que você acabou de fazer.