Ver Mensaje Individual
  #6 (permalink)  
Antiguo 14/04/2008, 07:56
carlos_el22
 
Fecha de Ingreso: enero-2008
Mensajes: 13
Antigüedad: 16 años, 10 meses
Puntos: 0
Re: ayuda con un trigger

Código:
CREATE TRIGGER miTrigger
ON dbo.miTalba
FOR INSERT, UPDATE 
AS

declare @pk as varchar(10/*el num que vos quieras*/)
set @pk=(select max pf from miTabla)

set @pk= cast (@pk as int)+1

declare @pkLetra as varchar(10/*el num que vos quieras*/)
set @pkfecha='Letra'

update miTabla  set codigo_sol_req=@pk + @pkLetra where codigo_sol_req=null or where codigo_sol_req=''

begin
	 RAISERROR (50015, 16, 10)
	 ROLLBACK TRANSACTION
end
Lo primiero que debes hacer es convertir tu pk as string y permitir null
cuadno hagas un insert ese registro sera en unico con null o vacio
Este trigger actualiza tu clave de ese registro null o vacio con los datos del pk mayor incrementandolo en 1 y concatenando la letra que elegiste.
luego si queres para mayor organizacion podes insertar un registro en la talba de mensajes de error con

Cita:
sp_addmessage 50015 ,
16 ,
'Error en la insercion del registro' ,
'us_english'
Espero que te sirva
Saludos