Situação:
Ao incluir produtos na Pré-venda, o sistema exibe a mensagem: 'Não há lotes disponíveis para seleção'. Mesmo assim, ao confirmar em OK, o cliente consegue incluir o item e gerar o pedido normalmente, porém sem vincular o lote do produto.
Solução:
Foi identificado que há inconsistências nas movimentações de lotes dentro do banco de dados. Para correção, foi gerado um update que recalcula e ajusta as reservas dos lotes de forma definitiva.
- Acessar o computador do cliente e criar um ambiente de teste.
- Executar o update no banco de teste antes de aplicar em produção.
- Caso todas finalizem corretamente, aplicar o update no banco de produção.
Código para gerar no ibexpert:
/* UPDATE definitivo — Firebird 2.5 */
UPDATE LOTES l
SET l.QTDERESERVADA = (
SELECT COALESCE(SUM(mv.QUANTIDADE), 0)
FROM MVLOTES mv
WHERE mv.CODEMPRESA = l.CODEMPRESA
AND TRIM(mv.CODPROD) = TRIM(l.CODPROD)
AND TRIM(mv.CODLOTE) = TRIM(l.CODLOTE)
AND mv.TIPOMOV = '56' -- se TIPOMOV for numérico, troque para mv.TIPOMOV = 56
)
WHERE ABS(
l.QTDERESERVADA - (
SELECT COALESCE(SUM(mv.QUANTIDADE), 0)
FROM MVLOTES mv
WHERE mv.CODEMPRESA = l.CODEMPRESA
AND TRIM(mv.CODPROD) = TRIM(l.CODPROD)
AND TRIM(mv.CODLOTE) = TRIM(l.CODLOTE)
AND mv.TIPOMOV = '56'
)
) > 0.0001 ;
COMMIT;
Gabriela Innecco
Central de Atendimento
(31) 2112-3700