USP_DATAFORMTEMPLATE_ADD_STEPLETTER
The save procedure used by the add dataform template "Step Letter Add Form".
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | INOUT | The output parameter indicating the ID of the record added. |
@CURRENTAPPUSERID | uniqueidentifier | IN | Input parameter indicating the ID of the current user. |
@CHANGEAGENTID | uniqueidentifier | IN | Input parameter indicating the ID of the change agent invoking the procedure. |
@LETTERNAME | nvarchar(100) | IN | Letter name |
@INTERACTIONID | uniqueidentifier | IN | Input parameter indicating the context ID for the record being added. |
@CONSTITUENTID | uniqueidentifier | IN | |
@ADDRESSEENAMEFORMATID | uniqueidentifier | IN | Addressee |
@ADDRESSID | uniqueidentifier | IN | Address |
@SALUTATIONNAMEFORMATID | uniqueidentifier | IN | Salutation |
@LETTERFILE | varbinary | IN | Letter |
@LETTERFILENAME | nvarchar(255) | IN | Letter |
@MAILDATE | datetime | IN | Mail date |
@LETTERTEMPLATEID | uniqueidentifier | IN | Letter template |
@UPLOADFILE | bit | IN |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADD_STEPLETTER
(
@ID uniqueidentifier = null output,
@CURRENTAPPUSERID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@LETTERNAME nvarchar(100) = null,
@INTERACTIONID uniqueidentifier,
@CONSTITUENTID uniqueidentifier = null,
@ADDRESSEENAMEFORMATID uniqueidentifier = null,
@ADDRESSID uniqueidentifier = null,
@SALUTATIONNAMEFORMATID uniqueidentifier = null,
@LETTERFILE varbinary(max) = null,
@LETTERFILENAME nvarchar(255) = null,
@MAILDATE datetime = null,
@LETTERTEMPLATEID uniqueidentifier = null,
@UPLOADFILE bit = null
)
as
set nocount on;
declare @CURRENTDATE datetime;
set @CURRENTDATE = getdate();
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
if @UPLOADFILE = 0
begin
-- If the file isn't mergeable then just copy the file from the template library
select @LETTERFILE = LETTERFILE,
@LETTERFILENAME = LETTERFILENAME
from dbo.LETTERTEMPLATE
where ID = @LETTERTEMPLATEID;
declare @EXTENSION nvarchar(255);
declare @SPLITON nvarchar(1);
set @EXTENSION = @LETTERFILENAME;
set @SPLITON = '.';
while(charindex(@SPLITON, @EXTENSION) > 0)
begin
set @EXTENSION = substring(@EXTENSION, charindex(@SPLITON, @EXTENSION) + 1, len(@EXTENSION));
end
set @LETTERFILENAME = @LETTERNAME + @SPLITON + @EXTENSION;
end
begin try
if @ID is null
set @ID = newID();
insert into dbo.INTERACTIONATTACHMENT
(
ID,
DATEENTERED,
TITLE,
[FILENAME],
[FILE],
INTERACTIONID,
ENTEREDBYAPPUSERID,
ADDEDBYID,
CHANGEDBYID,
DATEADDED,
DATECHANGED
)
values
(
@ID,
@MAILDATE,
@LETTERNAME,
@LETTERFILENAME,
@LETTERFILE,
@INTERACTIONID,
@CURRENTAPPUSERID,
@CHANGEAGENTID,
@CHANGEAGENTID,
@CURRENTDATE,
@CURRENTDATE
);
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch
return 0;