USP_DATANETTEASER_SENDEMAIL
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@APPUSERID | uniqueidentifier | IN | |
@CHANGEAGENTID | uniqueidentifier | IN | |
@EMAILTYPECODE | tinyint | IN |
Definition
Copy
create procedure dbo.USP_DATANETTEASER_SENDEMAIL
(
@APPUSERID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@EMAILTYPECODE tinyint
)
as
begin
set nocount on;
begin try
declare @MAIL_RECIPIENTS nvarchar(max),
@MAIL_SUBJECT nvarchar(255),
@MAIL_BODY nvarchar(max),
@MAIL_BODYFORMAT nvarchar(20), -- ['TEXT', 'HTML']
@MAIL_IMPORTANCE nvarchar(6); -- ['Low', 'Normal', 'High']
/*Have they received this email*/
if not exists(select top 1 1 from dbo.DATANETTEASEREMAILTRACKING where APPUSERID = @APPUSERID and EMAILTYPECODE = @EMAILTYPECODE)
begin
select
@MAIL_SUBJECT = [SUBJECT],
@MAIL_BODY = BODY,
@MAIL_BODYFORMAT = BODYFORMAT,
@MAIL_IMPORTANCE = IMPORTANCE
from dbo.DATANETTEASEREMAILCONTENT
where EMAILTYPECODE = @EMAILTYPECODE;
select @MAIL_RECIPIENTS = EMAILADDRESS from dbo.appuser where ID = @APPUSERID;
if (len(@MAIL_RECIPIENTS) > 0 and len(@MAIL_SUBJECT) > 0)
begin
declare @CURRENTDATE datetime;
set @CURRENTDATE = getdate();
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
exec [dbo].[USP_ALERT_SEND]
@MAIL_RECIPIENTS,
@MAIL_SUBJECT,
@MAIL_BODY,
@MAIL_BODYFORMAT,
@MAIL_IMPORTANCE;
insert into dbo.DATANETTEASEREMAILTRACKING(APPUSERID, EMAILTYPECODE, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
values(@APPUSERID, @EMAILTYPECODE, @CHANGEAGENTID, @CHANGEAGENTID, @CURRENTDATE, @CURRENTDATE);
end
end
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch
end