dbo.QBM_PJobCreate_HOCallMethod_L
Stored ProcedureSQL_STORED_PROCEDURESandbox DB
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*
- References QBM_PJobCreate_HOCallMethod*
Typed Edges
- references source dbo.QBM_FGISessionErrorRethrow source text reference
- references source dbo.QBM_P4B5EF97051B7F5A66DC5668_ source text reference
- references source dbo.QBM_PJobCreate source text reference
- references source dbo.QBM_PJobCreate_HOCallMethod source text reference
- references source dbo.QBM_PSessionErrorAdd source text reference
Complete Source
1CREATE PROCEDURE QBM_PJobCreate_HOCallMethod_L(2 @objecttype nvarchar(255),3 @XObjectKeys QBM_YParameterList READONLY,4 @save BIT,5 @MethodName nvarchar(256),6 @GenProcID varchar(38),7 @AdditionalObjectKeysAffected QBM_YParameterList READONLY,8 @ConnectionVariables nvarchar(max) = NULL,9 @AuthenticationString nvarchar(max) = NULL,10 @SingleTransaction BIT = 1,11 @param1 nvarchar(max) = NULL,12 @param2 nvarchar(max) = NULL,13 @param3 nvarchar(max) = NULL,14 @param4 nvarchar(max) = NULL,15 @param5 nvarchar(max) = NULL,16 @param6 nvarchar(max) = NULL,17 @param7 nvarchar(max) = NULL,18 @param8 nvarchar(max) = NULL,19 @param9 nvarchar(max) = NULL,20 @param10 nvarchar(max) = NULL,21 @isToFreezeOnError BIT = 0,22 @Retries int = 0,23 @priority int = 5,24 @Jobchainname nvarchar(256) = NULL,25 @StartAt datetime = NULL,26 @BasisObjectKey varchar(138) = '',27 @XUser nvarchar(64) = NULL,28 @WhereClauseAdditional nvarchar(max) = '',29 @checkForExisting BIT = 0,30 @QueueName nvarchar(256) = NULL31)32AS33BEGIN34 DECLARE @Portion int35 DECLARE @PortionMax int36 DECLARE @ElementsMax int37 DECLARE @ElementsLen int38 DECLARE @AllObjectKeysIn QBM_YObjectKeyAndPortion39 SET XACT_ABORT OFF40 BEGIN TRY41 SELECT TOP 1 @ElementsLen = len(Parameter1)42 FROM @XObjectKeys43 IF isnull(@ElementsLen,44 0) = 045 BEGIN46 GOTO endLabel47 END48 SELECT @ElementsMax = 20000 / @ElementsLen49 IF @ElementsMax > 45050 BEGIN51 SELECT @ElementsMax = 45052 END53 INSERT INTO @AllObjectKeysIn(ObjectKey,54 Portion)55 SELECT56 o.Parameter1,57 ((ROW_NUMBER() over(58 ORDER BY o.Parameter1)) / @ElementsMax) + 159 FROM @XObjectKeys o60 SELECT61 @PortionMax = max(i.Portion),62 @Portion = 163 FROM @AllObjectKeysIn i64 WHILE @Portion <= @PortionMax65 BEGIN66 EXEC QBM_P4B5EF97051B7F5A66DC5668_ @Portion = @Portion,67 @AllObjectKeysIn = @AllObjectKeysIn,68 @objecttype = @objecttype,69 @save = @save,70 @MethodName = @MethodName,71 @GenProcID = @GenProcID,72 @AdditionalObjectKeysAffected = @AdditionalObjectKeysAffected,73 @ConnectionVariables = @ConnectionVariables,74 @AuthenticationString = @AuthenticationString,75 @SingleTransaction = @SingleTransaction,76 @param1 = @param1,77 @param2 = @param2,78 @param3 = @param3,79 @param4 = @param4,80 @param5 = @param5,81 @param6 = @param6,82 @param7 = @param7,83 @param8 = @param8,84 @param9 = @param9,85 @param10 = @param10,86 @isToFreezeOnError = @isToFreezeOnError,87 @Retries = @Retries,88 @priority = @priority,89 @Jobchainname = @Jobchainname,90 @StartAt = @StartAt,91 @BasisObjectKey = @BasisObjectKey,92 @XUser = @XUser,93 @WhereClauseAdditional = @WhereClauseAdditional,94 @checkForExisting = @checkForExisting,95 @QueueName = @QueueName96 SELECT @Portion += 197 END98 END TRY99 BEGIN CATCH100 EXEC QBM_PSessionErrorAdd DEFAULT101 DECLARE @Rethrow varchar(1000) = dbo.QBM_FGISessionErrorRethrow()102 RAISERROR(@Rethrow,103 18,104 1)105 WITH NOWAIT106 END CATCH107 endLabel:108 RETURN109END
Open raw exported source
1 create procedure QBM_PJobCreate_HOCallMethod_L( @objecttype nvarchar(255) , @XObjectKeys QBM_YParameterList readonly , @save bit , @MethodName2 nvarchar(256) , @GenProcID varchar(38) , @AdditionalObjectKeysAffected QBM_YParameterList readonly , @ConnectionVariables nvarchar(max) = null , @AuthenticationString3 nvarchar(max) = null , @SingleTransaction bit = 1 , @param1 nvarchar(max) = null , @param2 nvarchar(max) = null , @param3 nvarchar(max) = null , @param44 nvarchar(max) = null , @param5 nvarchar(max) = null , @param6 nvarchar(max) = null , @param7 nvarchar(max) = null , @param8 nvarchar(max) = null , @param95 nvarchar(max) = null , @param10 nvarchar(max) = null , @isToFreezeOnError bit = 0 , @Retries int = 0 , @priority int = 5 , @Jobchainname nvarchar(256)6 = null , @StartAt datetime = null , @BasisObjectKey varchar(138) = '' , @XUser nvarchar(64) = null , @WhereClauseAdditional nvarchar(max) = '' , @checkForExisting7 bit = 0 , @QueueName nvarchar(256) = null ) as begin declare @Portion int declare @PortionMax int declare @ElementsMax int declare @ElementsLen int declare8 @AllObjectKeysIn QBM_YObjectKeyAndPortion SET XACT_ABORT OFF BEGIN TRY select top 1 @ElementsLen = len(Parameter1) from @XObjectKeys if isnull(@ElementsLen9, 0) = 0 begin goto endLabel end select @ElementsMax = 20000 / @ElementsLen if @ElementsMax > 450 begin select @ElementsMax = 450 end insert into @AllObjectKeysIn10 (ObjectKey, Portion) select o.Parameter1 , ((ROW_NUMBER() over( order by o.Parameter1) ) / @ElementsMax) + 1 from @XObjectKeys o select @PortionMax = 11max(i.Portion) , @Portion = 1 from @AllObjectKeysIn i while @Portion <= @PortionMax begin exec QBM_P4B5EF97051B7F5A66DC5668_ @Portion = @Portion , @AllObjectKeysIn12 = @AllObjectKeysIn , @objecttype = @objecttype , @save = @save , @MethodName = @MethodName , @GenProcID = @GenProcID , @AdditionalObjectKeysAffected13 = @AdditionalObjectKeysAffected , @ConnectionVariables = @ConnectionVariables , @AuthenticationString = @AuthenticationString , @SingleTransaction =14 @SingleTransaction , @param1 = @param1 , @param2 = @param2 , @param3 = @param3 , @param4 = @param4 , @param5 = @param5 , @param6 = @param6 , @param7 =15 @param7 , @param8 = @param8 , @param9 = @param9 , @param10 = @param10 , @isToFreezeOnError = @isToFreezeOnError , @Retries = @Retries , @priority = @priority16 , @Jobchainname = @Jobchainname , @StartAt = @StartAt , @BasisObjectKey = @BasisObjectKey , @XUser = @XUser , @WhereClauseAdditional = @WhereClauseAdditional17 , @checkForExisting = @checkForExisting , @QueueName = @QueueName select @Portion += 1 end END TRY BEGIN CATCH exec QBM_PSessionErrorAdd default declare18 @Rethrow varchar(1000) = dbo.QBM_FGISessionErrorRethrow() RAISERROR (@Rethrow, 18, 1) WITH NOWAIT END CATCH endLabel: return end 19