USP_EVENT_ADD
Shared stored procedure for use by Event Add and Event Batch Commit.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | INOUT | |
@CURRENTAPPUSERID | uniqueidentifier | IN | |
@CHANGEAGENTID | uniqueidentifier | IN | |
@NAME | nvarchar(100) | IN | |
@DESCRIPTION | nvarchar(255) | IN | |
@STARTDATE | date | IN | |
@STARTTIME | UDT_HOURMINUTE | IN | |
@ENDDATE | date | IN | |
@ENDTIME | UDT_HOURMINUTE | IN | |
@CAPACITY | int | IN | |
@EVENTLOCATIONID | uniqueidentifier | IN | |
@EVENTLOCATIONCONTACTID | uniqueidentifier | IN | |
@MAINEVENTID | uniqueidentifier | IN | |
@COPYFROMEVENTID | uniqueidentifier | IN | |
@COPYTASKS | bit | IN | |
@COPYEXPENSES | bit | IN | |
@COPYPRICES | bit | IN | |
@COPYINVITATIONS | bit | IN | |
@COPYINVITEES | bit | IN | |
@COPYATTRIBUTES | bit | IN | |
@ATTRIBUTEDEFINED | bit | IN | |
@SITES | xml | IN | |
@COPYPREFERENCES | bit | IN | |
@EVENTCATEGORYCODEID | uniqueidentifier | IN | |
@COPYTEAMSTRUCTURE | bit | IN | |
@COPYTEAMFUNDRAISERS | bit | IN | |
@APPEALID | uniqueidentifier | IN | |
@ADDQUICKCOMPARE | bit | IN | |
@COPYLODGINGOPTIONS | bit | IN | |
@EVENTLOCATIONROOMID | uniqueidentifier | IN | |
@COPYJOBOCCURRENCES | bit | IN | |
@ISAUCTION | bit | IN | |
@HIDEFROMCALENDAR | bit | IN | |
@BASECURRENCYID | uniqueidentifier | IN | |
@DESIGNATIONSONFEES | bit | IN | |
@COPYDESIGNATIONS | bit | IN | |
@COPYPUBLICDESCRIPTION | bit | IN |
Definition
Copy
CREATE procedure dbo.USP_EVENT_ADD
(
@ID uniqueidentifier = null output,
@CURRENTAPPUSERID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@NAME nvarchar(100) = '',
@DESCRIPTION nvarchar(255) = '',
@STARTDATE date,
@STARTTIME dbo.UDT_HOURMINUTE = null,
@ENDDATE date = null,
@ENDTIME dbo.UDT_HOURMINUTE = null,
@CAPACITY int = 0,
@EVENTLOCATIONID uniqueidentifier = null,
@EVENTLOCATIONCONTACTID uniqueidentifier = null,
@MAINEVENTID uniqueidentifier = null,
@COPYFROMEVENTID uniqueidentifier = null,
@COPYTASKS bit = 0,
@COPYEXPENSES bit = 0,
@COPYPRICES bit = 0,
@COPYINVITATIONS bit = 0,
@COPYINVITEES bit = 0,
@COPYATTRIBUTES bit = 0,
@ATTRIBUTEDEFINED bit = 0,
@SITES xml = null,
@COPYPREFERENCES bit = 0,
@EVENTCATEGORYCODEID uniqueidentifier = null,
@COPYTEAMSTRUCTURE bit = 0,
@COPYTEAMFUNDRAISERS bit = 0,
@APPEALID uniqueidentifier = null,
@ADDQUICKCOMPARE bit = 1,
@COPYLODGINGOPTIONS bit = 0,
@EVENTLOCATIONROOMID uniqueidentifier = null,
@COPYJOBOCCURRENCES bit = 0,
@ISAUCTION bit = 0,
@HIDEFROMCALENDAR bit = 0,
@BASECURRENCYID uniqueidentifier = null,
@DESIGNATIONSONFEES bit = 0,
@COPYDESIGNATIONS bit = 1,
@COPYPUBLICDESCRIPTION bit = 1
-- pdg 8.27.2009 removing EVENTTYPEID while FAF is under construction ,@EVENTTYPEID tinyint = 0
)
as
set nocount on;
declare @CURRENTDATE datetime;
if @ID is null
set @ID = newid();
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
set @CURRENTDATE = getdate();
if @SITES is null
begin
if dbo.UFN_SITEREQUIREDFORUSER(@CURRENTAPPUSERID) = 1
begin
raiserror('ERR_EVENTSITE_SITEID',13,1);
return 1;
end
end
if @ISAUCTION = 1 and @APPEALID is not null and @APPEALID <> '00000000-0000-0000-0000-000000000000'
begin
raiserror('ERR_EVENTAUCTION_TEAMFUNDRAISINGAPPEAL', 13, 1);
return 1;
end
if @ENDDATE is null
set @ENDDATE = @STARTDATE;
if @STARTTIME = @ENDTIME and @STARTTIME = '0000'
begin
set @STARTTIME = ''
set @ENDTIME = ''
end
-- TMV 02/28/2007 CR268233-022607
if @CAPACITY is null
set @CAPACITY = 0;
begin try
--CR297394-040708 TMV 04/08/2008 This may change to be a database constraint in a future release
if dbo.UFN_EVENT_CANSUPPORTEVENTS_NULLAPPEAL(@MAINEVENTID) <> 1
raiserror('ERR_EVENT_CANSUPPORTEVENTS_NULLAPPEAL', 16, 1);
exec dbo.USP_EVENTSITE_VALIDATESITES @SITES
/* pdg 8.27.2009 commenting out for now
-- FAF considers appeal same as event, so we create appeal behind scene to conform with current event model (team fundraising)
if @EVENTTYPEID > 0
begin
declare @APPEALDESCRIPTION nvarchar(255)
if @DESCRIPTION = ''
set @APPEALDESCRIPTION = @NAME
else
set @APPEALDESCRIPTION = @DESCRIPTION
exec dbo.USP_DATAFORMTEMPLATE_ADD_APPEAL @APPEALID output, @CHANGEAGENTID, @NAME, @APPEALDESCRIPTION, null, null, @STARTDATE, @ENDDATE, 0, null, null, null, @CURRENTAPPUSERID;
end
*/
if @BASECURRENCYID is null
set @BASECURRENCYID = dbo.UFN_APPUSER_GETBASECURRENCY(@CURRENTAPPUSERID);
declare @APPEALCURRENCYID uniqueidentifier;
if @APPEALID is not null
begin
select @APPEALCURRENCYID = APPEAL.BASECURRENCYID from dbo.APPEAL where APPEAL.ID = @APPEALID;
if @APPEALCURRENCYID <> @BASECURRENCYID
raiserror('ERR_EVENT_APPEAL_BASECURRENCYMUSTMATCH', 13, 1);
end
--Copy public description (currently only used for web forms)
if dbo.UFN_INSTALLEDPRODUCTS_PRODUCTIS('e5e0494b-ba0f-4e23-b8fb-a59112dbf3c8') = 0 --BasicCMS
set @COPYPUBLICDESCRIPTION = 0
declare @PUBLICDESCRIPTIONHTML nvarchar(max) = ''
declare @PUBLICDESCRIPTIONTEXT nvarchar(max) = ''
if @COPYFROMEVENTID is not null and @COPYPUBLICDESCRIPTION = 1
select
@PUBLICDESCRIPTIONHTML = [EVENT].[PUBLICDESCRIPTIONHTML],
@PUBLICDESCRIPTIONTEXT = [EVENT].[PUBLICDESCRIPTIONTEXT]
from dbo.[EVENT]
where [ID] = @COPYFROMEVENTID
insert into dbo.EVENT
(ID, NAME, DESCRIPTION, STARTDATE, STARTTIME, ENDDATE, ENDTIME, CAPACITY, EVENTLOCATIONID, EVENTLOCATIONROOMID, EVENTLOCATIONCONTACTID, MAINEVENTID, EVENTCATEGORYCODEID, APPEALID, BASECURRENCYID, PUBLICDESCRIPTIONHTML, PUBLICDESCRIPTIONTEXT, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED, HIDEFROMCALENDAR, DESIGNATIONSONFEES)
values
(@ID, @NAME, @DESCRIPTION, @STARTDATE, @STARTTIME, @ENDDATE, @ENDTIME, @CAPACITY, @EVENTLOCATIONID, @EVENTLOCATIONROOMID, @EVENTLOCATIONCONTACTID, @MAINEVENTID, @EVENTCATEGORYCODEID, @APPEALID, @BASECURRENCYID, @PUBLICDESCRIPTIONHTML, @PUBLICDESCRIPTIONTEXT, @CHANGEAGENTID, @CHANGEAGENTID, @CURRENTDATE, @CURRENTDATE, @HIDEFROMCALENDAR, @DESIGNATIONSONFEES);
exec dbo.USP_EVENT_GETSITES_ADDFROMXML @ID, @SITES, @CHANGEAGENTID, @CURRENTDATE
if @ISAUCTION = 1
insert into dbo.EVENTAUCTION(ID, DATEADDED, DATECHANGED, ADDEDBYID, CHANGEDBYID) values(@ID, @CURRENTDATE, @CURRENTDATE, @CHANGEAGENTID, @CHANGEAGENTID)
/*
if @EVENTTYPEID > 0
begin
exec dbo.USP_DATAFORMTEMPLATE_ADD_EVENT_EXTENSION @CHANGEAGENTID = @CHANGEAGENTID,@EVENTID = @ID, @EVENTTYPEID = @EVENTTYPEID;
exec dbo.USP_DATAFORMTEMPLATE_ADD_EVENTGOAL @EVENTID = @ID;
end
*/
if @COPYFROMEVENTID is not null
begin
if @COPYTASKS = 1
exec dbo.USP_EVENTTASK_COPY @COPYFROMEVENTID, @ID, @CHANGEAGENTID;
if @COPYEXPENSES = 1
exec dbo.USP_EVENTEXPENSE_COPY @COPYFROMEVENTID, @ID, @CHANGEAGENTID, @CURRENTAPPUSERID;
if @COPYPRICES = 1
exec dbo.USP_EVENTPRICE_COPY @COPYFROMEVENTID, @ID, @CHANGEAGENTID;
if @COPYTEAMSTRUCTURE = 1
--bug 127803 - Add security for add event form.
exec dbo.USP_EVENT_TEAMFUNDRAISINGCOPY @COPYFROMEVENTID, null, @ID, @CHANGEAGENTID, @COPYTEAMFUNDRAISERS, @CURRENTAPPUSERID, '3e2e444e-dd3d-48dd-a0ec-d50627aa9e0b';
if @COPYINVITATIONS = 1
exec dbo.USP_INVITATION_COPY @COPYFROMEVENTID, @ID, @CHANGEAGENTID, @COPYINVITEES;
if @COPYATTRIBUTES = 1
exec dbo.USP_EVENTATTRIBUTE_COPY @COPYFROMEVENTID, @ID, @CHANGEAGENTID;
if @COPYPREFERENCES = 1
exec dbo.USP_EVENTPREFERENCE_COPY @COPYFROMEVENTID, @ID, @CHANGEAGENTID;
if @COPYLODGINGOPTIONS = 1
exec dbo.USP_EVENTLODGINGOPTIONS_COPY @COPYFROMEVENTID, @ID, @CHANGEAGENTID;
if @COPYJOBOCCURRENCES = 1
exec dbo.USP_EVENTJOBOCCURRENCES_COPY @COPYFROMEVENTID, @ID, @CHANGEAGENTID;
if @COPYDESIGNATIONS = 1
exec dbo.USP_EVENTDESIGNATIONS_COPY @COPYFROMEVENTID, @ID, @CHANGEAGENTID;
end
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch
return 0;