USP_CLONESITE_WRAPPER

Wraps calls to part-type specific SPs with a transaction and common try catch block

Parameters

Parameter Parameter Type Mode Description
@CLONESITECOMMAND nvarchar(1000) IN
@SourceClientSitesID int IN
@TargetClientSitesID int IN
@CurrentUserID int IN
@CopyBatchGuid uniqueidentifier IN

Definition

Copy


CREATE procedure [dbo].[USP_CLONESITE_WRAPPER]
(
@CLONESITECOMMAND nvarchar(1000),
@SourceClientSitesID int,
@TargetClientSitesID int,
@CurrentUserID int,
@CopyBatchGuid uniqueidentifier
)
with execute as owner
as
begin try
        begin transaction
            Declare @SQLQuery AS nvarchar(4000)
            Declare @ParamDefinition AS nvarchar(2000

            Set @SQLQuery = @CLONESITECOMMAND + ' @SourceClientSitesID, @TargetClientSitesID, @CurrentUserID, @CopyBatchGuid'

            Set @ParamDefinition = ' @SourceClientSitesID int, @TargetClientSitesID int, @CurrentUserID int, @CopyBatchGuid uniqueidentifier'

            Execute sp_Executesql  @SQLQuery
                @ParamDefinition
                @SourceClientSitesID
                @TargetClientSitesID
                @CurrentUserID
                @CopyBatchGuid
           commit transaction
    end try
    begin catch
        rollback transaction
        UPDATE SiteCopy SET ErrorLog = ErrorLog +  'Error Copying Parts in ' + @CLONESITECOMMAND + ':' + ERROR_MESSAGE() + CHAR(13) WHERE ID = @CopyBatchGUID
    end catch