Back to OIM Explorer

dbo.QBM_PJobCreate_HODelete_L

Stored ProcedureSQL_STORED_PROCEDURESandbox DB

Stored Procedure. References QBM_PJobCreate*

Source: sandbox-db sys.sql_modules

Source size: 2.261 characters

Interpretation

  • Database routine. Review parameters, called procedures, DBQueue inserts, and QBM_PJobCreate helper calls before assuming side effects.
  • Object-layer bridge detected through QBM_PJobCreate helper usage.

Relations

  • References QBM_PJobCreate*

Typed Edges

  • references source dbo.QBM_FGISessionErrorRethrow source text reference
  • references source dbo.QBM_PB3D180A1745C229E35DBD6E_ source text reference
  • references source dbo.QBM_PJobCreate source text reference
  • references source dbo.QBM_PJobCreate_HODelete source text reference
  • references source dbo.QBM_PSessionErrorAdd source text reference

Complete Source

SQL87 lines
1CREATE PROCEDURE QBM_PJobCreate_HODelete_L(2  @objecttype nvarchar(255),3  @XObjectKeys QBM_YParameterList READONLY,4  @GenProcID varchar(38),5  @AdditionalObjectKeysAffected QBM_YParameterList READONLY,6  @ConnectionVariables nvarchar(max) = NULL,7  @AuthenticationString nvarchar(max) = NULL,8  @SingleTransaction BIT = 1,9  @isToFreezeOnError BIT = 0,10  @Retries int = 0,11  @priority int = 5,12  @Jobchainname nvarchar(256) = NULL,13  @StartAt datetime = NULL,14  @BasisObjectKey varchar(138) = '',15  @XUser nvarchar(64) = NULL,16  @WhereClauseAdditional nvarchar(max) = '',17  @checkForExisting BIT = 0,18  @QueueName nvarchar(256) = NULL,19  @DeepDelete BIT = 020)21AS22BEGIN23  DECLARE @Portion int24  DECLARE @PortionMax int25  DECLARE @ElementsMax int26  DECLARE @ElementsLen int27  DECLARE @AllObjectKeysIn QBM_YObjectKeyAndPortion28  SET XACT_ABORT OFF29  BEGIN TRY30    SELECT TOP 1 @ElementsLen = len(Parameter1)31    FROM @XObjectKeys32    IF isnull(@ElementsLen,33    0) = 034    BEGIN35      GOTO endLabel36    END37    SELECT @ElementsMax = 20000 / @ElementsLen38    IF @ElementsMax > 45039    BEGIN40      SELECT @ElementsMax = 45041    END42    INSERT INTO @AllObjectKeysIn(ObjectKey,43    Portion)44    SELECT45      o.Parameter1,46      ((ROW_NUMBER() over(47    ORDER BY o.Parameter1)) / @ElementsMax) + 148    FROM @XObjectKeys o49    SELECT50      @PortionMax = max(i.Portion),51      @Portion = 152    FROM @AllObjectKeysIn i53    WHILE @Portion <= @PortionMax54    BEGIN55      EXEC QBM_PB3D180A1745C229E35DBD6E_ @Portion = @Portion,56        @AllObjectKeysIn = @AllObjectKeysIn,57        @objecttype = @objecttype,58        @GenProcID = @GenProcID,59        @AdditionalObjectKeysAffected = @AdditionalObjectKeysAffected,60        @ConnectionVariables = @ConnectionVariables,61        @AuthenticationString = @AuthenticationString,62        @SingleTransaction = @SingleTransaction,63        @isToFreezeOnError = @isToFreezeOnError,64        @Retries = @Retries,65        @priority = @priority,66        @Jobchainname = @Jobchainname,67        @StartAt = @StartAt,68        @BasisObjectKey = @BasisObjectKey,69        @XUser = @XUser,70        @WhereClauseAdditional = @WhereClauseAdditional,71        @checkForExisting = @checkForExisting,72        @QueueName = @QueueName,73        @DeepDelete = @DeepDelete74      SELECT @Portion += 175    END76  END TRY77  BEGIN CATCH78    EXEC QBM_PSessionErrorAdd DEFAULT79    DECLARE @Rethrow varchar(1000) = dbo.QBM_FGISessionErrorRethrow()80    RAISERROR(@Rethrow,81    18,82    1)83      WITH NOWAIT84  END CATCH85  endLabel:86  RETURN87END
Open raw exported source
SQL ยท Raw16 lines
1    create   procedure QBM_PJobCreate_HODelete_L( @objecttype nvarchar(255)  , @XObjectKeys QBM_YParameterList readonly  , @GenProcID varchar(382) , @AdditionalObjectKeysAffected QBM_YParameterList readonly    , @ConnectionVariables nvarchar(max) = null , @AuthenticationString nvarchar(max) = null3 , @SingleTransaction bit = 1 , @isToFreezeOnError bit = 0 , @Retries int = 0 , @priority int = 5 , @Jobchainname nvarchar(256) = null , @StartAt datetime4 = null , @BasisObjectKey varchar(138) = '' , @XUser nvarchar(64) = null , @WhereClauseAdditional nvarchar(max) = '' , @checkForExisting bit = 0 , @QueueName5 nvarchar(256) = null , @DeepDelete bit = 0  ) as begin declare @Portion int declare @PortionMax int declare @ElementsMax int declare @ElementsLen int 6declare @AllObjectKeysIn QBM_YObjectKeyAndPortion SET XACT_ABORT OFF BEGIN TRY select top 1 @ElementsLen = len(Parameter1) from @XObjectKeys if isnull(@ElementsLen7, 0) = 0 begin goto endLabel end select @ElementsMax = 20000 / @ElementsLen if @ElementsMax > 450 begin select @ElementsMax = 450 end insert into @AllObjectKeysIn8 (ObjectKey, Portion) select o.Parameter1 , ((ROW_NUMBER() over( order by o.Parameter1) ) / @ElementsMax) + 1 from @XObjectKeys o select @PortionMax = 9max(i.Portion) , @Portion = 1 from @AllObjectKeysIn i while @Portion <= @PortionMax begin exec QBM_PB3D180A1745C229E35DBD6E_ @Portion = @Portion , @AllObjectKeysIn10 = @AllObjectKeysIn , @objecttype = @objecttype  , @GenProcID = @GenProcID , @AdditionalObjectKeysAffected = @AdditionalObjectKeysAffected   , @ConnectionVariables11 = @ConnectionVariables , @AuthenticationString = @AuthenticationString , @SingleTransaction = @SingleTransaction , @isToFreezeOnError = @isToFreezeOnError12 , @Retries = @Retries , @priority = @priority , @Jobchainname = @Jobchainname , @StartAt = @StartAt , @BasisObjectKey = @BasisObjectKey , @XUser = @XUser13 , @WhereClauseAdditional = @WhereClauseAdditional , @checkForExisting = @checkForExisting , @QueueName = @QueueName , @DeepDelete = @DeepDelete select14 @Portion += 1 end END TRY BEGIN CATCH exec QBM_PSessionErrorAdd default declare @Rethrow varchar(1000) = dbo.QBM_FGISessionErrorRethrow() RAISERROR (@Rethrow15, 18, 1) WITH NOWAIT END CATCH endLabel: return end 16