Trigger como criar
30/01/2008
0
Caros colegas, a muito tempo uso o Interbase/Firebird, mas precisei criar um projeto usando BD SQL Server. Pois bem, no firebird tenho algumas triggers que preciso migrar pro SQL Server, gostaria da ajudar de vc´s.
Essa trigger é responsavel por baixar o estoque em uma determinada tabela. Segue o código abaixo que uso no firebird.
SET TERM ^ ;
CREATE TRIGGER TG_ENTRADAITEM_ENTRADAPROD FOR TB_ESTOQUE_SUB
ACTIVE AFTER INSERT POSITION 0
AS
BEGIN
IF ((NEW.QTDE_ENT>0) And (NEW.STATUSPROD=´E´)) THEN
BEGIN
UPDATE TB_ESTOQUE_SALDO E
SET E.SALDO=E.SALDO+NEW.QTDE_ENT
WHERE
E.CODPRODUTO=NEW.CODPRODUTO AND
E.CODFILIAL=NEW.CODFILIAL;
END
IF ((NEW.QTDE_SAI>0) And (NEW.STATUSPROD=´E´)) THEN
BEGIN
UPDATE TB_ESTOQUE_SALDO E
SET E.SALDO=E.SALDO-NEW.QTDE_SAI
WHERE
E.CODPRODUTO=NEW.CODPRODUTO AND
E.CODFILIAL=NEW.CODFILIAL;
END
END ^
SET TERM ;^
Preciso converter esse código ai para o SQL Server.
Fico grato por qualquer ajuda.
Atenciosamente
Antonio Marcos Chaves
MSN: amnchaves@hotmail.com
Essa trigger é responsavel por baixar o estoque em uma determinada tabela. Segue o código abaixo que uso no firebird.
SET TERM ^ ;
CREATE TRIGGER TG_ENTRADAITEM_ENTRADAPROD FOR TB_ESTOQUE_SUB
ACTIVE AFTER INSERT POSITION 0
AS
BEGIN
IF ((NEW.QTDE_ENT>0) And (NEW.STATUSPROD=´E´)) THEN
BEGIN
UPDATE TB_ESTOQUE_SALDO E
SET E.SALDO=E.SALDO+NEW.QTDE_ENT
WHERE
E.CODPRODUTO=NEW.CODPRODUTO AND
E.CODFILIAL=NEW.CODFILIAL;
END
IF ((NEW.QTDE_SAI>0) And (NEW.STATUSPROD=´E´)) THEN
BEGIN
UPDATE TB_ESTOQUE_SALDO E
SET E.SALDO=E.SALDO-NEW.QTDE_SAI
WHERE
E.CODPRODUTO=NEW.CODPRODUTO AND
E.CODFILIAL=NEW.CODFILIAL;
END
END ^
SET TERM ;^
Preciso converter esse código ai para o SQL Server.
Fico grato por qualquer ajuda.
Atenciosamente
Antonio Marcos Chaves
MSN: amnchaves@hotmail.com
Amchaves
Curtir tópico
+ 0
Responder
Posts
31/01/2008
Aroldo Zanela
Colega,
A forma de mEnor esforço para criação de triggers no SQL Server é pelo Enterprise Manager. Basta expandir o nó do banco de dados, posicionar-se sobre a tabela desejada, clicar com o botão direito, selecionar todas as tarefas, selecionar manage triggers que será gerado um template para digitação da mesma.
A forma de mEnor esforço para criação de triggers no SQL Server é pelo Enterprise Manager. Basta expandir o nó do banco de dados, posicionar-se sobre a tabela desejada, clicar com o botão direito, selecionar todas as tarefas, selecionar manage triggers que será gerado um template para digitação da mesma.
CREATE TRIGGER [TRIGGER NAME] ON [dbo].[TABLE NAME] FOR INSERT, UPDATE, DELETE AS
Responder
Clique aqui para fazer login e interagir na Comunidade :)