Back to OIM Explorer

dbo.QER_TUQERResource

Database TriggerSQL_TRIGGERSandbox DB

Database Trigger on QERResource. Bulk DBQueue insert -> QER-K-PersonHasQERResource / QER_ZPersonHasQERResource at line 16; Bulk DBQueue insert -> QER-K-PersonHasQERResource / QER_ZPersonHasQERResource at line 16; Bulk DBQueue insert -> QER-K-OrgHasQERResource / QER_ZOrgHasQERResource at line 16; Bulk DBQueue insert -> QER-K-PersonHasQERResource / QER_ZPersonHasQERResource at line 19

Source: sandbox-db sys.sql_modules

Source size: 5.588 characters

Interpretation

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

Relations

  • Bulk DBQueue insert -> QER-K-PersonHasQERResource / QER_ZPersonHasQERResource at line 16
  • Bulk DBQueue insert -> QER-K-PersonHasQERResource / QER_ZPersonHasQERResource at line 16
  • Bulk DBQueue insert -> QER-K-OrgHasQERResource / QER_ZOrgHasQERResource at line 16
  • Bulk DBQueue insert -> QER-K-PersonHasQERResource / QER_ZPersonHasQERResource at line 19
  • Bulk DBQueue insert -> QER-K-OrgHasQERResource / QER_ZOrgHasQERResource at line 19
  • Bulk DBQueue insert -> QER-K-OrgHasQERResource / QER_ZOrgHasQERResource at line 23
  • References QBM_PJobCreate*
  • References QBM_PDBQueueInsert_Bulk
  • Trigger parent table: QERResource

Typed Edges

  • queues DBQueue task QER_ZPersonHasQERResource at line 16 Bulk DBQueue insert -> QER-K-PersonHasQERResource / QER_ZPersonHasQERResource at line 16
  • queues DBQueue task QER_ZOrgHasQERResource at line 16 Bulk DBQueue insert -> QER-K-OrgHasQERResource / QER_ZOrgHasQERResource at line 16
  • queues DBQueue task QER_ZPersonHasQERResource at line 19 Bulk DBQueue insert -> QER-K-PersonHasQERResource / QER_ZPersonHasQERResource at line 19
  • queues DBQueue task QER_ZOrgHasQERResource at line 19 Bulk DBQueue insert -> QER-K-OrgHasQERResource / QER_ZOrgHasQERResource at line 19
  • queues DBQueue task QER_ZOrgHasQERResource at line 23 Bulk DBQueue insert -> QER-K-OrgHasQERResource / QER_ZOrgHasQERResource at line 23
  • trigger on table QERResource Trigger parent table: QERResource
  • references source dbo.QBM_FCVBigIntToString source text reference
  • references source dbo.QBM_FGISessionContext source text reference
  • references source dbo.QBM_PDBQueueInsert_Bulk source text reference
  • references source dbo.QBM_PJobCreate source text reference
  • references source dbo.QBM_PJobCreate_HOUpdate source text reference
  • references source dbo.QBM_PJobCreate_HOUpdate_B source text reference
  • references source dbo.QBM_PSessionErrorAdd source text reference
  • references source dbo.QER_PIsForITShopFlagCheck source text reference
  • references source dbo.QER_PITShopHelperFill source text reference
  • references source dbo.QER_PITShopHelperFill_Recalc source text reference

Complete Source

