Árvore de páginas

Versões comparadas

Chave

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

...

Produto:

TOTVS Backoffice

Solucoes_totvs
Solucao

Solucoes_totvs_cross
SolucaoCross

Solucoes_totvs_parceiros
SolucaoParceiros

Solucoes_totvs_parceirosexptotvs
SolucaoParcsExpsTOTVS

Linha de Produto:

Linha Protheus 

Linhas_totvs

Segmento:

Backoffice SP 

Segmentos_totvs
Segmento

Módulo:FINANCEIRO (SIGAFIN)
Função:LANÇAMENTOS CONTÁBEIS OFF-LINE (CTBAFIN) - CP
Ticket:13112382
Requisito/Story/Issue (informe o requisito relacionado) :DFINAPL-14753


02. 
SITUAÇÃO/REQUISITO

Ao contabilizar offline (CTBAFIN) em multi-thread com banco de dados Oracle o processo é interrompido ao encontrar o seguinte cenário: Compensação Quando há compensações a pagar (FINA340) de 2 NDF's com 1 NF, sendo e posteriormente é estornada a compensação de uma das NDF's posteriormente.

No trace do DbAccess é exibido o seguinte erro ao tentar fazer o INSERT de registros na tabela temporária: Error : 1 - ORA-00001: unique constraint .

No mesmo cenário relatado, mas em banco de dados MSSQL, o processo não é interrompido, porém são geradas duplicidades nos lançamentos contábeis (LPS 597 e 589).

03. SOLUÇÃO

Foi identificado que a clausula LEFT JOIN da query responsável por buscar os fazer a busca dos registros da tabela SE5 retornava duplicidades no contexto de compensações a pagar.

Assim, ao tentar inserir esses dados na tabela temporária ocorria o erro e o processo era abortado.

Para <p style='margin-left: 30.0px;'>Para esse cenário foi corrigido os filtros da clausula LEFT JOIN para interpretar corretamente situações onde há estornos (E5_TIPODOC='ES').

Também </p><p style='margin-left: 30.0px;'></p><p style='margin-left: 30.0px;'>Também foi diagnosticado e corrigido na clausula LEFT JOIN, no contexto de compensações a receber, que a busca pelos registros não estava com a chave correta de comparação com o campo E5_DOCUMEN correta, causando a não gravação das flags de contabilização no campo E5_LA.</p><p style='margin-left: 30.0px;'></p>

04. DEMAIS INFORMAÇÕES

Melhoria complementar:

Implementamos na criação da tabela temporária de movimentações de títulos uma nova coluna sequencial para bancos Oracle e Postgres, afim de não ocorrer .

O intuito é que não ocorra a interrupção do processo (erro de insert unique constraint) quando houver retorno de registros duplicados da query.

04. DEMAIS INFORMAÇÕES

Não se aplica

05. ASSUNTOS RELACIONADOS

...