USP_DATAFORMTEMPLATE_ADD_FAFNFGCAMPAIGNLEVEL

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier INOUT
@CURRENTAPPUSERID uniqueidentifier IN
@CHANGEAGENTID uniqueidentifier IN
@NAME nvarchar(100) IN
@NFGCAMPAIGNID uniqueidentifier IN
@CONTACTID uniqueidentifier IN
@SITES xml IN
@FAFFRIENDLYURL nvarchar(200) IN
@TOTALREVENUEGOAL money IN
@DONORSGOAL int IN
@PARTICIPANTSGOAL int IN
@GROUPSGOAL int IN
@COMMUNICATIONSGOAL int IN

Definition

Copy

CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADD_FAFNFGCAMPAIGNLEVEL
(
    @ID uniqueidentifier = null output,
    @CURRENTAPPUSERID uniqueidentifier,
    @CHANGEAGENTID uniqueidentifier = null,
      @NAME nvarchar(100) = '',
    @NFGCAMPAIGNID uniqueidentifier,
    @CONTACTID uniqueidentifier = null,
    @SITES xml = null,
    @FAFFRIENDLYURL nvarchar(200) = '',
    @TOTALREVENUEGOAL money = 0,
    @DONORSGOAL int = 0,
    @PARTICIPANTSGOAL int = 0,
    @GROUPSGOAL int = 0,
    @COMMUNICATIONSGOAL int = 0
)
as

set nocount on;

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 exists(select top 1 * from dbo.UFN_FAFPROGRAM_GETSITES_FROMITEMLISTXML(@SITES) SS where SS.SITEID not in (select SITEID from dbo.UFN_FAFNATIONALFUNDRAISINGGROUP_GETSITES (@NFGCAMPAIGNID)))
    raiserror('NotMatchSite',13,1)

declare @PARENTID uniqueidentifier
set @PARENTID = (select FAFNFGCAMPAIGNLEVEL.ID from FAFNFGCAMPAIGNLEVEL where FAFNFGCAMPAIGNLEVEL.NFGCAMPAIGNID = @NFGCAMPAIGNID and FAFNFGCAMPAIGNLEVEL.HIERARCHYPATH.GetLevel() = 1)

begin try
    -- handle inserting the data
    insert into dbo.FAFNFGCAMPAIGNLEVEL
        (ID, NFGCAMPAIGNID, NAME, HIERARCHYPATH,CONTACTID,TOTALREVENUEGOAL,DONORSGOAL,PARTICIPANTSGOAL,GROUPSGOAL,COMMUNICATIONSGOAL, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
    values
        (@ID, @NFGCAMPAIGNID, @NAME, dbo.UFN_LEVELHIERARCHY_GETNEWDESCENDANTVALUE(@NFGCAMPAIGNID, @PARENTID), @CONTACTID,@TOTALREVENUEGOAL,@DONORSGOAL,@PARTICIPANTSGOAL,@GROUPSGOAL,@COMMUNICATIONSGOAL,@CHANGEAGENTID, @CHANGEAGENTID, @CURRENTDATE, @CURRENTDATE)

    exec dbo.USP_NFGLEVEL_GETSITES_ADDFROMXML @ID, @SITES, @CHANGEAGENTID;
end try

begin catch
    exec dbo.USP_RAISE_ERROR
    return 1
end catch

return 0