Back to OIM Explorer

dbo.QER_ZPersonHasQERAssign

Stored ProcedureSQL_STORED_PROCEDURESandbox DB

Stored Procedure.

Source: sandbox-db sys.sql_modules

Source size: 3.425 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_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_FTQERAssignPredecessor source text reference

Complete Source

SQL146 lines
1CREATE PROCEDURE QER_ZPersonHasQERAssign(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-QERAssign'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      UID_person,47      UID_QERAssign,48      XOrigin,49      phr.XIsInEffect,50      051    FROM PersonHasQERAssign phr52    JOIN @DBQueueCurrent x53      ON phr.UID_Person = x.uid_parameter54    IF EXISTS(55      SELECT TOP 1 156      FROM DialogTable t57      WHERE58        t.TableName = 'PersonHasQERAssign' 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_QERAssign = pd.UID_QERAssignPredecessor THEN74    phr.XOrigin & @QBM_BitPatternXOrigin_Inherit_inv75    ELSE @QBM_BitPatternXOrigin_Inherit76    END,77    phr.UID_person,78    pd.UID_QERAssignPredecessor AS UID_QERAssign,79    0,80    181    FROM PersonHasQERAssign phr82    JOIN @DBQueueCurrent x83      ON UID_person = x.uid_parameter84    JOIN person p85      ON phr.uid_person = p.uid_person86    JOIN QERAssign r87      ON phr.uid_QERAssign = r.uid_QERAssign CROSS apply dbo.QER_FTQERAssignPredecessor(r.UID_QERAssign) 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      pfo.UID_person,101      pd.UID_QERAssignPredecessor AS UID_QERAssign,102      @QBM_BitPatternXOrigin_Inherit AS XOrigin,103      0,104      (eti.IsNoInheriteToSecurityIncident & pfo.IsSecurityIncident) ^1105    FROM dbo.QER_FTPersonInheritFromOrg_L(@DBQueueCurrent,106    @UID_BaseTreeAssignToUse) pfo107    JOIN BaseTreeHasQERAssign oha108      ON oha.uid_org = pfo.uid_org AND oha.XOrigin > 0109    JOIN QERAssign eti110      ON oha.uid_QERAssign = eti.uid_QERAssign CROSS apply dbo.QER_FTQERAssignPredecessor(eti.UID_QERAssign) pd berechnen:111    EXEC QBM_PDBQueueCalculateDelta @SourceData,112      @DeltaQuantity = 0,113      @DeltaDelete = 0,114      @DeltaInsert = 1,115      @DeltaOrigin = 1,116      @CountDeltaQantity = @CountDeltaQantity OUTPUT,117      @CountDeltaOrigin = @CountDeltaOrigin OUTPUT,118      @UseIsInEffect = 1,119      @SlotNumber = @SlotNumber,120      @DBQueueCurrentExtern = @DBQueueCurrent121    IF @CountDeltaOrigin > 0122    BEGIN123      EXEC QBM_PMNTableOriginUpdate 'PersonHasQERAssign',124      'uid_Person',125      'uid_QERAssign'126    END127    IF @CountDeltaQantity > 0128    BEGIN129      EXEC QBM_PMNTableInsert 'PersonHasQERAssign',130      'uid_Person',131      'uid_QERAssign',132        @TargetIsView = 0,133        @FKTableNameElement = 'Person',134        @FKColumnNameElement = 'UID_Person'135    END136  END TRY137  BEGIN CATCH138    EXEC QBM_PSessionErrorAdd DEFAULT139    RAISERROR('',140    18,141    1)142      WITH NOWAIT143  END CATCH144  endLabel:145  RETURN146END
Open raw exported source
SQL ยท Raw23 lines
1        create   procedure QER_ZPersonHasQERAssign (@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-QERAssign' 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 , UID_person, UID_QERAssign, XOrigin , phr.XIsInEffect, 0 from PersonHasQERAssign phr8 join @DBQueueCurrent x on phr.UID_Person = x.uid_parameter if exists (select top 1 1 from DialogTable t where t.TableName = 'PersonHasQERAssign' and t.IsDeactivatedByPreProcessor9 = 1 ) begin goto berechnen end insert into @SourceData( IsUpcommingContent, XOriginBefore, XOriginAfter , Element, AssignedElement , XIsInEffectBefore10, XIsInEffectAfter ) select 1, 0, case when pd.UID_QERAssign = pd.UID_QERAssignPredecessor then phr.XOrigin & @QBM_BitPatternXOrigin_Inherit_inv else @QBM_BitPatternXOrigin_Inherit11 end , phr.UID_person, pd.UID_QERAssignPredecessor as UID_QERAssign , 0, 1 from PersonHasQERAssign phr join @DBQueueCurrent x on UID_person = x.uid_parameter12  join person p on phr.uid_person = p.uid_person  join QERAssign r on phr.uid_QERAssign = r.uid_QERAssign cross apply dbo.QER_FTQERAssignPredecessor(r.UID_QERAssign13) pd  where phr.XOrigin & @QBM_BitPatternXOrigin_Inherit_inv > 0 insert into @SourceData( IsUpcommingContent, XOriginBefore , Element, AssignedElement,14 XOriginAfter , XIsInEffectBefore, XIsInEffectAfter ) select 1, 0 , pfo.UID_person, pd.UID_QERAssignPredecessor as UID_QERAssign , @QBM_BitPatternXOrigin_Inherit15 as XOrigin , 0, (eti.IsNoInheriteToSecurityIncident & pfo.IsSecurityIncident) ^1  from dbo.QER_FTPersonInheritFromOrg_L(@DBQueueCurrent, @UID_BaseTreeAssignToUse16) pfo join BaseTreeHasQERAssign oha on oha.uid_org = pfo.uid_org and oha.XOrigin > 0 join QERAssign eti on oha.uid_QERAssign = eti.uid_QERAssign cross 17apply dbo.QER_FTQERAssignPredecessor(eti.UID_QERAssign) pd berechnen: exec QBM_PDBQueueCalculateDelta @SourceData, @DeltaQuantity = 0, @DeltaDelete = 018, @DeltaInsert = 1, @DeltaOrigin = 1, @CountDeltaQantity = @CountDeltaQantity output , @CountDeltaOrigin = @CountDeltaOrigin output , @UseIsInEffect = 191 , @SlotNumber = @SlotNumber , @DBQueueCurrentExtern = @DBQueueCurrent if @CountDeltaOrigin > 0 begin exec QBM_PMNTableOriginUpdate 'PersonHasQERAssign'20, 'uid_Person', 'uid_QERAssign' end if @CountDeltaQantity > 0 begin exec QBM_PMNTableInsert 'PersonHasQERAssign', 'uid_Person', 'uid_QERAssign', @TargetIsView21 = 0 , @FKTableNameElement = 'Person' , @FKColumnNameElement = 'UID_Person' end END TRY BEGIN CATCH exec QBM_PSessionErrorAdd default RAISERROR ('', 1822, 1) WITH NOWAIT END CATCH  endLabel: return end 23