Anveo EDI Connect / Config / Tópicos Avançados / Mapping Pós-Processamento
Esta é uma tradução automática. O post original está disponível em Inglês .

Mapping Pós-Processamento

Anveo EDI Connect tem um poderoso sistema integrado de fluxo de trabalho EDI. Para os casos padrão, você pode querer usar as Transações Comerciais. Se você não pode modelar seu fluxo de trabalho usando esses, há também o conceito do nosso, assim chamado, Pós-Processamento, que são chamados diretamente do mapping e podem modelar qualquer fluxo de trabalho mapping.

Como descrito na seção Modelagem de Fluxos de Trabalho Mapping, geralmente usamos múltiplos mapeamentos para processar dados de entrada ou de saída. Nas seções seguintes, descrevemos as diferentes possibilidades de iniciar outro mapping (ou transação comercial) a partir do mapping atual.

Um pós-processamento é definido em um loop de tabela em um mapping. Dependendo do conversor também pode haver uma opção para iniciar um mapping usando um comando, mas nesta seção vamos assumir que você tem um mapping e deseja pós-processar os dados da tabela.

Vamos tomar um exemplo típico: Você recebe um arquivo que contém vários documentos. O primeiro mapping analisa o ficheiro e cria múltiplos registos no nosso EDI Document tabela tampão. A estrutura da linha também está escrita na EDI Document Line tabela. Geralmente, o usuário deseja processar cada documento individualmente, por isso define o pós-processamento na tabela de cabeçalho do documento: EDI Document. O mapping que processa a estrutura de cabeçalho pode obter as linhas, através da aplicação de um DataItemLink adequado.

A ação pós-processo é executada para cada registro que é processado no mapping. Para uma tabela em modo de escrita, isto significa cada registo que é escrito. Para uma tabela em modo de leitura é executada para cada registro lido. Em tabelas em modo de atualização, quando se agrupam dados, geralmente deve-se evitar definir um pós-processamento, pois a ação de pós-processo é executada para cada atualização e não para cada registro único. Descrevemos uma forma de lidar com isto na secção Dicas e Truques.

Definição de uma ação pós-processo

No mapping você tem que encontrar o loop da tabela correta e ir para as propriedades da EDI Mapping Line. Existe uma propriedade chamada Post-Processing. Por favor, use o botão AssisEdit, até o valor, para abrir o editor. É possível criar mais de um pós-processamento, que pode ser usado, por exemplo, para enviar uma mensagem de confirmação e também para processar os dados no Anveo EDI Connect. Use também no editor de listas o botão AssisEdit, para definir as propriedades reais do pós-processamento.

Type

Você pode escolher o tipo geral do pós-processamento. As seguintes opções estão disponíveis:

Process Mapping

O pós-processamento deve executar outro mapping com os dados da tabela atual.

Se você selecionar este valor, outros imóveis ficarão disponíveis.

Batch Processing (BT)

Marcar o registro atual a ser processado por uma ação em lote de transação comercial. Isso pode ser usado, por exemplo, em um mapping que pega um documento do sistema e cria o documento buffer para especificar que o documento buffer deve ser passado para a ação em lote. Só é possível marcar um registro em uma execução mapping como o registro de processamento em lote.

Este tipo não tem quaisquer propriedades adicionais.

Start Sub-Process (BT)

Inicia um novo sub-processo com o registo actual. Um sub-processo requer uma transação comercial ativa e é mostrado como um filho do atual. O subprocesso também tem de usar os mesmos dados da tabela que o laço da tabela atual. Um subprocesso utilizará o parceiro atual e só definirá o número de referência a partir dos dados atuais.

Se você selecionar este valor, um imóvel ficará disponível.

Start New Business Transaction

Inicia uma nova transação comercial com o registro atual. A transação comercial tem que usar os mesmos dados da tabela que o loop da tabela atual. O EDI Communication Partner é determinado como definido no tipo de transação comercial.

Se você selecionar este valor, um imóvel ficará disponível.

Business Transaction Type

