[firebase-br] O que falta ?

valeriomg valeriomg em terra.com.br
Qui Fev 3 11:05:52 -03 2005


Pelo q entendo, nunca vai entrar no IF porque vc não esta atribuindo nenhum
valor as suas variaveis.

Valério


----- Original Message -----
From: "Auriston" <auristonlopes em ig.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Thursday, February 03, 2005 10:35 AM
Subject: [firebase-br] O que falta ?


As açoes abaixo quando as executo não surgem efeito, será que falta algo no
delphi ou no codigo abaixo ?
sds
auriston

Obs: DELPHI 7 / PALHETA INTERBASE / FIREBIRD
/***
    Trigger "Before Update" para "Movprod"
***/
SET TERM ^;
CREATE TRIGGER MovprodBU FOR Movprod ACTIVE BEFORE UPDATE POSITION 0
AS
DECLARE VARIABLE ES Varchar(1);
DECLARE VARIABLE MOVIES Varchar(1);
DECLARE VARIABLE CANCELADA Varchar(1);
BEGIN
    IF ((ES = 'S') AND (MOVIES = 'S') AND (CANCELADA = 'N')) THEN
      UPDATE ESTOQUE SET
        ESTOQUE = (ESTOQUE + OLD.SAIDAS) - NEW.SAIDAS
        WHERE CODIGO = NEW.COD_MAT;
    ELSE IF ((ES = 'E') AND (MOVIES = 'S') AND (CANCELADA = 'N')) THEN
      UPDATE ESTOQUE SET
        ESTOQUE = (ESTOQUE - OLD.ENTRADAS) + NEW.ENTRADAS
        WHERE CODIGO = NEW.COD_MAT;
END^
SET TERM ;^

/***
    Trigger "Before Delete" para "Movprod"
***/
SET TERM ^;
CREATE TRIGGER MovprodBD FOR Movprod ACTIVE BEFORE DELETE POSITION 0
AS
DECLARE VARIABLE ES Varchar(1);
DECLARE VARIABLE MOVIES Varchar(1);
DECLARE VARIABLE CANCELADA Varchar(1);
BEGIN
    IF ((ES = 'S') AND (MOVIES = 'S') AND (CANCELADA = 'N')) THEN
      UPDATE ESTOQUE SET
        ESTOQUE = ESTOQUE + OLD.SAIDAS
        WHERE CODIGO = OLD.COD_MAT;
    ELSE IF ((ES = 'E') AND (MOVIES = 'S') AND (CANCELADA = 'N')) THEN
      UPDATE ESTOQUE SET
        ESTOQUE = ESTOQUE - OLD.ENTRADAS
        WHERE CODIGO = OLD.COD_MAT;
END^
SET TERM ;^

______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br








Mais detalhes sobre a lista de discussão lista