Esta é uma tradução automática. O post original está disponível em Inglês .

ANVEDI Job Handler

Microsoft Dynamics NAV 2016 tem um sistema de programação de trabalhos que permite executar codeunits em determinados momentos. Anveo EDI Connect oferece uma codeunit dedicada que pode ser usada. A codeunit tem o ID 5327312 e chama-se ANVEDI Job Handler.

Exemplo de configuração de fila de trabalho no Microsoft Dynamics 365 Business Central

Esta codeunit oferece diferentes trabalhos e pode ser controlada pela cadeia de parâmetros. Esta string segue regras simples e vamos mostrar-lhe exemplos para cada uma das acções disponíveis. A sintaxe geral deste parâmetro é:

Há dois parâmetros que estão disponíveis para a maioria dos trabalhos, excepto para as Transacções Comerciais:

ProcessFollowing

Controla se os pós-processamentos são executados automaticamente. Este padrão é False, se não especificado.

True

O pós-processamento deve ser executado posteriormente

False

A configuração padrão determinará se os pós-processamentos serão executados.

ProcessQueueView

Este parâmetro é opcional. O valor predefinido não é uma vista de tabela. Este parâmetro especifica uma visão na tabela para a Fila de Processamento de EDI que é usada se ProcessFollowing=True. A string tem que ser uma vista de tabela Microsoft Dynamics NAV 2016, como WHERE(Project Code=FILTER(A*)).

Acções Frequentemente Utilizadas

Na maioria das vezes, você vai querer usar uma das seguintes ações:

Recebimento de dados

Esta acção irá receber dados para um canal ou pasta de comunicação especificado.

Exemplo de parâmetro String: Receber dados do canal de comunicação MY_COMM_CHANNEL

Você terá que especificar um dos seguintes parâmetros:

Channel

Especifica uma cadeia de filtro para o código do canal de comunicação. Este pode ser o código completo, ou uma cadeia de filtros.

Folder

Especifica uma cadeia de filtros para o código da pasta de transmissão. Este pode ser o código completo, ou uma cadeia de filtros.

Executar um mapping

Muitas vezes, se você quiser exportar dados, você começa com um trabalho de transação comercial, ou um NAV mapping. Mas o sistema de programação pode executar qualquer tipo de mapping.

Exemplo de parâmetro String: Execute o mapping TEST, NAV, EXPORT_JOB.
Exemplo de parâmetro String: Execute todos os mapeamentos de NAV do projeto TESTE.

Os parâmetros permitidos são:

ProjectFilter

O código do projeto ou uma string de filtro no código do projeto.

FormatFilter

O código de formato ou uma string de filtro no código de formato.

CodeFilter

O código mapping ou uma cadeia de filtros no código mapping.

MultipleAllowed

Função de segurança. Se vários mapeamentos devem ser executados. False com False.

True

Mapeamentos múltiplos podem ser executados.

False

Múltiplos mapeamentos não podem ser executados.

Coleta de dados de transações comerciais

Se houver um tipo de transação comercial com coleta de dados, é possível usar a seguinte cadeia de parâmetros:

Exemplo de parâmetro String: Coletar os dados como definidos no tipo de transação comercial MY_BT_TYPE.

Há apenas um parâmetro:

Code

O código do tipo de transação comercial. Este parâmetro não permite filtros.

Ações Avançadas

As seguintes acções são mais especializadas e não são utilizadas com tanta frequência.

Dados de Transação Comercial do Processo Lote

Exemplo de parâmetro String: Executar a ação do lote com o código MY_BATCH_CODE.
Batch

O código do Batch. Este parâmetro não permite filtros.

Coleta e Processamento em Lote de Dados de Transação Comercial

Esta é uma combinação de BT_COLLECT e BT_BATCH.

Exemplo de parâmetro String: Coletar dados de MY_BT_TYPE e executar a ação de lote com o código MY_BATCH_CODE.
Batch

O código do Batch. Este parâmetro não permite filtros.

Code

O código do tipo de transação comercial. Este parâmetro não permite filtros.

Processar Filas de Processamento Abertas

Se você não executar os pós-processamentos automaticamente, você pode configurar os jobs para executar determinadas ações em aberto.

Exemplo de parâmetro String: Processar entradas abertas do projeto MY_PROJECT.

Você pode usar os parâmetros ProcessQueueView e ProcessFollowing.

Enviar transmissões abertas

Normalmente o envio de dados é feito como um pós-passo da execução do mapping. No entanto, se você quiser enviar arquivos abertos em um determinado momento, você pode usar um trabalho.

Exemplo de parâmetro String: Enviar a transmissão aberta de MEU_CHANNEL.
Channel

Especifica uma cadeia de filtro para o código do canal de comunicação. Este pode ser o código completo, ou uma cadeia de filtros.

Folder

Especifica uma cadeia de filtros para o código da pasta de transmissão. Este pode ser o código completo, ou uma cadeia de filtros.

Executar chamada de retorno com código personalizado

Você pode usar a codeunit do manipulador de tarefas para executar seu código personalizado.

Você pode especificar quantos parâmetros você precisar. Recomendamos a utilização de um parâmetro Nome para especificar um identificador de retorno de chamada. Você pode acessar os parâmetros a partir da codeunit ANVEDI Callback. Na codeunit ANVEDI Callback na função CallbackRegistration você pode reagir ao evento OnJobCallback implementando o seguinte bloco CASE:

Exemplo de código na ANVEDI Callback Codeunit.

Por favor note que os nomes dos parâmetros são convertidos para maiúsculas na variável ParameterDictionary. Você pode usar a seguinte seqüência de parâmetros na Fila de Trabalhos para chamar a chamada de retorno:

Exemplo de parâmetro String: Chamar código personalizado