dbo.ADS_TIADSGroupExclusion
Database TriggerSQL_TRIGGERSandbox DB
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-ADSAccountInADSGroup / ADS_ZAccountInADSGroup at line 11
- Bulk DBQueue insert -> ADS-K-ADSContactInADSGroup / ADS_ZContactInADSGroup at line 11
- Bulk DBQueue insert -> ADS-K-ADSMachineInADSGroup / ADS_ZADSMachineInADSGroup at line 11
- Bulk DBQueue insert -> ADS-K-OrgHasADSGroup / ADS_ZOrgHasADSGroup at line 11
- Bulk DBQueue insert -> ADS-K-ADSContactInADSGroup / ADS_ZContactInADSGroup at line 15
- Bulk DBQueue insert -> ADS-K-ADSMachineInADSGroup / ADS_ZADSMachineInADSGroup at line 15
- Bulk DBQueue insert -> ADS-K-OrgHasADSGroup / ADS_ZOrgHasADSGroup at line 15
- Bulk DBQueue insert -> ADS-K-ADSMachineInADSGroup / ADS_ZADSMachineInADSGroup at line 18
- Bulk DBQueue insert -> ADS-K-OrgHasADSGroup / ADS_ZOrgHasADSGroup at line 18
- Bulk DBQueue insert -> ADS-K-OrgHasADSGroup / ADS_ZOrgHasADSGroup at line 21
- References QBM_PDBQueueInsert_Bulk
- Trigger parent table: ADSGroupExclusion
Typed Edges
- queues DBQueue task ADS_ZAccountInADSGroup at line 11 Bulk DBQueue insert -> ADS-K-ADSAccountInADSGroup / ADS_ZAccountInADSGroup at line 11
- queues DBQueue task ADS_ZContactInADSGroup at line 11 Bulk DBQueue insert -> ADS-K-ADSContactInADSGroup / ADS_ZContactInADSGroup at line 11
- queues DBQueue task ADS_ZADSMachineInADSGroup at line 11 Bulk DBQueue insert -> ADS-K-ADSMachineInADSGroup / ADS_ZADSMachineInADSGroup at line 11
- queues DBQueue task ADS_ZOrgHasADSGroup at line 11 Bulk DBQueue insert -> ADS-K-OrgHasADSGroup / ADS_ZOrgHasADSGroup at line 11
- queues DBQueue task ADS_ZContactInADSGroup at line 15 Bulk DBQueue insert -> ADS-K-ADSContactInADSGroup / ADS_ZContactInADSGroup at line 15
- queues DBQueue task ADS_ZADSMachineInADSGroup at line 15 Bulk DBQueue insert -> ADS-K-ADSMachineInADSGroup / ADS_ZADSMachineInADSGroup at line 15
- queues DBQueue task ADS_ZOrgHasADSGroup at line 15 Bulk DBQueue insert -> ADS-K-OrgHasADSGroup / ADS_ZOrgHasADSGroup at line 15
- queues DBQueue task ADS_ZADSMachineInADSGroup at line 18 Bulk DBQueue insert -> ADS-K-ADSMachineInADSGroup / ADS_ZADSMachineInADSGroup at line 18
- queues DBQueue task ADS_ZOrgHasADSGroup at line 18 Bulk DBQueue insert -> ADS-K-OrgHasADSGroup / ADS_ZOrgHasADSGroup at line 18
- queues DBQueue task ADS_ZOrgHasADSGroup at line 21 Bulk DBQueue insert -> ADS-K-OrgHasADSGroup / ADS_ZOrgHasADSGroup at line 21
- trigger on table ADSGroupExclusion Trigger parent table: ADSGroupExclusion
- references source dbo.QBM_FGIConfigparmValue source text reference
- 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.QER_PExclusionCheckCircular source text reference
- references source dbo.ADS_TIAdsGroup source text reference
References
- dbo.QBM_FGIConfigparmValue
- dbo.QBM_FGISessionContext
- dbo.QBM_PDBQueueInsert_Bulk
- dbo.QBM_PSessionErrorAdd
- dbo.QER_PExclusionCheckCircular
- dbo.ADS_TIAdsGroup
Referenced By
- No direct source references extracted.
Complete Source
1CREATE trigger ADS_TIADSGroupExclusion2 ON ADSGroupExclusion FOR3INSERT NOT FOR Replication4AS5BEGIN6 DECLARE @exclusions QBM_YParameterList7 BEGIN TRY8 IF EXISTS(9 SELECT TOP 1 110 FROM inserted)11 GOTO start12 RETURN start:13 DECLARE @GenProcID varchar(38)14 SELECT @GenProcID = dbo.QBM_FGISessionContext('')15 IF dbo.QBM_FGIConfigparmValue('QER\Structures\Inherite\GroupExclusion') = ''16 BEGIN17 RAISERROR('#LDS#Cannot make a definition because exclusion is not enabled by config parm.|',18 18,19 2)20 WITH nowait21 END22 IF EXISTS(23 SELECT TOP 1 124 FROM ADSGroup t25 JOIN inserted i26 ON t.uid_ADSGroup = i.uid_ADSGroupLower AND 1 = t.HasReadOnlyMemberships) OR EXISTS(27 SELECT TOP 1 128 FROM ADSGroup t29 JOIN inserted i30 ON t.uid_ADSGroup = i.uid_ADSGroupHigher AND 1 = t.HasReadOnlyMemberships)31 BEGIN32 RAISERROR('#LDS#Cannot make assignment because groups with read only memberships are involved.|',33 18,34 1)35 WITH nowait36 END37 INSERT INTO @exclusions(Parameter1,38 Parameter2)39 SELECT40 UID_ADSGroupHigher,41 UID_ADSGroupLower42 FROM inserted43 EXEC QER_PExclusionCheckCircular @TargetTable = 'ADSGroupExclusion',44 @HigherColumn = 'UID_ADSGroupHigher',45 @LowerColumn = 'UID_ADSGroupLower',46 @exclusions = @exclusions47 DECLARE @DBQueueElements_01 QBM_YDBQueueRaw48 INSERT INTO @DBQueueElements_01(object,49 subobject,50 genprocid)51 SELECT52 x.uid,53 NULL,54 @GenProcID55 FROM(56 SELECT uig.uid_ADSAccount AS uid57 FROM(58 SELECT UID_ADSGroupLower AS UID_ADSGroup59 FROM inserted60 UNION61 SELECT UID_ADSGroupHigher62 FROM inserted) AS y63 JOIN ADSGroupCollection coll64 ON y.UID_ADSGroup = coll.UID_ADSGroupParent65 JOIN ADSAccountInADSGroup uig66 ON coll.UID_ADSGroupChild = uig.UID_ADSGroup AND uig.XOrigin > 0) AS x67 EXEC QBM_PDBQueueInsert_Bulk 'ADS-K-ADSAccountInADSGroup',68 @DBQueueElements_0169 DECLARE @DBQueueElements_02 QBM_YDBQueueRaw70 INSERT INTO @DBQueueElements_02(object,71 subobject,72 genprocid)73 SELECT74 x.uid,75 NULL,76 @GenProcID77 FROM(78 SELECT uig.UID_ADSContact AS uid79 FROM(80 SELECT UID_ADSGroupLower AS UID_ADSGroup81 FROM inserted82 UNION83 SELECT UID_ADSGroupHigher84 FROM inserted) AS y85 JOIN ADSGroupCollection coll86 ON y.UID_ADSGroup = coll.UID_ADSGroupParent87 JOIN ADSContactInADSGroup uig88 ON coll.UID_ADSGroupChild = uig.UID_ADSGroup AND uig.XOrigin > 0) AS x89 EXEC QBM_PDBQueueInsert_Bulk 'ADS-K-ADSContactInADSGroup',90 @DBQueueElements_0291 DECLARE @DBQueueElements_03 QBM_YDBQueueRaw92 INSERT INTO @DBQueueElements_03(object,93 subobject,94 genprocid)95 SELECT96 x.uid,97 NULL,98 @GenProcID99 FROM(100 SELECT uig.uid_ADSMachine AS uid101 FROM(102 SELECT UID_ADSGroupLower AS UID_ADSGroup103 FROM inserted104 UNION105 SELECT UID_ADSGroupHigher106 FROM inserted) AS y107 JOIN ADSGroupCollection coll108 ON y.UID_ADSGroup = coll.UID_ADSGroupParent109 JOIN ADSMachineInADSGroup uig110 ON coll.UID_ADSGroupChild = uig.UID_ADSGroup AND uig.XOrigin > 0) AS x111 EXEC QBM_PDBQueueInsert_Bulk 'ADS-K-ADSMachineInADSGroup',112 @DBQueueElements_03113 DECLARE @DBQueueElements_04 QBM_YDBQueueRaw114 INSERT INTO @DBQueueElements_04(object,115 subobject,116 genprocid)117 SELECT118 x.uid,119 NULL,120 @GenProcID121 FROM(122 SELECT g.UID_Org AS uid123 FROM(124 SELECT UID_ADSGroupLower AS UID_ADSGroup125 FROM inserted126 UNION127 SELECT UID_ADSGroupHigher128 FROM inserted) AS y129 JOIN BaseTreeHasADSGroup g130 ON y.UID_ADSGroup = g.UID_ADSGroup) AS x131 EXEC QBM_PDBQueueInsert_Bulk 'ADS-K-OrgHasADSGroup',132 @DBQueueElements_04133 END TRY134 BEGIN CATCH135 EXEC QBM_PSessionErrorAdd DEFAULT136 RAISERROR('',137 18,138 1)139 WITH NOWAIT140 END CATCH141 ende:142 RETURN143END
Open raw exported source
1 create trigger ADS_TIADSGroupExclusion on ADSGroupExclusion for Insert not for Replication as begin declare @exclusions QBM_YParameterList2 BEGIN TRY if exists (select top 1 1 from inserted) goto start return start: declare @GenProcID varchar(38) select @GenProcID = dbo.QBM_FGISessionContext3('') if dbo.QBM_FGIConfigparmValue('QER\Structures\Inherite\GroupExclusion') = '' begin raiserror( '#LDS#Cannot make a definition because exclusion is not enabled by config parm.|'4, 18, 2) with nowait end if exists (select top 1 1 from ADSGroup t join inserted i on t.uid_ADSGroup = i.uid_ADSGroupLower and 1 = t.HasReadOnlyMemberships5 ) or exists (select top 1 1 from ADSGroup t join inserted i on t.uid_ADSGroup = i.uid_ADSGroupHigher and 1 = t.HasReadOnlyMemberships ) begin raiserror6('#LDS#Cannot make assignment because groups with read only memberships are involved.|', 18, 1) with nowait end insert into @exclusions (Parameter1, Parameter27) select UID_ADSGroupHigher, UID_ADSGroupLower from inserted exec QER_PExclusionCheckCircular @TargetTable = 'ADSGroupExclusion' , @HigherColumn = 'UID_ADSGroupHigher'8 , @LowerColumn = 'UID_ADSGroupLower' , @exclusions = @exclusions declare @DBQueueElements_01 QBM_YDBQueueRaw insert into @DBQueueElements_01 (object, 9subobject, genprocid) select x.uid, null, @GenProcID from ( select uig.uid_ADSAccount as uid from ( select UID_ADSGroupLower as UID_ADSGroup from inserted10 union select UID_ADSGroupHigher from inserted ) as y join ADSGroupCollection coll on y.UID_ADSGroup = coll.UID_ADSGroupParent join ADSAccountInADSGroup11 uig on coll.UID_ADSGroupChild = uig.UID_ADSGroup and uig.XOrigin > 0 ) as x exec QBM_PDBQueueInsert_Bulk 'ADS-K-ADSAccountInADSGroup', @DBQueueElements_0112 declare @DBQueueElements_02 QBM_YDBQueueRaw insert into @DBQueueElements_02 (object, subobject, genprocid) select x.uid, null, @GenProcID from ( select13 uig.UID_ADSContact as uid from ( select UID_ADSGroupLower as UID_ADSGroup from inserted union select UID_ADSGroupHigher from inserted ) as y join ADSGroupCollection14 coll on y.UID_ADSGroup = coll.UID_ADSGroupParent join ADSContactInADSGroup uig on coll.UID_ADSGroupChild = uig.UID_ADSGroup and uig.XOrigin > 0 ) as x15 exec QBM_PDBQueueInsert_Bulk 'ADS-K-ADSContactInADSGroup', @DBQueueElements_02 declare @DBQueueElements_03 QBM_YDBQueueRaw insert into @DBQueueElements_0316 (object, subobject, genprocid) select x.uid, null, @GenProcID from ( select uig.uid_ADSMachine as uid from ( select UID_ADSGroupLower as UID_ADSGroup 17from inserted union select UID_ADSGroupHigher from inserted ) as y join ADSGroupCollection coll on y.UID_ADSGroup = coll.UID_ADSGroupParent join ADSMachineInADSGroup18 uig on coll.UID_ADSGroupChild = uig.UID_ADSGroup and uig.XOrigin > 0 ) as x exec QBM_PDBQueueInsert_Bulk 'ADS-K-ADSMachineInADSGroup', @DBQueueElements_0319 declare @DBQueueElements_04 QBM_YDBQueueRaw insert into @DBQueueElements_04 (object, subobject, genprocid) select x.uid, null, @GenProcID from ( select20 g.UID_Org as uid from ( select UID_ADSGroupLower as UID_ADSGroup from inserted union select UID_ADSGroupHigher from inserted ) as y join BaseTreeHasADSGroup21 g on y.UID_ADSGroup = g.UID_ADSGroup ) as x exec QBM_PDBQueueInsert_Bulk 'ADS-K-OrgHasADSGroup', @DBQueueElements_04 END TRY BEGIN CATCH exec QBM_PSessionErrorAdd22 default RAISERROR ('', 18, 1) WITH NOWAIT END CATCH ende: return end 23