SQL231 lines
1CREATE trigger QER_TUQERResource2  ON QERResource FOR3UPDATE NOT FOR Replication4AS5BEGIN6  DECLARE @ObjectkeyOrdered varchar(138)7  DECLARE @UID_AccProduct varchar(38)8  DECLARE @whereclauseOrg nvarchar(max)9  DECLARE @whereclauseMuster nvarchar(max) = ' UID_ITShopOrg in ( select UID_OrgPR 10							from QER_VPWOProductNodesSlim11							where ObjectkeyOrdered = ''@ObjectkeyOrdered'' 12								and isnull(UID_AccProduct, '''') <> ''@UID_AccProduct''13					)14'15  DECLARE @ElementBuffer QBM_YCursorBuffer16  DECLARE @ElementCount int17  DECLARE @ElementIndex int18  BEGIN TRY19    IF EXISTS(20      SELECT TOP 1 121      FROM inserted)22    GOTO start23    IF EXISTS(24      SELECT TOP 1 125      FROM deleted)26    GOTO start27    RETURN start:28    DECLARE @GenProcID varchar(38)29    SELECT @GenProcID = dbo.QBM_FGISessionContext('')30    IF31    UPDATE(isForITShop) OR32    UPDATE(isITShopOnly)33    BEGIN34      DECLARE @FlagTest QBM_YParameterlist35      INSERT INTO @FlagTest(Parameter1,36      Parameter2,37      HasContentFull,38      e.Parameter3)39      SELECT40        i.UID_QERResource,41        i.XObjectKey,42        i.IsForITShop,43        dbo.QBM_FCVBigIntToString(i.IsITShopOnly)44      FROM inserted i45      EXEC QER_PIsForITShopFlagCheck 'QERResource',46        @FlagTest47    END48    IF49    UPDATE(IsNoInheriteToSecurityIncident)50    BEGIN51      DECLARE @DBQueueElements_01 QBM_YDBQueueRaw52      INSERT INTO @DBQueueElements_01(object,53      subobject,54      genprocid)55      SELECT56        x.uid,57        NULL,58        @GenProcID59      FROM(60      SELECT61        DISTINCT phr.UID_Person AS uid62      FROM QERResource v63      JOIN deleted d64        ON d.uid_QERResource = v.UID_QERResource65      JOIN PersonHasQERResource phr66        ON phr.UID_QERResource = v.UID_QERResource AND phr.XOrigin > 067      WHERE68        (d.IsNoInheriteToSecurityIncident = 1 AND v.IsNoInheriteToSecurityIncident = 0 AND phr.XIsInEffect = 0) OR(d.IsNoInheriteToSecurityIncident69      = 0 AND v.IsNoInheriteToSecurityIncident = 1 AND phr.XIsInEffect = 1)) AS x70      EXEC QBM_PDBQueueInsert_Bulk 'QER-K-PersonHasQERResource',71        @DBQueueElements_0172    END73    IF74    UPDATE(UID_QERResourcePredecessor)75    BEGIN76      DECLARE @DBQueueElements_02 QBM_YDBQueueRaw77      INSERT INTO @DBQueueElements_02(object,78      subobject,79      genprocid)80      SELECT81        x.uid,82        NULL,83        @GenProcID84      FROM(85      SELECT86        DISTINCT phr.UID_Person AS uid87      FROM QERResource v88      JOIN deleted d89        ON d.uid_QERResource = v.UID_QERResource AND isnull(v.UID_QERResourcePredecessor, '') <> ISNULL(d.UID_QERResourcePredecessor,90      '')91      JOIN PersonHasQERResource phr92        ON phr.UID_QERResource = v.UID_QERResource AND phr.XOrigin > 0) AS x93      EXEC QBM_PDBQueueInsert_Bulk 'QER-K-PersonHasQERResource',94        @DBQueueElements_0295      DECLARE @DBQueueElements_03 QBM_YDBQueueRaw96      INSERT INTO @DBQueueElements_03(object,97      subobject,98      genprocid)99      SELECT100        x.uid,101        NULL,102        @GenProcID103      FROM(104      SELECT105        DISTINCT phr.UID_org AS uid106      FROM QERResource v107      JOIN deleted d108        ON d.uid_QERResource = v.UID_QERResource AND isnull(v.UID_QERResourcePredecessor, '') <> ISNULL(d.UID_QERResourcePredecessor,109      '')110      JOIN BaseTreeHasQERResource phr111        ON phr.UID_QERResource = v.UID_QERResource AND phr.XOrigin > 0) AS x112      EXEC QBM_PDBQueueInsert_Bulk 'QER-K-OrgHasQERResource',113        @DBQueueElements_03114    END115    IF116    UPDATE(uid_accproduct)117    BEGIN118      INSERT INTO @ElementBuffer(ObjectKey1,119      UID1)120      SELECT121        x.XObjectKey,122        isnull(x.uid_accproduct,123        '')124      FROM QERResource x125      JOIN deleted d126        ON x.uid_QERResource = d.uid_QERResource AND isnull(x.uid_accproduct,127      '') <> isnull(d.uid_accproduct,128      '') AND d.uid_accproduct > ' '129      JOIN dialogColumn c130        ON c.UID_DialogTable = 'QER-T-ITShopOrg' AND c.columnname = 'uid_ACCProduct' AND c.IsDeactivatedByPreProcessor = 0131      SELECT @ElementCount = @@ROWCOUNT132      SELECT @ElementIndex = 1133      WHILE @ElementIndex <= @ElementCount134      BEGIN135        SELECT136          TOP 1 @ObjectkeyOrdered = bu.ObjectKey1,137          @UID_AccProduct = bu.UID1138        FROM @ElementBuffer bu139        WHERE140          bu.ElementIndex = @ElementIndex141        SELECT @whereclauseOrg = @whereclauseMuster142        SELECT143          @whereclauseOrg = replace(@whereclauseOrg,144          N '@ObjectkeyOrdered',145          @ObjectkeyOrdered)146        SELECT147          @whereclauseOrg = replace(@whereclauseOrg,148          N '@uid_accproduct',149          rtrim(@uid_accproduct))150        EXEC QBM_PJobCreate_HOUpdate_B N 'ITShopOrg',151          @whereclauseOrg,152          @GenProcID,153          @p1 = 'uid_ACCProduct',154          @v1 = @uid_accproduct,155          @AdditionalObjectKeysAffected = DEFAULT156        SELECT @ElementIndex += 1157      END158    END159    IF160    UPDATE(UID_AccProduct)161    BEGIN162      DECLARE @RecalcParameter_OA QBM_YCursorBuffer163      INSERT INTO @RecalcParameter_OA(UID1,164      ObjectKey1,165      Ident1)166      SELECT167        'QER-PWODecisionRule-OA',168        a.XObjectKey,169        'I'170      FROM inserted i171      JOIN QERResource g172        ON i.UID_QERResource = g.UID_QERResource173      JOIN QERAccProductUsage u174        ON g.XObjectKey = u.XObjectKey175      JOIN AccProduct a176        ON u.UID_AccProduct = a.UID_AccProduct177      UNION178      SELECT179        'QER-PWODecisionRule-OA',180        a.XObjectKey,181        'I'182      FROM deleted d183      JOIN QERResource g184        ON d.UID_QERResource = g.UID_QERResource185      JOIN QERAccProductUsage u186        ON g.XObjectKey = u.XObjectKey187      JOIN AccProduct a188        ON u.UID_AccProduct = a.UID_AccProduct189      EXEC QER_PITShopHelperFill_Recalc @RecalcParameter_OA,190        @GenprocID191      DECLARE @RecalcParameter_OA2 QBM_YCursorBuffer192      INSERT INTO @RecalcParameter_OA2(UID1,193      ObjectKey1,194      Ident1)195      SELECT196        'QER-PWODecisionRule-OA',197        pwo.XObjectKey,198        'I'199      FROM inserted i200      JOIN QERResource g201        ON i.UID_QERResource = g.UID_QERResource202      JOIN AccProduct a203        ON i.UID_AccProduct = a.UID_AccProduct204      JOIN PersonWantsOrg pwo205        ON g.XObjectKey = pwo.ObjectKeyElementUsedInAssign206      UNION207      SELECT208        'QER-PWODecisionRule-OA',209        pwo.XObjectKey,210        'I'211      FROM deleted d212      JOIN QERResource g213        ON d.UID_QERResource = g.UID_QERResource214      JOIN AccProduct a215        ON d.UID_AccProduct = a.UID_AccProduct216      JOIN PersonWantsOrg pwo217        ON g.XObjectKey = pwo.ObjectKeyElementUsedInAssign218      EXEC QER_PITShopHelperFill_Recalc @RecalcParameter_OA2,219        @GenprocID220    END221  END TRY222  BEGIN CATCH223    EXEC QBM_PSessionErrorAdd DEFAULT224    RAISERROR('',225    18,226    1)227      WITH NOWAIT228  END CATCH229  ende:230  RETURN231END
Open raw exported source
SQL ยท Raw41 lines
1 create   trigger QER_TUQERResource on QERResource  for Update not for Replication as begin  declare @ObjectkeyOrdered varchar(138) declare @UID_AccProduct2 varchar(38) declare @whereclauseOrg nvarchar(max) declare @whereclauseMuster nvarchar(max) = ' UID_ITShopOrg in ( select UID_OrgPR 3							from QER_VPWOProductNodesSlim4							where ObjectkeyOrdered = ''@ObjectkeyOrdered'' 5								and isnull(UID_AccProduct, '''') <> ''@UID_AccProduct''6					)7'8 declare @ElementBuffer QBM_YCursorBuffer declare @ElementCount int declare @ElementIndex int BEGIN TRY if exists (select top 1 1 from inserted) goto start9 if exists (select top 1 1 from deleted) goto start return start: declare @GenProcID varchar(38) select @GenProcID = dbo.QBM_FGISessionContext('') if update10(isForITShop) or update(isITShopOnly) begin declare @FlagTest QBM_YParameterlist insert into @FlagTest(Parameter1, Parameter2, HasContentFull, e.Parameter311) select i.UID_QERResource, i.XObjectKey, i.IsForITShop, dbo.QBM_FCVBigIntToString(i.IsITShopOnly) from inserted i exec QER_PIsForITShopFlagCheck 'QERResource'12, @FlagTest end  if update(IsNoInheriteToSecurityIncident) begin declare @DBQueueElements_01 QBM_YDBQueueRaw insert into @DBQueueElements_01 (object, subobject13, genprocid) select x.uid, null, @GenProcID from ( select distinct phr.UID_Person as uid from QERResource v join deleted d on d.uid_QERResource = v.UID_QERResource14 join PersonHasQERResource phr on phr.UID_QERResource = v.UID_QERResource and phr.XOrigin > 0  where (d.IsNoInheriteToSecurityIncident = 1 and v.IsNoInheriteToSecurityIncident15 = 0 and phr.XIsInEffect = 0 ) or (d.IsNoInheriteToSecurityIncident = 0 and v.IsNoInheriteToSecurityIncident = 1 and phr.XIsInEffect = 1 ) ) as x exec 16QBM_PDBQueueInsert_Bulk 'QER-K-PersonHasQERResource', @DBQueueElements_01 end if update(UID_QERResourcePredecessor) begin declare @DBQueueElements_02 QBM_YDBQueueRaw17 insert into @DBQueueElements_02 (object, subobject, genprocid) select x.uid, null, @GenProcID from ( select distinct phr.UID_Person as uid from QERResource18 v join deleted d on d.uid_QERResource = v.UID_QERResource and isnull(v.UID_QERResourcePredecessor, '') <> ISNULL(d.UID_QERResourcePredecessor, '') join19 PersonHasQERResource phr on phr.UID_QERResource = v.UID_QERResource and phr.XOrigin > 0  ) as x exec QBM_PDBQueueInsert_Bulk 'QER-K-PersonHasQERResource'20, @DBQueueElements_02 declare @DBQueueElements_03 QBM_YDBQueueRaw insert into @DBQueueElements_03 (object, subobject, genprocid) select x.uid, null, @GenProcID21 from ( select distinct phr.UID_org as uid from QERResource v join deleted d on d.uid_QERResource = v.UID_QERResource and isnull(v.UID_QERResourcePredecessor22, '') <> ISNULL(d.UID_QERResourcePredecessor, '') join BaseTreeHasQERResource phr on phr.UID_QERResource = v.UID_QERResource and phr.XOrigin > 0  ) as 23x exec QBM_PDBQueueInsert_Bulk 'QER-K-OrgHasQERResource', @DBQueueElements_03 end if update(uid_accproduct) begin insert into @ElementBuffer(ObjectKey124, UID1) select x.XObjectKey, isnull(x.uid_accproduct,'') from QERResource x join deleted d on x.uid_QERResource = d.uid_QERResource and isnull(x.uid_accproduct25,'') <> isnull(d.uid_accproduct,'')  and d.uid_accproduct > ' '  join dialogColumn c on c.UID_DialogTable = 'QER-T-ITShopOrg' and c.columnname = 'uid_ACCProduct'26 and c.IsDeactivatedByPreProcessor = 0  select @ElementCount = @@ROWCOUNT select @ElementIndex = 1 while @ElementIndex <= @ElementCount begin select top27 1 @ObjectkeyOrdered = bu.ObjectKey1 , @UID_AccProduct = bu.UID1 from @ElementBuffer bu where bu.ElementIndex = @ElementIndex select @whereclauseOrg = 28@whereclauseMuster select @whereclauseOrg = replace(@whereclauseOrg, N'@ObjectkeyOrdered' , @ObjectkeyOrdered) select @whereclauseOrg = replace(@whereclauseOrg29, N'@uid_accproduct' , rtrim(@uid_accproduct))    exec QBM_PJobCreate_HOUpdate_B N'ITShopOrg', @whereclauseOrg, @GenProcID , @p1 = 'uid_ACCProduct', @v130 = @uid_accproduct , @AdditionalObjectKeysAffected = DEFAULT select @ElementIndex += 1 end  end  if update (UID_AccProduct) begin declare @RecalcParameter_OA31 QBM_YCursorBuffer insert into @RecalcParameter_OA (UID1, ObjectKey1, Ident1) select 'QER-PWODecisionRule-OA', a.XObjectKey, 'I' from inserted i join QERResource32 g on i.UID_QERResource = g.UID_QERResource join QERAccProductUsage u on g.XObjectKey = u.XObjectKey join AccProduct a on u.UID_AccProduct = a.UID_AccProduct33 union select 'QER-PWODecisionRule-OA', a.XObjectKey, 'I' from deleted d join QERResource g on d.UID_QERResource = g.UID_QERResource join QERAccProductUsage34 u on g.XObjectKey = u.XObjectKey join AccProduct a on u.UID_AccProduct = a.UID_AccProduct exec QER_PITShopHelperFill_Recalc @RecalcParameter_OA, @GenprocID35 declare @RecalcParameter_OA2 QBM_YCursorBuffer insert into @RecalcParameter_OA2 (UID1, ObjectKey1, Ident1) select 'QER-PWODecisionRule-OA', pwo.XObjectKey36, 'I' from inserted i join QERResource g on i.UID_QERResource = g.UID_QERResource join AccProduct a on i.UID_AccProduct = a.UID_AccProduct join PersonWantsOrg37 pwo on g.XObjectKey = pwo.ObjectKeyElementUsedInAssign union select 'QER-PWODecisionRule-OA', pwo.XObjectKey, 'I' from deleted d join QERResource g on38 d.UID_QERResource = g.UID_QERResource join AccProduct a on d.UID_AccProduct = a.UID_AccProduct join PersonWantsOrg pwo on g.XObjectKey = pwo.ObjectKeyElementUsedInAssign39 exec QER_PITShopHelperFill_Recalc @RecalcParameter_OA2, @GenprocID end  END TRY BEGIN CATCH exec QBM_PSessionErrorAdd default RAISERROR ('', 18, 1) WITH40 NOWAIT END CATCH ende: return end 41