Árvore de páginas

Versões comparadas

Chave

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

Tempo aproximado para leitura: 00 min


01. DADOS GERAIS

Linha de Produto:Protheus
Segmento:Serviços
Módulo:Gestão de Contratos
Função:CNTI300
Ticket:4589291
Issue:DSERSGC-6390


02. SITUAÇÃO

Ao incluir ou alterar um contrato na situação Em Elaboração, o sistema enviava uma mensagem única de deleção.

03. SOLUÇÃO

O sistema foi corrigido para enviar mensagem de deleção apenas quando o contrato tiver sua situação alterada para Cancelado ou quando um contrato Vigente voltar para Elaboração. A rotina envia uma mensagem de atualização toda vez que se altera o contrato, para que ele mande a atualização apenas em situações pontuais deve-se utilizar o campo condição do cadastro do Adapter EAI, conforme ilustrado abaixo:

Valor do campo condição:

Bloco de código
languagejava
titleExemplo Condição
linenumberstrue
!((Alltrim(CN9->CN9_SITUAC) $ '09|A' .And. !FwIsInCallStack('CN300Delet')) .Or. (AllTrim(CN9->CN9_SITUAC) == '02' .And. CN100SitCtr() != '05')) 

No exemplo acima o cliente deseja que a integração EAI seja chamada apenas quando não se tratar de uma inclusão de revisão ou quando não for uma inclusão/atualização de um contrato Em Elaboração que anteriormente não tenha sido posto em Vigente( trecho que verifica o retorno da função CN100SitCtr() ).

Alternativamente, quando tratar-se de uma integração Protheus x PIMS, é possível utilizar a condição abaixo, que além de fazer o tratamento do exemplo anterior, também verifica se a integração está ativa e se de acordo com o tipo do contrato deve ser integradoutilizado.

Bloco de código
languagejava
titleExemplo Condição para clientes PIMS
linenumberstrue
CnCtrxPims()