USP_DATAFORMTEMPLATE_ADD_FAFSUPPORTINGEVENT

The save procedure used by the add dataform template "FAF Supporting Event Add Data 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.
@NAME nvarchar(100) IN Name
@DESCRIPTION nvarchar(255) IN Description
@STARTDATE datetime IN Start date
@STARTTIME UDT_HOURMINUTE IN Start time
@ENDDATE datetime IN End date
@ENDTIME UDT_HOURMINUTE IN End time
@CAPACITY int IN Capacity
@EVENTLOCATIONID uniqueidentifier IN Location
@EVENTLOCATIONCONTACTID uniqueidentifier IN Event contact
@MAINEVENTID uniqueidentifier IN Input parameter indicating the context ID for the record being added.
@SITES xml IN
@EVENTCATEGORYCODEID uniqueidentifier IN Category
@APPEALID uniqueidentifier IN Appeal
@PREVIOUSYEAREVENTID uniqueidentifier IN Previous year's event
@EVENTYEAR UDT_YEAR IN Report year
@LOOKUPID nvarchar(100) IN Lookup ID
@SUPPORTPHONE nvarchar(20) IN Support phone
@SUPPORTURL UDT_WEBADDRESS IN Support URL

Definition

Copy


create procedure dbo.USP_DATAFORMTEMPLATE_ADD_FAFSUPPORTINGEVENT
(
  @ID uniqueidentifier = null output,
  @CURRENTAPPUSERID uniqueidentifier,
  @CHANGEAGENTID uniqueidentifier = null,    
  @NAME nvarchar(100) = '',
  @DESCRIPTION nvarchar(255) = '',    
  @STARTDATE datetime,
  @STARTTIME dbo.UDT_HOURMINUTE = null,
  @ENDDATE datetime = null,
  @ENDTIME dbo.UDT_HOURMINUTE = null,                        
  @CAPACITY int = 0,
  @EVENTLOCATIONID uniqueidentifier = null,
  @EVENTLOCATIONCONTACTID uniqueidentifier = null,
  @MAINEVENTID uniqueidentifier,
  /*@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 = 0,

  @PREVIOUSYEAREVENTID uniqueidentifier = null,
  @EVENTYEAR UDT_YEAR = null,
  @LOOKUPID nvarchar(100) = '',
  @SUPPORTPHONE nvarchar(20) = '',
  @SUPPORTURL UDT_WEBADDRESS = ''
)
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('Site is required.',13,1)
        return
        end
    end

if @ENDDATE is null
    set @ENDDATE = @STARTDATE;

-- TMV 02/28/2007 CR268233-022607

if @CAPACITY is null
    set @CAPACITY = 0;


declare @QUICKCOMPAREEVENTID uniqueidentifier
/*if @ADDQUICKCOMPARE = 1
begin
    set @QUICKCOMPAREEVENTID = @COPYFROMEVENTID
end
*/

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)


  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;

    insert into dbo.EVENT
        (ID, NAME, DESCRIPTION, STARTDATE, STARTTIME, ENDDATE, ENDTIME, CAPACITY, EVENTLOCATIONID, EVENTLOCATIONCONTACTID, MAINEVENTID, EVENTCATEGORYCODEID, APPEALID, QUICKCOMPAREEVENTID, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
    values
        (@ID, @NAME, @DESCRIPTION, @STARTDATE, @STARTTIME, @ENDDATE, @ENDTIME, @CAPACITY, @EVENTLOCATIONID, @EVENTLOCATIONCONTACTID, @MAINEVENTID, @EVENTCATEGORYCODEID, @APPEALID, @QUICKCOMPAREEVENTID, @CHANGEAGENTID, @CHANGEAGENTID, @CURRENTDATE, @CURRENTDATE);

    exec dbo.USP_EVENT_GETSITES_ADDFROMXML @ID, @SITES, @CHANGEAGENTID, @CURRENTDATE 

  exec dbo.USP_DATAFORMTEMPLATE_ADD_EVENT_EXTENSION @CHANGEAGENTID = @CHANGEAGENTID, @EVENTID =  @ID, @EVENTYEAR = @EVENTYEAR, @SUPPORTURL = @SUPPORTURL, @SUPPORTPHONE = @SUPPORTPHONE, @LOOKUPEVENTID = @LOOKUPID, @EVENTTYPEID = 1, @PRIORYEAREVENTID = @PREVIOUSYEAREVENTID;

  /*
    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;

        if @COPYPRICES = 1
            exec dbo.USP_EVENTPRICE_COPY @COPYFROMEVENTID, @ID, @CHANGEAGENTID;

        if @COPYTEAMSTRUCTURE = 1
            exec dbo.USP_EVENT_TEAMFUNDRAISINGCOPY @COPYFROMEVENTID, null, @ID, @CHANGEAGENTID, @COPYTEAMFUNDRAISERS;

    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;
    end      
  */

end try

begin catch
    exec dbo.USP_RAISE_ERROR;
    return 1;
end catch

return 0;