Advertisement
Guest User

Untitled

a guest
Apr 19th, 2014
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.69 KB | None | 0 0
  1. CREATE TRIGGER
  2. [dbo].[SendEmail_WebContact] on [dbo].[WebContact]
  3. AFTER INSERT AS
  4.  
  5. DECLARE @firstname VARCHAR(50),
  6. @lastname VARCHAR(50),
  7. @phonenumber VARCHAR(10),
  8. @rdesc VARCHAR(500),
  9. @body1 VARCHAR(MAX);
  10.  
  11. SELECT
  12. @firstname = FirstName,
  13. @lastname = LastName,
  14. @phonenumber = PhoneNumber,
  15. @rdesc = RequestDescription
  16. FROM INSERTED;
  17.  
  18. SET @body1 = 'Name: ' + @firstname + ' ' + @lastname + CHAR(13)
  19. + 'Phone number: ' + @phonenumber + CHAR(13)
  20. + 'Description: ' + @rdesc + CHAR(13);
  21.  
  22. EXEC msdb.dbo.sp_send_dbmail
  23. @recipients = 'myself@mycompany.com',
  24. @subject = 'New Web Contact Request',
  25. @body = @body1;
  26.  
  27. SET @body1 = 'Name: ' + isnull(@firstname,'') + ' ' + isnull(@lastname,'') + CHAR(13)
  28. + 'Phone number: ' + isnull(@phonenumber,'') + CHAR(13)
  29. + 'Description: ' + isnull(@rdesc,'') + CHAR(13);
  30.  
  31. CREATE TRIGGER [dbo].[SendEmail_WebContact]
  32. ON [dbo].[WebContact]
  33. AFTER INSERT
  34. AS
  35. BEGIN
  36. SET NOCOUNT ON;
  37.  
  38. -- Get results into a temp table 1st
  39. CREATE TABLE #Mail_Temp (
  40. ID INT IDENTITY(1,1),
  41. FirstName VARCHAR(50),
  42. LastName VARCHAR(50),
  43. PhoneNumber VARCHAR(10),
  44. rdesc VARCHAR(500)
  45. )
  46.  
  47. INSERT INTO #Mail_Temp (FirstName,LastName,PhoneNumber,rdesc )
  48. SELECT FirstName,LastName,PhoneNumber,RequestDescription FROM inserted
  49.  
  50.  
  51. DECLARE @firstname VARCHAR(50),
  52. @lastname VARCHAR(50),
  53. @phonenumber VARCHAR(10),
  54. @rdesc VARCHAR(500),
  55. @body1 VARCHAR(MAX),
  56. @ID INT;
  57.  
  58.  
  59. -- Now Loop through your temp table and send emails to induviduals
  60.  
  61. WHILE EXISTS (SELECT * FROM #Mail_Temp)
  62. BEGIN
  63.  
  64. -- Select only 1 record using TOP clause
  65. SELECT TOP 1
  66. @ID = ID,
  67. @firstname = FirstName,
  68. @lastname = LastName,
  69. @phonenumber = PhoneNumber,
  70. @rdesc = rdesc
  71. FROM #Mail_Temp;
  72.  
  73.  
  74. -- Set email Body
  75. SET @body1 = 'Name: ' + COALESCE(@firstname,'') + ' ' + COALESCE(@lastname, '') + CHAR(13)
  76. + 'Phone number: ' + COALESCE(@phonenumber, '') + CHAR(13)
  77. + 'Description: ' + COALESCE(@rdesc, '') + CHAR(13);
  78.  
  79. EXECUTE msdb.dbo.sp_send_dbmail
  80. @recipients = 'myself@mycompany.com',
  81. @subject = 'New Web Contact Request',
  82. @body = @body1;
  83.  
  84. -- Delete the record from temp table enventualy to break the loop
  85. DELETE FROM #Mail_Temp WHERE ID = @ID
  86.  
  87. END
  88. END
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement