dbo.QBM_P195C5572460EC8DDA27B3A3_1
Stored ProcedureSQL_STORED_PROCEDURESandbox DB
Interpretation
- Database routine. Review parameters, called procedures, DBQueue inserts, and QBM_PJobCreate helper calls before assuming side effects.
Relations
- No extracted relations.
Typed Edges
- references source dbo.QBM_FCVStringToList source text reference
- references source dbo.QBM_FGISessionErrorRethrow source text reference
- references source dbo.QBM_PExecuteSQLMulti source text reference
- references source dbo.QBM_PSessionErrorAdd source text reference
Complete Source
1CREATE PROCEDURE QBM_P195C5572460EC8DDA27B3A3_12AS3BEGIN4 DECLARE @Statements QBM_YCursorBuffer5 SET XACT_ABORT OFF6 BEGIN TRY7 SET nocount8 ON9 IF EXISTS(10 SELECT TOP 1 111 FROM sys.tables t12 WITH(readpast)13 JOIN sys.columns c14 WITH(readpast)15 ON t.object_id = c.object_id16 WHERE17 t.name = 'DialogDatabase' AND c.name = 'InitialMigrationRunning')18 BEGIN19 GOTO endLabel20 END21 drop TABLE22 IF EXISTS #merkeObjectkey23 CREATE TABLE #merkeObjectkey(24 TableName varchar(30) collate database_default,25 XObjectKey varchar(138) collate database_default,26 index #merkeObjectkey1(TableName),27 index #merkeObjectkey2(XObjectKey)28 )29 INSERT INTO #merkeObjectkey(TableName,30 XObjectKey31 )32 SELECT33 t.TableName,34 de.ObjectKeyOwner35 FROM QBMNonLinearDepend de36 JOIN DialogTable t37 ON de.ObjectKeyOwner LIKE '<Key><T>' + t.TableName + '</T>%' CROSS apply dbo.QBM_FCVStringToList(de.NeededModules,38 char(7),39 1,40 041) mo42LEFT43OUTER44JOIN QBMModuleDef md45 ON mo.ParameterValue = md.ModuleName46WHERE47 md.UID_ModuleDef IS NULL48INSERT INTO @Statements(ContentFull49)50SELECT51 CONCAT('52if exists (select top 1 153 from ',54 x.TableName,55 ' td join #merkeObjectkey m on td.XObjectKey = m.XObjectKey56 )57 begin58 delete ',59 x.TableName,60 '61 --select td.*62 from ',63 x.TableName,64 ' td join #merkeObjectkey m on td.XObjectKey = m.XObjectKey65 end66'67 )68FROM(69SELECT70 DISTINCT t.TableName71FROM #merkeObjectkey t72)73AS74x75EXEC QBM_PExecuteSQLMulti @Statements drop TABLE76IF EXISTS #merkeObjectkey77END TRY78BEGIN CATCH79 EXEC QBM_PSessionErrorAdd DEFAULT80 DECLARE @Rethrow varchar(1000) = dbo.QBM_FGISessionErrorRethrow()81 RAISERROR(@Rethrow,82 18,83 1)84 WITH NOWAIT85END CATCH86endLabel:87RETURN88END
Open raw exported source
1 create procedure QBM_P195C5572460EC8DDA27B3A3_1 as begin declare @Statements QBM_YCursorBuffer SET XACT_ABORT OFF BEGIN TRY set nocount on 2 if exists (select top 1 1 from sys.tables t with (readpast) join sys.columns c with (readpast) on t.object_id = c.object_id where t.name = 'DialogDatabase'3 and c.name = 'InitialMigrationRunning' ) begin goto endLabel end drop table if exists #merkeObjectkey create table #merkeObjectkey (TableName varchar(304) collate database_default , XObjectKey varchar(138) collate database_default , index #merkeObjectkey1 (TableName) , index #merkeObjectkey2 (XObjectKey5) ) insert into #merkeObjectkey(TableName, XObjectKey) select t.TableName, de.ObjectKeyOwner from QBMNonLinearDepend de join DialogTable t on de.ObjectKeyOwner6 like '<Key><T>' + t.TableName + '</T>%' cross apply dbo.QBM_FCVStringToList(de.NeededModules, char(7), 1, 0) mo left outer join QBMModuleDef md on mo.ParameterValue7 = md.ModuleName where md.UID_ModuleDef is null insert into @Statements (ContentFull) select CONCAT('8if exists (select top 1 19 from ', x.TableName10 , ' td join #merkeObjectkey m on td.XObjectKey = m.XObjectKey11 )12 begin13 delete ', x.TableName , '14 --select td.*15 from ', x.TableName , ' td join #merkeObjectkey m on td.XObjectKey = m.XObjectKey16 end17'18 ) from ( select distinct t.TableName from #merkeObjectkey t ) as x exec QBM_PExecuteSQLMulti @Statements drop table if exists #merkeObjectkey END TRY 19BEGIN CATCH exec QBM_PSessionErrorAdd default declare @Rethrow varchar(1000) = dbo.QBM_FGISessionErrorRethrow() RAISERROR (@Rethrow, 18, 1) WITH NOWAIT20 END CATCH endLabel: return end 21