USP_DATAFORMTEMPLATE_ADD_ASSIGNLETTERCODESPROCESS_2
The save procedure used by the add dataform template "Assign Letters Process Add Form 2".
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | INOUT | The output parameter indicating the ID of the record added. |
@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 |
@LETTERCODES | xml | IN | |
@CREATEOUTPUTIDSET | bit | IN | Create selection from results |
@OUTPUTIDSETNAME | nvarchar(100) | IN | Selection name |
@OVERWRITEOUTPUTIDSET | bit | IN | Overwrite existing Selection |
@ASSIGNALLLETTERCODES | bit | IN | Assign all letters |
@USEDATEFILTER | bit | IN | Only consider revenue or recognition credit added since last run |
@OUTPUTIDSETRECORDTYPEID | uniqueidentifier | IN | Selection type |
@CURRENTAPPUSERID | uniqueidentifier | IN | Input parameter indicating the ID of the current user. |
@INCLUDEDONORASACKNOWLEDGEE | bit | IN | Include donor |
@INCLUDERECOGNITIONRECIPIENTSASACKNOWLEDGEE | bit | IN | Include recognition recipients |
@SITEID | uniqueidentifier | IN | Site |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADD_ASSIGNLETTERCODESPROCESS_2
(
@ID uniqueidentifier = null output,
@CHANGEAGENTID uniqueidentifier = null,
@NAME nvarchar(100),
@DESCRIPTION nvarchar(255) = null,
@IDSETREGISTERID uniqueidentifier = null,
@LETTERCODES xml = null,
@CREATEOUTPUTIDSET bit = 0,
@OUTPUTIDSETNAME nvarchar(100) = null,
@OVERWRITEOUTPUTIDSET bit = 0,
@ASSIGNALLLETTERCODES bit = 1,
@USEDATEFILTER bit = null,
@OUTPUTIDSETRECORDTYPEID uniqueidentifier = null,
@CURRENTAPPUSERID uniqueidentifier,
@INCLUDEDONORASACKNOWLEDGEE bit = 1,
@INCLUDERECOGNITIONRECIPIENTSASACKNOWLEDGEE bit = 0,
@SITEID uniqueidentifier = null
)
as
set nocount on;
declare @CURRENTDATE datetime;
set @CURRENTDATE = getdate();
if coalesce(@INCLUDEDONORASACKNOWLEDGEE, 0) = 0 and
coalesce(@INCLUDERECOGNITIONRECIPIENTSASACKNOWLEDGEE, 0) = 0
begin
raiserror('MUST_INCLUDE_ACKNOWLEDGEES', 13, 1)
return 1
end
begin try
if @ID is null
set @ID = NewID();
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
if @ASSIGNALLLETTERCODES = 0
if (select count(*) from dbo.UFN_ASSIGNLETTERCODESPROCESS_GETLETTERCODES_FROMITEMLISTXML(@LETTERCODES)) = 0
raiserror('Please enter at least one letter.', 13, 1);
if (@SITEID is not null)
begin
if dbo.UFN_SITEALLOWEDFORUSER(@CURRENTAPPUSERID, @SITEID) = 0 begin
raiserror ('ERR_SITE_NOACCESS',13,1);
return 1;
end
end
insert into dbo.ASSIGNLETTERCODESPROCESS
(ID,NAME,DESCRIPTION,IDSETREGISTERID,CREATEOUTPUTIDSET,OUTPUTIDSETRECORDTYPEID,OUTPUTIDSETNAME,OVERWRITEOUTPUTIDSET,ASSIGNALLLETTERCODES,USEDATEFILTER,INCLUDEDONORASACKNOWLEDGEE,INCLUDERECOGNITIONRECIPIENTSASACKNOWLEDGEE,ADDEDBYID,CHANGEDBYID,DATEADDED,DATECHANGED)
values
(@ID,@NAME,@DESCRIPTION,@IDSETREGISTERID,@CREATEOUTPUTIDSET,@OUTPUTIDSETRECORDTYPEID,@OUTPUTIDSETNAME,@OVERWRITEOUTPUTIDSET,@ASSIGNALLLETTERCODES,@USEDATEFILTER,@INCLUDEDONORASACKNOWLEDGEE,@INCLUDERECOGNITIONRECIPIENTSASACKNOWLEDGEE,@CHANGEAGENTID,@CHANGEAGENTID,@CURRENTDATE,@CURRENTDATE);
if @ASSIGNALLLETTERCODES = 0
exec dbo.USP_ASSIGNLETTERCODESPROCESS_GETLETTERCODES_UPDATEFROMXML @ID, @LETTERCODES, @CHANGEAGENTID, @CURRENTDATE;
exec dbo.USP_BUSINESSPROCESSINSTANCE_ADD @CHANGEAGENTID = @CHANGEAGENTID,
@BUSINESSPROCESSCATALOGID = 'a3a2d937-b5ff-4b2e-8a1b-640f895c2183',
@BUSINESSPROCESSPARAMETERSETID = @ID,
@OWNERID = @CURRENTAPPUSERID, @SITEID = @SITEID;
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch
return 0;