Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Pedro Aguar

Trigger Controlar Saldo Em Quantidades

Recommended Posts

Prezado(a)s,

 

Preciso montar um gatilho que controla o saldo do cliente de acordo com as operações de débito e crédito, no após efetuar o pagamento da compra. Não é o mesmo esquema para estoque/produtos, é no sentido de comprar pacotes e disponibilizar saldos para serem usados no momento da compra, por gentileza poderiam fornecer umas dicas de como proceder. Abaixo tem um código que tentei mas não está contemplando o todo da operação.

Obrigado

 

 

Cenário parcial:

 

1 - Cliente compra pacote de serviços ou um único serviço.(o gatilho somente controlará a compra de pacotes).

 

Tabelas envolvidas:

 

TB_CLIENTE

TB_SALDO

TB_PAGAMENTO

CREATE TABLE owner.tb_saldo(
id_saldo INT(11) NOT NULL PRIMARY KEY,
id_cliente INT(11) NOT NULL,
quantidade NUMERIC(10,2) NOT NULL,
dt_inclusao DATETIME,
dt_atualização DATETIME,
dt_exclusao DATETIME,
CONSTRAINT fk_saldo_cliente FOREIGN KEY (id_cliente) REFERENCES(tb_cliente)
);


CREATE TRIGGER trg_entrada_pacote_au AFTER UPDATE ON tb_pagamento
 FOR EACH ROW BEGIN
   DECLARE 
	  var_contador INT(11);

    begin 
      SELECT COUNT(*) INTO var_contador FROM 2mjsolucoes_com.tb_saldo  WHERE id_saldo = NEW.id_saldo;
       
       IF var_contador > 0 THEN
          UPDATE 2mjsolucoes_com.tb_saldo
             SET quantidade = quantidade + NEW.quantidade, 
                 dt_atualização = SYSDATE()
           WHERE id_saldo = NEW.id_saldo;
       END IF;
    end;
end
//
DELIMITER ;

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.