Back to OIM Explorer

dbo.ADS_ZOrgHasADSGroup

Stored ProcedureSQL_STORED_PROCEDURESandbox DB

Stored Procedure. Bulk DBQueue insert -> ADS-K-BaseTreeHasObject / ADS_ZBaseTreeHasObject at line 20; References QBM_PDBQueueInsert_Bulk

Source: sandbox-db sys.sql_modules

Source size: 5.885 characters

Interpretation

  • Database routine. Review parameters, called procedures, DBQueue inserts, and QBM_PJobCreate helper calls before assuming side effects.
  • DBQueue relation detected. Follow the task procedure and referenced-by list for async processing.

Relations

  • Bulk DBQueue insert -> ADS-K-BaseTreeHasObject / ADS_ZBaseTreeHasObject at line 20
  • References QBM_PDBQueueInsert_Bulk

Typed Edges

  • queues DBQueue task ADS_ZBaseTreeHasObject at line 20 Bulk DBQueue insert -> ADS-K-BaseTreeHasObject / ADS_ZBaseTreeHasObject at line 20
  • references source dbo.QBM_FGIBitPatternXOrigin source text reference
  • references source dbo.QBM_FGIConfigparmValue source text reference
  • references source dbo.QBM_FGIModuleExists source text reference
  • references source dbo.QBM_PDBQueueCalculateDelta source text reference
  • references source dbo.QBM_PDBQueueInsert_Bulk 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_PMNTableAddViewProperties source text reference
  • queues DBQueue task ADS-K-BaseTreeHasObject -> ADS_ZBaseTreeHasObject QBM_PDBQueueInsert_Bulk 'ADS-K-BaseTreeHasObject', @DBQueueElements_01 end end if dbo.QBM_FGIConfigparmValue('QER\Structures\Inherite\GroupExclusion') > ' ' begin if exists (select top 1 1 from ADSGroupExclusion ex with (nolock) join @Sour…

Complete Source

SQL246 lines
1CREATE PROCEDURE ADS_ZOrgHasADSGroup(2  @SlotNumber int3)4AS5BEGIN6  DECLARE @Sourcedata QBM_YDataForDelta,7  @CountDeltaQantity int,8  @CountDeltaOrigin int9  DECLARE @GenProcID varchar(38)10  DECLARE @UID_BasetreeAssignToUse varchar(38) = 'ADS-AsgnBT-ADSGroup'11  DECLARE @DBQueueCurrent QBM_YDBQueueCurrent12  DECLARE @QBM_BitPatternXOrigin_Inherit int = dbo.QBM_FGIBitPatternXOrigin('|Inherit|',13  0)14  DECLARE @QBM_BitPatternXOrigin_Inherit_inv int = dbo.QBM_FGIBitPatternXOrigin('|Inherit|',15  1)16  BEGIN TRY17    INSERT INTO @DBQueueCurrent(UID_DialogDBQueue,18    UID_Parameter,19    UID_SubParameter,20    GenProcID)21    SELECT22      UID_DialogDBQueue,23      UID_Parameter,24      UID_SubParameter,25      GenProcID26    FROM QBMDBQueueCurrent cu27      WITH(readpast)28    WHERE29      cu.SlotNumber = @SlotNumber30    IF @@rowcount = 031    BEGIN32      GOTO EndLabel33    END34    INSERT INTO @SourceData(IsUpcommingContent,35    XOriginAfter,36    Element,37    AssignedElement,38    XOriginBefore,39    XIsInEffectBefore)40    SELECT41      0,42      0,43      uid_org,44      uid_ADSgroup,45      XOrigin,46      XIsInEffect47    FROM BaseTreeHasADSGroup48    JOIN @DBQueueCurrent x49      ON uid_org =x.uid_parameter50    INSERT INTO @SourceData(IsUpcommingContent,51    XOriginBefore,52    XOriginAfter,53    Element,54    AssignedElement,55    XIsInEffectAfter)56    SELECT57      1,58      0,59      ohg.XOrigin & @QBM_BitPatternXOrigin_Inherit_inv,60      x.uid_parameter,61      ohg.uid_ADSgroup,62      163    FROM BaseTreeHasADSGroup ohg64    JOIN @DBQueueCurrent x65      ON ohg.uid_org = x.uid_parameter66    WHERE67      ohg.XOrigin & @QBM_BitPatternXOrigin_Inherit_inv > 068    INSERT INTO @SourceData(IsUpcommingContent,69    XOriginBefore,70    Element,71    AssignedElement,72    XOriginAfter,73    XIsInEffectAfter)74    SELECT75      1,76      0,77      x.uid_parameter,78      ohg.uid_ADSgroup,79      @QBM_BitPatternXOrigin_Inherit,80      181    FROM BaseTreeHasADSGroup ohg82    JOIN BaseTreeCollection oc83      ON ohg.uid_org = oc.uid_parentorg AND ohg.XIsInEffect = 184    JOIN ADSGroup gg85      ON ohg.uid_ADSGroup = gg.UID_ADSGroup86    JOIN @DBQueueCurrent x87      ON oc.uid_org = x.uid_parameter88    WHERE89      oc.uid_org <> oc.uid_parentorg AND ohg.XOrigin & @QBM_BitPatternXOrigin_Inherit_inv > 090    IF dbo.QBM_FGIModuleExists('RMS') = 191    BEGIN92      IF dbo.QBM_FGIConfigparmValue('QER\Structures\Inherite\NoESetSplitting') = ''93      BEGIN94        INSERT INTO @SourceData(IsUpcommingContent,95        XOriginBefore,96        Element,97        AssignedElement,98        XOriginAfter,99        XIsInEffectAfter)100        SELECT101          1,102          0,103          x.uid_parameter,104          y.uid_ADSGroup,105          @QBM_BitPatternXOrigin_Inherit,106          1107        FROM @DBQueueCurrent x108        JOIN BaseTreeHasEset bhe109          ON x.uid_Parameter = bhe.uid_org AND bhe.XOrigin > 0 AND bhe.XIsInEffect = 1110        JOIN ESetHasEntitlement ehe111          ON bhe.uid_ESet = ehe.uid_ESet AND ehe.XOrigin > 0 AND ehe.XIsInEffect = 1112        JOIN ADSGroup y113          ON ehe.entitlement = y.XObjectKey114        JOIN BaseTree b115          ON bhe.UID_Org = b.UID_Org AND NOT(b.UID_OrgRoot IN('QER-V-ITShopOrg', 'QER-V-ITShopSrc') AND b.ITShopInfo IN('BO',116        'PR', 'BG', 'BT'))117        JOIN OrgRootAssign oa118          ON oa.UID_OrgRoot = b.UID_OrgRoot AND oa.UID_BaseTreeAssign = @UID_BasetreeAssignToUse AND oa.IsAssignmentAllowed = 1119      END120      ELSE121      BEGIN122        DECLARE @DBQueueElements_01 QBM_YDBQueueRaw123        INSERT INTO @DBQueueElements_01(object,124        subobject,125        genprocid)126        SELECT127          x.uid,128          NULL,129          x.GenProcID130        FROM(131        SELECT132          cu.UID_Parameter AS uid,133          cu.GenProcID134        FROM @DBQueueCurrent cu) AS x135        EXEC QBM_PDBQueueInsert_Bulk 'ADS-K-BaseTreeHasObject',136          @DBQueueElements_01137      END138    END139    IF dbo.QBM_FGIConfigparmValue('QER\Structures\Inherite\GroupExclusion') > ' '140    BEGIN141      IF EXISTS(142        SELECT TOP 1 1143        FROM ADSGroupExclusion ex144        WITH(nolock)145      JOIN @Sourcedata s146        ON ex.UID_ADSGroupLower = s.AssignedElement147      WHERE148        s.IsUpcommingContent = 1 AND s.XOriginAfter > 0 AND s.XIsInEffectAfter = 1)149      BEGIN150        DECLARE @ExcludeCandidate QER_YExcludeCandidate151        INSERT INTO @ExcludeCandidate(Element,152        AssignedElement,153        XIsInEffectAfter)154        SELECT155          s.Element,156          s.AssignedElement,157          1158        FROM @Sourcedata s159        JOIN(160        SELECT exe.UID_ADSGroupLower AS UID_Excluded161        FROM ADSGroupExclusion exe) AS ex162          ON s.AssignedElement = ex.UID_Excluded163        WHERE164          s.IsUpcommingContent = 1 AND s.XOriginAfter > 0 AND s.XIsInEffectAfter = 1165        UNION all166        SELECT167          s.Element,168          s.AssignedElement,169          1170        FROM @Sourcedata s171        JOIN(172        SELECT exe.UID_ADSGroupHigher AS UID_Excluding173        FROM ADSGroupExclusion exe) AS ex174          ON s.AssignedElement = ex.UID_Excluding175        WHERE176          s.IsUpcommingContent = 1 AND s.XOriginAfter > 0 AND s.XIsInEffectAfter = 1177        DELETE @ExcludeCandidate178        FROM @ExcludeCandidate ex179        WHERE180          EXISTS(181        SELECT TOP 1 1182        FROM BaseTree b183        WHERE184          ex.Element = b.UID_Org AND b.UID_OrgRoot IN('QER-V-ITShopOrg', 'QER-V-ITShopSrc') AND b.ITShopInfo IN('BO',185        'BG', 'BT'))186        UPDATE @ExcludeCandidate187        SET XIsInEffectAfter = 0188        FROM @ExcludeCandidate l189        JOIN(190        SELECT191          exe.UID_ADSGroupLower AS UID_Excluded,192          exe.UID_ADSGroupHigher AS UID_Excluding193        FROM ADSGroupExclusion exe) AS ex194          ON l.AssignedElement = ex.UID_Excluded195        JOIN(196        SELECT sh.*197        FROM @ExcludeCandidate sh) AS h198          ON l.Element = h.Element AND h.AssignedElement = ex.UID_Excluding199        IF @@ROWCOUNT > 0200        BEGIN201          UPDATE @Sourcedata202          SET XIsInEffectAfter = 0203          FROM @Sourcedata l204          JOIN @ExcludeCandidate k205            ON l.Element = k.Element AND l.AssignedElement = k.AssignedElement AND k.XIsInEffectAfter = 0206          WHERE207            l.IsUpcommingContent = 1 AND l.XOriginAfter > 0 AND l.XIsInEffectAfter = 1208        END209      END210    END211    EXEC QBM_PDBQueueCalculateDelta @SourceData,212      @DeltaQuantity = 0,213      @DeltaDelete = 0,214      @DeltaInsert = 1,215      @DeltaOrigin = 1,216      @CountDeltaQantity = @CountDeltaQantity OUTPUT,217      @CountDeltaOrigin = @CountDeltaOrigin OUTPUT,218      @UseIsInEffect = 1,219      @SlotNumber = @SlotNumber,220      @DBQueueCurrentExtern = @DBQueueCurrent221    IF @CountDeltaOrigin > 0222    BEGIN223      EXEC QBM_PMNTableOriginUpdate 'BaseTreeHasADSGroup',224      'uid_org',225      'uid_adsGroup'226    END227    IF @CountDeltaQantity > 0228    BEGIN229      EXEC QER_PMNTableAddViewProperties 'BaseTreeHasADSGroup'230      EXEC QBM_PMNTableInsert 'BaseTreeHasADSGroup',231      'uid_org',232      'uid_adsGroup',233        @TargetIsView = 1,234        @FKTableNameElement = 'BaseTree',235        @FKColumnNameElement = 'UID_Org'236    END237  END TRY238  BEGIN CATCH239    EXEC QBM_PSessionErrorAdd DEFAULT240    RAISERROR('',241    18,242    1)243      WITH NOWAIT244  END CATCH245  endLabel:246END
Open raw exported source
SQL · Raw39 lines
1       create   procedure ADS_ZOrgHasADSGroup (@SlotNumber int) AS begin declare @Sourcedata QBM_YDataForDelta , @CountDeltaQantity int , @CountDeltaOrigin2 int declare @GenProcID varchar(38) declare @UID_BasetreeAssignToUse varchar(38) = 'ADS-AsgnBT-ADSGroup' declare @DBQueueCurrent QBM_YDBQueueCurrent declare3 @QBM_BitPatternXOrigin_Inherit int = dbo.QBM_FGIBitPatternXOrigin('|Inherit|', 0)  declare @QBM_BitPatternXOrigin_Inherit_inv int = dbo.QBM_FGIBitPatternXOrigin4('|Inherit|', 1)  BEGIN TRY insert into @DBQueueCurrent(UID_DialogDBQueue, UID_Parameter, UID_SubParameter, GenProcID) select UID_DialogDBQueue, UID_Parameter5, UID_SubParameter, GenProcID from QBMDBQueueCurrent cu with (readpast) where cu.SlotNumber = @SlotNumber if @@rowcount = 0 begin goto EndLabel end insert6 into @SourceData( IsUpcommingContent, XOriginAfter , Element, AssignedElement, XOriginBefore , XIsInEffectBefore ) select 0, 0 , uid_org, uid_ADSgroup7, XOrigin , XIsInEffect from BaseTreeHasADSGroup join @DBQueueCurrent x on uid_org =x.uid_parameter insert into @SourceData( IsUpcommingContent, XOriginBefore8, XOriginAfter , Element, AssignedElement , XIsInEffectAfter ) select 1, 0, ohg.XOrigin & @QBM_BitPatternXOrigin_Inherit_inv , x.uid_parameter, ohg.uid_ADSgroup9 , 1 from BaseTreeHasADSGroup ohg join @DBQueueCurrent x on ohg.uid_org = x.uid_parameter  where ohg.XOrigin & @QBM_BitPatternXOrigin_Inherit_inv > 0 insert10 into @SourceData( IsUpcommingContent, XOriginBefore , Element, AssignedElement, XOriginAfter , XIsInEffectAfter ) select 1, 0 , x.uid_parameter, ohg.uid_ADSgroup11, @QBM_BitPatternXOrigin_Inherit , 1 from BaseTreeHasADSGroup ohg join BaseTreeCollection oc on ohg.uid_org = oc.uid_parentorg  and ohg.XIsInEffect = 112 join ADSGroup gg on ohg.uid_ADSGroup = gg.UID_ADSGroup  join @DBQueueCurrent x on oc.uid_org = x.uid_parameter where oc.uid_org <> oc.uid_parentorg  and13 ohg.XOrigin & @QBM_BitPatternXOrigin_Inherit_inv > 0 if dbo.QBM_FGIModuleExists('RMS') = 1 begin if dbo.QBM_FGIConfigparmValue('QER\Structures\Inherite\NoESetSplitting'14) = '' begin insert into @SourceData( IsUpcommingContent, XOriginBefore , Element, AssignedElement, XOriginAfter , XIsInEffectAfter ) select 1, 0 , x.uid_parameter15, y.uid_ADSGroup, @QBM_BitPatternXOrigin_Inherit  , 1 from @DBQueueCurrent x join BaseTreeHasEset bhe on x.uid_Parameter = bhe.uid_org and bhe.XOrigin 16> 0 and bhe.XIsInEffect = 1 join ESetHasEntitlement ehe on bhe.uid_ESet = ehe.uid_ESet and ehe.XOrigin > 0 and ehe.XIsInEffect = 1 join ADSGroup y on ehe.entitlement17 = y.XObjectKey join BaseTree b on bhe.UID_Org = b.UID_Org  and not (b.UID_OrgRoot in ( 'QER-V-ITShopOrg', 'QER-V-ITShopSrc') and b.ITShopInfo in ( 'BO'18, 'PR', 'BG', 'BT') ) join OrgRootAssign oa on oa.UID_OrgRoot = b.UID_OrgRoot and oa.UID_BaseTreeAssign = @UID_BasetreeAssignToUse and oa.IsAssignmentAllowed19 = 1 end  else begin  declare @DBQueueElements_01 QBM_YDBQueueRaw insert into @DBQueueElements_01 (object, subobject, genprocid) select x.uid, null, x.GenProcID20 from ( select cu.UID_Parameter as uid, cu.GenProcID from @DBQueueCurrent cu ) as x exec QBM_PDBQueueInsert_Bulk 'ADS-K-BaseTreeHasObject', @DBQueueElements_0121 end end  if dbo.QBM_FGIConfigparmValue('QER\Structures\Inherite\GroupExclusion') > ' ' begin if exists (select top 1 1 from ADSGroupExclusion ex with 22(nolock) join @Sourcedata s on ex.UID_ADSGroupLower  = s.AssignedElement where s.IsUpcommingContent = 1 and s.XOriginAfter > 0 and s.XIsInEffectAfter =23 1 ) begin declare @ExcludeCandidate QER_YExcludeCandidate insert into @ExcludeCandidate(Element, AssignedElement, XIsInEffectAfter) select s.Element, 24s.AssignedElement, 1 from @Sourcedata s join ( select exe.UID_ADSGroupLower as UID_Excluded from ADSGroupExclusion exe ) as ex on s.AssignedElement = ex.UID_Excluded25 where s.IsUpcommingContent = 1 and s.XOriginAfter > 0 and s.XIsInEffectAfter = 1 union all select s.Element, s.AssignedElement, 1 from @Sourcedata s join26 ( select exe.UID_ADSGroupHigher as UID_Excluding from ADSGroupExclusion exe ) as ex on s.AssignedElement = ex.UID_Excluding where s.IsUpcommingContent27 = 1 and s.XOriginAfter > 0 and s.XIsInEffectAfter = 1  delete  @ExcludeCandidate from @ExcludeCandidate ex where exists (select top 1 1 from BaseTree 28b where ex.Element = b.UID_Org and b.UID_OrgRoot in ( 'QER-V-ITShopOrg', 'QER-V-ITShopSrc') and b.ITShopInfo in ( 'BO',  'BG', 'BT') )  update @ExcludeCandidate29 set XIsInEffectAfter = 0 from @ExcludeCandidate l  join ( select exe.UID_ADSGroupLower as UID_Excluded, exe.UID_ADSGroupHigher as UID_Excluding from ADSGroupExclusion30 exe ) as ex on l.AssignedElement = ex.UID_Excluded join (select sh.* from @ExcludeCandidate sh  ) as h on l.Element = h.Element and h.AssignedElement 31= ex.UID_Excluding if @@ROWCOUNT > 0 begin update @Sourcedata set XIsInEffectAfter = 0 from @Sourcedata l join @ExcludeCandidate k on l.Element = k.Element32 and l.AssignedElement = k.AssignedElement and k.XIsInEffectAfter = 0 where l.IsUpcommingContent = 1 and l.XOriginAfter > 0 and l.XIsInEffectAfter = 1 33end end  end   exec QBM_PDBQueueCalculateDelta @SourceData, @DeltaQuantity = 0, @DeltaDelete = 0, @DeltaInsert = 1, @DeltaOrigin = 1, @CountDeltaQantity34 = @CountDeltaQantity output , @CountDeltaOrigin = @CountDeltaOrigin output , @UseIsInEffect = 1 , @SlotNumber = @SlotNumber , @DBQueueCurrentExtern = 35@DBQueueCurrent if @CountDeltaOrigin > 0 begin exec QBM_PMNTableOriginUpdate 'BaseTreeHasADSGroup', 'uid_org', 'uid_adsGroup' end if @CountDeltaQantity36 > 0 begin exec QER_PMNTableAddViewProperties 'BaseTreeHasADSGroup' exec QBM_PMNTableInsert 'BaseTreeHasADSGroup', 'uid_org', 'uid_adsGroup', @TargetIsView37 = 1 , @FKTableNameElement = 'BaseTree' , @FKColumnNameElement = 'UID_Org' end END TRY BEGIN CATCH exec QBM_PSessionErrorAdd default RAISERROR ('', 18,38 1) WITH NOWAIT END CATCH endLabel: end 39