dbo.QBM_PTableReload
SQL_STORED_PROCEDURE
Created 2025-06-27T17:57:24.360 · modified 2026-04-14T23:20:27.270 · source: live DB sys.objects/sys.sql_expression_dependencies.
Parameters
| Name | Type | Output |
|---|---|---|
@TableName | varchar | no |
@WithReplace | bit | no |
@Genprocid | varchar | no |
@DiskStoreMove | bit | no |
Referenced objects
| Schema | Object | Column/minor | Class |
|---|---|---|---|
| DialogDatabase | OBJECT_OR_COLUMN | ||
| QBM_PConstraintFKDrop | OBJECT_OR_COLUMN | ||
| QBM_PDBQueueInsert_Single | OBJECT_OR_COLUMN | ||
| QBM_PExecuteSQLWithRetry_LLP | OBJECT_OR_COLUMN | ||
| QBM_PFunctionDrop | OBJECT_OR_COLUMN | ||
| QBM_PJournal | OBJECT_OR_COLUMN | ||
| QBM_PSessionErrorAdd | OBJECT_OR_COLUMN | ||
| QBM_PTriggerDrop | OBJECT_OR_COLUMN | ||
| QBM_PViewDrop | OBJECT_OR_COLUMN | ||
| QBM_VHeavyLoadTables | OBJECT_OR_COLUMN | ||
| QBM_VStartupTables | OBJECT_OR_COLUMN | ||
| QBM_VTablesReloadAble | OBJECT_OR_COLUMN | ||
| QBM_YCursorBuffer | TYPE | ||
| dbo | QBM_FCVStringToIndent | OBJECT_OR_COLUMN | |
| dbo | QBM_FGIDiskStoreExisting | OBJECT_OR_COLUMN | |
| dbo | QBM_FGIDiskStoreTarget | OBJECT_OR_COLUMN | |
| dbo | QBM_FSQColumnList | OBJECT_OR_COLUMN | |
| dbo | QBM_FSQIndexDef_i | OBJECT_OR_COLUMN | |
| dbo | QBM_FSQTableDef | OBJECT_OR_COLUMN | |
| dbo | QBM_FTSchemaDependencies | OBJECT_OR_COLUMN |
Source excerpt
First extracted SQL definition lines from the exported source. Use the full source page for complete context.
1 create procedure QBM_PTableReload (@TableName varchar(38) , @WithReplace bit , @Genprocid varchar(38) = null , @DiskStoreMove bit = 0 2 ) as begin declare @TableName_old varchar(30) = left('T'+ replace(newid(), '-', ''), 30) declare @SQLCmd nvarchar(max) declare @CreateCmd nvarchar(max 3) declare @InsertCmd nvarchar(max) declare @IndexesAndTriggers QBM_YCursorBuffer declare @CodeType char(1) declare @CodeName varchar(30) declare @i 4 int declare @CountIndexesAndTriggers int declare @DebugSwitch int = 0 declare @DebugLevel char(1) = 'W' declare @Debugmessage nvarchar(1000) declare @Productionlevel 5 int SET XACT_ABORT OFF BEGIN TRY if @Genprocid is null begin select @Genprocid = NEWID() end if exists (select top 1 1 from sys.views v where v.name = 6 'QBM_VTablesReloadAble' ) begin if not exists (select top 1 1 from QBM_VTablesReloadAble v where v.TableName = @TableName ) begin goto endLabel end end 7 if @DiskStoreMove = 0 begin if @TableName in ( select v.TableName from QBM_VHeavyLoadTables v where v.IsNoReload = 1 ) begin goto endLabel end end select 8 top 1 @Productionlevel = db.ProductionLevel from DialogDatabase db with (readpast) where db.IsMainDatabase = 1 if @Productionlevel > 1 and @WithReplace 9 = 1 begin raiserror('#LDS#Replacement is not permitted in production environment|', 18, 1) with nowait goto EndLabel end if @DiskStoreMove = 0 and dbo.QBM_FGIDiskStoreExisting 10(@TableName) <> dbo.QBM_FGIDiskStoreTarget(@TableName) begin goto endlabel end if @DiskStoreMove = 1 and @TableName in (select TableName from QBM_VStartupTables 11 union select 'QBMDiskStoreLogical' union select 'QBMDiskStorePhysical' ) begin goto endLabel end begin transaction insert into @IndexesAndTriggers(ContentFull 12,Ident1 , Ident2 ) select dbo.QBM_FSQIndexDef_i (t.name, i.name, 1), 'I', left(i.name, 30) from sys.tables t join sys.indexes i on t.object_id = i.object_id 13 where t.name = @TableName and i.is_primary_key = 0 and i.is_hypothetical = 0 and i.type not in (3,4,5,6) select @CountIndexesAndTriggers = @@ROWCOUNT 14 insert into @IndexesAndTriggers(ContentFull, Ident1 , Ident2 ) select m.definition, 'T', left(tr.name, 30) from sys.tables t join sys.triggers tr on 15 t.object_id = tr.parent_id join sys.sql_modules m on m.object_id = tr.object_id where t.name = @TableName and tr.name not like 'GEN[_]%' and tr.name 16 != 'QBM_TUIndicator474488' select @CountIndexesAndTriggers += @@ROWCOUNT insert into @IndexesAndTriggers(ContentFull, Ident1 , Ident2 ) select f.SourceCode 17, f.ObjectType, f.ObjectName from dbo.QBM_FTSchemaDependencies(@TableName, 1) f where f.ObjectType in ('F', 'V') select @CountIndexesAndTriggers += @@ROWCOUNT 18 select @i = 1 while @i <= @CountIndexesAndTriggers begin select top 1 @CodeType = i.Ident1 , @CodeName = i.Ident2 from @IndexesAndTriggers i where i.ElementIndex 19 = @i if @CodeType = 'F' begin if @DebugSwitch > 0 begin print 'dropping funct ' + @CodeName end exec QBM_PFunctionDrop @CodeName end if @CodeType = 'V' 20 begin if @DebugSwitch > 0 begin print 'dropping view ' + @CodeName end exec QBM_PViewDrop @CodeName end select @i += 1 end exec QBM_PTriggerDrop '%' 21, @TableName , @CustomTriggerAlso = 1 exec QBM_PConstraintFKDrop @TableName , '%', '%' exec QBM_PConstraintFKDrop '%', '%', @TableName select @CreateCmd 22 = dbo.QBM_FSQTableDef(@TableName ) select @InsertCmd = 'Insert into ' + @TableName + ' 23 ( 24 ' + dbo.QBM_FCVStringToIndent( dbo.QBM_FSQColumnList(@TableName 25 , 0, 1), 4) + ' 26 ) 27 select 28 ' + dbo.QBM_FCVStringToIndent( dbo.QBM_FSQColumnList(@TableName , @WithReplace, 1), 4) + ' 29 from ' + @TableName_old 30 if @DebugSwitch > 0 begin print 'TableName ' + isnull(@TableName, '#') print '@TableName_old ' + isnull(@TableName_old, '#') end exec sp_rename @TableName 31 , @TableName_old, 'object' if @DebugSwitch > 0 begin print @CreateCmd end exec QBM_PExecuteSQLWithRetry_LLP @SQLStatement = @CreateCmd , @LockTimeout_ms 32 = default , @MaxWaitTimeForLock_s = default , @ProcIDForJournal = @@PROCID , @HandleErrorSilent = 0 if @DebugSwitch > 0 begin print @Insertcmd end exec 33 QBM_PExecuteSQLWithRetry_LLP @SQLStatement = @insertcmd , @LockTimeout_ms = default , @MaxWaitTimeForLock_s = default , @ProcIDForJournal = @@PROCID , 34 @HandleErrorSilent = 0 if @DebugSwitch > 0 begin select i.ElementIndex, i.Ident2 from @IndexesAndTriggers i end select @i = 1 while @i <= @CountIndexesAndTriggers 35 begin select top 1 @SQLCmd = i.ContentFull , @CodeType = i.Ident1 , @CodeName = i.Ident2 from @IndexesAndTriggers i where i.ElementIndex = @i if @DebugSwitch 36 > 0 begin print @CodeType + ' ' + @Codename end if @CodeType = 'T' begin exec sp_executesql @sqlcmd end if @CodeType = 'I' begin exec sp_executesql 37@sqlcmd end if @CodeType = 'F' begin exec sp_executesql @sqlcmd end if @CodeType = 'V' begin exec sp_executesql @sqlcmd end select @i += 1 end select 38 @SQLCmd = 'drop table ' + @TableName_old if @DebugSwitch > 0 begin print @SQLCmd end exec QBM_PExecuteSQLWithRetry_LLP @SQLStatement = @sqlcmd , @LockTimeout_ms 39 = default , @MaxWaitTimeForLock_s = default , @ProcIDForJournal = @@PROCID , @HandleErrorSilent = 0 select @Debugmessage = 'reload table ' + @TableName 40 exec QBM_PJournal @debugmessage, @@procid, 'D', @DebugLevel commit transaction exec QBM_PDBQueueInsert_Single 'QBM-K-CommonReCalculate' , 'QBM-K-MakeConstraint' 41, '', @Genprocid exec QBM_PDBQueueInsert_Single 'QBM-K-CommonReCalculate' , 'QBM-K-CommonMakeRITrigger', '', @Genprocid exec QBM_PDBQueueInsert_Single 42'QBM-K-CommonMakeWatchtrigger', @TableName , '', @Genprocid exec QBM_PDBQueueInsert_Single 'QBM-K-SetRowLockOnly', '', '', @Genprocid exec QBM_PDBQueueInsert_Single 43 'QBM-K-CommonReCalculate' , 'QBM-K-CommonRebuildView', '', @Genprocid END TRY BEGIN CATCH exec QBM_PSessionErrorAdd default rollback transaction RAISERROR 44 ('', 18, 1) WITH NOWAIT END CATCH endLabel: return end 45
Module relation graph
Loading module relation graph…
Source-derived context
Generated from exported SQL module definitions plus read-only sandbox sys.objects/sys.parameters/sys.sql_expression_dependencies metadata. This is factual source evidence, not a semantic guess.
provenance: SQL definition export provenance: sandbox DB metadata modified: 2026-04-14T23:20:27.270
inserts DBQueue tasks has TRY/CATCH error handling
Summary: calls QBM_PFunctionDrop, QBM_PViewDrop, QBM_PTriggerDrop, QBM_PConstraintFKDrop, sp_rename…; writes INSERT into; reads/joins sys, QBM_VTablesReloadAble, QBM_VHeavyLoadTables, DialogDatabase, QBM_VStartupTables…
Declared parameters
| Parameter | Type | Direction |
|---|---|---|
@TableName | varchar(38) | input |
@WithReplace | bit | input |
@Genprocid | varchar(38) | input |
@DiskStoreMove | bit | input |
DML targets
INSERT intoCalled routines
Read/join references
SQL dependency metadata
- DialogDatabase
- QBM_PConstraintFKDrop
- QBM_PDBQueueInsert_Single
- QBM_PExecuteSQLWithRetry_LLP
- QBM_PFunctionDrop
- QBM_PJournal
- QBM_PSessionErrorAdd
- QBM_PTriggerDrop
- QBM_PViewDrop
- QBM_VHeavyLoadTables
- QBM_VStartupTables
- QBM_VTablesReloadAble
- QBM_YCursorBuffer
- dbo.QBM_FCVStringToIndent
- dbo.QBM_FGIDiskStoreExisting
- dbo.QBM_FGIDiskStoreTarget
- dbo.QBM_FSQColumnList
- dbo.QBM_FSQIndexDef_i
- dbo.QBM_FSQTableDef
- dbo.QBM_FTSchemaDependencies
Config/session
Config: None extracted.
Session: None extracted.
DBQueue/tasks
QBM-K-CommonReCalculate QBM-K-MakeConstraint QBM-K-CommonMakeRITrigger QBM-K-CommonMakeWatchtrigger QBM-K-SetRowLockOnly QBM-K-CommonRebuildViewTemp tables / referenced variables
Temp: #LDS #Replacement
Variables: @TableName @WithReplace @Genprocid @DiskStoreMove @TableName_old @SQLCmd @CreateCmd @InsertCmd @IndexesAndTriggers @CodeType @CodeName @i @CountIndexesAndTriggers @DebugSwitch @DebugLevel @Debugmessage @Productionlevel @ROWCOUNT @CustomTriggerAlso @SQLStatement @LockTimeout_ms @MaxWaitTimeForLock_s @ProcIDForJournal @PROCID @HandleErrorSilent @Insertcmd @insertcmd @Codename @sqlcmd @debugmessage @procid
Referenced by / reverse dependencies
Generated from live DB metadata, FK rows, and exported SQL dependency/source extraction. This is factual linkage evidence, not inferred behavior.
| Referencing object | Relation | Evidence |
|---|---|---|
| dbo.QBM_PTableMove | SQL expression dependency | OBJECT_OR_COLUMN |
| dbo.QBM_ZTableReload | SQL expression dependency | OBJECT_OR_COLUMN |
| dbo.QBM_ZTableReplace | SQL expression dependency | OBJECT_OR_COLUMN |
| dbo.QBM_PTableMove | source text reference | SQL_STORED_PROCEDURE |
| dbo.QBM_ZTableReload | source text reference | has TRY/CATCH error handling |
| dbo.QBM_ZTableReplace | source text reference | has TRY/CATCH error handling |