miércoles, 27 de octubre de 2010

Incluir un link referente a una entidad en emails con un Triggers

Esto es otra opción además de la que anteriormente escribí en el post Incluir un link referente a una entidad bastante más sencilla (desde mi punto de vista) aunque tocando la base de datos del CRM, lo que puede poner nervioso a más de uno. Pero a mi me funciona :-)

PASO 1:
Crear un atributo de tipo nvarchar con una longitud de 250 en la entidad que queramos al que llamare 'new_enlace', en mi caso en una entidad personalizada llamada "new_vacaciones". Publicamos los cambios en la entidad.

PASO 2:
Hay que crear un Trigger tal que así:
CREATE TRIGGER [dbo].[TR_Link_Vacaciones] ON [dbo].[New_vacacionesExtensionBase]
AFTER INSERT
AS
DECLARE @ID AS uniqueidentifier
BEGIN
 SET NOCOUNT ON
 SELECT @ID = (SELECT New_vacacionesId FROM Inserted )
 UPDATE New_vacacionesExtensionBase
 SET New_enlace = '<a href=''http://miservidorCRM/UNIDADPRINCIPAL/userdefined/edit.aspx?etc=10025&id=' + cast(@ID AS nvarchar(50)) + '''>aquí.</a>'
END

PASO 3:
Agregar al cuerpo del email del workflow de turno la típica frase:
"Para visualizar este registro puede hacer clic" y añadimos el campo 'new_enlace' de la entidad 'new_vacaciones'. Obsérvese que el tag href ya lleva el texto 'aquí.' por lo que quedaría completa la frase.