dbo.QER_ZAllForPersonInBaseTree
Stored ProcedureSQL_STORED_PROCEDURESandbox DB
Interpretation
- Database routine. Review parameters, called procedures, DBQueue inserts, and QBM_PJobCreate helper calls before assuming side effects.
- Object-layer bridge detected through QBM_PJobCreate helper usage.
- DBQueue relation detected. Follow the task procedure and referenced-by list for async processing.
Relations
- HOCallMethod -> personwantsorg.Abort at line 17
- HOCallMethod -> personwantsorg.Abort at line 19
- HOCallMethod -> personwantsorg.Abort at line 24
- HOCallMethod -> personwantsorg.Abort at line 31
- Single DBQueue insert -> QBM-K-Commonrecalculate / QBM_ZRecalculate at line 17
- Bulk DBQueue insert -> QER-K-ShoppingRackPWOHelperPWO-Cfg / QER_ZITShopHelperFill_Cfg at line 17
- Bulk DBQueue insert -> QER-K-PersonCheckDynUser / QER_ZPersonCheckDynUser at line 17
- Bulk DBQueue insert -> QER-K-AllForOnePerson / QER_ZAllForOnePerson at line 17
- Bulk DBQueue insert -> QER-K-PersonHasObject / QER_ZPersonHasObject at line 17
- Bulk DBQueue insert -> QER-K-ShoppingRackMemberDel / QER_ZITShopMemberDelete at line 17
- Bulk DBQueue insert -> QER-K-ShoppingRackPWOHelperPWO-Cfg / QER_ZITShopHelperFill_Cfg at line 19
- Bulk DBQueue insert -> QER-K-PersonCheckDynUser / QER_ZPersonCheckDynUser at line 19
- Bulk DBQueue insert -> QER-K-AllForOnePerson / QER_ZAllForOnePerson at line 19
- Bulk DBQueue insert -> QER-K-PersonHasObject / QER_ZPersonHasObject at line 19
- Bulk DBQueue insert -> QER-K-ShoppingRackMemberDel / QER_ZITShopMemberDelete at line 19
- Bulk DBQueue insert -> QER-K-PersonCheckDynUser / QER_ZPersonCheckDynUser at line 24
- Bulk DBQueue insert -> QER-K-AllForOnePerson / QER_ZAllForOnePerson at line 24
- Bulk DBQueue insert -> QER-K-PersonHasObject / QER_ZPersonHasObject at line 24
- Bulk DBQueue insert -> QER-K-ShoppingRackMemberDel / QER_ZITShopMemberDelete at line 24
- Bulk DBQueue insert -> QER-K-AllForOnePerson / QER_ZAllForOnePerson at line 31
- Bulk DBQueue insert -> QER-K-PersonHasObject / QER_ZPersonHasObject at line 31
- Bulk DBQueue insert -> QER-K-ShoppingRackMemberDel / QER_ZITShopMemberDelete at line 31
- Bulk DBQueue insert -> QER-K-AllForOnePerson / QER_ZAllForOnePerson at line 37
- Bulk DBQueue insert -> QER-K-PersonHasObject / QER_ZPersonHasObject at line 37
- Bulk DBQueue insert -> QER-K-ShoppingRackMemberDel / QER_ZITShopMemberDelete at line 37
- Single DBQueue insert -> QER-K-ShoppingRackPWODecisionMaker / QER_ZITShopDecisionMakerFill at line 37
- Bulk DBQueue insert -> at line 37
- Bulk DBQueue insert -> QER-K-PersonHasObject / QER_ZPersonHasObject at line 38
- Bulk DBQueue insert -> QER-K-ShoppingRackMemberDel / QER_ZITShopMemberDelete at line 38
- Single DBQueue insert -> QER-K-ShoppingRackPWODecisionMaker / QER_ZITShopDecisionMakerFill at line 38
- Bulk DBQueue insert -> at line 38
- Bulk DBQueue insert -> QER-K-ShoppingRackMemberDel / QER_ZITShopMemberDelete at line 42
- Single DBQueue insert -> QER-K-ShoppingRackPWODecisionMaker / QER_ZITShopDecisionMakerFill at line 42
- Bulk DBQueue insert -> at line 42
- Single DBQueue insert -> QER-K-ShoppingRackPWODecisionMaker / QER_ZITShopDecisionMakerFill at line 63
- Bulk DBQueue insert -> at line 63
- Bulk DBQueue insert -> at line 66
- References QBM_PJobCreate*
- References QBM_PJobCreate_HOCallMethod*
- References QBM_PDBQueueInsert_Single
- References QBM_PDBQueueInsert_Bulk
Typed Edges
- calls object method personwantsorg.Abort HOCallMethod -> personwantsorg.Abort at line 17
- queues DBQueue task QBM_ZRecalculate at line 17 Single DBQueue insert -> QBM-K-Commonrecalculate / QBM_ZRecalculate at line 17
- queues DBQueue task QER_ZITShopHelperFill_Cfg at line 17 Bulk DBQueue insert -> QER-K-ShoppingRackPWOHelperPWO-Cfg / QER_ZITShopHelperFill_Cfg at line 17
- queues DBQueue task QER_ZPersonCheckDynUser at line 17 Bulk DBQueue insert -> QER-K-PersonCheckDynUser / QER_ZPersonCheckDynUser at line 17
- queues DBQueue task QER_ZAllForOnePerson at line 17 Bulk DBQueue insert -> QER-K-AllForOnePerson / QER_ZAllForOnePerson at line 17
- queues DBQueue task QER_ZPersonHasObject at line 17 Bulk DBQueue insert -> QER-K-PersonHasObject / QER_ZPersonHasObject at line 17
- queues DBQueue task QER_ZITShopMemberDelete at line 17 Bulk DBQueue insert -> QER-K-ShoppingRackMemberDel / QER_ZITShopMemberDelete at line 17
- queues DBQueue task QER_ZITShopHelperFill_Cfg at line 19 Bulk DBQueue insert -> QER-K-ShoppingRackPWOHelperPWO-Cfg / QER_ZITShopHelperFill_Cfg at line 19
- queues DBQueue task QER_ZPersonCheckDynUser at line 19 Bulk DBQueue insert -> QER-K-PersonCheckDynUser / QER_ZPersonCheckDynUser at line 19
- queues DBQueue task QER_ZAllForOnePerson at line 19 Bulk DBQueue insert -> QER-K-AllForOnePerson / QER_ZAllForOnePerson at line 19
- queues DBQueue task QER_ZPersonHasObject at line 19 Bulk DBQueue insert -> QER-K-PersonHasObject / QER_ZPersonHasObject at line 19
- queues DBQueue task QER_ZITShopMemberDelete at line 19 Bulk DBQueue insert -> QER-K-ShoppingRackMemberDel / QER_ZITShopMemberDelete at line 19
- queues DBQueue task QER_ZPersonCheckDynUser at line 24 Bulk DBQueue insert -> QER-K-PersonCheckDynUser / QER_ZPersonCheckDynUser at line 24
- queues DBQueue task QER_ZAllForOnePerson at line 24 Bulk DBQueue insert -> QER-K-AllForOnePerson / QER_ZAllForOnePerson at line 24
- queues DBQueue task QER_ZPersonHasObject at line 24 Bulk DBQueue insert -> QER-K-PersonHasObject / QER_ZPersonHasObject at line 24
- queues DBQueue task QER_ZITShopMemberDelete at line 24 Bulk DBQueue insert -> QER-K-ShoppingRackMemberDel / QER_ZITShopMemberDelete at line 24
- queues DBQueue task QER_ZAllForOnePerson at line 31 Bulk DBQueue insert -> QER-K-AllForOnePerson / QER_ZAllForOnePerson at line 31
- queues DBQueue task QER_ZPersonHasObject at line 31 Bulk DBQueue insert -> QER-K-PersonHasObject / QER_ZPersonHasObject at line 31
- queues DBQueue task QER_ZITShopMemberDelete at line 31 Bulk DBQueue insert -> QER-K-ShoppingRackMemberDel / QER_ZITShopMemberDelete at line 31
- queues DBQueue task QER_ZAllForOnePerson at line 37 Bulk DBQueue insert -> QER-K-AllForOnePerson / QER_ZAllForOnePerson at line 37
- queues DBQueue task QER_ZPersonHasObject at line 37 Bulk DBQueue insert -> QER-K-PersonHasObject / QER_ZPersonHasObject at line 37
- queues DBQueue task QER_ZITShopMemberDelete at line 37 Bulk DBQueue insert -> QER-K-ShoppingRackMemberDel / QER_ZITShopMemberDelete at line 37
- queues DBQueue task QER_ZITShopDecisionMakerFill at line 37 Single DBQueue insert -> QER-K-ShoppingRackPWODecisionMaker / QER_ZITShopDecisionMakerFill at line 37
- queues DBQueue task at line 37 Bulk DBQueue insert -> at line 37
- queues DBQueue task QER_ZPersonHasObject at line 38 Bulk DBQueue insert -> QER-K-PersonHasObject / QER_ZPersonHasObject at line 38
- queues DBQueue task QER_ZITShopMemberDelete at line 38 Bulk DBQueue insert -> QER-K-ShoppingRackMemberDel / QER_ZITShopMemberDelete at line 38
- queues DBQueue task QER_ZITShopDecisionMakerFill at line 38 Single DBQueue insert -> QER-K-ShoppingRackPWODecisionMaker / QER_ZITShopDecisionMakerFill at line 38
- queues DBQueue task at line 38 Bulk DBQueue insert -> at line 38
- queues DBQueue task QER_ZITShopMemberDelete at line 42 Bulk DBQueue insert -> QER-K-ShoppingRackMemberDel / QER_ZITShopMemberDelete at line 42
- queues DBQueue task QER_ZITShopDecisionMakerFill at line 42 Single DBQueue insert -> QER-K-ShoppingRackPWODecisionMaker / QER_ZITShopDecisionMakerFill at line 42
- queues DBQueue task at line 42 Bulk DBQueue insert -> at line 42
- queues DBQueue task QER_ZITShopDecisionMakerFill at line 63 Single DBQueue insert -> QER-K-ShoppingRackPWODecisionMaker / QER_ZITShopDecisionMakerFill at line 63
- queues DBQueue task at line 63 Bulk DBQueue insert -> at line 63
- queues DBQueue task at line 66 Bulk DBQueue insert -> at line 66
- references source dbo.QBM_FCVElementToObjectKey2 source text reference
- references source dbo.QBM_FCVStringToBit source text reference
- references source dbo.QBM_FGIBitPatternXOrigin source text reference
- references source dbo.QBM_FGIConfigparmValue source text reference
- references source dbo.QER_FGIGenProcIDForPWO source text reference
- references source dbo.QER_FGIOrgRootName source text reference
References
- dbo.QBM_FCVElementToObjectKey2
- dbo.QBM_FCVStringToBit
- dbo.QBM_FGIBitPatternXOrigin
- dbo.QBM_FGIConfigparmValue
- dbo.QER_FGIGenProcIDForPWO
- dbo.QER_FGIOrgRootName
- dbo.QER_FGIPWOStateFinalError
- dbo.QBM_PDBQueueInsert_Bulk
- dbo.QBM_PDBQueueInsert_Single
- dbo.QBM_PJobCreate
- dbo.QBM_PJobCreate_HOCallMethod
- dbo.QBM_PSessionErrorAdd
- dbo.QER_PITShopHelperFill
- dbo.QER_PITShopHelperFill_Recalc
Referenced By
- No direct source references extracted.
Complete Source
1CREATE PROCEDURE QER_ZAllForPersonInBaseTree(2 @SlotNumber int3)4AS5BEGIN6 DECLARE @IsCUNode BIT7 DECLARE @IsOrgNode BIT8 SELECT @IsCUNode = 09 SELECT @IsOrgNode = 010 DECLARE @uid_personwantsorg varchar(38)11 DECLARE @SQLCmd nvarchar(2000)12 DECLARE @BasisObjectKey varchar(138)13 DECLARE @GenProcID varchar(38)14 DECLARE @CfgUseGenProcID BIT = dbo.QBM_FCVStringToBit(dbo.QBM_FGIConfigparmValue('Common\ProcessState\UseGenProcIDFromPWO'))15 DECLARE @BitpatternDynInv int = dbo.QBM_FGIBitPatternXOrigin('|Dynamic|',16 1)17 DECLARE @UID_PWOStateFinalError varchar(38)18 DECLARE @Parameter nvarchar(1000)19 DECLARE @Ident_OrgRoot nvarchar(64)20 DECLARE @EntryAll QBM_YCursorBuffer21 DECLARE @ElementLast int22 DECLARE @ElementCount int23 DECLARE @ElementIndex int24 DECLARE @XUser nvarchar(64) = object_name(@@procid)25 DECLARE @Xdate datetime = getutcdate()26 DECLARE @UID_TaskFollow varchar(38)27 BEGIN TRY28 INSERT INTO @EntryAll(UID1,29 UID2,30 ObjectKey1,31 Bit1,32 UID3,33 Int1)34 SELECT35 cu.UID_Parameter,36 cu.UID_SubParameter,37 pio.XObjectKey,38 sign(len(isnull(pio.UID_Person, ''))) ^1,39 cu.GenProcID,40 isnull(pio.XOrigin,41 0)42 FROM QBMDBQueueCurrent cu43 WITH(readpast)44 LEFT45 OUTER46 JOIN PersonInBaseTree pio47 ON cu.UID_Parameter = pio.UID_Person AND cu.UID_SubParameter = pio.UID_Org AND pio.XOrigin > 048 WHERE49 cu.SlotNumber = @SlotNumber50 UPDATE @EntryAll51 SET ObjectKey1 = dbo.QBM_FCVElementToObjectKey2('PersonIn' +dbo.QER_FGIOrgRootName(b.uid_orgroot),52 'uid_person',53 d.UID1,54 'UID_' + dbo.QER_FGIOrgRootName(b.uid_orgroot),55 b.uid_org)56 FROM @EntryAll d57 JOIN BaseTree b58 ON d.UID2 = b.UID_Org59 WHERE60 d.Bit1 = 161 IF EXISTS(62 SELECT TOP 1 163 FROM @EntryAll pio64 JOIN BaseTree b65 ON pio.UID2 = b.UID_Org66 JOIN DynamicGroup dg67 ON dg.ObjectKeyBaseTree = b.XObjectKey68 JOIN QERDynamicGroupBlackList bl69 ON bl.UID_DynamicGroup = dg.UID_DynamicGroup AND bl.UID_Person = pio.UID1)70 BEGIN71 UPDATE QERDynamicGroupBlackList72 SET IsAssignedByOthers = CASE73 WHEN pio.Bit1 = 1 THEN74 075 WHEN pio.Int1 & @BitpatternDynInv > 0 THEN76 177 ELSE bl.IsAssignedByOthers78 END,79 XDateUpdated = @Xdate,80 XUserUpdated = @XUser81 FROM @EntryAll pio82 JOIN BaseTree b83 ON pio.UID2 = b.UID_Org84 JOIN DynamicGroup dg85 ON dg.ObjectKeyBaseTree = b.XObjectKey86 JOIN QERDynamicGroupBlackList bl87 ON bl.UID_DynamicGroup = dg.UID_DynamicGroup AND bl.UID_Person = pio.UID188 END89 IF EXISTS(90 SELECT TOP 1 191 FROM @EntryAll a92 WHERE93 a.UID2 = 'QER-AEROLE-ITSHOP-INTERVENTION')94 BEGIN95 SELECT TOP 1 @GenProcID = a.UID396 FROM @EntryAll a97 WHERE98 a.UID2 = 'QER-AEROLE-ITSHOP-INTERVENTION'99 EXEC QBM_PDBQueueInsert_Single 'QBM-K-Commonrecalculate',100 'QER-K-ShoppingRackPWOHelperPWO',101 '',102 @GenprocID103 END104 DECLARE @DBQueueElements_01 QBM_YDBQueueRaw105 INSERT INTO @DBQueueElements_01(Object,106 SubObject,107 GenProcID)108 SELECT109 DISTINCT h.UID_PersonWantsOrg,110 '',111 cu.UID3112 FROM @EntryAll cu113 JOIN QERWorkingStep s114 ON s.UID_AERoleFallBack = cu.UID2115 JOIN PWOHelperPWO h116 ON h.UID_QERWorkingStep = s.UID_QERWorkingStep117 IF @@ROWCOUNT > 0118 BEGIN119 EXEC QBM_PDBQueueInsert_Bulk 'QER-K-ShoppingRackPWOHelperPWO-Cfg',120 @DBQueueElements_01121 END122 IF EXISTS(123 SELECT TOP 1 1124 FROM BaseTree b125 JOIN @EntryAll i126 ON b.uid_org = i.UID2127 WHERE128 b.uid_Orgroot = 'QER-V-ITShopOrg' AND b.itShopInfo = 'CU')129 BEGIN130 SELECT @IsCUNode = 1131 END132 IF EXISTS(133 SELECT TOP 1 1134 FROM BaseTree b135 JOIN @EntryAll i136 ON b.uid_org = i.UID2137 WHERE138 (b.uid_orgroot LIKE '____[^V]%'))139 BEGIN140 SELECT @IsOrgNode = 1141 END142 DECLARE @DBQueueElements_02 QBM_YDBQueueRaw143 INSERT INTO @DBQueueElements_02(object,144 subobject,145 genprocid)146 SELECT147 x.uid,148 NULL,149 x.GenProcID150 FROM(151 SELECT152 DISTINCT d.UID1 AS uid,153 d.UID3 AS GenProcID154 FROM @EntryAll d155 JOIN BaseTree b156 ON d.UID2 = b.uid_org157 WHERE158 b.uid_orgroot = 'QER-V-AERole') AS x159 EXEC QBM_PDBQueueInsert_Bulk 'QER-K-PersonCheckDynUser',160 @DBQueueElements_02161 DECLARE @ElementClosing QBM_YCursorBuffer162 INSERT INTO @ElementClosing(UID1,163 ObjectKey1,164 UID2)165 SELECT166 pwo.uid_personwantsorg,167 pwo.XObjectKey,168 dbo.QER_FGIGenProcIDForPWO(pwo.GenProcID,169 x.UID3,170 @CfgUseGenProcID) AS GenProcID171 FROM @EntryAll x172 JOIN Delegation d173 ON d.ObjectKeyDelegated = x.ObjectKey1 AND x.Bit1 = 1174 JOIN personwantsorg pwo175 ON d.uid_personwantsorg = pwo.uid_personwantsorg176 WHERE177 pwo.OrderState IN('Assigned',178 'Granted',179 'New',180 'OrderProduct',181 'OrderProlongate',182 'OrderUnsubscribe',183 'Waiting')184 SELECT @ElementCount = @@ROWCOUNT185 SELECT @ElementIndex = @@IDENTITY - @ElementCount +1186 SELECT @ElementLast = @@IDENTITY187 WHILE @ElementIndex <= @ElementLast188 BEGIN189 SELECT190 TOP 1 @uid_personwantsorg = bu.UID1,191 @BasisObjectKey = bu.ObjectKey1,192 @GenProcID = bu.UID2193 FROM @ElementClosing bu194 WHERE195 bu.ElementIndex = @ElementIndex196 SELECT @SQLcmd = N 'uid_personwantsorg = ''' + rtrim(@uid_personwantsorg) + N ''''197 SELECT @UID_PWOStateFinalError = dbo.QER_FGIPWOStateFinalError(@UID_PersonWantsOrg)198 EXEC QBM_PJobCreate_HOCallMethod @objecttype = 'personwantsorg',199 @whereclause = @SQLcmd,200 @save = 1,201 @MethodName = 'Abort',202 @GenProcID = @GenprocID,203 @ObjectKeysAffected = DEFAULT,204 @param1 = '#LDS#Closing delegation because its source was was deleted.|',205 @Param2 = @UID_PWOStateFinalError,206 @Retries = 3,207 @isToFreezeOnError = 1,208 @WhereClauseAdditional = ' OrderState in (''Assigned'', ''Granted'', ''New'', ''OrderProduct'', ''OrderProlongate'', ''OrderUnsubscribe'', ''Waiting'')'209 ,210 @BasisObjectKey = @BasisObjectKey,211 @checkForExisting = 1212 SELECT @ElementIndex += 1213 END214 DECLARE @DBQueueElements_03 QBM_YDBQueueRaw215 INSERT INTO @DBQueueElements_03(object,216 subobject,217 genprocid)218 SELECT219 x.uid,220 NULL,221 x.GenProcID222 FROM(223 SELECT224 DISTINCT d.UID1 AS uid,225 d.UID3 AS GenProcID226 FROM @EntryAll d227 LEFT228 OUTER229 JOIN BaseTree b230 ON d.UID2 = b.uid_org231 WHERE232 isnull(b.uid_orgroot, '') <> 'CPL-V-NonCompliance' AND isnull(b.IsNoInheriteToPerson, 0) = 0) AS x233 EXEC QBM_PDBQueueInsert_Bulk 'QER-K-AllForOnePerson',234 @DBQueueElements_03235 DECLARE @DBQueueElements_04 QBM_YDBQueueRaw236 INSERT INTO @DBQueueElements_04(object,237 subobject,238 genprocid)239 SELECT240 x.uid,241 NULL,242 x.GenProcID243 FROM(244 SELECT245 DISTINCT d.UID1 AS uid,246 d.UID3 AS GenProcID247 FROM @EntryAll d) AS x248 EXEC QBM_PDBQueueInsert_Bulk 'QER-K-PersonHasObject',249 @DBQueueElements_04250 IF @IsCUNode = 1251 BEGIN252 DECLARE @DBQueueElements_05 QBM_YDBQueueRaw253 INSERT INTO @DBQueueElements_05(object,254 subobject,255 genprocid)256 SELECT257 x.uid,258 x.subobject,259 x.GenProcID260 FROM(261 SELECT262 DISTINCT pio.UID1 AS uid,263 o.uid_parentorg AS subobject,264 pio.UID3 AS GenProcID265 FROM @EntryAll pio266 JOIN BaseTree o267 ON pio.UID2 = o.uid_Org AND o.ITShopInfo = 'CU' AND o.uid_orgroot = 'QER-V-ITShopOrg' AND pio.Bit1 = 1) AS x268 EXEC QBM_PDBQueueInsert_Bulk 'QER-K-ShoppingRackMemberDel',269 @DBQueueElements_05270 END271 DECLARE @ElementNacharbeit QBM_YCursorBuffer272 DECLARE @ObjectKeyOrg varchar(138)273 INSERT INTO @ElementNacharbeit(Ident1,274 UID3,275 ObjectKey1)276 SELECT277 DISTINCT dbo.QER_FGIOrgRootName(b.UID_OrgRoot),278 p.UID3,279 b.XObjectKey280 FROM @EntryAll p281 JOIN BaseTree b282 ON p.UID2 = b.UID_Org283 SELECT @ElementCount = @@ROWCOUNT284 SELECT @ElementIndex = @@IDENTITY - @ElementCount +1285 SELECT @ElementLast = @@IDENTITY286 WHILE @ElementIndex <= @ElementLast287 BEGIN288 SELECT289 TOP 1 @Ident_OrgRoot = bu.Ident1,290 @GenProcID = bu.UID3,291 @ObjectKeyOrg = bu.ObjectKey1292 FROM @ElementNacharbeit bu293 WHERE294 bu.ElementIndex = @ElementIndex295 DECLARE @RecalcParameter_01 QBM_YCursorBuffer296 INSERT INTO @RecalcParameter_01(UID1,297 ObjectKey1,298 Ident1)299 SELECT300 'QER-PWODecisionRule-OR',301 @ObjectKeyOrg,302 'I'303 EXEC QER_PITShopHelperFill_Recalc @RecalcParameter_01,304 @GenprocID305 IF @Ident_OrgRoot = 'AERole'306 BEGIN307 DECLARE @RecalcParameter_02 QBM_YCursorBuffer308 INSERT INTO @RecalcParameter_02(UID1,309 ObjectKey1,310 Ident1)311 SELECT312 'QER-PWODecisionRule-OA',313 @ObjectKeyOrg,314 'I'315 UNION316 SELECT317 'TSB-PWODecisionRule-TO',318 @ObjectKeyOrg,319 'I'320 UNION321 SELECT322 'AOB-PWODecisionRule-BA',323 @ObjectKeyOrg,324 'I'325 UNION326 SELECT327 'AOB-PWODecisionRule-BE',328 @ObjectKeyOrg,329 'I'330 UNION331 SELECT332 'ARS-ITShopRule-KA',333 @ObjectKeyOrg,334 'I'335 UNION336 SELECT337 'ARS-ITShopRule-PA',338 @ObjectKeyOrg,339 'I'340 UNION341 SELECT342 'PAG-PWODecisionRule-PG',343 @ObjectKeyOrg,344 'I'345 UNION346 SELECT347 'QER-PWODecisionRule-DI',348 @ObjectKeyOrg,349 'I'350 UNION351 SELECT352 'QER-PWODecisionRule-DR',353 @ObjectKeyOrg,354 'I'355 UNION356 SELECT357 'QER-PWODecisionRule-ID',358 @ObjectKeyOrg,359 'I'360 UNION361 SELECT362 'QER-PWODecisionRule-IL',363 @ObjectKeyOrg,364 'I'365 UNION366 SELECT367 'QER-PWODecisionRule-IP',368 @ObjectKeyOrg,369 'I'370 UNION371 SELECT372 'QER-PWODecisionRule-PI',373 @ObjectKeyOrg,374 'I'375 UNION376 SELECT377 'QER-PWODecisionRule-PR',378 @ObjectKeyOrg,379 'I'380 UNION381 SELECT382 'QER-PWODecisionRule-RD',383 @ObjectKeyOrg,384 'I'385 UNION386 SELECT387 'QER-PWODecisionRule-RL',388 @ObjectKeyOrg,389 'I'390 UNION391 SELECT392 'QER-PWODecisionRule-RP',393 @ObjectKeyOrg,394 'I'395 UNION396 SELECT397 'QER-PWODecisionRule-OX',398 @ObjectKeyOrg,399 'I'400 EXEC QER_PITShopHelperFill_Recalc @RecalcParameter_02,401 @GenprocID402 END403 IF @Ident_OrgRoot = 'Department'404 BEGIN405 DECLARE @RecalcParameter_03 QBM_YCursorBuffer406 INSERT INTO @RecalcParameter_03(UID1,407 ObjectKey1,408 Ident1)409 SELECT410 'QER-PWODecisionRule-DI',411 @ObjectKeyOrg,412 'I'413 UNION414 SELECT415 'QER-PWODecisionRule-DR',416 @ObjectKeyOrg,417 'I'418 UNION419 SELECT420 'QER-PWODecisionRule-ID',421 @ObjectKeyOrg,422 'I'423 EXEC QER_PITShopHelperFill_Recalc @RecalcParameter_03,424 @GenprocID425 END426 IF @Ident_OrgRoot = 'ProfitCenter'427 BEGIN428 DECLARE @RecalcParameter_04 QBM_YCursorBuffer429 INSERT INTO @RecalcParameter_04(UID1,430 ObjectKey1,431 Ident1)432 SELECT433 'QER-PWODecisionRule-IP',434 @ObjectKeyOrg,435 'I'436 UNION437 SELECT438 'QER-PWODecisionRule-PI',439 @ObjectKeyOrg,440 'I'441 UNION442 SELECT443 'QER-PWODecisionRule-PR',444 @ObjectKeyOrg,445 'I'446 EXEC QER_PITShopHelperFill_Recalc @RecalcParameter_04,447 @GenprocID448 END449 IF @Ident_OrgRoot = 'Locality'450 BEGIN451 DECLARE @RecalcParameter_05 QBM_YCursorBuffer452 INSERT INTO @RecalcParameter_05(UID1,453 ObjectKey1,454 Ident1)455 SELECT456 'QER-PWODecisionRule-IL',457 @ObjectKeyOrg,458 'I'459 EXEC QER_PITShopHelperFill_Recalc @RecalcParameter_05,460 @GenprocID461 END462 SELECT @ElementIndex += 1463 END464 IF @IsOrgNode = 1465 BEGIN466 IF EXISTS(467 SELECT TOP 1 1468 FROM @EntryAll p469 JOIN BaseTree b470 ON p.UID2 = b.UID_Org471 JOIN pwodecisionstep s472 ON b.XObjectKey = s.ObjectKeyOfAssignedOrg)473 BEGIN474 EXEC QBM_PDBQueueInsert_Single 'QER-K-ShoppingRackPWODecisionMaker',475 '',476 '',477 @GenprocID478 END479 END480 DECLARE @DBQueueElements_06 QBM_YDBQueueRaw481 INSERT INTO @DBQueueElements_06(object,482 subobject,483 genprocid)484 SELECT485 x.uid,486 x.subobject,487 x.GenProcID488 FROM(489 SELECT490 DISTINCT pio.UID1 AS uid,491 NULL AS subobject,492 pio.UID3 AS GenProcID493 FROM @EntryAll pio494 WHERE495 EXISTS(496 SELECT TOP 1 1497 FROM BaseTree o498 WHERE499 o.UID_AERoleManager = pio.UID2)) AS x500 SELECT @UID_TaskFollow = 'QER-K-HelperHeadOrg'501 EXEC QBM_PDBQueueInsert_Bulk @UID_TaskFollow,502 @DBQueueElements_06503 END TRY504 BEGIN CATCH505 EXEC QBM_PSessionErrorAdd DEFAULT506 RAISERROR('',507 18,508 1)509 WITH NOWAIT510 END CATCH511END
Open raw exported source
1 create procedure QER_ZAllForPersonInBaseTree (@SlotNumber int) as begin declare @IsCUNode bit declare @IsOrgNode bit select @IsCUNode = 20 select @IsOrgNode = 0 declare @uid_personwantsorg varchar(38) declare @SQLCmd nvarchar(2000) declare @BasisObjectKey varchar(138) declare @GenProcID 3varchar(38) declare @CfgUseGenProcID bit = dbo.QBM_FCVStringToBit(dbo.QBM_FGIConfigparmValue('Common\ProcessState\UseGenProcIDFromPWO')) declare @BitpatternDynInv4 int = dbo.QBM_FGIBitPatternXOrigin('|Dynamic|', 1) declare @UID_PWOStateFinalError varchar(38) declare @Parameter nvarchar(1000) declare @Ident_OrgRoot5 nvarchar(64) declare @EntryAll QBM_YCursorBuffer declare @ElementLast int declare @ElementCount int declare @ElementIndex int declare @XUser nvarchar6(64) = object_name(@@procid) declare @Xdate datetime = getutcdate() declare @UID_TaskFollow varchar(38) BEGIN TRY insert into @EntryAll (UID1 , UID2 7 , ObjectKey1 , Bit1 , UID3 , Int1 ) select cu.UID_Parameter, cu.UID_SubParameter, pio.XObjectKey, sign(len(isnull(pio.UID_Person, ''))) ^1, cu.GenProcID8 , isnull(pio.XOrigin, 0) from QBMDBQueueCurrent cu with (readpast) left outer join PersonInBaseTree pio on cu.UID_Parameter = pio.UID_Person and cu.UID_SubParameter9 = pio.UID_Org and pio.XOrigin > 0 where cu.SlotNumber = @SlotNumber update @EntryAll set ObjectKey1 = dbo.QBM_FCVElementToObjectKey2('PersonIn'+dbo.QER_FGIOrgRootName10(b.uid_orgroot), 'uid_person', d.UID1 , 'UID_' + dbo.QER_FGIOrgRootName(b.uid_orgroot) , b.uid_org) from @EntryAll d join BaseTree b on d.UID2 = b.UID_Org11 where d.Bit1 = 1 if exists (select top 1 1 from @EntryAll pio join BaseTree b on pio.UID2 = b.UID_Org join DynamicGroup dg on dg.ObjectKeyBaseTree12 = b.XObjectKey join QERDynamicGroupBlackList bl on bl.UID_DynamicGroup = dg.UID_DynamicGroup and bl.UID_Person = pio.UID1 ) begin update QERDynamicGroupBlackList13 set IsAssignedByOthers = case when pio.Bit1 = 1 then 0 when pio.Int1 & @BitpatternDynInv > 0 then 1 else bl.IsAssignedByOthers end , XDateUpdated =14 @Xdate , XUserUpdated = @XUser from @EntryAll pio join BaseTree b on pio.UID2 = b.UID_Org join DynamicGroup dg on dg.ObjectKeyBaseTree = b.XObjectKey15 join QERDynamicGroupBlackList bl on bl.UID_DynamicGroup = dg.UID_DynamicGroup and bl.UID_Person = pio.UID1 end if exists (select top 1 1 from @EntryAll16 a where a.UID2 = 'QER-AEROLE-ITSHOP-INTERVENTION' ) begin select top 1 @GenProcID = a.UID3 from @EntryAll a where a.UID2 = 'QER-AEROLE-ITSHOP-INTERVENTION'17 exec QBM_PDBQueueInsert_Single 'QBM-K-Commonrecalculate', 'QER-K-ShoppingRackPWOHelperPWO', '', @GenprocID end declare @DBQueueElements_01 QBM_YDBQueueRaw18 insert into @DBQueueElements_01(Object, SubObject, GenProcID) select distinct h.UID_PersonWantsOrg, '', cu.UID3 from @EntryAll cu join QERWorkingStep19 s on s.UID_AERoleFallBack = cu.UID2 join PWOHelperPWO h on h.UID_QERWorkingStep = s.UID_QERWorkingStep if @@ROWCOUNT > 0 begin exec QBM_PDBQueueInsert_Bulk20 'QER-K-ShoppingRackPWOHelperPWO-Cfg', @DBQueueElements_01 end if exists (select top 1 1 from BaseTree b join @EntryAll i on b.uid_org = i.UID2 21 where b.uid_Orgroot = 'QER-V-ITShopOrg' and b.itShopInfo = 'CU' ) begin select @IsCUNode = 1 end if exists (select top 1 1 from BaseTree b join @EntryAll22 i on b.uid_org = i.UID2 where (b.uid_orgroot like '____[^V]%' ) ) begin select @IsOrgNode = 1 end declare @DBQueueElements_02 QBM_YDBQueueRaw insert23 into @DBQueueElements_02 (object, subobject, genprocid) select x.uid, null, x.GenProcID from ( select distinct d.UID1 as uid, d.UID3 as GenProcID 24from @EntryAll d join BaseTree b on d.UID2 = b.uid_org where b.uid_orgroot = 'QER-V-AERole' ) as x exec QBM_PDBQueueInsert_Bulk 'QER-K-PersonCheckDynUser'25, @DBQueueElements_02 declare @ElementClosing QBM_YCursorBuffer insert into @ElementClosing (UID1, ObjectKey1, UID2) select pwo.uid_personwantsorg26, pwo.XObjectKey ,dbo.QER_FGIGenProcIDForPWO(pwo.GenProcID, x.UID3 , @CfgUseGenProcID) as GenProcID from @EntryAll x join Delegation d on d.ObjectKeyDelegated27 = x.ObjectKey1 and x.Bit1 = 1 join personwantsorg pwo on d.uid_personwantsorg = pwo.uid_personwantsorg where pwo.OrderState in ('Assigned', 'Granted'28, 'New', 'OrderProduct', 'OrderProlongate', 'OrderUnsubscribe', 'Waiting') select @ElementCount = @@ROWCOUNT select @ElementIndex = @@IDENTITY - @ElementCount29 +1 select @ElementLast = @@IDENTITY while @ElementIndex <= @ElementLast begin select top 1 @uid_personwantsorg = bu.UID1 , @BasisObjectKey = bu.ObjectKey130 , @GenProcID = bu.UID2 from @ElementClosing bu where bu.ElementIndex = @ElementIndex select @SQLcmd = N'uid_personwantsorg = ''' + rtrim(@uid_personwantsorg31) + N'''' select @UID_PWOStateFinalError = dbo.QER_FGIPWOStateFinalError(@UID_PersonWantsOrg) exec QBM_PJobCreate_HOCallMethod @objecttype = 'personwantsorg'32 , @whereclause = @SQLcmd , @save = 1 , @MethodName = 'Abort' , @GenProcID = @GenprocID , @ObjectKeysAffected = DEFAULT , @param1 = '#LDS#Closing delegation because its source was was deleted.|'33 , @Param2 = @UID_PWOStateFinalError , @Retries = 3 , @isToFreezeOnError = 1 , @WhereClauseAdditional = ' OrderState in (''Assigned'', ''Granted'', ''New'', ''OrderProduct'', ''OrderProlongate'', ''OrderUnsubscribe'', ''Waiting'')'34 , @BasisObjectKey = @BasisObjectKey , @checkForExisting = 1 select @ElementIndex += 1 end declare @DBQueueElements_03 QBM_YDBQueueRaw insert into @DBQueueElements_0335 (object, subobject, genprocid) select x.uid, null, x.GenProcID from ( select distinct d.UID1 as uid, d.UID3 as GenProcID from @EntryAll d left outer36 join BaseTree b on d.UID2 = b.uid_org where isnull(b.uid_orgroot, '') <> 'CPL-V-NonCompliance' and isnull(b.IsNoInheriteToPerson, 0) = 0 ) as x exec37 QBM_PDBQueueInsert_Bulk 'QER-K-AllForOnePerson', @DBQueueElements_03 declare @DBQueueElements_04 QBM_YDBQueueRaw insert into @DBQueueElements_04 (object38, subobject, genprocid) select x.uid, null, x.GenProcID from ( select distinct d.UID1 as uid, d.UID3 as GenProcID from @EntryAll d ) as x exec QBM_PDBQueueInsert_Bulk39 'QER-K-PersonHasObject', @DBQueueElements_04 if @IsCUNode = 1 begin declare @DBQueueElements_05 QBM_YDBQueueRaw insert into @DBQueueElements_05 (object40, subobject, genprocid) select x.uid, x.subobject, x.GenProcID from ( select distinct pio.UID1 as uid, o.uid_parentorg as subobject, pio.UID3 as41 GenProcID from @EntryAll pio join BaseTree o on pio.UID2 = o.uid_Org and o.ITShopInfo = 'CU' and o.uid_orgroot = 'QER-V-ITShopOrg' and pio.Bit1 = 1 42 ) as x exec QBM_PDBQueueInsert_Bulk 'QER-K-ShoppingRackMemberDel', @DBQueueElements_05 end declare @ElementNacharbeit QBM_YCursorBuffer declare @ObjectKeyOrg43 varchar(138) insert into @ElementNacharbeit (Ident1, UID3, ObjectKey1) select distinct dbo.QER_FGIOrgRootName(b.UID_OrgRoot), p.UID3 , b.XObjectKey 44 from @EntryAll p join BaseTree b on p.UID2 = b.UID_Org select @ElementCount = @@ROWCOUNT select @ElementIndex = @@IDENTITY - @ElementCount +1 select45 @ElementLast = @@IDENTITY while @ElementIndex <= @ElementLast begin select top 1 @Ident_OrgRoot = bu.Ident1 , @GenProcID = bu.UID3 , @ObjectKeyOrg = 46bu.ObjectKey1 from @ElementNacharbeit bu where bu.ElementIndex = @ElementIndex declare @RecalcParameter_01 QBM_YCursorBuffer insert into @RecalcParameter_0147 (UID1, ObjectKey1, Ident1) select 'QER-PWODecisionRule-OR', @ObjectKeyOrg, 'I' exec QER_PITShopHelperFill_Recalc @RecalcParameter_01, @GenprocID if @Ident_OrgRoot48 = 'AERole' begin declare @RecalcParameter_02 QBM_YCursorBuffer insert into @RecalcParameter_02 (UID1, ObjectKey1, Ident1) select 'QER-PWODecisionRule-OA'49, @ObjectKeyOrg, 'I' union select 'TSB-PWODecisionRule-TO', @ObjectKeyOrg, 'I' union select 'AOB-PWODecisionRule-BA', @ObjectKeyOrg, 'I' union select 'AOB-PWODecisionRule-BE'50, @ObjectKeyOrg, 'I' union select 'ARS-ITShopRule-KA', @ObjectKeyOrg, 'I' union select 'ARS-ITShopRule-PA', @ObjectKeyOrg, 'I' union select 'PAG-PWODecisionRule-PG'51, @ObjectKeyOrg, 'I' union select 'QER-PWODecisionRule-DI', @ObjectKeyOrg, 'I' union select 'QER-PWODecisionRule-DR', @ObjectKeyOrg, 'I' union select 52'QER-PWODecisionRule-ID', @ObjectKeyOrg, 'I' union select 'QER-PWODecisionRule-IL', @ObjectKeyOrg, 'I' union select 'QER-PWODecisionRule-IP', @ObjectKeyOrg53, 'I' union select 'QER-PWODecisionRule-PI', @ObjectKeyOrg, 'I' union select 'QER-PWODecisionRule-PR', @ObjectKeyOrg, 'I' union select 'QER-PWODecisionRule-RD'54, @ObjectKeyOrg, 'I' union select 'QER-PWODecisionRule-RL', @ObjectKeyOrg, 'I' union select 'QER-PWODecisionRule-RP', @ObjectKeyOrg, 'I' union select 'QER-PWODecisionRule-OX'55, @ObjectKeyOrg, 'I' exec QER_PITShopHelperFill_Recalc @RecalcParameter_02, @GenprocID end if @Ident_OrgRoot = 'Department' begin declare @RecalcParameter_0356 QBM_YCursorBuffer insert into @RecalcParameter_03 (UID1, ObjectKey1, Ident1) select 'QER-PWODecisionRule-DI', @ObjectKeyOrg, 'I' union select 'QER-PWODecisionRule-DR'57, @ObjectKeyOrg, 'I' union select 'QER-PWODecisionRule-ID', @ObjectKeyOrg, 'I' exec QER_PITShopHelperFill_Recalc @RecalcParameter_03, @GenprocID end if58 @Ident_OrgRoot = 'ProfitCenter' begin declare @RecalcParameter_04 QBM_YCursorBuffer insert into @RecalcParameter_04 (UID1, ObjectKey1, Ident1) select59 'QER-PWODecisionRule-IP', @ObjectKeyOrg, 'I' union select 'QER-PWODecisionRule-PI', @ObjectKeyOrg, 'I' union select 'QER-PWODecisionRule-PR', @ObjectKeyOrg60, 'I' exec QER_PITShopHelperFill_Recalc @RecalcParameter_04, @GenprocID end if @Ident_OrgRoot = 'Locality' begin declare @RecalcParameter_05 QBM_YCursorBuffer61 insert into @RecalcParameter_05 (UID1, ObjectKey1, Ident1) select 'QER-PWODecisionRule-IL', @ObjectKeyOrg, 'I' exec QER_PITShopHelperFill_Recalc @RecalcParameter_0562, @GenprocID end select @ElementIndex += 1 end if @IsOrgNode = 1 begin if exists (select top 1 1 from @EntryAll p join BaseTree b on p.UID263 = b.UID_Org join pwodecisionstep s on b.XObjectKey = s.ObjectKeyOfAssignedOrg ) begin exec QBM_PDBQueueInsert_Single 'QER-K-ShoppingRackPWODecisionMaker'64, '', '', @GenprocID end end declare @DBQueueElements_06 QBM_YDBQueueRaw insert into @DBQueueElements_06 (object, subobject, genprocid) select x.uid65, x.subobject, x.GenProcID from ( select distinct pio.UID1 as uid, null as subobject, pio.UID3 as GenProcID from @EntryAll pio where exists (select top66 1 1 from BaseTree o where o.UID_AERoleManager = pio.UID2 ) ) as x select @UID_TaskFollow = 'QER-K-HelperHeadOrg' exec QBM_PDBQueueInsert_Bulk @UID_TaskFollow67, @DBQueueElements_06 END TRY BEGIN CATCH exec QBM_PSessionErrorAdd default RAISERROR ('', 18, 1) WITH NOWAIT END CATCH end 68