Árvore de páginas

Versões comparadas

Chave

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

...

Produto:

Solucoes_totvs

Solucoes_totvs_cross
SolucaoCrossTOTVS Backoffice

Solucoes_totvs_parceiros
SolucaoParceiros

Solucoes_totvs_parceirosexptotvs
SolucaoParcsExpsTOTVS

Linha de Produto:

Linhas_totvs
LinhaLinha Protheus

Segmento:

Segmentos_totvs
SegmentoServiços

Módulo:Livros Fiscais - SIGAFIS
Função:MATXFIS.PRX
País:Brasil
Ticket:9976307
Requisito/Story/Issue (informe o requisito relacionado) :DSERFIS1-23460


02. SITUAÇÃO/REQUISITO

03. SOLUÇÃO

...

tabsPasso 01, Passo 02, Passo 03, Passo 04
idspasso1,passo2

...

defaultyes
referenciapasso1

...

defaultno
referenciapasso2

04. DEMAIS INFORMAÇÕES

Card documentos
InformacaoUse esse box para destacar informações relevantes e/ou de destaque.
TituloIMPORTANTE!

Valor do IRPF errado após deletar item.

Quando temos calculo de IRPF pela tabela progressiva em uma nota de entrada com mais de um item e deletamos um desses itens, o valor do IRPF é definido pelo sistema de maneira errada.

Quando um item é alterado o sistema recalcula o IR mas, quando um item é deletado o sistema não efetua este recalculo o que causa a não conformidade.

Como o sistema trabalha?

Para entender o que realmente acontece descreverei o processo que o sistema faz.

No processamento do valor do IRPF progressivo temos um passo onde o sistema distribui o valor total do tributo entre todos os itens que o calculam cuja a alíquota é igual.

Exemplo:

Supondo que tenhamos 3 itens na NF de entrada que calculem IRPF pela tabela progressiva:

  • item1 - valor 10.000,00
  • item2 - valor 5.000,00
  • item3 - valor 10.000,00
  • BC Total do IRPF = 25.000,00

Como a BC do IRPF é 25.000,00 a alíquota que deve ser aplicada, segundo a tabela progressiva de 2021 é de 27,05% com dedução de 869,36.

Assim temos o valor do IRPF:

(25.000 * 27,5%) - 869,36 = 6.005,64

Após encontrar o valor do IRPF o sistema irá distribuir esse valor entre os 3 itens conforme a proporção que lhes cabe. Para achar o fator proporcional o sistema divide a BC do item pela BC total. Assim:

  • item1 = 10.000 / 25.000 = 40%
  • item2 = 5.000 / 25.000 = 20%
  • item3 = 10.000 / 25.000 = 40%

Temos então a distribuição do valor total do IRPF entre os itens:

  • item1 = 6.005,64 * 40% = 2402,256
  • item2 = 6.005,64 * 20% = 1201,128
  • item3 = 6.005,64 * 40% = 2402,256

Esse valores são gravados nas referências de cada um desses itens.

Deletando um item

Quando deletamos um desses itens o sistema acessa o valor guardado na referência e deduz do total:

  • IRPF Total = 6.005,64
  • item3 deletado
  • IRPF Total = 6.005,64 - 2402,256 = 3603,38(4)

O sistema faz isso para evitar cálculos desnecessários. Porém, para esse caso em específico essa lógica não funciona. Veja por quê:

  • IRPF Total = 6.005,64
  • item3 deletado
  • IRPF Total = 25.000 - 10.000 = (15.000 * 27,5%) - 869,36 = 3255,64

Desta vez eu recalculei o IR com a nova BC que é composta pelos 2 itens não deletados. Se comparar com o valor do IRPF anterior podemos ver que há uma grande diferença.

Conclusão

O problema está na lógica aplicada pelo sistema quanto a exclusão de item na NF de entrada. Ela funciona bem quando se trata de valores baseados apenas em porcentagens, porém, quando se trata da tabela progressiva temos a parcela fixa a ser deduzida. Essa parcela acaba não se encaixando com a distribuição proporcional feita pelo sistema.

Além disso, dependendo do valor total da nota o IR a ser calculado pode cair em faixas de valores diferentes. Isso quer dizer que quando deletamos um item o cálculo do IR pode sair da faixa atual da tabela progressiva para uma outra faixa.

03. SOLUÇÃO

Para solucionar este problema foi implementado o recalculo do IR após um item ser deletado quando este é baseado na tabela progressiva.

04. DEMAIS INFORMAÇÕES

Não se aplica.

05. ASSUNTOS RELACIONADOS

...



Templatedocumentos


HTML
<style>
div.theme-default .ia-splitter #main {
    margin-left: 0px;
}
.ia-fixed-sidebar, .ia-splitter-left {
    display: none;
}
#main {
    padding-left: 10px;
    padding-right: 10px;
    overflow-x: hidden;
}

.aui-header-primary .aui-nav,  .aui-page-panel {
    margin-left: 0px !important;
}
.aui-header-primary .aui-nav {
    margin-left: 0px !important;
}

.aui-tabs.horizontal-tabs>.tabs-menu>.menu-item.active-tab a::after { 
	background: #FF9900; !important 
}

.menu-item.active-tab { 
	border-bottom: none !important; 
}

</style>