dbo.LDP_TIBaseTreeHasLDAPGroup
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 -> QER-K-AllChildrenOfOrg / QER_ZAllChildrenOfOrg at line 12
- Bulk DBQueue insert -> QER-K-OrgAutoChild / QER_ZITShopProductNodeCheck at line 12
- Bulk DBQueue insert -> LDP-K-BaseTreeHasObject / LDP_ZBaseTreeHasObject at line 12
- Bulk DBQueue insert -> LDP-K-LDAPAccountInLDAPGroup / LDP_ZAccountInLDAPGroup at line 12
- Bulk DBQueue insert -> LDP-K-LDPMachineInLDAPGroup / LDP_ZLDPMachineInLDAPGroup at line 12
- Bulk DBQueue insert -> QER-K-OrgAutoChild / QER_ZITShopProductNodeCheck at line 15
- Bulk DBQueue insert -> LDP-K-BaseTreeHasObject / LDP_ZBaseTreeHasObject at line 15
- Bulk DBQueue insert -> LDP-K-LDAPAccountInLDAPGroup / LDP_ZAccountInLDAPGroup at line 15
- Bulk DBQueue insert -> LDP-K-LDPMachineInLDAPGroup / LDP_ZLDPMachineInLDAPGroup at line 15
- Bulk DBQueue insert -> LDP-K-BaseTreeHasObject / LDP_ZBaseTreeHasObject at line 17
- Bulk DBQueue insert -> LDP-K-LDAPAccountInLDAPGroup / LDP_ZAccountInLDAPGroup at line 17
- Bulk DBQueue insert -> LDP-K-LDPMachineInLDAPGroup / LDP_ZLDPMachineInLDAPGroup at line 17
- Bulk DBQueue insert -> LDP-K-LDAPAccountInLDAPGroup / LDP_ZAccountInLDAPGroup at line 20
- Bulk DBQueue insert -> LDP-K-LDPMachineInLDAPGroup / LDP_ZLDPMachineInLDAPGroup at line 20
- Bulk DBQueue insert -> LDP-K-LDPMachineInLDAPGroup / LDP_ZLDPMachineInLDAPGroup at line 28
- References QBM_PDBQueueInsert_Bulk
- Trigger parent table: BaseTreeHasLDAPGroup
Typed Edges
- queues DBQueue task QER_ZAllChildrenOfOrg at line 12 Bulk DBQueue insert -> QER-K-AllChildrenOfOrg / QER_ZAllChildrenOfOrg at line 12
- queues DBQueue task QER_ZITShopProductNodeCheck at line 12 Bulk DBQueue insert -> QER-K-OrgAutoChild / QER_ZITShopProductNodeCheck at line 12
- queues DBQueue task LDP_ZBaseTreeHasObject at line 12 Bulk DBQueue insert -> LDP-K-BaseTreeHasObject / LDP_ZBaseTreeHasObject at line 12
- queues DBQueue task LDP_ZAccountInLDAPGroup at line 12 Bulk DBQueue insert -> LDP-K-LDAPAccountInLDAPGroup / LDP_ZAccountInLDAPGroup at line 12
- queues DBQueue task LDP_ZLDPMachineInLDAPGroup at line 12 Bulk DBQueue insert -> LDP-K-LDPMachineInLDAPGroup / LDP_ZLDPMachineInLDAPGroup at line 12
- queues DBQueue task QER_ZITShopProductNodeCheck at line 15 Bulk DBQueue insert -> QER-K-OrgAutoChild / QER_ZITShopProductNodeCheck at line 15
- queues DBQueue task LDP_ZBaseTreeHasObject at line 15 Bulk DBQueue insert -> LDP-K-BaseTreeHasObject / LDP_ZBaseTreeHasObject at line 15
- queues DBQueue task LDP_ZAccountInLDAPGroup at line 15 Bulk DBQueue insert -> LDP-K-LDAPAccountInLDAPGroup / LDP_ZAccountInLDAPGroup at line 15
- queues DBQueue task LDP_ZLDPMachineInLDAPGroup at line 15 Bulk DBQueue insert -> LDP-K-LDPMachineInLDAPGroup / LDP_ZLDPMachineInLDAPGroup at line 15
- queues DBQueue task LDP_ZBaseTreeHasObject at line 17 Bulk DBQueue insert -> LDP-K-BaseTreeHasObject / LDP_ZBaseTreeHasObject at line 17
- queues DBQueue task LDP_ZAccountInLDAPGroup at line 17 Bulk DBQueue insert -> LDP-K-LDAPAccountInLDAPGroup / LDP_ZAccountInLDAPGroup at line 17
- queues DBQueue task LDP_ZLDPMachineInLDAPGroup at line 17 Bulk DBQueue insert -> LDP-K-LDPMachineInLDAPGroup / LDP_ZLDPMachineInLDAPGroup at line 17
- queues DBQueue task LDP_ZAccountInLDAPGroup at line 20 Bulk DBQueue insert -> LDP-K-LDAPAccountInLDAPGroup / LDP_ZAccountInLDAPGroup at line 20
- queues DBQueue task LDP_ZLDPMachineInLDAPGroup at line 20 Bulk DBQueue insert -> LDP-K-LDPMachineInLDAPGroup / LDP_ZLDPMachineInLDAPGroup at line 20
- queues DBQueue task LDP_ZLDPMachineInLDAPGroup at line 28 Bulk DBQueue insert -> LDP-K-LDPMachineInLDAPGroup / LDP_ZLDPMachineInLDAPGroup at line 28
- trigger on table BaseTreeHasLDAPGroup Trigger parent table: BaseTreeHasLDAPGroup
- 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.QER_PAssignmentCheckValid source text reference
References
- dbo.QBM_FGIBitPatternXOrigin
- dbo.QBM_FGIConfigparmValue
- dbo.QBM_FGISessionContext
- dbo.QER_FGIITShopFlagCombineValid
- dbo.QBM_PDBQueueInsert_Bulk
- dbo.QBM_PSessionErrorAdd
- dbo.QER_PAssignmentCheckValid
Referenced By
- No direct source references extracted.
Complete Source
1CREATE trigger LDP_TIBaseTreeHasLDAPGroup2 ON BaseTreeHasLDAPGroup 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 DECLARE @AssignCheckValues QBM_YparameterList19 INSERT INTO @AssignCheckValues(Parameter1,20 Parameter2)21 SELECT22 i.UID_Org,23 i.XOrigin24 FROM inserted i25 EXEC QER_PAssignmentCheckValid 'LDP-AsgnBT-LDAPGroup',26 @AssignCheckValues,27 @GenProcID28 IF EXISTS(29 SELECT TOP 1 130 FROM inserted i31 JOIN LDAPGroup t32 ON i.uid_LDAPGroup = t.uid_LDAPGroup AND t.IsDynamicGroup = 1)33 BEGIN34 RAISERROR('#LDS#Cannot make assignment because it involves a dynamic LDAP group.|',35 18,36 2)37 WITH nowait38 END39 IF EXISTS(40 SELECT TOP 1 141 FROM inserted i42 JOIN BaseTree dest43 ON i.uid_Org = dest.uid_Org44 JOIN LDAPGroup elem45 ON i.uid_LDAPGroup = elem.uid_LDAPGroup46 WHERE47 dbo.QER_FGIITShopFlagCombineValid(dest.XObjectKey, NULL, NULL, elem.XObjectKey, elem.IsForITShop,48 elem.IsITShopOnly) = 0 AND i.XOrigin & @QBM_BitPatternXOrigin_Direct > 0)49 BEGIN50 RAISERROR('#LDS#Assignment is not permitted due to the combination of IT Shop flags.|',51 18,52 2)53 WITH nowait54 END55 IF EXISTS(56 SELECT TOP 1 157 FROM inserted i58 JOIN LDAPGroup g59 ON i.uid_LDAPGroup = g.uid_LDAPGroup AND g.IsDynamicGroup = 1)60 BEGIN61 RAISERROR('#LDS#Cannot add {0} because assignments for dynamic groups are not permitted.|BaseTreeHasLDAPGroup|',62 18,63 2)64 WITH nowait65 END66 DECLARE @DBQueueElements_01 QBM_YDBQueueRaw67 INSERT INTO @DBQueueElements_01(object,68 subobject,69 genprocid)70 SELECT71 x.uid,72 'LDP-K-OrgHasLDAPGroup',73 @GenProcID74 FROM(75 SELECT76 DISTINCT d.uid_org AS uid77 FROM inserted d78 WHERE79 d.XOrigin & @QBM_BitPatternXOrigin_Inherit_inv > 0) AS x80 EXEC QBM_PDBQueueInsert_Bulk 'QER-K-AllChildrenOfOrg',81 @DBQueueElements_0182 DECLARE @DBQueueElements_02 QBM_YDBQueueRaw83 INSERT INTO @DBQueueElements_02(object,84 subobject,85 genprocid)86 SELECT87 x.uid,88 NULL,89 @GenProcID90 FROM(91 SELECT92 DISTINCT b.uid_org AS uid93 FROM inserted d94 JOIN BaseTree b95 ON d.uid_org = b.uid_org96 WHERE97 b.ITShopInfo = 'BO' AND d.XIsInEffect = 1) AS x98 EXEC QBM_PDBQueueInsert_Bulk 'QER-K-OrgAutoChild',99 @DBQueueElements_02100 DECLARE @DBQueueElements_03 QBM_YDBQueueRaw101 INSERT INTO @DBQueueElements_03(object,102 subobject,103 genprocid)104 SELECT105 x.uid,106 NULL,107 @GenProcID108 FROM(109 SELECT110 DISTINCT uid_org AS uid111 FROM inserted112 WHERE113 XIsInEffect = 1) AS x114 EXEC QBM_PDBQueueInsert_Bulk 'LDP-K-BaseTreeHasObject',115 @DBQueueElements_03116 DECLARE @DBQueueElements_04 QBM_YDBQueueRaw117 INSERT INTO @DBQueueElements_04(object,118 subobject,119 genprocid)120 SELECT121 x.uid,122 NULL,123 @GenProcID124 FROM(125 SELECT126 DISTINCT LDAP.uid_LDAPaccount AS uid127 FROM inserted i128 JOIN(129 SELECT130 pio.uid_person, pio.uid_org131 FROM personinBaseTree pio132 WHERE133 pio.XOrigin > 0134 UNION all135 SELECT136 uid_person, uid_org137 FROM helperPersonOrg) hpo138 ON i.uid_org = hpo.uid_org139 JOIN LDAPaccount LDAP140 ON LDAP.uid_person = hpo.uid_person AND LDAP.isgroupaccount = 1141 WHERE142 i.XIsInEffect = 1) AS x143 EXEC QBM_PDBQueueInsert_Bulk 'LDP-K-LDAPAccountInLDAPGroup',144 @DBQueueElements_04145 DECLARE @DBQueueElements_05 QBM_YDBQueueRaw146 INSERT INTO @DBQueueElements_05(object,147 subobject,148 genprocid)149 SELECT150 x.uid,151 NULL,152 @GenProcID153 FROM(154 SELECT m.uid_LDPMachine AS uid155 FROM inserted i156 JOIN(157 SELECT158 pio.uid_WorkDesk, pio.uid_org159 FROM WorkDeskinBaseTree pio160 WHERE161 pio.XOrigin > 0162 UNION all163 SELECT164 uid_WorkDesk, uid_org165 FROM helperWorkDeskOrg) hwo166 ON hwo.uid_org = i.uid_org167 JOIN Hardware LDAP168 ON LDAP.uid_WorkDesk = hwo.uid_WorkDesk169 JOIN LDPMachine m170 ON LDAP.uid_Hardware = m.uid_Hardware171 WHERE172 '1' = dbo.QBM_FGIConfigparmValue('TargetSystem\LDAP\HardwareInGroupFromOrg') AND i.XIsInEffect = 1173 UNION174 SELECT m.uid_LDPMachine175 FROM inserted i176 JOIN(177 SELECT178 pio.uid_Hardware, pio.uid_org179 FROM HardwareinBaseTree pio180 WHERE181 pio.XOrigin > 0182 UNION all183 SELECT184 uid_Hardware, uid_org185 FROM helperHardwareOrg) hwo186 ON hwo.uid_org = i.uid_org187 JOIN Hardware LDAP188 ON LDAP.uid_Hardware = hwo.uid_Hardware189 JOIN LDPMachine m190 ON LDAP.uid_Hardware = m.uid_Hardware191 WHERE192 '1' = dbo.QBM_FGIConfigparmValue('TargetSystem\LDAP\HardwareInGroupFromOrg') AND i.XIsInEffect = 1) AS x193 EXEC QBM_PDBQueueInsert_Bulk 'LDP-K-LDPMachineInLDAPGroup',194 @DBQueueElements_05195 END TRY196 BEGIN CATCH197 EXEC QBM_PSessionErrorAdd DEFAULT198 RAISERROR('',199 18,200 1)201 WITH NOWAIT202 END CATCH203 ende:204 RETURN205END
Open raw exported source
1 create trigger LDP_TIBaseTreeHasLDAPGroup on BaseTreeHasLDAPGroup 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 declare @AssignCheckValues QBM_YparameterList insert into @AssignCheckValues(Parameter1, Parameter2) select i.UID_Org, i.XOrigin from inserted i exec 5QER_PAssignmentCheckValid 'LDP-AsgnBT-LDAPGroup', @AssignCheckValues, @GenProcID if exists (select top 1 1 from inserted i join LDAPGroup t on i.uid_LDAPGroup6 = t.uid_LDAPGroup and t.IsDynamicGroup = 1 ) begin raiserror( '#LDS#Cannot make assignment because it involves a dynamic LDAP group.|', 18, 2) with nowait7 end if exists (select top 1 1 from inserted i join BaseTree dest on i.uid_Org = dest.uid_Org join LDAPGroup elem on i.uid_LDAPGroup = elem.uid_LDAPGroup8 where dbo.QER_FGIITShopFlagCombineValid(dest.XObjectKey, null, null, elem.XObjectKey, elem.IsForITShop, elem.IsITShopOnly) = 0 and i.XOrigin & @QBM_BitPatternXOrigin_Direct9 > 0 ) begin raiserror ('#LDS#Assignment is not permitted due to the combination of IT Shop flags.|', 18, 2) with nowait end if exists (select top 1 101 from inserted i join LDAPGroup g on i.uid_LDAPGroup = g.uid_LDAPGroup and g.IsDynamicGroup = 1 ) begin raiserror( '#LDS#Cannot add {0} because assignments for dynamic groups are not permitted.|BaseTreeHasLDAPGroup|'11, 18, 2) with nowait end declare @DBQueueElements_01 QBM_YDBQueueRaw insert into @DBQueueElements_01 (object, subobject, genprocid) select x.uid, 'LDP-K-OrgHasLDAPGroup'12, @GenProcID from ( select distinct d.uid_org as uid from inserted d where d.XOrigin & @QBM_BitPatternXOrigin_Inherit_inv > 0 ) as x exec QBM_PDBQueueInsert_Bulk13 'QER-K-AllChildrenOfOrg', @DBQueueElements_01 declare @DBQueueElements_02 QBM_YDBQueueRaw insert into @DBQueueElements_02 (object, subobject, genprocid14) select x.uid, null, @GenProcID from ( select distinct b.uid_org as uid from inserted d join BaseTree b on d.uid_org = b.uid_org where b.ITShopInfo = 15'BO' and d.XIsInEffect = 1 ) as x exec QBM_PDBQueueInsert_Bulk 'QER-K-OrgAutoChild', @DBQueueElements_02 declare @DBQueueElements_03 QBM_YDBQueueRaw insert16 into @DBQueueElements_03 (object, subobject, genprocid) select x.uid, null, @GenProcID from ( select distinct uid_org as uid from inserted where XIsInEffect17 = 1 ) as x exec QBM_PDBQueueInsert_Bulk 'LDP-K-BaseTreeHasObject', @DBQueueElements_03 declare @DBQueueElements_04 QBM_YDBQueueRaw insert into @DBQueueElements_0418 (object, subobject, genprocid) select x.uid, null, @GenProcID from ( select distinct LDAP.uid_LDAPaccount as uid from inserted i join (select pio.uid_person19, pio.uid_org from personinBaseTree pio where pio.XOrigin > 0 union all select uid_person, uid_org from helperPersonOrg ) hpo on i.uid_org = hpo.uid_org20 join LDAPaccount LDAP on LDAP.uid_person = hpo.uid_person and LDAP.isgroupaccount = 1 where i.XIsInEffect = 1 ) as x exec QBM_PDBQueueInsert_Bulk 'LDP-K-LDAPAccountInLDAPGroup'21, @DBQueueElements_04 declare @DBQueueElements_05 QBM_YDBQueueRaw insert into @DBQueueElements_05 (object, subobject, genprocid) select x.uid, null, @GenProcID22 from ( select m.uid_LDPMachine as uid from inserted i join (select pio.uid_WorkDesk, pio.uid_org from WorkDeskinBaseTree pio where pio.XOrigin > 0 union23 all select uid_WorkDesk, uid_org from helperWorkDeskOrg ) hwo on hwo.uid_org = i.uid_org join Hardware LDAP on LDAP.uid_WorkDesk = hwo.uid_WorkDesk join24 LDPMachine m on LDAP.uid_Hardware = m.uid_Hardware where '1' = dbo.QBM_FGIConfigparmValue('TargetSystem\LDAP\HardwareInGroupFromOrg') and i.XIsInEffect25 = 1 union select m.uid_LDPMachine from inserted i join (select pio.uid_Hardware, pio.uid_org from HardwareinBaseTree pio where pio.XOrigin > 0 union 26all select uid_Hardware, uid_org from helperHardwareOrg ) hwo on hwo.uid_org = i.uid_org join Hardware LDAP on LDAP.uid_Hardware = hwo.uid_Hardware join27 LDPMachine m on LDAP.uid_Hardware = m.uid_Hardware where '1' = dbo.QBM_FGIConfigparmValue('TargetSystem\LDAP\HardwareInGroupFromOrg') and i.XIsInEffect28 = 1 ) as x exec QBM_PDBQueueInsert_Bulk 'LDP-K-LDPMachineInLDAPGroup', @DBQueueElements_05 END TRY BEGIN CATCH exec QBM_PSessionErrorAdd default RAISERROR29 ('', 18, 1) WITH NOWAIT END CATCH ende: return end 30