01. DADOS GERAIS

Produto:

TOTVS Varejo Supermercados

Linha de Produto:

Supermercados - Linha Consinco

Segmento:

Varejo

Tipo de Documento:

Manutenção

Módulo:Acordos e Verbas
Caminho: Administração > Verba sem Acordo Promocional
Função:VERBAS DE BONIFICAÇÃO SEM ACORDO PROMOCIONAL - MAC0046
País:Brasil
Ticket:24603214 
Requisito/StoryIssue (informe o requisito relacionado) :DSUPCONTR-9250

02. SITUAÇÃO/REQUISITO

  • Contexto
    Ao cadastrar uma verba no valor de R$0,01 e consumi-la, ao tentar gerar um acordo promocional por meio da aplicação “Verba de Bonificação sem Acordo Promocional” com os Indicadores Agrupar o Valor do Acordo Por Fornecedor e/ou Família marcados, o sistema apresenta a mensagem:
    “Houve divergência de valores na geração dos acordos. Não foi possível realizar a geração dos acordos.”
    Com isso, a geração do acordo não é concluída.

  • Causa raiz
    Esse comportamento ocorre devido à validação implementada na função pkg_Mrl_VerbaSellOutApuracao.fValidaApuracao, que compara os valores vnVlrTotalAcordoGerado e vnVlrTotalAcordoGeradoAux.
    Como o valor da verba é inferior a R$0,01, ambos os campos são definidos como NULL. Nesse cenário, a condição NULL = NULL não é satisfeita, impedindo que a variável vsApuracaoOK seja definida como 'S'. Consequentemente, o sistema atribui vsApuracaoOK = 'N' e retorna a mensagem de erro.
    Além disso, o sistema possui um trava ao selecionar a linha com valor de acordo menor que R$0,01, porém ao realizar a geração agrupada, está verificação não é realizada.

03. PRÉ-REQUISITOS

  • Cadastro de verba
    Criar uma verba de bonificação marcada como “verba sem acordo”.
    Definir um valor unitário da verba inferior a R$0,01.

  • Execução de venda
    Realizar uma venda em que a quantidade utilizada multiplica-se pelo valor unitário da verba, de forma que o valor total de verba (vlrunitverba × qtdutilizada) não ultrapasse R$0,01.

  • Geração do acordo
    Realizar a geração do acordo promocional pela aplicação Verba de Bonificação sem Acordo Promocional, selecionando um dos indicadores Agrupar o Valor do Acordo por Fornecedor e/ou Família, para as linhas em que a quantidade total a ser gerada seja inferior a R$0,01.


04. SOLUÇÃO

  • Tratamento de variáveis nulas
    Aplicado NVL(0) a todas as variáveis utilizadas na validação do valor do acordo gerado na função pkg_Mrl_VerbaSellOutApuracao.fValidaApuracao.
    Essa alteração garante que a condição seja corretamente atendida mesmo quando a comparação resultar em NULL = NULL.

  • Validação de valor mínimo
    Incluída uma validação adicional na procedure pkg_Mrl_VerbaSellOutApuracao.SP_ApuraVerba.
    Caso o valor do acordo gerado seja inferior a R$0,01, o sistema exibirá a mensagem:
    Não é possível gerar acordo para valores menores que R$0.01. Não foi possível realizar a geração dos acordos.

  • Abrangência da alteração
    A implementação foi realizada diretamente no objeto de banco de dados.
    Dessa forma, o bloqueio é aplicado tanto nas execuções realizadas via aplicação quanto nos processos executados por job.


05. REQUISITOS DE VERSÃO

       Se estiver na versão 24.07, atualizar o sistema para o service pack 24.07.036 ou service pack superior. 

       Se estiver na versão 25.01, atualizar o sistema para o service pack 25.01.011 ou service pack superior

06. DOCUMENTOS RELACIONADOS

DOCUMENTO(S) DE REFERÊNCIA
  • Clique Aqui para saber mais sobre Verba Bonificação - MAX0302
  • Clique aqui e veja mais sobre a Manutenção de Acordos Promocionais - MAC0045
  • Clique aqui e veja mais sobre a aplicação Verba sem Acordo Promocional - MAC0046
    OUTROS DOCUMENTOS TÉCNICOS
  • Não há