Home

Linha Microsiga Protheus

Páginas filhas
  • Engine de Regras (CD0024) no SIGAGFE

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Dica 02:  Uso do Clientlog durante a investigação de algum incidente

 

Durante a execução das integrações do SIGAGFE que utilizam-se de conceito de engine de regras,  há a execução da API cdp/cdapi034 responsável em executar o cadastro da regra, sendo possível consultar alguns parâmetros no clientlog:

...

                                       <temp-table, não e visível>).

 

Dica 03:  Arquivo de log da API cdp/cdapi034

 

Durante a execução das integrações do SIGAGFE que utilizam-se de conceito de engine de regras,  há a execução da API cdp/cdapi034 responsável em executar o cadastro da regra. Esta API, gera no diretório temporário da sessão Progress (comando session:temp-directory), um arquivo de log onde é possível comparar o cadastro das variáveis da condição(cdp/cd0024) com os valores recebidos.

 

Segue exemplo de como interpretar o conteúdo apresentado neste arquivo. No arquivo cdapi034.txt consta as seguintes linhas:

Regra: 20

if ('2352'='2352')AND (LOGICAL('yes')=LOGICAL('yes'))AND (INTEGER('1')=INTEGER('1'))AND (LOGICAL('no')=LOGICAL('yes')) then YES else NO

 

Para a interpretação recomenda-se que seja também executado o programa de Cadastro de Engine de Regras(CD0024), consultando-se a regra (no exemplo é a regra 20) onde se tem a sequencia das variaveis utilizadas com o respectivo cadastro. Para cada condição existente, no log é apresentado primeiramente o conteúdo recebido e depois o conteúdo cadastrado na condição onde então, pode-se conferir se a condição é verdadeira ou não.

Ilustrando:

nat-operacao: 2352(RECEBIDO) = 2352(CONDIÇAÕ) AND * satisfaz a condição

l-trib-pc...: yes(RECEBIDO) = yes(CONDIÇÃO) AND * satisfaz a condição

cb-trib-icm.: 1(RECEBIDO) = 1(CONDIÇÃO) AND * satisfaz a condição

l-crdicms...: no(RECEBIDO) = YES(CONDIÇÃO) * como está sendo enviado NO e esta condição espera YES, fará com que esta regra não seja aplicada.