USP_FAFEVENTSPONSORSHIPOPTION_COPY

Perform copy FAF event sponsorship option.

Parameters

Parameter Parameter Type Mode Description
@SOURCEID uniqueidentifier IN
@TARGETEVENTID uniqueidentifier IN
@SOURCEXML xml IN
@CHANGEAGENTID uniqueidentifier IN
@COPYBATCHGUID uniqueidentifier IN

Definition

Copy


CREATE procedure dbo.USP_FAFEVENTSPONSORSHIPOPTION_COPY
(
  @SOURCEID uniqueidentifier,
  @TARGETEVENTID uniqueidentifier,
  @SOURCEXML xml = null,  
  @CHANGEAGENTID uniqueidentifier = null,
  @COPYBATCHGUID uniqueidentifier
)
as
    declare @CURRENTDATE datetime,
          @IsCopyEvent bit
  set @CURRENTDATE = getdate()

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

  select @IsCopyEvent = case when @SOURCEXML is null and @SOURCEID is not null then 1 else 0 end

begin try
  if @SOURCEXML is null
    set @SOURCEXML = dbo.UFN_FAFEVENT_GETEVENTSPONSORSHIPOPTION_TOITEMLISTXML(@SOURCEID)

  if @IsCopyEvent = 1
    set @SOURCEXML = CAST(REPLACE(CAST(@SOURCEXML AS NVARCHAR(MAX)), '<COPYBATCHGUID>'+CAST(@SOURCEID as nvarchar(40))+'</COPYBATCHGUID>', '<COPYBATCHGUID>'+CAST(@COPYBATCHGUID as nvarchar(40))+'</COPYBATCHGUID>') AS XML)


  exec dbo.USP_FAFEVENT_GETEVENTSPONSORSHIPOPTION_ADDFROMXML @EVENTID=@TARGETEVENTID, @XML=@SOURCEXML, @CHANGEAGENTID=@CHANGEAGENTID, @CHANGEDATE=@CURRENTDATE

  select COPYSOURCEID AS ID, ID as TargetID
    into #TargetSponsorOption
    from dbo.EVENTSPONSORSHIPTYPE
    where EVENTID = @TARGETEVENTID;

  insert into dbo.[EVENTSPONSORSHIPTYPEBENEFIT] 
      ( [ID],[EVENTSPONSORSHIPTYPEID],[BENEFITID],[QUANTITY],ADDEDBYID,CHANGEDBYID,DATEADDED,DATECHANGED)
  select 
    newid(), tEST1.TargetID,[BENEFITID],[QUANTITY],@CHANGEAGENTID,@CHANGEAGENTID,@CURRENTDATE,@CURRENTDATE
  from #TargetSponsorOption tEST1 
  join dbo.[EVENTSPONSORSHIPTYPEBENEFIT] ESTB1 on tEST1.ID = ESTB1.EVENTSPONSORSHIPTYPEID

  drop table #TargetSponsorOption

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

return 0;