USP_REGISTRANTREGISTRATION_CHANGEPARENTGROUP

Change registrant registration parent group association if applicable.

Parameters

Parameter Parameter Type Mode Description
@GROUPID uniqueidentifier IN
@CHANGEAGENTID uniqueidentifier IN
@ROLECODE tinyint IN
@PARENTGROUPID uniqueidentifier IN
@PARENTGROUPIDORIGINAL uniqueidentifier IN

Definition

Copy


CREATE procedure dbo.USP_REGISTRANTREGISTRATION_CHANGEPARENTGROUP
(
  @GROUPID uniqueidentifier,
  @CHANGEAGENTID uniqueidentifier = null,
    @ROLECODE tinyint,
  @PARENTGROUPID uniqueidentifier,
  @PARENTGROUPIDORIGINAL uniqueidentifier
)
as
begin try

  set nocount on

  declare @HASNFGPARENT bit = 0
  declare @CURRENTDATE datetime = getdate()

  select @HASNFGPARENT=case when NFGCAMPAIGNLEVELID is null then 0 else 1 end from dbo.TEAMEXTENSION (nolock) where TEAMFUNDRAISINGTEAMID = @GROUPID

  if @HASNFGPARENT = 1 and @PARENTGROUPID is not null
    update dbo.TEAMEXTENSION
      set   NFGCAMPAIGNLEVELID = null,
            CHANGEDBYID = @CHANGEAGENTID,
            DATECHANGED = @CURRENTDATE
    where TEAMFUNDRAISINGTEAMID = @GROUPID  

    if @CHANGEAGENTID is null  
        exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output

  if @PARENTGROUPID is null
      set @PARENTGROUPID = '00000000-0000-0000-0000-000000000000'

  if @PARENTGROUPIDORIGINAL is null
      set @PARENTGROUPIDORIGINAL = '00000000-0000-0000-0000-000000000000'

  if @PARENTGROUPID = @PARENTGROUPIDORIGINAL
    return 0;
  else
      if @ROLECODE in (0,1,3) and (@PARENTGROUPID <> @PARENTGROUPIDORIGINAL)
    begin
      if @PARENTGROUPID = '00000000-0000-0000-0000-000000000000'    
      begin
         update dbo.TEAMFUNDRAISINGTEAM
         set PARENTTEAMID = null,
            CHANGEDBYID = @CHANGEAGENTID,
            DATECHANGED = @CURRENTDATE
         where ID = @GROUPID
      end
      else
      begin
        exec dbo.USP_DATAFORMTEMPLATE_EDIT_FAFGROUPMERGE 
          @ID = @GROUPID,
             @CHANGEAGENTID = @CHANGEAGENTID,
          @GROUPTOMERGEID = @GROUPID,
          @GROUPTOKEEPID = @PARENTGROUPID 
      end
    end
end try
begin catch
  exec USP_RAISE_ERROR
  return 1;
end catch

return 0;