Esta propriedade só está disponível se o Type propriedade estiver definido para Start Sub-Process (BT) ou Start New Business Transaction. Especifica o EDI Business Transaction Type que deve ser utilizado.

Code

Esta propriedade só está disponível se o Type propriedade estiver definido para o valor Process Mapping. Um código que é armazenado na EDI Processing Queue tabela e que pode ser usado para filtrar a tabela.

Group Code

Esta propriedade só está disponível se o Type propriedade estiver definido para o valor Process Mapping. Apenas um pós-processamento é executado para cada registro desta linha e grupo. Portanto, se você definir vários pós-processamentos com o mesmo grupo, apenas o primeiro que for executado com sucesso será executado.

Caption ML

Esta propriedade só está disponível se o Type propriedade estiver definido para o valor Process Mapping. A legenda é multilingue. Ele é mostrado na EDI Processing Queue e se o usuário quiser reprocessar um documento.

Project Code

Esta propriedade só está disponível se o Type propriedade estiver definido para o valor Process Mapping. Nesta propriedade você pode especificar o EDI Project do mapping.

Format Code

Esta propriedade só está disponível se o Type propriedade estiver definido para o valor Process Mapping. Esta propriedade especifica o EDI Format do mapping.

Mapping Code

Esta propriedade só está disponível se o Type propriedade estiver definido para o valor Process Mapping. Especifica o código do mapping que deve ser utilizado.

Stay in Business Transaction

Esta propriedade só está disponível se o Type de propriedade estiver definido para o valor Process Mapping e você estiver usando Anveo EDI Connect 4.00 ou mais recente. Especifica se o pós-processamento faz parte da transação comercial atual. Você pode definir isso como False para ter pós-processamento, que não estão diretamente relacionados com as transações comerciais.

Process Manually

Esta propriedade só está disponível se o Type propriedade estiver definido para o valor Process Mapping. Se você definir esta propriedade para o valor True a ação não será executada automaticamente e requer uma interação do usuário. Isto é útil para os testes.

Process Synchronously

Esta propriedade só está disponível se o Type propriedade estiver definido para o valor Process Mapping.

Por favor, tente evitar o uso de pós-processamentos síncronos, eles podem causar problemas de bloqueio de tabela e são mais difíceis de entender se houver erros.

Se você definir o valor desta propriedade como True, o pós-processamento será executado na mesma transação de banco de dados que o mapping atual. Se houver um erro no pós-processamento, ele será logado no mapping atual. Também a EDI Processing Queue da mesa será bloqueada durante a execução do pós-processamento.

Run With Priority

Esta propriedade só está disponível se o Type propriedade estiver definido para o valor Process Mapping. Se você definir esta propriedade para o valor True, o pós-processamento será executado com uma prioridade maior do que aqueles que não têm esta opção definida. Você pode usar isso para controlar a ordem de execução.

Time Until Overdue

Esta propriedade só está disponível se o Type propriedade estiver definido para o valor Process Mapping. É possível especificar um intervalo de tempo no qual se espera que o pós-processamento seja executado com sucesso.

Dicas e truques

Se você quiser executar outro mapping e não tiver um loop de tabela adequado, você pode adicionar a tabela do sistema Integer no modo de leitura e filtrar a coluna “Número” para um. Defina o pós-processamento nesta tabela.

O mapping pós-processo não precisa recuperar o registro de pós-processamento e também pode trabalhar em outras tabelas.

Se for necessário executar ações de pós-processamento no registro no modo de atualização, onde os dados são agrupados, pode-se usar o seguinte truque para executar o pós-processamento apenas uma vez por registro: Encontrar um campo não utilizado na tabela e defini-lo para um valor que não é usado de outra forma. No final do mapping pode então ler a tabela com um filtro neste campo e valor e desta forma encontrar apenas registos da execução mapping actual. Defina o pós-processamento nesta tabela e altere diretamente o valor de volta, colocando outra linha de atualização como filho da linha lida. Como todo o mapping é executado em uma transação de banco de dados, o usuário só deve processar os dados que deseja processar se não executar esse mapping várias vezes ao mesmo tempo (o que deve ser evitado por causa do bloqueio de tabela).