Produto: | |
---|---|
Linha de Produto: | |
Segmento: | |
Módulo: | 33 - Vendas Avançado |
Função: | Recalcular Comissão de RCA |
Ticket: | 11554689 |
Requisito/Story/Issue : | DDVENDAS-28684 |
Rotina 3308 periodo 01/01/2008 ate 31/12/2008
apresenta mensagem :
Erro ao calcular comissão.
ORA-00913: valores demais.
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.
atualizar a rotina e executar o procedimento descrito abaixo:
*PROCEDIMENTOS PARA SIMULAR:* |
Importante! As versões estarão disponíveis para download no CCW. https://centraldecontrole.pcinformatica.com.br/ Mantenha suas rotinas sempre atualizadas! |
<style> div.theme-default .ia-splitter #main { margin-left: 0px; } .ia-fixed-sidebar, .ia-splitter-left { display: none; } #main { padding-left: 10px; padding-right: 10px; overflow-x: hidden; } .aui-header-primary .aui-nav, .aui-page-panel { margin-left: 0px !important; } .aui-header-primary .aui-nav { margin-left: 0px !important; } .aui-tabs.horizontal-tabs>.tabs-menu>.menu-item.active-tab a::after { background: #FF9900; !important } .menu-item.active-tab { border-bottom: none !important; } </style> |