1
resposta

Campo CATEGORIA

Entendi que para mudar as condições tenho que mudar as constantes. Mas como eu mudo dinamicamente os valores do campo de CATEGORIA da tabela em que as condições eram outras no passado? e agora são outras.

EX: antes para Médio Grande era 100000 e agora é 90000. Como eu mudo os valores dinamicamente dos campos que já estavam com as condições antigas?

1 resposta

Oii, Eduardo! Tudo bom?

Uma sugestão é usar o UPDATE que utiliza uma lógica similar à da função OBTER_CATEGORIA_CLIENTE, para atualizar dinamicamente os valores do campo CATEGORIA com base em novas regras.

Abaixo deixo um exemplo para você realizar o teste. Mas antes, é importante que faça o teste fora do ambiente de produção. Salve uma cópia da tabela antes de fazer o teste para caso preciso estará lá.

UPDATE CLIENTE
SET CATEGORIA = 
    CASE 
        WHEN FATURAMENTO_PREVISTO <= CLIENTE_PAC.c_PEQUENO THEN 'PEQUENO'
        WHEN FATURAMENTO_PREVISTO <= CLIENTE_PAC.c_MEDIO THEN 'MEDIO'
        WHEN FATURAMENTO_PREVISTO <= CLIENTE_PAC.c_MEDIO_GRANDE THEN 'MEDIO GRANDE'
        ELSE 'GRANDE'
    END;

No exemplo acima, o comando irá atualizar a coluna CATEGORIA de todos os registros na tabela CLIENTE com base nos novos limites que você definiu nas constantes.

Para expandir os seus conhecimentos, recomendo que sempre tenha a documentação em mãos para te auxiliar.

Faça o teste adaptando ao seu projeto e observe se funciona como deseja. Espero ter ajudado e conte sempre com a gente aqui no fórum.

Bons estudos e até mais!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado!