dbo.QBM_PSQLCheckExecutable

SQL_STORED_PROCEDURE

Created 2025-06-27T17:57:30.103 · modified 2026-04-14T23:20:26.950 · source: live DB sys.objects/sys.sql_expression_dependencies.

Open formatted source/search result

Parameters

NameTypeOutput
@QueriesToCheckQBM_YParameterListno
@RaiseErrorbitno

Referenced objects

SchemaObjectColumn/minorClass
QBM_PSessionErrorAddOBJECT_OR_COLUMN
QBM_YCursorBufferTYPE
QBM_YParameterListTYPE
dboQBM_FGISessionErrorRethrowOBJECT_OR_COLUMN

Source excerpt

First extracted SQL definition lines from the exported source. Use the full source page for complete context.

Open full formatted source

1    create   procedure QBM_PSQLCheckExecutable (@QueriesToCheck QBM_YParameterList readonly    , @RaiseError bit = 0   ) as begin declare @sqlcmd
2 nvarchar(max) declare @Content nvarchar(max) declare @ElementKey varchar(138) declare @DebugSwitch int = 0 declare @PatNumVarStart nvarchar(1000) = '%[^'',a-z,0-9][%]%[%][^'']%'
3 declare @p1 int declare @p2 int declare @ErrorResult QBM_YParameterList declare @Message nvarchar(4000) declare @errorsDetected int = 0 declare @ElementBuffer
4 QBM_YCursorBuffer declare @ElementCount int declare @ElementIndex int declare @Rethrow varchar(1000) = dbo.QBM_FGISessionErrorRethrow() SET XACT_ABORT
5 OFF BEGIN TRY set nocount on   insert into @ElementBuffer (ObjectKey1, ContentFull) select a.Parameter1, N' ' + a.ContentFull + N' ' from @QueriesToCheck
6 a select @ElementCount = @@ROWCOUNT select @ElementIndex = 1 while @ElementIndex <= @ElementCount begin select top 1 @elementKey = bu.ObjectKey1 , @Content
7 = bu.ContentFull from @ElementBuffer bu where bu.ElementIndex = @ElementIndex if @DebugSwitch > 2 begin print @elementKey + ' ' + isnull(@Content, '<null>'
8) end while @Content like '%$PC(%)$%' begin m1: select @p1 = 0 select @p2 = 0 select @p1 = PATINDEX('%$PC(%', @Content) if @DebugSwitch > 0 begin print
9 @p1 end select @p2 = PATINDEX('%)$%', SUBSTRING(@Content, @p1, 65000)) if @DebugSwitch > 0 begin print @p2 end if @p1 > 0 and @p2 > 0 begin select @Content
10 = LEFT(@Content, @p1 -1 ) + '''0'''   + SUBSTRING(@Content, @p1 + @p2 + 1 , 65000) if @DebugSwitch > 0 begin print @Content end end else  begin goto ItsReplaced1
11 end end  ItsReplaced1:    if @Content like @PatNumVarStart begin if @DebugSwitch > 0 begin print '### unterdrückt für Content: ' + @content end select
12 @Content = '' end  if trim(@Content) = '0' or trim(@Content) = ''  begin if @DebugSwitch > 0 begin print '--- nur null -- ' + @elementKey + '#' + @content+
13 '#' end select @sqlcmd = '' end else begin if @DebugSwitch > 0 begin print '--- war mehr -- ' + @elementKey + '#' + @content+ '#' end select @sqlcmd =
14 '
15					-- #33934
16					declare @ObjectKeys QBM_YParameterList
17					declare @erg int
18					select top 1 @erg = 1 from
19					 ( ' + @Content + '
20					 ) as x 
21					  where 1 = 0
22					 '
23 end if @DebugSwitch = 2 begin print @sqlcmd end begin TRY if @sqlcmd > ' ' begin exec sp_executesql @sqlcmd end end try begin catch select @Message = 
24concat('SyntaxError in Element ' , @ElementKey ) exec QBM_PSessionErrorAdd default, @Message if @RaiseError = 1 begin set XACT_ABORT ON  RAISERROR (@Rethrow
25, 18, 1) WITH NOWAIT end else begin insert into @ErrorResult(Parameter1, ContentShort, ContentFull) select @elementKey, LEFT(@sqlcmd, 400), @Message select
26 @errorsDetected += 1 end end catch select @ElementIndex += 1 end  END TRY BEGIN CATCH if @DebugSwitch > 0 begin print @sqlcmd end select @Message = (concat
27('SyntaxError in Element ' , isnull(@ElementKey, '<none>') ) ) exec QBM_PSessionErrorAdd default, @Message RAISERROR (@Rethrow, 18, 1) WITH NOWAIT END 
28CATCH endLabel:  if @errorsDetected > 0 begin select Parameter1 as ElementKey, ContentShort SQLCode, ContentFull as Errormessage from @ErrorResult end 
29return end 
30

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:26.950

