USP_DATAFORMTEMPLATE_ADD_FAFPROGRAM
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | INOUT | |
@CURRENTAPPUSERID | uniqueidentifier | IN | |
@CHANGEAGENTID | uniqueidentifier | IN | |
@NAME | nvarchar(100) | IN | |
@DESCRIPTION | nvarchar(255) | IN | |
@SITES | xml | IN | |
@PREVIOUSCAMPAIGNID | uniqueidentifier | IN | |
@SELECTEDEVENTS | xml | IN | |
@COPYFROMEVENTCAMPAIGNID | uniqueidentifier | IN |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADD_FAFPROGRAM
(
@ID uniqueidentifier = null output,
@CURRENTAPPUSERID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@NAME nvarchar(100) = '',
@DESCRIPTION nvarchar(255) = '',
@SITES xml = null,
@PREVIOUSCAMPAIGNID uniqueidentifier = null,
@SELECTEDEVENTS xml = null,
@COPYFROMEVENTCAMPAIGNID uniqueidentifier = null
)
as
set nocount on;
declare
@DEFAULTSITEID uniqueidentifier = null,
@dSite nvarchar(200);
if @ID is null
set @ID = newid()
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output
declare @CURRENTDATE datetime
set @CURRENTDATE = getdate()
if dbo.UFN_SITEREQUIREDFORUSER(@CURRENTAPPUSERID) = 1
begin
if @SITES is null
raiserror('Site is required.',13,1)
else
begin
select @DEFAULTSITEID = SITEID from dbo.UFN_SITE_MYSITE_GET(@CURRENTAPPUSERID)
set @dSite = '<SITEID>'+ cast(@DEFAULTSITEID as nvarchar(40)) +'</SITEID>';
if CAST(@SITES AS NVARCHAR(MAX)) NOT LIKE '%'+@dSite+'%'
raiserror('You did not assign your default site to the event campaign. To continue, edit site security and add your default site.', 13,1)
end
exec dbo.USP_EVENTSITE_VALIDATESITES @SITES
end
begin try
exec dbo.USP_FAFEVENTCAMPAIGN_INITIALIZE_PARAMETER
-- handle inserting the data
insert into dbo.FAFPROGRAM
(ID, NAME, DESCRIPTION, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED, PREVIOUSCAMPAIGNID)
values
(@ID, @NAME, @DESCRIPTION, @CHANGEAGENTID, @CHANGEAGENTID, @CURRENTDATE, @CURRENTDATE, @PREVIOUSCAMPAIGNID)
exec dbo.USP_FAFPROGRAM_GETSITES_ADDFROMXML @ID, @SITES, @CHANGEAGENTID, @CURRENTDATE
update dbo.EVENTEXTENSION set FAFPROGRAMID = @ID, CHANGEDBYID = @CHANGEAGENTID, DATECHANGED = @CURRENTDATE
where EVENTID in (select EVENTCOLLECTION.EVENTID from dbo.UFN_GLOBALCHANGE_GETEVENTLIST_FROMITEMLISTXML(@SELECTEDEVENTS) as EVENTCOLLECTION)
if @COPYFROMEVENTCAMPAIGNID is not null
begin
exec dbo.USP_FAFEVENTCAMPAIGNCOPY_WRAPPER @SOURCEID = @COPYFROMEVENTCAMPAIGNID, @TARGETEVENTCAMPAIGNID = @ID, @CHANGEAGENTID = @CHANGEAGENTID, @CURRENTAPPUSERID = @CURRENTAPPUSERID, @XML = @SITES
end
end try
begin catch
exec dbo.USP_RAISE_ERROR
return 1
end catch
return 0