Histórico da Página
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.
Informações | ||
---|---|---|
| ||
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
Informações | ||
---|---|---|
| ||
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
Informações | ||
---|---|---|
| ||
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).