has TRY/CATCH error handling

Summary: calls QBM_PSessionErrorAdd; writes INSERT into

Declared parameters

ParameterTypeDirection
@QueriesToCheckqbm_yparameterlistinput
@RaiseErrorbitinput

DML targets

INSERT into

Called routines

Read/join references

None extracted.

Config/session

Config: None extracted.

Session: None extracted.

DBQueue/tasks

None extracted.

Temp tables / referenced variables

Temp: None extracted.

Variables: @QueriesToCheck @RaiseError @sqlcmd @Content @ElementKey @DebugSwitch @PatNumVarStart @p1 @p2 @ErrorResult @Message @errorsDetected @ElementBuffer @ElementCount @ElementIndex @Rethrow @ROWCOUNT @elementKey @content @ObjectKeys @erg

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 objectRelationEvidence
dbo.ATT_TIAttestationPolicySQL expression dependencyOBJECT_OR_COLUMN
dbo.ATT_TUAttestationPolicySQL expression dependencyOBJECT_OR_COLUMN
dbo.CPL_TIComplianceRuleSQL expression dependencyOBJECT_OR_COLUMN
dbo.CPL_TIComplianceSubRuleSQL expression dependencyOBJECT_OR_COLUMN
dbo.CPL_TUComplianceRuleSQL expression dependencyOBJECT_OR_COLUMN
dbo.CPL_TUComplianceSubRuleSQL expression dependencyOBJECT_OR_COLUMN
dbo.DPR_TIDPRNameSpaceHasDialogTabSQL expression dependencyOBJECT_OR_COLUMN
dbo.DPR_TUDPRNameSpaceHasDialogTabSQL expression dependencyOBJECT_OR_COLUMN
dbo.POL_TIQERPolicySQL expression dependencyOBJECT_OR_COLUMN
dbo.POL_TUQERPolicySQL expression dependencyOBJECT_OR_COLUMN
dbo.QBM_TIDialogDashBoardDefSQL expression dependencyOBJECT_OR_COLUMN
dbo.QBM_TIDialogObjectSQL expression dependencyOBJECT_OR_COLUMN
dbo.QBM_TIDialogParameterSQL expression dependencyOBJECT_OR_COLUMN
dbo.QBM_TIDialogTableSQL expression dependencyOBJECT_OR_COLUMN
dbo.QBM_TIJobAutoStartSQL expression dependencyOBJECT_OR_COLUMN
dbo.QBM_TIQBMCEFDefinitionSQL expression dependencyOBJECT_OR_COLUMN
dbo.QBM_TIQBMViewAddOnSQL expression dependencyOBJECT_OR_COLUMN
dbo.QBM_TUDialogDashBoardDefSQL expression dependencyOBJECT_OR_COLUMN
dbo.QBM_TUDialogObjectSQL expression dependencyOBJECT_OR_COLUMN
dbo.QBM_TUDialogParameterSQL expression dependencyOBJECT_OR_COLUMN
dbo.QBM_TUDialogTableSQL expression dependencyOBJECT_OR_COLUMN
dbo.QBM_TUJobAutoStartSQL expression dependencyOBJECT_OR_COLUMN
dbo.QBM_TUQBMCEFDefinitionSQL expression dependencyOBJECT_OR_COLUMN
dbo.QBM_TUQBMViewAddOnSQL expression dependencyOBJECT_OR_COLUMN
dbo.QER_TIDynamicGroupSQL expression dependencyOBJECT_OR_COLUMN
dbo.QER_TIPWODecisionRuleRulerDeteSQL expression dependencyOBJECT_OR_COLUMN
dbo.QER_TIQEREntitlementSourceSQL expression dependencyOBJECT_OR_COLUMN
dbo.QER_TIQERRiskIndexSQL expression dependencyOBJECT_OR_COLUMN
dbo.QER_TUDynamicGroupSQL expression dependencyOBJECT_OR_COLUMN
dbo.QER_TUPWODecisionRuleRulerDeteSQL expression dependencyOBJECT_OR_COLUMN
dbo.QER_TUQEREntitlementSourceSQL expression dependencyOBJECT_OR_COLUMN
dbo.QER_TUQERRiskIndexSQL expression dependencyOBJECT_OR_COLUMN
dbo.ATT_TIAttestationPolicysource text referenceuses session context values, has TRY/CATCH error handling
dbo.ATT_TUAttestationPolicysource text referenceinserts DBQueue tasks, uses session context values, has TRY/CATCH error handling
dbo.CPL_TIComplianceRulesource text referenceinserts DBQueue tasks, uses session context values, has TRY/CATCH error handling
dbo.CPL_TIComplianceSubRulesource text referenceinserts DBQueue tasks, uses session context values, has TRY/CATCH error handling
dbo.CPL_TUComplianceRulesource text referenceinserts DBQueue tasks, uses session context values, has TRY/CATCH error handling
dbo.CPL_TUComplianceSubRulesource text referenceinserts DBQueue tasks, uses session context values, has TRY/CATCH error handling
dbo.DPR_TIDPRNameSpaceHasDialogTabsource text referenceinserts DBQueue tasks, uses session context values, has TRY/CATCH error handling
dbo.DPR_TUDPRNameSpaceHasDialogTabsource text referenceinserts DBQueue tasks, uses session context values, has TRY/CATCH error handling
dbo.POL_TIQERPolicysource text referenceinserts DBQueue tasks, uses session context values, has TRY/CATCH error handling
dbo.POL_TUQERPolicysource text referencecreates object-layer jobs via QBM_PJobCreate*, inserts DBQueue tasks, uses session context values, has TRY/CATCH error handling
dbo.QBM_TIDialogDashBoardDefsource text referenceinserts DBQueue tasks, uses session context values, has TRY/CATCH error handling
dbo.QBM_TIDialogObjectsource text referenceinserts DBQueue tasks, uses session context values, has TRY/CATCH error handling
dbo.QBM_TIDialogParametersource text referenceuses session context values, has TRY/CATCH error handling
dbo.QBM_TIDialogTablesource text referenceinserts DBQueue tasks, uses session context values, has TRY/CATCH error handling
dbo.QBM_TIJobAutoStartsource text referenceuses session context values, has TRY/CATCH error handling
dbo.QBM_TIQBMCEFDefinitionsource text referenceinserts DBQueue tasks, uses session context values, has TRY/CATCH error handling
dbo.QBM_TIQBMViewAddOnsource text referencehas TRY/CATCH error handling
dbo.QBM_TUDialogDashBoardDefsource text referenceinserts DBQueue tasks, uses session context values, has TRY/CATCH error handling
dbo.QBM_TUDialogObjectsource text referenceinserts DBQueue tasks, uses session context values, has TRY/CATCH error handling
dbo.QBM_TUDialogParametersource text referenceuses session context values, has TRY/CATCH error handling
dbo.QBM_TUDialogTablesource text referenceinserts DBQueue tasks, uses session context values, has TRY/CATCH error handling
dbo.QBM_TUJobAutoStartsource text referenceuses session context values, has TRY/CATCH error handling
dbo.QBM_TUQBMCEFDefinitionsource text referenceinserts DBQueue tasks, uses session context values, has TRY/CATCH error handling
dbo.QBM_TUQBMViewAddOnsource text referencehas TRY/CATCH error handling
dbo.QER_TIDynamicGroupsource text referenceinserts DBQueue tasks, uses session context values, has TRY/CATCH error handling
dbo.QER_TIPWODecisionRuleRulerDetesource text referenceinserts DBQueue tasks, uses session context values, has TRY/CATCH error handling
dbo.QER_TIQEREntitlementSourcesource text referenceinserts DBQueue tasks, uses session context values, has TRY/CATCH error handling
dbo.QER_TIQERRiskIndexsource text referenceinserts DBQueue tasks, uses session context values, has TRY/CATCH error handling
dbo.QER_TUDynamicGroupsource text referenceinserts DBQueue tasks, uses session context values, has TRY/CATCH error handling
dbo.QER_TUPWODecisionRuleRulerDetesource text referenceinserts DBQueue tasks, uses session context values, has TRY/CATCH error handling
dbo.QER_TUQEREntitlementSourcesource text referenceinserts DBQueue tasks, uses session context values, has TRY/CATCH error handling
dbo.QER_TUQERRiskIndexsource text referenceinserts DBQueue tasks, uses session context values, has TRY/CATCH error handling