Autor Tema: Triggers con dos condicionantes  (Leído 2724 veces)

0 Usuarios y 2 Visitantes están viendo este tema.

Desconectado gsantamaria

  • Sv Member
  • ***
  • Mensajes: 157
  • EL hombre por mucho que sepa, sabe poco..
Triggers con dos condicionantes
« : febrero 21, 2014, 07:27:13 pm »
Estimad@s

quisiera saber si alguien me pudiese ayudar con un pequeño problema

quiero elaborar un disparador(triggers) que evalue dos condiciones


para una tabla llamada FACTURA. nesecito que un usuario especifico solo pueda ingresar de un tipo de documento CCF

lo he creado de esta forma pero me da error

CREATE OR REPLACE TRIGGER SYSADM.T5
BEFORE INSERT ON SYSADM.FACTURA
REFERENCING NEW AS New OLD AS Old
FOR EACH ROW WHEN (SYSADM.USER_ID ='OSCAR')
BEGIN

     IF NEW.VOUCHER_ID <> 'CCF%' THEN
                raise_application_error(-20999, 'TIPO DE DOC NO AUTORIZADO');
        END IF;

    END;
/



en la logica seria

SI el usuario es OSCAR
evalue el tipo de documento
SI el documento es diferente de  de 'CCF'
ENTONCES
error

muchisimas gracias por su ayuda
Gracias DIOS por un dia mas de vida

Desconectado g00mba

  • The Communiter-
  • *
  • Mensajes: 14587
  • SOMOS LEGION
    • ALABADO SEA MONESVOL
Re:Triggers con dos condicionantes
« Respuesta #1 : febrero 21, 2014, 07:34:46 pm »

Desconectado gsantamaria

  • Sv Member
  • ***
  • Mensajes: 157
  • EL hombre por mucho que sepa, sabe poco..
Re:Triggers con dos condicionantes
« Respuesta #2 : febrero 21, 2014, 08:23:31 pm »
con case. tendria que cumplir o una u otra..


pero nesecito que se cumplan las dos

sin embargo buscare como hacer con case.. muchas gracias  goomba
Gracias DIOS por un dia mas de vida

Desconectado g00mba

  • The Communiter-
  • *
  • Mensajes: 14587
  • SOMOS LEGION
    • ALABADO SEA MONESVOL
Re:Triggers con dos condicionantes
« Respuesta #3 : febrero 22, 2014, 01:30:18 am »
con case. tendria que cumplir o una u otra..


pero nesecito que se cumplan las dos

sin embargo buscare como hacer con case.. muchas gracias  goomba
ya cumpliste una con el if.

Desconectado tekun

  • -^- Elite Silver -^-
  • The Communiter-
  • *
  • Mensajes: 3221
  • Han convertido mi casa en cueva de mercaderes!!!!
    • www.tekun.es
Re:Triggers con dos condicionantes
« Respuesta #4 : febrero 22, 2014, 08:36:04 am »
y cuál es el error que te dá....
lo difícil lo hago rápido, con lo imposible, casi siempre me tardo un poquito

Desconectado timon02

  • Sv Member
  • ***
  • Mensajes: 130
Re:Triggers con dos condicionantes
« Respuesta #5 : marzo 25, 2014, 02:14:01 pm »
/* Formatted on 25/03/2014 02:10:23 p.m. (QP5 v5.256.13226.35538) */
CREATE OR REPLACE TRIGGER SYSADM.TBI_FACTURA
   BEFORE INSERT
   ON SYSADM.FACTURA
   REFERENCING NEW AS NEW OLD AS OLD
   FOR EACH ROW
BEGIN
   IF :NEW.VOUCHER_ID <> 'CCF%' and USER = 'OSCAR'
   THEN
      raise_application_error (-20999, 'TIPO DE DOC NO AUTORIZADO');
   END IF;
END;
/