Back to OIM Explorer

dbo.ADS_TIADSGroupInADSGroup

Database TriggerSQL_TRIGGERSandbox DB

Database Trigger on ADSGroupInADSGroup. Bulk DBQueue insert -> ADS-K-ADSGroupInADSGroup / ADS_ZGroupInADSGroup at line 9; References QBM_PDBQueueInsert_Bulk; Trigger parent table: ADSGroupInADSGroup

Source: sandbox-db sys.sql_modules

Source size: 1.553 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 -> ADS-K-ADSGroupInADSGroup / ADS_ZGroupInADSGroup at line 9
  • References QBM_PDBQueueInsert_Bulk
  • Trigger parent table: ADSGroupInADSGroup

Typed Edges

  • queues DBQueue task ADS_ZGroupInADSGroup at line 9 Bulk DBQueue insert -> ADS-K-ADSGroupInADSGroup / ADS_ZGroupInADSGroup at line 9
  • trigger on table ADSGroupInADSGroup Trigger parent table: ADSGroupInADSGroup
  • references source dbo.QBM_FGISessionContext source text reference
  • references source dbo.QBM_PDBQueueInsert_Bulk source text reference
  • references source dbo.QBM_PSessionErrorAdd source text reference
  • references source dbo.ADS_TIAdsGroup source text reference

References

Referenced By

  • No direct source references extracted.

Complete Source

SQL70 lines
1CREATE trigger ADS_TIADSGroupInADSGroup2  ON ADSGroupInADSGroup FOR3INSERT NOT FOR Replication4AS5BEGIN6  IF EXISTS(7    SELECT TOP 1 18    FROM inserted)9  GOTO start10  RETURN start:11  BEGIN TRY12    DECLARE @GenProcID varchar(38) = dbo.QBM_FGISessionContext('')13    IF EXISTS(14      SELECT TOP 1 115      FROM inserted i16      JOIN ADSGroup g17        ON i.UID_ADSGroupParent = g.UID_ADSGroup AND 1 = g.HasReadOnlyMemberships AND dbo.QBM_FGISessionContext('Fullsync') = '')18    BEGIN19      RAISERROR('#LDS#Cannot add {0} because assignment to groups with read only memberships are not permitted.|ADSGroupInADSGroup|',20      18,21      2)22        WITH nowait23    END24    DECLARE @DBQueueElements_01 QBM_YDBQueueRaw25    INSERT INTO @DBQueueElements_01(object,26    subobject,27    genprocid)28    SELECT29      x.uid,30      NULL,31      @GenProcID32    FROM(33    SELECT uid_ADSGroupParent AS uid34    FROM inserted35    UNION36    SELECT UID_ADSGroupChild37    FROM inserted38    UNION39    SELECT co.uid_ADSGroupParent AS uid40    FROM inserted i41    JOIN ADSGroupcollection co42      ON i.UID_ADSGroupChild = co.UID_ADSGroupChild43    UNION44    SELECT co.uid_ADSGroupParent45    FROM inserted i46    JOIN ADSGroupcollection co47      ON i.UID_ADSGroupParent = co.UID_ADSGroupChild48    UNION49    SELECT co.UID_ADSGroupChild50    FROM inserted i51    JOIN ADSGroupcollection co52      ON i.UID_ADSGroupChild = co.UID_ADSGroupParent53    UNION54    SELECT co.UID_ADSGroupChild55    FROM inserted i56    JOIN ADSGroupcollection co57      ON i.UID_ADSGroupParent = co.UID_ADSGroupParent) AS x58    EXEC QBM_PDBQueueInsert_Bulk 'ADS-K-ADSGroupInADSGroup',59      @DBQueueElements_0160  END TRY61  BEGIN CATCH62    EXEC QBM_PSessionErrorAdd DEFAULT63    RAISERROR('',64    18,65    1)66      WITH NOWAIT67  END CATCH68  ende:69  RETURN70END
Open raw exported source
SQL ยท Raw11 lines
1  create   trigger ADS_TIADSGroupInADSGroup on ADSGroupInADSGroup  for Insert not for Replication as begin  if exists (select top 1 1 from inserted2) goto start return start: BEGIN TRY declare @GenProcID varchar(38) = dbo.QBM_FGISessionContext('')  if exists (select top 1 1 from inserted i join ADSGroup3 g on i.UID_ADSGroupParent = g.UID_ADSGroup and 1 = g.HasReadOnlyMemberships and dbo.QBM_FGISessionContext ('Fullsync') = '' ) begin raiserror( '#LDS#Cannot add {0} because assignment to groups with read only memberships are not permitted.|ADSGroupInADSGroup|'4, 18, 2) with nowait end declare @DBQueueElements_01 QBM_YDBQueueRaw insert into @DBQueueElements_01 (object, subobject, genprocid) select x.uid, null,5 @GenProcID from ( select uid_ADSGroupParent as uid from inserted union select UID_ADSGroupChild from inserted union  select co.uid_ADSGroupParent as uid6 from inserted i join ADSGroupcollection co on i.UID_ADSGroupChild = co.UID_ADSGroupChild  union select co.uid_ADSGroupParent from inserted i join ADSGroupcollection7 co on i.UID_ADSGroupParent = co.UID_ADSGroupChild  union select co.UID_ADSGroupChild from inserted i join ADSGroupcollection co on i.UID_ADSGroupChild8 = co.UID_ADSGroupParent  union select co.UID_ADSGroupChild from inserted i join ADSGroupcollection co on i.UID_ADSGroupParent = co.UID_ADSGroupParent 9) as x exec QBM_PDBQueueInsert_Bulk 'ADS-K-ADSGroupInADSGroup', @DBQueueElements_01 END TRY BEGIN CATCH exec QBM_PSessionErrorAdd default RAISERROR (''10, 18, 1) WITH NOWAIT END CATCH ende: return end 11