USP_SITEIMAGES_BULKMOVE

Parameters

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

Definition

Copy


create procedure dbo.USP_SITEIMAGES_BULKMOVE
(
@XML xml,
@FOLDERID int
)
as
begin
    -- do work


    set nocount on

    declare @SiteImageIDS table ([SiteImageID] int)
    insert into @SiteImageIDS select IDS.ID.value('.', 'int') from @XML.nodes('/SiteImages/id') IDS(ID)

    if @FOLDERID > 0
    begin    
        merge into dbo.SITEIMAGEFOLDERS as TARGET
        using @SiteImageIDS as SOURCE
        on TARGET.SiteImageID = SOURCE.SiteImageID
        when matched then
            update set SITEFOLDERID = @FOLDERID
        when not matched by target then
            insert (SITEIMAGEID, SITEFOLDERID) values (SiteImageID, @FOLDERID);
    end
    else
    begin
        delete dbo.SITEIMAGEFOLDERS
        from dbo.SITEIMAGEFOLDERS SCF
        inner join @SiteImageIDS SCI on SCI.SiteImageID = SCF.SiteImageID
    end
end