Back to OIM Explorer

dbo.TSB_TIUNSAccountBHasUNSGroupB3

Database TriggerSQL_TRIGGERSandbox DB

Database Trigger on UNSAccountBHasUNSGroupB3. Bulk DBQueue insert -> TSB-K-UNSAccountBInUNSGroupB3 / TSB_ZUNSAccountBInUNSGroupB3 at line 14; Bulk DBQueue insert -> TSB-K-UNSAccountBHasUNSItemB / TSB_ZUNSAccountBHasUNSItemB at line 14; Bulk DBQueue insert -> TSB-K-PersonHasObject / TSB_ZPersonHasObject at line 14; Bulk DBQueue insert -> TSB-K-PersonHasObject / TSB_ZPersonHasObject at line 14

Source: sandbox-db sys.sql_modules

Source size: 3.924 characters

Interpretation

  • Database trigger. Treat parent table and enqueue/object-layer calls as the main relation points.
  • DBQueue relation detected. Follow the task procedure and referenced-by list for async processing.

Relations

  • Bulk DBQueue insert -> TSB-K-UNSAccountBInUNSGroupB3 / TSB_ZUNSAccountBInUNSGroupB3 at line 14
  • Bulk DBQueue insert -> TSB-K-UNSAccountBHasUNSItemB / TSB_ZUNSAccountBHasUNSItemB at line 14
  • Bulk DBQueue insert -> TSB-K-PersonHasObject / TSB_ZPersonHasObject at line 14
  • Bulk DBQueue insert -> TSB-K-PersonHasObject / TSB_ZPersonHasObject at line 14
  • Bulk DBQueue insert -> TSB-K-UNSAccountBHasUNSItemB / TSB_ZUNSAccountBHasUNSItemB at line 18
  • Bulk DBQueue insert -> TSB-K-PersonHasObject / TSB_ZPersonHasObject at line 18
  • Bulk DBQueue insert -> TSB-K-PersonHasObject / TSB_ZPersonHasObject at line 18
  • Bulk DBQueue insert -> TSB-K-PersonHasObject / TSB_ZPersonHasObject at line 21
  • Bulk DBQueue insert -> TSB-K-PersonHasObject / TSB_ZPersonHasObject at line 21
  • Bulk DBQueue insert -> TSB-K-PersonHasObject / TSB_ZPersonHasObject at line 24
  • References QBM_PDBQueueInsert_Bulk
  • Trigger parent table: UNSAccountBHasUNSGroupB3

Typed Edges

  • queues DBQueue task TSB_ZUNSAccountBInUNSGroupB3 at line 14 Bulk DBQueue insert -> TSB-K-UNSAccountBInUNSGroupB3 / TSB_ZUNSAccountBInUNSGroupB3 at line 14
  • queues DBQueue task TSB_ZUNSAccountBHasUNSItemB at line 14 Bulk DBQueue insert -> TSB-K-UNSAccountBHasUNSItemB / TSB_ZUNSAccountBHasUNSItemB at line 14
  • queues DBQueue task TSB_ZPersonHasObject at line 14 Bulk DBQueue insert -> TSB-K-PersonHasObject / TSB_ZPersonHasObject at line 14
  • queues DBQueue task TSB_ZUNSAccountBHasUNSItemB at line 18 Bulk DBQueue insert -> TSB-K-UNSAccountBHasUNSItemB / TSB_ZUNSAccountBHasUNSItemB at line 18
  • queues DBQueue task TSB_ZPersonHasObject at line 18 Bulk DBQueue insert -> TSB-K-PersonHasObject / TSB_ZPersonHasObject at line 18
  • queues DBQueue task TSB_ZPersonHasObject at line 21 Bulk DBQueue insert -> TSB-K-PersonHasObject / TSB_ZPersonHasObject at line 21
  • queues DBQueue task TSB_ZPersonHasObject at line 24 Bulk DBQueue insert -> TSB-K-PersonHasObject / TSB_ZPersonHasObject at line 24
  • trigger on table UNSAccountBHasUNSGroupB3 Trigger parent table: UNSAccountBHasUNSGroupB3
  • references source dbo.QBM_FGIBitPatternXOrigin source text reference
  • references source dbo.QBM_FGIConfigparmValue source text reference
  • references source dbo.QBM_FGISessionContext source text reference
  • references source dbo.QER_FGIITShopFlagCombineValid source text reference
  • references source dbo.QBM_PDBQueueInsert_Bulk source text reference
  • references source dbo.QBM_PSessionErrorAdd source text reference
  • references source dbo.TSB_TIUNSAccountB source text reference
  • references source dbo.TSB_TIUNSAccountBHasUNSGroupB source text reference

