Árvore de páginas

Versões comparadas

Chave

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

...

Calculo realizado pelo sistema na aplicação de descontos

Produto:

Microsiga Protheus®

Versões

Ambiente:

 11 e 12

Ambiente:

Faturamento

Faturamento (SIGAFAT)

Ocorrência:

 Ocorre erro no arredondamento ao informar um Desconto no pedido de vendas

Ao aplicar desconto no Pedido de Vendas (MATA410) / Orçamento de Venda (MATA415) o sistema recalcula para outro valor/percentual.

Passo a passo:

No processo de Cálculo dos Descontos o sistema realiza algumas operações, quando o ambiente possui alteração de casas decimais, é necessário realizar alteração de decimais também nos campos de desconto.

 

Isso ocorre, pois o sistema executa o seguinte processo de calculo:

Dica
titleVídeo How To

Veja nosso vídeo How To sobre o processo: How To | MP - SIGAFAT - Arredondamento dos descontos


Ao inserir um desconto na linha do item do Pedido de Venda (MATA410) e/ou no Orçamento de Venda (MATA415), o sistema recalcula o valor/percentual de desconto e não permite a aplicação do desconto desejado.

Isso pode ocorrer, pois o percentual aplicado sempre será calculado proporcionalmente ao valor do item e à sua quantidade. 
Este proporcional deve ser um valor comportado pelo tamanho de decimais de sua base, pois, caso contrário, ocorrerá diferença no cálculo.


Abaixo demonstramos o calculo realizado pelo sistema para determinar o Valor e o Percentual de desconto nos itens:

Exemplo de desconto pretendido incompatível com as decimais em relação à QUANTIDADE:

Quantidade: 218

Valor Unitário: 10,00

Desconto Pretendido: 3,96


O sistema tenta chegar ao valor do desconto por unidade

Valor do Desconto dividido pela quantidade:Exemplo

:

3,96 (

Valor do

Desconto Pretendido) / 218 (Quantidade) = 0,

018165138 (Desconto por unidade de produto)Verifique que são necessárias nove

0181651376146789.

Ou seja, são necessárias dezesseis casas decimais para registro exato do

conteúdo utilizado no cálculo.

 

OBS.: Em ambiente padrão o sistema possui somente duas casas decimais.

 

 

2. Valor Calculado vezes a quantidade:
Após a

resultado do cálculo de desconto por item.


Porém, por nativo, o sistema possui dois decimais apenas, e dessa forma o campo só pode registrar os dois primeiros números das casas decimais:

  • Caso o parâmetro MV_ARREFAT esteja habilitado, o sistema arredonda para:  0,02
  • Caso o parâmetro MV_ARREFAT esteja desabilitado, o sistema registra o valor: 0,01


Proporcional de Desconto Comportado X Quantidade:

Após obter o resultado da divisão do valor de desconto pela quantidade, o sistema realiza o processo inverso, ou seja, multiplica novamente o "Desconto por unidade

de produto

" pela "Quantidade":

  • 0,02 (Desconto por unidade) X 218 (Quantidade) = 4,36 (Desconto comportado); ou,
  • 0,
018165138
  • 01 (Desconto por unidade de produto) X 218 (Quantidade) =
3
  • 2,
96 
  • 18 (
Valor do
  • Desconto comportado)

Obs.: Este é um cálculo interno do sistema, quando digitado o valor do desconto

no campo

nos campos C6_VALDESC ou C6_DESCONT

, este processo é realizado.

 

 

3. Apresentação do Resultado

Em uma base onde os campos de desconto possuam somente duas decimais, ao tentar registrar o “Desconto por unidade de produto” o sistema registra somente as duas primeiras casas, o que gera o erro:

 

0,01 (Desconto por unidade de produto) X 218 (Quantidade) = 2,18 (Valor do Desconto)

.


Pelo calculo demonstrado acima, veja que o valor de desconto pretendido (3,96), ao ser digitado, será convertido para 4,36 ou para 2,18.


ALTERNATIVAS PARA TRATAR A SITUAÇÃO:

  1. Utilizar os campos de indenização: C5_DESCONT / CJ_DESCONT no cabeçalho do pedido/orçamento, pois eles não executam o cálculo no item do Pedido, gerando o valor de desconto apenas na nota fiscal. Mais detalhes em: https://tdn.totvs.com/x/KE1tDQ
  2. Aumentar as casas decimais de modo que comportem o resultado do cálculo pretendido.
    ATENÇÃO: Se não for uma necessidade recorrente, esta opção não é mais indicada pois o
    aumento de casas decimais no Protheus é uma questão delicada. Quando realizado sem os devidos critérios ou não recebe a devida manutenção, pode causar diversas inconsistências de base. Consulte atentamente a documentação sobre este tema: https

Assim é calculado o arredondamento errado e o valor do desconto sai errado no pedido.

 

 

4. Solução

 

Para tratamento é necessário aumentar as casas decimais dos campos de desconto para que sejam capazes de preencher as informações de cálculo, valide a documentação:

http
display/public/PROT/FAT0068_Aumento_de_Casas_Decimais_no_ambiente_Faturamento_SIGAFAT

 

Observações:

Uma Opção é a utilização do campo C5_DESCONT no cabeçalho do pedido, pois o mesmo não executa o cálculo, aplicando o desconto somente no total da nota.

c6-qtdven = 1

c6-prcven = 51,1

c6-descont = 18,89


c6_prcven se mv_arrefat = s  = 41,45

c6_prcven se mv_arrefat = n  = 41,44

Pode lhe interessar:

Descontos no Pedido de Venda: https://tdn.totvs.com/x/KE1tDQ

Como é aplicado o desconto no Faturamento: https://tdn.totvs.com/x/pxowDg