USP_CUSTOMFORM_BULKMOVE

Parameters

Parameter Parameter Type Mode Description
@XML xml IN
@FOLDERID int IN

Definition

Copy


create procedure dbo.USP_CUSTOMFORM_BULKMOVE
(
@XML xml,
@FOLDERID int
)
as
begin

  set nocount on

  declare @CustomFormIDs table (formID int)
  insert into @CustomFormIDs select IDS.ID.value('formID[1]', 'int') from @XML.nodes('/CustomForms/CustomForm') IDS(ID)

  if @FOLDERID > 0
  begin    
    merge into dbo.CustomFormFolder as TARGET
    using @CustomFormIDs as SOURCE
    on TARGET.CustomFormElementID = SOURCE.formID
    when matched then
      update set SiteFoldersID = @FOLDERID
    when not matched by target then
      insert (CustomFormElementID, SiteFoldersID) values (formID, @FOLDERID);
  end
  else
  begin
    delete dbo.CustomFormFolder
    from dbo.CustomFormFolder cff
    inner join @CustomFormIDs cf on cf.formID = cff.CustomFormElementID
  end
end