USP_DATAFORMTEMPLATE_EDIT_LETTERCODE_4
The save procedure used by the edit dataform template "Revenue Letter Edit Form 2".
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | The input ID parameter indicating the ID of the record being edited. |
@CHANGEAGENTID | uniqueidentifier | IN | Input parameter indicating the ID of the change agent invoking the procedure. |
@NAME | nvarchar(100) | IN | Name |
@DESCRIPTION | nvarchar(255) | IN | Description |
@IDSETREGISTERID | uniqueidentifier | IN | Selection |
@WORDFILE | varbinary | IN | File |
@WORDTEMPLATEFILENAME | nvarchar(255) | IN | Word template |
@DISPLAYEDFILENAME | nvarchar(255) | IN | Word template |
@QUERYVIEWID | uniqueidentifier | IN | Output format |
@FILECHANGED | bit | IN | File changed? |
@CUSTOMPARAMETERDATAFORMITEM | xml | IN | |
@EXPORTDEFINITIONID | uniqueidentifier | IN | Export definition |
@CURRENTAPPUSERID | uniqueidentifier | IN | Input parameter indicating the ID of the current user. |
@SITES | xml | IN | Sites |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_LETTERCODE_4
(
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@NAME nvarchar(100),
@DESCRIPTION nvarchar(255),
@IDSETREGISTERID uniqueidentifier,
@WORDFILE varbinary(max),
@WORDTEMPLATEFILENAME nvarchar(255),
@DISPLAYEDFILENAME nvarchar(255),
@QUERYVIEWID uniqueidentifier,
@FILECHANGED bit,
@CUSTOMPARAMETERDATAFORMITEM xml,
@EXPORTDEFINITIONID uniqueidentifier,
@CURRENTAPPUSERID uniqueidentifier,
@SITES xml
)
as
set nocount on;
declare @CURRENTDATE datetime = getdate();
begin try
if @SITES is null and @CURRENTAPPUSERID is not null
begin
if dbo.UFN_SITEREQUIREDFORUSER(@CURRENTAPPUSERID) = 1
begin
raiserror('BBERR_LETTERCODESITE_SITEID', 13, 1);
return 1;
end
end
-- this must be enforced here now because the constraint that was enforcing it is no longer valid
-- and because letters added via MarketingLetterCode.Add.xml require neither field
if @QUERYVIEWID is null and @EXPORTDEFINITIONID is null
raiserror('BBERR_LETTERCODEOUTPUT_OUTPUTFORMATOREXPORTDEFINITIONREQUIRED', 13, 1);
if @QUERYVIEWID is not null and @EXPORTDEFINITIONID is not null
raiserror('BBERR_LETTERCODEOUTPUT_OUTPUTFORMATOREXPORTDEFINITION_OUTPUTFORMAT_OR_EXPORTDEF', 13, 1);
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
if len(cast(@CUSTOMPARAMETERDATAFORMITEM as nvarchar(max))) = 0
set @CUSTOMPARAMETERDATAFORMITEM = null
if @FILECHANGED = 1
update dbo.LETTERCODE set
NAME = @NAME,
DESCRIPTION = @DESCRIPTION,
IDSETREGISTERID = @IDSETREGISTERID,
WORDTEMPLATEFILENAME = @WORDTEMPLATEFILENAME,
WORDFILE = @WORDFILE,
QUERYVIEWID = @QUERYVIEWID,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE,
CUSTOMPARAMETERDATAFORMITEM = @CUSTOMPARAMETERDATAFORMITEM,
EXPORTDEFINITIONID = @EXPORTDEFINITIONID
where ID = @ID;
else
update dbo.LETTERCODE set
NAME = @NAME,
DESCRIPTION = @DESCRIPTION,
IDSETREGISTERID = @IDSETREGISTERID,
QUERYVIEWID = @QUERYVIEWID,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE,
CUSTOMPARAMETERDATAFORMITEM = @CUSTOMPARAMETERDATAFORMITEM,
EXPORTDEFINITIONID = @EXPORTDEFINITIONID
where ID = @ID;
exec dbo.USP_LETTERCODE_GETSITES_UPDATEFROMXML @ID, @SITES, @CHANGEAGENTID, @CURRENTDATE;
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch
return 0;