Páginas

sexta-feira, 20 de setembro de 2013

Criando um trigger para atualização de um campo

Boa noite a todos

Hoje estava precisando criar uma trigger para empresa que trabalho para atualizar os cadastro assim que eu tiver alteração do equipamento que ele foi para orçamento ele automaticamente ja abre uma ordem de serviço. e mesma coisa acontece quando essa ordem de serviço e fechada ele deixa meu equipamento ativo novamente.
A cláusula WHEN verifica se meu equipamento o status dele for 2 = Orçamento ele roda minha trigger


CREATE TRIGGER XXX_HP_EQUI_OS_TRG
AFTER UPDATE OR INSERT
    OF FK_STATUS
    ON tab_equipamento
    FOR EACH ROW
    When (new.fk_status = 2)
DECLARE
BEGIN
    BEGIN
             
                INSERT INTO helpdeskds.tab_equi_os (idtab_equi_os           --01
                                                  ,fk_id_equipamento         --02
                                                  ,data_os                   --03
                                                  )           
                                           VALUES (tab_equi_os_seq.NEXTVAL    --01
                                                  ,:NEW.idtab_equipamento     --02
                                                  ,SYSDATE                    --03                 
                                                  );
                                               
    EXCEPTION
        WHEN OTHERS THEN
            raise_application_error(SQLERRM -20000,'Erro ao inserir na tabela TAB_EQUI_OS, informações sobre o equipamento.'||:NEW.idtab_equipamento);
    END;
END;

Nenhum comentário:

Postar um comentário