Back to OIM Explorer

dbo.QER_ZPersonHasQERReuse

Stored ProcedureSQL_STORED_PROCEDURESandbox DB

Stored Procedure.

Source: sandbox-db sys.sql_modules

Source size: 3.965 characters

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

SQL164 lines
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
SQL ยท Raw26 lines
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