Árvore de páginas


01. DADOS GERAIS

Produto:

TOTVS Backoffice

Linha de Produto:

Linha Protheus

Segmento:

Serviços

Módulo:

TOTVS Backoffice (Linha Protheus) - Fiscal (SIGAFIS)

Função:MATA953.PRX e FISXAPURA.PRW
País:Brasil
Ticket:15462728
Requisito/Story/Issue (informe o requisito relacionado) :DSERFIS1-31692 


02. SITUAÇÃO/REQUISITO

Algumas Unidades Federativas necessitam gerar uma apuração do ICMS para várias filiais que compartilham o mesmo raiz de CNPJ e Inscrição Estadual . Para esses casos, é permitido gerar uma apuração consolidada e, dependendo do volume de notas, é possível habilitar a opção MultiThread por meio do parâmetro MV_RF3THRE = .T. e especificando uma quantidade de threads superior a 1.

No entanto, é importante observar que, ao habilitar essa opção, a apuração pode se perder na geração de valores, resultando em valores gravados incorretamente na tabela temporária e, consequentemente, apresentando valores apurados via código de lançamento incorretos.


Exemplo: Apuração do ICMS ST 

RS - Filial 1 - Realizado uma venda para SP utilizando um código de apuração para tratar o  ICMS ST  no valor de 250,00 , este valor é gravado na tabela CDA no campo CDA_VALOR

RS - Filial 2 - Realiza a mesma  venda porem no valor de 100,00 este valor é gravado na tabela CDA no campo CDA_VALOR.

No momento da apuração esses são gravados em um tabela temporária , sendo que o valor consolidado seria 250+100 = 350.

Antes da correção, o grupo de apuração do ICMS ST  é alimentado por filial, e gravado na tabela temporária, mas quando finaliza a filial 1 e inicia a filial 2 , esse grupo de apuração do ICMS ST, permanece com os valores da Filial 1 e grava x vezes esse valor a cada looping de threads das filiais seguintes.

Portando os valores ficam:

250 = Primeiro Loop onde a Filial 2 , esta recuperando o valor da Filial 1 e gravando na tabela temporária.

250 = Segundo Loop, o grupo de apuração ainda tem na sua memoria o valor da filial 1, portanto ele grava novamente na tabela temporária.

100 = Segundo Loop o grupo de apuração tem os valores da Filial 2 e precisa grava-los na tabela temporária.


Nessa simulação, após finalizar o valor apresentado na tela da apuração será de 600,00 , isso aconteceu por que durante processamento a Filial 2 que consolida mantem gravados o valor consolidados da outras Filiais e cada momento que ela grava o seus próprios movimento , também grava novamente  o das filiais anteriores;

03. SOLUÇÃO

Foi implementada uma nova forma de identificar cada grupo de apuração e centralizá-los em um grupo temporário. Dessa forma, após finalizar todas as filiais, o grupo temporário retorna os valores consolidados para os seus respectivos grupos principais, garantindo a gravação correta nas tabelas que serão utilizadas e apresentadas na tela da apuração do ICMS.

04. DEMAIS INFORMAÇÕES

Não Há


05. ASSUNTOS RELACIONADOS

  • Não Há