You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

86 lines
4.3 KiB

1 year ago
  1. USE [FastMoneyPro_Remit]
  2. GO
  3. /****** Object: StoredProcedure [dbo].[spa_sendemail] Script Date: 9/27/2019 1:30:14 PM ******/
  4. SET ANSI_NULLS ON
  5. GO
  6. SET QUOTED_IDENTIFIER ON
  7. GO
  8. CREATE procEDURE [dbo].[spa_sendemail]
  9. AS
  10. DECLARE @count VARCHAR(10)
  11. DECLARE @notesId INT
  12. DECLARE @sendFrom VARCHAR(100)
  13. DECLARE @sendTo VARCHAR(5000)
  14. DECLARE @sendCc VARCHAR(5000)
  15. DECLARE @sendBcc VARCHAR(5000)
  16. DECLARE @subject VARCHAR(250)
  17. DECLARE @notesText VARCHAR(MAX)
  18. DECLARE @notesAttachmentFilename VARCHAR(500)
  19. DECLARE @message VARCHAR(MAX)
  20. DECLARE @profileName VARCHAR(100)
  21. BEGIN
  22. SET @profileName = 'SWIFTMail'
  23. CREATE TABLE #tmpEmail_Notes (
  24. tempId INT IDENTITY(1,1),
  25. notesId INT,
  26. sendFrom VARCHAR(100),
  27. sendTo VARCHAR(500),
  28. sendCc VARCHAR(500),
  29. sendBcc VARCHAR(500),
  30. [subject] VARCHAR(250),
  31. notesText VARCHAR(MAX),
  32. notesAttachmentFilename VARCHAR(500)
  33. )
  34. INSERT INTO #tmpEmail_Notes
  35. SELECT notesId, sendFrom, sendTo, sendCc, sendBcc, [subject], notesText, notesAttachmentFilename
  36. FROM emailNotes
  37. WHERE activeFlag = 'y' and sendStatus = 'n'
  38. SELECT @count = @@ROWCOUNT
  39. WHILE @count > 0
  40. BEGIN
  41. SELECT
  42. @notesId = notesId
  43. ,@sendTo = sendTo
  44. ,@sendCc = sendCc
  45. ,@sendBcc = sendBcc
  46. ,@subject = [subject]
  47. ,@notesText = notesText
  48. ,@notesAttachmentFilename = notesAttachmentFilename
  49. ,@sendFrom = sendFrom
  50. FROM #tmpEmail_Notes WHERE tempId = @count
  51. SELECT @message = @notesText + CHAR(13) + CHAR(13)
  52. SET @message = @message +'<br><br><br><br>Automatically generated by SWIFT KEY MANAGER. PLEASE DO NOT REPLY'
  53. EXEC msdb.dbo.sp_send_dbmail
  54. @profile_name = @profileName,
  55. @recipients = @sendTo,
  56. @subject = @subject,
  57. @body = @message,
  58. @body_format = 'HTML',
  59. @file_attachments = @notesAttachmentFilename;
  60. IF @@ERROR<>0
  61. BEGIN
  62. PRINT 'ERROR'
  63. END
  64. ELSE
  65. BEGIN
  66. UPDATE EmailNotes SET sendStatus = 'y' WHERE notesId = @notesId
  67. PRINT 'SUCCESS'
  68. END
  69. SELECT @count = @count - 1
  70. END
  71. END
  72. GO