SQL - ayudita con trigger

 
Vista:

ayudita con trigger

Publicado por felique (4 intervenciones) el 11/07/2008 01:16:49
wenas lo que pasa es que necesito que sql me vote un mensaje en el momento que el trigger se cumpla, el trigger se cumple perfectamente, inclusive saca el mensaje pero jeje no se como hacer el mensajito de advertencia o exclamacion para que me lo vote en el sistema que tenemos.... en estos momentos esta con raiserror pero como su nombre lo dice es un mensaje de error y me hace un rollbackup, ¡¡que funcion utilizo en vez de ese raiserror??? muchas gracias

CREATE TRIGGER [t] ON [dbo].[documentos]
FOR INSERT
AS

declare @vendedor numeric
declare @tipo nvarchar(5)
declare @mensaje1 varchar(130)
SELECT @vendedor= vendedor FROM INSERTED
SELECT @tipo= tipo FROM INSERTED
set @mensaje1='Advertencia, el recibo de caja que acaba de ingresar es un cobro juridico'

IF @vendedor=100 and @tipo='RC' BEGIN
RAISERROR (@mensaje1, 11,2)
END
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:ayudita con trigger

Publicado por Isaias (5072 intervenciones) el 11/07/2008 23:29:20
¿Es SQL Server?, ¿Porque hacerlo en un trigger y no en el store procedure?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:ayudita con trigger

Publicado por felique (4 intervenciones) el 12/07/2008 15:10:23
por que es un programa que no puedo modificar los fuentes, paar hacer un store procedure necesito mandarle parametros... y sin el fuene del programa no puedo hacerlo... no se si me hago entender, entonces hay es donde entra el trigger, ya que puedo trabajar sobre los valores insertados

no se si fui claro, solo necesito saber como voto un mensaje... porfavor muchas gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:ayudita con trigger

Publicado por Isaias (5072 intervenciones) el 14/07/2008 20:36:10
¿"voto" = "muestro"?

Para mostrar mensajes, debe hacerlo mediante:

RAISERROR ({msg_id |msg_str }{,severity ,state }
[ ,argument [ ,,...n ] ] ))
[ WITH option [ ,,...n ] ]

USE tempdb
go
ALTER PROCEDURE ps_NonFatal_INSERT
@Column2 int =NULL
AS
DECLARE @ErrorMsgID int

INSERT NonFatal VALUES (@Column2)
SET @ErrorMsgID =@@ERROR
IF @ErrorMsgID <>0
BEGIN
RAISERROR ('An error occured updating the NonFatal table',10,1)
END
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:ayudita con trigger

Publicado por felique (4 intervenciones) el 15/07/2008 18:44:06
muchas gracias isaac.. por tu interes pero continuo con el problema

cuando le doy este raise error no me muestra el emnsaje en el programa
RAISERROR ('An error occured updating the NonFatal table',10,1)
si lo pongo asi
RAISERROR ('An error occured updating the NonFatal table',11,1) me muestra pero me dice que se regresara el documentos sin cambios

=S parece una tonteria epro le he buscado y buscado y no he podido dar con el berriondo mensaje
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:ayudita con trigger

Publicado por Isaias (5072 intervenciones) el 15/07/2008 19:03:29
Pongamonos de acuerdo, tu PROGRAMA (como tu le llamas), deberia estar preparado para recibir el mensaje, si tu programa, no tiene declarado un RECORDSET, que "atrape" dicho mensaje y lo muestre al usuario, la base, no lo puede hacer con un simple RAISERROR.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar