Árvore de páginas

Utilizando Engine de Regras com Integrações EAI

O Engine de Regras é composto pelos programas disponíveis no Foundation do EMS2 a partir do release 2.04.

Esse conjunto de programas permite que sejam montadas configurações onde o cliente possa trabalhar com variáveis e regras distintas de acordo com o tipo de operação. Essa configuração deve partir de empresa, estabelecimento e operação, e de acordo com esta operação deve ser possível parametrizar variáveis distintas conforme a utilização nos aplicativos.

Importante:

A utilização do Engine de Regras com transações EAI está disponível a partir do release 2.06 do EMS2.

Algumas transações de integração receberam pontos EPC para realizar tratamentos das regras oriundas do Engine de Regras, conforme abaixo:

  • Conversão de códigos para os principais campos da transação.
    Exemplo: quando recebido determinado código, possibilitar sua conversão para o código interno cadastrado no produto recebedor.

  • Envio de informações do XML contendo regras de validação ao Engine de Regras antes da criação na fila do EAI, a fim de evitar a sobrecarga de XML´s na fila ou nos diretórios de gravação dos arquivos.
    Exemplo: Executar ou não uma determinada transação mediante uma regra cadastrada pelo Engine de Regras.

Segue abaixo a lista de transações EAI disponíveis e respectivas variáveis para utilização com Engine de Regras.

 

 Quadro 1:

Transação

Adapters EAI

Variáveis disponíveis para o Engine Regras

Sender Natureza da Operação

axsvd002

ctransation, cod-operacao, cod-cfop

Sender Transportador

axsvd007

ctransaction, cod-transp

Sender Nota Fiscal de Saída

axsep001

ctransaction, it-codigo, cod-ean, cod-estabel, serie, nome-ab-cli, cod-emitente, ind-sit-nota, cod-cond-pag, CGC (cliente), nat-operacao (da nota), ind-tip-nota, esp-docto

Sender Condição de Pagamento

axsvd001

ctransaction, cod-cond-pag

Sender Tabela de Preços

axsvd004

ctransaction, nr-tabpre

Sender Pedido de Venda

axsvd003

ctransaction, nome-abrev, cod-estabel, cod-emitente, nome-abrev, nat-operacao, esp-ped, cod-gr-cli, cod-cond-pag, cod-sit-ped, cidade-cif, cod-portador, nome-transp, cod-canal-venda, tp-pedido

Receiver Pedido de Venda

axrvd003

ctransaction, nome-abrev, nr-ped-cli, it-codigo, cod-ean, item-do-cli

Sender Itens

axsma003

ctransaction, it-codigo, fm-codigo

Sender Clientes/Fornecedores

axsfi001

ctransaction, cod-emitente

Sender Representantes

axsvd009

ctransaction, cod-repres

Receiver Documento Fiscal

axrof002

ctransaction, cod-estabel, cod-emitente, cidade, estado, nat-operacao, aliquota-icm, it-cod-estabel, it-cod-emitente, it-codigo, it-nat-operacao, it-cd-trib-iss, it-aliquota-ISS, it-cd-trib-icm, it-aliquota-icm

 

Observação:
A variável cTransaction serve para a configuração da ação da mensagem. O cliente pode assinar a transação e configurar condições para que uma determinada ação ocorra (add, upd, del).

Como ativar o Engine de Regras para utilização das variáveis disponíveis?

Deverá ser cadastrado um evento de nome EngineRegras para uma EPC já cadastrada para o adapter ou nova EPC. Não é necessário realizar nenhuma outra ação, visto que as variáveis já estão sendo carregadas pelos adapters. Vide variáveis disponíveis no quadro 1.

Observação:
Para os adapters Sender de Nota Fiscal de Saída, Pedido de Vendas e Documento Fiscal não é necessário cadastrar EPC.

As regras e variáveis deverão ser configuradas através do Engine de Regras.

Para mais informações no programa Cadastro do Configurador de Regras (CD0024).

Abaixo seguem algumas simulações a observar:


Simulação 1: Supondo que o cliente queira disparar a transação Sender Natureza da Operação apenas quando a ação da transação for de inclusão (add) ou de alteração (upd). A transação não será enviada quando ação for de exclusão (del).

Dada a seguinte configuração exemplo:

Transação: Sender Natureza da Operação

Empresa: 4 TOTVS S/A

Estabelecimento: 401 TOTVS S/A

Adapter: axsvd002

Importante:

O cadastro de tipo de operação é feito pelo programa Cadastro Tipo de Operação (CD0025).

O tipo de operação sempre será o nome do adapter.

Cadastrar a Regra no Engine de Regras (cd0024):

Empresa: 4 TOTVS S/A

Estabelecimento: 401 TOTVS S/A

Tipo Operação: axsvd002

Regra: Valida envio do XML Natureza Operação

Variável: cTransAction (variável comumente utilizada para gravar a ação das transações).

Como a regra é somente para validar o envio, não sendo necessário retornar outro valor (como por exemplo em um de-para) a sugestão é retornar “yes” ou “no” para a execução do programa axsvd002. Vide folder “Retorno” (Tela 3.1).

Quando a validação for para tratar o disparo ou não da mensagem, o campo para retorno deverá sempre ser o nome do adapter. Neste exemplo será o adapter Sender Natureza de Operação (axspd002.p).

 

Simulação 2: Supondo que ao recebermos o XML de Pedido de Venda, seja necessário converter o código da Natureza da Operação (nat-operacao) para um determinado cliente (cod-emitente). Este poderá ser convertido através do Engine de Regras.

Dada a seguinte configuração exemplo:

Transação: Receiver Pedido de Venda

Empresa: 4 TOTVS S/A

Estabelecimento: 401 TOTVS S/A

Cliente: 886 DIMED S/A

Código Natureza Operação a receber: 6101ab

Adapter: axrvd003

Importante:

O cadastro de tipo de operação é feito pelo programa Cadastro Tipo de Operação (CD0025).

O tipo de operação sempre será o nome do adapter.

Como será realizada a conversão de código, deverá ser cadastrado o campo e valor a receber a conversão. Vide folder “Retorno” (Tela 3.2).