Complete Source

SQL171 lines
1CREATE trigger TSB_TIUNSAccountBHasUNSGroupB32  ON UNSAccountBHasUNSGroupB3 FOR3INSERT NOT FOR Replication4AS5BEGIN6  DECLARE @QBM_BitPatternXOrigin_Direct int = dbo.QBM_FGIBitPatternXOrigin('|Direct|',7  0)8  DECLARE @QBM_BitPatternXOrigin_Inherit_inv int = dbo.QBM_FGIBitPatternXOrigin('|Inherit|',9  1)10  BEGIN TRY11    IF EXISTS(12      SELECT TOP 1 113      FROM inserted)14    GOTO start15    RETURN start:16    DECLARE @GenProcID varchar(38)17    SELECT @GenProcID = dbo.QBM_FGISessionContext('')18    IF EXISTS(19      SELECT TOP 1 120      FROM inserted i21      JOIN UNSAccountB u22        ON i.UID_UNSAccountB = u.UID_UNSAccountB23      JOIN UNSRootB r24        ON u.UID_UNSRootB = r.UID_UNSRootB25      WHERE26        r.UserContainsGroupList & 0x08 = 0)27    BEGIN28      RAISERROR('#LDS#Assignment is not permitted due to the Value of UNSRootB.UserContainsGroupList.|',29      18,30      2)31        WITH nowait32    END33    IF EXISTS(34      SELECT TOP 1 135      FROM inserted i36      JOIN UNSGroupB3 elem37        ON i.uid_UNSGroupB3 = elem.uid_UNSGroupB338      WHERE39        dbo.QER_FGIITShopFlagCombineValid(i.XObjectKey, NULL, NULL, elem.XObjectKey, elem.IsForITShop, elem.IsITShopOnly) = 0 AND i.XOrigin & @QBM_BitPatternXOrigin_Direct40    > 0 AND dbo.QBM_FGISessionContext('Fullsync') = '')41    BEGIN42      RAISERROR('#LDS#Assignment is not permitted due to the combination of IT Shop flags.|',43      18,44      2)45        WITH nowait46    END47    IF EXISTS(48      SELECT TOP 1 149      FROM inserted i50      JOIN UNSGroupB3 g51        ON i.UID_UNSGroupB3 = g.UID_UNSGroupB352      JOIN UNSAccountB u53        ON i.UID_UNSAccountB = u.UID_UNSAccountB54      JOIN UNSRootB ru55        ON u.UID_UNSRootB = ru.UID_UNSRootB56      JOIN DPRNameSpace ns57        ON ru.UID_DPRNameSpace = ns.UID_DPRNameSpace58      JOIN UNSRootB rg59        ON g.UID_UNSRootB = rg.UID_UNSRootB60      WHERE61        0 = CASE62    WHEN u.UID_UNSRootB = g.UID_UNSRootB THEN63    164    WHEN ns.IsExtendedInheritance = 0 THEN65    066    WHEN ns.IsExtendedInheritance = 1 AND ns.UID_DPRNameSpace = rg.UID_DPRNameSpace THEN67    168    ELSE 069    END)70    BEGIN71      RAISERROR('#LDS#Assignment is not permitted due to the configuration of related UNSRoots.|',72      18,73      2)74        WITH nowait75    END76    DECLARE @DBQueueElements_01 QBM_YDBQueueRaw77    INSERT INTO @DBQueueElements_01(object,78    subobject,79    genprocid)80    SELECT81      x.uid,82      NULL,83      @GenProcID84    FROM(85    SELECT86      DISTINCT i.UID_UNSAccountB AS uid87    FROM inserted i88    WHERE89      i.XOrigin & @QBM_BitPatternXOrigin_Inherit_inv > 0) AS x90    EXEC QBM_PDBQueueInsert_Bulk 'TSB-K-UNSAccountBInUNSGroupB3',91      @DBQueueElements_0192    IF 'UNSGroupB3' = 'UNSGroupB'93    BEGIN94      IF EXISTS(95        SELECT TOP 1 196        FROM UNSItemB)97      BEGIN98        DECLARE @DBQueueElements_02 QBM_YDBQueueRaw99        INSERT INTO @DBQueueElements_02(object,100        subobject,101        genprocid)102        SELECT103          x.uid,104          NULL,105          @GenProcID106        FROM(107        SELECT108          DISTINCT i.UID_UNSAccountB AS uid109        FROM inserted i110        WHERE111          i.XIsInEffect = 1 AND EXISTS(112        SELECT TOP 1 1113        FROM UNSItemB b114        JOIN UNSAccountB acc115          ON b.UID_UNSRootB = acc.UID_UNSRootB AND acc.UID_UNSAccountB = i.UID_UNSAccountB)) AS x116        EXEC QBM_PDBQueueInsert_Bulk 'TSB-K-UNSAccountBHasUNSItemB',117          @DBQueueElements_02118      END119    END120    DECLARE @DBQueueElements_03 QBM_YDBQueueRaw121    INSERT INTO @DBQueueElements_03(object,122    subobject,123    genprocid)124    SELECT125      x.uid,126      NULL,127      @GenProcID128    FROM(129    SELECT130      DISTINCT u.UID_Person AS uid131    FROM inserted i132    JOIN UNSAccountB u133      ON i.UID_UNSAccountB = u.UID_UNSAccountB134    WHERE135      u.UID_Person > ' ' AND i.XIsInEffect = 1) AS x136    EXEC QBM_PDBQueueInsert_Bulk 'TSB-K-PersonHasObject',137      @DBQueueElements_03138    IF '1' = dbo.QBM_FGIConfigparmValue('QER\ComplianceCheck\IncludeTSBPersonUsesAccount')139    BEGIN140      DECLARE @DBQueueElements_PersonUsesAccount QBM_YDBQueueRaw141      INSERT INTO @DBQueueElements_PersonUsesAccount(object,142      subobject,143      genprocid)144      SELECT145        x.uid,146        NULL,147        @GenProcID148      FROM(149      SELECT150        DISTINCT t.uid_person AS uid151      FROM inserted i152      JOIN UNSAccountB u153        ON i.UID_UNSAccountB = u.UID_UNSAccountB154      JOIN TSBPersonUsesAccount t155        ON u.XObjectKey = t.ObjectKeyAccount156      WHERE157        i.XIsInEffect = 1) AS x158      EXEC QBM_PDBQueueInsert_Bulk 'TSB-K-PersonHasObject',159        @DBQueueElements_PersonUsesAccount160    END161  END TRY162  BEGIN CATCH163    EXEC QBM_PSessionErrorAdd DEFAULT164    RAISERROR('',165    18,166    1)167      WITH NOWAIT168  END CATCH169  ende:170  RETURN171END
Open raw exported source
SQL ยท Raw26 lines
1   create   trigger TSB_TIUNSAccountBHasUNSGroupB3 on UNSAccountBHasUNSGroupB3  for Insert not for Replication as begin  declare @QBM_BitPatternXOrigin_Direct2 int = dbo.QBM_FGIBitPatternXOrigin('|Direct|', 0) declare @QBM_BitPatternXOrigin_Inherit_inv int = dbo.QBM_FGIBitPatternXOrigin('|Inherit|', 1)  BEGIN3 TRY if exists (select top 1 1 from inserted) goto start return start: declare @GenProcID varchar(38) select @GenProcID = dbo.QBM_FGISessionContext('')4  if exists (select top 1 1 from inserted i join UNSAccountB u on i.UID_UNSAccountB = u.UID_UNSAccountB join UNSRootB r on u.UID_UNSRootB = r.UID_UNSRootB5 where r.UserContainsGroupList & 0x08 = 0 ) begin raiserror ('#LDS#Assignment is not permitted due to the Value of UNSRootB.UserContainsGroupList.|'6, 18, 2) with nowait end   if exists (select top 1 1 from inserted i   join UNSGroupB3 elem on i.uid_UNSGroupB3 = elem.uid_UNSGroupB3 where dbo.QER_FGIITShopFlagCombineValid7(i.XObjectKey, null, null, elem.XObjectKey, elem.IsForITShop, elem.IsITShopOnly) = 0  and i.XOrigin & @QBM_BitPatternXOrigin_Direct > 0 and dbo.QBM_FGISessionContext8 ('Fullsync') = '' ) begin  raiserror ('#LDS#Assignment is not permitted due to the combination of IT Shop flags.|', 18, 2) with nowait end  if exists 9(select top 1 1 from inserted i join UNSGroupB3 g on i.UID_UNSGroupB3 = g.UID_UNSGroupB3 join UNSAccountB u on i.UID_UNSAccountB = u.UID_UNSAccountB10 join UNSRootB ru on u.UID_UNSRootB = ru.UID_UNSRootB join DPRNameSpace ns on ru.UID_DPRNameSpace = ns.UID_DPRNameSpace join UNSRootB rg on g.UID_UNSRootB11 = rg.UID_UNSRootB where 0 = case when u.UID_UNSRootB = g.UID_UNSRootB then 1  when ns.IsExtendedInheritance = 0 then 0 when ns.IsExtendedInheritance =12 1 and ns.UID_DPRNameSpace = rg.UID_DPRNameSpace then 1 else 0 end ) begin raiserror ('#LDS#Assignment is not permitted due to the configuration of related UNSRoots.|'13, 18, 2) with nowait end  declare @DBQueueElements_01 QBM_YDBQueueRaw insert into @DBQueueElements_01 (object, subobject, genprocid) select x.uid, null14, @GenProcID from (  select distinct i.UID_UNSAccountB as uid from inserted i   where i.XOrigin & @QBM_BitPatternXOrigin_Inherit_inv > 0 ) as x exec QBM_PDBQueueInsert_Bulk15 'TSB-K-UNSAccountBInUNSGroupB3', @DBQueueElements_01 if 'UNSGroupB3' = 'UNSGroupB'  begin if exists (select top 1 1 from UNSItemB ) begin declare 16@DBQueueElements_02 QBM_YDBQueueRaw insert into @DBQueueElements_02 (object, subobject, genprocid) select x.uid, null, @GenProcID from (  select distinct17 i.UID_UNSAccountB as uid from inserted i where i.XIsInEffect = 1 and exists (select top 1 1 from UNSItemB b join UNSAccountB acc on b.UID_UNSRootB = acc.UID_UNSRootB18 and acc.UID_UNSAccountB = i.UID_UNSAccountB) ) as x exec QBM_PDBQueueInsert_Bulk 'TSB-K-UNSAccountBHasUNSItemB', @DBQueueElements_02 end end  declare 19@DBQueueElements_03 QBM_YDBQueueRaw insert into @DBQueueElements_03 (object, subobject, genprocid) select x.uid, null, @GenProcID from ( select distinct20 u.UID_Person as uid from inserted i join UNSAccountB u on i.UID_UNSAccountB = u.UID_UNSAccountB where u.UID_Person > ' ' and i.XIsInEffect = 1 ) as x 21exec QBM_PDBQueueInsert_Bulk 'TSB-K-PersonHasObject', @DBQueueElements_03  if '1' = dbo.QBM_FGIConfigparmValue('QER\ComplianceCheck\IncludeTSBPersonUsesAccount'22) begin declare @DBQueueElements_PersonUsesAccount QBM_YDBQueueRaw insert into @DBQueueElements_PersonUsesAccount (object, subobject, genprocid) select23 x.uid, null, @GenProcID from ( select distinct t.uid_person as uid from inserted i join UNSAccountB u on i.UID_UNSAccountB = u.UID_UNSAccountB join TSBPersonUsesAccount24 t on u.XObjectKey = t.ObjectKeyAccount where i.XIsInEffect = 1 ) as x exec QBM_PDBQueueInsert_Bulk 'TSB-K-PersonHasObject', @DBQueueElements_PersonUsesAccount25 end  END TRY BEGIN CATCH exec QBM_PSessionErrorAdd default RAISERROR ('', 18, 1) WITH NOWAIT END CATCH ende: return end 26