01. DADOS GERAIS

Produto:

Linha de Produto:

Segmento:

Tipo de Documento:

Manutenção

Módulo:Acordos e Verbas
Caminho: Administração > Verba Bonificação
Função:VERBAS DE BONIFICAÇÃO - MAX0302
País:Brasil
Ticket:25423792 
Requisito/Story/Issue (informe o requisito relacionado) :

02. SITUAÇÃO/REQUISITO

     Ao informar uma descrição de família ou produto que contenha caracteres especiais, principalmente o apóstrofo ('), o sistema passa a montar um SQL dinâmico inválido durante a construção da cláusula LIKE. Essa falha ocorre porque o valor digitado pelo usuário é concatenado diretamente no comando SQL, sem qualquer sanitização ou escape do caractere especial. Como consequência, o apóstrofo encerra prematuramente a string literal do SQL, resultando em erro de sintaxe no momento da execução.

03. PRÉ-REQUISITOS






     Existência de descrições de produtos ou famílias contendo caracteres especiais — especialmente o apóstrofo (') — utilizadas como filtro na aplicação de verbas de bonificação, quando realizada por meio do acesso por lote.

04. SOLUÇÃO

     A solução implementada impede que descrições de produtos ou famílias contendo apóstrofos, ou outros caracteres especiais interrompam a montagem do SQL dinâmico utilizado na cláusula LIKE. O erro ocorria porque o valor digitado pelo usuário era inserido diretamente na instrução SQL, fazendo com que o apóstrofo encerrasse a string literal e quebrasse o comando.

     Para corrigir o problema, o texto informado passou a ser tratado previamente no banco de dados antes de compor o WHERE. Foi adicionada uma execução via SqlPrepareAndExecute, utilizando a função fc5LimpaTexto, responsável por normalizar a descrição, convertê-la para maiúsculas e remover caracteres que possam comprometer a integridade da consulta.

     O resultado desse processamento é armazenado em uma variável intermediária, que então é utilizada na montagem do SQL dinâmico, garantindo a construção correta da cláusula LIKE e evitando falhas na execução da consulta.



05. REQUISITOS DE VERSÃO

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

      Se estiver na versão 25.07, atualizar o sistema para o service pack 25.07.022 ou service pack superior

06. DOCUMENTOS RELACIONADOS

DOCUMENTO(S) DE REFERÊNCIA