Ver Mensaje Individual
  #4 (permalink)  
Antiguo 11/02/2015, 09:55
Avatar de Libras
Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Activar Trigger con un valor Especifico en Update

me gusta el "pasamos todos por alto" aqui seria pasaste por alto ya que es tu proceso y tu eres el que lo conoces, yo solamente respondi el requerimiento inicial, ahora supongamos que tienes un identificador unico en tu tabla entonces podriamos hacer:

Código SQL:
Ver original
  1. CREATE TRIGGER Validar1
  2.  ON Facturas
  3.  after UPDATE
  4.  AS
  5.  
  6.  IF UPDATE(estado)
  7.    BEGIN
  8.          DECLARE @num_factura nvarchar(20)
  9.      DECLARE @fecha  datetime
  10.      DECLARE @monto NUMERIC(18,2)
  11.     DECLARE @estado nvarchar(10)
  12.    DECLARE @identificador INT
  13.    SELECT @estado=estado,@identificador=id FROM inserted
  14.      
  15.      IF @estado = 'ingreso'
  16.          BEGIN
  17.           INSERT INTO factu_trig    (
  18.                         num_factura,
  19.                         fecha,
  20.                         monto,
  21.                         estado)
  22.                         SELECT
  23.                         num_factura,
  24.                         fecha,
  25.                         monto,
  26.                         estado
  27.                         FROM facturas
  28.                         WHERE estado = @estado AND id=@identificador
  29.         print ('registro agregado')
  30.         END
  31.  
  32.     ELSE
  33.         BEGIN
  34.                 raiserror('registro NO agregado', 10, 1) --mensaje de error
  35.                 ROLLBACK TRANSACTION
  36.         END
  37.    END

Y como diria el rayo macqueen: Cachao
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me