USP_DATAFORMTEMPLATE_ADD_FAFNFG
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | INOUT | |
@CAMPAIGNID | uniqueidentifier | IN | |
@CHANGEAGENTID | uniqueidentifier | IN | |
@CURRENTAPPUSERID | uniqueidentifier | IN | |
@NAME | nvarchar(100) | IN | |
@NFGTYPECODEID | uniqueidentifier | IN | |
@ORGANIZATIONCONSTITUENTID | uniqueidentifier | IN | |
@CONTACTID | uniqueidentifier | IN | |
@SITES | xml | IN | |
@ALLOWOTHERSJOINFROMGROUPPAGE | bit | IN | |
@ALLOWCOMPANIESJOINFROMGROUPPAGE | bit | IN | |
@ALLOWGROUPSCHOOSEHIERARCHYLEVEL | bit | IN | |
@TOTALREVENUEGOAL | money | IN | |
@TOTALDONORSGOAL | int | IN | |
@PARTICIPANTSRECRECRUITMENTGOAL | int | IN | |
@PARTICIPANTSRETAINEDGOAL | decimal(18, 0) | IN | |
@FAFGROUPSRECRUITMENTGOAL | int | IN | |
@FAFGROUPSRETAINEDGOAL | decimal(18, 0) | IN | |
@COMMUNICATIONSTOSEND | int | IN |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADD_FAFNFG
(
@ID uniqueidentifier = null output,
@CAMPAIGNID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@CURRENTAPPUSERID uniqueidentifier,
@NAME nvarchar(100) = '',
@NFGTYPECODEID uniqueidentifier = null,
@ORGANIZATIONCONSTITUENTID uniqueidentifier = null,
@CONTACTID uniqueidentifier = null,
@SITES xml = null,
@ALLOWOTHERSJOINFROMGROUPPAGE bit = 0,
@ALLOWCOMPANIESJOINFROMGROUPPAGE bit = 0,
@ALLOWGROUPSCHOOSEHIERARCHYLEVEL bit = 0,
@TOTALREVENUEGOAL money =0.00,
@TOTALDONORSGOAL int =0,
@PARTICIPANTSRECRECRUITMENTGOAL int =0,
@PARTICIPANTSRETAINEDGOAL decimal = 0,
@FAFGROUPSRECRUITMENTGOAL int =0,
@FAFGROUPSRETAINEDGOAL decimal =0,
@COMMUNICATIONSTOSEND 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()
declare @GroupConstituentID uniqueidentifier
Set @GroupConstituentID = newid()
declare @NFGGroupTypeID uniqueidentifier
SELECT @NFGGroupTypeID = ID FROM dbo.GROUPTYPE WHERE NAME = 'FAF National Fundraising Group'
begin try
-- create a group constituent record
insert into dbo.CONSTITUENT
(
ID, ISGroup, KEYNAME, IsConstituent, IsOrganization,
ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED
)
values
(
@GroupConstituentID, 1, @NAME, 1, 0,
@CHANGEAGENTID, @CHANGEAGENTID, @CURRENTDATE, @CURRENTDATE
);
if exists(SELECT ID FROM dbo.GROUPTYPE WHERE NAME = 'FAF National Fundraising Group')
begin
Insert into dbo.groupData
(
ID, GroupTypeCode, GroupTypeID,
ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED
)
values
(
@GroupConstituentID, 1, @NFGGroupTypeID,
@CHANGEAGENTID, @CHANGEAGENTID, @CURRENTDATE, @CURRENTDATE
)
end
-- create NFG
insert into dbo.FAFNFGCAMPAIGN
(ID, GroupConstituentID, CampaignID, OrganizationConstituentID, NFGTypeCodeID, Name, ContactID,
ALLOWOTHERSJOINFROMGROUPPAGE, ALLOWCOMPANIESJOINFROMGROUPPAGE, ALLOWGROUPSCHOOSEHIERARCHYLEVEL,
TOTALREVENUEGOAL, TOTALDONORSGOAL,
PARTICIPANTSRECRECRUITMENTGOAL, PARTICIPANTSRETAINEDGOAL,
FAFGROUPSRECRUITMENTGOAL, FAFGROUPSRETAINEDGOAL, COMMUNICATIONSTOSEND,
ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
values
(@ID, @GroupConstituentID, @CAMPAIGNID, @ORGANIZATIONCONSTITUENTID, @NFGTYPECODEID, @Name, @CONTACTID,
@ALLOWOTHERSJOINFROMGROUPPAGE, @ALLOWCOMPANIESJOINFROMGROUPPAGE, @ALLOWGROUPSCHOOSEHIERARCHYLEVEL,
@TOTALREVENUEGOAL, @TOTALDONORSGOAL,
@PARTICIPANTSRECRECRUITMENTGOAL, @PARTICIPANTSRETAINEDGOAL,
@FAFGROUPSRECRUITMENTGOAL, @FAFGROUPSRETAINEDGOAL, @COMMUNICATIONSTOSEND,
@CHANGEAGENTID, @CHANGEAGENTID, @CURRENTDATE, @CURRENTDATE)
exec dbo.USP_NFG_GETSITES_ADDFROMXML @ID, @SITES, @CHANGEAGENTID;
-- create a default level
INSERT into dbo.FAFNFGCAMPAIGNLEVEL
(ID, NFGCAMPAIGNID, NAME,
HIERARCHYPATH, CONTACTID,
ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
VALUES(
NEWID(), @ID, @NAME,
dbo.UFN_LEVELHIERARCHY_GETNEWDESCENDANTVALUE(@ID, null), @CONTACTID,
@CHANGEAGENTID, @CHANGEAGENTID, @CURRENTDATE, @CURRENTDATE)
-- create a relationship type
if @ORGANIZATIONCONSTITUENTID is not null
Begin
declare @RELATIONSHIPTYPECODEID uniqueidentifier
declare @RECIPROCALTYPECODEID uniqueidentifier
SELECT @RECIPROCALTYPECODEID = ID from dbo.RELATIONSHIPTYPECODE (NOLOCK) WHERE DESCRIPTION = 'FAF Organization'
SELECT @RELATIONSHIPTYPECODEID = ID from dbo.RELATIONSHIPTYPECODE (NOLOCK) WHERE DESCRIPTION = 'FAF National Fundraising Group'
EXEC dbo.USP_DATAFORMTEMPLATE_ADD_ORGTOGROUP_RELATIONSHIP
@ID = null,
@CHANGEAGENTID = @CHANGEAGENTID,
@CONSTITUENTID = @GroupConstituentID,
@RECIPROCALCONSTITUENTID = @ORGANIZATIONCONSTITUENTID,
@RELATIONSHIPTYPECODEID = @RELATIONSHIPTYPECODEID,
@RECIPROCALTYPECODEID = @RECIPROCALTYPECODEID,
@COMMENTS = ''
End
-- add default site security
Declare @SiteID uniqueidentifier
Select @SiteID = SiteID from dbo.AppUser where ID = @CURRENTAPPUSERID
if @SiteID is not null
Begin
Insert into dbo.Constituentsite
(ID, ConstituentID, SiteID,
ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
Values
(NEWID(), @GroupConstituentID, @SiteID,
@CHANGEAGENTID, @CHANGEAGENTID, @CURRENTDATE, @CURRENTDATE)
End
end try
begin catch
exec dbo.USP_RAISE_ERROR
return 1
end catch
return 0