Se seu mapa de mensagem continha estruturas de mapeamento para as quais não existe uma substituição direta
na conversão, o novo mapa de dados gráficos inclui transformações de Tarefas para ajudá-lo a recriar manualmente
essas estruturas. Você deve
revisar e substituir cada transformação de Tarefa para poder usar seu mapa de dados gráficos em
uma solução do sistema de mensagens.
Sobre Esta Tarefa
No mapa de cenário, MembersMFPFlow_Mapping.map, você deve resolver uma transformação de Tarefa. Se você revisar Mudanças no comportamento em mapas de dados gráficos convertidos de mapas de mensagens, há informações sobre aquilo que pode e não pode ser convertido
automaticamente. No mapa do cenário, esql:trim-both é uma função que não pode ser convertida automaticamente e portanto é agora uma transformação de Tarefa.
Se você tiver uma transformação de Tarefa em um submapa, no mapa principal é representado por uma cruz vermelha na transformação, e informações adicionais são fornecidas se você mover o cursor sobre a transformação. As transformações de Tarefas são listadas na visualização Problemas.
Você deve configurar a transformação de Tarefa para que ela se torne um tipo de transformação válida. Siga as etapas para resolver uma transformação de Tarefa:
Procedimento
- No editor de Mapeamento de Dados Gráficos, selecione a transformação de Tarefa.
As propriedades de transformação são exibidas na visualização
Propriedades.
- Na visualização Propriedades, clique na guia Documentação para revisar detalhes sobre a estrutura de mapeamento que não foi recriada pelo processo de conversão. É possível ver que no cenário, as informações na guia Documentação explicam como resolver a Tarefa: criando uma expressão equivalente para a função.
- No editor de Mapeamento de Dados Gráficos, altere a transformação de Tarefa em um tipo de transformação funcional clicando na seta na caixa de transformação e, em seguida, selecionando na lista de transformações disponíveis. Para o cenário, selecione XPath Customizada.
- Na visualização Propriedades, clique na guia Geral.
- No campo da guia Geral, insira a expressão XPath a seguir:
fn:normalize-space( fn:substring( $PERSON_NOTES, 0, 24))
Use o assistente de conteúdo (Ctrl + Espaço) ao construir sua expressão XPath para assegurar que você sempre use um nome de variável válido, porque o elemento de entrada poderia ser diferente em transformações diferentes. Há um exemplo da importância do uso do assistente de conteúdo na etapa 9.
Essa expressão recria o comportamento da função original.
- Salve seu mapa atualizado.
Agora, há um conjunto opcional de etapas aqui para testar o mapa de dados gráficos, porque o teste mostra como o comportamento do mapeamento foi alterado devido à lógica atualizada e por que é importante verificar suas conversões. Se você desejar criar um mapa de trabalho apenas, vá para a etapa 8.
- Opcional: Teste a mudança para o comportamento NULL de ESQL no mapa de cenário.
- Tente seguindo as etapas em Verificando a solução.
Quando o elemento PERSON_NOTES for inferior a 48 caracteres de comprimento, o elemento de saída MEMBER_COMMENT3 será criado como um elemento XML vazio.
- Revise os resultados do teste original da Versão 7.0. É possível ver que MEMBER_COMMENT3 foi excluído desta condição. Isso ocorre porque o processamento NULL de ESQL é diferente. Em um mapa de dados gráficos baseados em padrões XML/XPath, é possível modelar NULL apenas como um elemento vazio, com xsi:nil configurado se o modelo definir o elemento como anuláveis. Se essa mudança for inesperada e indesejável, ela poderia levar a erros de processamento ou validação. Você deve incluir uma expressão de condição XPath para evitar que a ESQL commentPart3() seja chamada quando os dados de entrada forem inferiores a 48 caracteres de comprimento.
- Continue o cenário a partir da etapa 8.
- No editor de Mapeamento de Dados Gráficos, selecione a transformação ESQL Customizada que se conecta a PERSON_NOTES. Na visualização Propriedades, clique na guia Condição.
- Na guia Condição, insira a expressão XPath a seguir no campo:
fn:string-length( $PERSONNOTES ) > 48
Essa condição impede o aparecimento de MEMBER_COMMENT3 se o valor de PERSON_NOTES for inferior a 48 caracteres.
Use o assistente de conteúdo (Ctrl + Espaço) ao construir sua expressão XPath. O assistente de conteúdo pode sugerir um valor diferente para $PERSON_NOTES se você modificar as transformações fora das etapas fornecidas.
Por exemplo, o assistente de conteúdo pode sugerir $PERSON_NOTES1. Aceite esse valor, porque ele está correta para o cenário.
- Sua transformação de Tarefa é resolvida em uma transformação XPath Customizada em funcionamento. Salve seu mapa atualizado.
- Salve seu mapa atualizado.
Resultados
Você removeu com êxito as anotações e os erros do mapa de dados gráficos convertidos.
Sua solução de mapeamento está agora pronta para uso.
Para verificar se o seu mapa funciona conforme o esperado, siga as etapas em Verificando a solução.