01. DADOS GERAIS
Produto: | TOTVS Distribuição e Varejo |
---|---|
Linha de Produto: | Linha Winthor |
Segmento: | Distribuição |
Módulo: | 33 - Vendas Avançado |
Função: | Recalcular Comissão de RCA |
Ticket: | 11554689 |
Requisito/Story/Issue : | DDVENDAS-28684 |
02. SITUAÇÃO/REQUISITO
Rotina 3308 periodo 01/01/2008 ate 31/12/2008
apresenta mensagem :
Erro ao calcular comissão.
ORA-00913: valores demais.
03. SOLUÇÃO
O erro ocorria quando o cliente selecionava um período cuja houve grande volume de pedidos, no momento de realizar o recalculo das comissões antes de realmente calcular a comissão ( campo PERCOM ) o mesmo era zerado através de uma query do tipo ( UPDATE PCPED SET PERCOM = 0 WHERE NUMPED IN ( 12345)), acontece que ao pegar um período com muitos pedidos naquele período, a quantidade de registros dentro de clausulas IN era gigantesca, gerando uma query com custo computacional inviável ( no cliente em questão havia 83700 registros dentro da clausula IN, em anexo está a query antiga capturada no trace), com isso a query não era executada pois como a query é muito custosa excedia o limite de tempo para criar um plano de execução para a sessão Oracle e perdia a conexão (isso pode ser verificado tentando executar a query em anexo no PL/SQL). Com isso gerava-se o erro descrito pelo cliente.
CÓDIGO - NOME DA ROTINA:
- PCSIS3308
VERSÃO DA ROTINA:
- 30.0.14.3
- 30.1.9.2
*PROCEDIMENTOS PARA SIMULAR:*
Claro cliente realizar a atualização da rotina e refazer o recalculo da comissão.
04. DEMAIS INFORMAÇÕES
Importante!
As versões estarão disponíveis para download no CCW.
https://centraldecontrole.pcinformatica.com.br/
Mantenha suas rotinas sempre atualizadas!
05. ASSUNTOS RELACIONADOS