dbo.QBM_PJobCreate_SQLDel
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*
Typed Edges
- references source dbo.QBM_FCVElementToObjectKey1 source text reference
- references source dbo.QBM_FGIJobCreateName source text reference
- references source dbo.QBM_FGISessionErrorRethrow source text reference
- references source dbo.QBM_PJobCreate source text reference
- references source dbo.QBM_PSessionErrorAdd source text reference
Complete Source
1CREATE PROCEDURE QBM_PJobCreate_SQLDel(2 @TableToDelete varchar(30),3 @whereclause nvarchar(max),4 @GenProcID varchar(38),5 @ObjectKeysAffected QBM_YParameterList READONLY,6 @isToFreezeOnError BIT = 0,7 @Retries int = 0,8 @priority int = 5,9 @Jobchainname nvarchar(256) = NULL,10 @StartAt datetime = NULL,11 @BasisObjectKey varchar(138) = N '',12 @XUser nvarchar(64) = NULL,13 @WhereClauseAdditional nvarchar(max) = '',14 @checkForExisting BIT = 0,15 @QueueName nvarchar(256) = NULL16)17AS18BEGIN19 DECLARE @SQLCmd nvarchar(max)20 DECLARE @Parameters QBM_YParameterList21 DECLARE @JobChainNameAddOn nvarchar(256)22 SET XACT_ABORT OFF23 BEGIN TRY24 IF @Jobchainname IS NULL25 BEGIN26 SELECT @JobChainNameAddOn = ' delete in table ' + @TableToDelete27 SELECT @Jobchainname =dbo.QBM_FGIJobCreateName(@JobChainNameAddOn)28 END29 IF ISNULL(@BasisObjectKey,30 '') = ''31 BEGIN32 SELECT33 TOP 1 @BasisObjectKey = dbo.QBM_FCVElementToObjectKey1('DialogTable',34 'UID_DialogTable',35 t.UID_DialogTable)36 FROM DialogTable t37 WHERE38 t.TableName = @TableToDelete39 END40 IF NOT EXISTS(41 SELECT TOP 1 142 FROM DialogTable43 WHERE44 TableName = @TableToDelete AND IsDeactivatedByPreProcessor = 0)45 BEGIN46 GOTO ende47 END48 SELECT @sqlcmd = N 'delete ' + @TableToDelete + N ' where ' + CASE49 WHEN ISNULL(@WhereClauseAdditional,50 '') = '' THEN51 @whereclause52 ELSE '(' + @WhereClause + ') and (' + @WhereClauseAdditional + ')'53 END54 IF isnull(@sqlcmd,55 '') = ''56 BEGIN57 GOTO ende58 END59 INSERT INTO @Parameters(Parameter1,60 ContentFull)61 VALUES('SQLStmt',62 @sqlcmd)63 EXEC QBM_PJobCreate 'VI.JobService.JobComponents.SQLComponent',64 'Execute SQL',65 @Parameters,66 @GenProcID,67 @ObjectKeysAffected,68 @isToFreezeOnError,69 @Retries,70 @priority,71 @Jobchainname,72 @StartAt,73 @BasisObjectKey,74 @XUser,75 @QueueName,76 @checkForExisting = 077 END TRY78 BEGIN CATCH79 EXEC QBM_PSessionErrorAdd DEFAULT80 DECLARE @Rethrow varchar(1000) = dbo.QBM_FGISessionErrorRethrow()81 RAISERROR(@Rethrow,82 18,83 1)84 WITH NOWAIT85 END CATCH86 ende:87 RETURN88END
Open raw exported source
1 create procedure QBM_PJobCreate_SQLDel (@TableToDelete varchar (30) , @whereclause nvarchar(max) , @GenProcID varchar(38) , @ObjectKeysAffected2 QBM_YParameterList readonly , @isToFreezeOnError bit = 0 , @Retries int = 0 , @priority int = 5 , @Jobchainname nvarchar(256) = null , @StartAt datetime3 = null , @BasisObjectKey varchar(138) = N'' , @XUser nvarchar(64) = null , @WhereClauseAdditional nvarchar(max) = '' , @checkForExisting bit = 0 , @QueueName4 nvarchar(256) = null ) as begin declare @SQLCmd nvarchar(max) declare @Parameters QBM_YParameterList declare @JobChainNameAddOn nvarchar(256) SET XACT_ABORT5 OFF BEGIN TRY if @Jobchainname is null begin select @JobChainNameAddOn = ' delete in table ' + @TableToDelete select @Jobchainname =dbo.QBM_FGIJobCreateName6 ( @JobChainNameAddOn) end if ISNULL(@BasisObjectKey, '') = '' begin select top 1 @BasisObjectKey = dbo.QBM_FCVElementToObjectKey1('DialogTable', 'UID_DialogTable'7, t.UID_DialogTable) from DialogTable t where t.TableName = @TableToDelete end if not exists (select top 1 1 from DialogTable where TableName = @TableToDelete8 and IsDeactivatedByPreProcessor = 0 ) begin goto ende end select @sqlcmd = N'delete ' + @TableToDelete + N' where ' + case when ISNULL(@WhereClauseAdditional9, '') = '' then @whereclause else '(' + @WhereClause + ') and (' + @WhereClauseAdditional + ')' end if isnull(@sqlcmd, '') = '' begin goto ende end insert10 into @Parameters (Parameter1, ContentFull) values ('SQLStmt', @sqlcmd) exec QBM_PJobCreate 'VI.JobService.JobComponents.SQLComponent' , 'Execute SQL' 11, @Parameters , @GenProcID , @ObjectKeysAffected , @isToFreezeOnError , @Retries , @priority , @Jobchainname , @StartAt , @BasisObjectKey , @XUser , @QueueName12 , @checkForExisting = 0 END TRY BEGIN CATCH exec QBM_PSessionErrorAdd default declare @Rethrow varchar(1000) = dbo.QBM_FGISessionErrorRethrow() RAISERROR13 (@Rethrow, 18, 1) WITH NOWAIT END CATCH ende: return end 14