[Home] [Help]
67: -- -----------------------------------------------------
68: procedure CREATE_EVENTS_SNAPSHOT (p_worker_id in number) is
69:
70: cursor events (p_worker_id in number) is
71: select /*+ ordered index(log PA_PJI_PROJ_EVENTS_LOG_N1) */
72: distinct
73: log.ROWID LOG_ROWID,
74: log.EVENT_TYPE,
75: log.EVENT_ID,
101: log.ATTRIBUTE19,
102: log.ATTRIBUTE20
103: from
104: PJI_PJP_PROJ_BATCH_MAP map,
105: PA_PJI_PROJ_EVENTS_LOG log,
106: PA_RBS_VERSIONS_B ver
107: where
108: map.WORKER_ID = p_worker_id and
109: log.EVENT_TYPE in (-- 'WBS_CHANGE', -- disable bulk processing
112: 'RBS_PRG') and
113: log.ATTRIBUTE1 = map.PROJECT_ID and
114: log.EVENT_OBJECT = ver.RBS_VERSION_ID (+)
115: union all
116: select /*+ ordered index(log PA_PJI_PROJ_EVENTS_LOG_N1) */
117: distinct
118: log.ROWID LOG_ROWID,
119: log.EVENT_TYPE,
120: log.EVENT_ID,
143: log.ATTRIBUTE19,
144: log.ATTRIBUTE20
145: from
146: PJI_PJP_PROJ_BATCH_MAP map,
147: PA_PJI_PROJ_EVENTS_LOG log
148: where
149: map.WORKER_ID = p_worker_id and
150: log.EVENT_TYPE = 'PRG_CHANGE' and
151: log.EVENT_OBJECT = -1 and
151: log.EVENT_OBJECT = -1 and
152: log.ATTRIBUTE1 = map.PROJECT_ID;
153:
154: cursor prg_change_events (p_worker_id in number) is
155: select /*+ index(log PA_PJI_PROJ_EVENTS_LOG_N1) */
156: log.ROWID LOG_ROWID,
157: log.EVENT_TYPE,
158: log.EVENT_ID,
159: log.EVENT_OBJECT,
180: log.ATTRIBUTE18,
181: log.ATTRIBUTE19,
182: log.ATTRIBUTE20
183: from
184: PA_PJI_PROJ_EVENTS_LOG log,
185: (
186: select /*+ ordered index(ver PA_PROJ_ELEMENT_VERSIONS_N3) */
187: distinct
188: ver.PRG_GROUP
200: map.PRG_GROUP in (log.EVENT_OBJECT, log.ATTRIBUTE1);
201:
202: cursor rbs_push_events (p_worker_id in number,
203: p_rbs_header_id in number) is
204: select /*+ index(log PA_PJI_PROJ_EVENTS_LOG_N1) */
205: distinct
206: log.ROWID LOG_ROWID,
207: log.EVENT_TYPE,
208: log.EVENT_ID,
230: log.ATTRIBUTE18, -- push chain flag
231: log.ATTRIBUTE19, -- project id
232: ver.RBS_HEADER_ID ATTRIBUTE20 -- rbs header
233: from
234: PA_PJI_PROJ_EVENTS_LOG log,
235: (
236: select
237: distinct
238: asg.RBS_HEADER_ID,
251: ver.RBS_VERSION_ID in (log.EVENT_OBJECT, log.ATTRIBUTE2);
252:
253: cursor rbs_delete_events (p_worker_id in number,
254: p_rbs_header_id in number) is
255: select /*+ index(log PA_PJI_PROJ_EVENTS_LOG_N1) */
256: distinct
257: log.ROWID LOG_ROWID,
258: log.EVENT_TYPE,
259: log.EVENT_ID,
283: log.ATTRIBUTE20
284: from
285: PJI_PJP_PROJ_BATCH_MAP map,
286: PA_RBS_PRJ_ASSIGNMENTS asg,
287: PA_PJI_PROJ_EVENTS_LOG log
288: where
289: map.WORKER_ID = p_worker_id and
290: asg.PROJECT_ID = map.PROJECT_ID and
291: asg.RBS_HEADER_ID = nvl(p_rbs_header_id,
353: ATTRIBUTE18,
354: ATTRIBUTE19,
355: ATTRIBUTE20
356: )
357: select /*+ ordered index(log PA_PJI_PROJ_EVENTS_LOG_N1)
358: use_hash(log)
359: use_hash(map) */
360: p_worker_id,
361: log.ROWID,
385: log.ATTRIBUTE18,
386: log.ATTRIBUTE19,
387: log.ATTRIBUTE20
388: from
389: PA_PJI_PROJ_EVENTS_LOG log,
390: PJI_PJP_PROJ_BATCH_MAP map
391: where
392: map.WORKER_ID = p_worker_id and
393: log.EVENT_TYPE = 'PRG_CHANGE' and
394: log.EVENT_OBJECT = -1 and
395: log.ATTRIBUTE1 = map.PROJECT_ID;
396:
397: delete
398: from PA_PJI_PROJ_EVENTS_LOG
399: where ROWID in (select LOG_ROWID
400: from PJI_PA_PROJ_EVENTS_LOG
401: where WORKER_ID = p_worker_id);
402:
467: c.ATTRIBUTE20
468: );
469:
470: delete
471: from PA_PJI_PROJ_EVENTS_LOG
472: where ROWID = c.LOG_ROWID;
473:
474: end loop;
475:
538: c.ATTRIBUTE20
539: );
540:
541: delete
542: from PA_PJI_PROJ_EVENTS_LOG
543: where ROWID = c.LOG_ROWID;
544:
545: end loop;
546:
674: end if;
675:
676: --ensure all RBS_ASSOC and RBS_PRG events point to the latest version
677:
678: update PA_PJI_PROJ_EVENTS_LOG log
679: set log.EVENT_OBJECT =
680: (
681: select
682: ver1.RBS_VERSION_ID
799:
800: end if;
801:
802: delete
803: from PA_PJI_PROJ_EVENTS_LOG
804: where ROWID = c.LOG_ROWID;
805:
806: end loop;
807:
872: c.ATTRIBUTE20
873: );
874:
875: delete
876: from PA_PJI_PROJ_EVENTS_LOG
877: where ROWID = c.LOG_ROWID;
878:
879: end loop;
880:
1602: while (SQL%ROWCOUNT > 0) loop
1603:
1604: update PJI_PJP_WBS_HEADER wbs_hdr
1605: set wbs_hdr.WBS_VERSION_ID =
1606: (select /*+ index(log PA_PJI_PROJ_EVENTS_LOG_N1) */
1607: distinct log.ATTRIBUTE2
1608: from PA_PJI_PROJ_EVENTS_LOG log
1609: where log.EVENT_TYPE = 'WBS_PUBLISH' and
1610: log.EVENT_OBJECT = wbs_hdr.WBS_VERSION_ID),
1604: update PJI_PJP_WBS_HEADER wbs_hdr
1605: set wbs_hdr.WBS_VERSION_ID =
1606: (select /*+ index(log PA_PJI_PROJ_EVENTS_LOG_N1) */
1607: distinct log.ATTRIBUTE2
1608: from PA_PJI_PROJ_EVENTS_LOG log
1609: where log.EVENT_TYPE = 'WBS_PUBLISH' and
1610: log.EVENT_OBJECT = wbs_hdr.WBS_VERSION_ID),
1611: wbs_hdr.LAST_UPDATE_DATE = l_last_update_date,
1612: wbs_hdr.LAST_UPDATED_BY = l_last_updated_by,
1617: where map.WORKER_ID = p_worker_id) and
1618: wbs_hdr.PLAN_VERSION_ID = -1 and
1619: wbs_hdr.WBS_VERSION_ID in
1620: (select log.EVENT_OBJECT
1621: from PA_PJI_PROJ_EVENTS_LOG log
1622: where log.EVENT_TYPE = 'WBS_PUBLISH');
1623:
1624: end loop;
1625:
2230: )
2231: select
2232: p_worker_id,
2233: 'PJI_RBS_CHANGE',
2234: PA_PJI_PROJ_EVENTS_LOG_S.NEXTVAL,
2235: c.RBS_VERSION_ID,
2236: 'I',
2237: 'X'
2238: from
2347: )
2348: select
2349: p_worker_id,
2350: 'PJI_RBS_CHANGE',
2351: PA_PJI_PROJ_EVENTS_LOG_S.NEXTVAL,
2352: c.RBS_VERSION_ID,
2353: 'I',
2354: 'X'
2355: from
2424: )
2425: select
2426: p_worker_id,
2427: 'PJI_RBS_CHANGE',
2428: PA_PJI_PROJ_EVENTS_LOG_S.NEXTVAL,
2429: c.RBS_VERSION_ID,
2430: 'I',
2431: 'X'
2432: from
2939: )
2940: select
2941: p_worker_id,
2942: 'PJI_RBS_CHANGE',
2943: PA_PJI_PROJ_EVENTS_LOG_S.NEXTVAL,
2944: c.RBS_VERSION_ID,
2945: 'I',
2946: 'X'
2947: from
9980: wbs_hdr.CB_FLAG = fin_plan.CB_FLAG (+) and
9981: wbs_hdr.CO_FLAG = fin_plan.CO_FLAG (+)
9982: union all
9983: select /*+ ordered
9984: index(log PA_PJI_PROJ_EVENTS_LOG_N2)
9985: index(fpr PJI_FP_XBS_ACCUM_F_N1) */
9986: -- get delta task level amounts from Reporting Lines
9987: to_char(null) LINE_TYPE,
9988: wbs_hdr.WBS_VERSION_ID,
10079: wbs.SIGN * fpr.CUSTOM13 CUSTOM13,
10080: wbs.SIGN * fpr.CUSTOM14 CUSTOM14,
10081: wbs.SIGN * fpr.CUSTOM15 CUSTOM15
10082: from
10083: PA_PJI_PROJ_EVENTS_LOG log,
10084: PJI_PJP_WBS_HEADER wbs_hdr,
10085: PJI_XBS_DENORM_DELTA_T wbs,
10086: PJI_XBS_DENORM prg,
10087: PJI_FP_XBS_ACCUM_F fpr,
10153: (wbs.SUP_LEVEL = 1 and
10154: wbs.SUB_LEVEL = 1))
10155: union all
10156: select /*+ ordered
10157: index(log PA_PJI_PROJ_EVENTS_LOG_N2)
10158: index(fpr PJI_FP_XBS_ACCUM_F_N1) */
10159: -- Baseline reversals and fact amounts (-3 slice)
10160: -- Current Original reversals and fact amounts (-4 slice)
10161: -- Part 1
10508: -3, -1,
10509: -4, -1)
10510: * fpr.CUSTOM15 CUSTOM15
10511: from
10512: PA_PJI_PROJ_EVENTS_LOG log,
10513: PJI_PJP_WBS_HEADER wbs_hdr,
10514: -- Changes done for bug 7354982.
10515: --PJI_XBS_DENORM prg,
10516: PJI_FP_XBS_ACCUM_F fpr,
10547: wbs_hdr.WBS_VERSION_ID = prg.SUP_ID and
10548: prg.struct_version_id is NULL -- added for bug 5882260
10549: union all
10550: select /*+ ordered
10551: index(log PA_PJI_PROJ_EVENTS_LOG_N2)
10552: index(fpr PJI_FP_XBS_ACCUM_F_N1) */
10553: -- Baseline reversals and fact amounts (-3 slice)
10554: -- Current Original reversals and fact amounts (-4 slice)
10555: -- Part 2
10902: -3, -1,
10903: -4, -1)
10904: * fpr.CUSTOM15 CUSTOM15
10905: from
10906: PA_PJI_PROJ_EVENTS_LOG log,
10907: PJI_PJP_WBS_HEADER wbs_hdr,
10908: -- Changes done for bug 7354982.
10909: --PJI_XBS_DENORM prg,
10910: PJI_FP_XBS_ACCUM_F fpr,
13156: wbs_hdr.PLAN_VERSION_ID = -1 and
13157: wbs_hdr.WBS_VERSION_ID = prg.SUP_ID
13158: union all
13159: select /*+ ordered
13160: index(log PA_PJI_PROJ_EVENTS_LOG_N2)
13161: index(fpr PJI_AC_XBR_ACCUM_F_N1) */
13162: -- get delta task level amounts from Reporting Lines
13163: wbs_hdr.WBS_VERSION_ID,
13164: 'LF' RELATIONSHIP_TYPE,
13232: wbs.SIGN * acr.CUSTOM13 CUSTOM13,
13233: wbs.SIGN * acr.CUSTOM14 CUSTOM14,
13234: wbs.SIGN * acr.CUSTOM15 CUSTOM15
13235: from
13236: PA_PJI_PROJ_EVENTS_LOG log,
13237: PJI_PJP_WBS_HEADER wbs_hdr,
13238: PJI_XBS_DENORM_DELTA_T wbs,
13239: PJI_XBS_DENORM prg,
13240: PJI_AC_XBS_ACCUM_F acr,