CREATE OR ALTER PROCEDURE SPU_SALDO_PECA (
    NF_ITEM_ID INTEGER,
    ACAO INTEGER)
AS
DECLARE VARIABLE PECA INTEGER;
DECLARE VARIABLE PECA_SALDO NUMERIC(15,4);
BEGIN

  FOR
    SELECT LOTE_PECA.PECA_ID, LOTE_PECA.PECA_SALDO
      FROM TBLOTE_PECA_ITEM LOTE_PECA, TBREVISAO R
     WHERE LOTE_PECA.NFS_ITEM_ID = :NF_ITEM_ID
       AND R.ID = LOTE_PECA.PECA_ID                                     
      INTO :PECA, :PECA_SALDO
        DO BEGIN

             IF(:ACAO = 1) THEN -- BAIXAR SALDO
                BEGIN
                UPDATE TBREVISAO T SET T.SALDO = T.SALDO - :PECA_SALDO WHERE T.ID = :PECA;
                END
             IF(:ACAO = 2) THEN -- DESFAZER BAIXA DE SALDO
                BEGIN
                UPDATE TBREVISAO T SET T.SALDO = T.SALDO + :PECA_SALDO WHERE T.ID = :PECA;
                END
           END



END;