dbo.QER_ZPersonHasQERReuse
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.QER_FTPersonInheritFromOrg_L source text reference
- references source dbo.QBM_FGIBitPatternXOrigin source text reference
- references source dbo.QBM_FGIModuleExists source text reference
- references source dbo.QBM_PDBQueueCalculateDelta source text reference
- references source dbo.QBM_PMNTableInsert source text reference
- references source dbo.QBM_PMNTableOriginUpdate source text reference
- references source dbo.QBM_PSessionErrorAdd source text reference
- references source dbo.QER_FTQERReusePredecessor source text reference
Complete Source
1CREATE PROCEDURE QER_ZPersonHasQERReuse(2 @SlotNumber int3)4AS5BEGIN6 DECLARE @Sourcedata QBM_YDataForDelta,7 @CountDeltaQantity int,8 @CountDeltaOrigin int9 DECLARE @GenProcID varchar(38)10 DECLARE @Xdate datetime = getutcdate()11 DECLARE @XUser nvarchar(64) = object_name(@@procid)12 DECLARE @UID_BaseTreeAssignToUse varchar(38) = 'QER-AsgnBT-QERReuse'13 DECLARE @DBQueueCurrent QBM_YDBQueueCurrent14 DECLARE @QBM_BitPatternXOrigin_Inherit int = dbo.QBM_FGIBitPatternXOrigin('|Inherit|',15 0)16 DECLARE @QBM_BitPatternXOrigin_Inherit_inv int = dbo.QBM_FGIBitPatternXOrigin('|Inherit|',17 1)18 BEGIN TRY19 INSERT INTO @DBQueueCurrent(UID_DialogDBQueue,20 UID_Parameter,21 UID_SubParameter,22 GenProcID)23 SELECT24 UID_DialogDBQueue,25 UID_Parameter,26 UID_SubParameter,27 GenProcID28 FROM QBMDBQueueCurrent cu29 WITH(readpast)30 WHERE31 cu.SlotNumber = @SlotNumber32 IF @@rowcount = 033 BEGIN34 GOTO EndLabel35 END36 INSERT INTO @SourceData(IsUpcommingContent,37 XOriginAfter,38 Element,39 AssignedElement,40 XOriginBefore,41 XIsInEffectBefore,42 XIsInEffectAfter)43 SELECT44 0,45 0,46 phr.UID_Person,47 phr.UID_QERReuse,48 phr.XOrigin,49 phr.XIsInEffect,50 051 FROM PersonHasQERReuse phr52 JOIN @DBQueueCurrent x53 ON phr.UID_Person = x.uid_parameter54 IF EXISTS(55 SELECT TOP 1 156 FROM DialogTable t57 WHERE58 t.TableName = 'PersonHasQERReuse' AND t.IsDeactivatedByPreProcessor = 1)59 BEGIN60 GOTO berechnen61 END62 INSERT INTO @SourceData(IsUpcommingContent,63 XOriginBefore,64 XOriginAfter,65 Element,66 AssignedElement,67 XIsInEffectBefore,68 XIsInEffectAfter)69 SELECT70 1,71 0,72 CASE73 WHEN pd.UID_QERReuse = pd.UID_QERReusePredecessor THEN74 phr.XOrigin & @QBM_BitPatternXOrigin_Inherit_inv75 ELSE @QBM_BitPatternXOrigin_Inherit76 END,77 phr.UID_person,78 pd.UID_QERReusePredecessor AS UID_QERReuse,79 0,80 181 FROM PersonHasQERReuse phr82 JOIN @DBQueueCurrent x83 ON UID_person = x.uid_parameter84 JOIN person p85 ON phr.uid_person = p.uid_person86 JOIN QERReuse r87 ON phr.uid_QERReuse = r.uid_QERReuse CROSS apply dbo.QER_FTQERReusePredecessor(r.UID_QERReuse) pd88 WHERE89 phr.XOrigin & @QBM_BitPatternXOrigin_Inherit_inv > 090 INSERT INTO @SourceData(IsUpcommingContent,91 XOriginBefore,92 Element,93 AssignedElement,94 XOriginAfter,95 XIsInEffectBefore,96 XIsInEffectAfter)97 SELECT98 1,99 0,100 x.UID_person,101 pd.UID_QERReusePredecessor AS UID_QERReuse,102 @QBM_BitPatternXOrigin_Inherit AS XOrigin,103 0,104 (r.IsNoInheriteToSecurityIncident & p.IsSecurityIncident) ^1105 FROM(106 SELECT107 pha.UID_person,108 r.UID_QERReuse109 FROM @DBQueueCurrent x110 JOIN PersonHasESet pha111 ON pha.UID_person = x.uid_parameter AND pha.XOrigin > 0 AND pha.XIsInEffect = 1112 JOIN person px113 ON pha.uid_person = px.uid_person AND px.isNoInherite = 0114 JOIN ESetHasEntitlement aha115 ON pha.UID_ESet = aha.UID_ESet AND aha.XOrigin > 0 AND aha.XIsInEffect = 1 AND dbo.QBM_FGIModuleExists('RMS') = 1116 JOIN QERReuse r117 ON aha.Entitlement = r.XObjectKey118 UNION all119 SELECT120 pfo.UID_person,121 oha.UID_QERReuse122 FROM dbo.QER_FTPersonInheritFromOrg_L(@DBQueueCurrent, @UID_BaseTreeAssignToUse) pfo123 JOIN BaseTreeHasQERReuse oha124 ON oha.uid_org = pfo.uid_org AND oha.XOrigin > 0 AND oha.XIsInEffect = 1) AS x125 JOIN person p126 ON x.uid_person = p.uid_person127 JOIN QERReuse r128 ON x.uid_QERReuse = r.uid_QERReuse CROSS apply dbo.QER_FTQERReusePredecessor(r.UID_QERReuse) pd berechnen:129 EXEC QBM_PDBQueueCalculateDelta @SourceData,130 @DeltaQuantity = 0,131 @DeltaDelete = 0,132 @DeltaInsert = 1,133 @DeltaOrigin = 1,134 @CountDeltaQantity = @CountDeltaQantity OUTPUT,135 @CountDeltaOrigin = @CountDeltaOrigin OUTPUT,136 @UseIsInEffect = 1,137 @SlotNumber = @SlotNumber,138 @DBQueueCurrentExtern = @DBQueueCurrent139 IF @CountDeltaOrigin > 0140 BEGIN141 EXEC QBM_PMNTableOriginUpdate 'PersonHasQERReuse',142 'uid_Person',143 'uid_QERReuse'144 END145 IF @CountDeltaQantity > 0146 BEGIN147 EXEC QBM_PMNTableInsert 'PersonHasQERReuse',148 'uid_Person',149 'uid_QERReuse',150 @TargetIsView = 0,151 @FKTableNameElement = 'Person',152 @FKColumnNameElement = 'UID_Person'153 END154 END TRY155 BEGIN CATCH156 EXEC QBM_PSessionErrorAdd DEFAULT157 RAISERROR('',158 18,159 1)160 WITH NOWAIT161 END CATCH162 endLabel:163 RETURN164END
Open raw exported source
1 create procedure QER_ZPersonHasQERReuse (@SlotNumber int) AS begin declare @Sourcedata QBM_YDataForDelta , @CountDeltaQantity int , @CountDeltaOrigin2 int declare @GenProcID varchar(38) declare @Xdate datetime = getutcdate() declare @XUser nvarchar(64) = object_name(@@procid) declare @UID_BaseTreeAssignToUse3 varchar(38) = 'QER-AsgnBT-QERReuse' declare @DBQueueCurrent QBM_YDBQueueCurrent declare @QBM_BitPatternXOrigin_Inherit int = dbo.QBM_FGIBitPatternXOrigin4('|Inherit|', 0) declare @QBM_BitPatternXOrigin_Inherit_inv int = dbo.QBM_FGIBitPatternXOrigin('|Inherit|', 1) BEGIN TRY insert into @DBQueueCurrent(UID_DialogDBQueue5, UID_Parameter, UID_SubParameter, GenProcID) select UID_DialogDBQueue, UID_Parameter, UID_SubParameter, GenProcID from QBMDBQueueCurrent cu with (readpast6) where cu.SlotNumber = @SlotNumber if @@rowcount = 0 begin goto EndLabel end insert into @SourceData( IsUpcommingContent, XOriginAfter , Element, AssignedElement7, XOriginBefore , XIsInEffectBefore, XIsInEffectAfter ) select 0, 0 , phr.UID_Person, phr.UID_QERReuse, phr.XOrigin , phr.XIsInEffect, 0 from PersonHasQERReuse8 phr join @DBQueueCurrent x on phr.UID_Person = x.uid_parameter if exists (select top 1 1 from DialogTable t where t.TableName = 'PersonHasQERReuse' and9 t.IsDeactivatedByPreProcessor = 1 ) begin goto berechnen end insert into @SourceData( IsUpcommingContent, XOriginBefore, XOriginAfter , Element, AssignedElement10 , XIsInEffectBefore, XIsInEffectAfter ) select 1, 0, case when pd.UID_QERReuse = pd.UID_QERReusePredecessor then phr.XOrigin & @QBM_BitPatternXOrigin_Inherit_inv11 else @QBM_BitPatternXOrigin_Inherit end , phr.UID_person,pd.UID_QERReusePredecessor as UID_QERReuse , 0, 1 from PersonHasQERReuse phr join @DBQueueCurrent12 x on UID_person = x.uid_parameter join person p on phr.uid_person = p.uid_person join QERReuse r on phr.uid_QERReuse = r.uid_QERReuse cross apply dbo.QER_FTQERReusePredecessor13(r.UID_QERReuse) pd where phr.XOrigin & @QBM_BitPatternXOrigin_Inherit_inv > 0 insert into @SourceData( IsUpcommingContent, XOriginBefore , Element, AssignedElement14, XOriginAfter , XIsInEffectBefore, XIsInEffectAfter ) select 1, 0 , x.UID_person,pd.UID_QERReusePredecessor as UID_QERReuse , @QBM_BitPatternXOrigin_Inherit15 as XOrigin , 0, (r.IsNoInheriteToSecurityIncident & p.IsSecurityIncident) ^1 from ( select pha.UID_person, r.UID_QERReuse from @DBQueueCurrent x join 16PersonHasESet pha on pha.UID_person = x.uid_parameter and pha.XOrigin > 0 and pha.XIsInEffect = 1 join person px on pha.uid_person = px.uid_person and17 px.isNoInherite = 0 join ESetHasEntitlement aha on pha.UID_ESet = aha.UID_ESet and aha.XOrigin > 0 and aha.XIsInEffect = 1 and dbo.QBM_FGIModuleExists18('RMS') = 1 Join QERReuse r on aha.Entitlement = r.XObjectKey union all select pfo.UID_person, oha.UID_QERReuse from dbo.QER_FTPersonInheritFromOrg_L(@DBQueueCurrent19, @UID_BaseTreeAssignToUse) pfo join BaseTreeHasQERReuse oha on oha.uid_org = pfo.uid_org and oha.XOrigin > 0 and oha.XIsInEffect = 1 ) as x join person20 p on x.uid_person = p.uid_person join QERReuse r on x.uid_QERReuse = r.uid_QERReuse cross apply dbo.QER_FTQERReusePredecessor(r.UID_QERReuse) pd berechnen:21 exec QBM_PDBQueueCalculateDelta @SourceData, @DeltaQuantity = 0, @DeltaDelete = 0, @DeltaInsert = 1, @DeltaOrigin = 1, @CountDeltaQantity = @CountDeltaQantity22 output , @CountDeltaOrigin = @CountDeltaOrigin output , @UseIsInEffect = 1 , @SlotNumber = @SlotNumber , @DBQueueCurrentExtern = @DBQueueCurrent if @CountDeltaOrigin23 > 0 begin exec QBM_PMNTableOriginUpdate 'PersonHasQERReuse', 'uid_Person', 'uid_QERReuse' end if @CountDeltaQantity > 0 begin exec QBM_PMNTableInsert 24'PersonHasQERReuse', 'uid_Person', 'uid_QERReuse', @TargetIsView = 0 , @FKTableNameElement = 'Person' , @FKColumnNameElement = 'UID_Person' end END TRY25 BEGIN CATCH exec QBM_PSessionErrorAdd default RAISERROR ('', 18, 1) WITH NOWAIT END CATCH endLabel: return end 26