O comando é mais complexo, aqui uma "redução".
UPDATE JPITEM
SET SALDO =0 ;
UPDATE JPITEM
LEFT JOIN JPESTOQUE ON jpitem.idProduto = jpestoque.esProduto
SET SALDO = SALDO + jpestoque.qtde
Isso estava causando diferenças.
Alterei pra:
UPDATE JPITEM
INNER JOIN
( SELECT ESPRODUTO, SUM( JPESTOQUE.ESQTDE ) AS SOMA
FROM JPESTOQUE
GROUP BY ESPRODUTO ) AS B
INNER JOIN ON JPITEM.IDPRODUTO = B.ESPRODUTO
SET
SALDO = B.SOMA
Ao invés de ir gravando/somando a cada lançamento, somei os lançamentos e gravei direto o total.
Nota: já comecei a usar INNER JOIN, num caso como esse o INNER JOIN pode evitar problemas.