DBA Data[Home] [Help]

PACKAGE BODY: APPS.PJI_PROCESS_UTIL

Source


1 package body PJI_PROCESS_UTIL as
2   /* $Header: PJIUT03B.pls 120.27.12020000.3 2013/04/18 05:19:47 rtalakon ship $ */
3 
4   -- Global variables -----------------------------------
5   g_check_step           varchar2(1) := 'Y';
6   /* Added for Bug 10338478 Start */
7   g_worker_id              NUMBER := 1;
8   g_package_name VARCHAR2(100) := 'PJI_PROCESS_UTIL';
9 
10 PROCEDURE EXECUTE_ROLLUP_FPR_RBS(p_worker_id IN NUMBER,
11    p_level IN NUMBER,
12 p_partial_mode IN varchar2,
13 p_fpm_upgrade IN varchar2);
14 
15 PROCEDURE UPDATE_BATCH_CONC_STATUS_420;
16 /* Added for Bug 10338478 End */
17 
18   -- ----------------------------------------------------------
19   -- function SUMMARIZATION_STARTED
20   -- ----------------------------------------------------------
21   function SUMMARIZATION_STARTED
22   (
23     p_stage in varchar2 default 'STAGE1_EXTR'
24   ) return varchar2 is
25 
26     l_permanent_param varchar2(240);
27     l_running_param  varchar2(240);
28 
29     l_stage2_pji_process varchar2(30);
30 
31   begin
32 
33     if (p_stage = 'STAGE1_EXTR') then
34 
35       l_permanent_param := PJI_UTILS.GET_PARAMETER('EXTRACTION_TYPE');
36       l_running_param := PJI_PROCESS_UTIL.GET_PROCESS_PARAMETER
37                          (PJI_FM_SUM_MAIN.g_process, 'TRANSITION');
38 
39       if (l_running_param is not null) then
40 
41         return 'RUNNING';
42 
43       elsif (l_permanent_param is not null) then
44 
45         return 'HAS_RUN';
46 
47       end if;
48 
49     elsif (p_stage = 'STAGE2_PJI') then
50 
51       begin
52 
53         execute immediate 'begin
54                              select PJI_RM_SUM_MAIN.g_process
55                              into   :l_stage2_pji_process
56                              from   DUAL;
57                            end;'
58                 using out l_stage2_pji_process;
59 
60         exception when others then
61 
62           l_stage2_pji_process := null;
63 
64       end;
65 
66       l_permanent_param := PJI_UTILS.GET_PARAMETER('LAST_PJI_EXTR_DATE');
67       l_running_param := PJI_PROCESS_UTIL.GET_PROCESS_PARAMETER
68                          -- Remove dependency on STAGE2_PJI
69                          (l_stage2_pji_process, 'PROCESS_RUNNING');
70                          -- (PJI_RM_SUM_MAIN.g_process, 'PROCESS_RUNNING');
71 
72       if (l_running_param is not null) then
73 
74         return 'RUNNING';
75 
76       elsif (l_permanent_param is not null) then
77 
78         return 'HAS_RUN';
79 
80       end if;
81 
82     elsif (p_stage = 'STAGE3_PJP') then
83 
84       begin
85 
86         select VALUE
87         into   l_permanent_param
88         from   PJI_SYSTEM_PARAMETERS
89         where  NAME like 'LAST_PJP_EXTR_DATE%' and
90                ROWNUM = 1;
91 
92         exception when no_data_found then
93 
94           l_permanent_param := null;
95 
96       end;
97 
98       begin
99 
100         select VALUE
101         into   l_running_param
102         from   PJI_SYSTEM_PARAMETERS
103         where  NAME like PJI_PJP_SUM_MAIN.g_process || '%PROCESS_RUNNING' and
104                ROWNUM = 1;
105 
106         exception when no_data_found then
107 
108           l_running_param := null;
109 
110       end;
111 
112       if (l_running_param is not null) then
113 
114         return 'RUNNING';
115 
116       elsif (l_permanent_param is not null) then
117 
118         return 'HAS_RUN';
119 
120       end if;
121 
122     end if;
123 
124     return 'NOT_STARTED';
125 
126   end SUMMARIZATION_STARTED;
127 
128 
129   -- ----------------------------------------------------------
130   -- function NEED_TO_RUN_STEP
131   --
132   -- This function returns false if the current process
133   -- step has run before, usually within the context of
134   -- a single batch.
135   --
136   -- ----------------------------------------------------------
137   function NEED_TO_RUN_STEP
138   (
139     p_process in varchar2,
140     p_step    in  varchar2
141   ) return boolean is
142 
143     l_status varchar2(1);
144     l_seq    number;
145     l_count  number;
146 	/* Added for bug 13030627 */
147     l_process varchar2(20);
148     l_step    varchar2(100);
149 
150   begin
151   /* Added for bug 13030627 */
152   if PJI_UTILS.GET_PARAMETER('PJP_SIN_PRG') = 'Y' then
153 
154      l_process := p_process;
155      l_step := p_step;
156 
157      if (PJI_PJP_PRG_PERF_ALL.NEED_TO_RUN_STEP(p_process => l_process,p_step => l_step)) then
158          return true;
159      else
160          return false;
161      end if;
162 
163   else
164   /* Added for bug 13030627 */
165 
166     if (g_check_step = 'Y') then
167       null;
168     else
169       return true;
170     end if;
171 
172     select count(*)
173     into   l_count
174     from   PJI_SYSTEM_PRC_STATUS
175     where  PROCESS_NAME = p_process and
176            STEP_NAME    = p_step;
177 
178     if (l_count = 0) then
179       return false;
180     end if;
181 
182     select STEP_STATUS,
183            STEP_SEQ
184     into   l_status,
185            l_seq
186     from   PJI_SYSTEM_PRC_STATUS
187     where  PROCESS_NAME = p_process and
188            STEP_NAME    = p_step;
189 
190     if (l_status = 'C') then -- Step is complete, do not need to run it again.
191       return false;
192     else
193 
194       update PJI_SYSTEM_PRC_STATUS
195       set    START_DATE = sysdate
196       where  PROCESS_NAME = p_process and
197              STEP_NAME    = p_step and
198              START_DATE   is null;
199 
200       -- PJI_UTILS.SET_CURR_FUNCTION(p_process || '$' || to_char(l_seq));
201       PJI_UTILS.WRITE2LOG('Entering ' || p_step || ' for ' || p_process,
202                           true, 0);
203       return true;
204     end if;
205 
206 	end if;
207 
208   end NEED_TO_RUN_STEP;
209 
210 
211   -- ----------------------------------------------------------
212   -- procedure REGISTER_STEP_COMPLETION
213   --
214   -- This utility procedure is called from individual steps.
215   -- Procedure updates process log table with successful
216   -- completion status for a given step.
217   -- ----------------------------------------------------------
218   procedure REGISTER_STEP_COMPLETION
219   (
220     p_process in varchar2,
221     p_step    in varchar2
222   ) is
223 
224   /* Added for bug 13030627 */
225     l_process varchar2(20);
226     l_step    varchar2(100);
227 
228   begin
229 
230    /* Added for bug 13030627 */
231   if PJI_UTILS.GET_PARAMETER('PJP_SIN_PRG') = 'Y' then
232 
233      l_process := p_process;
234      l_step := p_step;
235 
236      PJI_PJP_PRG_PERF_ALL.REGISTER_STEP_COMPLETION
237      (p_process => l_process,
238       p_step => l_step);
239 
240   else
241   /* Added for bug 13030627 */
242 
243     if (g_check_step = 'Y') then
244       null;
245     else
246       return;
247     end if;
248 
249     update PJI_SYSTEM_PRC_STATUS
250     set    STEP_STATUS = 'C',
251            END_DATE = sysdate
252     where  PROCESS_NAME = p_process and
253            STEP_NAME    = p_step;
254 
255     -- PJI_UTILS.RESET_CURR_FUNCTION;
256     PJI_UTILS.WRITE2LOG('Completed ' || p_step || ' for ' || p_process,
257                         true, 0);
258 
259 	end if;
260 
261   end REGISTER_STEP_COMPLETION;
262 
263 
264   -- ----------------------------------------------------------
265   -- procedure CHECK_STEP
266   --
267   -- This utility is for debugging purposes.
268   -- If check step is not set to 'Y' any step can be run in
269   -- the summarization process without looking at
270   -- PJI_SYSTEM_PRC_STATUS to see if the step has run before.
271   -- ----------------------------------------------------------
272   procedure CHECK_STEP (p_check_step in varchar2 default 'Y') is
273 
274   begin
275 
276     if (p_check_step = 'Y') then
277       g_check_step := 'Y';
278     else
279       g_check_step := 'N';
280     end if;
281 
282   end CHECK_STEP;
283 
284 
285   -- ----------------------------------------------------------
286   -- procedure WRAPUP_PROCESS
287   --
288   -- If process completed successfuly, we clean up process
289   -- log table from the step status records.
290   -- ----------------------------------------------------------
291   procedure WRAPUP_PROCESS (p_process in varchar2) is
292   l_process   varchar2(20); /* Added for bug 13030627 */
293 
294   begin
295 
296   /* Added for bug 13030627 */
297   if PJI_UTILS.GET_PARAMETER('PJP_SIN_PRG') = 'Y' then
298 
299      l_process := p_process;
300      PJI_PJP_PRG_PERF_ALL.WRAPUP_PROCESS(p_process  => l_process);
301 
302   else
303   /* Added for bug 13030627 */
304 
305     delete
306     from   PJI_SYSTEM_PRC_STATUS
307     where  PROCESS_NAME = p_process;
308 
309     delete
310     from   PJI_SYSTEM_PARAMETERS
311     where  NAME like p_process || '$%';
312 
313 	end if;
314 
315   end WRAPUP_PROCESS;
316 
317 
318   -- ----------------------------------------------------------
319   -- procedure ADD_STEPS
320   -- ----------------------------------------------------------
321   procedure ADD_STEPS
322   (
323     p_process         in varchar2,
324     p_step_process    in varchar2,
325     p_extraction_type in varchar2
326   ) is
327 
328     l_process               varchar2(30);
329     l_transition_flag       varchar2(1);
330     l_params_proj_perf_flag varchar2(1);
331     l_params_cost_flag      varchar2(1);
332     l_params_profit_flag    varchar2(1);
333     l_params_util_flag      varchar2(1);
334     l_extraction_type       number;
335 
336   begin
337 
338     -- if the step already exists we do not want to update it because it may
339     -- contain error recovery state from the previous iteration
340 
341     l_process := PJI_FM_SUM_MAIN.g_process;
342 
343     l_transition_flag := PJI_PROCESS_UTIL.GET_PROCESS_PARAMETER(l_process,
344                                                                 'TRANSITION');
345 
346     if (l_transition_flag = 'Y') then
347 
348       l_params_proj_perf_flag :=
349      nvl(PJI_PROCESS_UTIL.GET_PROCESS_PARAMETER(l_process,
350                                                 'CONFIG_PROJ_PERF_FLAG'), 'N');
351       l_params_cost_flag :=
352      nvl(PJI_PROCESS_UTIL.GET_PROCESS_PARAMETER(l_process,
353                                                 'CONFIG_COST_FLAG'), 'N');
354       l_params_profit_flag :=
355      nvl(PJI_PROCESS_UTIL.GET_PROCESS_PARAMETER(l_process,
356                                                 'CONFIG_PROFIT_FLAG'), 'N');
357       l_params_util_flag :=
358      nvl(PJI_PROCESS_UTIL.GET_PROCESS_PARAMETER(l_process,
359                                                 'CONFIG_UTIL_FLAG'), 'N');
360 
361     else -- l_transition is null or 'N'
362 
363       l_params_proj_perf_flag :=
364                     nvl(PJI_UTILS.GET_PARAMETER('CONFIG_PROJ_PERF_FLAG'), 'N');
365       l_params_cost_flag :=
366                     nvl(PJI_UTILS.GET_PARAMETER('CONFIG_COST_FLAG'), 'N');
367       l_params_profit_flag :=
368                     nvl(PJI_UTILS.GET_PARAMETER('CONFIG_PROFIT_FLAG'), 'N');
369       l_params_util_flag :=
370                     nvl(PJI_UTILS.GET_PARAMETER('CONFIG_UTIL_FLAG'), 'N');
371 
372     end if;
373 
374     if (p_extraction_type = 'FULL') then
375       l_extraction_type := 1;
376     elsif (p_extraction_type = 'INCREMENTAL') then
377       l_extraction_type := 2;
378     elsif (p_extraction_type = 'PARTIAL') then
379       l_extraction_type := 4;
380     elsif (p_extraction_type = 'RBS') then
381       l_extraction_type := 8;
382     else
383       l_extraction_type := 0;
384     end if;
385 
386     insert into PJI_SYSTEM_PRC_STATUS
387     (
388       PROCESS_NAME,
389       STEP_NAME,
390       STEP_STATUS,
391       STEP_SEQ
392     )
393     select
394       p_process,
395       STEP_NAME,
396       null,
397       STEP_SEQ
398     from
399       PJI_MT_PRC_STEPS
400     where
401       PROCESS_NAME = p_step_process                                       and
402       ((CONFIG_PROJ_PERF_FLAG = 'Y' and l_params_proj_perf_flag = 'Y') or
403        (CONFIG_COST_FLAG      = 'Y' and l_params_cost_flag      = 'Y') or
404        (CONFIG_PROFIT_FLAG    = 'Y' and l_params_profit_flag    = 'Y') or
405        (CONFIG_UTIL_FLAG      = 'Y' and l_params_util_flag      = 'Y') or
406        p_step_process = 'PJI_PJP_FPM_UPGRADE')   and
407       bitand(to_number(STEP_TYPE), l_extraction_type) = l_extraction_type and
408       (STEP_NAME,
409        STEP_SEQ) not in (select STEP_NAME,
410                                 STEP_SEQ
411                          from   PJI_SYSTEM_PRC_STATUS
412                          where  PROCESS_NAME = p_process);
413 
414   end ADD_STEPS;
415 
416 
417   -- ----------------------------------------------------------
418   -- funtion PRIOR_ITERATION_SUCCESSFUL
419   --
420   -- This function returns true if prior load process
421   -- completed successful.
422   -- If prior iteration is successful, process log table
423   -- does not have any records for the process.
424   -- ----------------------------------------------------------
425   function PRIOR_ITERATION_SUCCESSFUL (p_process in varchar2) return boolean is
426 
427     l_count  number;
428 
429   begin
430 
431     select count(*)
432     into   l_count
433     from   PJI_SYSTEM_PRC_STATUS
434     where  PROCESS_NAME = p_process;
435 
436     if (l_count = 0) then
437       return true;
438     else
439       return false;
440     end if;
441 
442   end PRIOR_ITERATION_SUCCESSFUL;
443 
444 
445   -- ----------------------------------------------------------
446   -- procedure GET_PROCESS_PARAMETER
447   -- ----------------------------------------------------------
448   function GET_PROCESS_PARAMETER
449   (
450     p_process   in varchar2,
451     p_parameter in varchar2
452   ) return varchar2 is
453 
454   begin
455 
456     return PJI_UTILS.GET_PARAMETER(p_process || '$' || p_parameter);
457 
458   end;
459 
460   -- ----------------------------------------------------------
461   -- procedure SET_PROCESS_PARAMETER
462   -- ----------------------------------------------------------
463   procedure SET_PROCESS_PARAMETER
464   (
465     p_process   in varchar2,
466     p_parameter in varchar2,
467     p_value     in varchar2
468   ) is
469 
470   begin
471 
472     PJI_UTILS.SET_PARAMETER(p_process || '$' || p_parameter, p_value);
473 
474   end;
475 
476 
477   -- ----------------------------------------------------------
478   -- procedure SLEEP
479   -- ----------------------------------------------------------
480 
481   procedure SLEEP (p_time_in_seconds in number) is
482 
483   begin
484 
485     DBMS_LOCK.SLEEP(p_time_in_seconds);
486 
487   end SLEEP;
488 
489   -- ----------------------------------------------------------
490   -- procedure TRUNC_INT_TABLE
491   -- ----------------------------------------------------------
492   procedure TRUNC_INT_TABLE
493   ( p_schema      in varchar2
494     , p_tablename in varchar2
495     , p_trunc_type in varchar2
496     , p_partition in varchar2
497   ) is
498 
499    l_pji_schema      varchar2(30); /* Added for Bug 13813361 */
500 
501   begin
502 
503     l_pji_schema      := PJI_UTILS.GET_PJI_SCHEMA_NAME; /* Added for Bug 13813361 */
504 
505     IF 1=1  THEN  --  so that this is a controlled feature
506 
507 	IF      (p_trunc_type = 'NORMAL')  THEN
508 
509             execute immediate
510             'truncate table '||p_schema||'.'||p_tablename||' drop storage';
511 
512        ELSIF   (p_trunc_type = 'PARTITION')  THEN
513 	    IF (p_tablename = 'PJI_FP_AGGR_PJP1' OR p_tablename = 'PJI_FP_AGGR_PJP2') THEN   -- Added for bug 13897252
514                /* Added for Bug 13813361 Start */
515 	       FOR ind_lp IN (SELECT table_owner||'.'||index_name ind_name
516                                    , partitioned
517                               FROM   dba_indexes
518                               WHERE  table_name = p_tablename
519 			      AND    table_owner = l_pji_schema) LOOP
520                   IF ind_lp.partitioned = 'YES' THEN
521                      EXECUTE IMMEDIATE 'ALTER INDEX '||ind_lp.ind_name||' MODIFY PARTITION '||p_partition||' UNUSABLE';
522                   ELSE
523                      EXECUTE IMMEDIATE 'ALTER INDEX '||ind_lp.ind_name||' UNUSABLE';
524                   END IF;
525                END LOOP;
526 
527                 execute immediate
528                   'alter table '||p_schema||'.'||p_tablename||' truncate partition '||p_partition||' drop storage update global indexes';
529 
530                FOR ind_lp IN (SELECT table_owner||'.'||index_name  ind_name
531                                    , partitioned
532                               FROM   dba_indexes
533                               WHERE  table_name = p_tablename
534 			      AND    table_owner = l_pji_schema) LOOP
535                   IF ind_lp.partitioned = 'YES' THEN
536                      EXECUTE IMMEDIATE 'ALTER INDEX '||ind_lp.ind_name||' REBUILD PARTITION '||p_partition;
537                   ELSE
538                      EXECUTE IMMEDIATE 'ALTER INDEX '||ind_lp.ind_name||' REBUILD';
539                   END IF;
540                END LOOP;
541                /* Added for Bug 13813361 End */
542             ELSE
543                execute immediate
544                'alter table '||p_schema||'.'||p_tablename||' truncate partition '||p_partition||' drop storage';
545           END IF; /* Added for Bug 10338478 End */
546       END IF;
547 
548     ELSE
549        null;
550     END IF;
551 
552   end TRUNC_INT_TABLE;
553 
554 
555   -- ----------------------------------------------------------
556   -- function WAIT_FOR_STEP
557   --
558   -- This function waits until all applicable workers have
559   -- compeleted p_step.
560   -- ----------------------------------------------------------
561   function WAIT_FOR_STEP
562   (
563     p_process in varchar2,
564     p_step    in varchar2,
565     p_timeout in number,
566     p_exists  in varchar2 default 'ONLY_IF_EXISTS'
567   ) return boolean is
568 
569     l_done         boolean;
570     l_worker_count number;
571 
572     l_stage2_pji_process varchar2(30);
573     l_stage2_pji_running varchar2(30);
574 
575   begin
576 
577     if (p_exists = 'EVEN_IF_NOT_EXISTS') then
578 
579       l_done := false;
580 
581       while not l_done loop
582 
583         select count(*)
584         into   l_worker_count
585         from   PJI_SYSTEM_PRC_STATUS
586         where  PROCESS_NAME like p_process || '%' and
587                STEP_NAME = p_step;
588 
589         if (l_worker_count > 0) then
590           l_done := true;
591         end if;
592 
593       end loop;
594 
595     end if;
596 
597     l_done := false;
598 
599     while not l_done loop
600 
601       select count(*)
602       into   l_worker_count
603       from   PJI_SYSTEM_PRC_STATUS
604       where  PROCESS_NAME like p_process || '%' and
605              STEP_NAME = p_step and
606              STEP_STATUS is null;
607 
608       begin
609 
610         execute immediate 'begin
611                              select PJI_RM_SUM_MAIN.g_process
612                              into   :l_stage2_pji_process
613                              from   DUAL;
614                            end;'
615                 using out l_stage2_pji_process;
616 
617         if (p_process = l_stage2_pji_process) then
618 
619           execute immediate
620             'begin
621                if (PJI_RM_SUM_MAIN.PROCESS_RUNNING(''DO_NOT_WAIT'')) then
622                  :l_stage2_pji_running := ''True'';
623                else
624                  :l_stage2_pji_running := ''False'';
625                end if;
626              end;'
627                   using out l_stage2_pji_running;
628 
629         end if;
630 
631         exception when others then
632 
633           l_stage2_pji_process := null;
634           l_stage2_pji_running := null;
635 
636       end;
637 
638       if (nvl(PJI_PROCESS_UTIL.GET_PROCESS_PARAMETER
639               (p_process, 'PROCESS_RUNNING'), 'F') = 'F') then
640         l_done := true;
641         l_worker_count := -1;
642       -- Remove dependency on STAGE2_PJI
643       elsif (p_process = l_stage2_pji_process and
644              l_stage2_pji_running = 'False') then
645       -- elsif (p_process = PJI_RM_SUM_MAIN.g_process and
646       --        not PJI_RM_SUM_MAIN.PROCESS_RUNNING('DO_NOT_WAIT')) then
647         l_done := true;
648         l_worker_count := -1;
649       elsif (p_process = PJI_FM_SUM_MAIN.g_process and
650              not PJI_FM_SUM_MAIN.PROCESS_RUNNING('DO_NOT_WAIT')) then
651         l_done := true;
652         l_worker_count := -1;
653       elsif (l_worker_count = 0) then
654         l_done := true;
655       else
656         SLEEP(p_timeout);
657       end if;
658 
659     end loop;
660 
661     if (l_worker_count = 0) then
662       return true;
663     else
664       return false;
665     end if;
666 
667   end WAIT_FOR_STEP;
668 
669 
670   -- ----------------------------------------------------------
671   -- procedure CLEAN_HELPER_BATCH_TABLE
672   -- ----------------------------------------------------------
673   procedure CLEAN_HELPER_BATCH_TABLE is
674 
675   begin
676 
677     delete
678     from   PJI_HELPER_BATCH_MAP
679     where  STATUS = 'P';
680 
681     commit;
682 
683   end;
684 
685 
686   -- -----------------------------------------------------
687   -- function REQUEST_STATUS
688   -- -----------------------------------------------------
689   function REQUEST_STATUS
690   (
691     p_mode         in varchar2,
692     p_request_id   in number,
693     p_request_name in varchar2
694   ) return boolean is
695 
696     l_request_id number;
697     l_phase      varchar2(255);
698     l_status     varchar2(255);
699     l_dev_phase  varchar2(255);
700     l_dev_status varchar2(255);
701     l_message    varchar2(255);
702 
703     l_process_id number;
704     l_session_id number;
705     l_count      number;
706 
707   begin
708 
709     if (p_request_id is null) then
710       return false;
711     end if;
712 
713     l_request_id := p_request_id;
714 
715     if (FND_CONCURRENT.GET_REQUEST_STATUS
716         (
717           l_request_id,
718           PJI_UTILS.GET_PJI_SCHEMA_NAME,
719           p_request_name,
720           l_phase,
721           l_status,
722           l_dev_phase,
723           l_dev_status,
724           l_message
725         )) then
726       null;
727     end if;
728 
729     /* possible states
730 
731        PENDING  NORMAL
732                 STANDBY
733                 SCHEDULED
734                 PAUSED
735 
736        RUNNING  NORMAL
737                 WAITING
738                 RESUMING
739                 TERMINATING
740 
741        COMPLETE NORMAL
742                 ERROR
743                 WARNING
744                 CANCELLED
745                 TERMINATED
746 
747        INACTIVE DISABLED
748                 ON_HOLD
749                 NO_MANAGER
750                 SUSPENDED */
751 
752 /*  if (p_mode = 'OKAY') then
753 
754       if ((l_dev_phase = 'RUNNING'  and (l_dev_status = 'TERMINATING')) or
755           (l_dev_phase = 'COMPLETE' and (l_dev_status = 'ERROR' or
756                                          l_dev_status = 'WARNING' or
757                                          l_dev_status = 'CANCELLED' or
758                                          l_dev_status = 'DELETED' or
759                                          l_dev_status = 'TERMINATED'))) then
760         return false;
761       else
762         return true;
763       end if; */
764 /* Start Bug 11796249 */
765     if ( (p_mode = 'OKAY') or ( p_mode = 'OKAY_WARNING') ) then
766 
767         if  ((l_dev_phase = 'RUNNING'  and (l_dev_status = 'TERMINATING')) or
768              (l_dev_phase = 'COMPLETE' and (l_dev_status = 'ERROR' or
769                                          (l_dev_status = 'WARNING'and p_mode ='OKAY') or
770                                           l_dev_status = 'CANCELLED' or
771                                           l_dev_status = 'DELETED' or
772                                           l_dev_status = 'TERMINATED'))) then
773           return false;
774         else
775           return true;
776         end if;
777 /* End Bug 11796249 */
778 
779     elsif (p_mode = 'RUNNING') then
780 
781       if (l_dev_phase = 'PENDING' or
782           l_dev_phase = 'RUNNING' or
783           l_dev_phase = 'INACTIVE') then
784         return true;
785       else
786 
787         begin -- ensure that the underlying database process has completed
788 
789           select
790             ORACLE_PROCESS_ID,
791             ORACLE_SESSION_ID
792           into
793             l_process_id,
794             l_session_id
795           from
796             FND_CONCURRENT_REQUESTS
797           where
798             REQUEST_ID = l_request_id;
799 
800           select
801             count(*)
802           into
803             l_count
804           from
805             V$PROCESS
806           where
807             SPID = l_process_id and
808             ROWNUM = 1;
809 
810           if (l_count > 0) then
811             return true;
812           end if;
813 
814           exception when no_data_found then null;
815 
816         end;
817 
818         return false;
819 
820       end if;
821 
822     end if;
823 
824   end REQUEST_STATUS;
825 
826 
827   -- -----------------------------------------------------
828   -- procedure WAIT_FOR_REQUEST
829   -- -----------------------------------------------------
830   procedure WAIT_FOR_REQUEST
831   (
832     p_request_id in number,
833     p_delay in number
834   ) is
835 
836     l_process    varchar2(30);
837     l_request_id number;
838 
839     l_phase      varchar2(255);
840     l_status     varchar2(255);
841     l_dev_phase  varchar2(255);
842     l_dev_status varchar2(255);
843     l_message    varchar2(255);
844 
845   begin
846 
847     if (p_request_id is null) then
848       return;
849     end if;
850 
851     if (FND_CONCURRENT.WAIT_FOR_REQUEST
852         (
853           p_request_id,
854           p_delay,
855           0, -- wait forever
856           l_phase,
857           l_status,
858           l_dev_phase,
859           l_dev_status,
860           l_message
861         )) then
862       null;
863     end if;
864 
865   end WAIT_FOR_REQUEST;
866 
867 
868   -- ----------------------------------------------------------
869   -- procedure REFRESH_STEP_TABLE
870   -- ----------------------------------------------------------
871   procedure REFRESH_STEP_TABLE is
872 
873     l_count number;
874     l_step_seq number;
875 
876   begin
877 
878     /* We will use bitand logic to determine to which extraction type
879      * a given step applies.
880      *
881      *   1 = 'FULL'        extraction
882      *   2 = 'INCREMENTAL' extraction
883      *   4 = 'PARTIAL'     refresh
884      *   8 = 'RBS'         change processing
885      *  16 =
886      *  32 =
887      *  64 =
888      * 128 =
889      *
890      */
891 
892     select count(*)
893     into   l_count
894     from   PJI_MT_PRC_STEPS
895     where  ROWNUM = 1;
896 
897     if (l_count > 0) then
898       null;
899       -- return;
900     end if;
901 
902     delete from PJI_MT_PRC_STEPS;
903 
904     -- ------------------------------------------------------------------------
905     -- Stage 1 Summarization - Project Intellingence / Performance extraction
906     -- ------------------------------------------------------------------------
907 
908     l_step_seq := 10;
909 
910     insert into PJI_MT_PRC_STEPS
911     (
912       PROCESS_NAME,
913       STEP_NAME,
914       STEP_SEQ,
915       STEP_TYPE,
916       CONFIG_PROJ_PERF_FLAG,
917       CONFIG_COST_FLAG,
918       CONFIG_PROFIT_FLAG,
919       CONFIG_UTIL_FLAG
920     )
921     values
922     (
923       'PJI_EXTR',
924       'PJI_FM_SUM_MAIN.INIT_PROCESS;',
925       l_step_seq,
926       to_char(1 + 2 + 4 + 8), -- generic
927       'Y',
928       'Y',
929       'Y',
930       'Y'
931     );
932 
933     l_step_seq := l_step_seq + 10;
934 
935     insert into PJI_MT_PRC_STEPS
936     (
937       PROCESS_NAME,
938       STEP_NAME,
939       STEP_SEQ,
940       STEP_TYPE,
941       CONFIG_PROJ_PERF_FLAG,
942       CONFIG_COST_FLAG,
943       CONFIG_PROFIT_FLAG,
944       CONFIG_UTIL_FLAG
945     )
946     values
947     (
948       'PJI_EXTR',
949       'PJI_FM_SUM_MAIN.RUN_PROCESS;',
950       l_step_seq,
951       to_char(1 + 2 + 4 + 8), -- generic
952       'Y',
953       'Y',
954       'Y',
955       'Y'
956     );
957 
958     l_step_seq := l_step_seq + 10;
959 
960     insert into PJI_MT_PRC_STEPS
961     (
962       PROCESS_NAME,
963       STEP_NAME,
964       STEP_SEQ,
965       STEP_TYPE,
966       CONFIG_PROJ_PERF_FLAG,
967       CONFIG_COST_FLAG,
968       CONFIG_PROFIT_FLAG,
969       CONFIG_UTIL_FLAG
970     )
971     values
972     (
973       'PJI_EXTR',
974       'PJI_FM_SUM_MAIN.WRAPUP_PROCESS;',
975       l_step_seq,
976       to_char(1 + 2 + 4 + 8), -- generic
977       'Y',
978       'Y',
979       'Y',
980       'Y'
981     );
982 
983     l_step_seq := l_step_seq + 10;
984 
985     insert into PJI_MT_PRC_STEPS
986     (
987       PROCESS_NAME,
988       STEP_NAME,
989       STEP_SEQ,
990       STEP_TYPE,
991       CONFIG_PROJ_PERF_FLAG,
992       CONFIG_COST_FLAG,
993       CONFIG_PROFIT_FLAG,
994       CONFIG_UTIL_FLAG
995     )
996     values
997     (
998       'PJI_EXTR',
999       'PJI_FM_SUM_EXTR.POPULATE_TIME_DIMENSION(p_worker_id);',
1000       l_step_seq,
1001       to_char(1 + 2 + 4 + 8), -- generic
1002       'Y',
1003       'Y',
1004       'Y',
1005       'Y'
1006     );
1007 
1008     l_step_seq := l_step_seq + 10;
1009 
1010     insert into PJI_MT_PRC_STEPS
1011     (
1012       PROCESS_NAME,
1013       STEP_NAME,
1014       STEP_SEQ,
1015       STEP_TYPE,
1016       CONFIG_PROJ_PERF_FLAG,
1017       CONFIG_COST_FLAG,
1018       CONFIG_PROFIT_FLAG,
1019       CONFIG_UTIL_FLAG
1020     )
1021     values
1022     (
1023       'PJI_EXTR',
1024       'PJI_FM_EXTR.EXTRACT_BATCH_DREV(p_worker_id);',
1025       l_step_seq,
1026       to_char(1 + 2 + 4 + 8), -- generic
1027       'Y',
1028       'Y',
1029       'Y',
1030       'N'
1031     );
1032 
1033     l_step_seq := l_step_seq + 10;
1034 
1035     insert into PJI_MT_PRC_STEPS
1036     (
1037       PROCESS_NAME,
1038       STEP_NAME,
1039       STEP_SEQ,
1040       STEP_TYPE,
1041       CONFIG_PROJ_PERF_FLAG,
1042       CONFIG_COST_FLAG,
1043       CONFIG_PROFIT_FLAG,
1044       CONFIG_UTIL_FLAG
1045     )
1046     values
1047     (
1048       'PJI_EXTR',
1049       'PJI_FM_EXTR.MARK_EXTRACTED_DREV_PRE(p_worker_id);',
1050       l_step_seq,
1051       to_char(1 + 2 + 4 + 8), -- generic
1052       'Y',
1053       'Y',
1054       'Y',
1055       'N'
1056     );
1057 
1058     l_step_seq := l_step_seq + 10;
1059 
1060     -- helper step
1061     insert into PJI_MT_PRC_STEPS
1062     (
1063       PROCESS_NAME,
1064       STEP_NAME,
1065       STEP_SEQ,
1066       STEP_TYPE,
1067       CONFIG_PROJ_PERF_FLAG,
1068       CONFIG_COST_FLAG,
1069       CONFIG_PROFIT_FLAG,
1070       CONFIG_UTIL_FLAG
1071     )
1072     values
1073     (
1074       'PJI_EXTR_HELPER',
1075       'PJI_FM_EXTR.MARK_EXTRACTED_DREV(p_worker_id);',
1076       l_step_seq,
1077       to_char(1 + 2 + 4 + 8), -- generic
1078       'Y',
1079       'Y',
1080       'Y',
1081       'N'
1082     );
1083 
1084     l_step_seq := l_step_seq + 10;
1085 
1086     insert into PJI_MT_PRC_STEPS
1087     (
1088       PROCESS_NAME,
1089       STEP_NAME,
1090       STEP_SEQ,
1091       STEP_TYPE,
1092       CONFIG_PROJ_PERF_FLAG,
1093       CONFIG_COST_FLAG,
1094       CONFIG_PROFIT_FLAG,
1095       CONFIG_UTIL_FLAG
1096     )
1097     values
1098     (
1099       'PJI_EXTR',
1100       'PJI_FM_EXTR.MARK_EXTRACTED_DREV_POST(p_worker_id);',
1101       l_step_seq,
1102       to_char(1 + 2 + 4 + 8), -- generic
1103       'Y',
1104       'Y',
1105       'Y',
1106       'N'
1107     );
1108 
1109     l_step_seq := l_step_seq + 10;
1110 
1111     insert into PJI_MT_PRC_STEPS
1112     (
1113       PROCESS_NAME,
1114       STEP_NAME,
1115       STEP_SEQ,
1116       STEP_TYPE,
1117       CONFIG_PROJ_PERF_FLAG,
1118       CONFIG_COST_FLAG,
1119       CONFIG_PROFIT_FLAG,
1120       CONFIG_UTIL_FLAG
1121     )
1122     values
1123     (
1124       'PJI_EXTR',
1125       'PJI_FM_EXTR.EXTRACT_BATCH_CDL_ROWIDS(p_worker_id);',
1126       l_step_seq,
1127       to_char(1 + 2 + 4 + 8), -- generic
1128       'Y',
1129       'Y',
1130       'Y',
1131       'Y'
1132     );
1133 
1134     l_step_seq := l_step_seq + 10;
1135 
1136     insert into PJI_MT_PRC_STEPS
1137     (
1138       PROCESS_NAME,
1139       STEP_NAME,
1140       STEP_SEQ,
1141       STEP_TYPE,
1142       CONFIG_PROJ_PERF_FLAG,
1143       CONFIG_COST_FLAG,
1144       CONFIG_PROFIT_FLAG,
1145       CONFIG_UTIL_FLAG
1146     )
1147     values
1148     (
1149       'PJI_EXTR',
1150       'PJI_FM_EXTR.MARK_EXTRACTED_CDL_ROWS_PRE(p_worker_id);',
1151       l_step_seq,
1152       to_char(1 + 2 + 4 + 8), -- generic
1153       'Y',
1154       'Y',
1155       'Y',
1156       'Y'
1157     );
1158 
1159     l_step_seq := l_step_seq + 10;
1160 
1161     -- helper step
1162     insert into PJI_MT_PRC_STEPS
1163     (
1164       PROCESS_NAME,
1165       STEP_NAME,
1166       STEP_SEQ,
1167       STEP_TYPE,
1168       CONFIG_PROJ_PERF_FLAG,
1169       CONFIG_COST_FLAG,
1170       CONFIG_PROFIT_FLAG,
1171       CONFIG_UTIL_FLAG
1172     )
1173     values
1174     (
1175       'PJI_EXTR_HELPER',
1176       'PJI_FM_EXTR.MARK_EXTRACTED_CDL_ROWS(p_worker_id);',
1177       l_step_seq,
1178       to_char(1 + 2 + 4 + 8), -- generic
1179       'Y',
1180       'Y',
1181       'Y',
1182       'Y'
1183     );
1184 
1185     l_step_seq := l_step_seq + 10;
1186 
1187     insert into PJI_MT_PRC_STEPS
1188     (
1189       PROCESS_NAME,
1190       STEP_NAME,
1191       STEP_SEQ,
1192       STEP_TYPE,
1193       CONFIG_PROJ_PERF_FLAG,
1194       CONFIG_COST_FLAG,
1195       CONFIG_PROFIT_FLAG,
1196       CONFIG_UTIL_FLAG
1197     )
1198     values
1199     (
1200       'PJI_EXTR',
1201       'PJI_FM_EXTR.MARK_EXTRACTED_CDL_ROWS_POST(p_worker_id);',
1202       l_step_seq,
1203       to_char(1 + 2 + 4 + 8), -- generic
1204       'Y',
1205       'Y',
1206       'Y',
1207       'Y'
1208     );
1209 
1210     l_step_seq := l_step_seq + 10;
1211 
1212     insert into PJI_MT_PRC_STEPS
1213     (
1214       PROCESS_NAME,
1215       STEP_NAME,
1216       STEP_SEQ,
1217       STEP_TYPE,
1218       CONFIG_PROJ_PERF_FLAG,
1219       CONFIG_COST_FLAG,
1220       CONFIG_PROFIT_FLAG,
1221       CONFIG_UTIL_FLAG
1222     )
1223     values
1224     (
1225       'PJI_EXTR',
1226       'PJI_FM_EXTR.EXTRACT_BATCH_CDL_CRDL_FULL(p_worker_id);',
1227       l_step_seq,
1228       to_char(1), -- full
1229       'Y',
1230       'Y',
1231       'Y',
1232       'Y'
1233     );
1234 
1235     l_step_seq := l_step_seq + 10;
1236 
1237     insert into PJI_MT_PRC_STEPS
1238     (
1239       PROCESS_NAME,
1240       STEP_NAME,
1241       STEP_SEQ,
1242       STEP_TYPE,
1243       CONFIG_PROJ_PERF_FLAG,
1244       CONFIG_COST_FLAG,
1245       CONFIG_PROFIT_FLAG,
1246       CONFIG_UTIL_FLAG
1247     )
1248     values
1249     (
1250       'PJI_EXTR',
1251       'PJI_FM_EXTR.EXTRACT_BATCH_ERDL_FULL(p_worker_id);',
1252       l_step_seq,
1253       to_char(1), -- full
1254       'Y',
1255       'Y',
1256       'Y',
1257       'N'
1258     );
1259 
1260     l_step_seq := l_step_seq + 10;
1261 
1262     insert into PJI_MT_PRC_STEPS
1263     (
1264       PROCESS_NAME,
1265       STEP_NAME,
1266       STEP_SEQ,
1267       STEP_TYPE,
1268       CONFIG_PROJ_PERF_FLAG,
1269       CONFIG_COST_FLAG,
1270       CONFIG_PROFIT_FLAG,
1271       CONFIG_UTIL_FLAG
1272     )
1273     values
1274     (
1275       'PJI_EXTR',
1276       'PJI_FM_EXTR.EXTRACT_BATCH_CRDL_ROWIDS(p_worker_id);',
1277       l_step_seq,
1278       to_char(2 + 4), -- incremental + partial
1279       'Y',
1280       'Y',
1281       'Y',
1282       'N'
1283     );
1284 
1285     l_step_seq := l_step_seq + 10;
1286 
1287     insert into PJI_MT_PRC_STEPS
1288     (
1289       PROCESS_NAME,
1290       STEP_NAME,
1291       STEP_SEQ,
1292       STEP_TYPE,
1293       CONFIG_PROJ_PERF_FLAG,
1294       CONFIG_COST_FLAG,
1295       CONFIG_PROFIT_FLAG,
1296       CONFIG_UTIL_FLAG
1297     )
1298     values
1299     (
1300       'PJI_EXTR',
1301       'PJI_FM_EXTR.EXTRACT_BATCH_ERDL_ROWIDS(p_worker_id);',
1302       l_step_seq,
1303       to_char(2 + 4), -- incremental + partial
1304       'Y',
1305       'Y',
1306       'Y',
1307       'N'
1308     );
1309 
1310     l_step_seq := l_step_seq + 10;
1311 
1312     insert into PJI_MT_PRC_STEPS
1313     (
1314       PROCESS_NAME,
1315       STEP_NAME,
1316       STEP_SEQ,
1317       STEP_TYPE,
1318       CONFIG_PROJ_PERF_FLAG,
1319       CONFIG_COST_FLAG,
1320       CONFIG_PROFIT_FLAG,
1321       CONFIG_UTIL_FLAG
1322     )
1323     values
1324     (
1325       'PJI_EXTR',
1326       'PJI_FM_EXTR.EXTRACT_BATCH_CDL_AND_CRDL(p_worker_id);',
1327       l_step_seq,
1328       to_char(2 + 4), -- incremental + partial
1329       'Y',
1330       'Y',
1331       'Y',
1332       'Y'
1333     );
1334 
1335     l_step_seq := l_step_seq + 10;
1336 
1337     insert into PJI_MT_PRC_STEPS
1338     (
1339       PROCESS_NAME,
1340       STEP_NAME,
1341       STEP_SEQ,
1342       STEP_TYPE,
1343       CONFIG_PROJ_PERF_FLAG,
1344       CONFIG_COST_FLAG,
1345       CONFIG_PROFIT_FLAG,
1346       CONFIG_UTIL_FLAG
1347     )
1348     values
1349     (
1350       'PJI_EXTR',
1351       'PJI_FM_EXTR.EXTRACT_BATCH_ERDL(p_worker_id);',
1352       l_step_seq,
1353       to_char(1 + 2 + 4 + 8), -- generic
1354       'Y',
1355       'Y',
1356       'Y',
1357       'N'
1358     );
1359 
1360     l_step_seq := l_step_seq + 10;
1361 
1362     insert into PJI_MT_PRC_STEPS
1363     (
1364       PROCESS_NAME,
1365       STEP_NAME,
1366       STEP_SEQ,
1367       STEP_TYPE,
1368       CONFIG_PROJ_PERF_FLAG,
1369       CONFIG_COST_FLAG,
1370       CONFIG_PROFIT_FLAG,
1371       CONFIG_UTIL_FLAG
1372     )
1373     values
1374     (
1375       'PJI_EXTR',
1376       'PJI_FM_EXTR.EXTRACT_BATCH_FND(p_worker_id);',
1377       l_step_seq,
1378       to_char(1 + 2 + 4 + 8), -- generic
1379       'Y',
1380       'N',
1381       'Y',
1382       'N'
1383     );
1384 
1385     l_step_seq := l_step_seq + 10;
1386 
1387     insert into PJI_MT_PRC_STEPS
1388     (
1389       PROCESS_NAME,
1390       STEP_NAME,
1391       STEP_SEQ,
1392       STEP_TYPE,
1393       CONFIG_PROJ_PERF_FLAG,
1394       CONFIG_COST_FLAG,
1395       CONFIG_PROFIT_FLAG,
1396       CONFIG_UTIL_FLAG
1397     )
1398     values
1399     (
1400       'PJI_EXTR',
1401       'PJI_FM_EXTR.MARK_EXTRACTED_FND_ROWS_PRE(p_worker_id);',
1402       l_step_seq,
1403       to_char(1 + 2 + 4 + 8), -- generic
1404       'Y',
1405       'N',
1406       'Y',
1407       'N'
1408     );
1409 
1410     l_step_seq := l_step_seq + 10;
1411 
1412     -- helper step
1413     insert into PJI_MT_PRC_STEPS
1414     (
1415       PROCESS_NAME,
1416       STEP_NAME,
1417       STEP_SEQ,
1418       STEP_TYPE,
1419       CONFIG_PROJ_PERF_FLAG,
1420       CONFIG_COST_FLAG,
1421       CONFIG_PROFIT_FLAG,
1422       CONFIG_UTIL_FLAG
1423     )
1424     values
1425     (
1426       'PJI_EXTR_HELPER',
1427       'PJI_FM_EXTR.MARK_EXTRACTED_FND_ROWS(p_worker_id);',
1428       l_step_seq,
1429       to_char(1 + 2 + 4 + 8), -- generic
1430       'Y',
1431       'N',
1432       'Y',
1433       'N'
1434     );
1435 
1436     l_step_seq := l_step_seq + 10;
1437 
1438     insert into PJI_MT_PRC_STEPS
1439     (
1440       PROCESS_NAME,
1441       STEP_NAME,
1442       STEP_SEQ,
1443       STEP_TYPE,
1444       CONFIG_PROJ_PERF_FLAG,
1445       CONFIG_COST_FLAG,
1446       CONFIG_PROFIT_FLAG,
1447       CONFIG_UTIL_FLAG
1448     )
1449     values
1450     (
1451       'PJI_EXTR',
1452       'PJI_FM_EXTR.MARK_EXTRACTED_FND_ROWS_POST(p_worker_id);',
1453       l_step_seq,
1454       to_char(1 + 2 + 4 + 8), -- generic
1455       'Y',
1456       'N',
1457       'Y',
1458       'N'
1459     );
1460 
1461     l_step_seq := l_step_seq + 10;
1462 
1463     insert into PJI_MT_PRC_STEPS
1464     (
1465       PROCESS_NAME,
1466       STEP_NAME,
1467       STEP_SEQ,
1468       STEP_TYPE,
1469       CONFIG_PROJ_PERF_FLAG,
1470       CONFIG_COST_FLAG,
1471       CONFIG_PROFIT_FLAG,
1472       CONFIG_UTIL_FLAG
1473     )
1474     values
1475     (
1476       'PJI_EXTR',
1477       'PJI_FM_EXTR.EXTRACT_BATCH_DINV(p_worker_id);',
1478       l_step_seq,
1479       to_char(1 + 2 + 4 + 8), -- generic
1480       'Y',
1481       'N',
1482       'Y',
1483       'N'
1484     );
1485 
1486     l_step_seq := l_step_seq + 10;
1487 
1488     insert into PJI_MT_PRC_STEPS
1489     (
1490       PROCESS_NAME,
1491       STEP_NAME,
1492       STEP_SEQ,
1493       STEP_TYPE,
1494       CONFIG_PROJ_PERF_FLAG,
1495       CONFIG_COST_FLAG,
1496       CONFIG_PROFIT_FLAG,
1497       CONFIG_UTIL_FLAG
1498     )
1499     values
1500     (
1501       'PJI_EXTR',
1502       'PJI_FM_EXTR.MARK_EXTRACTED_DINV_ROWS(p_worker_id);',
1503       l_step_seq,
1504       to_char(1 + 2 + 4 + 8), -- generic
1505       'Y',
1506       'N',
1507       'Y',
1508       'N'
1509     );
1510 
1511     l_step_seq := l_step_seq + 10;
1512 
1513     insert into PJI_MT_PRC_STEPS
1514     (
1515       PROCESS_NAME,
1516       STEP_NAME,
1517       STEP_SEQ,
1518       STEP_TYPE,
1519       CONFIG_PROJ_PERF_FLAG,
1520       CONFIG_COST_FLAG,
1521       CONFIG_PROFIT_FLAG,
1522       CONFIG_UTIL_FLAG
1523     )
1524     values
1525     (
1526       'PJI_EXTR',
1527       'PJI_FM_EXTR.EXTRACT_BATCH_DINVITEM(p_worker_id);',
1528       l_step_seq,
1529       to_char(1 + 2 + 4 + 8), -- generic
1530       'Y',
1531       'N',
1532       'Y',
1533       'N'
1534     );
1535 
1536     l_step_seq := l_step_seq + 10;
1537 
1538     insert into PJI_MT_PRC_STEPS
1539     (
1540       PROCESS_NAME,
1541       STEP_NAME,
1542       STEP_SEQ,
1543       STEP_TYPE,
1544       CONFIG_PROJ_PERF_FLAG,
1545       CONFIG_COST_FLAG,
1546       CONFIG_PROFIT_FLAG,
1547       CONFIG_UTIL_FLAG
1548     )
1549     values
1550     (
1551       'PJI_EXTR',
1552       'PJI_FM_EXTR.EXTRACT_BATCH_ARINV(p_worker_id);',
1553       l_step_seq,
1554       to_char(1 + 2 + 4 + 8), -- generic
1555       'Y',
1556       'N',
1557       'Y',
1558       'N'
1559     );
1560 
1561     l_step_seq := l_step_seq + 10;
1562 
1563     insert into PJI_MT_PRC_STEPS
1564     (
1565       PROCESS_NAME,
1566       STEP_NAME,
1567       STEP_SEQ,
1568       STEP_TYPE,
1569       CONFIG_PROJ_PERF_FLAG,
1570       CONFIG_COST_FLAG,
1571       CONFIG_PROFIT_FLAG,
1572       CONFIG_UTIL_FLAG
1573     )
1574     values
1575     (
1576       'PJI_EXTR',
1577       'PJI_FM_EXTR.MARK_FULLY_PAID_INVOICES_PRE(p_worker_id);',
1578       l_step_seq,
1579       to_char(1 + 2 + 4 + 8), -- generic
1580       'Y',
1581       'N',
1582       'Y',
1583       'N'
1584     );
1585 
1586     l_step_seq := l_step_seq + 10;
1587 
1588     -- helper step
1589     insert into PJI_MT_PRC_STEPS
1590     (
1591       PROCESS_NAME,
1592       STEP_NAME,
1593       STEP_SEQ,
1594       STEP_TYPE,
1595       CONFIG_PROJ_PERF_FLAG,
1596       CONFIG_COST_FLAG,
1597       CONFIG_PROFIT_FLAG,
1598       CONFIG_UTIL_FLAG
1599     )
1600     values
1601     (
1602       'PJI_EXTR_HELPER',
1603       'PJI_FM_EXTR.MARK_FULLY_PAID_INVOICES(p_worker_id);',
1604       l_step_seq,
1605       to_char(1 + 2 + 4 + 8), -- generic
1606       'Y',
1607       'N',
1608       'Y',
1609       'N'
1610     );
1611 
1612     l_step_seq := l_step_seq + 10;
1613 
1614     insert into PJI_MT_PRC_STEPS
1615     (
1616       PROCESS_NAME,
1617       STEP_NAME,
1618       STEP_SEQ,
1619       STEP_TYPE,
1620       CONFIG_PROJ_PERF_FLAG,
1621       CONFIG_COST_FLAG,
1622       CONFIG_PROFIT_FLAG,
1623       CONFIG_UTIL_FLAG
1624     )
1625     values
1626     (
1627       'PJI_EXTR',
1628       'PJI_FM_EXTR.MARK_FULLY_PAID_INVOICES_POST(p_worker_id);',
1629       l_step_seq,
1630       to_char(1 + 2 + 4 + 8), -- generic
1631       'Y',
1632       'N',
1633       'Y',
1634       'N'
1635     );
1636 
1637     l_step_seq := l_step_seq + 10;
1638 
1639     insert into PJI_MT_PRC_STEPS
1640     (
1641       PROCESS_NAME,
1642       STEP_NAME,
1643       STEP_SEQ,
1644       STEP_TYPE,
1645       CONFIG_PROJ_PERF_FLAG,
1646       CONFIG_COST_FLAG,
1647       CONFIG_PROFIT_FLAG,
1648       CONFIG_UTIL_FLAG
1649     )
1650     values
1651     (
1652       'PJI_EXTR',
1653       'PJI_FM_SUM_ACT.BASE_SUMMARY(p_worker_id);',
1654       l_step_seq,
1655       to_char(1 + 2 + 4 + 8), -- generic
1656       'Y',
1657       'N',
1658       'Y',
1659       'N'
1660     );
1661 
1662     l_step_seq := l_step_seq + 10;
1663 
1664     insert into PJI_MT_PRC_STEPS
1665     (
1666       PROCESS_NAME,
1667       STEP_NAME,
1668       STEP_SEQ,
1669       STEP_TYPE,
1670       CONFIG_PROJ_PERF_FLAG,
1671       CONFIG_COST_FLAG,
1672       CONFIG_PROFIT_FLAG,
1673       CONFIG_UTIL_FLAG
1674     )
1675     values
1676     (
1677       'PJI_EXTR',
1678       'PJI_FM_CMT_EXTR.REFRESH_PROJPERF_CMT_PRE(p_worker_id);',
1679       l_step_seq,
1680       to_char(1 + 2 + 4 + 8), -- generic
1681       'Y',
1682       'Y',
1683       'N',
1684       'N'
1685     );
1686 
1687     l_step_seq := l_step_seq + 10;
1688 
1689     insert into PJI_MT_PRC_STEPS
1690     (
1691       PROCESS_NAME,
1692       STEP_NAME,
1693       STEP_SEQ,
1694       STEP_TYPE,
1695       CONFIG_PROJ_PERF_FLAG,
1696       CONFIG_COST_FLAG,
1697       CONFIG_PROFIT_FLAG,
1698       CONFIG_UTIL_FLAG
1699     )
1700     values
1701     (
1702       'PJI_EXTR_HELPER',
1703       'PJI_FM_CMT_EXTR.REFRESH_PROJPERF_CMT(p_worker_id);',
1704       l_step_seq,
1705       to_char(1 + 2 + 4 + 8), -- generic
1706       'Y',
1707       'Y',
1708       'N',
1709       'N'
1710     );
1711 
1712     l_step_seq := l_step_seq + 10;
1713 
1714     insert into PJI_MT_PRC_STEPS
1715     (
1716       PROCESS_NAME,
1717       STEP_NAME,
1718       STEP_SEQ,
1719       STEP_TYPE,
1720       CONFIG_PROJ_PERF_FLAG,
1721       CONFIG_COST_FLAG,
1722       CONFIG_PROFIT_FLAG,
1723       CONFIG_UTIL_FLAG
1724     )
1725     values
1726     (
1727       'PJI_EXTR',
1728       'PJI_FM_CMT_EXTR.REFRESH_PROJPERF_CMT_POST(p_worker_id);',
1729       l_step_seq,
1730       to_char(1 + 2 + 4 + 8), -- generic
1731       'Y',
1732       'Y',
1733       'N',
1734       'N'
1735     );
1736 
1737     l_step_seq := l_step_seq + 10;
1738 
1739     insert into PJI_MT_PRC_STEPS
1740     (
1741       PROCESS_NAME,
1742       STEP_NAME,
1743       STEP_SEQ,
1744       STEP_TYPE,
1745       CONFIG_PROJ_PERF_FLAG,
1746       CONFIG_COST_FLAG,
1747       CONFIG_PROFIT_FLAG,
1748       CONFIG_UTIL_FLAG
1749     )
1750     values
1751     (
1752       'PJI_EXTR',
1753       'PJI_FM_SUM_EXTR.ORG_EXTR_INFO_TABLE(p_worker_id);',
1754       l_step_seq,
1755       to_char(1 + 2 + 4 + 8), -- generic
1756       'Y',
1757       'Y',
1758       'Y',
1759       'Y'
1760     );
1761 
1762     l_step_seq := l_step_seq + 10;
1763 
1764     insert into PJI_MT_PRC_STEPS
1765     (
1766       PROCESS_NAME,
1767       STEP_NAME,
1768       STEP_SEQ,
1769       STEP_TYPE,
1770       CONFIG_PROJ_PERF_FLAG,
1771       CONFIG_COST_FLAG,
1772       CONFIG_PROFIT_FLAG,
1773       CONFIG_UTIL_FLAG
1774     )
1775     values
1776     (
1777       'PJI_EXTR',
1778       'PJI_FM_SUM_EXTR.CURR_CONV_TABLE(p_worker_id);',
1779       l_step_seq,
1780       to_char(1 + 2 + 4 + 8), -- generic
1781       'Y',
1782       'Y',
1783       'Y',
1784       'Y'
1785     );
1786 
1787     l_step_seq := l_step_seq + 10;
1788 
1789     insert into PJI_MT_PRC_STEPS
1790     (
1791       PROCESS_NAME,
1792       STEP_NAME,
1793       STEP_SEQ,
1794       STEP_TYPE,
1795       CONFIG_PROJ_PERF_FLAG,
1796       CONFIG_COST_FLAG,
1797       CONFIG_PROFIT_FLAG,
1798       CONFIG_UTIL_FLAG
1799     )
1800     values
1801     (
1802       'PJI_EXTR',
1803       'PJI_FM_SUM_EXTR.DANGLING_FIN_ROWS(p_worker_id);',
1804       l_step_seq,
1805       to_char(1 + 2 + 4 + 8), -- generic
1806       'Y',
1807       'Y',
1808       'N',
1809       'Y'
1810     );
1811 
1812     l_step_seq := l_step_seq + 10;
1813 
1814     insert into PJI_MT_PRC_STEPS
1815     (
1816       PROCESS_NAME,
1817       STEP_NAME,
1818       STEP_SEQ,
1819       STEP_TYPE,
1820       CONFIG_PROJ_PERF_FLAG,
1821       CONFIG_COST_FLAG,
1822       CONFIG_PROFIT_FLAG,
1823       CONFIG_UTIL_FLAG
1824     )
1825     values
1826     (
1827       'PJI_EXTR',
1828       'PJI_FM_SUM_EXTR.DANGLING_ACT_ROWS(p_worker_id);',
1829       l_step_seq,
1830       to_char(1 + 2 + 4 + 8), -- generic
1831       'Y',
1832       'N',
1833       'Y',
1834       'N'
1835     );
1836 
1837     l_step_seq := l_step_seq + 10;
1838 
1839     insert into PJI_MT_PRC_STEPS
1840     (
1841       PROCESS_NAME,
1842       STEP_NAME,
1843       STEP_SEQ,
1844       STEP_TYPE,
1845       CONFIG_PROJ_PERF_FLAG,
1846       CONFIG_COST_FLAG,
1847       CONFIG_PROFIT_FLAG,
1848       CONFIG_UTIL_FLAG
1849     )
1850     values
1851     (
1852       'PJI_EXTR',
1853       'PJI_FM_SUM_EXTR.PURGE_DANGLING_FIN_ROWS(p_worker_id);',
1854       l_step_seq,
1855       to_char(1 + 2 + 4 + 8), -- generic
1856       'Y',
1857       'Y',
1858       'N',
1859       'Y'
1860     );
1861 
1862     l_step_seq := l_step_seq + 10;
1863 
1864     insert into PJI_MT_PRC_STEPS
1865     (
1866       PROCESS_NAME,
1867       STEP_NAME,
1868       STEP_SEQ,
1869       STEP_TYPE,
1870       CONFIG_PROJ_PERF_FLAG,
1871       CONFIG_COST_FLAG,
1872       CONFIG_PROFIT_FLAG,
1873       CONFIG_UTIL_FLAG
1874     )
1875     values
1876     (
1877       'PJI_EXTR',
1878       'PJI_FM_SUM_EXTR.PURGE_DANGLING_ACT_ROWS(p_worker_id);',
1879       l_step_seq,
1880       to_char(1 + 2 + 4 + 8), -- generic
1881       'Y',
1882       'N',
1883       'Y',
1884       'N'
1885     );
1886 
1887     l_step_seq := l_step_seq + 10;
1888 
1889     insert into PJI_MT_PRC_STEPS
1890     (
1891       PROCESS_NAME,
1892       STEP_NAME,
1893       STEP_SEQ,
1894       STEP_TYPE,
1895       CONFIG_PROJ_PERF_FLAG,
1896       CONFIG_COST_FLAG,
1897       CONFIG_PROFIT_FLAG,
1898       CONFIG_UTIL_FLAG
1899     )
1900     values
1901     (
1902       'PJI_EXTR',
1903       'PJI_FM_CMT_EXTR.FIN_CMT_SUMMARY(p_worker_id);',
1904       l_step_seq,
1905       to_char(1 + 2 + 4 + 8), -- generic
1906       'Y',
1907       'Y',
1908       'N',
1909       'N'
1910     );
1911 
1912     l_step_seq := l_step_seq + 10;
1913 
1914     insert into PJI_MT_PRC_STEPS
1915     (
1916       PROCESS_NAME,
1917       STEP_NAME,
1918       STEP_SEQ,
1919       STEP_TYPE,
1920       CONFIG_PROJ_PERF_FLAG,
1921       CONFIG_COST_FLAG,
1922       CONFIG_PROFIT_FLAG,
1923       CONFIG_UTIL_FLAG
1924     )
1925     values
1926     (
1927       'PJI_EXTR',
1928       'PJI_FM_SUM_EXTR.FIN_SUMMARY(p_worker_id);',
1929       l_step_seq,
1930       to_char(1 + 2 + 4 + 8), -- generic
1931       'Y',
1932       'Y',
1933       'N',
1934       'Y'
1935     );
1936 
1937     l_step_seq := l_step_seq + 10;
1938 
1939     insert into PJI_MT_PRC_STEPS
1940     (
1941       PROCESS_NAME,
1942       STEP_NAME,
1943       STEP_SEQ,
1944       STEP_TYPE,
1945       CONFIG_PROJ_PERF_FLAG,
1946       CONFIG_COST_FLAG,
1947       CONFIG_PROFIT_FLAG,
1948       CONFIG_UTIL_FLAG
1949     )
1950     values
1951     (
1952       'PJI_EXTR',
1953       'PJI_FM_SUM_EXTR.MOVE_DANGLING_FIN_ROWS(p_worker_id);',
1954       l_step_seq,
1955       to_char(1 + 2 + 4 + 8), -- generic
1956       'Y',
1957       'Y',
1958       'N',
1959       'Y'
1960     );
1961 
1962     l_step_seq := l_step_seq + 10;
1963 
1964     insert into PJI_MT_PRC_STEPS
1965     (
1966       PROCESS_NAME,
1967       STEP_NAME,
1968       STEP_SEQ,
1969       STEP_TYPE,
1970       CONFIG_PROJ_PERF_FLAG,
1971       CONFIG_COST_FLAG,
1972       CONFIG_PROFIT_FLAG,
1973       CONFIG_UTIL_FLAG
1974     )
1975     values
1976     (
1977       'PJI_EXTR',
1978       'PJI_FM_SUM_EXTR.ACT_SUMMARY(p_worker_id);',
1979       l_step_seq,
1980       to_char(1 + 2 + 4 + 8), -- generic
1981       'Y',
1982       'N',
1983       'Y',
1984       'N'
1985     );
1986 
1987     l_step_seq := l_step_seq + 10;
1988 
1989     insert into PJI_MT_PRC_STEPS
1990     (
1991       PROCESS_NAME,
1992       STEP_NAME,
1993       STEP_SEQ,
1994       STEP_TYPE,
1995       CONFIG_PROJ_PERF_FLAG,
1996       CONFIG_COST_FLAG,
1997       CONFIG_PROFIT_FLAG,
1998       CONFIG_UTIL_FLAG
1999     )
2000     values
2001     (
2002       'PJI_EXTR',
2003       'PJI_FM_SUM_EXTR.MOVE_DANGLING_ACT_ROWS(p_worker_id);',
2004       l_step_seq,
2005       to_char(1 + 2 + 4 + 8), -- generic
2006       'Y',
2007       'N',
2008       'Y',
2009       'N'
2010     );
2011 
2012     l_step_seq := l_step_seq + 10;
2013 
2014     insert into PJI_MT_PRC_STEPS
2015     (
2016       PROCESS_NAME,
2017       STEP_NAME,
2018       STEP_SEQ,
2019       STEP_TYPE,
2020       CONFIG_PROJ_PERF_FLAG,
2021       CONFIG_COST_FLAG,
2022       CONFIG_PROFIT_FLAG,
2023       CONFIG_UTIL_FLAG
2024     )
2025     values
2026     (
2027       'PJI_EXTR',
2028       'PJI_FM_SUM_PSI.RESOURCE_LOOKUP_TABLE(p_worker_id);',
2029       l_step_seq,
2030       to_char(1 + 2 + 4 + 8), -- generic
2031       'Y',
2032       'N',
2033       'N',
2034       'N'
2035     );
2036 
2037     l_step_seq := l_step_seq + 10;
2038 
2039     insert into PJI_MT_PRC_STEPS
2040     (
2041       PROCESS_NAME,
2042       STEP_NAME,
2043       STEP_SEQ,
2044       STEP_TYPE,
2045       CONFIG_PROJ_PERF_FLAG,
2046       CONFIG_COST_FLAG,
2047       CONFIG_PROFIT_FLAG,
2048       CONFIG_UTIL_FLAG
2049     )
2050     values
2051     (
2052       'PJI_EXTR',
2053       'PJI_FM_SUM_PSI.PURGE_FP_BALANCES(p_worker_id);',
2054       l_step_seq,
2055       to_char(1 + 2 + 4 + 8), -- generic
2056       'Y',
2057       'N',
2058       'N',
2059       'N'
2060     );
2061 
2062     l_step_seq := l_step_seq + 10;
2063 
2064     insert into PJI_MT_PRC_STEPS
2065     (
2066       PROCESS_NAME,
2067       STEP_NAME,
2068       STEP_SEQ,
2069       STEP_TYPE,
2070       CONFIG_PROJ_PERF_FLAG,
2071       CONFIG_COST_FLAG,
2072       CONFIG_PROFIT_FLAG,
2073       CONFIG_UTIL_FLAG
2074     )
2075     values
2076     (
2077       'PJI_EXTR',
2078       'PJI_FM_SUM_PSI.PURGE_CMT_BALANCES(p_worker_id);',
2079       l_step_seq,
2080       to_char(1 + 2 + 4 + 8), -- generic
2081       'Y',
2082       'N',
2083       'N',
2084       'N'
2085     );
2086 
2087     l_step_seq := l_step_seq + 10;
2088 
2089     insert into PJI_MT_PRC_STEPS
2090     (
2091       PROCESS_NAME,
2092       STEP_NAME,
2093       STEP_SEQ,
2094       STEP_TYPE,
2095       CONFIG_PROJ_PERF_FLAG,
2096       CONFIG_COST_FLAG,
2097       CONFIG_PROFIT_FLAG,
2098       CONFIG_UTIL_FLAG
2099     )
2100     values
2101     (
2102       'PJI_EXTR',
2103       'PJI_FM_SUM_PSI.PURGE_AC_BALANCES(p_worker_id);',
2104       l_step_seq,
2105       to_char(1 + 2 + 4 + 8), -- generic
2106       'Y',
2107       'N',
2108       'N',
2109       'N'
2110     );
2111 
2112     l_step_seq := l_step_seq + 10;
2113 
2114     insert into PJI_MT_PRC_STEPS
2115     (
2116       PROCESS_NAME,
2117       STEP_NAME,
2118       STEP_SEQ,
2119       STEP_TYPE,
2120       CONFIG_PROJ_PERF_FLAG,
2121       CONFIG_COST_FLAG,
2122       CONFIG_PROFIT_FLAG,
2123       CONFIG_UTIL_FLAG
2124     )
2125     values
2126     (
2127       'PJI_EXTR',
2128       'PJI_FM_SUM_PSI.AGGREGATE_FPR_PERIODS(p_worker_id);',
2129       l_step_seq,
2130       to_char(1 + 2 + 4 + 8), -- generic
2131       'Y',
2132       'N',
2133       'N',
2134       'N'
2135     );
2136 
2137     l_step_seq := l_step_seq + 10;
2138 
2139     insert into PJI_MT_PRC_STEPS
2140     (
2141       PROCESS_NAME,
2142       STEP_NAME,
2143       STEP_SEQ,
2144       STEP_TYPE,
2145       CONFIG_PROJ_PERF_FLAG,
2146       CONFIG_COST_FLAG,
2147       CONFIG_PROFIT_FLAG,
2148       CONFIG_UTIL_FLAG
2149     )
2150     values
2151     (
2152       'PJI_EXTR',
2153       'PJI_FM_SUM_PSI.AGGREGATE_ACR_PERIODS(p_worker_id);',
2154       l_step_seq,
2155       to_char(1 + 2 + 4 + 8), -- generic
2156       'Y',
2157       'N',
2158       'N',
2159       'N'
2160     );
2161 
2162     l_step_seq := l_step_seq + 10;
2163 
2164     insert into PJI_MT_PRC_STEPS
2165     (
2166       PROCESS_NAME,
2167       STEP_NAME,
2168       STEP_SEQ,
2169       STEP_TYPE,
2170       CONFIG_PROJ_PERF_FLAG,
2171       CONFIG_COST_FLAG,
2172       CONFIG_PROFIT_FLAG,
2173       CONFIG_UTIL_FLAG
2174     )
2175     values
2176     (
2177       'PJI_EXTR',
2178       'PJI_FM_SUM_PSI.INSERT_NEW_HEADERS(p_worker_id);',
2179       l_step_seq,
2180       to_char(1 + 2 + 4 + 8), -- generic
2181       'Y',
2182       'N',
2183       'N',
2184       'N'
2185     );
2186 
2187     l_step_seq := l_step_seq + 10;
2188 
2189     insert into PJI_MT_PRC_STEPS
2190     (
2191       PROCESS_NAME,
2192       STEP_NAME,
2193       STEP_SEQ,
2194       STEP_TYPE,
2195       CONFIG_PROJ_PERF_FLAG,
2196       CONFIG_COST_FLAG,
2197       CONFIG_PROFIT_FLAG,
2198       CONFIG_UTIL_FLAG
2199     )
2200     values
2201     (
2202       'PJI_EXTR',
2203       'PJI_FM_SUM_PSI.BALANCES_INSERT(p_worker_id);',
2204       l_step_seq,
2205       to_char(1 + 2 + 4 + 8), -- generic
2206       'Y',
2207       'N',
2208       'N',
2209       'N'
2210     );
2211 
2212     l_step_seq := l_step_seq + 10;
2213 
2214     insert into PJI_MT_PRC_STEPS
2215     (
2216       PROCESS_NAME,
2217       STEP_NAME,
2218       STEP_SEQ,
2219       STEP_TYPE,
2220       CONFIG_PROJ_PERF_FLAG,
2221       CONFIG_COST_FLAG,
2222       CONFIG_PROFIT_FLAG,
2223       CONFIG_UTIL_FLAG
2224     )
2225     values
2226     (
2227       'PJI_EXTR',
2228       'PJI_FM_SUM_PSI.BALANCES_INCR_NEW_PRJ(p_worker_id);',
2229       l_step_seq,
2230       to_char(1 + 2 + 4 + 8), -- generic
2231       'Y',
2232       'N',
2233       'N',
2234       'N'
2235     );
2236 
2237     l_step_seq := l_step_seq + 10;
2238 
2239     insert into PJI_MT_PRC_STEPS
2240     (
2241       PROCESS_NAME,
2242       STEP_NAME,
2243       STEP_SEQ,
2244       STEP_TYPE,
2245       CONFIG_PROJ_PERF_FLAG,
2246       CONFIG_COST_FLAG,
2247       CONFIG_PROFIT_FLAG,
2248       CONFIG_UTIL_FLAG
2249     )
2250     values
2251     (
2252       'PJI_EXTR',
2253       'PJI_FM_SUM_PSI.BALANCES_INSERT_CMT(p_worker_id);',
2254       l_step_seq,
2255       to_char(1 + 2 + 4 + 8), -- generic
2256       'Y',
2257       'N',
2258       'N',
2259       'N'
2260     );
2261 
2262     l_step_seq := l_step_seq + 10;
2263 
2264     insert into PJI_MT_PRC_STEPS
2265     (
2266       PROCESS_NAME,
2267       STEP_NAME,
2268       STEP_SEQ,
2269       STEP_TYPE,
2270       CONFIG_PROJ_PERF_FLAG,
2271       CONFIG_COST_FLAG,
2272       CONFIG_PROFIT_FLAG,
2273       CONFIG_UTIL_FLAG
2274     )
2275     values
2276     (
2277       'PJI_EXTR',
2278       'PJI_FM_SUM_PSI.BALANCES_INCR_NEW_PRJ_CMT(p_worker_id);',
2279       l_step_seq,
2280       to_char(1 + 2 + 4 + 8), -- generic
2281       'Y',
2282       'N',
2283       'N',
2284       'N'
2285     );
2286 
2287     l_step_seq := l_step_seq + 10;
2288 
2289     insert into PJI_MT_PRC_STEPS
2290     (
2291       PROCESS_NAME,
2292       STEP_NAME,
2293       STEP_SEQ,
2294       STEP_TYPE,
2295       CONFIG_PROJ_PERF_FLAG,
2296       CONFIG_COST_FLAG,
2297       CONFIG_PROFIT_FLAG,
2298       CONFIG_UTIL_FLAG
2299     )
2300     values
2301     (
2302       'PJI_EXTR',
2303       'PJI_FM_SUM_PSI.FORCE_SUBSEQUENT_RUN(p_worker_id);',
2304       l_step_seq,
2305       to_char(1 + 2 + 4 + 8), -- generic
2306       'Y',
2307       'N',
2308       'N',
2309       'N'
2310     );
2311 
2312     l_step_seq := l_step_seq + 10;
2313 
2314     insert into PJI_MT_PRC_STEPS
2315     (
2316       PROCESS_NAME,
2317       STEP_NAME,
2318       STEP_SEQ,
2319       STEP_TYPE,
2320       CONFIG_PROJ_PERF_FLAG,
2321       CONFIG_COST_FLAG,
2322       CONFIG_PROFIT_FLAG,
2323       CONFIG_UTIL_FLAG
2324     )
2325     values
2326     (
2327       'PJI_EXTR',
2328       'PJI_FM_SUM_EXTR.AGGREGATE_RES_SLICES(p_worker_id);',
2329       l_step_seq,
2330       to_char(1 + 2 + 4 + 8), -- generic
2331       'N',
2332       'N',
2333       'N',
2334       'Y'
2335     );
2336 
2337     l_step_seq := l_step_seq + 10;
2338 
2339     insert into PJI_MT_PRC_STEPS
2340     (
2341       PROCESS_NAME,
2342       STEP_NAME,
2343       STEP_SEQ,
2344       STEP_TYPE,
2345       CONFIG_PROJ_PERF_FLAG,
2346       CONFIG_COST_FLAG,
2347       CONFIG_PROFIT_FLAG,
2348       CONFIG_UTIL_FLAG
2349     )
2350     values
2351     (
2352       'PJI_EXTR',
2353       'PJI_FM_SUM_EXTR.AGGREGATE_FIN_SLICES(p_worker_id);',
2354       l_step_seq,
2355       to_char(1 + 2 + 4 + 8), -- generic
2356       'N',
2357       'Y',
2358       'N',
2359       'N'
2360     );
2361 
2362     l_step_seq := l_step_seq + 10;
2363 
2364     insert into PJI_MT_PRC_STEPS
2365     (
2366       PROCESS_NAME,
2367       STEP_NAME,
2368       STEP_SEQ,
2369       STEP_TYPE,
2370       CONFIG_PROJ_PERF_FLAG,
2371       CONFIG_COST_FLAG,
2372       CONFIG_PROFIT_FLAG,
2373       CONFIG_UTIL_FLAG
2374     )
2375     values
2376     (
2377       'PJI_EXTR',
2378       'PJI_FM_SUM_EXTR.AGGREGATE_ACT_SLICES(p_worker_id);',
2379       l_step_seq,
2380       to_char(1 + 2 + 4 + 8), -- generic
2381       'N',
2382       'N',
2383       'Y',
2384       'N'
2385     );
2386 
2387     l_step_seq := l_step_seq + 10;
2388 
2389     insert into PJI_MT_PRC_STEPS
2390     (
2391       PROCESS_NAME,
2392       STEP_NAME,
2393       STEP_SEQ,
2394       STEP_TYPE,
2395       CONFIG_PROJ_PERF_FLAG,
2396       CONFIG_COST_FLAG,
2397       CONFIG_PROFIT_FLAG,
2398       CONFIG_UTIL_FLAG
2399     )
2400     values
2401     (
2402       'PJI_EXTR',
2403       'PJI_FM_SUM_EXTR.FORCE_SUBSEQUENT_RUN(p_worker_id);',
2404       l_step_seq,
2405       to_char(1 + 2 + 4 + 8), -- generic
2406       'N',
2407       'Y',
2408       'Y',
2409       'Y'
2410     );
2411 
2412     l_step_seq := l_step_seq + 10;
2413 
2414     insert into PJI_MT_PRC_STEPS
2415     (
2416       PROCESS_NAME,
2417       STEP_NAME,
2418       STEP_SEQ,
2419       STEP_TYPE,
2420       CONFIG_PROJ_PERF_FLAG,
2421       CONFIG_COST_FLAG,
2422       CONFIG_PROFIT_FLAG,
2423       CONFIG_UTIL_FLAG
2424     )
2425     values
2426     (
2427       'PJI_EXTR',
2428       'PJI_FM_SUM_EXTR.CLEANUP_WORKER(p_worker_id);',
2429       l_step_seq,
2430       to_char(1 + 2 + 4 + 8), -- generic
2431       'Y',
2432       'Y',
2433       'Y',
2434       'Y'
2435     );
2436 
2437     -- ------------------------------------------------------------------------
2438     -- Stage 2 Summarization - Project Intellingence - FM and RM
2439     -- ------------------------------------------------------------------------
2440 
2441     l_step_seq := 10;
2442 
2443     insert into PJI_MT_PRC_STEPS
2444     (
2445       PROCESS_NAME,
2446       STEP_NAME,
2447       STEP_SEQ,
2448       STEP_TYPE,
2449       CONFIG_PROJ_PERF_FLAG,
2450       CONFIG_COST_FLAG,
2451       CONFIG_PROFIT_FLAG,
2452       CONFIG_UTIL_FLAG
2453     )
2454     values
2455     (
2456       'PJI_PJI',
2457       'PJI_RM_SUM_MAIN.INIT_PROCESS;',
2458       l_step_seq,
2459       to_char(1 + 2 + 4 + 8), -- generic
2460       'N',
2461       'Y',
2462       'Y',
2463       'Y'
2464     );
2465 
2466     l_step_seq := l_step_seq + 10;
2467 
2468     insert into PJI_MT_PRC_STEPS
2469     (
2470       PROCESS_NAME,
2471       STEP_NAME,
2472       STEP_SEQ,
2473       STEP_TYPE,
2474       CONFIG_PROJ_PERF_FLAG,
2475       CONFIG_COST_FLAG,
2476       CONFIG_PROFIT_FLAG,
2477       CONFIG_UTIL_FLAG
2478     )
2479     values
2480     (
2481       'PJI_PJI',
2482       'PJI_PJI_EXTRACTION_UTILS.UPDATE_PJI_RM_WORK_TYPE_INFO(p_process);',
2483       l_step_seq,
2484       to_char(1 + 2 + 4 + 8), -- generic
2485       'N',
2486       'Y',
2487       'Y',
2488       'Y'
2489     );
2490 
2491     l_step_seq := l_step_seq + 10;
2492 
2493     insert into PJI_MT_PRC_STEPS
2494     (
2495       PROCESS_NAME,
2496       STEP_NAME,
2497       STEP_SEQ,
2498       STEP_TYPE,
2499       CONFIG_PROJ_PERF_FLAG,
2500       CONFIG_COST_FLAG,
2501       CONFIG_PROFIT_FLAG,
2502       CONFIG_UTIL_FLAG
2503     )
2504     values
2505     (
2506       'PJI_PJI',
2507       'PJI_PJI_EXTRACTION_UTILS.UPDATE_RESOURCE_DATA(p_process);',
2508       l_step_seq,
2509       to_char(1 + 2 + 4 + 8), -- generic
2510       'N',
2511       'Y',
2512       'Y',
2513       'Y'
2514     );
2515 
2516     l_step_seq := l_step_seq + 10;
2517 
2518     insert into PJI_MT_PRC_STEPS
2519     (
2520       PROCESS_NAME,
2521       STEP_NAME,
2522       STEP_SEQ,
2523       STEP_TYPE,
2524       CONFIG_PROJ_PERF_FLAG,
2525       CONFIG_COST_FLAG,
2526       CONFIG_PROFIT_FLAG,
2527       CONFIG_UTIL_FLAG
2528     )
2529     values
2530     (
2531       'PJI_PJI',
2532       'PJI_RM_SUM_MAIN.RUN_PROCESS;',
2533       l_step_seq,
2534       to_char(1 + 2 + 4 + 8), -- generic
2535       'N',
2536       'Y',
2537       'Y',
2538       'Y'
2539     );
2540 
2541     l_step_seq := l_step_seq + 10;
2542 
2543     insert into PJI_MT_PRC_STEPS
2544     (
2545       PROCESS_NAME,
2546       STEP_NAME,
2547       STEP_SEQ,
2548       STEP_TYPE,
2549       CONFIG_PROJ_PERF_FLAG,
2550       CONFIG_COST_FLAG,
2551       CONFIG_PROFIT_FLAG,
2552       CONFIG_UTIL_FLAG
2553     )
2554     values
2555     (
2556       'PJI_PJI',
2557       'PJI_RM_SUM_MAIN.WRAPUP_PROCESS;',
2558       l_step_seq,
2559       to_char(1 + 2 + 4 + 8), -- generic
2560       'N',
2561       'Y',
2562       'Y',
2563       'Y'
2564     );
2565 
2566     l_step_seq := l_step_seq + 10;
2567 
2568     insert into PJI_MT_PRC_STEPS
2569     (
2570       PROCESS_NAME,
2571       STEP_NAME,
2572       STEP_SEQ,
2573       STEP_TYPE,
2574       CONFIG_PROJ_PERF_FLAG,
2575       CONFIG_COST_FLAG,
2576       CONFIG_PROFIT_FLAG,
2577       CONFIG_UTIL_FLAG
2578     )
2579     values
2580     (
2581       'PJI_PJI',
2582       'PJI_FM_PLAN_EXTR.UPDATE_PLAN_ORG_INFO(p_worker_id);',
2583       l_step_seq,
2584       to_char(1 + 2 + 4 + 8), -- generic
2585       'N',
2586       'Y',
2587       'N',
2588       'N'
2589     );
2590 
2591     l_step_seq := l_step_seq + 10;
2592 
2593     insert into PJI_MT_PRC_STEPS
2594     (
2595       PROCESS_NAME,
2596       STEP_NAME,
2597       STEP_SEQ,
2598       STEP_TYPE,
2599       CONFIG_PROJ_PERF_FLAG,
2600       CONFIG_COST_FLAG,
2601       CONFIG_PROFIT_FLAG,
2602       CONFIG_UTIL_FLAG
2603     )
2604     values
2605     (
2606       'PJI_PJI',
2607       'PJI_FM_PLAN_EXTR.EXTRACT_PLAN_VERSIONS(p_worker_id);',
2608       l_step_seq,
2609       to_char(1 + 2 + 4 + 8), -- generic
2610       'N',
2611       'Y',
2612       'N',
2613       'N'
2614     );
2615 
2616     l_step_seq := l_step_seq + 10;
2617 
2618     insert into PJI_MT_PRC_STEPS
2619     (
2620       PROCESS_NAME,
2621       STEP_NAME,
2622       STEP_SEQ,
2623       STEP_TYPE,
2624       CONFIG_PROJ_PERF_FLAG,
2625       CONFIG_COST_FLAG,
2626       CONFIG_PROFIT_FLAG,
2627       CONFIG_UTIL_FLAG
2628     )
2629     values
2630     (
2631       'PJI_PJI',
2632       'PJI_FM_PLAN_EXTR.EXTRACT_BATCH_PLAN(p_worker_id);',
2633       l_step_seq,
2634       to_char(1 + 2 + 4 + 8), -- generic
2635       'N',
2636       'Y',
2637       'N',
2638       'N'
2639     );
2640 
2641     l_step_seq := l_step_seq + 10;
2642 
2643     insert into PJI_MT_PRC_STEPS
2644     (
2645       PROCESS_NAME,
2646       STEP_NAME,
2647       STEP_SEQ,
2648       STEP_TYPE,
2649       CONFIG_PROJ_PERF_FLAG,
2650       CONFIG_COST_FLAG,
2651       CONFIG_PROFIT_FLAG,
2652       CONFIG_UTIL_FLAG
2653     )
2654     values
2655     (
2656       'PJI_PJI',
2657       'PJI_FM_PLAN_EXTR.SPREAD_ENT_PLANS(p_worker_id);',
2658       l_step_seq,
2659       to_char(1 + 2 + 4 + 8), -- generic
2660       'N',
2661       'Y',
2662       'N',
2663       'N'
2664     );
2665 
2666     l_step_seq := l_step_seq + 10;
2667 
2668     insert into PJI_MT_PRC_STEPS
2669     (
2670       PROCESS_NAME,
2671       STEP_NAME,
2672       STEP_SEQ,
2673       STEP_TYPE,
2674       CONFIG_PROJ_PERF_FLAG,
2675       CONFIG_COST_FLAG,
2676       CONFIG_PROFIT_FLAG,
2677       CONFIG_UTIL_FLAG
2678     )
2679     values
2680     (
2681       'PJI_PJI',
2682       'PJI_FM_PLAN_EXTR.PLAN_CURR_CONV_TABLE(p_worker_id);',
2683       l_step_seq,
2684       to_char(1 + 2 + 4 + 8), -- generic
2685       'N',
2686       'Y',
2687       'N',
2688       'N'
2689     );
2690 
2691     l_step_seq := l_step_seq + 10;
2692 
2693     insert into PJI_MT_PRC_STEPS
2694     (
2695       PROCESS_NAME,
2696       STEP_NAME,
2697       STEP_SEQ,
2698       STEP_TYPE,
2699       CONFIG_PROJ_PERF_FLAG,
2700       CONFIG_COST_FLAG,
2701       CONFIG_PROFIT_FLAG,
2702       CONFIG_UTIL_FLAG
2703     )
2704     values
2705     (
2706       'PJI_PJI',
2707       'PJI_FM_PLAN_EXTR.CONVERT_TO_GLOBAL_CURRENCY(p_worker_id);',
2708       l_step_seq,
2709       to_char(1 + 2 + 4 + 8), -- generic
2710       'N',
2711       'Y',
2712       'N',
2713       'N'
2714     );
2715 
2716     l_step_seq := l_step_seq + 10;
2717 
2718     insert into PJI_MT_PRC_STEPS
2719     (
2720       PROCESS_NAME,
2721       STEP_NAME,
2722       STEP_SEQ,
2723       STEP_TYPE,
2724       CONFIG_PROJ_PERF_FLAG,
2725       CONFIG_COST_FLAG,
2726       CONFIG_PROFIT_FLAG,
2727       CONFIG_UTIL_FLAG
2728     )
2729     values
2730     (
2731       'PJI_PJI',
2732       'PJI_FM_PLAN_EXTR.CONVERT_TO_GLOBAL2_CURRENCY(p_worker_id);',
2733       l_step_seq,
2734       to_char(1 + 2 + 4 + 8), -- generic
2735       'N',
2736       'Y',
2737       'N',
2738       'N'
2739     );
2740 
2741     l_step_seq := l_step_seq + 10;
2742 
2743     insert into PJI_MT_PRC_STEPS
2744     (
2745       PROCESS_NAME,
2746       STEP_NAME,
2747       STEP_SEQ,
2748       STEP_TYPE,
2749       CONFIG_PROJ_PERF_FLAG,
2750       CONFIG_COST_FLAG,
2751       CONFIG_PROFIT_FLAG,
2752       CONFIG_UTIL_FLAG
2753     )
2754     values
2755     (
2756       'PJI_PJI',
2757       'PJI_FM_PLAN_EXTR.CONVERT_TO_PA_PERIODS(p_worker_id);',
2758       l_step_seq,
2759       to_char(1 + 2 + 4 + 8), -- generic
2760       'N',
2761       'Y',
2762       'N',
2763       'N'
2764     );
2765 
2766     l_step_seq := l_step_seq + 10;
2767 
2768     insert into PJI_MT_PRC_STEPS
2769     (
2770       PROCESS_NAME,
2771       STEP_NAME,
2772       STEP_SEQ,
2773       STEP_TYPE,
2774       CONFIG_PROJ_PERF_FLAG,
2775       CONFIG_COST_FLAG,
2776       CONFIG_PROFIT_FLAG,
2777       CONFIG_UTIL_FLAG
2778     )
2779     values
2780     (
2781       'PJI_PJI',
2782       'PJI_FM_PLAN_EXTR.CONVERT_TO_GL_PERIODS(p_worker_id);',
2783       l_step_seq,
2784       to_char(1 + 2 + 4 + 8), -- generic
2785       'N',
2786       'Y',
2787       'N',
2788       'N'
2789     );
2790 
2791     l_step_seq := l_step_seq + 10;
2792 
2793     insert into PJI_MT_PRC_STEPS
2794     (
2795       PROCESS_NAME,
2796       STEP_NAME,
2797       STEP_SEQ,
2798       STEP_TYPE,
2799       CONFIG_PROJ_PERF_FLAG,
2800       CONFIG_COST_FLAG,
2801       CONFIG_PROFIT_FLAG,
2802       CONFIG_UTIL_FLAG
2803     )
2804     values
2805     (
2806       'PJI_PJI',
2807       'PJI_FM_PLAN_EXTR.CONVERT_TO_ENT_PERIODS(p_worker_id);',
2808       l_step_seq,
2809       to_char(1 + 2 + 4 + 8), -- generic
2810       'N',
2811       'Y',
2812       'N',
2813       'N'
2814     );
2815 
2816     l_step_seq := l_step_seq + 10;
2817 
2818     insert into PJI_MT_PRC_STEPS
2819     (
2820       PROCESS_NAME,
2821       STEP_NAME,
2822       STEP_SEQ,
2823       STEP_TYPE,
2824       CONFIG_PROJ_PERF_FLAG,
2825       CONFIG_COST_FLAG,
2826       CONFIG_PROFIT_FLAG,
2827       CONFIG_UTIL_FLAG
2828     )
2829     values
2830     (
2831       'PJI_PJI',
2832       'PJI_FM_PLAN_EXTR.CONVERT_TO_ENTW_PERIODS(p_worker_id);',
2833       l_step_seq,
2834       to_char(1 + 2 + 4 + 8), -- generic
2835       'N',
2836       'Y',
2837       'N',
2838       'N'
2839     );
2840 
2841     l_step_seq := l_step_seq + 10;
2842 
2843     insert into PJI_MT_PRC_STEPS
2844     (
2845       PROCESS_NAME,
2846       STEP_NAME,
2847       STEP_SEQ,
2848       STEP_TYPE,
2849       CONFIG_PROJ_PERF_FLAG,
2850       CONFIG_COST_FLAG,
2851       CONFIG_PROFIT_FLAG,
2852       CONFIG_UTIL_FLAG
2853     )
2854     values
2855     (
2856       'PJI_PJI',
2857       'PJI_FM_PLAN_EXTR.DANGLING_PLAN_VERSIONS(p_worker_id);',
2858       l_step_seq,
2859       to_char(1 + 2 + 4 + 8), -- generic
2860       'N',
2861       'Y',
2862       'N',
2863       'N'
2864     );
2865 
2866     l_step_seq := l_step_seq + 10;
2867 
2868     insert into PJI_MT_PRC_STEPS
2869     (
2870       PROCESS_NAME,
2871       STEP_NAME,
2872       STEP_SEQ,
2873       STEP_TYPE,
2874       CONFIG_PROJ_PERF_FLAG,
2875       CONFIG_COST_FLAG,
2876       CONFIG_PROFIT_FLAG,
2877       CONFIG_UTIL_FLAG
2878     )
2879     values
2880     (
2881       'PJI_PJI',
2882       'PJI_FM_PLAN_EXTR.SUMMARIZE_EXTRACT(p_worker_id);',
2883       l_step_seq,
2884       to_char(1 + 2 + 4 + 8), -- generic
2885       'N',
2886       'Y',
2887       'N',
2888       'N'
2889     );
2890 
2891     l_step_seq := l_step_seq + 10;
2892 
2893     insert into PJI_MT_PRC_STEPS
2894     (
2895       PROCESS_NAME,
2896       STEP_NAME,
2897       STEP_SEQ,
2898       STEP_TYPE,
2899       CONFIG_PROJ_PERF_FLAG,
2900       CONFIG_COST_FLAG,
2901       CONFIG_PROFIT_FLAG,
2902       CONFIG_UTIL_FLAG
2903     )
2904     values
2905     (
2906       'PJI_PJI',
2907       'PJI_FM_PLAN_EXTR.EXTRACT_UPDATED_VERSIONS(p_worker_id);',
2908       l_step_seq,
2909       to_char(1 + 2 + 4 + 8), -- generic
2910       'N',
2911       'Y',
2912       'N',
2913       'N'
2914     );
2915 
2916     l_step_seq := l_step_seq + 10;
2917 
2918     insert into PJI_MT_PRC_STEPS
2919     (
2920       PROCESS_NAME,
2921       STEP_NAME,
2922       STEP_SEQ,
2923       STEP_TYPE,
2924       CONFIG_PROJ_PERF_FLAG,
2925       CONFIG_COST_FLAG,
2926       CONFIG_PROFIT_FLAG,
2927       CONFIG_UTIL_FLAG
2928     )
2929     values
2930     (
2931       'PJI_PJI',
2932       'PJI_FM_PLAN_EXTR.UPDATE_BATCH_VERSIONS_PRE(p_worker_id);',
2933       l_step_seq,
2934       to_char(1 + 2 + 4 + 8), -- generic
2935       'N',
2936       'Y',
2937       'N',
2938       'N'
2939     );
2940 
2941     l_step_seq := l_step_seq + 10;
2942 
2943     -- helper step
2944     insert into PJI_MT_PRC_STEPS
2945     (
2946       PROCESS_NAME,
2947       STEP_NAME,
2948       STEP_SEQ,
2949       STEP_TYPE,
2950       CONFIG_PROJ_PERF_FLAG,
2951       CONFIG_COST_FLAG,
2952       CONFIG_PROFIT_FLAG,
2953       CONFIG_UTIL_FLAG
2954     )
2955     values
2956     (
2957       'PJI_PJI_HELPER',
2958       'PJI_FM_PLAN_EXTR.UPDATE_BATCH_VERSIONS(p_worker_id);',
2959       l_step_seq,
2960       to_char(1 + 2 + 4 + 8), -- generic
2961       'N',
2962       'Y',
2963       'N',
2964       'N'
2965     );
2966 
2967     l_step_seq := l_step_seq + 10;
2968 
2969     insert into PJI_MT_PRC_STEPS
2970     (
2971       PROCESS_NAME,
2972       STEP_NAME,
2973       STEP_SEQ,
2974       STEP_TYPE,
2975       CONFIG_PROJ_PERF_FLAG,
2976       CONFIG_COST_FLAG,
2977       CONFIG_PROFIT_FLAG,
2978       CONFIG_UTIL_FLAG
2979     )
2980     values
2981     (
2982       'PJI_PJI',
2983       'PJI_FM_PLAN_EXTR.UPDATE_BATCH_VERSIONS_POST(p_worker_id);',
2984       l_step_seq,
2985       to_char(1 + 2 + 4 + 8), -- generic
2986       'N',
2987       'Y',
2988       'N',
2989       'N'
2990     );
2991 
2992     l_step_seq := l_step_seq + 10;
2993 
2994     insert into PJI_MT_PRC_STEPS
2995     (
2996       PROCESS_NAME,
2997       STEP_NAME,
2998       STEP_SEQ,
2999       STEP_TYPE,
3000       CONFIG_PROJ_PERF_FLAG,
3001       CONFIG_COST_FLAG,
3002       CONFIG_PROFIT_FLAG,
3003       CONFIG_UTIL_FLAG
3004     )
3005     values
3006     (
3007       'PJI_PJI',
3008       'PJI_FM_PLAN_EXTR.UPDATE_BATCH_STATUSES(p_worker_id);',
3009       l_step_seq,
3010       to_char(1 + 2 + 4 + 8), -- generic
3011       'N',
3012       'Y',
3013       'Y',
3014       'N'
3015     );
3016 
3017     l_step_seq := l_step_seq + 10;
3018 
3019     insert into PJI_MT_PRC_STEPS
3020     (
3021       PROCESS_NAME,
3022       STEP_NAME,
3023       STEP_SEQ,
3024       STEP_TYPE,
3025       CONFIG_PROJ_PERF_FLAG,
3026       CONFIG_COST_FLAG,
3027       CONFIG_PROFIT_FLAG,
3028       CONFIG_UTIL_FLAG
3029     )
3030     values
3031     (
3032       'PJI_PJI',
3033       'PJI_PJ_PROJ_CLASS_EXTR.EXTR_PROJECT_CLASSES(p_worker_id);',
3034       l_step_seq,
3035       to_char(1 + 2 + 4 + 8), -- generic
3036       'N',
3037       'Y',
3038       'Y',
3039       'N'
3040     );
3041 
3042     l_step_seq := l_step_seq + 10;
3043 
3044     insert into PJI_MT_PRC_STEPS
3045     (
3046       PROCESS_NAME,
3047       STEP_NAME,
3048       STEP_SEQ,
3049       STEP_TYPE,
3050       CONFIG_PROJ_PERF_FLAG,
3051       CONFIG_COST_FLAG,
3052       CONFIG_PROFIT_FLAG,
3053       CONFIG_UTIL_FLAG
3054     )
3055     values
3056     (
3057       'PJI_PJI',
3058       'PJI_RM_SUM_EXTR.PROCESS_DANGLING_ROWS(p_worker_id);',
3059       l_step_seq,
3060       to_char(1 + 2 + 4 + 8), -- generic
3061       'N',
3062       'N',
3063       'N',
3064       'Y'
3065     );
3066 
3067     l_step_seq := l_step_seq + 10;
3068 
3069     insert into PJI_MT_PRC_STEPS
3070     (
3071       PROCESS_NAME,
3072       STEP_NAME,
3073       STEP_SEQ,
3074       STEP_TYPE,
3075       CONFIG_PROJ_PERF_FLAG,
3076       CONFIG_COST_FLAG,
3077       CONFIG_PROFIT_FLAG,
3078       CONFIG_UTIL_FLAG
3079     )
3080     values
3081     (
3082       'PJI_PJI',
3083       'PJI_RM_SUM_EXTR.PURGE_DANGLING_ROWS(p_worker_id);',
3084       l_step_seq,
3085       to_char(1 + 2 + 4 + 8), -- generic
3086       'N',
3087       'N',
3088       'N',
3089       'Y'
3090     );
3091 
3092     l_step_seq := l_step_seq + 10;
3093 
3094     insert into PJI_MT_PRC_STEPS
3095     (
3096       PROCESS_NAME,
3097       STEP_NAME,
3098       STEP_SEQ,
3099       STEP_TYPE,
3100       CONFIG_PROJ_PERF_FLAG,
3101       CONFIG_COST_FLAG,
3102       CONFIG_PROFIT_FLAG,
3103       CONFIG_UTIL_FLAG
3104     )
3105     values
3106     (
3107       'PJI_PJI',
3108       'PJI_RM_SUM_ROLLUP_RES.JOB_NONUTIL2UTIL(p_worker_id);',
3109       l_step_seq,
3110       to_char(2 + 4), -- incremental + partial
3111       'N',
3112       'N',
3113       'N',
3114       'Y'
3115     );
3116 
3117     l_step_seq := l_step_seq + 10;
3118 
3119     insert into PJI_MT_PRC_STEPS
3120     (
3121       PROCESS_NAME,
3122       STEP_NAME,
3123       STEP_SEQ,
3124       STEP_TYPE,
3125       CONFIG_PROJ_PERF_FLAG,
3126       CONFIG_COST_FLAG,
3127       CONFIG_PROFIT_FLAG,
3128       CONFIG_UTIL_FLAG
3129     )
3130     values
3131     (
3132       'PJI_PJI',
3133       'PJI_RM_SUM_EXTR.EXTRACT_BATCH_FID_ROWIDS(p_worker_id);',
3134       l_step_seq,
3135       to_char(1 + 2 + 4 + 8), -- generic
3136       'N',
3137       'N',
3138       'N',
3139       'Y'
3140     );
3141 
3142     l_step_seq := l_step_seq + 10;
3143 
3144     insert into PJI_MT_PRC_STEPS
3145     (
3146       PROCESS_NAME,
3147       STEP_NAME,
3148       STEP_SEQ,
3149       STEP_TYPE,
3150       CONFIG_PROJ_PERF_FLAG,
3151       CONFIG_COST_FLAG,
3152       CONFIG_PROFIT_FLAG,
3153       CONFIG_UTIL_FLAG
3154     )
3155     values
3156     (
3157       'PJI_PJI',
3158       'PJI_RM_SUM_EXTR.MARK_EXTRACTED_ROWS_PRE(p_worker_id);',
3159       l_step_seq,
3160       to_char(1 + 2 + 4 + 8), -- generic
3161       'N',
3162       'N',
3163       'N',
3164       'Y'
3165     );
3166 
3167     l_step_seq := l_step_seq + 10;
3168 
3169     -- helper step
3170     insert into PJI_MT_PRC_STEPS
3171     (
3172       PROCESS_NAME,
3173       STEP_NAME,
3174       STEP_SEQ,
3175       STEP_TYPE,
3176       CONFIG_PROJ_PERF_FLAG,
3177       CONFIG_COST_FLAG,
3178       CONFIG_PROFIT_FLAG,
3179       CONFIG_UTIL_FLAG
3180     )
3181     values
3182     (
3183       'PJI_PJI_HELPER',
3184       'PJI_RM_SUM_EXTR.MARK_EXTRACTED_ROWS(p_worker_id);',
3185       l_step_seq,
3186       to_char(1 + 2 + 4 + 8), -- generic
3187       'N',
3188       'N',
3189       'N',
3190       'Y'
3191     );
3192 
3193     l_step_seq := l_step_seq + 10;
3194 
3195     insert into PJI_MT_PRC_STEPS
3196     (
3197       PROCESS_NAME,
3198       STEP_NAME,
3199       STEP_SEQ,
3200       STEP_TYPE,
3201       CONFIG_PROJ_PERF_FLAG,
3202       CONFIG_COST_FLAG,
3203       CONFIG_PROFIT_FLAG,
3204       CONFIG_UTIL_FLAG
3205     )
3206     values
3207     (
3208       'PJI_PJI',
3209       'PJI_RM_SUM_EXTR.MARK_EXTRACTED_ROWS_POST(p_worker_id);',
3210       l_step_seq,
3211       to_char(1 + 2 + 4 + 8), -- generic
3212       'N',
3213       'N',
3214       'N',
3215       'Y'
3216     );
3217 
3218     l_step_seq := l_step_seq + 10;
3219 
3220     insert into PJI_MT_PRC_STEPS
3221     (
3222       PROCESS_NAME,
3223       STEP_NAME,
3224       STEP_SEQ,
3225       STEP_TYPE,
3226       CONFIG_PROJ_PERF_FLAG,
3227       CONFIG_COST_FLAG,
3228       CONFIG_PROFIT_FLAG,
3229       CONFIG_UTIL_FLAG
3230     )
3231     values
3232     (
3233       'PJI_PJI',
3234       'PJI_RM_SUM_EXTR.RES_ROWID_TABLE(p_worker_id);',
3235       l_step_seq,
3236       to_char(1 + 2 + 4 + 8), -- generic
3237       'N',
3238       'N',
3239       'N',
3240       'Y'
3241     );
3242 
3243     l_step_seq := l_step_seq + 10;
3244 
3245     insert into PJI_MT_PRC_STEPS
3246     (
3247       PROCESS_NAME,
3248       STEP_NAME,
3249       STEP_SEQ,
3250       STEP_TYPE,
3251       CONFIG_PROJ_PERF_FLAG,
3252       CONFIG_COST_FLAG,
3253       CONFIG_PROFIT_FLAG,
3254       CONFIG_UTIL_FLAG
3255     )
3256     values
3257     (
3258       'PJI_PJI',
3259       'PJI_RM_SUM_EXTR.EXTRACT_BATCH_FID_FULL(p_worker_id);',
3260       l_step_seq,
3261       to_char(1), -- full
3262       'N',
3263       'N',
3264       'N',
3265       'Y'
3266     );
3267 
3268     l_step_seq := l_step_seq + 10;
3269 
3270     insert into PJI_MT_PRC_STEPS
3271     (
3272       PROCESS_NAME,
3273       STEP_NAME,
3274       STEP_SEQ,
3275       STEP_TYPE,
3276       CONFIG_PROJ_PERF_FLAG,
3277       CONFIG_COST_FLAG,
3278       CONFIG_PROFIT_FLAG,
3279       CONFIG_UTIL_FLAG
3280     )
3281     values
3282     (
3283       'PJI_PJI',
3284       'PJI_RM_SUM_EXTR.EXTRACT_BATCH_FID(p_worker_id);',
3285       l_step_seq,
3286       to_char(2 + 4), -- incremental + partial
3287       'N',
3288       'N',
3289       'N',
3290       'Y'
3291     );
3292 
3293     l_step_seq := l_step_seq + 10;
3294 
3295     insert into PJI_MT_PRC_STEPS
3296     (
3297       PROCESS_NAME,
3298       STEP_NAME,
3299       STEP_SEQ,
3300       STEP_TYPE,
3301       CONFIG_PROJ_PERF_FLAG,
3302       CONFIG_COST_FLAG,
3303       CONFIG_PROFIT_FLAG,
3304       CONFIG_UTIL_FLAG
3305     )
3306     values
3307     (
3308       'PJI_PJI',
3309       'PJI_RM_SUM_EXTR.MOVE_DANGLING_ROWS(p_worker_id);',
3310       l_step_seq,
3311       to_char(1 + 2 + 4 + 8), -- generic
3312       'N',
3313       'N',
3314       'N',
3315       'Y'
3316     );
3317 
3318     l_step_seq := l_step_seq + 10;
3319 
3320     insert into PJI_MT_PRC_STEPS
3321     (
3322       PROCESS_NAME,
3323       STEP_NAME,
3324       STEP_SEQ,
3325       STEP_TYPE,
3326       CONFIG_PROJ_PERF_FLAG,
3327       CONFIG_COST_FLAG,
3328       CONFIG_PROFIT_FLAG,
3329       CONFIG_UTIL_FLAG
3330     )
3331     values
3332     (
3333       'PJI_PJI',
3334       'PJI_RM_SUM_EXTR.PURGE_RES_DATA(p_worker_id);',
3335       l_step_seq,
3336       to_char(1 + 2 + 4 + 8), -- generic
3337       'N',
3338       'N',
3339       'N',
3340       'Y'
3341     );
3342 
3343     l_step_seq := l_step_seq + 10;
3344 
3345     insert into PJI_MT_PRC_STEPS
3346     (
3347       PROCESS_NAME,
3348       STEP_NAME,
3349       STEP_SEQ,
3350       STEP_TYPE,
3351       CONFIG_PROJ_PERF_FLAG,
3352       CONFIG_COST_FLAG,
3353       CONFIG_PROFIT_FLAG,
3354       CONFIG_UTIL_FLAG
3355     )
3356     values
3357     (
3358       'PJI_PJI',
3359       'PJI_RM_SUM_EXTR.GET_JOB_ID_LOOKUPS(p_worker_id);',
3360       l_step_seq,
3361       to_char(1 + 2 + 4 + 8), -- generic
3362       'N',
3363       'N',
3364       'N',
3365       'Y'
3366     );
3367 
3368     l_step_seq := l_step_seq + 10;
3369 
3370     insert into PJI_MT_PRC_STEPS
3371     (
3372       PROCESS_NAME,
3373       STEP_NAME,
3374       STEP_SEQ,
3375       STEP_TYPE,
3376       CONFIG_PROJ_PERF_FLAG,
3377       CONFIG_COST_FLAG,
3378       CONFIG_PROFIT_FLAG,
3379       CONFIG_UTIL_FLAG
3380     )
3381     values
3382     (
3383       'PJI_PJI',
3384       'PJI_RM_SUM_EXTR.PROCESS_JOB_ID(p_worker_id);',
3385       l_step_seq,
3386       to_char(1 + 2 + 4 + 8), -- generic
3387       'N',
3388       'N',
3389       'N',
3390       'Y'
3391     );
3392 
3393     l_step_seq := l_step_seq + 10;
3394 
3395     insert into PJI_MT_PRC_STEPS
3396     (
3397       PROCESS_NAME,
3398       STEP_NAME,
3399       STEP_SEQ,
3400       STEP_TYPE,
3401       CONFIG_PROJ_PERF_FLAG,
3402       CONFIG_COST_FLAG,
3403       CONFIG_PROFIT_FLAG,
3404       CONFIG_UTIL_FLAG
3405     )
3406     values
3407     (
3408       'PJI_PJI',
3409       'PJI_RM_SUM_ROLLUP_RES.CALC_RMS_AVL_AND_WT(p_worker_id);',
3410       l_step_seq,
3411       to_char(1 + 2 + 4 + 8), -- generic
3412       'N',
3413       'N',
3414       'N',
3415       'Y'
3416     );
3417 
3418     l_step_seq := l_step_seq + 10;
3419 
3420     insert into PJI_MT_PRC_STEPS
3421     (
3422       PROCESS_NAME,
3423       STEP_NAME,
3424       STEP_SEQ,
3425       STEP_TYPE,
3426       CONFIG_PROJ_PERF_FLAG,
3427       CONFIG_COST_FLAG,
3428       CONFIG_PROFIT_FLAG,
3429       CONFIG_UTIL_FLAG
3430     )
3431     values
3432     (
3433       'PJI_PJI',
3434       'PJI_RM_SUM_AVL.INS_INTO_RES_STATUS(p_worker_id);',
3435       l_step_seq,
3436       to_char(1 + 2 + 4 + 8), -- generic
3437       'N',
3438       'N',
3439       'N',
3440       'Y'
3441     );
3442 
3443     l_step_seq := l_step_seq + 10;
3444 
3445     -- helper step
3446     insert into PJI_MT_PRC_STEPS
3447     (
3448       PROCESS_NAME,
3449       STEP_NAME,
3450       STEP_SEQ,
3451       STEP_TYPE,
3452       CONFIG_PROJ_PERF_FLAG,
3453       CONFIG_COST_FLAG,
3454       CONFIG_PROFIT_FLAG,
3455       CONFIG_UTIL_FLAG
3456     )
3457     values
3458     (
3459       'PJI_PJI_HELPER',
3460       'PJI_RM_SUM_AVL.START_RES_AVL_CALC_R1(p_worker_id);',
3461       l_step_seq,
3462       to_char(1 + 2 + 4 + 8), -- generic
3463       'N',
3464       'N',
3465       'N',
3466       'Y'
3467     );
3468 
3469     l_step_seq := l_step_seq + 10;
3470 
3471     insert into PJI_MT_PRC_STEPS
3472     (
3473       PROCESS_NAME,
3474       STEP_NAME,
3475       STEP_SEQ,
3476       STEP_TYPE,
3477       CONFIG_PROJ_PERF_FLAG,
3478       CONFIG_COST_FLAG,
3479       CONFIG_PROFIT_FLAG,
3480       CONFIG_UTIL_FLAG
3481     )
3482     values
3483     (
3484       'PJI_PJI',
3485       'PJI_FM_SUM_BKLG.ROWID_ACTIVITY_DATES_FIN(p_worker_id);',
3486       l_step_seq,
3487       to_char(1 + 2 + 4 + 8), -- generic
3488       'Y',
3489       'Y',
3490       'N',
3491       'Y'
3492     );
3493 
3494     l_step_seq := l_step_seq + 10;
3495 
3496     insert into PJI_MT_PRC_STEPS
3497     (
3498       PROCESS_NAME,
3499       STEP_NAME,
3500       STEP_SEQ,
3501       STEP_TYPE,
3502       CONFIG_PROJ_PERF_FLAG,
3503       CONFIG_COST_FLAG,
3504       CONFIG_PROFIT_FLAG,
3505       CONFIG_UTIL_FLAG
3506     )
3507     values
3508     (
3509       'PJI_PJI',
3510       'PJI_FM_SUM_BKLG.UPDATE_ACTIVITY_DATES_FIN(p_worker_id);',
3511       l_step_seq,
3512       to_char(1 + 2 + 4 + 8), -- generic
3513       'Y',
3514       'Y',
3515       'N',
3516       'Y'
3517     );
3518 
3519     l_step_seq := l_step_seq + 10;
3520 
3521     insert into PJI_MT_PRC_STEPS
3522     (
3523       PROCESS_NAME,
3524       STEP_NAME,
3525       STEP_SEQ,
3526       STEP_TYPE,
3527       CONFIG_PROJ_PERF_FLAG,
3528       CONFIG_COST_FLAG,
3529       CONFIG_PROFIT_FLAG,
3530       CONFIG_UTIL_FLAG
3531     )
3532     values
3533     (
3534       'PJI_PJI',
3535       'PJI_FM_SUM_BKLG.ROWID_ACTIVITY_DATES_ACT(p_worker_id);',
3536       l_step_seq,
3537       to_char(1 + 2 + 4 + 8), -- generic
3538       'Y',
3539       'N',
3540       'Y',
3541       'N'
3542     );
3543 
3544     l_step_seq := l_step_seq + 10;
3545 
3546     insert into PJI_MT_PRC_STEPS
3547     (
3548       PROCESS_NAME,
3549       STEP_NAME,
3550       STEP_SEQ,
3551       STEP_TYPE,
3552       CONFIG_PROJ_PERF_FLAG,
3553       CONFIG_COST_FLAG,
3554       CONFIG_PROFIT_FLAG,
3555       CONFIG_UTIL_FLAG
3556     )
3557     values
3558     (
3559       'PJI_PJI',
3560       'PJI_FM_SUM_BKLG.UPDATE_ACTIVITY_DATES_ACT(p_worker_id);',
3561       l_step_seq,
3562       to_char(1 + 2 + 4 + 8), -- generic
3563       'Y',
3564       'N',
3565       'Y',
3566       'N'
3567     );
3568 
3569     l_step_seq := l_step_seq + 10;
3570 
3571     insert into PJI_MT_PRC_STEPS
3572     (
3573       PROCESS_NAME,
3574       STEP_NAME,
3575       STEP_SEQ,
3576       STEP_TYPE,
3577       CONFIG_PROJ_PERF_FLAG,
3578       CONFIG_COST_FLAG,
3579       CONFIG_PROFIT_FLAG,
3580       CONFIG_UTIL_FLAG
3581     )
3582     values
3583     (
3584       'PJI_PJI',
3585       'PJI_FM_SUM_ROLLUP_FIN.FIN_ROWID_TABLE(p_worker_id);',
3586       l_step_seq,
3587       to_char(1 + 2 + 4 + 8), -- generic
3588       'N',
3589       'Y',
3590       'Y',
3591       'N'
3592     );
3593 
3594     l_step_seq := l_step_seq + 10;
3595 
3596     insert into PJI_MT_PRC_STEPS
3597     (
3598       PROCESS_NAME,
3599       STEP_NAME,
3600       STEP_SEQ,
3601       STEP_TYPE,
3602       CONFIG_PROJ_PERF_FLAG,
3603       CONFIG_COST_FLAG,
3604       CONFIG_PROFIT_FLAG,
3605       CONFIG_UTIL_FLAG
3606     )
3607     values
3608     (
3609       'PJI_PJI',
3610       'PJI_FM_SUM_ROLLUP_FIN.AGGREGATE_FIN_ET_WT_SLICES(p_worker_id);',
3611       l_step_seq,
3612       to_char(1 + 2 + 4 + 8), -- generic
3613       'N',
3614       'Y',
3615       'Y',
3616       'N'
3617     );
3618 
3619     l_step_seq := l_step_seq + 10;
3620 
3621     insert into PJI_MT_PRC_STEPS
3622     (
3623       PROCESS_NAME,
3624       STEP_NAME,
3625       STEP_SEQ,
3626       STEP_TYPE,
3627       CONFIG_PROJ_PERF_FLAG,
3628       CONFIG_COST_FLAG,
3629       CONFIG_PROFIT_FLAG,
3630       CONFIG_UTIL_FLAG
3631     )
3632     values
3633     (
3634       'PJI_PJI',
3635       'PJI_FM_SUM_ROLLUP_FIN.PURGE_FIN_DATA(p_worker_id);',
3636       l_step_seq,
3637       to_char(1 + 2 + 4 + 8), -- generic
3638       'N',
3639       'Y',
3640       'Y',
3641       'N'
3642     );
3643 
3644     l_step_seq := l_step_seq + 10;
3645 
3646     insert into PJI_MT_PRC_STEPS
3647     (
3648       PROCESS_NAME,
3649       STEP_NAME,
3650       STEP_SEQ,
3651       STEP_TYPE,
3652       CONFIG_PROJ_PERF_FLAG,
3653       CONFIG_COST_FLAG,
3654       CONFIG_PROFIT_FLAG,
3655       CONFIG_UTIL_FLAG
3656     )
3657     values
3658     (
3659       'PJI_PJI',
3660       'PJI_FM_SUM_ROLLUP_FIN.AGGREGATE_FIN_ET_SLICES(p_worker_id);',
3661       l_step_seq,
3662       to_char(1 + 2 + 4 + 8), -- generic
3663       'N',
3664       'Y',
3665       'Y',
3666       'N'
3667     );
3668 
3669     l_step_seq := l_step_seq + 10;
3670 
3671     insert into PJI_MT_PRC_STEPS
3672     (
3673       PROCESS_NAME,
3674       STEP_NAME,
3675       STEP_SEQ,
3676       STEP_TYPE,
3677       CONFIG_PROJ_PERF_FLAG,
3678       CONFIG_COST_FLAG,
3679       CONFIG_PROFIT_FLAG,
3680       CONFIG_UTIL_FLAG
3681     )
3682     values
3683     (
3684       'PJI_PJI',
3685       'PJI_FM_SUM_ROLLUP_FIN.AGGREGATE_FIN_SLICES(p_worker_id);',
3686       l_step_seq,
3687       to_char(1 + 2 + 4 + 8), -- generic
3688       'N',
3689       'Y',
3690       'Y',
3691       'N'
3692     );
3693 
3694     l_step_seq := l_step_seq + 10;
3695 
3696     insert into PJI_MT_PRC_STEPS
3697     (
3698       PROCESS_NAME,
3699       STEP_NAME,
3700       STEP_SEQ,
3701       STEP_TYPE,
3702       CONFIG_PROJ_PERF_FLAG,
3703       CONFIG_COST_FLAG,
3704       CONFIG_PROFIT_FLAG,
3705       CONFIG_UTIL_FLAG
3706     )
3707     values
3708     (
3709       'PJI_PJI',
3710       'PJI_FM_SUM_ROLLUP_ACT.ACT_ROWID_TABLE(p_worker_id);',
3711       l_step_seq,
3712       to_char(1 + 2 + 4 + 8), -- generic
3713       'N',
3714       'Y',
3715       'Y',
3716       'N'
3717     );
3718 
3719     l_step_seq := l_step_seq + 10;
3720 
3721     insert into PJI_MT_PRC_STEPS
3722     (
3723       PROCESS_NAME,
3724       STEP_NAME,
3725       STEP_SEQ,
3726       STEP_TYPE,
3727       CONFIG_PROJ_PERF_FLAG,
3728       CONFIG_COST_FLAG,
3729       CONFIG_PROFIT_FLAG,
3730       CONFIG_UTIL_FLAG
3731     )
3732     values
3733     (
3734       'PJI_PJI',
3735       'PJI_FM_SUM_ROLLUP_ACT.AGGREGATE_ACT_SLICES(p_worker_id);',
3736       l_step_seq,
3737       to_char(1 + 2 + 4 + 8), -- generic
3738       'N',
3739       'Y',
3740       'Y',
3741       'N'
3742     );
3743 
3744     l_step_seq := l_step_seq + 10;
3745 
3746     insert into PJI_MT_PRC_STEPS
3747     (
3748       PROCESS_NAME,
3749       STEP_NAME,
3750       STEP_SEQ,
3751       STEP_TYPE,
3752       CONFIG_PROJ_PERF_FLAG,
3753       CONFIG_COST_FLAG,
3754       CONFIG_PROFIT_FLAG,
3755       CONFIG_UTIL_FLAG
3756     )
3757     values
3758     (
3759       'PJI_PJI',
3760       'PJI_FM_SUM_ROLLUP_ACT.PURGE_ACT_DATA(p_worker_id);',
3761       l_step_seq,
3762       to_char(1 + 2 + 4 + 8), -- generic
3763       'N',
3764       'Y',
3765       'Y',
3766       'N'
3767     );
3768 
3769     l_step_seq := l_step_seq + 10;
3770 
3771     insert into PJI_MT_PRC_STEPS
3772     (
3773       PROCESS_NAME,
3774       STEP_NAME,
3775       STEP_SEQ,
3776       STEP_TYPE,
3777       CONFIG_PROJ_PERF_FLAG,
3778       CONFIG_COST_FLAG,
3779       CONFIG_PROFIT_FLAG,
3780       CONFIG_UTIL_FLAG
3781     )
3782     values
3783     (
3784       'PJI_PJI',
3785       'PJI_RM_SUM_ROLLUP_RES.EXPAND_RMR_CAL_EN(p_worker_id);',
3786       l_step_seq,
3787       to_char(1 + 2 + 4 + 8), -- generic
3788       'N',
3789       'N',
3790       'N',
3791       'Y'
3792     );
3793 
3794     l_step_seq := l_step_seq + 10;
3795 
3796     insert into PJI_MT_PRC_STEPS
3797     (
3798       PROCESS_NAME,
3799       STEP_NAME,
3800       STEP_SEQ,
3801       STEP_TYPE,
3802       CONFIG_PROJ_PERF_FLAG,
3803       CONFIG_COST_FLAG,
3804       CONFIG_PROFIT_FLAG,
3805       CONFIG_UTIL_FLAG
3806     )
3807     values
3808     (
3809       'PJI_PJI',
3810       'PJI_RM_SUM_ROLLUP_RES.EXPAND_RMR_CAL_PA(p_worker_id);',
3811       l_step_seq,
3812       to_char(1 + 2 + 4 + 8), -- generic
3813       'N',
3814       'N',
3815       'N',
3816       'Y'
3817     );
3818 
3819     l_step_seq := l_step_seq + 10;
3820 
3821     insert into PJI_MT_PRC_STEPS
3822     (
3823       PROCESS_NAME,
3824       STEP_NAME,
3825       STEP_SEQ,
3826       STEP_TYPE,
3827       CONFIG_PROJ_PERF_FLAG,
3828       CONFIG_COST_FLAG,
3829       CONFIG_PROFIT_FLAG,
3830       CONFIG_UTIL_FLAG
3831     )
3832     values
3833     (
3834       'PJI_PJI',
3835       'PJI_RM_SUM_ROLLUP_RES.EXPAND_RMR_CAL_GL(p_worker_id);',
3836       l_step_seq,
3837       to_char(1 + 2 + 4 + 8), -- generic
3838       'N',
3839       'N',
3840       'N',
3841       'Y'
3842     );
3843 
3844     l_step_seq := l_step_seq + 10;
3845 
3846     insert into PJI_MT_PRC_STEPS
3847     (
3848       PROCESS_NAME,
3849       STEP_NAME,
3850       STEP_SEQ,
3851       STEP_TYPE,
3852       CONFIG_PROJ_PERF_FLAG,
3853       CONFIG_COST_FLAG,
3854       CONFIG_PROFIT_FLAG,
3855       CONFIG_UTIL_FLAG
3856     )
3857     values
3858     (
3859       'PJI_PJI',
3860       'PJI_RM_SUM_ROLLUP_RES.EXPAND_RMR_CAL_WK(p_worker_id);',
3861       l_step_seq,
3862       to_char(1 + 2 + 4 + 8), -- generic
3863       'N',
3864       'N',
3865       'N',
3866       'Y'
3867     );
3868 
3869     l_step_seq := l_step_seq + 10;
3870 
3871     insert into PJI_MT_PRC_STEPS
3872     (
3873       PROCESS_NAME,
3874       STEP_NAME,
3875       STEP_SEQ,
3876       STEP_TYPE,
3877       CONFIG_PROJ_PERF_FLAG,
3878       CONFIG_COST_FLAG,
3879       CONFIG_PROFIT_FLAG,
3880       CONFIG_UTIL_FLAG
3881     )
3882     values
3883     (
3884       'PJI_PJI',
3885       'PJI_RM_SUM_ROLLUP_RES.EXPAND_RMS_CAL_EN(p_worker_id);',
3886       l_step_seq,
3887       to_char(1 + 2 + 4 + 8), -- generic
3888       'N',
3889       'N',
3890       'N',
3891       'Y'
3892     );
3893 
3894     l_step_seq := l_step_seq + 10;
3895 
3896     insert into PJI_MT_PRC_STEPS
3897     (
3898       PROCESS_NAME,
3899       STEP_NAME,
3900       STEP_SEQ,
3901       STEP_TYPE,
3902       CONFIG_PROJ_PERF_FLAG,
3903       CONFIG_COST_FLAG,
3904       CONFIG_PROFIT_FLAG,
3905       CONFIG_UTIL_FLAG
3906     )
3907     values
3908     (
3909       'PJI_PJI',
3910       'PJI_RM_SUM_ROLLUP_RES.EXPAND_RMS_CAL_PA(p_worker_id);',
3911       l_step_seq,
3912       to_char(1 + 2 + 4 + 8), -- generic
3913       'N',
3914       'N',
3915       'N',
3916       'Y'
3917     );
3918 
3919     l_step_seq := l_step_seq + 10;
3920 
3921     insert into PJI_MT_PRC_STEPS
3922     (
3923       PROCESS_NAME,
3924       STEP_NAME,
3925       STEP_SEQ,
3926       STEP_TYPE,
3927       CONFIG_PROJ_PERF_FLAG,
3928       CONFIG_COST_FLAG,
3929       CONFIG_PROFIT_FLAG,
3930       CONFIG_UTIL_FLAG
3931     )
3932     values
3933     (
3934       'PJI_PJI',
3935       'PJI_RM_SUM_ROLLUP_RES.EXPAND_RMS_CAL_GL(p_worker_id);',
3936       l_step_seq,
3937       to_char(1 + 2 + 4 + 8), -- generic
3938       'N',
3939       'N',
3940       'N',
3941       'Y'
3942     );
3943 
3944     l_step_seq := l_step_seq + 10;
3945 
3946     insert into PJI_MT_PRC_STEPS
3947     (
3948       PROCESS_NAME,
3949       STEP_NAME,
3950       STEP_SEQ,
3951       STEP_TYPE,
3952       CONFIG_PROJ_PERF_FLAG,
3953       CONFIG_COST_FLAG,
3954       CONFIG_PROFIT_FLAG,
3955       CONFIG_UTIL_FLAG
3956     )
3957     values
3958     (
3959       'PJI_PJI',
3960       'PJI_RM_SUM_ROLLUP_RES.EXPAND_RMS_CAL_WK(p_worker_id);',
3961       l_step_seq,
3962       to_char(1 + 2 + 4 + 8), -- generic
3963       'N',
3964       'N',
3965       'N',
3966       'Y'
3967     );
3968 
3969     l_step_seq := l_step_seq + 10;
3970 
3971     insert into PJI_MT_PRC_STEPS
3972     (
3973       PROCESS_NAME,
3974       STEP_NAME,
3975       STEP_SEQ,
3976       STEP_TYPE,
3977       CONFIG_PROJ_PERF_FLAG,
3978       CONFIG_COST_FLAG,
3979       CONFIG_PROFIT_FLAG,
3980       CONFIG_UTIL_FLAG
3981     )
3982     values
3983     (
3984       'PJI_PJI',
3985       'PJI_FM_SUM_ROLLUP_FIN.EXPAND_FPW_CAL_EN(p_worker_id);',
3986       l_step_seq,
3987       to_char(1 + 2 + 4 + 8), -- generic
3988       'N',
3989       'Y',
3990       'N',
3991       'N'
3992     );
3993 
3994     l_step_seq := l_step_seq + 10;
3995 
3996     insert into PJI_MT_PRC_STEPS
3997     (
3998       PROCESS_NAME,
3999       STEP_NAME,
4000       STEP_SEQ,
4001       STEP_TYPE,
4002       CONFIG_PROJ_PERF_FLAG,
4003       CONFIG_COST_FLAG,
4004       CONFIG_PROFIT_FLAG,
4005       CONFIG_UTIL_FLAG
4006     )
4007     values
4008     (
4009       'PJI_PJI',
4010       'PJI_FM_SUM_ROLLUP_FIN.EXPAND_FPW_CAL_PA(p_worker_id);',
4011       l_step_seq,
4012       to_char(1 + 2 + 4 + 8), -- generic
4013       'N',
4014       'Y',
4015       'N',
4016       'N'
4017     );
4018 
4019     l_step_seq := l_step_seq + 10;
4020 
4021     insert into PJI_MT_PRC_STEPS
4022     (
4023       PROCESS_NAME,
4024       STEP_NAME,
4025       STEP_SEQ,
4026       STEP_TYPE,
4027       CONFIG_PROJ_PERF_FLAG,
4028       CONFIG_COST_FLAG,
4029       CONFIG_PROFIT_FLAG,
4030       CONFIG_UTIL_FLAG
4031     )
4032     values
4033     (
4034       'PJI_PJI',
4035       'PJI_FM_SUM_ROLLUP_FIN.EXPAND_FPW_CAL_GL(p_worker_id);',
4036       l_step_seq,
4037       to_char(1 + 2 + 4 + 8), -- generic
4038       'N',
4039       'Y',
4040       'N',
4041       'N'
4042     );
4043 
4044     l_step_seq := l_step_seq + 10;
4045 
4046     insert into PJI_MT_PRC_STEPS
4047     (
4048       PROCESS_NAME,
4049       STEP_NAME,
4050       STEP_SEQ,
4051       STEP_TYPE,
4052       CONFIG_PROJ_PERF_FLAG,
4053       CONFIG_COST_FLAG,
4054       CONFIG_PROFIT_FLAG,
4055       CONFIG_UTIL_FLAG
4056     )
4057     values
4058     (
4059       'PJI_PJI',
4060       'PJI_FM_SUM_ROLLUP_FIN.EXPAND_FPW_CAL_WK(p_worker_id);',
4061       l_step_seq,
4062       to_char(1 + 2 + 4 + 8), -- generic
4063       'N',
4064       'Y',
4065       'N',
4066       'N'
4067     );
4068 
4069     l_step_seq := l_step_seq + 10;
4070 
4071     insert into PJI_MT_PRC_STEPS
4072     (
4073       PROCESS_NAME,
4074       STEP_NAME,
4075       STEP_SEQ,
4076       STEP_TYPE,
4077       CONFIG_PROJ_PERF_FLAG,
4078       CONFIG_COST_FLAG,
4079       CONFIG_PROFIT_FLAG,
4080       CONFIG_UTIL_FLAG
4081     )
4082     values
4083     (
4084       'PJI_PJI',
4085       'PJI_FM_SUM_ROLLUP_FIN.EXPAND_FPE_CAL_EN(p_worker_id);',
4086       l_step_seq,
4087       to_char(1 + 2 + 4 + 8), -- generic
4088       'N',
4089       'Y',
4090       'N',
4091       'N'
4092     );
4093 
4094     l_step_seq := l_step_seq + 10;
4095 
4096     insert into PJI_MT_PRC_STEPS
4097     (
4098       PROCESS_NAME,
4099       STEP_NAME,
4100       STEP_SEQ,
4101       STEP_TYPE,
4102       CONFIG_PROJ_PERF_FLAG,
4103       CONFIG_COST_FLAG,
4104       CONFIG_PROFIT_FLAG,
4105       CONFIG_UTIL_FLAG
4106     )
4107     values
4108     (
4109       'PJI_PJI',
4110       'PJI_FM_SUM_ROLLUP_FIN.EXPAND_FPE_CAL_PA(p_worker_id);',
4111       l_step_seq,
4112       to_char(1 + 2 + 4 + 8), -- generic
4113       'N',
4114       'Y',
4115       'N',
4116       'N'
4117     );
4118 
4119     l_step_seq := l_step_seq + 10;
4120 
4121     insert into PJI_MT_PRC_STEPS
4122     (
4123       PROCESS_NAME,
4124       STEP_NAME,
4125       STEP_SEQ,
4126       STEP_TYPE,
4127       CONFIG_PROJ_PERF_FLAG,
4128       CONFIG_COST_FLAG,
4129       CONFIG_PROFIT_FLAG,
4130       CONFIG_UTIL_FLAG
4131     )
4132     values
4133     (
4134       'PJI_PJI',
4135       'PJI_FM_SUM_ROLLUP_FIN.EXPAND_FPE_CAL_GL(p_worker_id);',
4136       l_step_seq,
4137       to_char(1 + 2 + 4 + 8), -- generic
4138       'N',
4139       'Y',
4140       'N',
4141       'N'
4142     );
4143 
4144     l_step_seq := l_step_seq + 10;
4145 
4146     insert into PJI_MT_PRC_STEPS
4147     (
4148       PROCESS_NAME,
4149       STEP_NAME,
4150       STEP_SEQ,
4151       STEP_TYPE,
4152       CONFIG_PROJ_PERF_FLAG,
4153       CONFIG_COST_FLAG,
4154       CONFIG_PROFIT_FLAG,
4155       CONFIG_UTIL_FLAG
4156     )
4157     values
4158     (
4159       'PJI_PJI',
4160       'PJI_FM_SUM_ROLLUP_FIN.EXPAND_FPE_CAL_WK(p_worker_id);',
4161       l_step_seq,
4162       to_char(1 + 2 + 4 + 8), -- generic
4163       'N',
4164       'Y',
4165       'N',
4166       'N'
4167     );
4168 
4169     l_step_seq := l_step_seq + 10;
4170 
4171     insert into PJI_MT_PRC_STEPS
4172     (
4173       PROCESS_NAME,
4174       STEP_NAME,
4175       STEP_SEQ,
4176       STEP_TYPE,
4177       CONFIG_PROJ_PERF_FLAG,
4178       CONFIG_COST_FLAG,
4179       CONFIG_PROFIT_FLAG,
4180       CONFIG_UTIL_FLAG
4181     )
4182     values
4183     (
4184       'PJI_PJI',
4185       'PJI_FM_SUM_ROLLUP_FIN.EXPAND_FPP_CAL_EN(p_worker_id);',
4186       l_step_seq,
4187       to_char(1 + 2 + 4 + 8), -- generic
4188       'N',
4189       'Y',
4190       'N',
4191       'N'
4192     );
4193 
4194     l_step_seq := l_step_seq + 10;
4195 
4196     insert into PJI_MT_PRC_STEPS
4197     (
4198       PROCESS_NAME,
4199       STEP_NAME,
4200       STEP_SEQ,
4201       STEP_TYPE,
4202       CONFIG_PROJ_PERF_FLAG,
4203       CONFIG_COST_FLAG,
4204       CONFIG_PROFIT_FLAG,
4205       CONFIG_UTIL_FLAG
4206     )
4207     values
4208     (
4209       'PJI_PJI',
4210       'PJI_FM_SUM_ROLLUP_FIN.EXPAND_FPP_CAL_PA(p_worker_id);',
4211       l_step_seq,
4212       to_char(1 + 2 + 4 + 8), -- generic
4213       'N',
4214       'Y',
4215       'N',
4216       'N'
4217     );
4218 
4219     l_step_seq := l_step_seq + 10;
4220 
4221     insert into PJI_MT_PRC_STEPS
4222     (
4223       PROCESS_NAME,
4224       STEP_NAME,
4225       STEP_SEQ,
4226       STEP_TYPE,
4227       CONFIG_PROJ_PERF_FLAG,
4228       CONFIG_COST_FLAG,
4229       CONFIG_PROFIT_FLAG,
4230       CONFIG_UTIL_FLAG
4231     )
4232     values
4233     (
4234       'PJI_PJI',
4235       'PJI_FM_SUM_ROLLUP_FIN.EXPAND_FPP_CAL_GL(p_worker_id);',
4236       l_step_seq,
4237       to_char(1 + 2 + 4 + 8), -- generic
4238       'N',
4239       'Y',
4240       'N',
4241       'N'
4242     );
4243 
4244     l_step_seq := l_step_seq + 10;
4245 
4246     insert into PJI_MT_PRC_STEPS
4247     (
4248       PROCESS_NAME,
4249       STEP_NAME,
4250       STEP_SEQ,
4251       STEP_TYPE,
4252       CONFIG_PROJ_PERF_FLAG,
4253       CONFIG_COST_FLAG,
4254       CONFIG_PROFIT_FLAG,
4255       CONFIG_UTIL_FLAG
4256     )
4257     values
4258     (
4259       'PJI_PJI',
4260       'PJI_FM_SUM_ROLLUP_FIN.EXPAND_FPP_CAL_WK(p_worker_id);',
4261       l_step_seq,
4262       to_char(1 + 2 + 4 + 8), -- generic
4263       'N',
4264       'Y',
4265       'N',
4266       'N'
4267     );
4268 
4269     l_step_seq := l_step_seq + 10;
4270 
4271     insert into PJI_MT_PRC_STEPS
4272     (
4273       PROCESS_NAME,
4274       STEP_NAME,
4275       STEP_SEQ,
4276       STEP_TYPE,
4277       CONFIG_PROJ_PERF_FLAG,
4278       CONFIG_COST_FLAG,
4279       CONFIG_PROFIT_FLAG,
4280       CONFIG_UTIL_FLAG
4281     )
4282     values
4283     (
4284       'PJI_PJI',
4285       'PJI_FM_SUM_ROLLUP_ACT.EXPAND_ACT_CAL_EN(p_worker_id, ''N'');',
4286       l_step_seq,
4287       to_char(1 + 2 + 4 + 8), -- generic
4288       'N',
4289       'N',
4290       'Y',
4291       'N'
4292     );
4293 
4294     l_step_seq := l_step_seq + 10;
4295 
4296     insert into PJI_MT_PRC_STEPS
4297     (
4298       PROCESS_NAME,
4299       STEP_NAME,
4300       STEP_SEQ,
4301       STEP_TYPE,
4302       CONFIG_PROJ_PERF_FLAG,
4303       CONFIG_COST_FLAG,
4304       CONFIG_PROFIT_FLAG,
4305       CONFIG_UTIL_FLAG
4306     )
4307     values
4308     (
4309       'PJI_PJI',
4310       'PJI_FM_SUM_ROLLUP_ACT.EXPAND_ACT_CAL_PA(p_worker_id, ''N'');',
4311       l_step_seq,
4312       to_char(1 + 2 + 4 + 8), -- generic
4313       'N',
4314       'N',
4315       'Y',
4316       'N'
4317     );
4318 
4319     l_step_seq := l_step_seq + 10;
4320 
4321     insert into PJI_MT_PRC_STEPS
4322     (
4323       PROCESS_NAME,
4324       STEP_NAME,
4325       STEP_SEQ,
4326       STEP_TYPE,
4327       CONFIG_PROJ_PERF_FLAG,
4328       CONFIG_COST_FLAG,
4329       CONFIG_PROFIT_FLAG,
4330       CONFIG_UTIL_FLAG
4331     )
4332     values
4333     (
4334       'PJI_PJI',
4335       'PJI_FM_SUM_ROLLUP_ACT.EXPAND_ACT_CAL_GL(p_worker_id, ''N'');',
4336       l_step_seq,
4337       to_char(1 + 2 + 4 + 8), -- generic
4338       'N',
4339       'N',
4340       'Y',
4341       'N'
4342     );
4343 
4344     l_step_seq := l_step_seq + 10;
4345 
4346     insert into PJI_MT_PRC_STEPS
4347     (
4348       PROCESS_NAME,
4349       STEP_NAME,
4350       STEP_SEQ,
4351       STEP_TYPE,
4352       CONFIG_PROJ_PERF_FLAG,
4353       CONFIG_COST_FLAG,
4354       CONFIG_PROFIT_FLAG,
4355       CONFIG_UTIL_FLAG
4356     )
4357     values
4358     (
4359       'PJI_PJI',
4360       'PJI_FM_SUM_ROLLUP_ACT.EXPAND_ACT_CAL_WK(p_worker_id, ''N'');',
4361       l_step_seq,
4362       to_char(1 + 2 + 4 + 8), -- generic
4363       'N',
4364       'N',
4365       'Y',
4366       'N'
4367     );
4368 
4369     l_step_seq := l_step_seq + 10;
4370 
4371     insert into PJI_MT_PRC_STEPS
4372     (
4373       PROCESS_NAME,
4374       STEP_NAME,
4375       STEP_SEQ,
4376       STEP_TYPE,
4377       CONFIG_PROJ_PERF_FLAG,
4378       CONFIG_COST_FLAG,
4379       CONFIG_PROFIT_FLAG,
4380       CONFIG_UTIL_FLAG
4381     )
4382     values
4383     (
4384       'PJI_PJI',
4385       'PJI_RM_SUM_ROLLUP_RES.MERGE_TMP1_INTO_RMR(p_worker_id);',
4386       l_step_seq,
4387       to_char(1 + 2 + 4 + 8), -- generic
4388       'N',
4389       'N',
4390       'N',
4391       'Y'
4392     );
4393 
4394     l_step_seq := l_step_seq + 10;
4395 
4396     insert into PJI_MT_PRC_STEPS
4397     (
4398       PROCESS_NAME,
4399       STEP_NAME,
4400       STEP_SEQ,
4401       STEP_TYPE,
4402       CONFIG_PROJ_PERF_FLAG,
4403       CONFIG_COST_FLAG,
4404       CONFIG_PROFIT_FLAG,
4405       CONFIG_UTIL_FLAG
4406     )
4407     values
4408     (
4409       'PJI_PJI',
4410       'PJI_RM_SUM_ROLLUP_RES.CLEANUP_RMR(p_worker_id);',
4411       l_step_seq,
4412       to_char(1 + 2 + 4 + 8), -- generic
4413       'N',
4414       'N',
4415       'N',
4416       'Y'
4417     );
4418 
4419     l_step_seq := l_step_seq + 10;
4420 
4421     insert into PJI_MT_PRC_STEPS
4422     (
4423       PROCESS_NAME,
4424       STEP_NAME,
4425       STEP_SEQ,
4426       STEP_TYPE,
4427       CONFIG_PROJ_PERF_FLAG,
4428       CONFIG_COST_FLAG,
4429       CONFIG_PROFIT_FLAG,
4430       CONFIG_UTIL_FLAG
4431     )
4432     values
4433     (
4434       'PJI_PJI',
4435       'PJI_RM_SUM_ROLLUP_RES.MERGE_TMP2_INTO_RMS(p_worker_id);',
4436       l_step_seq,
4437       to_char(1 + 2 + 4 + 8), -- generic
4438       'N',
4439       'N',
4440       'N',
4441       'Y'
4442     );
4443 
4444     l_step_seq := l_step_seq + 10;
4445 
4446     insert into PJI_MT_PRC_STEPS
4447     (
4448       PROCESS_NAME,
4449       STEP_NAME,
4450       STEP_SEQ,
4451       STEP_TYPE,
4452       CONFIG_PROJ_PERF_FLAG,
4453       CONFIG_COST_FLAG,
4454       CONFIG_PROFIT_FLAG,
4455       CONFIG_UTIL_FLAG
4456     )
4457     values
4458     (
4459       'PJI_PJI',
4460       'PJI_RM_SUM_ROLLUP_RES.CLEANUP_RMS(p_worker_id);',
4461       l_step_seq,
4462       to_char(1 + 2 + 4 + 8), -- generic
4463       'N',
4464       'N',
4465       'N',
4466       'Y'
4467     );
4468 
4469     l_step_seq := l_step_seq + 10;
4470 
4471     insert into PJI_MT_PRC_STEPS
4472     (
4473       PROCESS_NAME,
4474       STEP_NAME,
4475       STEP_SEQ,
4476       STEP_TYPE,
4477       CONFIG_PROJ_PERF_FLAG,
4478       CONFIG_COST_FLAG,
4479       CONFIG_PROFIT_FLAG,
4480       CONFIG_UTIL_FLAG
4481     )
4482     values
4483     (
4484       'PJI_PJI',
4485       'PJI_RM_SUM_AVL.UPDATE_RES_STA_FOR_RUN2(p_worker_id);',
4486       l_step_seq,
4487       to_char(1 + 2 + 4 + 8), -- generic
4488       'N',
4489       'N',
4490       'N',
4491       'Y'
4492     );
4493 
4494     l_step_seq := l_step_seq + 10;
4495 
4496     -- helper step
4497     insert into PJI_MT_PRC_STEPS
4498     (
4499       PROCESS_NAME,
4500       STEP_NAME,
4501       STEP_SEQ,
4502       STEP_TYPE,
4503       CONFIG_PROJ_PERF_FLAG,
4504       CONFIG_COST_FLAG,
4505       CONFIG_PROFIT_FLAG,
4506       CONFIG_UTIL_FLAG
4507     )
4508     values
4509     (
4510       'PJI_PJI_HELPER',
4511       'PJI_RM_SUM_AVL.START_RES_AVL_CALC_R2(p_worker_id);',
4512       l_step_seq,
4513       to_char(1 + 2 + 4 + 8), -- generic
4514       'N',
4515       'N',
4516       'N',
4517       'Y'
4518     );
4519 
4520     l_step_seq := l_step_seq + 10;
4521 
4522     insert into PJI_MT_PRC_STEPS
4523     (
4524       PROCESS_NAME,
4525       STEP_NAME,
4526       STEP_SEQ,
4527       STEP_TYPE,
4528       CONFIG_PROJ_PERF_FLAG,
4529       CONFIG_COST_FLAG,
4530       CONFIG_PROFIT_FLAG,
4531       CONFIG_UTIL_FLAG
4532     )
4533     values
4534     (
4535       'PJI_PJI',
4536       'PJI_RM_SUM_AVL.MERGE_ORG_AVL_DUR(p_worker_id);',
4537       l_step_seq,
4538       to_char(1 + 2 + 4 + 8), -- generic
4539       'N',
4540       'N',
4541       'N',
4542       'Y'
4543     );
4544 
4545     l_step_seq := l_step_seq + 10;
4546 
4547     insert into PJI_MT_PRC_STEPS
4548     (
4549       PROCESS_NAME,
4550       STEP_NAME,
4551       STEP_SEQ,
4552       STEP_TYPE,
4553       CONFIG_PROJ_PERF_FLAG,
4554       CONFIG_COST_FLAG,
4555       CONFIG_PROFIT_FLAG,
4556       CONFIG_UTIL_FLAG
4557     )
4558     values
4559     (
4560       'PJI_PJI',
4561       'PJI_RM_SUM_AVL.MERGE_CURR_ORG_AVL(p_worker_id);',
4562       l_step_seq,
4563       to_char(1 + 2 + 4 + 8), -- generic
4564       'N',
4565       'N',
4566       'N',
4567       'Y'
4568     );
4569 
4570     l_step_seq := l_step_seq + 10;
4571 
4572     insert into PJI_MT_PRC_STEPS
4573     (
4574       PROCESS_NAME,
4575       STEP_NAME,
4576       STEP_SEQ,
4577       STEP_TYPE,
4578       CONFIG_PROJ_PERF_FLAG,
4579       CONFIG_COST_FLAG,
4580       CONFIG_PROFIT_FLAG,
4581       CONFIG_UTIL_FLAG
4582     )
4583     values
4584     (
4585       'PJI_PJI',
4586       'PJI_RM_SUM_AVL.RES_CALC_CLEANUP(p_worker_id);',
4587       l_step_seq,
4588       to_char(1 + 2 + 4 + 8), -- generic
4589       'N',
4590       'N',
4591       'N',
4592       'Y'
4593     );
4594 
4595     l_step_seq := l_step_seq + 10;
4596 
4597     insert into PJI_MT_PRC_STEPS
4598     (
4599       PROCESS_NAME,
4600       STEP_NAME,
4601       STEP_SEQ,
4602       STEP_TYPE,
4603       CONFIG_PROJ_PERF_FLAG,
4604       CONFIG_COST_FLAG,
4605       CONFIG_PROFIT_FLAG,
4606       CONFIG_UTIL_FLAG
4607     )
4608     values
4609     (
4610       'PJI_PJI',
4611       'PJI_FM_SUM_ROLLUP_FIN.MERGE_FIN_INTO_FPW(p_worker_id);',
4612       l_step_seq,
4613       to_char(1 + 2 + 4 + 8), -- generic
4614       'N',
4615       'Y',
4616       'N',
4617       'N'
4618     );
4619 
4620     l_step_seq := l_step_seq + 10;
4621 
4622     insert into PJI_MT_PRC_STEPS
4623     (
4624       PROCESS_NAME,
4625       STEP_NAME,
4626       STEP_SEQ,
4627       STEP_TYPE,
4628       CONFIG_PROJ_PERF_FLAG,
4629       CONFIG_COST_FLAG,
4630       CONFIG_PROFIT_FLAG,
4631       CONFIG_UTIL_FLAG
4632     )
4633     values
4634     (
4635       'PJI_PJI',
4636       'PJI_FM_SUM_ROLLUP_FIN.MERGE_FIN_INTO_FPE(p_worker_id);',
4637       l_step_seq,
4638       to_char(1 + 2 + 4 + 8), -- generic
4639       'N',
4640       'Y',
4641       'N',
4642       'N'
4643     );
4644 
4645     l_step_seq := l_step_seq + 10;
4646 
4647     insert into PJI_MT_PRC_STEPS
4648     (
4649       PROCESS_NAME,
4650       STEP_NAME,
4651       STEP_SEQ,
4652       STEP_TYPE,
4653       CONFIG_PROJ_PERF_FLAG,
4654       CONFIG_COST_FLAG,
4655       CONFIG_PROFIT_FLAG,
4656       CONFIG_UTIL_FLAG
4657     )
4658     values
4659     (
4660       'PJI_PJI',
4661       'PJI_FM_SUM_ROLLUP_FIN.MERGE_FIN_INTO_FPP(p_worker_id);',
4662       l_step_seq,
4663       to_char(1 + 2 + 4 + 8), -- generic
4664       'N',
4665       'Y',
4666       'N',
4667       'N'
4668     );
4669 
4670     l_step_seq := l_step_seq + 10;
4671 
4672     insert into PJI_MT_PRC_STEPS
4673     (
4674       PROCESS_NAME,
4675       STEP_NAME,
4676       STEP_SEQ,
4677       STEP_TYPE,
4678       CONFIG_PROJ_PERF_FLAG,
4679       CONFIG_COST_FLAG,
4680       CONFIG_PROFIT_FLAG,
4681       CONFIG_UTIL_FLAG
4682     )
4683     values
4684     (
4685       'PJI_PJI',
4686       'PJI_FM_SUM_ROLLUP_ACT.MERGE_ACT_INTO_ACP(p_worker_id, ''N'');',
4687       l_step_seq,
4688       to_char(1 + 2 + 4 + 8), -- generic
4689       'N',
4690       'N',
4691       'Y',
4692       'N'
4693     );
4694 
4695     l_step_seq := l_step_seq + 10;
4696 
4697     insert into PJI_MT_PRC_STEPS
4698     (
4699       PROCESS_NAME,
4700       STEP_NAME,
4701       STEP_SEQ,
4702       STEP_TYPE,
4703       CONFIG_PROJ_PERF_FLAG,
4704       CONFIG_COST_FLAG,
4705       CONFIG_PROFIT_FLAG,
4706       CONFIG_UTIL_FLAG
4707     )
4708     values
4709     (
4710       'PJI_PJI',
4711       'PJI_FM_SUM_BKLG.SCOPE_PROJECTS_BKLG(p_worker_id);',
4712       l_step_seq,
4713       to_char(1 + 2 + 4 + 8), -- generic
4714       'N',
4715       'N',
4716       'Y',
4717       'N'
4718     );
4719 
4720     l_step_seq := l_step_seq + 10;
4721 
4722     insert into PJI_MT_PRC_STEPS
4723     (
4724       PROCESS_NAME,
4725       STEP_NAME,
4726       STEP_SEQ,
4727       STEP_TYPE,
4728       CONFIG_PROJ_PERF_FLAG,
4729       CONFIG_COST_FLAG,
4730       CONFIG_PROFIT_FLAG,
4731       CONFIG_UTIL_FLAG
4732     )
4733     values
4734     (
4735       'PJI_PJI',
4736       'PJI_FM_SUM_BKLG.CLEANUP_INT_TABLE(p_worker_id);',
4737       l_step_seq,
4738       to_char(1 + 2 + 4 + 8), -- generic
4739       'N',
4740       'N',
4741       'Y',
4742       'N'
4743     );
4744 
4745     l_step_seq := l_step_seq + 10;
4746 
4747     -- helper step
4748     insert into PJI_MT_PRC_STEPS
4749     (
4750       PROCESS_NAME,
4751       STEP_NAME,
4752       STEP_SEQ,
4753       STEP_TYPE,
4754       CONFIG_PROJ_PERF_FLAG,
4755       CONFIG_COST_FLAG,
4756       CONFIG_PROFIT_FLAG,
4757       CONFIG_UTIL_FLAG
4758     )
4759     values
4760     (
4761       'PJI_PJI_HELPER',
4762       'PJI_FM_SUM_BKLG.PROCESS_DRMT_BKLG(p_worker_id);',
4763       l_step_seq,
4764       to_char(1 + 2 + 4 + 8), -- generic
4765       'N',
4766       'N',
4767       'Y',
4768       'N'
4769     );
4770 
4771     l_step_seq := l_step_seq + 10;
4772 
4773     insert into PJI_MT_PRC_STEPS
4774     (
4775       PROCESS_NAME,
4776       STEP_NAME,
4777       STEP_SEQ,
4778       STEP_TYPE,
4779       CONFIG_PROJ_PERF_FLAG,
4780       CONFIG_COST_FLAG,
4781       CONFIG_PROFIT_FLAG,
4782       CONFIG_UTIL_FLAG
4783     )
4784     values
4785     (
4786       'PJI_PJI',
4787       'PJI_FM_SUM_ROLLUP_ACT.EXPAND_ACT_CAL_EN(p_worker_id, ''Y'');',
4788       l_step_seq,
4789       to_char(1 + 2 + 4 + 8), -- generic
4790       'N',
4791       'N',
4792       'Y',
4793       'N'
4794     );
4795 
4796     l_step_seq := l_step_seq + 10;
4797 
4798     insert into PJI_MT_PRC_STEPS
4799     (
4800       PROCESS_NAME,
4801       STEP_NAME,
4802       STEP_SEQ,
4803       STEP_TYPE,
4804       CONFIG_PROJ_PERF_FLAG,
4805       CONFIG_COST_FLAG,
4806       CONFIG_PROFIT_FLAG,
4807       CONFIG_UTIL_FLAG
4808     )
4809     values
4810     (
4811       'PJI_PJI',
4812       'PJI_FM_SUM_ROLLUP_ACT.EXPAND_ACT_CAL_PA(p_worker_id, ''Y'');',
4813       l_step_seq,
4814       to_char(1 + 2 + 4 + 8), -- generic
4815       'N',
4816       'N',
4817       'Y',
4818       'N'
4819     );
4820 
4821     l_step_seq := l_step_seq + 10;
4822 
4823     insert into PJI_MT_PRC_STEPS
4824     (
4825       PROCESS_NAME,
4826       STEP_NAME,
4827       STEP_SEQ,
4828       STEP_TYPE,
4829       CONFIG_PROJ_PERF_FLAG,
4830       CONFIG_COST_FLAG,
4831       CONFIG_PROFIT_FLAG,
4832       CONFIG_UTIL_FLAG
4833     )
4834     values
4835     (
4836       'PJI_PJI',
4837       'PJI_FM_SUM_ROLLUP_ACT.EXPAND_ACT_CAL_GL(p_worker_id, ''Y'');',
4838       l_step_seq,
4839       to_char(1 + 2 + 4 + 8), -- generic
4840       'N',
4841       'N',
4842       'Y',
4843       'N'
4844     );
4845 
4846     l_step_seq := l_step_seq + 10;
4847 
4848     insert into PJI_MT_PRC_STEPS
4849     (
4850       PROCESS_NAME,
4851       STEP_NAME,
4852       STEP_SEQ,
4853       STEP_TYPE,
4854       CONFIG_PROJ_PERF_FLAG,
4855       CONFIG_COST_FLAG,
4856       CONFIG_PROFIT_FLAG,
4857       CONFIG_UTIL_FLAG
4858     )
4859     values
4860     (
4861       'PJI_PJI',
4862       'PJI_FM_SUM_ROLLUP_ACT.EXPAND_ACT_CAL_WK(p_worker_id, ''Y'');',
4863       l_step_seq,
4864       to_char(1 + 2 + 4 + 8), -- generic
4865       'N',
4866       'N',
4867       'Y',
4868       'N'
4869     );
4870 
4871     l_step_seq := l_step_seq + 10;
4872 
4873     insert into PJI_MT_PRC_STEPS
4874     (
4875       PROCESS_NAME,
4876       STEP_NAME,
4877       STEP_SEQ,
4878       STEP_TYPE,
4879       CONFIG_PROJ_PERF_FLAG,
4880       CONFIG_COST_FLAG,
4881       CONFIG_PROFIT_FLAG,
4882       CONFIG_UTIL_FLAG
4883     )
4884     values
4885     (
4886       'PJI_PJI',
4887       'PJI_FM_SUM_ROLLUP_ACT.MERGE_ACT_INTO_ACP(p_worker_id, ''Y'');',
4888       l_step_seq,
4889       to_char(1 + 2 + 4 + 8), -- generic
4890       'N',
4891       'N',
4892       'Y',
4893       'N'
4894     );
4895 
4896     l_step_seq := l_step_seq + 10;
4897 
4898     insert into PJI_MT_PRC_STEPS
4899     (
4900       PROCESS_NAME,
4901       STEP_NAME,
4902       STEP_SEQ,
4903       STEP_TYPE,
4904       CONFIG_PROJ_PERF_FLAG,
4905       CONFIG_COST_FLAG,
4906       CONFIG_PROFIT_FLAG,
4907       CONFIG_UTIL_FLAG
4908     )
4909     values
4910     (
4911       'PJI_PJI',
4912       'PJI_FM_SUM_ROLLUP_FIN.PROJECT_ORGANIZATION(p_worker_id);',
4913       l_step_seq,
4914       to_char(1 + 2 + 4 + 8), -- generic
4915       'N',
4916       'Y',
4917       'N',
4918       'N'
4919     );
4920 
4921     l_step_seq := l_step_seq + 10;
4922 
4923     insert into PJI_MT_PRC_STEPS
4924     (
4925       PROCESS_NAME,
4926       STEP_NAME,
4927       STEP_SEQ,
4928       STEP_TYPE,
4929       CONFIG_PROJ_PERF_FLAG,
4930       CONFIG_COST_FLAG,
4931       CONFIG_PROFIT_FLAG,
4932       CONFIG_UTIL_FLAG
4933     )
4934     values
4935     (
4936       'PJI_PJI',
4937       'PJI_FM_SUM_ROLLUP_ACT.PROJECT_ORGANIZATION(p_worker_id);',
4938       l_step_seq,
4939       to_char(1 + 2 + 4 + 8), -- generic
4940       'N',
4941       'N',
4942       'Y',
4943       'N'
4944     );
4945 
4946     l_step_seq := l_step_seq + 10;
4947 
4948     insert into PJI_MT_PRC_STEPS
4949     (
4950       PROCESS_NAME,
4951       STEP_NAME,
4952       STEP_SEQ,
4953       STEP_TYPE,
4954       CONFIG_PROJ_PERF_FLAG,
4955       CONFIG_COST_FLAG,
4956       CONFIG_PROFIT_FLAG,
4957       CONFIG_UTIL_FLAG
4958     )
4959     values
4960     (
4961       'PJI_PJI',
4962       'PJI_RM_SUM_ROLLUP_RES.REFRESH_MVIEW_UTW(p_worker_id);',
4963       l_step_seq,
4964       to_char(1 + 2 + 4 + 8), -- generic
4965       'N',
4966       'N',
4967       'N',
4968       'Y'
4969     );
4970 
4971     l_step_seq := l_step_seq + 10;
4972 
4973     insert into PJI_MT_PRC_STEPS
4974     (
4975       PROCESS_NAME,
4976       STEP_NAME,
4977       STEP_SEQ,
4978       STEP_TYPE,
4979       CONFIG_PROJ_PERF_FLAG,
4980       CONFIG_COST_FLAG,
4981       CONFIG_PROFIT_FLAG,
4982       CONFIG_UTIL_FLAG
4983     )
4984     values
4985     (
4986       'PJI_PJI',
4987       'PJI_RM_SUM_ROLLUP_RES.REFRESH_MVIEW_UTX(p_worker_id);',
4988       l_step_seq,
4989       to_char(1 + 2 + 4 + 8), -- generic
4990       'N',
4991       'N',
4992       'N',
4993       'Y'
4994     );
4995 
4996     l_step_seq := l_step_seq + 10;
4997 
4998     insert into PJI_MT_PRC_STEPS
4999     (
5000       PROCESS_NAME,
5001       STEP_NAME,
5002       STEP_SEQ,
5003       STEP_TYPE,
5004       CONFIG_PROJ_PERF_FLAG,
5005       CONFIG_COST_FLAG,
5006       CONFIG_PROFIT_FLAG,
5007       CONFIG_UTIL_FLAG
5008     )
5009     values
5010     (
5011       'PJI_PJI',
5012       'PJI_RM_SUM_ROLLUP_RES.REFRESH_MVIEW_UTJ(p_worker_id);',
5013       l_step_seq,
5014       to_char(1 + 2 + 4 + 8), -- generic
5015       'N',
5016       'N',
5017       'N',
5018       'Y'
5019     );
5020 
5021     l_step_seq := l_step_seq + 10;
5022 
5023     insert into PJI_MT_PRC_STEPS
5024     (
5025       PROCESS_NAME,
5026       STEP_NAME,
5027       STEP_SEQ,
5028       STEP_TYPE,
5029       CONFIG_PROJ_PERF_FLAG,
5030       CONFIG_COST_FLAG,
5031       CONFIG_PROFIT_FLAG,
5032       CONFIG_UTIL_FLAG
5033     )
5034     values
5035     (
5036       'PJI_PJI',
5037       'PJI_RM_SUM_ROLLUP_RES.REFRESH_MVIEW_TIME(p_worker_id);',
5038       l_step_seq,
5039       to_char(1 + 2 + 4 + 8), -- generic
5040       'N',
5041       'N',
5042       'N',
5043       'Y'
5044     );
5045 
5046     l_step_seq := l_step_seq + 10;
5047 
5048     insert into PJI_MT_PRC_STEPS
5049     (
5050       PROCESS_NAME,
5051       STEP_NAME,
5052       STEP_SEQ,
5053       STEP_TYPE,
5054       CONFIG_PROJ_PERF_FLAG,
5055       CONFIG_COST_FLAG,
5056       CONFIG_PROFIT_FLAG,
5057       CONFIG_UTIL_FLAG
5058     )
5059     values
5060     (
5061       'PJI_PJI',
5062       'PJI_RM_SUM_ROLLUP_RES.REFRESH_MVIEW_TIME_DAY(p_worker_id);',
5063       l_step_seq,
5064       to_char(1 + 2 + 4 + 8), -- generic
5065       'N',
5066       'N',
5067       'N',
5068       'Y'
5069     );
5070 
5071     l_step_seq := l_step_seq + 10;
5072 
5073     insert into PJI_MT_PRC_STEPS
5074     (
5075       PROCESS_NAME,
5076       STEP_NAME,
5077       STEP_SEQ,
5078       STEP_TYPE,
5079       CONFIG_PROJ_PERF_FLAG,
5080       CONFIG_COST_FLAG,
5081       CONFIG_PROFIT_FLAG,
5082       CONFIG_UTIL_FLAG
5083     )
5084     values
5085     (
5086       'PJI_PJI',
5087       'PJI_RM_SUM_ROLLUP_RES.REFRESH_MVIEW_TIME_TREND(p_worker_id);',
5088       l_step_seq,
5089       to_char(1 + 2 + 4 + 8), -- generic
5090       'N',
5091       'N',
5092       'N',
5093       'Y'
5094     );
5095 
5096     l_step_seq := l_step_seq + 10;
5097 
5098     insert into PJI_MT_PRC_STEPS
5099     (
5100       PROCESS_NAME,
5101       STEP_NAME,
5102       STEP_SEQ,
5103       STEP_TYPE,
5104       CONFIG_PROJ_PERF_FLAG,
5105       CONFIG_COST_FLAG,
5106       CONFIG_PROFIT_FLAG,
5107       CONFIG_UTIL_FLAG
5108     )
5109     values
5110     (
5111       'PJI_PJI',
5112       'PJI_RM_SUM_AVL.REFRESH_AV_ORGO_F_MV(p_worker_id);',
5113       l_step_seq,
5114       to_char(1 + 2 + 4 + 8), -- generic
5115       'N',
5116       'N',
5117       'N',
5118       'Y'
5119     );
5120 
5121     l_step_seq := l_step_seq + 10;
5122 
5123     insert into PJI_MT_PRC_STEPS
5124     (
5125       PROCESS_NAME,
5126       STEP_NAME,
5127       STEP_SEQ,
5128       STEP_TYPE,
5129       CONFIG_PROJ_PERF_FLAG,
5130       CONFIG_COST_FLAG,
5131       CONFIG_PROFIT_FLAG,
5132       CONFIG_UTIL_FLAG
5133     )
5134     values
5135     (
5136       'PJI_PJI',
5137       'PJI_RM_SUM_AVL.REFRESH_CA_ORGO_F_MV(p_worker_id);',
5138       l_step_seq,
5139       to_char(1 + 2 + 4 + 8), -- generic
5140       'N',
5141       'N',
5142       'N',
5143       'Y'
5144     );
5145 
5146     l_step_seq := l_step_seq + 10;
5147 
5148     insert into PJI_MT_PRC_STEPS
5149     (
5150       PROCESS_NAME,
5151       STEP_NAME,
5152       STEP_SEQ,
5153       STEP_TYPE,
5154       CONFIG_PROJ_PERF_FLAG,
5155       CONFIG_COST_FLAG,
5156       CONFIG_PROFIT_FLAG,
5157       CONFIG_UTIL_FLAG
5158     )
5159     values
5160     (
5161       'PJI_PJI',
5162       'PJI_FM_SUM_ROLLUP_FIN.REFRESH_MVIEW_FWO(p_worker_id);',
5163       l_step_seq,
5164       to_char(1 + 2 + 4 + 8), -- generic
5165       'N',
5166       'Y',
5167       'N',
5168       'N'
5169     );
5170 
5171     l_step_seq := l_step_seq + 10;
5172 
5173     insert into PJI_MT_PRC_STEPS
5174     (
5175       PROCESS_NAME,
5176       STEP_NAME,
5177       STEP_SEQ,
5178       STEP_TYPE,
5179       CONFIG_PROJ_PERF_FLAG,
5180       CONFIG_COST_FLAG,
5181       CONFIG_PROFIT_FLAG,
5182       CONFIG_UTIL_FLAG
5183     )
5184     values
5185     (
5186       'PJI_PJI',
5187       'PJI_FM_SUM_ROLLUP_FIN.REFRESH_MVIEW_FWC(p_worker_id);',
5188       l_step_seq,
5189       to_char(1 + 2 + 4 + 8), -- generic
5190       'N',
5191       'Y',
5192       'N',
5193       'N'
5194     );
5195 
5196     l_step_seq := l_step_seq + 10;
5197 
5198     insert into PJI_MT_PRC_STEPS
5199     (
5200       PROCESS_NAME,
5201       STEP_NAME,
5202       STEP_SEQ,
5203       STEP_TYPE,
5204       CONFIG_PROJ_PERF_FLAG,
5205       CONFIG_COST_FLAG,
5206       CONFIG_PROFIT_FLAG,
5207       CONFIG_UTIL_FLAG
5208     )
5209     values
5210     (
5211       'PJI_PJI',
5212       'PJI_FM_SUM_ROLLUP_FIN.REFRESH_MVIEW_FEO(p_worker_id);',
5213       l_step_seq,
5214       to_char(1 + 2 + 4 + 8), -- generic
5215       'N',
5216       'Y',
5217       'N',
5218       'N'
5219     );
5220 
5221     l_step_seq := l_step_seq + 10;
5222 
5223     insert into PJI_MT_PRC_STEPS
5224     (
5225       PROCESS_NAME,
5226       STEP_NAME,
5227       STEP_SEQ,
5228       STEP_TYPE,
5229       CONFIG_PROJ_PERF_FLAG,
5230       CONFIG_COST_FLAG,
5231       CONFIG_PROFIT_FLAG,
5232       CONFIG_UTIL_FLAG
5233     )
5234     values
5235     (
5236       'PJI_PJI',
5237       'PJI_FM_SUM_ROLLUP_FIN.REFRESH_MVIEW_FEC(p_worker_id);',
5238       l_step_seq,
5239       to_char(1 + 2 + 4 + 8), -- generic
5240       'N',
5241       'Y',
5242       'N',
5243       'N'
5244     );
5245 
5246     l_step_seq := l_step_seq + 10;
5247 
5248     insert into PJI_MT_PRC_STEPS
5249     (
5250       PROCESS_NAME,
5251       STEP_NAME,
5252       STEP_SEQ,
5253       STEP_TYPE,
5254       CONFIG_PROJ_PERF_FLAG,
5255       CONFIG_COST_FLAG,
5256       CONFIG_PROFIT_FLAG,
5257       CONFIG_UTIL_FLAG
5258     )
5259     values
5260     (
5261       'PJI_PJI',
5262       'PJI_FM_SUM_ROLLUP_FIN.REFRESH_MVIEW_FPO(p_worker_id);',
5263       l_step_seq,
5264       to_char(1 + 2 + 4 + 8), -- generic
5265       'N',
5266       'Y',
5267       'N',
5268       'N'
5269     );
5270 
5271     l_step_seq := l_step_seq + 10;
5272 
5273     insert into PJI_MT_PRC_STEPS
5274     (
5275       PROCESS_NAME,
5276       STEP_NAME,
5277       STEP_SEQ,
5278       STEP_TYPE,
5279       CONFIG_PROJ_PERF_FLAG,
5280       CONFIG_COST_FLAG,
5281       CONFIG_PROFIT_FLAG,
5282       CONFIG_UTIL_FLAG
5283     )
5284     values
5285     (
5286       'PJI_PJI',
5287       'PJI_FM_SUM_ROLLUP_FIN.REFRESH_MVIEW_FPC(p_worker_id);',
5288       l_step_seq,
5289       to_char(1 + 2 + 4 + 8), -- generic
5290       'N',
5291       'Y',
5292       'N',
5293       'N'
5294     );
5295 
5296     l_step_seq := l_step_seq + 10;
5297 
5298     insert into PJI_MT_PRC_STEPS
5299     (
5300       PROCESS_NAME,
5301       STEP_NAME,
5302       STEP_SEQ,
5303       STEP_TYPE,
5304       CONFIG_PROJ_PERF_FLAG,
5305       CONFIG_COST_FLAG,
5306       CONFIG_PROFIT_FLAG,
5307       CONFIG_UTIL_FLAG
5308     )
5309     values
5310     (
5311       'PJI_PJI',
5312       'PJI_FM_SUM_ROLLUP_ACT.REFRESH_MVIEW_ACO(p_worker_id);',
5313       l_step_seq,
5314       to_char(1 + 2 + 4 + 8), -- generic
5315       'N',
5316       'N',
5317       'Y',
5318       'N'
5319     );
5320 
5321     l_step_seq := l_step_seq + 10;
5322 
5323     insert into PJI_MT_PRC_STEPS
5324     (
5325       PROCESS_NAME,
5326       STEP_NAME,
5327       STEP_SEQ,
5328       STEP_TYPE,
5329       CONFIG_PROJ_PERF_FLAG,
5330       CONFIG_COST_FLAG,
5331       CONFIG_PROFIT_FLAG,
5332       CONFIG_UTIL_FLAG
5333     )
5334     values
5335     (
5336       'PJI_PJI',
5337       'PJI_FM_SUM_ROLLUP_ACT.REFRESH_MVIEW_ACC(p_worker_id);',
5338       l_step_seq,
5339       to_char(1 + 2 + 4 + 8), -- generic
5340       'N',
5341       'N',
5342       'Y',
5343       'N'
5344     );
5345 
5346     l_step_seq := l_step_seq + 10;
5347 
5348     insert into PJI_MT_PRC_STEPS
5349     (
5350       PROCESS_NAME,
5351       STEP_NAME,
5352       STEP_SEQ,
5353       STEP_TYPE,
5354       CONFIG_PROJ_PERF_FLAG,
5355       CONFIG_COST_FLAG,
5356       CONFIG_PROFIT_FLAG,
5357       CONFIG_UTIL_FLAG
5358     )
5359     values
5360     (
5361       'PJI_PJI',
5362       'PJI_RM_SUM_EXTR.CLEANUP_WORKER(p_worker_id);',
5363       l_step_seq,
5364       to_char(1 + 2 + 4 + 8), -- generic
5365       'N',
5366       'Y',
5367       'Y',
5368       'Y'
5369     );
5370 
5371     -- ------------------------------------------------------------------------
5372     -- Stage 3 Summarization - Project Performance
5373     -- ------------------------------------------------------------------------
5374 
5375     l_step_seq := 10;
5376 
5377     insert into PJI_MT_PRC_STEPS
5378     (
5379       PROCESS_NAME,
5380       STEP_NAME,
5381       STEP_SEQ,
5382       STEP_TYPE,
5383       CONFIG_PROJ_PERF_FLAG,
5384       CONFIG_COST_FLAG,
5385       CONFIG_PROFIT_FLAG,
5386       CONFIG_UTIL_FLAG
5387     )
5388     values
5389     (
5390       'PJI_PJP',
5391       'PJI_PJP_SUM_MAIN.INIT_PROCESS(p_worker_id, p_run_mode);',
5392       l_step_seq,
5393       to_char(1 + 2 + 4 + 8), -- generic
5394       'Y',
5395       'N',
5396       'N',
5397       'N'
5398     );
5399 
5400     l_step_seq := l_step_seq + 10;
5401 
5402     insert into PJI_MT_PRC_STEPS
5403     (
5404       PROCESS_NAME,
5405       STEP_NAME,
5406       STEP_SEQ,
5407       STEP_TYPE,
5408       CONFIG_PROJ_PERF_FLAG,
5409       CONFIG_COST_FLAG,
5410       CONFIG_PROFIT_FLAG,
5411       CONFIG_UTIL_FLAG
5412     )
5413     values
5414     (
5415       'PJI_PJP',
5416       'PJI_PJP_SUM_MAIN.RUN_PROCESS(p_worker_id);',
5417       l_step_seq,
5418       to_char(1 + 2 + 4 + 8), -- generic
5419       'Y',
5420       'N',
5421       'N',
5422       'N'
5423     );
5424 
5425     l_step_seq := l_step_seq + 10;
5426 
5427     insert into PJI_MT_PRC_STEPS
5428     (
5429       PROCESS_NAME,
5430       STEP_NAME,
5431       STEP_SEQ,
5432       STEP_TYPE,
5433       CONFIG_PROJ_PERF_FLAG,
5434       CONFIG_COST_FLAG,
5435       CONFIG_PROFIT_FLAG,
5436       CONFIG_UTIL_FLAG
5437     )
5438     values
5439     (
5440       'PJI_PJP',
5441       'PJI_PJP_SUM_MAIN.WRAPUP_PROCESS(p_worker_id);',
5442       l_step_seq,
5443       to_char(1 + 2 + 4 + 8), -- generic
5444       'Y',
5445       'N',
5446       'N',
5447       'N'
5448     );
5449 
5450     l_step_seq := l_step_seq + 10;
5451 
5452     insert into PJI_MT_PRC_STEPS
5453     (
5454       PROCESS_NAME,
5455       STEP_NAME,
5456       STEP_SEQ,
5457       STEP_TYPE,
5458       CONFIG_PROJ_PERF_FLAG,
5459       CONFIG_COST_FLAG,
5460       CONFIG_PROFIT_FLAG,
5461       CONFIG_UTIL_FLAG
5462     )
5463     values
5464     (
5465       'PJI_PJP',
5466       'PJI_PJP_SUM_ROLLUP.POPULATE_TIME_DIMENSION(p_worker_id);',
5467       l_step_seq,
5468       to_char(1 + 2 + 4 + 8), -- generic
5469       'Y',
5470       'N',
5471       'N',
5472       'N'
5473     );
5474 
5475     l_step_seq := l_step_seq + 10;
5476 
5477     insert into PJI_MT_PRC_STEPS
5478     (
5479       PROCESS_NAME,
5480       STEP_NAME,
5481       STEP_SEQ,
5482       STEP_TYPE,
5483       CONFIG_PROJ_PERF_FLAG,
5484       CONFIG_COST_FLAG,
5485       CONFIG_PROFIT_FLAG,
5486       CONFIG_UTIL_FLAG
5487     )
5488     values
5489     (
5490       'PJI_PJP',
5491       'PJI_PJP_SUM_ROLLUP.CREATE_EVENTS_SNAPSHOT(p_worker_id);',
5492       l_step_seq,
5493       to_char(1 + 2 + 4 + 8), -- generic
5494       'Y',
5495       'N',
5496       'N',
5497       'N'
5498     );
5499 
5500     l_step_seq := l_step_seq + 10;
5501 
5502     insert into PJI_MT_PRC_STEPS
5503     (
5504       PROCESS_NAME,
5505       STEP_NAME,
5506       STEP_SEQ,
5507       STEP_TYPE,
5508       CONFIG_PROJ_PERF_FLAG,
5509       CONFIG_COST_FLAG,
5510       CONFIG_PROFIT_FLAG,
5511       CONFIG_UTIL_FLAG
5512     )
5513     values
5514     (
5515       'PJI_PJP',
5516       'PJI_PJP_SUM_ROLLUP.LOCK_HEADERS(p_worker_id);',
5517       l_step_seq,
5518       to_char(1 + 2 + 4 + 8), -- generic
5519       'Y',
5520       'N',
5521       'N',
5522       'N'
5523     );
5524 
5525     l_step_seq := l_step_seq + 10;
5526 
5527     insert into PJI_MT_PRC_STEPS
5528     (
5529       PROCESS_NAME,
5530       STEP_NAME,
5531       STEP_SEQ,
5532       STEP_TYPE,
5533       CONFIG_PROJ_PERF_FLAG,
5534       CONFIG_COST_FLAG,
5535       CONFIG_PROFIT_FLAG,
5536       CONFIG_UTIL_FLAG
5537     )
5538     values
5539     (
5540       'PJI_PJP',
5541       'PJI_PJP_SUM_ROLLUP.PROCESS_RBS_CHANGES(p_worker_id);',
5542       l_step_seq,
5543       to_char(8), -- rbs
5544       'Y',
5545       'N',
5546       'N',
5547       'N'
5548     );
5549 
5550     l_step_seq := l_step_seq + 10;
5551 
5552     insert into PJI_MT_PRC_STEPS
5553     (
5554       PROCESS_NAME,
5555       STEP_NAME,
5556       STEP_SEQ,
5557       STEP_TYPE,
5558       CONFIG_PROJ_PERF_FLAG,
5559       CONFIG_COST_FLAG,
5560       CONFIG_PROFIT_FLAG,
5561       CONFIG_UTIL_FLAG
5562     )
5563     values
5564     (
5565       'PJI_PJP',
5566       'PJI_PJP_SUM_DENORM.POPULATE_XBS_DENORM(p_worker_id);',
5567       l_step_seq,
5568       to_char(1 + 2 + 4), -- generic - rbs
5569       'Y',
5570       'N',
5571       'N',
5572       'N'
5573     );
5574 
5575     l_step_seq := l_step_seq + 10;
5576 
5577     insert into PJI_MT_PRC_STEPS
5578     (
5579       PROCESS_NAME,
5580       STEP_NAME,
5581       STEP_SEQ,
5582       STEP_TYPE,
5583       CONFIG_PROJ_PERF_FLAG,
5584       CONFIG_COST_FLAG,
5585       CONFIG_PROFIT_FLAG,
5586       CONFIG_UTIL_FLAG
5587     )
5588     values
5589     (
5590       'PJI_PJP',
5591       'PJI_PJP_SUM_ROLLUP.UPDATE_XBS_DENORM_FULL(p_worker_id);',
5592       l_step_seq,
5593       to_char(1 + 2 + 4), -- generic - rbs
5594       'Y',
5595       'N',
5596       'N',
5597       'N'
5598     );
5599 
5600     l_step_seq := l_step_seq + 10;
5601 
5602     insert into PJI_MT_PRC_STEPS
5603     (
5604       PROCESS_NAME,
5605       STEP_NAME,
5606       STEP_SEQ,
5607       STEP_TYPE,
5608       CONFIG_PROJ_PERF_FLAG,
5609       CONFIG_COST_FLAG,
5610       CONFIG_PROFIT_FLAG,
5611       CONFIG_UTIL_FLAG
5612     )
5613     values
5614     (
5615       'PJI_PJP',
5616       'PJI_PJP_SUM_ROLLUP.UPDATE_PROGRAM_WBS(p_worker_id);',
5617       l_step_seq,
5618       to_char(1 + 2 + 4), -- generic - rbs
5619       'Y',
5620       'N',
5621       'N',
5622       'N'
5623     );
5624 
5625     l_step_seq := l_step_seq + 10;
5626 
5627     insert into PJI_MT_PRC_STEPS
5628     (
5629       PROCESS_NAME,
5630       STEP_NAME,
5631       STEP_SEQ,
5632       STEP_TYPE,
5633       CONFIG_PROJ_PERF_FLAG,
5634       CONFIG_COST_FLAG,
5635       CONFIG_PROFIT_FLAG,
5636       CONFIG_UTIL_FLAG
5637     )
5638     values
5639     (
5640       'PJI_PJP',
5641       'PJI_PJP_SUM_ROLLUP.PURGE_EVENT_DATA(p_worker_id);',
5642       l_step_seq,
5643       to_char(1 + 2 + 4 + 8), -- generic
5644       'Y',
5645       'N',
5646       'N',
5647       'N'
5648     );
5649 
5650     l_step_seq := l_step_seq + 10;
5651 
5652     insert into PJI_MT_PRC_STEPS
5653     (
5654       PROCESS_NAME,
5655       STEP_NAME,
5656       STEP_SEQ,
5657       STEP_TYPE,
5658       CONFIG_PROJ_PERF_FLAG,
5659       CONFIG_COST_FLAG,
5660       CONFIG_PROFIT_FLAG,
5661       CONFIG_UTIL_FLAG
5662     )
5663     values
5664     (
5665       'PJI_PJP',
5666       'PJI_PJP_SUM_ROLLUP.UPDATE_PROGRAM_RBS(p_worker_id);',
5667       l_step_seq,
5668       to_char(1 + 2 + 4 + 8), -- generic
5669       'Y',
5670       'N',
5671       'N',
5672       'N'
5673     );
5674 
5675     l_step_seq := l_step_seq + 10;
5676 
5677     insert into PJI_MT_PRC_STEPS
5678     (
5679       PROCESS_NAME,
5680       STEP_NAME,
5681       STEP_SEQ,
5682       STEP_TYPE,
5683       CONFIG_PROJ_PERF_FLAG,
5684       CONFIG_COST_FLAG,
5685       CONFIG_PROFIT_FLAG,
5686       CONFIG_UTIL_FLAG
5687     )
5688     values
5689     (
5690       'PJI_PJP',
5691       'PJI_PJP_SUM_ROLLUP.CREATE_MAPPING_RULES(p_worker_id);',
5692       l_step_seq,
5693       to_char(1 + 2 + 4 + 8), -- generic
5694       'Y',
5695       'N',
5696       'N',
5697       'N'
5698     );
5699 
5700     l_step_seq := l_step_seq + 10;
5701 
5702     insert into PJI_MT_PRC_STEPS
5703     (
5704       PROCESS_NAME,
5705       STEP_NAME,
5706       STEP_SEQ,
5707       STEP_TYPE,
5708       CONFIG_PROJ_PERF_FLAG,
5709       CONFIG_COST_FLAG,
5710       CONFIG_PROFIT_FLAG,
5711       CONFIG_UTIL_FLAG
5712     )
5713     values
5714     (
5715       'PJI_PJP',
5716       'PJI_PJP_SUM_ROLLUP.MAP_RBS_HEADERS(p_worker_id);',
5717       l_step_seq,
5718       to_char(1 + 2 + 4 + 8), -- generic
5719       'Y',
5720       'N',
5721       'N',
5722       'N'
5723     );
5724 
5725     l_step_seq := l_step_seq + 10;
5726 
5727     insert into PJI_MT_PRC_STEPS
5728     (
5729       PROCESS_NAME,
5730       STEP_NAME,
5731       STEP_SEQ,
5732       STEP_TYPE,
5733       CONFIG_PROJ_PERF_FLAG,
5734       CONFIG_COST_FLAG,
5735       CONFIG_PROFIT_FLAG,
5736       CONFIG_UTIL_FLAG
5737     )
5738     values
5739     (
5740       'PJI_PJP',
5741       'PJI_PJP_SUM_DENORM.POPULATE_RBS_DENORM(p_worker_id);',
5742       l_step_seq,
5743       to_char(1 + 2 + 4 + 8), -- generic
5744       'Y',
5745       'N',
5746       'N',
5747       'N'
5748     );
5749 
5750     l_step_seq := l_step_seq + 10;
5751 
5752     insert into PJI_MT_PRC_STEPS
5753     (
5754       PROCESS_NAME,
5755       STEP_NAME,
5756       STEP_SEQ,
5757       STEP_TYPE,
5758       CONFIG_PROJ_PERF_FLAG,
5759       CONFIG_COST_FLAG,
5760       CONFIG_PROFIT_FLAG,
5761       CONFIG_UTIL_FLAG
5762     )
5763     values
5764     (
5765       'PJI_PJP',
5766       'PJI_PJP_SUM_ROLLUP.POPULATE_XBS_DENORM_DELTA(p_worker_id);',
5767       l_step_seq,
5768       to_char(1 + 2 + 4), -- generic - rbs
5769       'Y',
5770       'N',
5771       'N',
5772       'N'
5773     );
5774 
5775     l_step_seq := l_step_seq + 10;
5776 
5777     insert into PJI_MT_PRC_STEPS
5778     (
5779       PROCESS_NAME,
5780       STEP_NAME,
5781       STEP_SEQ,
5782       STEP_TYPE,
5783       CONFIG_PROJ_PERF_FLAG,
5784       CONFIG_COST_FLAG,
5785       CONFIG_PROFIT_FLAG,
5786       CONFIG_UTIL_FLAG
5787     )
5788     values
5789     (
5790       'PJI_PJP',
5791       'PJI_PJP_SUM_ROLLUP.POPULATE_RBS_DENORM_DELTA(p_worker_id);',
5792       l_step_seq,
5793       to_char(1 + 2 + 4 + 8), -- generic
5794       'Y',
5795       'N',
5796       'N',
5797       'N'
5798     );
5799 
5800     l_step_seq := l_step_seq + 10;
5801 
5802     insert into PJI_MT_PRC_STEPS
5803     (
5804       PROCESS_NAME,
5805       STEP_NAME,
5806       STEP_SEQ,
5807       STEP_TYPE,
5808       CONFIG_PROJ_PERF_FLAG,
5809       CONFIG_COST_FLAG,
5810       CONFIG_PROFIT_FLAG,
5811       CONFIG_UTIL_FLAG
5812     )
5813     values
5814     (
5815       'PJI_PJP',
5816       'PJI_FM_SUM_PSI.BALANCES_ROWID_TABLE(p_worker_id);',
5817       l_step_seq,
5818       to_char(1 + 2 + 4), -- generic - rbs
5819       'Y',
5820       'N',
5821       'N',
5822       'N'
5823     );
5824 
5825     l_step_seq := l_step_seq + 10;
5826 
5827     insert into PJI_MT_PRC_STEPS
5828     (
5829       PROCESS_NAME,
5830       STEP_NAME,
5831       STEP_SEQ,
5832       STEP_TYPE,
5833       CONFIG_PROJ_PERF_FLAG,
5834       CONFIG_COST_FLAG,
5835       CONFIG_PROFIT_FLAG,
5836       CONFIG_UTIL_FLAG
5837     )
5838     values
5839     (
5840       'PJI_PJP',
5841       'PJI_FM_SUM_PSI.ACT_ROWID_TABLE(p_worker_id);',
5842       l_step_seq,
5843       to_char(1 + 2 + 4), -- generic - rbs
5844       'Y',
5845       'N',
5846       'N',
5847       'N'
5848     );
5849 
5850     l_step_seq := l_step_seq + 10;
5851 
5852     insert into PJI_MT_PRC_STEPS
5853     (
5854       PROCESS_NAME,
5855       STEP_NAME,
5856       STEP_SEQ,
5857       STEP_TYPE,
5858       CONFIG_PROJ_PERF_FLAG,
5859       CONFIG_COST_FLAG,
5860       CONFIG_PROFIT_FLAG,
5861       CONFIG_UTIL_FLAG
5862     )
5863     values
5864     (
5865       'PJI_PJP',
5866       'PJI_PJP_SUM_ROLLUP.AGGREGATE_FP_SLICES(p_worker_id);',
5867       l_step_seq,
5868       to_char(1 + 2 + 4 + 8), -- generic
5869       'Y',
5870       'N',
5871       'N',
5872       'N'
5873     );
5874 
5875     l_step_seq := l_step_seq + 10;
5876 
5877     insert into PJI_MT_PRC_STEPS
5878     (
5879       PROCESS_NAME,
5880       STEP_NAME,
5881       STEP_SEQ,
5882       STEP_TYPE,
5883       CONFIG_PROJ_PERF_FLAG,
5884       CONFIG_COST_FLAG,
5885       CONFIG_PROFIT_FLAG,
5886       CONFIG_UTIL_FLAG
5887     )
5888     values
5889     (
5890       'PJI_PJP',
5891       'PJI_PJP_SUM_ROLLUP.AGGREGATE_AC_SLICES(p_worker_id);',
5892       l_step_seq,
5893       to_char(1 + 2 + 4), -- generic - rbs
5894       'Y',
5895       'N',
5896       'N',
5897       'N'
5898     );
5899 
5900     l_step_seq := l_step_seq + 10;
5901 
5902     insert into PJI_MT_PRC_STEPS
5903     (
5904       PROCESS_NAME,
5905       STEP_NAME,
5906       STEP_SEQ,
5907       STEP_TYPE,
5908       CONFIG_PROJ_PERF_FLAG,
5909       CONFIG_COST_FLAG,
5910       CONFIG_PROFIT_FLAG,
5911       CONFIG_UTIL_FLAG
5912     )
5913     values
5914     (
5915       'PJI_PJP',
5916       'PJI_PJP_SUM_ROLLUP.MARK_EXTRACTED_PROJECTS(p_worker_id);',
5917       l_step_seq,
5918       to_char(1 + 2 + 4 + 8), -- generic
5919       'Y',
5920       'N',
5921       'N',
5922       'N'
5923     );
5924 
5925     l_step_seq := l_step_seq + 10;
5926 
5927     insert into PJI_MT_PRC_STEPS
5928     (
5929       PROCESS_NAME,
5930       STEP_NAME,
5931       STEP_SEQ,
5932       STEP_TYPE,
5933       CONFIG_PROJ_PERF_FLAG,
5934       CONFIG_COST_FLAG,
5935       CONFIG_PROFIT_FLAG,
5936       CONFIG_UTIL_FLAG
5937     )
5938     values
5939     (
5940       'PJI_PJP',
5941       'PJI_PJP_SUM_CUST.PJP_CUSTOM_FPR_API(p_worker_id);',
5942       l_step_seq,
5943       to_char(1 + 2 + 4 + 8), -- generic
5944       'Y',
5945       'N',
5946       'N',
5947       'N'
5948     );
5949 
5950     l_step_seq := l_step_seq + 10;
5951 
5952     insert into PJI_MT_PRC_STEPS
5953     (
5954       PROCESS_NAME,
5955       STEP_NAME,
5956       STEP_SEQ,
5957       STEP_TYPE,
5958       CONFIG_PROJ_PERF_FLAG,
5959       CONFIG_COST_FLAG,
5960       CONFIG_PROFIT_FLAG,
5961       CONFIG_UTIL_FLAG
5962     )
5963     values
5964     (
5965       'PJI_PJP',
5966       'PJI_PJP_SUM_CUST.PJP_CUSTOM_ACR_API(p_worker_id);',
5967       l_step_seq,
5968       to_char(1 + 2 + 4), -- generic - rbs
5969       'Y',
5970       'N',
5971       'N',
5972       'N'
5973     );
5974 
5975     l_step_seq := l_step_seq + 10;
5976 
5977     insert into PJI_MT_PRC_STEPS
5978     (
5979       PROCESS_NAME,
5980       STEP_NAME,
5981       STEP_SEQ,
5982       STEP_TYPE,
5983       CONFIG_PROJ_PERF_FLAG,
5984       CONFIG_COST_FLAG,
5985       CONFIG_PROFIT_FLAG,
5986       CONFIG_UTIL_FLAG
5987     )
5988     values
5989     (
5990       'PJI_PJP',
5991       'PJI_PJP_SUM_ROLLUP.AGGREGATE_FP_CUST_SLICES(p_worker_id);',
5992       l_step_seq,
5993       to_char(1 + 2 + 4 + 8), -- generic
5994       'Y',
5995       'N',
5996       'N',
5997       'N'
5998     );
5999 
6000     l_step_seq := l_step_seq + 10;
6001 
6002     insert into PJI_MT_PRC_STEPS
6003     (
6004       PROCESS_NAME,
6005       STEP_NAME,
6006       STEP_SEQ,
6007       STEP_TYPE,
6008       CONFIG_PROJ_PERF_FLAG,
6009       CONFIG_COST_FLAG,
6010       CONFIG_PROFIT_FLAG,
6011       CONFIG_UTIL_FLAG
6012     )
6013     values
6014     (
6015       'PJI_PJP',
6016       'PJI_PJP_SUM_ROLLUP.AGGREGATE_AC_CUST_SLICES(p_worker_id);',
6017       l_step_seq,
6018       to_char(1 + 2 + 4), -- generic - rbs
6019       'Y',
6020       'N',
6021       'N',
6022       'N'
6023     );
6024 
6025     l_step_seq := l_step_seq + 10;
6026 
6027     insert into PJI_MT_PRC_STEPS
6028     (
6029       PROCESS_NAME,
6030       STEP_NAME,
6031       STEP_SEQ,
6032       STEP_TYPE,
6033       CONFIG_PROJ_PERF_FLAG,
6034       CONFIG_COST_FLAG,
6035       CONFIG_PROFIT_FLAG,
6036       CONFIG_UTIL_FLAG
6037     )
6038     values
6039     (
6040       'PJI_PJP',
6041       'PJI_PJP_SUM_ROLLUP.GET_PLANRES_ACTUALS(p_worker_id);',
6042       l_step_seq,
6043       to_char(1 + 2 + 4 + 8), -- generic
6044       'Y',
6045       'N',
6046       'N',
6047       'N'
6048     );
6049 
6050     l_step_seq := l_step_seq + 10;
6051 
6052     insert into PJI_MT_PRC_STEPS
6053     (
6054       PROCESS_NAME,
6055       STEP_NAME,
6056       STEP_SEQ,
6057       STEP_TYPE,
6058       CONFIG_PROJ_PERF_FLAG,
6059       CONFIG_COST_FLAG,
6060       CONFIG_PROFIT_FLAG,
6061       CONFIG_UTIL_FLAG
6062     )
6063     values
6064     (
6065       'PJI_PJP',
6066       'PJI_PJP_SUM_ROLLUP.PULL_PLANS_FOR_PR(p_worker_id);',
6067       l_step_seq,
6068       to_char(4), -- partial refresh
6069       'Y',
6070       'N',
6071       'N',
6072       'N'
6073     );
6074 
6075     l_step_seq := l_step_seq + 10;
6076 
6077     insert into PJI_MT_PRC_STEPS
6078     (
6079       PROCESS_NAME,
6080       STEP_NAME,
6081       STEP_SEQ,
6082       STEP_TYPE,
6083       CONFIG_PROJ_PERF_FLAG,
6084       CONFIG_COST_FLAG,
6085       CONFIG_PROFIT_FLAG,
6086       CONFIG_UTIL_FLAG
6087     )
6088     values
6089     (
6090       'PJI_PJP',
6091       'PJI_PJP_SUM_ROLLUP.PULL_PLANS_FOR_RBS(p_worker_id);',
6092       l_step_seq,
6093       to_char(8), -- rbs
6094       'Y',
6095       'N',
6096       'N',
6097       'N'
6098     );
6099 
6100     l_step_seq := l_step_seq + 10;
6101 
6102     insert into PJI_MT_PRC_STEPS
6103     (
6104       PROCESS_NAME,
6105       STEP_NAME,
6106       STEP_SEQ,
6107       STEP_TYPE,
6108       CONFIG_PROJ_PERF_FLAG,
6109       CONFIG_COST_FLAG,
6110       CONFIG_PROFIT_FLAG,
6111       CONFIG_UTIL_FLAG
6112     )
6113     values
6114     (
6115       'PJI_PJP',
6116       'PJI_PJP_SUM_ROLLUP.PULL_DANGLING_PLANS(p_worker_id);',
6117       l_step_seq,
6118       to_char(2), -- incremental only
6119       'Y',
6120       'N',
6121       'N',
6122       'N'
6123     );
6124 
6125     l_step_seq := l_step_seq + 10;
6126 
6127     insert into PJI_MT_PRC_STEPS
6128     (
6129       PROCESS_NAME,
6130       STEP_NAME,
6131       STEP_SEQ,
6132       STEP_TYPE,
6133       CONFIG_PROJ_PERF_FLAG,
6134       CONFIG_COST_FLAG,
6135       CONFIG_PROFIT_FLAG,
6136       CONFIG_UTIL_FLAG
6137     )
6138     values
6139     (
6140       'PJI_PJP',
6141       'PJI_PJP_SUM_ROLLUP.PROCESS_PENDING_PLAN_UPDATES(p_worker_id);',
6142       l_step_seq,
6143       to_char(1 + 2 + 4 + 8), -- generic
6144       'Y',
6145       'N',
6146       'N',
6147       'N'
6148     );
6149 
6150     l_step_seq := l_step_seq + 10;
6151 
6152     insert into PJI_MT_PRC_STEPS
6153     (
6154       PROCESS_NAME,
6155       STEP_NAME,
6156       STEP_SEQ,
6157       STEP_TYPE,
6158       CONFIG_PROJ_PERF_FLAG,
6159       CONFIG_COST_FLAG,
6160       CONFIG_PROFIT_FLAG,
6161       CONFIG_UTIL_FLAG
6162     )
6163     values
6164     (
6165       'PJI_PJP',
6166       'PJI_PJP_SUM_ROLLUP.ROLLUP_FPR_CAL_ALL(p_worker_id);',
6167       l_step_seq,
6168       to_char(1 + 2 + 4 + 8), -- generic
6169       'Y',
6170       'N',
6171       'N',
6172       'N'
6173     );
6174 
6175     l_step_seq := l_step_seq + 10;
6176 
6177     insert into PJI_MT_PRC_STEPS
6178     (
6179       PROCESS_NAME,
6180       STEP_NAME,
6181       STEP_SEQ,
6182       STEP_TYPE,
6183       CONFIG_PROJ_PERF_FLAG,
6184       CONFIG_COST_FLAG,
6185       CONFIG_PROFIT_FLAG,
6186       CONFIG_UTIL_FLAG
6187     )
6188     values
6189     (
6190       'PJI_PJP',
6191       'PJI_PJP_SUM_ROLLUP.ROLLUP_ACR_CAL_ALL(p_worker_id);',
6192       l_step_seq,
6193       to_char(1 + 2 + 4), -- generic - rbs
6194       'Y',
6195       'N',
6196       'N',
6197       'N'
6198     );
6199 
6200     l_step_seq := l_step_seq + 10;
6201 
6202     insert into PJI_MT_PRC_STEPS
6203     (
6204       PROCESS_NAME,
6205       STEP_NAME,
6206       STEP_SEQ,
6207       STEP_TYPE,
6208       CONFIG_PROJ_PERF_FLAG,
6209       CONFIG_COST_FLAG,
6210       CONFIG_PROFIT_FLAG,
6211       CONFIG_UTIL_FLAG
6212     )
6213     values
6214     (
6215       'PJI_PJP',
6216       'PJI_PJP_SUM_ROLLUP.ROLLUP_FPR_CAL_NONTP(p_worker_id);',
6217       l_step_seq,
6218       to_char(1 + 2 + 4 + 8), -- generic
6219       'Y',
6220       'N',
6221       'N',
6222       'N'
6223     );
6224 
6225     l_step_seq := l_step_seq + 10;
6226 
6227     insert into PJI_MT_PRC_STEPS
6228     (
6229       PROCESS_NAME,
6230       STEP_NAME,
6231       STEP_SEQ,
6232       STEP_TYPE,
6233       CONFIG_PROJ_PERF_FLAG,
6234       CONFIG_COST_FLAG,
6235       CONFIG_PROFIT_FLAG,
6236       CONFIG_UTIL_FLAG
6237     )
6238     values
6239     (
6240       'PJI_PJP',
6241       'PJI_PJP_SUM_ROLLUP.ROLLUP_FPR_CAL_PA(p_worker_id);',
6242       l_step_seq,
6243       to_char(1 + 2 + 4 + 8), -- generic
6244       'Y',
6245       'N',
6246       'N',
6247       'N'
6248     );
6249 
6250     l_step_seq := l_step_seq + 10;
6251 
6252     insert into PJI_MT_PRC_STEPS
6253     (
6254       PROCESS_NAME,
6255       STEP_NAME,
6256       STEP_SEQ,
6257       STEP_TYPE,
6258       CONFIG_PROJ_PERF_FLAG,
6259       CONFIG_COST_FLAG,
6260       CONFIG_PROFIT_FLAG,
6261       CONFIG_UTIL_FLAG
6262     )
6263     values
6264     (
6265       'PJI_PJP',
6266       'PJI_PJP_SUM_ROLLUP.ROLLUP_FPR_CAL_GL(p_worker_id);',
6267       l_step_seq,
6268       to_char(1 + 2 + 4 + 8), -- generic
6269       'Y',
6270       'N',
6271       'N',
6272       'N'
6273     );
6274 
6275     l_step_seq := l_step_seq + 10;
6276 
6277     insert into PJI_MT_PRC_STEPS
6278     (
6279       PROCESS_NAME,
6280       STEP_NAME,
6281       STEP_SEQ,
6282       STEP_TYPE,
6283       CONFIG_PROJ_PERF_FLAG,
6284       CONFIG_COST_FLAG,
6285       CONFIG_PROFIT_FLAG,
6286       CONFIG_UTIL_FLAG
6287     )
6288     values
6289     (
6290       'PJI_PJP',
6291       'PJI_PJP_SUM_ROLLUP.ROLLUP_FPR_CAL_EN(p_worker_id);',
6292       l_step_seq,
6293       to_char(1 + 2 + 4 + 8), -- generic
6294       'Y',
6295       'N',
6296       'N',
6297       'N'
6298     );
6299 
6300     l_step_seq := l_step_seq + 10;
6301 
6302     insert into PJI_MT_PRC_STEPS
6303     (
6304       PROCESS_NAME,
6305       STEP_NAME,
6306       STEP_SEQ,
6307       STEP_TYPE,
6308       CONFIG_PROJ_PERF_FLAG,
6309       CONFIG_COST_FLAG,
6310       CONFIG_PROFIT_FLAG,
6311       CONFIG_UTIL_FLAG
6312     )
6313     values
6314     (
6315       'PJI_PJP',
6316       'PJI_PJP_SUM_ROLLUP.ROLLUP_ACR_CAL_PA(p_worker_id);',
6317       l_step_seq,
6318       to_char(1 + 2 + 4), -- generic - rbs
6319       'Y',
6320       'N',
6321       'N',
6322       'N'
6323     );
6324 
6325     l_step_seq := l_step_seq + 10;
6326 
6327     insert into PJI_MT_PRC_STEPS
6328     (
6329       PROCESS_NAME,
6330       STEP_NAME,
6331       STEP_SEQ,
6332       STEP_TYPE,
6333       CONFIG_PROJ_PERF_FLAG,
6334       CONFIG_COST_FLAG,
6335       CONFIG_PROFIT_FLAG,
6336       CONFIG_UTIL_FLAG
6337     )
6338     values
6339     (
6340       'PJI_PJP',
6341       'PJI_PJP_SUM_ROLLUP.ROLLUP_ACR_CAL_GL(p_worker_id);',
6342       l_step_seq,
6343       to_char(1 + 2 + 4), -- generic - rbs
6344       'Y',
6345       'N',
6346       'N',
6347       'N'
6348     );
6349 
6350     l_step_seq := l_step_seq + 10;
6351 
6352     insert into PJI_MT_PRC_STEPS
6353     (
6354       PROCESS_NAME,
6355       STEP_NAME,
6356       STEP_SEQ,
6357       STEP_TYPE,
6358       CONFIG_PROJ_PERF_FLAG,
6359       CONFIG_COST_FLAG,
6360       CONFIG_PROFIT_FLAG,
6361       CONFIG_UTIL_FLAG
6362     )
6363     values
6364     (
6365       'PJI_PJP',
6366       'PJI_PJP_SUM_ROLLUP.ROLLUP_ACR_CAL_EN(p_worker_id);',
6367       l_step_seq,
6368       to_char(1 + 2 + 4), -- generic - rbs
6369       'Y',
6370       'N',
6371       'N',
6372       'N'
6373     );
6374 
6375     l_step_seq := l_step_seq + 10;
6376 
6377     insert into PJI_MT_PRC_STEPS
6378     (
6379       PROCESS_NAME,
6380       STEP_NAME,
6381       STEP_SEQ,
6382       STEP_TYPE,
6383       CONFIG_PROJ_PERF_FLAG,
6384       CONFIG_COST_FLAG,
6385       CONFIG_PROFIT_FLAG,
6386       CONFIG_UTIL_FLAG
6387     )
6388     values
6389     (
6390       'PJI_PJP',
6391       'PJI_PJP_SUM_ROLLUP.ROLLUP_FPR_RBS_TOP(p_worker_id);',
6392       l_step_seq,
6393       to_char(1 + 2 + 4), -- generic - rbs
6394       'Y',
6395       'N',
6396       'N',
6397       'N'
6398     );
6399 
6400     l_step_seq := l_step_seq + 10;
6401 
6402     insert into PJI_MT_PRC_STEPS
6403     (
6404       PROCESS_NAME,
6405       STEP_NAME,
6406       STEP_SEQ,
6407       STEP_TYPE,
6408       CONFIG_PROJ_PERF_FLAG,
6409       CONFIG_COST_FLAG,
6410       CONFIG_PROFIT_FLAG,
6411       CONFIG_UTIL_FLAG
6412     )
6413     values
6414     (
6415       'PJI_PJP',
6416       'PJI_PJP_SUM_ROLLUP.ROLLUP_FPR_WBS(p_worker_id);',
6417       l_step_seq,
6418       to_char(1 + 2 + 4 + 8), -- generic
6419       'Y',
6420       'N',
6421       'N',
6422       'N'
6423     );
6424 
6425     l_step_seq := l_step_seq + 10;
6426 
6427     insert into PJI_MT_PRC_STEPS
6428     (
6429       PROCESS_NAME,
6430       STEP_NAME,
6431       STEP_SEQ,
6432       STEP_TYPE,
6433       CONFIG_PROJ_PERF_FLAG,
6434       CONFIG_COST_FLAG,
6435       CONFIG_PROFIT_FLAG,
6436       CONFIG_UTIL_FLAG
6437     )
6438     values
6439     (
6440       'PJI_PJP',
6441       'PJI_PJP_SUM_ROLLUP.ROLLUP_ACR_WBS(p_worker_id);',
6442       l_step_seq,
6443       to_char(1 + 2 + 4), -- generic - rbs
6444       'Y',
6445       'N',
6446       'N',
6447       'N'
6448     );
6449 
6450     l_step_seq := l_step_seq + 10;
6451 
6452     insert into PJI_MT_PRC_STEPS
6453     (
6454       PROCESS_NAME,
6455       STEP_NAME,
6456       STEP_SEQ,
6457       STEP_TYPE,
6458       CONFIG_PROJ_PERF_FLAG,
6459       CONFIG_COST_FLAG,
6460       CONFIG_PROFIT_FLAG,
6461       CONFIG_UTIL_FLAG
6462     )
6463     values
6464     (
6465       'PJI_PJP',
6466       'PJI_PJP_SUM_ROLLUP.ROLLUP_FPR_PRG(p_worker_id);',
6467       l_step_seq,
6468       to_char(1 + 2 + 4), -- generic - rbs
6469       'Y',
6470       'N',
6471       'N',
6472       'N'
6473     );
6474 
6475     l_step_seq := l_step_seq + 10;
6476 
6477     insert into PJI_MT_PRC_STEPS
6478     (
6479       PROCESS_NAME,
6480       STEP_NAME,
6481       STEP_SEQ,
6482       STEP_TYPE,
6483       CONFIG_PROJ_PERF_FLAG,
6484       CONFIG_COST_FLAG,
6485       CONFIG_PROFIT_FLAG,
6486       CONFIG_UTIL_FLAG
6487     )
6488     values
6489     (
6490       'PJI_PJP',
6491       'PJI_PJP_SUM_ROLLUP.ROLLUP_ACR_PRG(p_worker_id);',
6492       l_step_seq,
6493       to_char(1 + 2 + 4), -- generic - rbs
6494       'Y',
6495       'N',
6496       'N',
6497       'N'
6498     );
6499 
6500     l_step_seq := l_step_seq + 10;
6501 
6502     insert into PJI_MT_PRC_STEPS
6503     (
6504       PROCESS_NAME,
6505       STEP_NAME,
6506       STEP_SEQ,
6507       STEP_TYPE,
6508       CONFIG_PROJ_PERF_FLAG,
6509       CONFIG_COST_FLAG,
6510       CONFIG_PROFIT_FLAG,
6511       CONFIG_UTIL_FLAG
6512     )
6513     values
6514     (
6515       'PJI_PJP',
6516       'PJI_PJP_SUM_ROLLUP.ROLLUP_FPR_RBS_SMART_SLICES(p_worker_id);',
6517       l_step_seq,
6518       to_char(1 + 2 + 4), -- generic - rbs
6519       'Y',
6520       'N',
6521       'N',
6522       'N'
6523     );
6524 
6525     l_step_seq := l_step_seq + 10;
6526 
6527     insert into PJI_MT_PRC_STEPS
6528     (
6529       PROCESS_NAME,
6530       STEP_NAME,
6531       STEP_SEQ,
6532       STEP_TYPE,
6533       CONFIG_PROJ_PERF_FLAG,
6534       CONFIG_COST_FLAG,
6535       CONFIG_PROFIT_FLAG,
6536       CONFIG_UTIL_FLAG
6537     )
6538     values
6539     (
6540       'PJI_PJP',
6541       'PJI_PJP_SUM_ROLLUP.AGGREGATE_PLAN_DATA(p_worker_id);',
6542       l_step_seq,
6543       to_char(1 + 2 + 4 + 8), -- partial + rbs
6544       'Y',
6545       'N',
6546       'N',
6547       'N'
6548     );
6549 
6550     l_step_seq := l_step_seq + 10;
6551 
6552     insert into PJI_MT_PRC_STEPS
6553     (
6554       PROCESS_NAME,
6555       STEP_NAME,
6556       STEP_SEQ,
6557       STEP_TYPE,
6558       CONFIG_PROJ_PERF_FLAG,
6559       CONFIG_COST_FLAG,
6560       CONFIG_PROFIT_FLAG,
6561       CONFIG_UTIL_FLAG
6562     )
6563     values
6564     (
6565       'PJI_PJP',
6566       'PJI_PJP_SUM_ROLLUP.PURGE_PLAN_DATA(p_worker_id);',
6567       l_step_seq,
6568       to_char(1 + 2 + 4 + 8), -- partial + rbs
6569       'Y',
6570       'N',
6571       'N',
6572       'N'
6573     );
6574 
6575     l_step_seq := l_step_seq + 10;
6576 
6577     insert into PJI_MT_PRC_STEPS
6578     (
6579       PROCESS_NAME,
6580       STEP_NAME,
6581       STEP_SEQ,
6582       STEP_TYPE,
6583       CONFIG_PROJ_PERF_FLAG,
6584       CONFIG_COST_FLAG,
6585       CONFIG_PROFIT_FLAG,
6586       CONFIG_UTIL_FLAG
6587     )
6588     values
6589     (
6590       'PJI_PJP',
6591       'PJI_PJP_SUM_ROLLUP.UPDATE_WBS_HDR(p_worker_id);',
6592       l_step_seq,
6593       to_char(1 + 2 + 4 + 8),
6594       'Y',
6595       'N',
6596       'N',
6597       'N'
6598     );
6599 
6600     l_step_seq := l_step_seq + 10;
6601 
6602     /* Bug 6063826. Added MERGE_INTO_FP_FACT and commented out the next four */
6603     insert into PJI_MT_PRC_STEPS
6604     (
6605       PROCESS_NAME,
6606       STEP_NAME,
6607       STEP_SEQ,
6608       STEP_TYPE,
6609       CONFIG_PROJ_PERF_FLAG,
6610       CONFIG_COST_FLAG,
6611       CONFIG_PROFIT_FLAG,
6612       CONFIG_UTIL_FLAG
6613     )
6614     values
6615     (
6616       'PJI_PJP',
6617       'PJI_PJP_SUM_ROLLUP.MERGE_INTO_FP_FACT(p_worker_id);',
6618       l_step_seq,
6619       to_char(1 + 2 + 4 + 8), -- generic
6620       'Y',
6621       'N',
6622       'N',
6623       'N'
6624     );
6625 /*
6626     insert into PJI_MT_PRC_STEPS
6627     (
6628       PROCESS_NAME,
6629       STEP_NAME,
6630       STEP_SEQ,
6631       STEP_TYPE,
6632       CONFIG_PROJ_PERF_FLAG,
6633       CONFIG_COST_FLAG,
6634       CONFIG_PROFIT_FLAG,
6635       CONFIG_UTIL_FLAG
6636     )
6637     values
6638     (
6639       'PJI_PJP',
6640       'PJI_PJP_SUM_ROLLUP.GET_FPR_ROWIDS(p_worker_id);',
6641       l_step_seq,
6642       to_char(1 + 2 + 4 + 8), -- generic
6643       'Y',
6644       'N',
6645       'N',
6646       'N'
6647     );
6648 
6649     l_step_seq := l_step_seq + 10;
6650 
6651     insert into PJI_MT_PRC_STEPS
6652     (
6653       PROCESS_NAME,
6654       STEP_NAME,
6655       STEP_SEQ,
6656       STEP_TYPE,
6657       CONFIG_PROJ_PERF_FLAG,
6658       CONFIG_COST_FLAG,
6659       CONFIG_PROFIT_FLAG,
6660       CONFIG_UTIL_FLAG
6661     )
6662     values
6663     (
6664       'PJI_PJP',
6665       'PJI_PJP_SUM_ROLLUP.UPDATE_FPR_ROWS(p_worker_id);',
6666       l_step_seq,
6667       to_char(1 + 2 + 4 + 8), -- generic
6668       'Y',
6669       'N',
6670       'N',
6671       'N'
6672     );
6673 
6674     l_step_seq := l_step_seq + 10;
6675 
6676     insert into PJI_MT_PRC_STEPS
6677     (
6678       PROCESS_NAME,
6679       STEP_NAME,
6680       STEP_SEQ,
6681       STEP_TYPE,
6682       CONFIG_PROJ_PERF_FLAG,
6683       CONFIG_COST_FLAG,
6684       CONFIG_PROFIT_FLAG,
6685       CONFIG_UTIL_FLAG
6686     )
6687     values
6688     (
6689       'PJI_PJP',
6690       'PJI_PJP_SUM_ROLLUP.INSERT_FPR_ROWS(p_worker_id);',
6691       l_step_seq,
6692       to_char(1 + 2 + 4 + 8), -- generic
6693       'Y',
6694       'N',
6695       'N',
6696       'N'
6697     );
6698 
6699     l_step_seq := l_step_seq + 10;
6700 
6701     insert into PJI_MT_PRC_STEPS
6702     (
6703       PROCESS_NAME,
6704       STEP_NAME,
6705       STEP_SEQ,
6706       STEP_TYPE,
6707       CONFIG_PROJ_PERF_FLAG,
6708       CONFIG_COST_FLAG,
6709       CONFIG_PROFIT_FLAG,
6710       CONFIG_UTIL_FLAG
6711     )
6712     values
6713     (
6714       'PJI_PJP',
6715       'PJI_PJP_SUM_ROLLUP.CLEANUP_FPR_ROWID_TABLE(p_worker_id);',
6716       l_step_seq,
6717       to_char(1 + 2 + 4 + 8), -- generic
6718       'Y',
6719       'N',
6720       'N',
6721       'N'
6722     );
6723 */
6724     l_step_seq := l_step_seq + 10;
6725 
6726     insert into PJI_MT_PRC_STEPS
6727     (
6728       PROCESS_NAME,
6729       STEP_NAME,
6730       STEP_SEQ,
6731       STEP_TYPE,
6732       CONFIG_PROJ_PERF_FLAG,
6733       CONFIG_COST_FLAG,
6734       CONFIG_PROFIT_FLAG,
6735       CONFIG_UTIL_FLAG
6736     )
6737     values
6738     (
6739       'PJI_PJP',
6740       'PJI_PJP_SUM_ROLLUP.GET_ACR_ROWIDS(p_worker_id);',
6741       l_step_seq,
6742       to_char(1 + 2 + 4), -- generic - rbs
6743       'Y',
6744       'N',
6745       'N',
6746       'N'
6747     );
6748 
6749     l_step_seq := l_step_seq + 10;
6750 
6751     insert into PJI_MT_PRC_STEPS
6752     (
6753       PROCESS_NAME,
6754       STEP_NAME,
6755       STEP_SEQ,
6756       STEP_TYPE,
6757       CONFIG_PROJ_PERF_FLAG,
6758       CONFIG_COST_FLAG,
6759       CONFIG_PROFIT_FLAG,
6760       CONFIG_UTIL_FLAG
6761     )
6762     values
6763     (
6764       'PJI_PJP',
6765       'PJI_PJP_SUM_ROLLUP.UPDATE_ACR_ROWS(p_worker_id);',
6766       l_step_seq,
6767       to_char(1 + 2 + 4), -- generic - rbs
6768       'Y',
6769       'N',
6770       'N',
6771       'N'
6772     );
6773 
6774     l_step_seq := l_step_seq + 10;
6775 
6776     insert into PJI_MT_PRC_STEPS
6777     (
6778       PROCESS_NAME,
6779       STEP_NAME,
6780       STEP_SEQ,
6781       STEP_TYPE,
6782       CONFIG_PROJ_PERF_FLAG,
6783       CONFIG_COST_FLAG,
6784       CONFIG_PROFIT_FLAG,
6785       CONFIG_UTIL_FLAG
6786     )
6787     values
6788     (
6789       'PJI_PJP',
6790       'PJI_PJP_SUM_ROLLUP.INSERT_ACR_ROWS(p_worker_id);',
6791       l_step_seq,
6792       to_char(1 + 2 + 4), -- generic - rbs
6793       'Y',
6794       'N',
6795       'N',
6796       'N'
6797     );
6798 
6799     l_step_seq := l_step_seq + 10;
6800 
6801     insert into PJI_MT_PRC_STEPS
6802     (
6803       PROCESS_NAME,
6804       STEP_NAME,
6805       STEP_SEQ,
6806       STEP_TYPE,
6807       CONFIG_PROJ_PERF_FLAG,
6808       CONFIG_COST_FLAG,
6809       CONFIG_PROFIT_FLAG,
6810       CONFIG_UTIL_FLAG
6811     )
6812     values
6813     (
6814       'PJI_PJP',
6815       'PJI_PJP_SUM_ROLLUP.CLEANUP_ACR_ROWID_TABLE(p_worker_id);',
6816       l_step_seq,
6817       to_char(1 + 2 + 4), -- generic - rbs
6818       'Y',
6819       'N',
6820       'N',
6821       'N'
6822     );
6823 
6824     l_step_seq := l_step_seq + 10;
6825 
6826     insert into PJI_MT_PRC_STEPS
6827     (
6828       PROCESS_NAME,
6829       STEP_NAME,
6830       STEP_SEQ,
6831       STEP_TYPE,
6832       CONFIG_PROJ_PERF_FLAG,
6833       CONFIG_COST_FLAG,
6834       CONFIG_PROFIT_FLAG,
6835       CONFIG_UTIL_FLAG
6836     )
6837     values
6838     (
6839       'PJI_PJP',
6840       'PJI_PJP_SUM_ROLLUP.UPDATE_XBS_DENORM(p_worker_id);',
6841       l_step_seq,
6842       to_char(1 + 2 + 4), -- generic - rbs
6843       'Y',
6844       'N',
6845       'N',
6846       'N'
6847     );
6848 
6849     l_step_seq := l_step_seq + 10;
6850 
6851     insert into PJI_MT_PRC_STEPS
6852     (
6853       PROCESS_NAME,
6854       STEP_NAME,
6855       STEP_SEQ,
6856       STEP_TYPE,
6857       CONFIG_PROJ_PERF_FLAG,
6858       CONFIG_COST_FLAG,
6859       CONFIG_PROFIT_FLAG,
6860       CONFIG_UTIL_FLAG
6861     )
6862     values
6863     (
6864       'PJI_PJP',
6865       'PJI_PJP_SUM_ROLLUP.UPDATE_RBS_DENORM(p_worker_id);',
6866       l_step_seq,
6867       to_char(1 + 2 + 4 + 8), -- generic
6868       'Y',
6869       'N',
6870       'N',
6871       'N'
6872     );
6873 
6874     l_step_seq := l_step_seq + 10;
6875 
6876     insert into PJI_MT_PRC_STEPS
6877     (
6878       PROCESS_NAME,
6879       STEP_NAME,
6880       STEP_SEQ,
6881       STEP_TYPE,
6882       CONFIG_PROJ_PERF_FLAG,
6883       CONFIG_COST_FLAG,
6884       CONFIG_PROFIT_FLAG,
6885       CONFIG_UTIL_FLAG
6886     )
6887     values
6888     (
6889       'PJI_PJP',
6890       'PJI_PJP_SUM_ROLLUP.PROCESS_PENDING_EVENTS(p_worker_id);',
6891       l_step_seq,
6892       to_char(1 + 2 + 4 + 8), -- generic
6893       'Y',
6894       'N',
6895       'N',
6896       'N'
6897     );
6898 
6899     l_step_seq := l_step_seq + 10;
6900 
6901     insert into PJI_MT_PRC_STEPS
6902     (
6903       PROCESS_NAME,
6904       STEP_NAME,
6905       STEP_SEQ,
6906       STEP_TYPE,
6907       CONFIG_PROJ_PERF_FLAG,
6908       CONFIG_COST_FLAG,
6909       CONFIG_PROFIT_FLAG,
6910       CONFIG_UTIL_FLAG
6911     )
6912     values
6913     (
6914       'PJI_PJP',
6915       'PJI_PJP_SUM_ROLLUP.GET_TASK_ROLLUP_ACTUALS(p_worker_id);',
6916       l_step_seq,
6917       to_char(1 + 2 + 4 + 8), -- generic
6918       'Y',
6919       'N',
6920       'N',
6921       'N'
6922     );
6923 
6924     l_step_seq := l_step_seq + 10;
6925 
6926     insert into PJI_MT_PRC_STEPS
6927     (
6928       PROCESS_NAME,
6929       STEP_NAME,
6930       STEP_SEQ,
6931       STEP_TYPE,
6932       CONFIG_PROJ_PERF_FLAG,
6933       CONFIG_COST_FLAG,
6934       CONFIG_PROFIT_FLAG,
6935       CONFIG_UTIL_FLAG
6936     )
6937     values
6938     (
6939       'PJI_PJP',
6940       'PJI_FM_SUM_PSI.BALANCES_UPDATE_DELTA(p_worker_id);',
6941       l_step_seq,
6942       to_char(1 + 2 + 4), -- generic - rbs
6943       'Y',
6944       'N',
6945       'N',
6946       'N'
6947     );
6948 
6949     l_step_seq := l_step_seq + 10;
6950 
6951     insert into PJI_MT_PRC_STEPS
6952     (
6953       PROCESS_NAME,
6954       STEP_NAME,
6955       STEP_SEQ,
6956       STEP_TYPE,
6957       CONFIG_PROJ_PERF_FLAG,
6958       CONFIG_COST_FLAG,
6959       CONFIG_PROFIT_FLAG,
6960       CONFIG_UTIL_FLAG
6961     )
6962     values
6963     (
6964       'PJI_PJP',
6965       'PJI_FM_SUM_PSI.BALANCES_INSERT_DELTA(p_worker_id);',
6966       l_step_seq,
6967       to_char(1 + 2 + 4), -- generic - rbs
6968       'Y',
6969       'N',
6970       'N',
6971       'N'
6972     );
6973 
6974     l_step_seq := l_step_seq + 10;
6975 
6976     insert into PJI_MT_PRC_STEPS
6977     (
6978       PROCESS_NAME,
6979       STEP_NAME,
6980       STEP_SEQ,
6981       STEP_TYPE,
6982       CONFIG_PROJ_PERF_FLAG,
6983       CONFIG_COST_FLAG,
6984       CONFIG_PROFIT_FLAG,
6985       CONFIG_UTIL_FLAG
6986     )
6987     values
6988     (
6989       'PJI_PJP',
6990       'PJI_FM_SUM_PSI.PURGE_BALANCES_CMT(p_worker_id);',
6991       l_step_seq,
6992       to_char(1 + 2 + 4), -- generic - rbs
6993       'Y',
6994       'N',
6995       'N',
6996       'N'
6997     );
6998 
6999     l_step_seq := l_step_seq + 10;
7000 
7001     insert into PJI_MT_PRC_STEPS
7002     (
7003       PROCESS_NAME,
7004       STEP_NAME,
7005       STEP_SEQ,
7006       STEP_TYPE,
7007       CONFIG_PROJ_PERF_FLAG,
7008       CONFIG_COST_FLAG,
7009       CONFIG_PROFIT_FLAG,
7010       CONFIG_UTIL_FLAG
7011     )
7012     values
7013     (
7014       'PJI_PJP',
7015       'PJI_FM_SUM_PSI.BALANCES_INSERT_DELTA_CMT(p_worker_id);',
7016       l_step_seq,
7017       to_char(1 + 2 + 4), -- generic - rbs
7018       'Y',
7019       'N',
7020       'N',
7021       'N'
7022     );
7023 
7024     l_step_seq := l_step_seq + 10;
7025 
7026     insert into PJI_MT_PRC_STEPS
7027     (
7028       PROCESS_NAME,
7029       STEP_NAME,
7030       STEP_SEQ,
7031       STEP_TYPE,
7032       CONFIG_PROJ_PERF_FLAG,
7033       CONFIG_COST_FLAG,
7034       CONFIG_PROFIT_FLAG,
7035       CONFIG_UTIL_FLAG
7036     )
7037     values
7038     (
7039       'PJI_PJP',
7040       'PJI_FM_SUM_PSI.PURGE_INCREMENTAL_BALANCES(p_worker_id);',
7041       l_step_seq,
7042       to_char(1 + 2 + 4), -- generic - rbs
7043       'Y',
7044       'N',
7045       'N',
7046       'N'
7047     );
7048 
7049     l_step_seq := l_step_seq + 10;
7050 
7051     insert into PJI_MT_PRC_STEPS
7052     (
7053       PROCESS_NAME,
7054       STEP_NAME,
7055       STEP_SEQ,
7056       STEP_TYPE,
7057       CONFIG_PROJ_PERF_FLAG,
7058       CONFIG_COST_FLAG,
7059       CONFIG_PROFIT_FLAG,
7060       CONFIG_UTIL_FLAG
7061     )
7062     values
7063     (
7064       'PJI_PJP',
7065       'PJI_FM_SUM_PSI.PURGE_BALANCES_ACT(p_worker_id);',
7066       l_step_seq,
7067       to_char(1 + 2 + 4), -- generic - rbs
7068       'Y',
7069       'N',
7070       'N',
7071       'N'
7072     );
7073 
7074     l_step_seq := l_step_seq + 10;
7075 
7076     insert into PJI_MT_PRC_STEPS
7077     (
7078       PROCESS_NAME,
7079       STEP_NAME,
7080       STEP_SEQ,
7081       STEP_TYPE,
7082       CONFIG_PROJ_PERF_FLAG,
7083       CONFIG_COST_FLAG,
7084       CONFIG_PROFIT_FLAG,
7085       CONFIG_UTIL_FLAG
7086     )
7087     values
7088     (
7089       'PJI_PJP',
7090       'PJI_PJP_SUM_ROLLUP.UNLOCK_ALL_HEADERS(p_worker_id);',
7091       l_step_seq,
7092       to_char(1 + 2 + 4 + 8), -- generic
7093       'Y',
7094       'N',
7095       'N',
7096       'N'
7097     );
7098 
7099     l_step_seq := l_step_seq + 10;
7100 
7101     insert into PJI_MT_PRC_STEPS
7102     (
7103       PROCESS_NAME,
7104       STEP_NAME,
7105       STEP_SEQ,
7106       STEP_TYPE,
7107       CONFIG_PROJ_PERF_FLAG,
7108       CONFIG_COST_FLAG,
7109       CONFIG_PROFIT_FLAG,
7110       CONFIG_UTIL_FLAG
7111     )
7112     values
7113     (
7114       'PJI_PJP',
7115       'PJI_PJP_SUM_ROLLUP.CLEANUP(p_worker_id);',
7116       l_step_seq,
7117       to_char(1 + 2 + 4 + 8), -- generic
7118       'Y',
7119       'N',
7120       'N',
7121       'N'
7122     );
7123 
7124     -- ------------------------------------------------------------------------
7125     -- Stage 3 Summarization - Project Performance - FP.M Upgrade
7126     -- ------------------------------------------------------------------------
7127 
7128     l_step_seq := 10;
7129 
7130     insert into PJI_MT_PRC_STEPS
7131     (
7132       PROCESS_NAME,
7133       STEP_NAME,
7134       STEP_SEQ,
7135       STEP_TYPE,
7136       CONFIG_PROJ_PERF_FLAG,
7137       CONFIG_COST_FLAG,
7138       CONFIG_PROFIT_FLAG,
7139       CONFIG_UTIL_FLAG
7140     )
7141     values
7142     (
7143       'PJI_PJP_FPM_UPGRADE',
7144       'PJI_PJP_SUM_ROLLUP.REMAP_RBS_TXN_ACCUM_HDRS(p_worker_id);',
7145       l_step_seq,
7146       to_char(1), -- full
7147       'Y',
7148       'N',
7149       'N',
7150       'N'
7151     );
7152 
7153     l_step_seq := l_step_seq + 10;
7154 
7155     insert into PJI_MT_PRC_STEPS
7156     (
7157       PROCESS_NAME,
7158       STEP_NAME,
7159       STEP_SEQ,
7160       STEP_TYPE,
7161       CONFIG_PROJ_PERF_FLAG,
7162       CONFIG_COST_FLAG,
7163       CONFIG_PROFIT_FLAG,
7164       CONFIG_UTIL_FLAG
7165     )
7166     values
7167     (
7168       'PJI_PJP_FPM_UPGRADE',
7169       'PJI_PJP_SUM_DENORM.POPULATE_RBS_DENORM(p_worker_id);',
7170       l_step_seq,
7171       to_char(1), -- full
7172       'Y',
7173       'N',
7174       'N',
7175       'N'
7176     );
7177 
7178     l_step_seq := l_step_seq + 10;
7179 
7180     insert into PJI_MT_PRC_STEPS
7181     (
7182       PROCESS_NAME,
7183       STEP_NAME,
7184       STEP_SEQ,
7185       STEP_TYPE,
7186       CONFIG_PROJ_PERF_FLAG,
7187       CONFIG_COST_FLAG,
7188       CONFIG_PROFIT_FLAG,
7189       CONFIG_UTIL_FLAG
7190     )
7191     values
7192     (
7193       'PJI_PJP_FPM_UPGRADE',
7194       'PJI_PJP_SUM_ROLLUP.UPDATE_RBS_DENORM(p_worker_id);',
7195       l_step_seq,
7196       to_char(1), -- full
7197       'Y',
7198       'N',
7199       'N',
7200       'N'
7201     );
7202 
7203     l_step_seq := l_step_seq + 10;
7204 
7205     insert into PJI_MT_PRC_STEPS
7206     (
7207       PROCESS_NAME,
7208       STEP_NAME,
7209       STEP_SEQ,
7210       STEP_TYPE,
7211       CONFIG_PROJ_PERF_FLAG,
7212       CONFIG_COST_FLAG,
7213       CONFIG_PROFIT_FLAG,
7214       CONFIG_UTIL_FLAG
7215     )
7216     values
7217     (
7218       'PJI_PJP_FPM_UPGRADE',
7219       'PJI_PJP_SUM_ROLLUP.POPULATE_TIME_DIMENSION(p_worker_id);',
7220       l_step_seq,
7221       to_char(1), -- full
7222       'Y',
7223       'N',
7224       'N',
7225       'N'
7226     );
7227 
7228     l_step_seq := l_step_seq + 10;
7229 
7230     insert into PJI_MT_PRC_STEPS
7231     (
7232       PROCESS_NAME,
7233       STEP_NAME,
7234       STEP_SEQ,
7235       STEP_TYPE,
7236       CONFIG_PROJ_PERF_FLAG,
7237       CONFIG_COST_FLAG,
7238       CONFIG_PROFIT_FLAG,
7239       CONFIG_UTIL_FLAG
7240     )
7241     values
7242     (
7243       'PJI_PJP_FPM_UPGRADE',
7244       'PJI_PJP_SUM_DENORM.POPULATE_XBS_DENORM(p_worker_id);',
7245       l_step_seq,
7246       to_char(1), -- full
7247       'Y',
7248       'N',
7249       'N',
7250       'N'
7251     );
7252 
7253     l_step_seq := l_step_seq + 10;
7254 
7255     insert into PJI_MT_PRC_STEPS
7256     (
7257       PROCESS_NAME,
7258       STEP_NAME,
7259       STEP_SEQ,
7260       STEP_TYPE,
7261       CONFIG_PROJ_PERF_FLAG,
7262       CONFIG_COST_FLAG,
7263       CONFIG_PROFIT_FLAG,
7264       CONFIG_UTIL_FLAG
7265     )
7266     values
7267     (
7268       'PJI_PJP_FPM_UPGRADE',
7269       'PJI_PJP_SUM_ROLLUP.UPDATE_XBS_DENORM_FULL(p_worker_id);',
7270       l_step_seq,
7271       to_char(1), -- full
7272       'Y',
7273       'N',
7274       'N',
7275       'N'
7276     );
7277 
7278     l_step_seq := l_step_seq + 10;
7279 
7280     insert into PJI_MT_PRC_STEPS
7281     (
7282       PROCESS_NAME,
7283       STEP_NAME,
7284       STEP_SEQ,
7285       STEP_TYPE,
7286       CONFIG_PROJ_PERF_FLAG,
7287       CONFIG_COST_FLAG,
7288       CONFIG_PROFIT_FLAG,
7289       CONFIG_UTIL_FLAG
7290     )
7291     values
7292     (
7293       'PJI_PJP_FPM_UPGRADE',
7294       'PJI_PJP_SUM_ROLLUP.EXTRACT_FIN_PLAN_VERS_BULK(p_worker_id);',
7295       l_step_seq,
7296       to_char(1), -- full
7297       'Y',
7298       'N',
7299       'N',
7300       'N'
7301     );
7302 
7303     l_step_seq := l_step_seq + 10;
7304 
7305     insert into PJI_MT_PRC_STEPS
7306     (
7307       PROCESS_NAME,
7308       STEP_NAME,
7309       STEP_SEQ,
7310       STEP_TYPE,
7311       CONFIG_PROJ_PERF_FLAG,
7312       CONFIG_COST_FLAG,
7313       CONFIG_PROFIT_FLAG,
7314       CONFIG_UTIL_FLAG
7315     )
7316     values
7317     (
7318       'PJI_PJP_FPM_UPGRADE',
7319       'PJI_PJP_SUM_ROLLUP.POPULATE_WBS_HDR(p_worker_id);',
7320       l_step_seq,
7321       to_char(1), -- full
7322       'Y',
7323       'N',
7324       'N',
7325       'N'
7326     );
7327 
7328     l_step_seq := l_step_seq + 10;
7329 
7330     insert into PJI_MT_PRC_STEPS
7331     (
7332       PROCESS_NAME,
7333       STEP_NAME,
7334       STEP_SEQ,
7335       STEP_TYPE,
7336       CONFIG_PROJ_PERF_FLAG,
7337       CONFIG_COST_FLAG,
7338       CONFIG_PROFIT_FLAG,
7339       CONFIG_UTIL_FLAG
7340     )
7341     values
7342     (
7343       'PJI_PJP_FPM_UPGRADE',
7344       'PJI_PJP_SUM_ROLLUP.POPULATE_RBS_HDR(p_worker_id);',
7345       l_step_seq,
7346       to_char(1), -- full
7347       'Y',
7348       'N',
7349       'N',
7350       'N'
7351     );
7352 
7353     l_step_seq := l_step_seq + 10;
7354 
7355     insert into PJI_MT_PRC_STEPS
7356     (
7357       PROCESS_NAME,
7358       STEP_NAME,
7359       STEP_SEQ,
7360       STEP_TYPE,
7361       CONFIG_PROJ_PERF_FLAG,
7362       CONFIG_COST_FLAG,
7363       CONFIG_PROFIT_FLAG,
7364       CONFIG_UTIL_FLAG
7365     )
7366     values
7367     (
7368       'PJI_PJP_FPM_UPGRADE',
7369       'PJI_PJP_SUM_ROLLUP.RETRIEVE_OVERRIDDEN_WP_ETC(p_worker_id);',
7370       l_step_seq,
7371       to_char(1), -- full
7372       'Y',
7373       'N',
7374       'N',
7375       'N'
7376     );
7377 
7378     l_step_seq := l_step_seq + 10;
7379 
7380     insert into PJI_MT_PRC_STEPS
7381     (
7382       PROCESS_NAME,
7383       STEP_NAME,
7384       STEP_SEQ,
7385       STEP_TYPE,
7386       CONFIG_PROJ_PERF_FLAG,
7387       CONFIG_COST_FLAG,
7388       CONFIG_PROFIT_FLAG,
7389       CONFIG_UTIL_FLAG
7390     )
7391     values
7392     (
7393       'PJI_PJP_FPM_UPGRADE',
7394       'PJI_PJP_SUM_ROLLUP.EXTRACT_PLAN_ETC_PRIRBS(p_worker_id);',
7395       l_step_seq,
7396       to_char(1), -- full
7397       'Y',
7398       'N',
7399       'N',
7400       'N'
7401     );
7402 
7403     l_step_seq := l_step_seq + 10;
7404 
7405     insert into PJI_MT_PRC_STEPS
7406     (
7407       PROCESS_NAME,
7408       STEP_NAME,
7409       STEP_SEQ,
7410       STEP_TYPE,
7411       CONFIG_PROJ_PERF_FLAG,
7412       CONFIG_COST_FLAG,
7413       CONFIG_PROFIT_FLAG,
7414       CONFIG_UTIL_FLAG
7415     )
7416     values
7417     (
7418       'PJI_PJP_FPM_UPGRADE',
7419       'PJI_PJP_SUM_ROLLUP.EXTRACT_PLAN_AMOUNTS_PRIRBS(p_worker_id);',
7420       l_step_seq,
7421       to_char(1), -- full
7422       'Y',
7423       'N',
7424       'N',
7425       'N'
7426     );
7427 
7428     l_step_seq := l_step_seq + 10;
7429 
7430     insert into PJI_MT_PRC_STEPS
7431     (
7432       PROCESS_NAME,
7433       STEP_NAME,
7434       STEP_SEQ,
7435       STEP_TYPE,
7436       CONFIG_PROJ_PERF_FLAG,
7437       CONFIG_COST_FLAG,
7438       CONFIG_PROFIT_FLAG,
7439       CONFIG_UTIL_FLAG
7440     )
7441     values
7442     (
7443       'PJI_PJP_FPM_UPGRADE',
7444       'PJI_PJP_SUM_ROLLUP.UPDATE_WBS_HDR(p_worker_id);',
7445       l_step_seq,
7446       to_char(1), -- full
7447       'Y',
7448       'N',
7449       'N',
7450       'N'
7451     );
7452 
7453     l_step_seq := l_step_seq + 10;
7454 
7455     insert into PJI_MT_PRC_STEPS
7456     (
7457       PROCESS_NAME,
7458       STEP_NAME,
7459       STEP_SEQ,
7460       STEP_TYPE,
7461       CONFIG_PROJ_PERF_FLAG,
7462       CONFIG_COST_FLAG,
7463       CONFIG_PROFIT_FLAG,
7464       CONFIG_UTIL_FLAG
7465     )
7466     values
7467     (
7468       'PJI_PJP_FPM_UPGRADE',
7469       'PJI_PJP_SUM_ROLLUP.ROLLUP_FPR_RBS_T_SLICE(p_worker_id);',
7470       l_step_seq,
7471       to_char(1), -- full
7472       'Y',
7473       'N',
7474       'N',
7475       'N'
7476     );
7477 
7478     l_step_seq := l_step_seq + 10;
7479 
7480     insert into PJI_MT_PRC_STEPS
7481     (
7482       PROCESS_NAME,
7483       STEP_NAME,
7484       STEP_SEQ,
7485       STEP_TYPE,
7486       CONFIG_PROJ_PERF_FLAG,
7487       CONFIG_COST_FLAG,
7488       CONFIG_PROFIT_FLAG,
7489       CONFIG_UTIL_FLAG
7490     )
7491     values
7492     (
7493       'PJI_PJP_FPM_UPGRADE',
7494       'PJI_PJP_SUM_ROLLUP.ROLLUP_FPR_WBS(p_worker_id);',
7495       l_step_seq,
7496       to_char(1), -- full
7497       'Y',
7498       'N',
7499       'N',
7500       'N'
7501     );
7502 
7503     l_step_seq := l_step_seq + 10;
7504 
7505     insert into PJI_MT_PRC_STEPS
7506     (
7507       PROCESS_NAME,
7508       STEP_NAME,
7509       STEP_SEQ,
7510       STEP_TYPE,
7511       CONFIG_PROJ_PERF_FLAG,
7512       CONFIG_COST_FLAG,
7513       CONFIG_PROFIT_FLAG,
7514       CONFIG_UTIL_FLAG
7515     )
7516     values
7517     (
7518       'PJI_PJP_FPM_UPGRADE',
7519       'PJI_PJP_SUM_ROLLUP.CREATE_FP_PA_PRI_ROLLUP(p_worker_id);',
7520       l_step_seq,
7521       to_char(1), -- full
7522       'Y',
7523       'N',
7524       'N',
7525       'N'
7526     );
7527 
7528     l_step_seq := l_step_seq + 10;
7529 
7530     insert into PJI_MT_PRC_STEPS
7531     (
7532       PROCESS_NAME,
7533       STEP_NAME,
7534       STEP_SEQ,
7535       STEP_TYPE,
7536       CONFIG_PROJ_PERF_FLAG,
7537       CONFIG_COST_FLAG,
7538       CONFIG_PROFIT_FLAG,
7539       CONFIG_UTIL_FLAG
7540     )
7541     values
7542     (
7543       'PJI_PJP_FPM_UPGRADE',
7544       'PJI_PJP_SUM_ROLLUP.CREATE_FP_GL_PRI_ROLLUP(p_worker_id);',
7545       l_step_seq,
7546       to_char(1), -- full
7547       'Y',
7548       'N',
7549       'N',
7550       'N'
7551     );
7552 
7553     l_step_seq := l_step_seq + 10;
7554 
7555     insert into PJI_MT_PRC_STEPS
7556     (
7557       PROCESS_NAME,
7558       STEP_NAME,
7559       STEP_SEQ,
7560       STEP_TYPE,
7561       CONFIG_PROJ_PERF_FLAG,
7562       CONFIG_COST_FLAG,
7563       CONFIG_PROFIT_FLAG,
7564       CONFIG_UTIL_FLAG
7565     )
7566     values
7567     (
7568       'PJI_PJP_FPM_UPGRADE',
7569       'PJI_PJP_SUM_ROLLUP.CREATE_FP_ALL_PRI_ROLLUP(p_worker_id);',
7570       l_step_seq,
7571       to_char(1), -- full
7572       'Y',
7573       'N',
7574       'N',
7575       'N'
7576     );
7577 
7578     l_step_seq := l_step_seq + 10;
7579 
7580     insert into PJI_MT_PRC_STEPS
7581     (
7582       PROCESS_NAME,
7583       STEP_NAME,
7584       STEP_SEQ,
7585       STEP_TYPE,
7586       CONFIG_PROJ_PERF_FLAG,
7587       CONFIG_COST_FLAG,
7588       CONFIG_PROFIT_FLAG,
7589       CONFIG_UTIL_FLAG
7590     )
7591     values
7592     (
7593       'PJI_PJP_FPM_UPGRADE',
7594       'PJI_PJP_SUM_ROLLUP.INSERT_INTO_FP_FACT(p_worker_id);',
7595       l_step_seq,
7596       to_char(1), -- full
7597       'Y',
7598       'N',
7599       'N',
7600       'N'
7601     );
7602 
7603     l_step_seq := l_step_seq + 10;
7604 
7605     insert into PJI_MT_PRC_STEPS
7606     (
7607       PROCESS_NAME,
7608       STEP_NAME,
7609       STEP_SEQ,
7610       STEP_TYPE,
7611       CONFIG_PROJ_PERF_FLAG,
7612       CONFIG_COST_FLAG,
7613       CONFIG_PROFIT_FLAG,
7614       CONFIG_UTIL_FLAG
7615     )
7616     values
7617     (
7618       'PJI_PJP_FPM_UPGRADE',
7619       'PJI_PJP_SUM_ROLLUP.MARK_EXTRACTED_PLANS(p_worker_id);',
7620       l_step_seq,
7621       to_char(1), -- full
7622       'Y',
7623       'N',
7624       'N',
7625       'N'
7626     );
7627 
7628   end REFRESH_STEP_TABLE;
7629 
7630 /* Procedure EXECUTE_ROLLUP_FPR_WBS added for Bug 7551819 */
7631   -- ----------------------------------------------------------
7632   -- procedure EXECUTE_ROLLUP_FPR_WBS
7633   --
7634   -- This is the same query as in ROLLUP_FPR_WBS
7635   -- To implement the worker logic, we are implementing this procedure.
7636   -- Because partition can't be a bind variable like table names.
7637   -- To implement dynamic query it is not feasible as it allows a max 32 kb, but this query is 64 kb.
7638   -- Any fix done in one if condition to be done in all 10 if conditions.
7639   -- ----------------------------------------------------------
7640   procedure EXECUTE_ROLLUP_FPR_WBS (p_worker_id in number default null,
7641                                     p_level in number default null,
7642                                     p_partial_mode in varchar2,
7643                                     p_fpm_upgrade in varchar2) is
7644 
7645   l_level           number;
7646   l_partial_mode    varchar2(30);
7647   l_fpm_upgrade     varchar2(30);
7648   l_extraction_type varchar2(30); /* Added for Bug 10338478 */
7649   L_PROCESS         VARCHAR2(10); /* Added for Bug 10338478 */
7650   l_worker_id       number;  /* Added for bug 13030627 */
7651   begin
7652     l_level := p_level;
7653     l_partial_mode := p_partial_mode;
7654     l_fpm_upgrade  := p_fpm_upgrade;
7655 
7656   /* Added for bug 13030627 */
7657   if PJI_UTILS.GET_PARAMETER('PJP_SIN_PRG') = 'Y' then
7658 
7659      l_worker_id := p_worker_id;
7660      PJI_PJP_PRG_PERF_ALL.EXECUTE_ROLLUP_FPR_WBS(
7661      p_worker_id  => l_worker_id,
7662      p_level => l_level,
7663      p_partial_mode => l_partial_mode,
7664      p_fpm_upgrade => l_fpm_upgrade);
7665 
7666   else
7667   /* Added for bug 13030627 */
7668 
7669     /* Start bug 10338478 */
7670     L_PROCESS := PJI_PJP_SUM_MAIN.G_PROCESS || P_WORKER_ID;
7671     l_extraction_type := PJI_PROCESS_UTIL.GET_PROCESS_PARAMETER(L_PROCESS,'EXTRACTION_TYPE');
7672     /* End bug 10338478 */
7673 
7674   /* Added for bug 11843459 */
7675   if PJI_PJP_GEN_PERF_ALL.GET_PARAMETER('PJI_PJP_PERF_PRL') = 'Y'  then
7676    PJI_PJP_GEN_PERF_ALL.EXECUTE_ROLLUP_FPR_WBS(p_worker_id,
7677                                                l_level,
7678                                                l_partial_mode,
7679                                                l_fpm_upgrade);
7680    else
7681     if (p_worker_id =1) then
7682       -- Query for Partition 1
7683 
7684     /* Start bug 10338478 */
7685        If nvl(l_extraction_type,'N') = 'RBS' or
7686           -- Start Bug 10632599 (Base Bug 9488206 -- This code to run in case of
7687           -- PRC: DELETE PROJECT PERFORMANCE REPORTING DATA also)
7688           (nvl(l_extraction_type,'N') = 'FULL' and PJI_UTILS.GET_PARAMETER('PJI_FPM_UPGRADE') <> 'C') then
7689           -- End bug 10632599
7690          EXECUTE_ROLLUP_FPR_RBS(p_worker_id    => p_worker_id,
7691                         p_level        => l_level,
7692                         p_partial_mode => l_partial_mode,
7693                         p_fpm_upgrade  => l_fpm_upgrade);
7694        Else
7695     /* End bug 10338478 */
7696 
7697         insert /*+ parallel(PJI_FP_AGGR_PJP1) */
7698                    into PJI_FP_AGGR_PJP1 partition(P1)
7699  	  (
7700           WORKER_ID,
7701           RECORD_TYPE,
7702           PRG_LEVEL,
7703           LINE_TYPE,
7704           PROJECT_ID,
7705           PROJECT_ORG_ID,
7706           PROJECT_ORGANIZATION_ID,
7707           PROJECT_ELEMENT_ID,
7708           TIME_ID,
7709           PERIOD_TYPE_ID,
7710           CALENDAR_TYPE,
7711           RBS_AGGR_LEVEL,
7712           WBS_ROLLUP_FLAG,
7713           PRG_ROLLUP_FLAG,
7714           CURR_RECORD_TYPE_ID,
7715           CURRENCY_CODE,
7716           RBS_ELEMENT_ID,
7717           RBS_VERSION_ID,
7718           PLAN_VERSION_ID,
7719           PLAN_TYPE_ID,
7720           PLAN_TYPE_CODE,
7721           RAW_COST,
7722           BRDN_COST,
7723           REVENUE,
7724           BILL_RAW_COST,
7725           BILL_BRDN_COST,
7726           BILL_LABOR_RAW_COST,
7727           BILL_LABOR_BRDN_COST,
7728           BILL_LABOR_HRS,
7729           EQUIPMENT_RAW_COST,
7730           EQUIPMENT_BRDN_COST,
7731           CAPITALIZABLE_RAW_COST,
7732           CAPITALIZABLE_BRDN_COST,
7733           LABOR_RAW_COST,
7734           LABOR_BRDN_COST,
7735           LABOR_HRS,
7736           LABOR_REVENUE,
7737           EQUIPMENT_HOURS,
7738           BILLABLE_EQUIPMENT_HOURS,
7739           SUP_INV_COMMITTED_COST,
7740           PO_COMMITTED_COST,
7741           PR_COMMITTED_COST,
7742           OTH_COMMITTED_COST,
7743           ACT_LABOR_HRS,
7744           ACT_EQUIP_HRS,
7745           ACT_LABOR_BRDN_COST,
7746           ACT_EQUIP_BRDN_COST,
7747           ACT_BRDN_COST,
7748           ACT_RAW_COST,
7749           ACT_REVENUE,
7750           ACT_LABOR_RAW_COST,
7751           ACT_EQUIP_RAW_COST,
7752           ETC_LABOR_HRS,
7753           ETC_EQUIP_HRS,
7754           ETC_LABOR_BRDN_COST,
7755           ETC_EQUIP_BRDN_COST,
7756           ETC_BRDN_COST,
7757           ETC_RAW_COST,
7758           ETC_LABOR_RAW_COST,
7759           ETC_EQUIP_RAW_COST,
7760           CUSTOM1,
7761           CUSTOM2,
7762           CUSTOM3,
7763           CUSTOM4,
7764           CUSTOM5,
7765           CUSTOM6,
7766           CUSTOM7,
7767           CUSTOM8,
7768           CUSTOM9,
7769           CUSTOM10,
7770           CUSTOM11,
7771           CUSTOM12,
7772           CUSTOM13,
7773           CUSTOM14,
7774           CUSTOM15
7775         )
7776         select
7777           pjp1_i.WORKER_ID,
7778           pjp1_i.RECORD_TYPE,
7779           pjp1_i.PRG_LEVEL,
7780           pjp1_i.LINE_TYPE,
7781           pjp1_i.PROJECT_ID,
7782           pjp1_i.PROJECT_ORG_ID,
7783           pjp1_i.PROJECT_ORGANIZATION_ID,
7784           pjp1_i.PROJECT_ELEMENT_ID,
7785           pjp1_i.TIME_ID,
7786           pjp1_i.PERIOD_TYPE_ID,
7787           pjp1_i.CALENDAR_TYPE,
7788           pjp1_i.RBS_AGGR_LEVEL,
7789           pjp1_i.WBS_ROLLUP_FLAG,
7790           pjp1_i.PRG_ROLLUP_FLAG,
7791           pjp1_i.CURR_RECORD_TYPE_ID,
7792           pjp1_i.CURRENCY_CODE,
7793           pjp1_i.RBS_ELEMENT_ID,
7794           pjp1_i.RBS_VERSION_ID,
7795           pjp1_i.PLAN_VERSION_ID,
7796           pjp1_i.PLAN_TYPE_ID,
7797           pjp1_i.PLAN_TYPE_CODE,
7798           decode(pjp1_i.RELATIONSHIP_TYPE
7799                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
7800                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
7801                    || '_' || pjp1_i.SUB_STATUS_CODE
7802                    || '_' || pjp1_i.SUP_STATUS_CODE,
7803                  'LW_N_Y__', to_number(null),
7804                  decode(pjp1_i.RELATIONSHIP_TYPE
7805                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
7806                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
7807                           || '_' || pjp1_i.SUP_VER_ENABLED
7808                           || '_' || l_fpm_upgrade
7809                           || '_' || l_partial_mode,
7810                         'LW_N_Y_Y_C_', to_number(null),
7811                  pjp1_i.RAW_COST))                    RAW_COST,
7812           decode(pjp1_i.RELATIONSHIP_TYPE
7813                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
7814                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
7815                    || '_' || pjp1_i.SUB_STATUS_CODE
7816                    || '_' || pjp1_i.SUP_STATUS_CODE,
7817                  'LW_N_Y__', to_number(null),
7818                  decode(pjp1_i.RELATIONSHIP_TYPE
7819                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
7820                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
7821                           || '_' || pjp1_i.SUP_VER_ENABLED
7822                           || '_' || l_fpm_upgrade
7823                           || '_' || l_partial_mode,
7824                         'LW_N_Y_Y_C_', to_number(null),
7825                  pjp1_i.BRDN_COST))                   BRDN_COST,
7826           decode(pjp1_i.RELATIONSHIP_TYPE
7827                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
7828                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
7829                    || '_' || pjp1_i.SUB_STATUS_CODE
7830                    || '_' || pjp1_i.SUP_STATUS_CODE,
7831                  'LW_N_Y__', to_number(null),
7832                  decode(pjp1_i.RELATIONSHIP_TYPE
7833                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
7834                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
7835                           || '_' || pjp1_i.SUP_VER_ENABLED
7836                           || '_' || l_fpm_upgrade
7837                           || '_' || l_partial_mode,
7838                         'LW_N_Y_Y_C_', to_number(null),
7839                  pjp1_i.REVENUE))                     REVENUE,
7840           decode(pjp1_i.RELATIONSHIP_TYPE
7841                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
7842                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
7843                    || '_' || pjp1_i.SUB_STATUS_CODE
7844                    || '_' || pjp1_i.SUP_STATUS_CODE,
7845                  'LW_N_Y__', to_number(null),
7846                  decode(pjp1_i.RELATIONSHIP_TYPE
7847                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
7848                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
7849                           || '_' || pjp1_i.SUP_VER_ENABLED
7850                           || '_' || l_fpm_upgrade
7851                           || '_' || l_partial_mode,
7852                         'LW_N_Y_Y_C_', to_number(null),
7853                  pjp1_i.BILL_RAW_COST))               BILL_RAW_COST,
7854           decode(pjp1_i.RELATIONSHIP_TYPE
7855                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
7856                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
7857                    || '_' || pjp1_i.SUB_STATUS_CODE
7858                    || '_' || pjp1_i.SUP_STATUS_CODE,
7859                  'LW_N_Y__', to_number(null),
7860                  decode(pjp1_i.RELATIONSHIP_TYPE
7861                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
7862                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
7863                           || '_' || pjp1_i.SUP_VER_ENABLED
7864                           || '_' || l_fpm_upgrade
7865                           || '_' || l_partial_mode,
7866                         'LW_N_Y_Y_C_', to_number(null),
7867                  pjp1_i.BILL_BRDN_COST))              BILL_BRDN_COST,
7868           decode(pjp1_i.RELATIONSHIP_TYPE
7869                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
7870                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
7871                    || '_' || pjp1_i.SUB_STATUS_CODE
7872                    || '_' || pjp1_i.SUP_STATUS_CODE,
7873                  'LW_N_Y__', to_number(null),
7874                  decode(pjp1_i.RELATIONSHIP_TYPE
7875                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
7876                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
7877                           || '_' || pjp1_i.SUP_VER_ENABLED
7878                           || '_' || l_fpm_upgrade
7879                           || '_' || l_partial_mode,
7880                         'LW_N_Y_Y_C_', to_number(null),
7881                  pjp1_i.BILL_LABOR_RAW_COST))         BILL_LABOR_RAW_COST,
7882           decode(pjp1_i.RELATIONSHIP_TYPE
7883                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
7884                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
7885                    || '_' || pjp1_i.SUB_STATUS_CODE
7886                    || '_' || pjp1_i.SUP_STATUS_CODE,
7887                  'LW_N_Y__', to_number(null),
7888                  decode(pjp1_i.RELATIONSHIP_TYPE
7889                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
7890                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
7891                           || '_' || pjp1_i.SUP_VER_ENABLED
7892                           || '_' || l_fpm_upgrade
7893                           || '_' || l_partial_mode,
7894                         'LW_N_Y_Y_C_', to_number(null),
7895                  pjp1_i.BILL_LABOR_BRDN_COST))        BILL_LABOR_BRDN_COST,
7896           decode(pjp1_i.RELATIONSHIP_TYPE
7897                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
7898                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
7899                    || '_' || pjp1_i.SUB_STATUS_CODE
7900                    || '_' || pjp1_i.SUP_STATUS_CODE,
7901                  'LW_N_Y__', to_number(null),
7902                  decode(pjp1_i.RELATIONSHIP_TYPE
7903                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
7904                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
7905                           || '_' || pjp1_i.SUP_VER_ENABLED
7906                           || '_' || l_fpm_upgrade
7907                           || '_' || l_partial_mode,
7908                         'LW_N_Y_Y_C_', to_number(null),
7909                  pjp1_i.BILL_LABOR_HRS))              BILL_LABOR_HRS,
7910           decode(pjp1_i.RELATIONSHIP_TYPE
7911                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
7912                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
7913                    || '_' || pjp1_i.SUB_STATUS_CODE
7914                    || '_' || pjp1_i.SUP_STATUS_CODE,
7915                  'LW_N_Y__', to_number(null),
7916                  decode(pjp1_i.RELATIONSHIP_TYPE
7917                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
7918                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
7919                           || '_' || pjp1_i.SUP_VER_ENABLED
7920                           || '_' || l_fpm_upgrade
7921                           || '_' || l_partial_mode,
7922                         'LW_N_Y_Y_C_', to_number(null),
7923                  pjp1_i.EQUIPMENT_RAW_COST))          EQUIPMENT_RAW_COST,
7924           decode(pjp1_i.RELATIONSHIP_TYPE
7925                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
7926                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
7927                    || '_' || pjp1_i.SUB_STATUS_CODE
7928                    || '_' || pjp1_i.SUP_STATUS_CODE,
7929                  'LW_N_Y__', to_number(null),
7930                  decode(pjp1_i.RELATIONSHIP_TYPE
7931                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
7932                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
7933                           || '_' || pjp1_i.SUP_VER_ENABLED
7934                           || '_' || l_fpm_upgrade
7935                           || '_' || l_partial_mode,
7936                         'LW_N_Y_Y_C_', to_number(null),
7937                  pjp1_i.EQUIPMENT_BRDN_COST))         EQUIPMENT_BRDN_COST,
7938           decode(pjp1_i.RELATIONSHIP_TYPE
7939                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
7940                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
7941                    || '_' || pjp1_i.SUB_STATUS_CODE
7942                    || '_' || pjp1_i.SUP_STATUS_CODE,
7943                  'LW_N_Y__', to_number(null),
7944                  decode(pjp1_i.RELATIONSHIP_TYPE
7945                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
7946                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
7947                           || '_' || pjp1_i.SUP_VER_ENABLED
7948                           || '_' || l_fpm_upgrade
7949                           || '_' || l_partial_mode,
7950                         'LW_N_Y_Y_C_', to_number(null),
7951                  pjp1_i.CAPITALIZABLE_RAW_COST))      CAPITALIZABLE_RAW_COST,
7952           decode(pjp1_i.RELATIONSHIP_TYPE
7953                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
7954                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
7955                    || '_' || pjp1_i.SUB_STATUS_CODE
7956                    || '_' || pjp1_i.SUP_STATUS_CODE,
7957                  'LW_N_Y__', to_number(null),
7958                  decode(pjp1_i.RELATIONSHIP_TYPE
7959                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
7960                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
7961                           || '_' || pjp1_i.SUP_VER_ENABLED
7962                           || '_' || l_fpm_upgrade
7963                           || '_' || l_partial_mode,
7964                         'LW_N_Y_Y_C_', to_number(null),
7965                  pjp1_i.CAPITALIZABLE_BRDN_COST))     CAPITALIZABLE_BRDN_COST,
7966           decode(pjp1_i.RELATIONSHIP_TYPE
7967                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
7968                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
7969                    || '_' || pjp1_i.SUB_STATUS_CODE
7970                    || '_' || pjp1_i.SUP_STATUS_CODE,
7971                  'LW_N_Y__', to_number(null),
7972                  decode(pjp1_i.RELATIONSHIP_TYPE
7973                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
7974                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
7975                           || '_' || pjp1_i.SUP_VER_ENABLED
7976                           || '_' || l_fpm_upgrade
7977                           || '_' || l_partial_mode,
7978                         'LW_N_Y_Y_C_', to_number(null),
7979                  pjp1_i.LABOR_RAW_COST))              LABOR_RAW_COST,
7980           decode(pjp1_i.RELATIONSHIP_TYPE
7981                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
7982                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
7983                    || '_' || pjp1_i.SUB_STATUS_CODE
7984                    || '_' || pjp1_i.SUP_STATUS_CODE,
7985                  'LW_N_Y__', to_number(null),
7986                  decode(pjp1_i.RELATIONSHIP_TYPE
7987                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
7988                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
7989                           || '_' || pjp1_i.SUP_VER_ENABLED
7990                           || '_' || l_fpm_upgrade
7991                           || '_' || l_partial_mode,
7992                         'LW_N_Y_Y_C_', to_number(null),
7993                  pjp1_i.LABOR_BRDN_COST))             LABOR_BRDN_COST,
7994           decode(pjp1_i.RELATIONSHIP_TYPE
7995                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
7996                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
7997                    || '_' || pjp1_i.SUB_STATUS_CODE
7998                    || '_' || pjp1_i.SUP_STATUS_CODE,
7999                  'LW_N_Y__', to_number(null),
8000                  decode(pjp1_i.RELATIONSHIP_TYPE
8001                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
8002                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
8003                           || '_' || pjp1_i.SUP_VER_ENABLED
8004                           || '_' || l_fpm_upgrade
8005                           || '_' || l_partial_mode,
8006                         'LW_N_Y_Y_C_', to_number(null),
8007                  pjp1_i.LABOR_HRS))                   LABOR_HRS,
8008           decode(pjp1_i.RELATIONSHIP_TYPE
8009                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
8010                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
8011                    || '_' || pjp1_i.SUB_STATUS_CODE
8012                    || '_' || pjp1_i.SUP_STATUS_CODE,
8013                  'LW_N_Y__', to_number(null),
8014                  decode(pjp1_i.RELATIONSHIP_TYPE
8015                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
8016                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
8017                           || '_' || pjp1_i.SUP_VER_ENABLED
8018                           || '_' || l_fpm_upgrade
8019                           || '_' || l_partial_mode,
8020                         'LW_N_Y_Y_C_', to_number(null),
8021                  pjp1_i.LABOR_REVENUE))               LABOR_REVENUE,
8022           decode(pjp1_i.RELATIONSHIP_TYPE
8023                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
8024                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
8025                    || '_' || pjp1_i.SUB_STATUS_CODE
8026                    || '_' || pjp1_i.SUP_STATUS_CODE,
8027                  'LW_N_Y__', to_number(null),
8028                  decode(pjp1_i.RELATIONSHIP_TYPE
8029                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
8030                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
8031                           || '_' || pjp1_i.SUP_VER_ENABLED
8032                           || '_' || l_fpm_upgrade
8033                           || '_' || l_partial_mode,
8034                         'LW_N_Y_Y_C_', to_number(null),
8035                  pjp1_i.EQUIPMENT_HOURS))             EQUIPMENT_HOURS,
8036           decode(pjp1_i.RELATIONSHIP_TYPE
8037                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
8038                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
8039                    || '_' || pjp1_i.SUB_STATUS_CODE
8040                    || '_' || pjp1_i.SUP_STATUS_CODE,
8041                  'LW_N_Y__', to_number(null),
8042                  decode(pjp1_i.RELATIONSHIP_TYPE
8043                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
8044                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
8045                           || '_' || pjp1_i.SUP_VER_ENABLED
8046                           || '_' || l_fpm_upgrade
8047                           || '_' || l_partial_mode,
8048                         'LW_N_Y_Y_C_', to_number(null),
8049                  pjp1_i.BILLABLE_EQUIPMENT_HOURS))    BILLABLE_EQUIPMENT_HOURS,
8050           decode(pjp1_i.RELATIONSHIP_TYPE
8051                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
8052                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
8053                    || '_' || pjp1_i.SUB_STATUS_CODE
8054                    || '_' || pjp1_i.SUP_STATUS_CODE,
8055                  'LW_N_Y__', to_number(null),
8056                  decode(pjp1_i.RELATIONSHIP_TYPE
8057                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
8058                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
8059                           || '_' || pjp1_i.SUP_VER_ENABLED
8060                           || '_' || l_fpm_upgrade
8061                           || '_' || l_partial_mode,
8062                         'LW_N_Y_Y_C_', to_number(null),
8063                  pjp1_i.SUP_INV_COMMITTED_COST))      SUP_INV_COMMITTED_COST,
8064           decode(pjp1_i.RELATIONSHIP_TYPE
8065                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
8066                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
8067                    || '_' || pjp1_i.SUB_STATUS_CODE
8068                    || '_' || pjp1_i.SUP_STATUS_CODE,
8069                  'LW_N_Y__', to_number(null),
8070                  decode(pjp1_i.RELATIONSHIP_TYPE
8071                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
8072                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
8073                           || '_' || pjp1_i.SUP_VER_ENABLED
8074                           || '_' || l_fpm_upgrade
8075                           || '_' || l_partial_mode,
8076                         'LW_N_Y_Y_C_', to_number(null),
8077                  pjp1_i.PO_COMMITTED_COST))           PO_COMMITTED_COST,
8078           decode(pjp1_i.RELATIONSHIP_TYPE
8079                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
8080                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
8081                    || '_' || pjp1_i.SUB_STATUS_CODE
8082                    || '_' || pjp1_i.SUP_STATUS_CODE,
8083                  'LW_N_Y__', to_number(null),
8084                  decode(pjp1_i.RELATIONSHIP_TYPE
8085                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
8086                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
8087                           || '_' || pjp1_i.SUP_VER_ENABLED
8088                           || '_' || l_fpm_upgrade
8089                           || '_' || l_partial_mode,
8090                         'LW_N_Y_Y_C_', to_number(null),
8091                  pjp1_i.PR_COMMITTED_COST))           PR_COMMITTED_COST,
8092           decode(pjp1_i.RELATIONSHIP_TYPE
8093                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
8094                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
8095                    || '_' || pjp1_i.SUB_STATUS_CODE
8096                    || '_' || pjp1_i.SUP_STATUS_CODE,
8097                  'LW_N_Y__', to_number(null),
8098                  decode(pjp1_i.RELATIONSHIP_TYPE
8099                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
8100                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
8101                           || '_' || pjp1_i.SUP_VER_ENABLED
8102                           || '_' || l_fpm_upgrade
8103                           || '_' || l_partial_mode,
8104                         'LW_N_Y_Y_C_', to_number(null),
8105                  pjp1_i.OTH_COMMITTED_COST))          OTH_COMMITTED_COST,
8106           decode(pjp1_i.RELATIONSHIP_TYPE
8107                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
8108                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
8109                    || '_' || pjp1_i.SUP_STATUS_CODE
8110                    || '_' || l_partial_mode,
8111                  'LW_N_Y__', to_number(null),
8112                           pjp1_i.ACT_LABOR_HRS)       ACT_LABOR_HRS,
8113           decode(pjp1_i.RELATIONSHIP_TYPE
8114                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
8115                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
8116                    || '_' || pjp1_i.SUP_STATUS_CODE
8117                    || '_' || l_partial_mode,
8118                  'LW_N_Y__', to_number(null),
8119                           pjp1_i.ACT_EQUIP_HRS)       ACT_EQUIP_HRS,
8120           decode(pjp1_i.RELATIONSHIP_TYPE
8121                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
8122                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
8123                    || '_' || pjp1_i.SUP_STATUS_CODE
8124                    || '_' || l_partial_mode,
8125                  'LW_N_Y__', to_number(null),
8126                           pjp1_i.ACT_LABOR_BRDN_COST) ACT_LABOR_BRDN_COST,
8127           decode(pjp1_i.RELATIONSHIP_TYPE
8128                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
8129                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
8130                    || '_' || pjp1_i.SUP_STATUS_CODE
8131                    || '_' || l_partial_mode,
8132                  'LW_N_Y__', to_number(null),
8133                           pjp1_i.ACT_EQUIP_BRDN_COST) ACT_EQUIP_BRDN_COST,
8134           decode(pjp1_i.RELATIONSHIP_TYPE
8135                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
8136                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
8137                    || '_' || pjp1_i.SUP_STATUS_CODE
8138                    || '_' || l_partial_mode,
8139                  'LW_N_Y__', to_number(null),
8140                           pjp1_i.ACT_BRDN_COST)       ACT_BRDN_COST,
8141           decode(pjp1_i.RELATIONSHIP_TYPE
8142                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
8143                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
8144                    || '_' || pjp1_i.SUP_STATUS_CODE
8145                    || '_' || l_partial_mode,
8146                  'LW_N_Y__', to_number(null),
8147                           pjp1_i.ACT_RAW_COST)        ACT_RAW_COST,
8148           decode(pjp1_i.RELATIONSHIP_TYPE
8149                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
8150                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
8151                    || '_' || pjp1_i.SUP_STATUS_CODE
8152                    || '_' || l_partial_mode,
8153                  'LW_N_Y__', to_number(null),
8154                           pjp1_i.ACT_REVENUE)         ACT_REVENUE,
8155           decode(pjp1_i.RELATIONSHIP_TYPE
8156                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
8157                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
8158                    || '_' || pjp1_i.SUP_STATUS_CODE
8159                    || '_' || l_partial_mode,
8160                  'LW_N_Y__', to_number(null),
8161                           pjp1_i.ACT_LABOR_RAW_COST)  ACT_LABOR_RAW_COST,
8162           decode(pjp1_i.RELATIONSHIP_TYPE
8163                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
8164                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
8165                    || '_' || pjp1_i.SUP_STATUS_CODE
8166                    || '_' || l_partial_mode,
8167                  'LW_N_Y__', to_number(null),
8168                           pjp1_i.ACT_EQUIP_RAW_COST)  ACT_EQUIP_RAW_COST,
8169           decode(pjp1_i.RELATIONSHIP_TYPE
8170                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
8171                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
8172                    || '_' || pjp1_i.SUP_STATUS_CODE
8173                    || '_' || l_partial_mode,
8174                  'LW_N_Y__', to_number(null),
8175                           pjp1_i.ETC_LABOR_HRS)       ETC_LABOR_HRS,
8176           decode(pjp1_i.RELATIONSHIP_TYPE
8177                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
8178                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
8179                    || '_' || pjp1_i.SUP_STATUS_CODE
8180                    || '_' || l_partial_mode,
8181                  'LW_N_Y__', to_number(null),
8182                           pjp1_i.ETC_EQUIP_HRS)       ETC_EQUIP_HRS,
8183           decode(pjp1_i.RELATIONSHIP_TYPE
8184                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
8185                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
8186                    || '_' || pjp1_i.SUP_STATUS_CODE
8187                    || '_' || l_partial_mode,
8188                  'LW_N_Y__', to_number(null),
8189                           pjp1_i.ETC_LABOR_BRDN_COST) ETC_LABOR_BRDN_COST,
8190           decode(pjp1_i.RELATIONSHIP_TYPE
8191                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
8192                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
8193                    || '_' || pjp1_i.SUP_STATUS_CODE
8194                    || '_' || l_partial_mode,
8195                  'LW_N_Y__', to_number(null),
8196                           pjp1_i.ETC_EQUIP_BRDN_COST) ETC_EQUIP_BRDN_COST,
8197           decode(pjp1_i.RELATIONSHIP_TYPE
8198                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
8199                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
8200                    || '_' || pjp1_i.SUP_STATUS_CODE
8201                    || '_' || l_partial_mode,
8202                  'LW_N_Y__', to_number(null),
8203                           pjp1_i.ETC_BRDN_COST)       ETC_BRDN_COST,
8204           decode(pjp1_i.RELATIONSHIP_TYPE
8205                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
8206                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
8207                    || '_' || pjp1_i.SUP_STATUS_CODE
8208                    || '_' || l_partial_mode,
8209                  'LW_N_Y__', to_number(null),
8210                           pjp1_i.ETC_RAW_COST)        ETC_RAW_COST,
8211           decode(pjp1_i.RELATIONSHIP_TYPE
8212                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
8213                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
8214                    || '_' || pjp1_i.SUP_STATUS_CODE
8215                    || '_' || l_partial_mode,
8216                  'LW_N_Y__', to_number(null),
8217                           pjp1_i.ETC_LABOR_RAW_COST)  ETC_LABOR_RAW_COST,
8218           decode(pjp1_i.RELATIONSHIP_TYPE
8219                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
8220                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
8221                    || '_' || pjp1_i.SUP_STATUS_CODE
8222                    || '_' || l_partial_mode,
8223                  'LW_N_Y__', to_number(null),
8224                           pjp1_i.ETC_EQUIP_RAW_COST)  ETC_EQUIP_RAW_COST,
8225           pjp1_i.CUSTOM1,
8226           pjp1_i.CUSTOM2,
8227           pjp1_i.CUSTOM3,
8228           pjp1_i.CUSTOM4,
8229           pjp1_i.CUSTOM5,
8230           pjp1_i.CUSTOM6,
8231           pjp1_i.CUSTOM7,
8232           pjp1_i.CUSTOM8,
8233           pjp1_i.CUSTOM9,
8234           pjp1_i.CUSTOM10,
8235           pjp1_i.CUSTOM11,
8236           pjp1_i.CUSTOM12,
8237           pjp1_i.CUSTOM13,
8238           pjp1_i.CUSTOM14,
8239           pjp1_i.CUSTOM15
8240         from
8241           (
8242         select
8243           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8244                  pjp.INSERT_FLAG, 'Y')                INSERT_FLAG,
8245           pjp.RELATIONSHIP_TYPE,
8246           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8247                  null, sub_ver.STATUS_CODE)           SUB_STATUS_CODE,
8248           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8249                  null, sup_ver.STATUS_CODE)           SUP_STATUS_CODE,
8250           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8251                  null, sup_wpa.WP_ENABLE_VERSION_FLAG)SUP_VER_ENABLED,
8252           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8253                  null, decode(pjp.PLAN_VERSION_ID,
8254                               -1, prg.SUP_ID,
8255                               -3, prg.SUP_ID,
8256                               -4, prg.SUP_ID,
8257                                   null))              SUP_ID,
8258           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8259                  null, decode(pjp.PLAN_VERSION_ID,
8260                               -1, prg.SUP_EMT_ID,
8261                               -3, prg.SUP_EMT_ID,
8262                               -4, prg.SUP_EMT_ID,
8263                                   null))              SUP_EMT_ID,
8264           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8265                  null, decode(pjp.PLAN_VERSION_ID,
8266                               -1, prg.WP_FLAG,
8267                               -3, prg.WP_FLAG,
8268                               -4, prg.WP_FLAG,
8269                                   null))              SUP_WP_FLAG,
8270           p_worker_id                                 WORKER_ID,
8271           'W'                                         RECORD_TYPE,
8272           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8273                  l_level, prg.SUP_LEVEL)              PRG_LEVEL,
8274           pjp.LINE_TYPE,
8275           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8276                  pjp.PROJECT_ID, prg.SUP_PROJECT_ID)  PROJECT_ID,
8277           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8278                  pjp.PROJECT_ORG_ID,
8279                  prg.SUP_PROJECT_ORG_ID)              PROJECT_ORG_ID,
8280           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8281                  pjp.PROJECT_ORGANIZATION_ID,
8282                  prg.SUP_PROJECT_ORGANIZATION_ID)     PROJECT_ORGANIZATION_ID,
8283           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8284                  pjp.PROJECT_ELEMENT_ID,
8285                  prg.SUB_ROLLUP_ID)                   PROJECT_ELEMENT_ID,
8286           pjp.TIME_ID,
8287           pjp.PERIOD_TYPE_ID,
8288           pjp.CALENDAR_TYPE,
8289           pjp.RBS_AGGR_LEVEL,
8290           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8291                  pjp.WBS_ROLLUP_FLAG, 'N')            WBS_ROLLUP_FLAG,
8292           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8293                  pjp.PRG_ROLLUP_FLAG, 'Y')            PRG_ROLLUP_FLAG,
8294           pjp.CURR_RECORD_TYPE_ID,
8295           pjp.CURRENCY_CODE,
8296           pjp.RBS_ELEMENT_ID,
8297           pjp.RBS_VERSION_ID,
8298           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8299                  pjp.PLAN_VERSION_ID,
8300                  decode(pjp.PLAN_VERSION_ID,
8301                         -1, pjp.PLAN_VERSION_ID,
8302                         -2, pjp.PLAN_VERSION_ID,
8303                         -3, pjp.PLAN_VERSION_ID,
8304                         -4, pjp.PLAN_VERSION_ID,
8305                             wbs_hdr.PLAN_VERSION_ID)) PLAN_VERSION_ID,
8306           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8307                  pjp.PLAN_TYPE_ID,
8308                  decode(pjp.PLAN_VERSION_ID,
8309                         -1, pjp.PLAN_TYPE_ID,
8310                         -2, pjp.PLAN_TYPE_ID,
8311                         -3, pjp.PLAN_TYPE_ID,
8312                         -4, pjp.PLAN_TYPE_ID,
8313                             wbs_hdr.PLAN_TYPE_ID))    PLAN_TYPE_ID,
8314           pjp.PLAN_TYPE_CODE,
8315           sum(pjp.RAW_COST)                           RAW_COST,
8316           sum(pjp.BRDN_COST)                          BRDN_COST,
8317           sum(pjp.REVENUE)                            REVENUE,
8318           sum(pjp.BILL_RAW_COST)                      BILL_RAW_COST,
8319           sum(pjp.BILL_BRDN_COST)                     BILL_BRDN_COST,
8320           sum(pjp.BILL_LABOR_RAW_COST)                BILL_LABOR_RAW_COST,
8321           sum(pjp.BILL_LABOR_BRDN_COST)               BILL_LABOR_BRDN_COST,
8322           sum(pjp.BILL_LABOR_HRS)                     BILL_LABOR_HRS,
8323           sum(pjp.EQUIPMENT_RAW_COST)                 EQUIPMENT_RAW_COST,
8324           sum(pjp.EQUIPMENT_BRDN_COST)                EQUIPMENT_BRDN_COST,
8325           sum(pjp.CAPITALIZABLE_RAW_COST)             CAPITALIZABLE_RAW_COST,
8326           sum(pjp.CAPITALIZABLE_BRDN_COST)            CAPITALIZABLE_BRDN_COST,
8327           sum(pjp.LABOR_RAW_COST)                     LABOR_RAW_COST,
8328           sum(pjp.LABOR_BRDN_COST)                    LABOR_BRDN_COST,
8329           sum(pjp.LABOR_HRS)                          LABOR_HRS,
8330           sum(pjp.LABOR_REVENUE)                      LABOR_REVENUE,
8331           sum(pjp.EQUIPMENT_HOURS)                    EQUIPMENT_HOURS,
8332           sum(pjp.BILLABLE_EQUIPMENT_HOURS)           BILLABLE_EQUIPMENT_HOURS,
8333           sum(pjp.SUP_INV_COMMITTED_COST)             SUP_INV_COMMITTED_COST,
8334           sum(pjp.PO_COMMITTED_COST)                  PO_COMMITTED_COST,
8335           sum(pjp.PR_COMMITTED_COST)                  PR_COMMITTED_COST,
8336           sum(pjp.OTH_COMMITTED_COST)                 OTH_COMMITTED_COST,
8337           sum(pjp.ACT_LABOR_HRS)                      ACT_LABOR_HRS,
8338           sum(pjp.ACT_EQUIP_HRS)                      ACT_EQUIP_HRS,
8339           sum(pjp.ACT_LABOR_BRDN_COST)                ACT_LABOR_BRDN_COST,
8340           sum(pjp.ACT_EQUIP_BRDN_COST)                ACT_EQUIP_BRDN_COST,
8341           sum(pjp.ACT_BRDN_COST)                      ACT_BRDN_COST,
8342           sum(pjp.ACT_RAW_COST)                       ACT_RAW_COST,
8343           sum(pjp.ACT_REVENUE)                        ACT_REVENUE,
8344           sum(pjp.ACT_LABOR_RAW_COST)                 ACT_LABOR_RAW_COST,
8345           sum(pjp.ACT_EQUIP_RAW_COST)                 ACT_EQUIP_RAW_COST,
8346           sum(pjp.ETC_LABOR_HRS)                      ETC_LABOR_HRS,
8347           sum(pjp.ETC_EQUIP_HRS)                      ETC_EQUIP_HRS,
8348           sum(pjp.ETC_LABOR_BRDN_COST)                ETC_LABOR_BRDN_COST,
8349           sum(pjp.ETC_EQUIP_BRDN_COST)                ETC_EQUIP_BRDN_COST,
8350           sum(pjp.ETC_BRDN_COST)                      ETC_BRDN_COST,
8351           sum(pjp.ETC_RAW_COST)                       ETC_RAW_COST,
8352           sum(pjp.ETC_LABOR_RAW_COST)                 ETC_LABOR_RAW_COST,
8353           sum(pjp.ETC_EQUIP_RAW_COST)                 ETC_EQUIP_RAW_COST,
8354           sum(pjp.CUSTOM1)                            CUSTOM1,
8355           sum(pjp.CUSTOM2)                            CUSTOM2,
8356           sum(pjp.CUSTOM3)                            CUSTOM3,
8357           sum(pjp.CUSTOM4)                            CUSTOM4,
8358           sum(pjp.CUSTOM5)                            CUSTOM5,
8359           sum(pjp.CUSTOM6)                            CUSTOM6,
8360           sum(pjp.CUSTOM7)                            CUSTOM7,
8361           sum(pjp.CUSTOM8)                            CUSTOM8,
8362           sum(pjp.CUSTOM9)                            CUSTOM9,
8363           sum(pjp.CUSTOM10)                           CUSTOM10,
8364           sum(pjp.CUSTOM11)                           CUSTOM11,
8365           sum(pjp.CUSTOM12)                           CUSTOM12,
8366           sum(pjp.CUSTOM13)                           CUSTOM13,
8367           sum(pjp.CUSTOM14)                           CUSTOM14,
8368           sum(pjp.CUSTOM15)                           CUSTOM15
8369         from
8370           (
8371           select /*+ index(wbs PA_XBS_DENORM_N2) parallel(pjp1) */ -- changed for bug 5927368
8372 		 -- get incremental task level amounts from source and
8373                  -- program rollup amounts from interim
8374             to_char(null)                             LINE_TYPE,
8375             wbs_hdr.WBS_VERSION_ID,
8376             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
8377             decode(wbs_hdr.WP_FLAG
8378                      || '_' || to_char(sign(pjp1.PLAN_VERSION_ID))
8379                      || '_' || nvl(fin_plan.INVERT_ID, 'PRJ'),
8380                    'N_1_PRJ', 'N',
8381                    'N_-1_PRG', 'N',
8382                    decode(top_slice.INVERT_ID,
8383                           'PRJ', 'Y',
8384                           decode(wbs.SUB_LEVEL,
8385                                  1, 'Y', 'N')))       PUSHUP_FLAG,
8386             decode(pjp1.RBS_AGGR_LEVEL,
8387                    'L', 'N',
8388                         decode(wbs_hdr.WP_FLAG
8389                                  || '_' || to_char(sign(pjp1.PLAN_VERSION_ID))
8390                                  || '_' || fin_plan.INVERT_ID,
8391                                'N_1_PRG', decode(top_slice.INVERT_ID,
8392                                                  'PRJ', 'Y',
8393                                                  decode(wbs.SUB_LEVEL,
8394                                                         1, 'Y', 'N')),
8395                                'N_-1_PRG', 'N',
8396                                decode(wbs_hdr.WP_FLAG
8397                                         || '_' || fin_plan.INVERT_ID
8398                                         || '_' || fin_plan.CB
8399                                         || '_' || fin_plan.CO
8400                                         || '_'
8401                                         || to_char(fin_plan.PLAN_VERSION_ID),
8402                                       'N_PRJ_Y_Y_-4', 'N',
8403                                                       'Y'))
8404                   )                                   INSERT_FLAG,
8405             pjp1.PROJECT_ID,
8406             pjp1.PROJECT_ORG_ID,
8407             pjp1.PROJECT_ORGANIZATION_ID,
8408             decode(top_slice.INVERT_ID,
8409                    'PRJ', prg.SUP_EMT_ID,
8410                           decode(wbs.SUB_LEVEL,
8411                                  1, prg.SUP_EMT_ID,
8412                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
8413             pjp1.TIME_ID,
8414             pjp1.PERIOD_TYPE_ID,
8415             pjp1.CALENDAR_TYPE,
8416             pjp1.RBS_AGGR_LEVEL,
8417             'Y'                                       WBS_ROLLUP_FLAG,
8418             pjp1.PRG_ROLLUP_FLAG,
8419             pjp1.CURR_RECORD_TYPE_ID,
8420             pjp1.CURRENCY_CODE,
8421             pjp1.RBS_ELEMENT_ID,
8422             pjp1.RBS_VERSION_ID,
8423             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
8424                    'N_PRG', fin_plan.PLAN_VERSION_ID,
8425                             pjp1.PLAN_VERSION_ID)     PLAN_VERSION_ID,
8426             pjp1.PLAN_TYPE_ID,
8427             pjp1.PLAN_TYPE_CODE,
8428             pjp1.RAW_COST,
8429             pjp1.BRDN_COST,
8430             pjp1.REVENUE,
8431             pjp1.BILL_RAW_COST,
8432             pjp1.BILL_BRDN_COST,
8433             pjp1.BILL_LABOR_RAW_COST,
8434             pjp1.BILL_LABOR_BRDN_COST,
8435             pjp1.BILL_LABOR_HRS,
8436             pjp1.EQUIPMENT_RAW_COST,
8437             pjp1.EQUIPMENT_BRDN_COST,
8438             pjp1.CAPITALIZABLE_RAW_COST,
8439             pjp1.CAPITALIZABLE_BRDN_COST,
8440             pjp1.LABOR_RAW_COST,
8441             pjp1.LABOR_BRDN_COST,
8442             pjp1.LABOR_HRS,
8443             pjp1.LABOR_REVENUE,
8444             pjp1.EQUIPMENT_HOURS,
8445             pjp1.BILLABLE_EQUIPMENT_HOURS,
8446             pjp1.SUP_INV_COMMITTED_COST,
8447             pjp1.PO_COMMITTED_COST,
8448             pjp1.PR_COMMITTED_COST,
8449             pjp1.OTH_COMMITTED_COST,
8450             pjp1.ACT_LABOR_HRS,
8451             pjp1.ACT_EQUIP_HRS,
8452             pjp1.ACT_LABOR_BRDN_COST,
8453             pjp1.ACT_EQUIP_BRDN_COST,
8454             pjp1.ACT_BRDN_COST,
8455             pjp1.ACT_RAW_COST,
8456             pjp1.ACT_REVENUE,
8457             pjp1.ACT_LABOR_RAW_COST,
8458             pjp1.ACT_EQUIP_RAW_COST,
8459             pjp1.ETC_LABOR_HRS,
8460             pjp1.ETC_EQUIP_HRS,
8461             pjp1.ETC_LABOR_BRDN_COST,
8462             pjp1.ETC_EQUIP_BRDN_COST,
8463             pjp1.ETC_BRDN_COST,
8464             pjp1.ETC_RAW_COST,
8465             pjp1.ETC_LABOR_RAW_COST,
8466             pjp1.ETC_EQUIP_RAW_COST,
8467             pjp1.CUSTOM1,
8468             pjp1.CUSTOM2,
8469             pjp1.CUSTOM3,
8470             pjp1.CUSTOM4,
8471             pjp1.CUSTOM5,
8472             pjp1.CUSTOM6,
8473             pjp1.CUSTOM7,
8474             pjp1.CUSTOM8,
8475             pjp1.CUSTOM9,
8476             pjp1.CUSTOM10,
8477             pjp1.CUSTOM11,
8478             pjp1.CUSTOM12,
8479             pjp1.CUSTOM13,
8480             pjp1.CUSTOM14,
8481             pjp1.CUSTOM15
8482           from
8483             PJI_FP_AGGR_PJP1   pjp1,
8484             PJI_PJP_WBS_HEADER wbs_hdr,
8485             PA_XBS_DENORM      wbs,
8486             PJI_XBS_DENORM     prg,
8487             (
8488               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
8489               from DUAL union all
8490               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
8491               from DUAL union all
8492               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
8493               from DUAL union all
8494               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
8495               from DUAL union all
8496               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
8497               from DUAL union all
8498               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
8499               from DUAL union all
8500               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
8501               from DUAL union all
8502               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
8503               from DUAL
8504             ) fin_plan,
8505             (
8506               select 1     WBS_SUP_LEVEL,
8507                      1     WBS_SUB_LEVEL,
8508                      'PRJ' INVERT_ID
8509               from   DUAL
8510               union all
8511               select 1     WBS_SUP_LEVEL,
8512                      1     WBS_SUB_LEVEL,
8513                      'WBS' INVERT_ID
8514               from   DUAL
8515             ) top_slice
8516           where
8517             prg.STRUCT_TYPE         =  'PRG'                       and
8518             prg.SUP_LEVEL           =  l_level                     and
8519             prg.SUB_LEVEL           =  l_level                     and
8520             wbs.STRUCT_TYPE         =  'WBS'                       and
8521             ((wbs.SUP_LEVEL = 1 and
8522               wbs.SUB_LEVEL = 1) or
8523              (wbs.SUP_LEVEL <> wbs.SUB_LEVEL))                     and
8524             wbs.STRUCT_VERSION_ID   =  prg.SUP_ID                  and
8525             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
8526             pjp1.WORKER_ID          =  p_worker_id                 and
8527             pjp1.PRG_LEVEL          in (0, l_level)                and
8528             pjp1.RBS_AGGR_LEVEL     in ('T', 'L')                  and
8529             pjp1.WBS_ROLLUP_FLAG    =  'N'                         and
8530             pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                  and
8531             pjp1.PROJECT_ID         =  wbs_hdr.PROJECT_ID          and
8532             pjp1.PLAN_VERSION_ID    =  wbs_hdr.PLAN_VERSION_ID     and
8533             pjp1.PLAN_TYPE_CODE     =  wbs_hdr.PLAN_TYPE_CODE      and
8534             decode(pjp1.PLAN_VERSION_ID,
8535                    -3, pjp1.PLAN_TYPE_ID,
8536                    -4, pjp1.PLAN_TYPE_ID,
8537                        -1)          =  decode(pjp1.PLAN_VERSION_ID,
8538                                               -3, wbs_hdr.PLAN_TYPE_ID,
8539                                               -4, wbs_hdr.PLAN_TYPE_ID,
8540                                                   -1)              and
8541             wbs.STRUCT_VERSION_ID   =  wbs_hdr.WBS_VERSION_ID      and
8542             pjp1.PROJECT_ELEMENT_ID =  wbs.SUB_EMT_ID              and
8543             wbs_hdr.CB_FLAG         =  fin_plan.CB             (+) and
8544             wbs_hdr.CO_FLAG         =  fin_plan.CO             (+) and
8545             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
8546             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+)
8547           union all
8548           select /*+ parallel(pjp1) */          -- changed for bug 5927368
8549 		 -- get incremental project level amounts from source
8550             to_char(null)                             LINE_TYPE,
8551             wbs_hdr.WBS_VERSION_ID,
8552             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
8553             'Y'                                       PUSHUP_FLAG,
8554             decode(pjp1.RBS_AGGR_LEVEL,
8555                    'L', 'N',
8556                         decode(fin_plan.PLAN_VERSION_ID,
8557                                null, 'N', 'Y'))       INSERT_FLAG,
8558             pjp1.PROJECT_ID,
8559             pjp1.PROJECT_ORG_ID,
8560             pjp1.PROJECT_ORGANIZATION_ID,
8561             pjp1.PROJECT_ELEMENT_ID,
8562             pjp1.TIME_ID,
8563             pjp1.PERIOD_TYPE_ID,
8564             pjp1.CALENDAR_TYPE,
8565             pjp1.RBS_AGGR_LEVEL,
8566             'Y'                                       WBS_ROLLUP_FLAG,
8567             pjp1.PRG_ROLLUP_FLAG,
8568             pjp1.CURR_RECORD_TYPE_ID,
8569             pjp1.CURRENCY_CODE,
8570             pjp1.RBS_ELEMENT_ID,
8571             pjp1.RBS_VERSION_ID,
8572             decode(wbs_hdr.WP_FLAG,
8573                    'N', decode(pjp1.PLAN_VERSION_ID,
8574                                -1, pjp1.PLAN_VERSION_ID,
8575                                -2, pjp1.PLAN_VERSION_ID,
8576                                -3, pjp1.PLAN_VERSION_ID, -- won't exist
8577                                -4, pjp1.PLAN_VERSION_ID, -- won't exist
8578                                    fin_plan.PLAN_VERSION_ID),
8579                         pjp1.PLAN_VERSION_ID)         PLAN_VERSION_ID,
8580             pjp1.PLAN_TYPE_ID,
8581             pjp1.PLAN_TYPE_CODE,
8582             pjp1.RAW_COST,
8583             pjp1.BRDN_COST,
8584             pjp1.REVENUE,
8585             pjp1.BILL_RAW_COST,
8586             pjp1.BILL_BRDN_COST,
8587             pjp1.BILL_LABOR_RAW_COST,
8588             pjp1.BILL_LABOR_BRDN_COST,
8589             pjp1.BILL_LABOR_HRS,
8590             pjp1.EQUIPMENT_RAW_COST,
8591             pjp1.EQUIPMENT_BRDN_COST,
8592             pjp1.CAPITALIZABLE_RAW_COST,
8593             pjp1.CAPITALIZABLE_BRDN_COST,
8594             pjp1.LABOR_RAW_COST,
8595             pjp1.LABOR_BRDN_COST,
8596             pjp1.LABOR_HRS,
8597             pjp1.LABOR_REVENUE,
8598             pjp1.EQUIPMENT_HOURS,
8599             pjp1.BILLABLE_EQUIPMENT_HOURS,
8600             pjp1.SUP_INV_COMMITTED_COST,
8601             pjp1.PO_COMMITTED_COST,
8602             pjp1.PR_COMMITTED_COST,
8603             pjp1.OTH_COMMITTED_COST,
8604             pjp1.ACT_LABOR_HRS,
8605             pjp1.ACT_EQUIP_HRS,
8606             pjp1.ACT_LABOR_BRDN_COST,
8607             pjp1.ACT_EQUIP_BRDN_COST,
8608             pjp1.ACT_BRDN_COST,
8609             pjp1.ACT_RAW_COST,
8610             pjp1.ACT_REVENUE,
8611             pjp1.ACT_LABOR_RAW_COST,
8612             pjp1.ACT_EQUIP_RAW_COST,
8613             pjp1.ETC_LABOR_HRS,
8614             pjp1.ETC_EQUIP_HRS,
8615             pjp1.ETC_LABOR_BRDN_COST,
8616             pjp1.ETC_EQUIP_BRDN_COST,
8617             pjp1.ETC_BRDN_COST,
8618             pjp1.ETC_RAW_COST,
8619             pjp1.ETC_LABOR_RAW_COST,
8620             pjp1.ETC_EQUIP_RAW_COST,
8621             pjp1.CUSTOM1,
8622             pjp1.CUSTOM2,
8623             pjp1.CUSTOM3,
8624             pjp1.CUSTOM4,
8625             pjp1.CUSTOM5,
8626             pjp1.CUSTOM6,
8627             pjp1.CUSTOM7,
8628             pjp1.CUSTOM8,
8629             pjp1.CUSTOM9,
8630             pjp1.CUSTOM10,
8631             pjp1.CUSTOM11,
8632             pjp1.CUSTOM12,
8633             pjp1.CUSTOM13,
8634             pjp1.CUSTOM14,
8635             pjp1.CUSTOM15
8636           from
8637             PJI_FP_AGGR_PJP1   pjp1,
8638             PJI_PJP_WBS_HEADER wbs_hdr,
8639             PJI_XBS_DENORM     prg,
8640             (
8641               select 'Y' CB_FLAG,
8642                      'N' CO_FLAG,
8643                      -3  PLAN_VERSION_ID
8644               from DUAL union all
8645               select 'N' CB_FLAG,
8646                      'Y' CO_FLAG,
8647                      -4  PLAN_VERSION_ID
8648               from DUAL union all
8649               select 'Y' CB_FLAG,
8650                      'Y' CO_FLAG,
8651                      -3  PLAN_VERSION_ID
8652               from DUAL union all
8653               select 'Y' CB_FLAG,
8654                      'Y' CO_FLAG,
8655                      -4  PLAN_VERSION_ID
8656               from DUAL
8657             ) fin_plan
8658           where
8659             prg.STRUCT_TYPE         = 'PRG'                    and
8660             prg.SUP_LEVEL           = l_level                  and
8661             prg.SUB_LEVEL           = l_level                  and
8662             pjp1.WORKER_ID          = p_worker_id              and
8663             pjp1.PROJECT_ID         = prg.SUP_PROJECT_ID       and
8664             pjp1.PROJECT_ELEMENT_ID = prg.SUP_EMT_ID           and
8665             pjp1.PRG_LEVEL          = 0                        and
8666             pjp1.RBS_AGGR_LEVEL     in ('T', 'L')              and
8667             pjp1.WBS_ROLLUP_FLAG    = 'N'                      and
8668             pjp1.PRG_ROLLUP_FLAG    = 'N'                      and
8669             wbs_hdr.PROJECT_ID      = pjp1.PROJECT_ID          and
8670             wbs_hdr.PLAN_VERSION_ID = pjp1.PLAN_VERSION_ID     and
8671             wbs_hdr.PLAN_TYPE_CODE  = pjp1.PLAN_TYPE_CODE      and
8672             decode(wbs_hdr.WP_FLAG,
8673                    'N', decode(pjp1.PLAN_VERSION_ID,
8674                                -1, 'Y',
8675                                -2, 'Y',
8676                                -3, 'Y', -- won't exist
8677                                -4, 'Y', -- won't exist
8678                                    decode(wbs_hdr.CB_FLAG || '_' ||
8679                                           wbs_hdr.CO_FLAG,
8680                                           'Y_Y', 'Y',
8681                                           'N_Y', 'Y',
8682                                           'Y_N', 'Y',
8683                                                  'N')),
8684                         'Y')        =  'Y'                     and
8685             wbs_hdr.WBS_VERSION_ID  = prg.SUP_ID               and
8686             wbs_hdr.CB_FLAG         = fin_plan.CB_FLAG     (+) and
8687             wbs_hdr.CO_FLAG         = fin_plan.CO_FLAG     (+)
8688           union all
8689           select /*+ ordered
8690                      index(fpr PJI_FP_XBS_ACCUM_F_N1) */
8691                  -- get delta task level amounts from Reporting Lines
8692             to_char(null)                             LINE_TYPE,
8693             wbs_hdr.WBS_VERSION_ID,
8694             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
8695             decode(log.EVENT_TYPE,
8696                    'WBS_CHANGE', 'Y',
8697                    'WBS_PUBLISH', 'N')                PUSHUP_FLAG,
8698             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
8699                    'N_PRG', decode(top_slice.INVERT_ID,
8700                                    'PRJ', 'Y',
8701                                    decode(wbs.SUB_LEVEL,
8702                                           1, 'Y', 'N')),
8703                    decode(wbs_hdr.WP_FLAG
8704                             || '_' || fin_plan.INVERT_ID
8705                             || '_' || fin_plan.CB
8706                             || '_' || fin_plan.CO
8707                             || '_' || to_char(fin_plan.PLAN_VERSION_ID),
8708                           'N_PRJ_Y_Y_-4', 'N',
8709                                           'Y'))       INSERT_FLAG,
8710             fpr.PROJECT_ID,
8711             fpr.PROJECT_ORG_ID,
8712             fpr.PROJECT_ORGANIZATION_ID,
8713             decode(top_slice.INVERT_ID,
8714                    'PRJ', prg.SUP_EMT_ID,
8715                           decode(wbs.SUB_LEVEL,
8716                                  1, prg.SUP_EMT_ID,
8717                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
8718             fpr.TIME_ID,
8719             fpr.PERIOD_TYPE_ID,
8720             fpr.CALENDAR_TYPE,
8721             fpr.RBS_AGGR_LEVEL,
8722             'Y'                                       WBS_ROLLUP_FLAG,
8723             fpr.PRG_ROLLUP_FLAG,
8724             fpr.CURR_RECORD_TYPE_ID,
8725             fpr.CURRENCY_CODE,
8726             fpr.RBS_ELEMENT_ID,
8727             fpr.RBS_VERSION_ID,
8728             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
8729                    'N_PRG', fin_plan.PLAN_VERSION_ID,
8730                             fpr.PLAN_VERSION_ID)      PLAN_VERSION_ID,
8731             fpr.PLAN_TYPE_ID,
8732             fpr.PLAN_TYPE_CODE,
8733             wbs.SIGN * fpr.RAW_COST                   RAW_COST,
8734             wbs.SIGN * fpr.BRDN_COST                  BRDN_COST,
8735             wbs.SIGN * fpr.REVENUE                    REVENUE,
8736             wbs.SIGN * fpr.BILL_RAW_COST              BILL_RAW_COST,
8737             wbs.SIGN * fpr.BILL_BRDN_COST             BILL_BRDN_COST,
8738             wbs.SIGN * fpr.BILL_LABOR_RAW_COST        BILL_LABOR_RAW_COST,
8739             wbs.SIGN * fpr.BILL_LABOR_BRDN_COST       BILL_LABOR_BRDN_COST,
8740             wbs.SIGN * fpr.BILL_LABOR_HRS             BILL_LABOR_HRS,
8741             wbs.SIGN * fpr.EQUIPMENT_RAW_COST         EQUIPMENT_RAW_COST,
8742             wbs.SIGN * fpr.EQUIPMENT_BRDN_COST        EQUIPMENT_BRDN_COST,
8743             wbs.SIGN * fpr.CAPITALIZABLE_RAW_COST     CAPITALIZABLE_RAW_COST,
8744             wbs.SIGN * fpr.CAPITALIZABLE_BRDN_COST    CAPITALIZABLE_BRDN_COST,
8745             wbs.SIGN * fpr.LABOR_RAW_COST             LABOR_RAW_COST,
8746             wbs.SIGN * fpr.LABOR_BRDN_COST            LABOR_BRDN_COST,
8747             wbs.SIGN * fpr.LABOR_HRS                  LABOR_HRS,
8748             wbs.SIGN * fpr.LABOR_REVENUE              LABOR_REVENUE,
8749             wbs.SIGN * fpr.EQUIPMENT_HOURS            EQUIPMENT_HOURS,
8750             wbs.SIGN * fpr.BILLABLE_EQUIPMENT_HOURS   BILLABLE_EQUIPMENT_HOURS,
8751             wbs.SIGN * fpr.SUP_INV_COMMITTED_COST     SUP_INV_COMMITTED_COST,
8752             wbs.SIGN * fpr.PO_COMMITTED_COST          PO_COMMITTED_COST,
8753             wbs.SIGN * fpr.PR_COMMITTED_COST          PR_COMMITTED_COST,
8754             wbs.SIGN * fpr.OTH_COMMITTED_COST         OTH_COMMITTED_COST,
8755             wbs.SIGN * fpr.ACT_LABOR_HRS              ACT_LABOR_HRS,
8756             wbs.SIGN * fpr.ACT_EQUIP_HRS              ACT_EQUIP_HRS,
8757             wbs.SIGN * fpr.ACT_LABOR_BRDN_COST        ACT_LABOR_BRDN_COST,
8758             wbs.SIGN * fpr.ACT_EQUIP_BRDN_COST        ACT_EQUIP_BRDN_COST,
8759             wbs.SIGN * fpr.ACT_BRDN_COST              ACT_BRDN_COST,
8760             wbs.SIGN * fpr.ACT_RAW_COST               ACT_RAW_COST,
8761             wbs.SIGN * fpr.ACT_REVENUE                ACT_REVENUE,
8762             wbs.SIGN * fpr.ACT_LABOR_RAW_COST         ACT_LABOR_RAW_COST,
8763             wbs.SIGN * fpr.ACT_EQUIP_RAW_COST         ACT_EQUIP_RAW_COST,
8764             wbs.SIGN * fpr.ETC_LABOR_HRS              ETC_LABOR_HRS,
8765             wbs.SIGN * fpr.ETC_EQUIP_HRS              ETC_EQUIP_HRS,
8766             wbs.SIGN * fpr.ETC_LABOR_BRDN_COST        ETC_LABOR_BRDN_COST,
8767             wbs.SIGN * fpr.ETC_EQUIP_BRDN_COST        ETC_EQUIP_BRDN_COST,
8768             wbs.SIGN * fpr.ETC_BRDN_COST              ETC_BRDN_COST,
8769             wbs.SIGN * fpr.ETC_RAW_COST               ETC_RAW_COST,
8770             wbs.SIGN * fpr.ETC_LABOR_RAW_COST         ETC_LABOR_RAW_COST,
8771             wbs.SIGN * fpr.ETC_EQUIP_RAW_COST         ETC_EQUIP_RAW_COST,
8772             wbs.SIGN * fpr.CUSTOM1                    CUSTOM1,
8773             wbs.SIGN * fpr.CUSTOM2                    CUSTOM2,
8774             wbs.SIGN * fpr.CUSTOM3                    CUSTOM3,
8775             wbs.SIGN * fpr.CUSTOM4                    CUSTOM4,
8776             wbs.SIGN * fpr.CUSTOM5                    CUSTOM5,
8777             wbs.SIGN * fpr.CUSTOM6                    CUSTOM6,
8778             wbs.SIGN * fpr.CUSTOM7                    CUSTOM7,
8779             wbs.SIGN * fpr.CUSTOM8                    CUSTOM8,
8780             wbs.SIGN * fpr.CUSTOM9                    CUSTOM9,
8781             wbs.SIGN * fpr.CUSTOM10                   CUSTOM10,
8782             wbs.SIGN * fpr.CUSTOM11                   CUSTOM11,
8783             wbs.SIGN * fpr.CUSTOM12                   CUSTOM12,
8784             wbs.SIGN * fpr.CUSTOM13                   CUSTOM13,
8785             wbs.SIGN * fpr.CUSTOM14                   CUSTOM14,
8786             wbs.SIGN * fpr.CUSTOM15                   CUSTOM15
8787           from
8788             PJI_PA_PROJ_EVENTS_LOG log,
8789             PJI_PJP_WBS_HEADER     wbs_hdr,
8790             PJI_XBS_DENORM_DELTA   wbs,
8791             PJI_XBS_DENORM         prg,
8792             PJI_FP_XBS_ACCUM_F     fpr,
8793             (
8794               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
8795               from DUAL union all
8796               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
8797               from DUAL union all
8798               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
8799               from DUAL union all
8800               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
8801               from DUAL union all
8802               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
8803               from DUAL union all
8804               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
8805               from DUAL union all
8806               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
8807               from DUAL union all
8808               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
8809               from DUAL
8810             ) fin_plan,
8811             (
8812               select 1     WBS_SUP_LEVEL,
8813                      1     WBS_SUB_LEVEL,
8814                      'PRJ' INVERT_ID
8815               from   DUAL
8816               union all
8817               select 1     WBS_SUP_LEVEL,
8818                      1     WBS_SUB_LEVEL,
8819                      'WBS' INVERT_ID
8820               from   DUAL
8821             ) top_slice
8822           where
8823             prg.STRUCT_TYPE         =  'PRG'                       and
8824             prg.SUP_LEVEL           =  l_level                     and
8825             prg.SUB_LEVEL           =  l_level                     and
8826             wbs.WORKER_ID           =  p_worker_id                 and
8827             wbs.STRUCT_TYPE         =  'WBS'                       and
8828             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
8829             log.WORKER_ID           =  p_worker_id                 and
8830             log.EVENT_ID            =  wbs.EVENT_ID                and
8831             log.EVENT_TYPE          in ('WBS_CHANGE',
8832                                         'WBS_PUBLISH')             and
8833             wbs_hdr.PROJECT_ID      =  log.ATTRIBUTE1              and
8834             wbs_hdr.PLAN_VERSION_ID =  log.ATTRIBUTE3              and
8835             wbs_hdr.WBS_VERSION_ID  =  wbs.STRUCT_VERSION_ID       and
8836             wbs_hdr.PROJECT_ID      =  prg.SUP_PROJECT_ID          and
8837             wbs_hdr.WBS_VERSION_ID  =  prg.SUP_ID                  and
8838             fpr.RBS_AGGR_LEVEL      =  'T'                         and
8839             fpr.WBS_ROLLUP_FLAG     =  'N'                         and
8840             fpr.PRG_ROLLUP_FLAG     in ('Y', 'N')                  and
8841             fpr.PROJECT_ID          =  wbs.SUP_PROJECT_ID          and
8842             fpr.PROJECT_ELEMENT_ID  =  wbs.SUB_EMT_ID              and
8843             fpr.PROJECT_ID          =  wbs_hdr.PROJECT_ID          and
8844             fpr.PLAN_VERSION_ID     =  wbs_hdr.PLAN_VERSION_ID     and
8845             fpr.PLAN_TYPE_CODE      =  wbs_hdr.PLAN_TYPE_CODE      and
8846             decode(fpr.PLAN_VERSION_ID,
8847                    -3, fpr.PLAN_TYPE_ID,
8848                    -4, fpr.PLAN_TYPE_ID,
8849                        -1)          =  decode(fpr.PLAN_VERSION_ID,
8850                                               -3, wbs_hdr.PLAN_TYPE_ID,
8851                                               -4, wbs_hdr.PLAN_TYPE_ID,
8852                                                   -1)              and
8853             wbs_hdr.CB_FLAG         =  fin_plan.CB             (+) and
8854             wbs_hdr.CO_FLAG         =  fin_plan.CO             (+) and
8855             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
8856             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+) and
8857             (wbs.SUP_LEVEL <> wbs.SUB_LEVEL or
8858              (wbs.SUP_LEVEL = 1 and
8859               wbs.SUB_LEVEL = 1))
8860           ) pjp,
8861           (
8862           select /*+ ordered */
8863             prg.SUP_PROJECT_ID,
8864             map.PROJECT_ORG_ID               SUP_PROJECT_ORG_ID,
8865             map.PROJECT_ORGANIZATION_ID      SUP_PROJECT_ORGANIZATION_ID,
8866             prg.SUP_ID,
8867             prg.SUP_EMT_ID,
8868             prg.SUP_LEVEL,
8869             prg.SUB_ID,
8870             prg.SUB_EMT_ID,
8871             prg.SUB_ROLLUP_ID,
8872             invert.INVERT_VALUE              RELATIONSHIP_TYPE,
8873             decode(prg.RELATIONSHIP_TYPE,
8874                    'LW', 'Y',
8875                    'LF', 'N')                WP_FLAG,
8876             'Y'                              PUSHUP_FLAG
8877           from
8878             PJI_PJP_PROJ_BATCH_MAP map,
8879             PJI_XBS_DENORM prg,
8880             (
8881               select 'LF' INVERT_ID, 'LF' INVERT_VALUE from dual union all
8882               select 'LW' INVERT_ID, 'LW' INVERT_VALUE from dual union all
8883               select 'A'  INVERT_ID, 'LF' INVERT_VALUE from dual union all
8884               select 'A'  INVERT_ID, 'LW' INVERT_VALUE from dual
8885             ) invert,
8886             PJI_XBS_DENORM_DELTA prg_delta
8887           where
8888             prg.STRUCT_TYPE               = 'PRG'                           and
8889             prg.SUB_ROLLUP_ID             is not null                       and
8890             prg.SUB_LEVEL                 = l_level                         and
8891             map.WORKER_ID                 = p_worker_id                     and
8892             map.PROJECT_ID                = prg.SUP_PROJECT_ID              and
8893             decode(prg.SUB_LEVEL,
8894                    prg.SUP_LEVEL, 'A',
8895                    prg.RELATIONSHIP_TYPE) = invert.INVERT_ID                and
8896             p_worker_id                   = prg_delta.WORKER_ID         (+) and
8897             prg.STRUCT_TYPE               = prg_delta.STRUCT_TYPE       (+) and
8898             prg.SUP_PROJECT_ID            = prg_delta.SUP_PROJECT_ID    (+) and
8899             prg.SUP_LEVEL                 = prg_delta.SUP_LEVEL         (+) and
8900             prg.SUP_ID                    = prg_delta.SUP_ID            (+) and
8901             prg.SUB_LEVEL                 = prg_delta.SUB_LEVEL         (+) and
8902             prg.SUB_ID                    = prg_delta.SUB_ID            (+) and
8903             prg.RELATIONSHIP_TYPE         = prg_delta.RELATIONSHIP_TYPE (+) and
8904             -1                            = prg_delta.SIGN              (+) and
8905             prg_delta.SUP_PROJECT_ID      is null
8906           )                          prg,
8907           PJI_PJP_WBS_HEADER         wbs_hdr,
8908           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
8909           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
8910           PA_PROJ_WORKPLAN_ATTR      sup_wpa
8911         where
8912           pjp.PROJECT_ID         = sub_ver.PROJECT_ID                (+) and
8913           pjp.WBS_VERSION_ID     = sub_ver.ELEMENT_VERSION_ID        (+) and
8914           'STRUCTURE_PUBLISHED'  = sub_ver.STATUS_CODE               (+) and
8915           pjp.WBS_VERSION_ID     = prg.SUB_ID                        (+) and
8916           pjp.RELATIONSHIP_TYPE  = prg.RELATIONSHIP_TYPE             (+) and
8917           pjp.PUSHUP_FLAG        = prg.PUSHUP_FLAG                   (+) and
8918           prg.SUP_PROJECT_ID     = wbs_hdr.PROJECT_ID                (+) and
8919           prg.SUP_ID             = wbs_hdr.WBS_VERSION_ID            (+) and
8920           prg.WP_FLAG            = wbs_hdr.WP_FLAG                   (+) and
8921           'Y'                    = wbs_hdr.WP_FLAG                   (+) and
8922           wbs_hdr.PROJECT_ID     = sup_ver.PROJECT_ID                (+) and
8923           wbs_hdr.WBS_VERSION_ID = sup_ver.ELEMENT_VERSION_ID        (+) and
8924           'STRUCTURE_PUBLISHED'  = sup_ver.STATUS_CODE               (+) and
8925           'Y'                    = sup_ver.LATEST_EFF_PUBLISHED_FLAG (+) and
8926           prg.SUP_EMT_ID         = sup_wpa.PROJ_ELEMENT_ID           (+)
8927         group by
8928           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8929                  pjp.INSERT_FLAG, 'Y'),
8930           pjp.RELATIONSHIP_TYPE,
8931           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8932                  null, sub_ver.STATUS_CODE),
8933           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8934                  null, sup_ver.STATUS_CODE),
8935           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8936                  null, sup_wpa.WP_ENABLE_VERSION_FLAG),
8937           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8938                  null, decode(pjp.PLAN_VERSION_ID,
8939                               -1, prg.SUP_ID,
8940                               -3, prg.SUP_ID,
8941                               -4, prg.SUP_ID,
8942                                   null)),
8943           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8944                  null, decode(pjp.PLAN_VERSION_ID,
8945                               -1, prg.SUP_EMT_ID,
8946                               -3, prg.SUP_EMT_ID,
8947                               -4, prg.SUP_EMT_ID,
8948                                   null)),
8949           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8950                  null, decode(pjp.PLAN_VERSION_ID,
8951                               -1, prg.WP_FLAG,
8952                               -3, prg.WP_FLAG,
8953                               -4, prg.WP_FLAG,
8954                                   null)),
8955           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8956                  l_level, prg.SUP_LEVEL),
8957           pjp.LINE_TYPE,
8958           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8959                  pjp.PROJECT_ID, prg.SUP_PROJECT_ID),
8960           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8961                  pjp.PROJECT_ORG_ID,
8962                  prg.SUP_PROJECT_ORG_ID),
8963           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8964                  pjp.PROJECT_ORGANIZATION_ID,
8965                  prg.SUP_PROJECT_ORGANIZATION_ID),
8966           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8967                  pjp.PROJECT_ELEMENT_ID,
8968                  prg.SUB_ROLLUP_ID),
8969           pjp.TIME_ID,
8970           pjp.PERIOD_TYPE_ID,
8971           pjp.CALENDAR_TYPE,
8972           pjp.RBS_AGGR_LEVEL,
8973           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8974                  pjp.WBS_ROLLUP_FLAG, 'N'),
8975           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8976                  pjp.PRG_ROLLUP_FLAG, 'Y'),
8977           pjp.CURR_RECORD_TYPE_ID,
8978           pjp.CURRENCY_CODE,
8979           pjp.RBS_ELEMENT_ID,
8980           pjp.RBS_VERSION_ID,
8981           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8982                  pjp.PLAN_VERSION_ID,
8983                  decode(pjp.PLAN_VERSION_ID,
8984                         -1, pjp.PLAN_VERSION_ID,
8985                         -2, pjp.PLAN_VERSION_ID,
8986                         -3, pjp.PLAN_VERSION_ID,
8987                         -4, pjp.PLAN_VERSION_ID,
8988                             wbs_hdr.PLAN_VERSION_ID)),
8989           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
8990                  pjp.PLAN_TYPE_ID,
8991                  decode(pjp.PLAN_VERSION_ID,
8992                         -1, pjp.PLAN_TYPE_ID,
8993                         -2, pjp.PLAN_TYPE_ID,
8994                         -3, pjp.PLAN_TYPE_ID,
8995                         -4, pjp.PLAN_TYPE_ID,
8996                             wbs_hdr.PLAN_TYPE_ID)),
8997           pjp.PLAN_TYPE_CODE
8998           )                          pjp1_i,
8999           PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
9000           PA_PROJ_WORKPLAN_ATTR      sup_wpa
9001         where
9002           pjp1_i.INSERT_FLAG  = 'Y'                                and
9003           pjp1_i.PROJECT_ID   = sup_fin_ver.PROJECT_ID         (+) and
9004           pjp1_i.SUP_ID       = sup_fin_ver.ELEMENT_VERSION_ID (+) and
9005           'STRUCTURE_WORKING' = sup_fin_ver.STATUS_CODE        (+) and
9006           pjp1_i.SUP_EMT_ID   = sup_wpa.PROJ_ELEMENT_ID        (+) and
9007           'N'                 = sup_wpa.WP_ENABLE_VERSION_FLAG (+) and
9008           (pjp1_i.SUP_ID is null or
9009            (pjp1_i.SUP_ID is not null and
9010             (sup_fin_ver.PROJECT_ID is not null or
9011              sup_wpa.PROJ_ELEMENT_ID is not null)));
9012 
9013      End IF; /* Added for bug 10338478 */
9014 
9015     elsif (p_worker_id =2) then
9016       -- Query for Partition 2
9017 
9018         insert /*+ parallel(PJI_FP_AGGR_PJP1) */
9019                    into PJI_FP_AGGR_PJP1 partition(P2)
9020 	(
9021           WORKER_ID,
9022           RECORD_TYPE,
9023           PRG_LEVEL,
9024           LINE_TYPE,
9025           PROJECT_ID,
9026           PROJECT_ORG_ID,
9027           PROJECT_ORGANIZATION_ID,
9028           PROJECT_ELEMENT_ID,
9029           TIME_ID,
9030           PERIOD_TYPE_ID,
9031           CALENDAR_TYPE,
9032           RBS_AGGR_LEVEL,
9033           WBS_ROLLUP_FLAG,
9034           PRG_ROLLUP_FLAG,
9035           CURR_RECORD_TYPE_ID,
9036           CURRENCY_CODE,
9037           RBS_ELEMENT_ID,
9038           RBS_VERSION_ID,
9039           PLAN_VERSION_ID,
9040           PLAN_TYPE_ID,
9041           PLAN_TYPE_CODE,
9042           RAW_COST,
9043           BRDN_COST,
9044           REVENUE,
9045           BILL_RAW_COST,
9046           BILL_BRDN_COST,
9047           BILL_LABOR_RAW_COST,
9048           BILL_LABOR_BRDN_COST,
9049           BILL_LABOR_HRS,
9050           EQUIPMENT_RAW_COST,
9051           EQUIPMENT_BRDN_COST,
9052           CAPITALIZABLE_RAW_COST,
9053           CAPITALIZABLE_BRDN_COST,
9054           LABOR_RAW_COST,
9055           LABOR_BRDN_COST,
9056           LABOR_HRS,
9057           LABOR_REVENUE,
9058           EQUIPMENT_HOURS,
9059           BILLABLE_EQUIPMENT_HOURS,
9060           SUP_INV_COMMITTED_COST,
9061           PO_COMMITTED_COST,
9062           PR_COMMITTED_COST,
9063           OTH_COMMITTED_COST,
9064           ACT_LABOR_HRS,
9065           ACT_EQUIP_HRS,
9066           ACT_LABOR_BRDN_COST,
9067           ACT_EQUIP_BRDN_COST,
9068           ACT_BRDN_COST,
9069           ACT_RAW_COST,
9070           ACT_REVENUE,
9071           ACT_LABOR_RAW_COST,
9072           ACT_EQUIP_RAW_COST,
9073           ETC_LABOR_HRS,
9074           ETC_EQUIP_HRS,
9075           ETC_LABOR_BRDN_COST,
9076           ETC_EQUIP_BRDN_COST,
9077           ETC_BRDN_COST,
9078           ETC_RAW_COST,
9079           ETC_LABOR_RAW_COST,
9080           ETC_EQUIP_RAW_COST,
9081           CUSTOM1,
9082           CUSTOM2,
9083           CUSTOM3,
9084           CUSTOM4,
9085           CUSTOM5,
9086           CUSTOM6,
9087           CUSTOM7,
9088           CUSTOM8,
9089           CUSTOM9,
9090           CUSTOM10,
9091           CUSTOM11,
9092           CUSTOM12,
9093           CUSTOM13,
9094           CUSTOM14,
9095           CUSTOM15
9096         )
9097         select
9098           pjp1_i.WORKER_ID,
9099           pjp1_i.RECORD_TYPE,
9100           pjp1_i.PRG_LEVEL,
9101           pjp1_i.LINE_TYPE,
9102           pjp1_i.PROJECT_ID,
9103           pjp1_i.PROJECT_ORG_ID,
9104           pjp1_i.PROJECT_ORGANIZATION_ID,
9105           pjp1_i.PROJECT_ELEMENT_ID,
9106           pjp1_i.TIME_ID,
9107           pjp1_i.PERIOD_TYPE_ID,
9108           pjp1_i.CALENDAR_TYPE,
9109           pjp1_i.RBS_AGGR_LEVEL,
9110           pjp1_i.WBS_ROLLUP_FLAG,
9111           pjp1_i.PRG_ROLLUP_FLAG,
9112           pjp1_i.CURR_RECORD_TYPE_ID,
9113           pjp1_i.CURRENCY_CODE,
9114           pjp1_i.RBS_ELEMENT_ID,
9115           pjp1_i.RBS_VERSION_ID,
9116           pjp1_i.PLAN_VERSION_ID,
9117           pjp1_i.PLAN_TYPE_ID,
9118           pjp1_i.PLAN_TYPE_CODE,
9119           decode(pjp1_i.RELATIONSHIP_TYPE
9120                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9121                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9122                    || '_' || pjp1_i.SUB_STATUS_CODE
9123                    || '_' || pjp1_i.SUP_STATUS_CODE,
9124                  'LW_N_Y__', to_number(null),
9125                  decode(pjp1_i.RELATIONSHIP_TYPE
9126                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
9127                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
9128                           || '_' || pjp1_i.SUP_VER_ENABLED
9129                           || '_' || l_fpm_upgrade
9130                           || '_' || l_partial_mode,
9131                         'LW_N_Y_Y_C_', to_number(null),
9132                  pjp1_i.RAW_COST))                    RAW_COST,
9133           decode(pjp1_i.RELATIONSHIP_TYPE
9134                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9135                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9136                    || '_' || pjp1_i.SUB_STATUS_CODE
9137                    || '_' || pjp1_i.SUP_STATUS_CODE,
9138                  'LW_N_Y__', to_number(null),
9139                  decode(pjp1_i.RELATIONSHIP_TYPE
9140                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
9141                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
9142                           || '_' || pjp1_i.SUP_VER_ENABLED
9143                           || '_' || l_fpm_upgrade
9144                           || '_' || l_partial_mode,
9145                         'LW_N_Y_Y_C_', to_number(null),
9146                  pjp1_i.BRDN_COST))                   BRDN_COST,
9147           decode(pjp1_i.RELATIONSHIP_TYPE
9148                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9149                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9150                    || '_' || pjp1_i.SUB_STATUS_CODE
9151                    || '_' || pjp1_i.SUP_STATUS_CODE,
9152                  'LW_N_Y__', to_number(null),
9153                  decode(pjp1_i.RELATIONSHIP_TYPE
9154                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
9155                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
9156                           || '_' || pjp1_i.SUP_VER_ENABLED
9157                           || '_' || l_fpm_upgrade
9158                           || '_' || l_partial_mode,
9159                         'LW_N_Y_Y_C_', to_number(null),
9160                  pjp1_i.REVENUE))                     REVENUE,
9161           decode(pjp1_i.RELATIONSHIP_TYPE
9162                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9163                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9164                    || '_' || pjp1_i.SUB_STATUS_CODE
9165                    || '_' || pjp1_i.SUP_STATUS_CODE,
9166                  'LW_N_Y__', to_number(null),
9167                  decode(pjp1_i.RELATIONSHIP_TYPE
9168                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
9169                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
9170                           || '_' || pjp1_i.SUP_VER_ENABLED
9171                           || '_' || l_fpm_upgrade
9172                           || '_' || l_partial_mode,
9173                         'LW_N_Y_Y_C_', to_number(null),
9174                  pjp1_i.BILL_RAW_COST))               BILL_RAW_COST,
9175           decode(pjp1_i.RELATIONSHIP_TYPE
9176                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9177                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9178                    || '_' || pjp1_i.SUB_STATUS_CODE
9179                    || '_' || pjp1_i.SUP_STATUS_CODE,
9180                  'LW_N_Y__', to_number(null),
9181                  decode(pjp1_i.RELATIONSHIP_TYPE
9182                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
9183                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
9184                           || '_' || pjp1_i.SUP_VER_ENABLED
9185                           || '_' || l_fpm_upgrade
9186                           || '_' || l_partial_mode,
9187                         'LW_N_Y_Y_C_', to_number(null),
9188                  pjp1_i.BILL_BRDN_COST))              BILL_BRDN_COST,
9189           decode(pjp1_i.RELATIONSHIP_TYPE
9190                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9191                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9192                    || '_' || pjp1_i.SUB_STATUS_CODE
9193                    || '_' || pjp1_i.SUP_STATUS_CODE,
9194                  'LW_N_Y__', to_number(null),
9195                  decode(pjp1_i.RELATIONSHIP_TYPE
9196                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
9197                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
9198                           || '_' || pjp1_i.SUP_VER_ENABLED
9199                           || '_' || l_fpm_upgrade
9200                           || '_' || l_partial_mode,
9201                         'LW_N_Y_Y_C_', to_number(null),
9202                  pjp1_i.BILL_LABOR_RAW_COST))         BILL_LABOR_RAW_COST,
9203           decode(pjp1_i.RELATIONSHIP_TYPE
9204                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9205                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9206                    || '_' || pjp1_i.SUB_STATUS_CODE
9207                    || '_' || pjp1_i.SUP_STATUS_CODE,
9208                  'LW_N_Y__', to_number(null),
9209                  decode(pjp1_i.RELATIONSHIP_TYPE
9210                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
9211                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
9212                           || '_' || pjp1_i.SUP_VER_ENABLED
9213                           || '_' || l_fpm_upgrade
9214                           || '_' || l_partial_mode,
9215                         'LW_N_Y_Y_C_', to_number(null),
9216                  pjp1_i.BILL_LABOR_BRDN_COST))        BILL_LABOR_BRDN_COST,
9217           decode(pjp1_i.RELATIONSHIP_TYPE
9218                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9219                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9220                    || '_' || pjp1_i.SUB_STATUS_CODE
9221                    || '_' || pjp1_i.SUP_STATUS_CODE,
9222                  'LW_N_Y__', to_number(null),
9223                  decode(pjp1_i.RELATIONSHIP_TYPE
9224                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
9225                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
9226                           || '_' || pjp1_i.SUP_VER_ENABLED
9227                           || '_' || l_fpm_upgrade
9228                           || '_' || l_partial_mode,
9229                         'LW_N_Y_Y_C_', to_number(null),
9230                  pjp1_i.BILL_LABOR_HRS))              BILL_LABOR_HRS,
9231           decode(pjp1_i.RELATIONSHIP_TYPE
9232                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9233                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9234                    || '_' || pjp1_i.SUB_STATUS_CODE
9235                    || '_' || pjp1_i.SUP_STATUS_CODE,
9236                  'LW_N_Y__', to_number(null),
9237                  decode(pjp1_i.RELATIONSHIP_TYPE
9238                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
9239                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
9240                           || '_' || pjp1_i.SUP_VER_ENABLED
9241                           || '_' || l_fpm_upgrade
9242                           || '_' || l_partial_mode,
9243                         'LW_N_Y_Y_C_', to_number(null),
9244                  pjp1_i.EQUIPMENT_RAW_COST))          EQUIPMENT_RAW_COST,
9245           decode(pjp1_i.RELATIONSHIP_TYPE
9246                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9247                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9248                    || '_' || pjp1_i.SUB_STATUS_CODE
9249                    || '_' || pjp1_i.SUP_STATUS_CODE,
9250                  'LW_N_Y__', to_number(null),
9251                  decode(pjp1_i.RELATIONSHIP_TYPE
9252                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
9253                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
9254                           || '_' || pjp1_i.SUP_VER_ENABLED
9255                           || '_' || l_fpm_upgrade
9256                           || '_' || l_partial_mode,
9257                         'LW_N_Y_Y_C_', to_number(null),
9258                  pjp1_i.EQUIPMENT_BRDN_COST))         EQUIPMENT_BRDN_COST,
9259           decode(pjp1_i.RELATIONSHIP_TYPE
9260                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9261                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9262                    || '_' || pjp1_i.SUB_STATUS_CODE
9263                    || '_' || pjp1_i.SUP_STATUS_CODE,
9264                  'LW_N_Y__', to_number(null),
9265                  decode(pjp1_i.RELATIONSHIP_TYPE
9266                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
9267                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
9268                           || '_' || pjp1_i.SUP_VER_ENABLED
9269                           || '_' || l_fpm_upgrade
9270                           || '_' || l_partial_mode,
9271                         'LW_N_Y_Y_C_', to_number(null),
9272                  pjp1_i.CAPITALIZABLE_RAW_COST))      CAPITALIZABLE_RAW_COST,
9273           decode(pjp1_i.RELATIONSHIP_TYPE
9274                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9275                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9276                    || '_' || pjp1_i.SUB_STATUS_CODE
9277                    || '_' || pjp1_i.SUP_STATUS_CODE,
9278                  'LW_N_Y__', to_number(null),
9279                  decode(pjp1_i.RELATIONSHIP_TYPE
9280                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
9281                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
9282                           || '_' || pjp1_i.SUP_VER_ENABLED
9283                           || '_' || l_fpm_upgrade
9284                           || '_' || l_partial_mode,
9285                         'LW_N_Y_Y_C_', to_number(null),
9286                  pjp1_i.CAPITALIZABLE_BRDN_COST))     CAPITALIZABLE_BRDN_COST,
9287           decode(pjp1_i.RELATIONSHIP_TYPE
9288                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9289                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9290                    || '_' || pjp1_i.SUB_STATUS_CODE
9291                    || '_' || pjp1_i.SUP_STATUS_CODE,
9292                  'LW_N_Y__', to_number(null),
9293                  decode(pjp1_i.RELATIONSHIP_TYPE
9294                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
9295                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
9296                           || '_' || pjp1_i.SUP_VER_ENABLED
9297                           || '_' || l_fpm_upgrade
9298                           || '_' || l_partial_mode,
9299                         'LW_N_Y_Y_C_', to_number(null),
9300                  pjp1_i.LABOR_RAW_COST))              LABOR_RAW_COST,
9301           decode(pjp1_i.RELATIONSHIP_TYPE
9302                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9303                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9304                    || '_' || pjp1_i.SUB_STATUS_CODE
9305                    || '_' || pjp1_i.SUP_STATUS_CODE,
9306                  'LW_N_Y__', to_number(null),
9307                  decode(pjp1_i.RELATIONSHIP_TYPE
9308                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
9309                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
9310                           || '_' || pjp1_i.SUP_VER_ENABLED
9311                           || '_' || l_fpm_upgrade
9312                           || '_' || l_partial_mode,
9313                         'LW_N_Y_Y_C_', to_number(null),
9314                  pjp1_i.LABOR_BRDN_COST))             LABOR_BRDN_COST,
9315           decode(pjp1_i.RELATIONSHIP_TYPE
9316                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9317                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9318                    || '_' || pjp1_i.SUB_STATUS_CODE
9319                    || '_' || pjp1_i.SUP_STATUS_CODE,
9320                  'LW_N_Y__', to_number(null),
9321                  decode(pjp1_i.RELATIONSHIP_TYPE
9322                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
9323                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
9324                           || '_' || pjp1_i.SUP_VER_ENABLED
9325                           || '_' || l_fpm_upgrade
9326                           || '_' || l_partial_mode,
9327                         'LW_N_Y_Y_C_', to_number(null),
9328                  pjp1_i.LABOR_HRS))                   LABOR_HRS,
9329           decode(pjp1_i.RELATIONSHIP_TYPE
9330                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9331                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9332                    || '_' || pjp1_i.SUB_STATUS_CODE
9333                    || '_' || pjp1_i.SUP_STATUS_CODE,
9334                  'LW_N_Y__', to_number(null),
9335                  decode(pjp1_i.RELATIONSHIP_TYPE
9336                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
9337                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
9338                           || '_' || pjp1_i.SUP_VER_ENABLED
9339                           || '_' || l_fpm_upgrade
9340                           || '_' || l_partial_mode,
9341                         'LW_N_Y_Y_C_', to_number(null),
9342                  pjp1_i.LABOR_REVENUE))               LABOR_REVENUE,
9343           decode(pjp1_i.RELATIONSHIP_TYPE
9344                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9345                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9346                    || '_' || pjp1_i.SUB_STATUS_CODE
9347                    || '_' || pjp1_i.SUP_STATUS_CODE,
9348                  'LW_N_Y__', to_number(null),
9349                  decode(pjp1_i.RELATIONSHIP_TYPE
9350                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
9351                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
9352                           || '_' || pjp1_i.SUP_VER_ENABLED
9353                           || '_' || l_fpm_upgrade
9354                           || '_' || l_partial_mode,
9355                         'LW_N_Y_Y_C_', to_number(null),
9356                  pjp1_i.EQUIPMENT_HOURS))             EQUIPMENT_HOURS,
9357           decode(pjp1_i.RELATIONSHIP_TYPE
9358                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9359                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9360                    || '_' || pjp1_i.SUB_STATUS_CODE
9361                    || '_' || pjp1_i.SUP_STATUS_CODE,
9362                  'LW_N_Y__', to_number(null),
9363                  decode(pjp1_i.RELATIONSHIP_TYPE
9364                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
9365                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
9366                           || '_' || pjp1_i.SUP_VER_ENABLED
9367                           || '_' || l_fpm_upgrade
9368                           || '_' || l_partial_mode,
9369                         'LW_N_Y_Y_C_', to_number(null),
9370                  pjp1_i.BILLABLE_EQUIPMENT_HOURS))    BILLABLE_EQUIPMENT_HOURS,
9371           decode(pjp1_i.RELATIONSHIP_TYPE
9372                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9373                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9374                    || '_' || pjp1_i.SUB_STATUS_CODE
9375                    || '_' || pjp1_i.SUP_STATUS_CODE,
9376                  'LW_N_Y__', to_number(null),
9377                  decode(pjp1_i.RELATIONSHIP_TYPE
9378                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
9379                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
9380                           || '_' || pjp1_i.SUP_VER_ENABLED
9381                           || '_' || l_fpm_upgrade
9382                           || '_' || l_partial_mode,
9383                         'LW_N_Y_Y_C_', to_number(null),
9384                  pjp1_i.SUP_INV_COMMITTED_COST))      SUP_INV_COMMITTED_COST,
9385           decode(pjp1_i.RELATIONSHIP_TYPE
9386                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9387                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9388                    || '_' || pjp1_i.SUB_STATUS_CODE
9389                    || '_' || pjp1_i.SUP_STATUS_CODE,
9390                  'LW_N_Y__', to_number(null),
9391                  decode(pjp1_i.RELATIONSHIP_TYPE
9392                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
9393                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
9394                           || '_' || pjp1_i.SUP_VER_ENABLED
9395                           || '_' || l_fpm_upgrade
9396                           || '_' || l_partial_mode,
9397                         'LW_N_Y_Y_C_', to_number(null),
9398                  pjp1_i.PO_COMMITTED_COST))           PO_COMMITTED_COST,
9399           decode(pjp1_i.RELATIONSHIP_TYPE
9400                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9401                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9402                    || '_' || pjp1_i.SUB_STATUS_CODE
9403                    || '_' || pjp1_i.SUP_STATUS_CODE,
9404                  'LW_N_Y__', to_number(null),
9405                  decode(pjp1_i.RELATIONSHIP_TYPE
9406                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
9407                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
9408                           || '_' || pjp1_i.SUP_VER_ENABLED
9409                           || '_' || l_fpm_upgrade
9410                           || '_' || l_partial_mode,
9411                         'LW_N_Y_Y_C_', to_number(null),
9412                  pjp1_i.PR_COMMITTED_COST))           PR_COMMITTED_COST,
9413           decode(pjp1_i.RELATIONSHIP_TYPE
9414                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9415                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9416                    || '_' || pjp1_i.SUB_STATUS_CODE
9417                    || '_' || pjp1_i.SUP_STATUS_CODE,
9418                  'LW_N_Y__', to_number(null),
9419                  decode(pjp1_i.RELATIONSHIP_TYPE
9420                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
9421                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
9422                           || '_' || pjp1_i.SUP_VER_ENABLED
9423                           || '_' || l_fpm_upgrade
9424                           || '_' || l_partial_mode,
9425                         'LW_N_Y_Y_C_', to_number(null),
9426                  pjp1_i.OTH_COMMITTED_COST))          OTH_COMMITTED_COST,
9427           decode(pjp1_i.RELATIONSHIP_TYPE
9428                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9429                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9430                    || '_' || pjp1_i.SUP_STATUS_CODE
9431                    || '_' || l_partial_mode,
9432                  'LW_N_Y__', to_number(null),
9433                           pjp1_i.ACT_LABOR_HRS)       ACT_LABOR_HRS,
9434           decode(pjp1_i.RELATIONSHIP_TYPE
9435                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9436                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9437                    || '_' || pjp1_i.SUP_STATUS_CODE
9438                    || '_' || l_partial_mode,
9439                  'LW_N_Y__', to_number(null),
9440                           pjp1_i.ACT_EQUIP_HRS)       ACT_EQUIP_HRS,
9441           decode(pjp1_i.RELATIONSHIP_TYPE
9442                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9443                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9444                    || '_' || pjp1_i.SUP_STATUS_CODE
9445                    || '_' || l_partial_mode,
9446                  'LW_N_Y__', to_number(null),
9447                           pjp1_i.ACT_LABOR_BRDN_COST) ACT_LABOR_BRDN_COST,
9448           decode(pjp1_i.RELATIONSHIP_TYPE
9449                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9450                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9451                    || '_' || pjp1_i.SUP_STATUS_CODE
9452                    || '_' || l_partial_mode,
9453                  'LW_N_Y__', to_number(null),
9454                           pjp1_i.ACT_EQUIP_BRDN_COST) ACT_EQUIP_BRDN_COST,
9455           decode(pjp1_i.RELATIONSHIP_TYPE
9456                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9457                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9458                    || '_' || pjp1_i.SUP_STATUS_CODE
9459                    || '_' || l_partial_mode,
9460                  'LW_N_Y__', to_number(null),
9461                           pjp1_i.ACT_BRDN_COST)       ACT_BRDN_COST,
9462           decode(pjp1_i.RELATIONSHIP_TYPE
9463                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9464                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9465                    || '_' || pjp1_i.SUP_STATUS_CODE
9466                    || '_' || l_partial_mode,
9467                  'LW_N_Y__', to_number(null),
9468                           pjp1_i.ACT_RAW_COST)        ACT_RAW_COST,
9469           decode(pjp1_i.RELATIONSHIP_TYPE
9470                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9471                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9472                    || '_' || pjp1_i.SUP_STATUS_CODE
9473                    || '_' || l_partial_mode,
9474                  'LW_N_Y__', to_number(null),
9475                           pjp1_i.ACT_REVENUE)         ACT_REVENUE,
9476           decode(pjp1_i.RELATIONSHIP_TYPE
9477                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9478                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9479                    || '_' || pjp1_i.SUP_STATUS_CODE
9480                    || '_' || l_partial_mode,
9481                  'LW_N_Y__', to_number(null),
9482                           pjp1_i.ACT_LABOR_RAW_COST)  ACT_LABOR_RAW_COST,
9483           decode(pjp1_i.RELATIONSHIP_TYPE
9484                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9485                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9486                    || '_' || pjp1_i.SUP_STATUS_CODE
9487                    || '_' || l_partial_mode,
9488                  'LW_N_Y__', to_number(null),
9489                           pjp1_i.ACT_EQUIP_RAW_COST)  ACT_EQUIP_RAW_COST,
9490           decode(pjp1_i.RELATIONSHIP_TYPE
9491                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9492                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9493                    || '_' || pjp1_i.SUP_STATUS_CODE
9494                    || '_' || l_partial_mode,
9495                  'LW_N_Y__', to_number(null),
9496                           pjp1_i.ETC_LABOR_HRS)       ETC_LABOR_HRS,
9497           decode(pjp1_i.RELATIONSHIP_TYPE
9498                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9499                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9500                    || '_' || pjp1_i.SUP_STATUS_CODE
9501                    || '_' || l_partial_mode,
9502                  'LW_N_Y__', to_number(null),
9503                           pjp1_i.ETC_EQUIP_HRS)       ETC_EQUIP_HRS,
9504           decode(pjp1_i.RELATIONSHIP_TYPE
9505                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9506                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9507                    || '_' || pjp1_i.SUP_STATUS_CODE
9508                    || '_' || l_partial_mode,
9509                  'LW_N_Y__', to_number(null),
9510                           pjp1_i.ETC_LABOR_BRDN_COST) ETC_LABOR_BRDN_COST,
9511           decode(pjp1_i.RELATIONSHIP_TYPE
9512                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9513                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9514                    || '_' || pjp1_i.SUP_STATUS_CODE
9515                    || '_' || l_partial_mode,
9516                  'LW_N_Y__', to_number(null),
9517                           pjp1_i.ETC_EQUIP_BRDN_COST) ETC_EQUIP_BRDN_COST,
9518           decode(pjp1_i.RELATIONSHIP_TYPE
9519                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9520                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9521                    || '_' || pjp1_i.SUP_STATUS_CODE
9522                    || '_' || l_partial_mode,
9523                  'LW_N_Y__', to_number(null),
9524                           pjp1_i.ETC_BRDN_COST)       ETC_BRDN_COST,
9525           decode(pjp1_i.RELATIONSHIP_TYPE
9526                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9527                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9528                    || '_' || pjp1_i.SUP_STATUS_CODE
9529                    || '_' || l_partial_mode,
9530                  'LW_N_Y__', to_number(null),
9531                           pjp1_i.ETC_RAW_COST)        ETC_RAW_COST,
9532           decode(pjp1_i.RELATIONSHIP_TYPE
9533                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9534                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9535                    || '_' || pjp1_i.SUP_STATUS_CODE
9536                    || '_' || l_partial_mode,
9537                  'LW_N_Y__', to_number(null),
9538                           pjp1_i.ETC_LABOR_RAW_COST)  ETC_LABOR_RAW_COST,
9539           decode(pjp1_i.RELATIONSHIP_TYPE
9540                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
9541                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
9542                    || '_' || pjp1_i.SUP_STATUS_CODE
9543                    || '_' || l_partial_mode,
9544                  'LW_N_Y__', to_number(null),
9545                           pjp1_i.ETC_EQUIP_RAW_COST)  ETC_EQUIP_RAW_COST,
9546           pjp1_i.CUSTOM1,
9547           pjp1_i.CUSTOM2,
9548           pjp1_i.CUSTOM3,
9549           pjp1_i.CUSTOM4,
9550           pjp1_i.CUSTOM5,
9551           pjp1_i.CUSTOM6,
9552           pjp1_i.CUSTOM7,
9553           pjp1_i.CUSTOM8,
9554           pjp1_i.CUSTOM9,
9555           pjp1_i.CUSTOM10,
9556           pjp1_i.CUSTOM11,
9557           pjp1_i.CUSTOM12,
9558           pjp1_i.CUSTOM13,
9559           pjp1_i.CUSTOM14,
9560           pjp1_i.CUSTOM15
9561         from
9562           (
9563         select
9564           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
9565                  pjp.INSERT_FLAG, 'Y')                INSERT_FLAG,
9566           pjp.RELATIONSHIP_TYPE,
9567           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
9568                  null, sub_ver.STATUS_CODE)           SUB_STATUS_CODE,
9569           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
9570                  null, sup_ver.STATUS_CODE)           SUP_STATUS_CODE,
9571           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
9572                  null, sup_wpa.WP_ENABLE_VERSION_FLAG)SUP_VER_ENABLED,
9573           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
9574                  null, decode(pjp.PLAN_VERSION_ID,
9575                               -1, prg.SUP_ID,
9576                               -3, prg.SUP_ID,
9577                               -4, prg.SUP_ID,
9578                                   null))              SUP_ID,
9579           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
9580                  null, decode(pjp.PLAN_VERSION_ID,
9581                               -1, prg.SUP_EMT_ID,
9582                               -3, prg.SUP_EMT_ID,
9583                               -4, prg.SUP_EMT_ID,
9584                                   null))              SUP_EMT_ID,
9585           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
9586                  null, decode(pjp.PLAN_VERSION_ID,
9587                               -1, prg.WP_FLAG,
9588                               -3, prg.WP_FLAG,
9589                               -4, prg.WP_FLAG,
9590                                   null))              SUP_WP_FLAG,
9591           p_worker_id                                 WORKER_ID,
9592           'W'                                         RECORD_TYPE,
9593           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
9594                  l_level, prg.SUP_LEVEL)              PRG_LEVEL,
9595           pjp.LINE_TYPE,
9596           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
9597                  pjp.PROJECT_ID, prg.SUP_PROJECT_ID)  PROJECT_ID,
9598           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
9599                  pjp.PROJECT_ORG_ID,
9600                  prg.SUP_PROJECT_ORG_ID)              PROJECT_ORG_ID,
9601           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
9602                  pjp.PROJECT_ORGANIZATION_ID,
9603                  prg.SUP_PROJECT_ORGANIZATION_ID)     PROJECT_ORGANIZATION_ID,
9604           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
9605                  pjp.PROJECT_ELEMENT_ID,
9606                  prg.SUB_ROLLUP_ID)                   PROJECT_ELEMENT_ID,
9607           pjp.TIME_ID,
9608           pjp.PERIOD_TYPE_ID,
9609           pjp.CALENDAR_TYPE,
9610           pjp.RBS_AGGR_LEVEL,
9611           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
9612                  pjp.WBS_ROLLUP_FLAG, 'N')            WBS_ROLLUP_FLAG,
9613           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
9614                  pjp.PRG_ROLLUP_FLAG, 'Y')            PRG_ROLLUP_FLAG,
9615           pjp.CURR_RECORD_TYPE_ID,
9616           pjp.CURRENCY_CODE,
9617           pjp.RBS_ELEMENT_ID,
9618           pjp.RBS_VERSION_ID,
9619           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
9620                  pjp.PLAN_VERSION_ID,
9621                  decode(pjp.PLAN_VERSION_ID,
9622                         -1, pjp.PLAN_VERSION_ID,
9623                         -2, pjp.PLAN_VERSION_ID,
9624                         -3, pjp.PLAN_VERSION_ID,
9625                         -4, pjp.PLAN_VERSION_ID,
9626                             wbs_hdr.PLAN_VERSION_ID)) PLAN_VERSION_ID,
9627           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
9628                  pjp.PLAN_TYPE_ID,
9629                  decode(pjp.PLAN_VERSION_ID,
9630                         -1, pjp.PLAN_TYPE_ID,
9631                         -2, pjp.PLAN_TYPE_ID,
9632                         -3, pjp.PLAN_TYPE_ID,
9633                         -4, pjp.PLAN_TYPE_ID,
9634                             wbs_hdr.PLAN_TYPE_ID))    PLAN_TYPE_ID,
9635           pjp.PLAN_TYPE_CODE,
9636           sum(pjp.RAW_COST)                           RAW_COST,
9637           sum(pjp.BRDN_COST)                          BRDN_COST,
9638           sum(pjp.REVENUE)                            REVENUE,
9639           sum(pjp.BILL_RAW_COST)                      BILL_RAW_COST,
9640           sum(pjp.BILL_BRDN_COST)                     BILL_BRDN_COST,
9641           sum(pjp.BILL_LABOR_RAW_COST)                BILL_LABOR_RAW_COST,
9642           sum(pjp.BILL_LABOR_BRDN_COST)               BILL_LABOR_BRDN_COST,
9643           sum(pjp.BILL_LABOR_HRS)                     BILL_LABOR_HRS,
9644           sum(pjp.EQUIPMENT_RAW_COST)                 EQUIPMENT_RAW_COST,
9645           sum(pjp.EQUIPMENT_BRDN_COST)                EQUIPMENT_BRDN_COST,
9646           sum(pjp.CAPITALIZABLE_RAW_COST)             CAPITALIZABLE_RAW_COST,
9647           sum(pjp.CAPITALIZABLE_BRDN_COST)            CAPITALIZABLE_BRDN_COST,
9648           sum(pjp.LABOR_RAW_COST)                     LABOR_RAW_COST,
9649           sum(pjp.LABOR_BRDN_COST)                    LABOR_BRDN_COST,
9650           sum(pjp.LABOR_HRS)                          LABOR_HRS,
9651           sum(pjp.LABOR_REVENUE)                      LABOR_REVENUE,
9652           sum(pjp.EQUIPMENT_HOURS)                    EQUIPMENT_HOURS,
9653           sum(pjp.BILLABLE_EQUIPMENT_HOURS)           BILLABLE_EQUIPMENT_HOURS,
9654           sum(pjp.SUP_INV_COMMITTED_COST)             SUP_INV_COMMITTED_COST,
9655           sum(pjp.PO_COMMITTED_COST)                  PO_COMMITTED_COST,
9656           sum(pjp.PR_COMMITTED_COST)                  PR_COMMITTED_COST,
9657           sum(pjp.OTH_COMMITTED_COST)                 OTH_COMMITTED_COST,
9658           sum(pjp.ACT_LABOR_HRS)                      ACT_LABOR_HRS,
9659           sum(pjp.ACT_EQUIP_HRS)                      ACT_EQUIP_HRS,
9660           sum(pjp.ACT_LABOR_BRDN_COST)                ACT_LABOR_BRDN_COST,
9661           sum(pjp.ACT_EQUIP_BRDN_COST)                ACT_EQUIP_BRDN_COST,
9662           sum(pjp.ACT_BRDN_COST)                      ACT_BRDN_COST,
9663           sum(pjp.ACT_RAW_COST)                       ACT_RAW_COST,
9664           sum(pjp.ACT_REVENUE)                        ACT_REVENUE,
9665           sum(pjp.ACT_LABOR_RAW_COST)                 ACT_LABOR_RAW_COST,
9666           sum(pjp.ACT_EQUIP_RAW_COST)                 ACT_EQUIP_RAW_COST,
9667           sum(pjp.ETC_LABOR_HRS)                      ETC_LABOR_HRS,
9668           sum(pjp.ETC_EQUIP_HRS)                      ETC_EQUIP_HRS,
9669           sum(pjp.ETC_LABOR_BRDN_COST)                ETC_LABOR_BRDN_COST,
9670           sum(pjp.ETC_EQUIP_BRDN_COST)                ETC_EQUIP_BRDN_COST,
9671           sum(pjp.ETC_BRDN_COST)                      ETC_BRDN_COST,
9672           sum(pjp.ETC_RAW_COST)                       ETC_RAW_COST,
9673           sum(pjp.ETC_LABOR_RAW_COST)                 ETC_LABOR_RAW_COST,
9674           sum(pjp.ETC_EQUIP_RAW_COST)                 ETC_EQUIP_RAW_COST,
9675           sum(pjp.CUSTOM1)                            CUSTOM1,
9676           sum(pjp.CUSTOM2)                            CUSTOM2,
9677           sum(pjp.CUSTOM3)                            CUSTOM3,
9678           sum(pjp.CUSTOM4)                            CUSTOM4,
9679           sum(pjp.CUSTOM5)                            CUSTOM5,
9680           sum(pjp.CUSTOM6)                            CUSTOM6,
9681           sum(pjp.CUSTOM7)                            CUSTOM7,
9682           sum(pjp.CUSTOM8)                            CUSTOM8,
9683           sum(pjp.CUSTOM9)                            CUSTOM9,
9684           sum(pjp.CUSTOM10)                           CUSTOM10,
9685           sum(pjp.CUSTOM11)                           CUSTOM11,
9686           sum(pjp.CUSTOM12)                           CUSTOM12,
9687           sum(pjp.CUSTOM13)                           CUSTOM13,
9688           sum(pjp.CUSTOM14)                           CUSTOM14,
9689           sum(pjp.CUSTOM15)                           CUSTOM15
9690         from
9691           (
9692           select /*+ index(wbs PA_XBS_DENORM_N2) parallel(pjp1) */ -- changed for bug 5927368
9693 		 -- get incremental task level amounts from source and
9694                  -- program rollup amounts from interim
9695             to_char(null)                             LINE_TYPE,
9696             wbs_hdr.WBS_VERSION_ID,
9697             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
9698             decode(wbs_hdr.WP_FLAG
9699                      || '_' || to_char(sign(pjp1.PLAN_VERSION_ID))
9700                      || '_' || nvl(fin_plan.INVERT_ID, 'PRJ'),
9701                    'N_1_PRJ', 'N',
9702                    'N_-1_PRG', 'N',
9703                    decode(top_slice.INVERT_ID,
9704                           'PRJ', 'Y',
9705                           decode(wbs.SUB_LEVEL,
9706                                  1, 'Y', 'N')))       PUSHUP_FLAG,
9707             decode(pjp1.RBS_AGGR_LEVEL,
9708                    'L', 'N',
9709                         decode(wbs_hdr.WP_FLAG
9710                                  || '_' || to_char(sign(pjp1.PLAN_VERSION_ID))
9711                                  || '_' || fin_plan.INVERT_ID,
9712                                'N_1_PRG', decode(top_slice.INVERT_ID,
9713                                                  'PRJ', 'Y',
9714                                                  decode(wbs.SUB_LEVEL,
9715                                                         1, 'Y', 'N')),
9716                                'N_-1_PRG', 'N',
9717                                decode(wbs_hdr.WP_FLAG
9718                                         || '_' || fin_plan.INVERT_ID
9719                                         || '_' || fin_plan.CB
9720                                         || '_' || fin_plan.CO
9721                                         || '_'
9722                                         || to_char(fin_plan.PLAN_VERSION_ID),
9723                                       'N_PRJ_Y_Y_-4', 'N',
9724                                                       'Y'))
9725                   )                                   INSERT_FLAG,
9726             pjp1.PROJECT_ID,
9727             pjp1.PROJECT_ORG_ID,
9728             pjp1.PROJECT_ORGANIZATION_ID,
9729             decode(top_slice.INVERT_ID,
9730                    'PRJ', prg.SUP_EMT_ID,
9731                           decode(wbs.SUB_LEVEL,
9732                                  1, prg.SUP_EMT_ID,
9733                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
9734             pjp1.TIME_ID,
9735             pjp1.PERIOD_TYPE_ID,
9736             pjp1.CALENDAR_TYPE,
9737             pjp1.RBS_AGGR_LEVEL,
9738             'Y'                                       WBS_ROLLUP_FLAG,
9739             pjp1.PRG_ROLLUP_FLAG,
9740             pjp1.CURR_RECORD_TYPE_ID,
9741             pjp1.CURRENCY_CODE,
9742             pjp1.RBS_ELEMENT_ID,
9743             pjp1.RBS_VERSION_ID,
9744             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
9745                    'N_PRG', fin_plan.PLAN_VERSION_ID,
9746                             pjp1.PLAN_VERSION_ID)     PLAN_VERSION_ID,
9747             pjp1.PLAN_TYPE_ID,
9748             pjp1.PLAN_TYPE_CODE,
9749             pjp1.RAW_COST,
9750             pjp1.BRDN_COST,
9751             pjp1.REVENUE,
9752             pjp1.BILL_RAW_COST,
9753             pjp1.BILL_BRDN_COST,
9754             pjp1.BILL_LABOR_RAW_COST,
9755             pjp1.BILL_LABOR_BRDN_COST,
9756             pjp1.BILL_LABOR_HRS,
9757             pjp1.EQUIPMENT_RAW_COST,
9758             pjp1.EQUIPMENT_BRDN_COST,
9759             pjp1.CAPITALIZABLE_RAW_COST,
9760             pjp1.CAPITALIZABLE_BRDN_COST,
9761             pjp1.LABOR_RAW_COST,
9762             pjp1.LABOR_BRDN_COST,
9763             pjp1.LABOR_HRS,
9764             pjp1.LABOR_REVENUE,
9765             pjp1.EQUIPMENT_HOURS,
9766             pjp1.BILLABLE_EQUIPMENT_HOURS,
9767             pjp1.SUP_INV_COMMITTED_COST,
9768             pjp1.PO_COMMITTED_COST,
9769             pjp1.PR_COMMITTED_COST,
9770             pjp1.OTH_COMMITTED_COST,
9771             pjp1.ACT_LABOR_HRS,
9772             pjp1.ACT_EQUIP_HRS,
9773             pjp1.ACT_LABOR_BRDN_COST,
9774             pjp1.ACT_EQUIP_BRDN_COST,
9775             pjp1.ACT_BRDN_COST,
9776             pjp1.ACT_RAW_COST,
9777             pjp1.ACT_REVENUE,
9778             pjp1.ACT_LABOR_RAW_COST,
9779             pjp1.ACT_EQUIP_RAW_COST,
9780             pjp1.ETC_LABOR_HRS,
9781             pjp1.ETC_EQUIP_HRS,
9782             pjp1.ETC_LABOR_BRDN_COST,
9783             pjp1.ETC_EQUIP_BRDN_COST,
9784             pjp1.ETC_BRDN_COST,
9785             pjp1.ETC_RAW_COST,
9786             pjp1.ETC_LABOR_RAW_COST,
9787             pjp1.ETC_EQUIP_RAW_COST,
9788             pjp1.CUSTOM1,
9789             pjp1.CUSTOM2,
9790             pjp1.CUSTOM3,
9791             pjp1.CUSTOM4,
9792             pjp1.CUSTOM5,
9793             pjp1.CUSTOM6,
9794             pjp1.CUSTOM7,
9795             pjp1.CUSTOM8,
9796             pjp1.CUSTOM9,
9797             pjp1.CUSTOM10,
9798             pjp1.CUSTOM11,
9799             pjp1.CUSTOM12,
9800             pjp1.CUSTOM13,
9801             pjp1.CUSTOM14,
9802             pjp1.CUSTOM15
9803           from
9804             PJI_FP_AGGR_PJP1   pjp1,
9805             PJI_PJP_WBS_HEADER wbs_hdr,
9806             PA_XBS_DENORM      wbs,
9807             PJI_XBS_DENORM     prg,
9808             (
9809               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
9810               from DUAL union all
9811               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
9812               from DUAL union all
9813               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
9814               from DUAL union all
9815               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
9816               from DUAL union all
9817               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
9818               from DUAL union all
9819               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
9820               from DUAL union all
9821               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
9822               from DUAL union all
9823               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
9824               from DUAL
9825             ) fin_plan,
9826             (
9827               select 1     WBS_SUP_LEVEL,
9828                      1     WBS_SUB_LEVEL,
9829                      'PRJ' INVERT_ID
9830               from   DUAL
9831               union all
9832               select 1     WBS_SUP_LEVEL,
9833                      1     WBS_SUB_LEVEL,
9834                      'WBS' INVERT_ID
9835               from   DUAL
9836             ) top_slice
9837           where
9838             prg.STRUCT_TYPE         =  'PRG'                       and
9839             prg.SUP_LEVEL           =  l_level                     and
9840             prg.SUB_LEVEL           =  l_level                     and
9841             wbs.STRUCT_TYPE         =  'WBS'                       and
9842             ((wbs.SUP_LEVEL = 1 and
9843               wbs.SUB_LEVEL = 1) or
9844              (wbs.SUP_LEVEL <> wbs.SUB_LEVEL))                     and
9845             wbs.STRUCT_VERSION_ID   =  prg.SUP_ID                  and
9846             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
9847             pjp1.WORKER_ID          =  p_worker_id                 and
9848             pjp1.PRG_LEVEL          in (0, l_level)                and
9849             pjp1.RBS_AGGR_LEVEL     in ('T', 'L')                  and
9850             pjp1.WBS_ROLLUP_FLAG    =  'N'                         and
9851             pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                  and
9852             pjp1.PROJECT_ID         =  wbs_hdr.PROJECT_ID          and
9853             pjp1.PLAN_VERSION_ID    =  wbs_hdr.PLAN_VERSION_ID     and
9854             pjp1.PLAN_TYPE_CODE     =  wbs_hdr.PLAN_TYPE_CODE      and
9855             decode(pjp1.PLAN_VERSION_ID,
9856                    -3, pjp1.PLAN_TYPE_ID,
9857                    -4, pjp1.PLAN_TYPE_ID,
9858                        -1)          =  decode(pjp1.PLAN_VERSION_ID,
9859                                               -3, wbs_hdr.PLAN_TYPE_ID,
9860                                               -4, wbs_hdr.PLAN_TYPE_ID,
9861                                                   -1)              and
9862             wbs.STRUCT_VERSION_ID   =  wbs_hdr.WBS_VERSION_ID      and
9863             pjp1.PROJECT_ELEMENT_ID =  wbs.SUB_EMT_ID              and
9864             wbs_hdr.CB_FLAG         =  fin_plan.CB             (+) and
9865             wbs_hdr.CO_FLAG         =  fin_plan.CO             (+) and
9866             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
9867             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+)
9868           union all
9869           select /*+ parallel(pjp1) */          -- changed for bug 5927368
9870 		 -- get incremental project level amounts from source
9871             to_char(null)                             LINE_TYPE,
9872             wbs_hdr.WBS_VERSION_ID,
9873             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
9874             'Y'                                       PUSHUP_FLAG,
9875             decode(pjp1.RBS_AGGR_LEVEL,
9876                    'L', 'N',
9877                         decode(fin_plan.PLAN_VERSION_ID,
9878                                null, 'N', 'Y'))       INSERT_FLAG,
9879             pjp1.PROJECT_ID,
9880             pjp1.PROJECT_ORG_ID,
9881             pjp1.PROJECT_ORGANIZATION_ID,
9882             pjp1.PROJECT_ELEMENT_ID,
9883             pjp1.TIME_ID,
9884             pjp1.PERIOD_TYPE_ID,
9885             pjp1.CALENDAR_TYPE,
9886             pjp1.RBS_AGGR_LEVEL,
9887             'Y'                                       WBS_ROLLUP_FLAG,
9888             pjp1.PRG_ROLLUP_FLAG,
9889             pjp1.CURR_RECORD_TYPE_ID,
9890             pjp1.CURRENCY_CODE,
9891             pjp1.RBS_ELEMENT_ID,
9892             pjp1.RBS_VERSION_ID,
9893             decode(wbs_hdr.WP_FLAG,
9894                    'N', decode(pjp1.PLAN_VERSION_ID,
9895                                -1, pjp1.PLAN_VERSION_ID,
9896                                -2, pjp1.PLAN_VERSION_ID,
9897                                -3, pjp1.PLAN_VERSION_ID, -- won't exist
9898                                -4, pjp1.PLAN_VERSION_ID, -- won't exist
9899                                    fin_plan.PLAN_VERSION_ID),
9900                         pjp1.PLAN_VERSION_ID)         PLAN_VERSION_ID,
9901             pjp1.PLAN_TYPE_ID,
9902             pjp1.PLAN_TYPE_CODE,
9903             pjp1.RAW_COST,
9904             pjp1.BRDN_COST,
9905             pjp1.REVENUE,
9906             pjp1.BILL_RAW_COST,
9907             pjp1.BILL_BRDN_COST,
9908             pjp1.BILL_LABOR_RAW_COST,
9909             pjp1.BILL_LABOR_BRDN_COST,
9910             pjp1.BILL_LABOR_HRS,
9911             pjp1.EQUIPMENT_RAW_COST,
9912             pjp1.EQUIPMENT_BRDN_COST,
9913             pjp1.CAPITALIZABLE_RAW_COST,
9914             pjp1.CAPITALIZABLE_BRDN_COST,
9915             pjp1.LABOR_RAW_COST,
9916             pjp1.LABOR_BRDN_COST,
9917             pjp1.LABOR_HRS,
9918             pjp1.LABOR_REVENUE,
9919             pjp1.EQUIPMENT_HOURS,
9920             pjp1.BILLABLE_EQUIPMENT_HOURS,
9921             pjp1.SUP_INV_COMMITTED_COST,
9922             pjp1.PO_COMMITTED_COST,
9923             pjp1.PR_COMMITTED_COST,
9924             pjp1.OTH_COMMITTED_COST,
9925             pjp1.ACT_LABOR_HRS,
9926             pjp1.ACT_EQUIP_HRS,
9927             pjp1.ACT_LABOR_BRDN_COST,
9928             pjp1.ACT_EQUIP_BRDN_COST,
9929             pjp1.ACT_BRDN_COST,
9930             pjp1.ACT_RAW_COST,
9931             pjp1.ACT_REVENUE,
9932             pjp1.ACT_LABOR_RAW_COST,
9933             pjp1.ACT_EQUIP_RAW_COST,
9934             pjp1.ETC_LABOR_HRS,
9935             pjp1.ETC_EQUIP_HRS,
9936             pjp1.ETC_LABOR_BRDN_COST,
9937             pjp1.ETC_EQUIP_BRDN_COST,
9938             pjp1.ETC_BRDN_COST,
9939             pjp1.ETC_RAW_COST,
9940             pjp1.ETC_LABOR_RAW_COST,
9941             pjp1.ETC_EQUIP_RAW_COST,
9942             pjp1.CUSTOM1,
9943             pjp1.CUSTOM2,
9944             pjp1.CUSTOM3,
9945             pjp1.CUSTOM4,
9946             pjp1.CUSTOM5,
9947             pjp1.CUSTOM6,
9948             pjp1.CUSTOM7,
9949             pjp1.CUSTOM8,
9950             pjp1.CUSTOM9,
9951             pjp1.CUSTOM10,
9952             pjp1.CUSTOM11,
9953             pjp1.CUSTOM12,
9954             pjp1.CUSTOM13,
9955             pjp1.CUSTOM14,
9956             pjp1.CUSTOM15
9957           from
9958             PJI_FP_AGGR_PJP1   pjp1,
9959             PJI_PJP_WBS_HEADER wbs_hdr,
9960             PJI_XBS_DENORM     prg,
9961             (
9962               select 'Y' CB_FLAG,
9963                      'N' CO_FLAG,
9964                      -3  PLAN_VERSION_ID
9965               from DUAL union all
9966               select 'N' CB_FLAG,
9967                      'Y' CO_FLAG,
9968                      -4  PLAN_VERSION_ID
9969               from DUAL union all
9970               select 'Y' CB_FLAG,
9971                      'Y' CO_FLAG,
9972                      -3  PLAN_VERSION_ID
9973               from DUAL union all
9974               select 'Y' CB_FLAG,
9975                      'Y' CO_FLAG,
9976                      -4  PLAN_VERSION_ID
9977               from DUAL
9978             ) fin_plan
9979           where
9980             prg.STRUCT_TYPE         = 'PRG'                    and
9981             prg.SUP_LEVEL           = l_level                  and
9982             prg.SUB_LEVEL           = l_level                  and
9983             pjp1.WORKER_ID          = p_worker_id              and
9984             pjp1.PROJECT_ID         = prg.SUP_PROJECT_ID       and
9985             pjp1.PROJECT_ELEMENT_ID = prg.SUP_EMT_ID           and
9986             pjp1.PRG_LEVEL          = 0                        and
9987             pjp1.RBS_AGGR_LEVEL     in ('T', 'L')              and
9988             pjp1.WBS_ROLLUP_FLAG    = 'N'                      and
9989             pjp1.PRG_ROLLUP_FLAG    = 'N'                      and
9990             wbs_hdr.PROJECT_ID      = pjp1.PROJECT_ID          and
9991             wbs_hdr.PLAN_VERSION_ID = pjp1.PLAN_VERSION_ID     and
9992             wbs_hdr.PLAN_TYPE_CODE  = pjp1.PLAN_TYPE_CODE      and
9993             decode(wbs_hdr.WP_FLAG,
9994                    'N', decode(pjp1.PLAN_VERSION_ID,
9995                                -1, 'Y',
9996                                -2, 'Y',
9997                                -3, 'Y', -- won't exist
9998                                -4, 'Y', -- won't exist
9999                                    decode(wbs_hdr.CB_FLAG || '_' ||
10000                                           wbs_hdr.CO_FLAG,
10001                                           'Y_Y', 'Y',
10002                                           'N_Y', 'Y',
10003                                           'Y_N', 'Y',
10004                                                  'N')),
10005                         'Y')        =  'Y'                     and
10006             wbs_hdr.WBS_VERSION_ID  = prg.SUP_ID               and
10007             wbs_hdr.CB_FLAG         = fin_plan.CB_FLAG     (+) and
10008             wbs_hdr.CO_FLAG         = fin_plan.CO_FLAG     (+)
10009           union all
10010           select /*+ ordered
10011                      index(fpr PJI_FP_XBS_ACCUM_F_N1) */
10012                  -- get delta task level amounts from Reporting Lines
10013             to_char(null)                             LINE_TYPE,
10014             wbs_hdr.WBS_VERSION_ID,
10015             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
10016             decode(log.EVENT_TYPE,
10017                    'WBS_CHANGE', 'Y',
10018                    'WBS_PUBLISH', 'N')                PUSHUP_FLAG,
10019             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
10020                    'N_PRG', decode(top_slice.INVERT_ID,
10021                                    'PRJ', 'Y',
10022                                    decode(wbs.SUB_LEVEL,
10023                                           1, 'Y', 'N')),
10024                    decode(wbs_hdr.WP_FLAG
10025                             || '_' || fin_plan.INVERT_ID
10026                             || '_' || fin_plan.CB
10027                             || '_' || fin_plan.CO
10028                             || '_' || to_char(fin_plan.PLAN_VERSION_ID),
10029                           'N_PRJ_Y_Y_-4', 'N',
10030                                           'Y'))       INSERT_FLAG,
10031             fpr.PROJECT_ID,
10032             fpr.PROJECT_ORG_ID,
10033             fpr.PROJECT_ORGANIZATION_ID,
10034             decode(top_slice.INVERT_ID,
10035                    'PRJ', prg.SUP_EMT_ID,
10036                           decode(wbs.SUB_LEVEL,
10037                                  1, prg.SUP_EMT_ID,
10038                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
10039             fpr.TIME_ID,
10040             fpr.PERIOD_TYPE_ID,
10041             fpr.CALENDAR_TYPE,
10042             fpr.RBS_AGGR_LEVEL,
10043             'Y'                                       WBS_ROLLUP_FLAG,
10044             fpr.PRG_ROLLUP_FLAG,
10045             fpr.CURR_RECORD_TYPE_ID,
10046             fpr.CURRENCY_CODE,
10047             fpr.RBS_ELEMENT_ID,
10048             fpr.RBS_VERSION_ID,
10049             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
10050                    'N_PRG', fin_plan.PLAN_VERSION_ID,
10051                             fpr.PLAN_VERSION_ID)      PLAN_VERSION_ID,
10052             fpr.PLAN_TYPE_ID,
10053             fpr.PLAN_TYPE_CODE,
10054             wbs.SIGN * fpr.RAW_COST                   RAW_COST,
10055             wbs.SIGN * fpr.BRDN_COST                  BRDN_COST,
10056             wbs.SIGN * fpr.REVENUE                    REVENUE,
10057             wbs.SIGN * fpr.BILL_RAW_COST              BILL_RAW_COST,
10058             wbs.SIGN * fpr.BILL_BRDN_COST             BILL_BRDN_COST,
10059             wbs.SIGN * fpr.BILL_LABOR_RAW_COST        BILL_LABOR_RAW_COST,
10060             wbs.SIGN * fpr.BILL_LABOR_BRDN_COST       BILL_LABOR_BRDN_COST,
10061             wbs.SIGN * fpr.BILL_LABOR_HRS             BILL_LABOR_HRS,
10062             wbs.SIGN * fpr.EQUIPMENT_RAW_COST         EQUIPMENT_RAW_COST,
10063             wbs.SIGN * fpr.EQUIPMENT_BRDN_COST        EQUIPMENT_BRDN_COST,
10064             wbs.SIGN * fpr.CAPITALIZABLE_RAW_COST     CAPITALIZABLE_RAW_COST,
10065             wbs.SIGN * fpr.CAPITALIZABLE_BRDN_COST    CAPITALIZABLE_BRDN_COST,
10066             wbs.SIGN * fpr.LABOR_RAW_COST             LABOR_RAW_COST,
10067             wbs.SIGN * fpr.LABOR_BRDN_COST            LABOR_BRDN_COST,
10068             wbs.SIGN * fpr.LABOR_HRS                  LABOR_HRS,
10069             wbs.SIGN * fpr.LABOR_REVENUE              LABOR_REVENUE,
10070             wbs.SIGN * fpr.EQUIPMENT_HOURS            EQUIPMENT_HOURS,
10071             wbs.SIGN * fpr.BILLABLE_EQUIPMENT_HOURS   BILLABLE_EQUIPMENT_HOURS,
10072             wbs.SIGN * fpr.SUP_INV_COMMITTED_COST     SUP_INV_COMMITTED_COST,
10073             wbs.SIGN * fpr.PO_COMMITTED_COST          PO_COMMITTED_COST,
10074             wbs.SIGN * fpr.PR_COMMITTED_COST          PR_COMMITTED_COST,
10075             wbs.SIGN * fpr.OTH_COMMITTED_COST         OTH_COMMITTED_COST,
10076             wbs.SIGN * fpr.ACT_LABOR_HRS              ACT_LABOR_HRS,
10077             wbs.SIGN * fpr.ACT_EQUIP_HRS              ACT_EQUIP_HRS,
10078             wbs.SIGN * fpr.ACT_LABOR_BRDN_COST        ACT_LABOR_BRDN_COST,
10079             wbs.SIGN * fpr.ACT_EQUIP_BRDN_COST        ACT_EQUIP_BRDN_COST,
10080             wbs.SIGN * fpr.ACT_BRDN_COST              ACT_BRDN_COST,
10081             wbs.SIGN * fpr.ACT_RAW_COST               ACT_RAW_COST,
10082             wbs.SIGN * fpr.ACT_REVENUE                ACT_REVENUE,
10083             wbs.SIGN * fpr.ACT_LABOR_RAW_COST         ACT_LABOR_RAW_COST,
10084             wbs.SIGN * fpr.ACT_EQUIP_RAW_COST         ACT_EQUIP_RAW_COST,
10085             wbs.SIGN * fpr.ETC_LABOR_HRS              ETC_LABOR_HRS,
10086             wbs.SIGN * fpr.ETC_EQUIP_HRS              ETC_EQUIP_HRS,
10087             wbs.SIGN * fpr.ETC_LABOR_BRDN_COST        ETC_LABOR_BRDN_COST,
10088             wbs.SIGN * fpr.ETC_EQUIP_BRDN_COST        ETC_EQUIP_BRDN_COST,
10089             wbs.SIGN * fpr.ETC_BRDN_COST              ETC_BRDN_COST,
10090             wbs.SIGN * fpr.ETC_RAW_COST               ETC_RAW_COST,
10091             wbs.SIGN * fpr.ETC_LABOR_RAW_COST         ETC_LABOR_RAW_COST,
10092             wbs.SIGN * fpr.ETC_EQUIP_RAW_COST         ETC_EQUIP_RAW_COST,
10093             wbs.SIGN * fpr.CUSTOM1                    CUSTOM1,
10094             wbs.SIGN * fpr.CUSTOM2                    CUSTOM2,
10095             wbs.SIGN * fpr.CUSTOM3                    CUSTOM3,
10096             wbs.SIGN * fpr.CUSTOM4                    CUSTOM4,
10097             wbs.SIGN * fpr.CUSTOM5                    CUSTOM5,
10098             wbs.SIGN * fpr.CUSTOM6                    CUSTOM6,
10099             wbs.SIGN * fpr.CUSTOM7                    CUSTOM7,
10100             wbs.SIGN * fpr.CUSTOM8                    CUSTOM8,
10101             wbs.SIGN * fpr.CUSTOM9                    CUSTOM9,
10102             wbs.SIGN * fpr.CUSTOM10                   CUSTOM10,
10103             wbs.SIGN * fpr.CUSTOM11                   CUSTOM11,
10104             wbs.SIGN * fpr.CUSTOM12                   CUSTOM12,
10105             wbs.SIGN * fpr.CUSTOM13                   CUSTOM13,
10106             wbs.SIGN * fpr.CUSTOM14                   CUSTOM14,
10107             wbs.SIGN * fpr.CUSTOM15                   CUSTOM15
10108           from
10109             PJI_PA_PROJ_EVENTS_LOG log,
10110             PJI_PJP_WBS_HEADER     wbs_hdr,
10111             PJI_XBS_DENORM_DELTA   wbs,
10112             PJI_XBS_DENORM         prg,
10113             PJI_FP_XBS_ACCUM_F     fpr,
10114             (
10115               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
10116               from DUAL union all
10117               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
10118               from DUAL union all
10119               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
10120               from DUAL union all
10121               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
10122               from DUAL union all
10123               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
10124               from DUAL union all
10125               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
10126               from DUAL union all
10127               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
10128               from DUAL union all
10129               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
10130               from DUAL
10131             ) fin_plan,
10132             (
10133               select 1     WBS_SUP_LEVEL,
10134                      1     WBS_SUB_LEVEL,
10135                      'PRJ' INVERT_ID
10136               from   DUAL
10137               union all
10138               select 1     WBS_SUP_LEVEL,
10139                      1     WBS_SUB_LEVEL,
10140                      'WBS' INVERT_ID
10141               from   DUAL
10142             ) top_slice
10143           where
10144             prg.STRUCT_TYPE         =  'PRG'                       and
10145             prg.SUP_LEVEL           =  l_level                     and
10146             prg.SUB_LEVEL           =  l_level                     and
10147             wbs.WORKER_ID           =  p_worker_id                 and
10148             wbs.STRUCT_TYPE         =  'WBS'                       and
10149             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
10150             log.WORKER_ID           =  p_worker_id                 and
10151             log.EVENT_ID            =  wbs.EVENT_ID                and
10152             log.EVENT_TYPE          in ('WBS_CHANGE',
10153                                         'WBS_PUBLISH')             and
10154             wbs_hdr.PROJECT_ID      =  log.ATTRIBUTE1              and
10155             wbs_hdr.PLAN_VERSION_ID =  log.ATTRIBUTE3              and
10156             wbs_hdr.WBS_VERSION_ID  =  wbs.STRUCT_VERSION_ID       and
10157             wbs_hdr.PROJECT_ID      =  prg.SUP_PROJECT_ID          and
10158             wbs_hdr.WBS_VERSION_ID  =  prg.SUP_ID                  and
10159             fpr.RBS_AGGR_LEVEL      =  'T'                         and
10160             fpr.WBS_ROLLUP_FLAG     =  'N'                         and
10161             fpr.PRG_ROLLUP_FLAG     in ('Y', 'N')                  and
10162             fpr.PROJECT_ID          =  wbs.SUP_PROJECT_ID          and
10163             fpr.PROJECT_ELEMENT_ID  =  wbs.SUB_EMT_ID              and
10164             fpr.PROJECT_ID          =  wbs_hdr.PROJECT_ID          and
10165             fpr.PLAN_VERSION_ID     =  wbs_hdr.PLAN_VERSION_ID     and
10166             fpr.PLAN_TYPE_CODE      =  wbs_hdr.PLAN_TYPE_CODE      and
10167             decode(fpr.PLAN_VERSION_ID,
10168                    -3, fpr.PLAN_TYPE_ID,
10169                    -4, fpr.PLAN_TYPE_ID,
10170                        -1)          =  decode(fpr.PLAN_VERSION_ID,
10171                                               -3, wbs_hdr.PLAN_TYPE_ID,
10172                                               -4, wbs_hdr.PLAN_TYPE_ID,
10173                                                   -1)              and
10174             wbs_hdr.CB_FLAG         =  fin_plan.CB             (+) and
10175             wbs_hdr.CO_FLAG         =  fin_plan.CO             (+) and
10176             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
10177             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+) and
10178             (wbs.SUP_LEVEL <> wbs.SUB_LEVEL or
10179              (wbs.SUP_LEVEL = 1 and
10180               wbs.SUB_LEVEL = 1))
10181           ) pjp,
10182           (
10183           select /*+ ordered */
10184             prg.SUP_PROJECT_ID,
10185             map.PROJECT_ORG_ID               SUP_PROJECT_ORG_ID,
10186             map.PROJECT_ORGANIZATION_ID      SUP_PROJECT_ORGANIZATION_ID,
10187             prg.SUP_ID,
10188             prg.SUP_EMT_ID,
10189             prg.SUP_LEVEL,
10190             prg.SUB_ID,
10191             prg.SUB_EMT_ID,
10192             prg.SUB_ROLLUP_ID,
10193             invert.INVERT_VALUE              RELATIONSHIP_TYPE,
10194             decode(prg.RELATIONSHIP_TYPE,
10195                    'LW', 'Y',
10196                    'LF', 'N')                WP_FLAG,
10197             'Y'                              PUSHUP_FLAG
10198           from
10199             PJI_PJP_PROJ_BATCH_MAP map,
10200             PJI_XBS_DENORM prg,
10201             (
10202               select 'LF' INVERT_ID, 'LF' INVERT_VALUE from dual union all
10203               select 'LW' INVERT_ID, 'LW' INVERT_VALUE from dual union all
10204               select 'A'  INVERT_ID, 'LF' INVERT_VALUE from dual union all
10205               select 'A'  INVERT_ID, 'LW' INVERT_VALUE from dual
10206             ) invert,
10207             PJI_XBS_DENORM_DELTA prg_delta
10208           where
10209             prg.STRUCT_TYPE               = 'PRG'                           and
10210             prg.SUB_ROLLUP_ID             is not null                       and
10211             prg.SUB_LEVEL                 = l_level                         and
10212             map.WORKER_ID                 = p_worker_id                     and
10213             map.PROJECT_ID                = prg.SUP_PROJECT_ID              and
10214             decode(prg.SUB_LEVEL,
10215                    prg.SUP_LEVEL, 'A',
10216                    prg.RELATIONSHIP_TYPE) = invert.INVERT_ID                and
10217             p_worker_id                   = prg_delta.WORKER_ID         (+) and
10218             prg.STRUCT_TYPE               = prg_delta.STRUCT_TYPE       (+) and
10219             prg.SUP_PROJECT_ID            = prg_delta.SUP_PROJECT_ID    (+) and
10220             prg.SUP_LEVEL                 = prg_delta.SUP_LEVEL         (+) and
10221             prg.SUP_ID                    = prg_delta.SUP_ID            (+) and
10222             prg.SUB_LEVEL                 = prg_delta.SUB_LEVEL         (+) and
10223             prg.SUB_ID                    = prg_delta.SUB_ID            (+) and
10224             prg.RELATIONSHIP_TYPE         = prg_delta.RELATIONSHIP_TYPE (+) and
10225             -1                            = prg_delta.SIGN              (+) and
10226             prg_delta.SUP_PROJECT_ID      is null
10227           )                          prg,
10228           PJI_PJP_WBS_HEADER         wbs_hdr,
10229           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
10230           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
10231           PA_PROJ_WORKPLAN_ATTR      sup_wpa
10232         where
10233           pjp.PROJECT_ID         = sub_ver.PROJECT_ID                (+) and
10234           pjp.WBS_VERSION_ID     = sub_ver.ELEMENT_VERSION_ID        (+) and
10235           'STRUCTURE_PUBLISHED'  = sub_ver.STATUS_CODE               (+) and
10236           pjp.WBS_VERSION_ID     = prg.SUB_ID                        (+) and
10237           pjp.RELATIONSHIP_TYPE  = prg.RELATIONSHIP_TYPE             (+) and
10238           pjp.PUSHUP_FLAG        = prg.PUSHUP_FLAG                   (+) and
10239           prg.SUP_PROJECT_ID     = wbs_hdr.PROJECT_ID                (+) and
10240           prg.SUP_ID             = wbs_hdr.WBS_VERSION_ID            (+) and
10241           prg.WP_FLAG            = wbs_hdr.WP_FLAG                   (+) and
10242           'Y'                    = wbs_hdr.WP_FLAG                   (+) and
10243           wbs_hdr.PROJECT_ID     = sup_ver.PROJECT_ID                (+) and
10244           wbs_hdr.WBS_VERSION_ID = sup_ver.ELEMENT_VERSION_ID        (+) and
10245           'STRUCTURE_PUBLISHED'  = sup_ver.STATUS_CODE               (+) and
10246           'Y'                    = sup_ver.LATEST_EFF_PUBLISHED_FLAG (+) and
10247           prg.SUP_EMT_ID         = sup_wpa.PROJ_ELEMENT_ID           (+)
10248         group by
10249           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10250                  pjp.INSERT_FLAG, 'Y'),
10251           pjp.RELATIONSHIP_TYPE,
10252           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10253                  null, sub_ver.STATUS_CODE),
10254           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10255                  null, sup_ver.STATUS_CODE),
10256           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10257                  null, sup_wpa.WP_ENABLE_VERSION_FLAG),
10258           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10259                  null, decode(pjp.PLAN_VERSION_ID,
10260                               -1, prg.SUP_ID,
10261                               -3, prg.SUP_ID,
10262                               -4, prg.SUP_ID,
10263                                   null)),
10264           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10265                  null, decode(pjp.PLAN_VERSION_ID,
10266                               -1, prg.SUP_EMT_ID,
10267                               -3, prg.SUP_EMT_ID,
10268                               -4, prg.SUP_EMT_ID,
10269                                   null)),
10270           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10271                  null, decode(pjp.PLAN_VERSION_ID,
10272                               -1, prg.WP_FLAG,
10273                               -3, prg.WP_FLAG,
10274                               -4, prg.WP_FLAG,
10275                                   null)),
10276           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10277                  l_level, prg.SUP_LEVEL),
10278           pjp.LINE_TYPE,
10279           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10280                  pjp.PROJECT_ID, prg.SUP_PROJECT_ID),
10281           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10282                  pjp.PROJECT_ORG_ID,
10283                  prg.SUP_PROJECT_ORG_ID),
10284           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10285                  pjp.PROJECT_ORGANIZATION_ID,
10286                  prg.SUP_PROJECT_ORGANIZATION_ID),
10287           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10288                  pjp.PROJECT_ELEMENT_ID,
10289                  prg.SUB_ROLLUP_ID),
10290           pjp.TIME_ID,
10291           pjp.PERIOD_TYPE_ID,
10292           pjp.CALENDAR_TYPE,
10293           pjp.RBS_AGGR_LEVEL,
10294           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10295                  pjp.WBS_ROLLUP_FLAG, 'N'),
10296           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10297                  pjp.PRG_ROLLUP_FLAG, 'Y'),
10298           pjp.CURR_RECORD_TYPE_ID,
10299           pjp.CURRENCY_CODE,
10300           pjp.RBS_ELEMENT_ID,
10301           pjp.RBS_VERSION_ID,
10302           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10303                  pjp.PLAN_VERSION_ID,
10304                  decode(pjp.PLAN_VERSION_ID,
10305                         -1, pjp.PLAN_VERSION_ID,
10306                         -2, pjp.PLAN_VERSION_ID,
10307                         -3, pjp.PLAN_VERSION_ID,
10308                         -4, pjp.PLAN_VERSION_ID,
10309                             wbs_hdr.PLAN_VERSION_ID)),
10310           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10311                  pjp.PLAN_TYPE_ID,
10312                  decode(pjp.PLAN_VERSION_ID,
10313                         -1, pjp.PLAN_TYPE_ID,
10314                         -2, pjp.PLAN_TYPE_ID,
10315                         -3, pjp.PLAN_TYPE_ID,
10316                         -4, pjp.PLAN_TYPE_ID,
10317                             wbs_hdr.PLAN_TYPE_ID)),
10318           pjp.PLAN_TYPE_CODE
10319           )                          pjp1_i,
10320           PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
10321           PA_PROJ_WORKPLAN_ATTR      sup_wpa
10322         where
10323           pjp1_i.INSERT_FLAG  = 'Y'                                and
10324           pjp1_i.PROJECT_ID   = sup_fin_ver.PROJECT_ID         (+) and
10325           pjp1_i.SUP_ID       = sup_fin_ver.ELEMENT_VERSION_ID (+) and
10326           'STRUCTURE_WORKING' = sup_fin_ver.STATUS_CODE        (+) and
10327           pjp1_i.SUP_EMT_ID   = sup_wpa.PROJ_ELEMENT_ID        (+) and
10328           'N'                 = sup_wpa.WP_ENABLE_VERSION_FLAG (+) and
10329           (pjp1_i.SUP_ID is null or
10330            (pjp1_i.SUP_ID is not null and
10331             (sup_fin_ver.PROJECT_ID is not null or
10332              sup_wpa.PROJ_ELEMENT_ID is not null)));
10333 
10334     elsif (p_worker_id =3) then
10335       -- Query for Partition 3
10336 
10337         insert /*+ parallel(PJI_FP_AGGR_PJP1) */
10338                    into PJI_FP_AGGR_PJP1 partition(P3)
10339 	(
10340           WORKER_ID,
10341           RECORD_TYPE,
10342           PRG_LEVEL,
10343           LINE_TYPE,
10344           PROJECT_ID,
10345           PROJECT_ORG_ID,
10346           PROJECT_ORGANIZATION_ID,
10347           PROJECT_ELEMENT_ID,
10348           TIME_ID,
10349           PERIOD_TYPE_ID,
10350           CALENDAR_TYPE,
10351           RBS_AGGR_LEVEL,
10352           WBS_ROLLUP_FLAG,
10353           PRG_ROLLUP_FLAG,
10354           CURR_RECORD_TYPE_ID,
10355           CURRENCY_CODE,
10356           RBS_ELEMENT_ID,
10357           RBS_VERSION_ID,
10358           PLAN_VERSION_ID,
10359           PLAN_TYPE_ID,
10360           PLAN_TYPE_CODE,
10361           RAW_COST,
10362           BRDN_COST,
10363           REVENUE,
10364           BILL_RAW_COST,
10365           BILL_BRDN_COST,
10366           BILL_LABOR_RAW_COST,
10367           BILL_LABOR_BRDN_COST,
10368           BILL_LABOR_HRS,
10369           EQUIPMENT_RAW_COST,
10370           EQUIPMENT_BRDN_COST,
10371           CAPITALIZABLE_RAW_COST,
10372           CAPITALIZABLE_BRDN_COST,
10373           LABOR_RAW_COST,
10374           LABOR_BRDN_COST,
10375           LABOR_HRS,
10376           LABOR_REVENUE,
10377           EQUIPMENT_HOURS,
10378           BILLABLE_EQUIPMENT_HOURS,
10379           SUP_INV_COMMITTED_COST,
10380           PO_COMMITTED_COST,
10381           PR_COMMITTED_COST,
10382           OTH_COMMITTED_COST,
10383           ACT_LABOR_HRS,
10384           ACT_EQUIP_HRS,
10385           ACT_LABOR_BRDN_COST,
10386           ACT_EQUIP_BRDN_COST,
10387           ACT_BRDN_COST,
10388           ACT_RAW_COST,
10389           ACT_REVENUE,
10390           ACT_LABOR_RAW_COST,
10391           ACT_EQUIP_RAW_COST,
10392           ETC_LABOR_HRS,
10393           ETC_EQUIP_HRS,
10394           ETC_LABOR_BRDN_COST,
10395           ETC_EQUIP_BRDN_COST,
10396           ETC_BRDN_COST,
10397           ETC_RAW_COST,
10398           ETC_LABOR_RAW_COST,
10399           ETC_EQUIP_RAW_COST,
10400           CUSTOM1,
10401           CUSTOM2,
10402           CUSTOM3,
10403           CUSTOM4,
10404           CUSTOM5,
10405           CUSTOM6,
10406           CUSTOM7,
10407           CUSTOM8,
10408           CUSTOM9,
10409           CUSTOM10,
10410           CUSTOM11,
10411           CUSTOM12,
10412           CUSTOM13,
10413           CUSTOM14,
10414           CUSTOM15
10415         )
10416         select
10417           pjp1_i.WORKER_ID,
10418           pjp1_i.RECORD_TYPE,
10419           pjp1_i.PRG_LEVEL,
10420           pjp1_i.LINE_TYPE,
10421           pjp1_i.PROJECT_ID,
10422           pjp1_i.PROJECT_ORG_ID,
10423           pjp1_i.PROJECT_ORGANIZATION_ID,
10424           pjp1_i.PROJECT_ELEMENT_ID,
10425           pjp1_i.TIME_ID,
10426           pjp1_i.PERIOD_TYPE_ID,
10427           pjp1_i.CALENDAR_TYPE,
10428           pjp1_i.RBS_AGGR_LEVEL,
10429           pjp1_i.WBS_ROLLUP_FLAG,
10430           pjp1_i.PRG_ROLLUP_FLAG,
10431           pjp1_i.CURR_RECORD_TYPE_ID,
10432           pjp1_i.CURRENCY_CODE,
10433           pjp1_i.RBS_ELEMENT_ID,
10434           pjp1_i.RBS_VERSION_ID,
10435           pjp1_i.PLAN_VERSION_ID,
10436           pjp1_i.PLAN_TYPE_ID,
10437           pjp1_i.PLAN_TYPE_CODE,
10438           decode(pjp1_i.RELATIONSHIP_TYPE
10439                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10440                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10441                    || '_' || pjp1_i.SUB_STATUS_CODE
10442                    || '_' || pjp1_i.SUP_STATUS_CODE,
10443                  'LW_N_Y__', to_number(null),
10444                  decode(pjp1_i.RELATIONSHIP_TYPE
10445                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
10446                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
10447                           || '_' || pjp1_i.SUP_VER_ENABLED
10448                           || '_' || l_fpm_upgrade
10449                           || '_' || l_partial_mode,
10450                         'LW_N_Y_Y_C_', to_number(null),
10451                  pjp1_i.RAW_COST))                    RAW_COST,
10452           decode(pjp1_i.RELATIONSHIP_TYPE
10453                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10454                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10455                    || '_' || pjp1_i.SUB_STATUS_CODE
10456                    || '_' || pjp1_i.SUP_STATUS_CODE,
10457                  'LW_N_Y__', to_number(null),
10458                  decode(pjp1_i.RELATIONSHIP_TYPE
10459                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
10460                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
10461                           || '_' || pjp1_i.SUP_VER_ENABLED
10462                           || '_' || l_fpm_upgrade
10463                           || '_' || l_partial_mode,
10464                         'LW_N_Y_Y_C_', to_number(null),
10465                  pjp1_i.BRDN_COST))                   BRDN_COST,
10466           decode(pjp1_i.RELATIONSHIP_TYPE
10467                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10468                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10469                    || '_' || pjp1_i.SUB_STATUS_CODE
10470                    || '_' || pjp1_i.SUP_STATUS_CODE,
10471                  'LW_N_Y__', to_number(null),
10472                  decode(pjp1_i.RELATIONSHIP_TYPE
10473                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
10474                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
10475                           || '_' || pjp1_i.SUP_VER_ENABLED
10476                           || '_' || l_fpm_upgrade
10477                           || '_' || l_partial_mode,
10478                         'LW_N_Y_Y_C_', to_number(null),
10479                  pjp1_i.REVENUE))                     REVENUE,
10480           decode(pjp1_i.RELATIONSHIP_TYPE
10481                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10482                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10483                    || '_' || pjp1_i.SUB_STATUS_CODE
10484                    || '_' || pjp1_i.SUP_STATUS_CODE,
10485                  'LW_N_Y__', to_number(null),
10486                  decode(pjp1_i.RELATIONSHIP_TYPE
10487                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
10488                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
10489                           || '_' || pjp1_i.SUP_VER_ENABLED
10490                           || '_' || l_fpm_upgrade
10491                           || '_' || l_partial_mode,
10492                         'LW_N_Y_Y_C_', to_number(null),
10493                  pjp1_i.BILL_RAW_COST))               BILL_RAW_COST,
10494           decode(pjp1_i.RELATIONSHIP_TYPE
10495                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10496                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10497                    || '_' || pjp1_i.SUB_STATUS_CODE
10498                    || '_' || pjp1_i.SUP_STATUS_CODE,
10499                  'LW_N_Y__', to_number(null),
10500                  decode(pjp1_i.RELATIONSHIP_TYPE
10501                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
10502                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
10503                           || '_' || pjp1_i.SUP_VER_ENABLED
10504                           || '_' || l_fpm_upgrade
10505                           || '_' || l_partial_mode,
10506                         'LW_N_Y_Y_C_', to_number(null),
10507                  pjp1_i.BILL_BRDN_COST))              BILL_BRDN_COST,
10508           decode(pjp1_i.RELATIONSHIP_TYPE
10509                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10510                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10511                    || '_' || pjp1_i.SUB_STATUS_CODE
10512                    || '_' || pjp1_i.SUP_STATUS_CODE,
10513                  'LW_N_Y__', to_number(null),
10514                  decode(pjp1_i.RELATIONSHIP_TYPE
10515                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
10516                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
10517                           || '_' || pjp1_i.SUP_VER_ENABLED
10518                           || '_' || l_fpm_upgrade
10519                           || '_' || l_partial_mode,
10520                         'LW_N_Y_Y_C_', to_number(null),
10521                  pjp1_i.BILL_LABOR_RAW_COST))         BILL_LABOR_RAW_COST,
10522           decode(pjp1_i.RELATIONSHIP_TYPE
10523                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10524                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10525                    || '_' || pjp1_i.SUB_STATUS_CODE
10526                    || '_' || pjp1_i.SUP_STATUS_CODE,
10527                  'LW_N_Y__', to_number(null),
10528                  decode(pjp1_i.RELATIONSHIP_TYPE
10529                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
10530                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
10531                           || '_' || pjp1_i.SUP_VER_ENABLED
10532                           || '_' || l_fpm_upgrade
10533                           || '_' || l_partial_mode,
10534                         'LW_N_Y_Y_C_', to_number(null),
10535                  pjp1_i.BILL_LABOR_BRDN_COST))        BILL_LABOR_BRDN_COST,
10536           decode(pjp1_i.RELATIONSHIP_TYPE
10537                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10538                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10539                    || '_' || pjp1_i.SUB_STATUS_CODE
10540                    || '_' || pjp1_i.SUP_STATUS_CODE,
10541                  'LW_N_Y__', to_number(null),
10542                  decode(pjp1_i.RELATIONSHIP_TYPE
10543                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
10544                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
10545                           || '_' || pjp1_i.SUP_VER_ENABLED
10546                           || '_' || l_fpm_upgrade
10547                           || '_' || l_partial_mode,
10548                         'LW_N_Y_Y_C_', to_number(null),
10549                  pjp1_i.BILL_LABOR_HRS))              BILL_LABOR_HRS,
10550           decode(pjp1_i.RELATIONSHIP_TYPE
10551                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10552                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10553                    || '_' || pjp1_i.SUB_STATUS_CODE
10554                    || '_' || pjp1_i.SUP_STATUS_CODE,
10555                  'LW_N_Y__', to_number(null),
10556                  decode(pjp1_i.RELATIONSHIP_TYPE
10557                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
10558                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
10559                           || '_' || pjp1_i.SUP_VER_ENABLED
10560                           || '_' || l_fpm_upgrade
10561                           || '_' || l_partial_mode,
10562                         'LW_N_Y_Y_C_', to_number(null),
10563                  pjp1_i.EQUIPMENT_RAW_COST))          EQUIPMENT_RAW_COST,
10564           decode(pjp1_i.RELATIONSHIP_TYPE
10565                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10566                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10567                    || '_' || pjp1_i.SUB_STATUS_CODE
10568                    || '_' || pjp1_i.SUP_STATUS_CODE,
10569                  'LW_N_Y__', to_number(null),
10570                  decode(pjp1_i.RELATIONSHIP_TYPE
10571                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
10572                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
10573                           || '_' || pjp1_i.SUP_VER_ENABLED
10574                           || '_' || l_fpm_upgrade
10575                           || '_' || l_partial_mode,
10576                         'LW_N_Y_Y_C_', to_number(null),
10577                  pjp1_i.EQUIPMENT_BRDN_COST))         EQUIPMENT_BRDN_COST,
10578           decode(pjp1_i.RELATIONSHIP_TYPE
10579                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10580                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10581                    || '_' || pjp1_i.SUB_STATUS_CODE
10582                    || '_' || pjp1_i.SUP_STATUS_CODE,
10583                  'LW_N_Y__', to_number(null),
10584                  decode(pjp1_i.RELATIONSHIP_TYPE
10585                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
10586                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
10587                           || '_' || pjp1_i.SUP_VER_ENABLED
10588                           || '_' || l_fpm_upgrade
10589                           || '_' || l_partial_mode,
10590                         'LW_N_Y_Y_C_', to_number(null),
10591                  pjp1_i.CAPITALIZABLE_RAW_COST))      CAPITALIZABLE_RAW_COST,
10592           decode(pjp1_i.RELATIONSHIP_TYPE
10593                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10594                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10595                    || '_' || pjp1_i.SUB_STATUS_CODE
10596                    || '_' || pjp1_i.SUP_STATUS_CODE,
10597                  'LW_N_Y__', to_number(null),
10598                  decode(pjp1_i.RELATIONSHIP_TYPE
10599                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
10600                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
10601                           || '_' || pjp1_i.SUP_VER_ENABLED
10602                           || '_' || l_fpm_upgrade
10603                           || '_' || l_partial_mode,
10604                         'LW_N_Y_Y_C_', to_number(null),
10605                  pjp1_i.CAPITALIZABLE_BRDN_COST))     CAPITALIZABLE_BRDN_COST,
10606           decode(pjp1_i.RELATIONSHIP_TYPE
10607                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10608                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10609                    || '_' || pjp1_i.SUB_STATUS_CODE
10610                    || '_' || pjp1_i.SUP_STATUS_CODE,
10611                  'LW_N_Y__', to_number(null),
10612                  decode(pjp1_i.RELATIONSHIP_TYPE
10613                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
10614                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
10615                           || '_' || pjp1_i.SUP_VER_ENABLED
10616                           || '_' || l_fpm_upgrade
10617                           || '_' || l_partial_mode,
10618                         'LW_N_Y_Y_C_', to_number(null),
10619                  pjp1_i.LABOR_RAW_COST))              LABOR_RAW_COST,
10620           decode(pjp1_i.RELATIONSHIP_TYPE
10621                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10622                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10623                    || '_' || pjp1_i.SUB_STATUS_CODE
10624                    || '_' || pjp1_i.SUP_STATUS_CODE,
10625                  'LW_N_Y__', to_number(null),
10626                  decode(pjp1_i.RELATIONSHIP_TYPE
10627                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
10628                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
10629                           || '_' || pjp1_i.SUP_VER_ENABLED
10630                           || '_' || l_fpm_upgrade
10631                           || '_' || l_partial_mode,
10632                         'LW_N_Y_Y_C_', to_number(null),
10633                  pjp1_i.LABOR_BRDN_COST))             LABOR_BRDN_COST,
10634           decode(pjp1_i.RELATIONSHIP_TYPE
10635                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10636                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10637                    || '_' || pjp1_i.SUB_STATUS_CODE
10638                    || '_' || pjp1_i.SUP_STATUS_CODE,
10639                  'LW_N_Y__', to_number(null),
10640                  decode(pjp1_i.RELATIONSHIP_TYPE
10641                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
10642                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
10643                           || '_' || pjp1_i.SUP_VER_ENABLED
10644                           || '_' || l_fpm_upgrade
10645                           || '_' || l_partial_mode,
10646                         'LW_N_Y_Y_C_', to_number(null),
10647                  pjp1_i.LABOR_HRS))                   LABOR_HRS,
10648           decode(pjp1_i.RELATIONSHIP_TYPE
10649                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10650                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10651                    || '_' || pjp1_i.SUB_STATUS_CODE
10652                    || '_' || pjp1_i.SUP_STATUS_CODE,
10653                  'LW_N_Y__', to_number(null),
10654                  decode(pjp1_i.RELATIONSHIP_TYPE
10655                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
10656                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
10657                           || '_' || pjp1_i.SUP_VER_ENABLED
10658                           || '_' || l_fpm_upgrade
10659                           || '_' || l_partial_mode,
10660                         'LW_N_Y_Y_C_', to_number(null),
10661                  pjp1_i.LABOR_REVENUE))               LABOR_REVENUE,
10662           decode(pjp1_i.RELATIONSHIP_TYPE
10663                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10664                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10665                    || '_' || pjp1_i.SUB_STATUS_CODE
10666                    || '_' || pjp1_i.SUP_STATUS_CODE,
10667                  'LW_N_Y__', to_number(null),
10668                  decode(pjp1_i.RELATIONSHIP_TYPE
10669                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
10670                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
10671                           || '_' || pjp1_i.SUP_VER_ENABLED
10672                           || '_' || l_fpm_upgrade
10673                           || '_' || l_partial_mode,
10674                         'LW_N_Y_Y_C_', to_number(null),
10675                  pjp1_i.EQUIPMENT_HOURS))             EQUIPMENT_HOURS,
10676           decode(pjp1_i.RELATIONSHIP_TYPE
10677                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10678                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10679                    || '_' || pjp1_i.SUB_STATUS_CODE
10680                    || '_' || pjp1_i.SUP_STATUS_CODE,
10681                  'LW_N_Y__', to_number(null),
10682                  decode(pjp1_i.RELATIONSHIP_TYPE
10683                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
10684                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
10685                           || '_' || pjp1_i.SUP_VER_ENABLED
10686                           || '_' || l_fpm_upgrade
10687                           || '_' || l_partial_mode,
10688                         'LW_N_Y_Y_C_', to_number(null),
10689                  pjp1_i.BILLABLE_EQUIPMENT_HOURS))    BILLABLE_EQUIPMENT_HOURS,
10690           decode(pjp1_i.RELATIONSHIP_TYPE
10691                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10692                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10693                    || '_' || pjp1_i.SUB_STATUS_CODE
10694                    || '_' || pjp1_i.SUP_STATUS_CODE,
10695                  'LW_N_Y__', to_number(null),
10696                  decode(pjp1_i.RELATIONSHIP_TYPE
10697                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
10698                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
10699                           || '_' || pjp1_i.SUP_VER_ENABLED
10700                           || '_' || l_fpm_upgrade
10701                           || '_' || l_partial_mode,
10702                         'LW_N_Y_Y_C_', to_number(null),
10703                  pjp1_i.SUP_INV_COMMITTED_COST))      SUP_INV_COMMITTED_COST,
10704           decode(pjp1_i.RELATIONSHIP_TYPE
10705                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10706                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10707                    || '_' || pjp1_i.SUB_STATUS_CODE
10708                    || '_' || pjp1_i.SUP_STATUS_CODE,
10709                  'LW_N_Y__', to_number(null),
10710                  decode(pjp1_i.RELATIONSHIP_TYPE
10711                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
10712                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
10713                           || '_' || pjp1_i.SUP_VER_ENABLED
10714                           || '_' || l_fpm_upgrade
10715                           || '_' || l_partial_mode,
10716                         'LW_N_Y_Y_C_', to_number(null),
10717                  pjp1_i.PO_COMMITTED_COST))           PO_COMMITTED_COST,
10718           decode(pjp1_i.RELATIONSHIP_TYPE
10719                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10720                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10721                    || '_' || pjp1_i.SUB_STATUS_CODE
10722                    || '_' || pjp1_i.SUP_STATUS_CODE,
10723                  'LW_N_Y__', to_number(null),
10724                  decode(pjp1_i.RELATIONSHIP_TYPE
10725                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
10726                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
10727                           || '_' || pjp1_i.SUP_VER_ENABLED
10728                           || '_' || l_fpm_upgrade
10729                           || '_' || l_partial_mode,
10730                         'LW_N_Y_Y_C_', to_number(null),
10731                  pjp1_i.PR_COMMITTED_COST))           PR_COMMITTED_COST,
10732           decode(pjp1_i.RELATIONSHIP_TYPE
10733                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10734                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10735                    || '_' || pjp1_i.SUB_STATUS_CODE
10736                    || '_' || pjp1_i.SUP_STATUS_CODE,
10737                  'LW_N_Y__', to_number(null),
10738                  decode(pjp1_i.RELATIONSHIP_TYPE
10739                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
10740                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
10741                           || '_' || pjp1_i.SUP_VER_ENABLED
10742                           || '_' || l_fpm_upgrade
10743                           || '_' || l_partial_mode,
10744                         'LW_N_Y_Y_C_', to_number(null),
10745                  pjp1_i.OTH_COMMITTED_COST))          OTH_COMMITTED_COST,
10746           decode(pjp1_i.RELATIONSHIP_TYPE
10747                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10748                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10749                    || '_' || pjp1_i.SUP_STATUS_CODE
10750                    || '_' || l_partial_mode,
10751                  'LW_N_Y__', to_number(null),
10752                           pjp1_i.ACT_LABOR_HRS)       ACT_LABOR_HRS,
10753           decode(pjp1_i.RELATIONSHIP_TYPE
10754                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10755                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10756                    || '_' || pjp1_i.SUP_STATUS_CODE
10757                    || '_' || l_partial_mode,
10758                  'LW_N_Y__', to_number(null),
10759                           pjp1_i.ACT_EQUIP_HRS)       ACT_EQUIP_HRS,
10760           decode(pjp1_i.RELATIONSHIP_TYPE
10761                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10762                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10763                    || '_' || pjp1_i.SUP_STATUS_CODE
10764                    || '_' || l_partial_mode,
10765                  'LW_N_Y__', to_number(null),
10766                           pjp1_i.ACT_LABOR_BRDN_COST) ACT_LABOR_BRDN_COST,
10767           decode(pjp1_i.RELATIONSHIP_TYPE
10768                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10769                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10770                    || '_' || pjp1_i.SUP_STATUS_CODE
10771                    || '_' || l_partial_mode,
10772                  'LW_N_Y__', to_number(null),
10773                           pjp1_i.ACT_EQUIP_BRDN_COST) ACT_EQUIP_BRDN_COST,
10774           decode(pjp1_i.RELATIONSHIP_TYPE
10775                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10776                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10777                    || '_' || pjp1_i.SUP_STATUS_CODE
10778                    || '_' || l_partial_mode,
10779                  'LW_N_Y__', to_number(null),
10780                           pjp1_i.ACT_BRDN_COST)       ACT_BRDN_COST,
10781           decode(pjp1_i.RELATIONSHIP_TYPE
10782                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10783                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10784                    || '_' || pjp1_i.SUP_STATUS_CODE
10785                    || '_' || l_partial_mode,
10786                  'LW_N_Y__', to_number(null),
10787                           pjp1_i.ACT_RAW_COST)        ACT_RAW_COST,
10788           decode(pjp1_i.RELATIONSHIP_TYPE
10789                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10790                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10791                    || '_' || pjp1_i.SUP_STATUS_CODE
10792                    || '_' || l_partial_mode,
10793                  'LW_N_Y__', to_number(null),
10794                           pjp1_i.ACT_REVENUE)         ACT_REVENUE,
10795           decode(pjp1_i.RELATIONSHIP_TYPE
10796                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10797                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10798                    || '_' || pjp1_i.SUP_STATUS_CODE
10799                    || '_' || l_partial_mode,
10800                  'LW_N_Y__', to_number(null),
10801                           pjp1_i.ACT_LABOR_RAW_COST)  ACT_LABOR_RAW_COST,
10802           decode(pjp1_i.RELATIONSHIP_TYPE
10803                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10804                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10805                    || '_' || pjp1_i.SUP_STATUS_CODE
10806                    || '_' || l_partial_mode,
10807                  'LW_N_Y__', to_number(null),
10808                           pjp1_i.ACT_EQUIP_RAW_COST)  ACT_EQUIP_RAW_COST,
10809           decode(pjp1_i.RELATIONSHIP_TYPE
10810                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10811                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10812                    || '_' || pjp1_i.SUP_STATUS_CODE
10813                    || '_' || l_partial_mode,
10814                  'LW_N_Y__', to_number(null),
10815                           pjp1_i.ETC_LABOR_HRS)       ETC_LABOR_HRS,
10816           decode(pjp1_i.RELATIONSHIP_TYPE
10817                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10818                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10819                    || '_' || pjp1_i.SUP_STATUS_CODE
10820                    || '_' || l_partial_mode,
10821                  'LW_N_Y__', to_number(null),
10822                           pjp1_i.ETC_EQUIP_HRS)       ETC_EQUIP_HRS,
10823           decode(pjp1_i.RELATIONSHIP_TYPE
10824                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10825                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10826                    || '_' || pjp1_i.SUP_STATUS_CODE
10827                    || '_' || l_partial_mode,
10828                  'LW_N_Y__', to_number(null),
10829                           pjp1_i.ETC_LABOR_BRDN_COST) ETC_LABOR_BRDN_COST,
10830           decode(pjp1_i.RELATIONSHIP_TYPE
10831                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10832                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10833                    || '_' || pjp1_i.SUP_STATUS_CODE
10834                    || '_' || l_partial_mode,
10835                  'LW_N_Y__', to_number(null),
10836                           pjp1_i.ETC_EQUIP_BRDN_COST) ETC_EQUIP_BRDN_COST,
10837           decode(pjp1_i.RELATIONSHIP_TYPE
10838                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10839                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10840                    || '_' || pjp1_i.SUP_STATUS_CODE
10841                    || '_' || l_partial_mode,
10842                  'LW_N_Y__', to_number(null),
10843                           pjp1_i.ETC_BRDN_COST)       ETC_BRDN_COST,
10844           decode(pjp1_i.RELATIONSHIP_TYPE
10845                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10846                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10847                    || '_' || pjp1_i.SUP_STATUS_CODE
10848                    || '_' || l_partial_mode,
10849                  'LW_N_Y__', to_number(null),
10850                           pjp1_i.ETC_RAW_COST)        ETC_RAW_COST,
10851           decode(pjp1_i.RELATIONSHIP_TYPE
10852                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10853                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10854                    || '_' || pjp1_i.SUP_STATUS_CODE
10855                    || '_' || l_partial_mode,
10856                  'LW_N_Y__', to_number(null),
10857                           pjp1_i.ETC_LABOR_RAW_COST)  ETC_LABOR_RAW_COST,
10858           decode(pjp1_i.RELATIONSHIP_TYPE
10859                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
10860                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
10861                    || '_' || pjp1_i.SUP_STATUS_CODE
10862                    || '_' || l_partial_mode,
10863                  'LW_N_Y__', to_number(null),
10864                           pjp1_i.ETC_EQUIP_RAW_COST)  ETC_EQUIP_RAW_COST,
10865           pjp1_i.CUSTOM1,
10866           pjp1_i.CUSTOM2,
10867           pjp1_i.CUSTOM3,
10868           pjp1_i.CUSTOM4,
10869           pjp1_i.CUSTOM5,
10870           pjp1_i.CUSTOM6,
10871           pjp1_i.CUSTOM7,
10872           pjp1_i.CUSTOM8,
10873           pjp1_i.CUSTOM9,
10874           pjp1_i.CUSTOM10,
10875           pjp1_i.CUSTOM11,
10876           pjp1_i.CUSTOM12,
10877           pjp1_i.CUSTOM13,
10878           pjp1_i.CUSTOM14,
10879           pjp1_i.CUSTOM15
10880         from
10881           (
10882         select
10883           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10884                  pjp.INSERT_FLAG, 'Y')                INSERT_FLAG,
10885           pjp.RELATIONSHIP_TYPE,
10886           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10887                  null, sub_ver.STATUS_CODE)           SUB_STATUS_CODE,
10888           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10889                  null, sup_ver.STATUS_CODE)           SUP_STATUS_CODE,
10890           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10891                  null, sup_wpa.WP_ENABLE_VERSION_FLAG)SUP_VER_ENABLED,
10892           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10893                  null, decode(pjp.PLAN_VERSION_ID,
10894                               -1, prg.SUP_ID,
10895                               -3, prg.SUP_ID,
10896                               -4, prg.SUP_ID,
10897                                   null))              SUP_ID,
10898           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10899                  null, decode(pjp.PLAN_VERSION_ID,
10900                               -1, prg.SUP_EMT_ID,
10901                               -3, prg.SUP_EMT_ID,
10902                               -4, prg.SUP_EMT_ID,
10903                                   null))              SUP_EMT_ID,
10904           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10905                  null, decode(pjp.PLAN_VERSION_ID,
10906                               -1, prg.WP_FLAG,
10907                               -3, prg.WP_FLAG,
10908                               -4, prg.WP_FLAG,
10909                                   null))              SUP_WP_FLAG,
10910           p_worker_id                                 WORKER_ID,
10911           'W'                                         RECORD_TYPE,
10912           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10913                  l_level, prg.SUP_LEVEL)              PRG_LEVEL,
10914           pjp.LINE_TYPE,
10915           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10916                  pjp.PROJECT_ID, prg.SUP_PROJECT_ID)  PROJECT_ID,
10917           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10918                  pjp.PROJECT_ORG_ID,
10919                  prg.SUP_PROJECT_ORG_ID)              PROJECT_ORG_ID,
10920           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10921                  pjp.PROJECT_ORGANIZATION_ID,
10922                  prg.SUP_PROJECT_ORGANIZATION_ID)     PROJECT_ORGANIZATION_ID,
10923           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10924                  pjp.PROJECT_ELEMENT_ID,
10925                  prg.SUB_ROLLUP_ID)                   PROJECT_ELEMENT_ID,
10926           pjp.TIME_ID,
10927           pjp.PERIOD_TYPE_ID,
10928           pjp.CALENDAR_TYPE,
10929           pjp.RBS_AGGR_LEVEL,
10930           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10931                  pjp.WBS_ROLLUP_FLAG, 'N')            WBS_ROLLUP_FLAG,
10932           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10933                  pjp.PRG_ROLLUP_FLAG, 'Y')            PRG_ROLLUP_FLAG,
10934           pjp.CURR_RECORD_TYPE_ID,
10935           pjp.CURRENCY_CODE,
10936           pjp.RBS_ELEMENT_ID,
10937           pjp.RBS_VERSION_ID,
10938           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10939                  pjp.PLAN_VERSION_ID,
10940                  decode(pjp.PLAN_VERSION_ID,
10941                         -1, pjp.PLAN_VERSION_ID,
10942                         -2, pjp.PLAN_VERSION_ID,
10943                         -3, pjp.PLAN_VERSION_ID,
10944                         -4, pjp.PLAN_VERSION_ID,
10945                             wbs_hdr.PLAN_VERSION_ID)) PLAN_VERSION_ID,
10946           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
10947                  pjp.PLAN_TYPE_ID,
10948                  decode(pjp.PLAN_VERSION_ID,
10949                         -1, pjp.PLAN_TYPE_ID,
10950                         -2, pjp.PLAN_TYPE_ID,
10951                         -3, pjp.PLAN_TYPE_ID,
10952                         -4, pjp.PLAN_TYPE_ID,
10953                             wbs_hdr.PLAN_TYPE_ID))    PLAN_TYPE_ID,
10954           pjp.PLAN_TYPE_CODE,
10955           sum(pjp.RAW_COST)                           RAW_COST,
10956           sum(pjp.BRDN_COST)                          BRDN_COST,
10957           sum(pjp.REVENUE)                            REVENUE,
10958           sum(pjp.BILL_RAW_COST)                      BILL_RAW_COST,
10959           sum(pjp.BILL_BRDN_COST)                     BILL_BRDN_COST,
10960           sum(pjp.BILL_LABOR_RAW_COST)                BILL_LABOR_RAW_COST,
10961           sum(pjp.BILL_LABOR_BRDN_COST)               BILL_LABOR_BRDN_COST,
10962           sum(pjp.BILL_LABOR_HRS)                     BILL_LABOR_HRS,
10963           sum(pjp.EQUIPMENT_RAW_COST)                 EQUIPMENT_RAW_COST,
10964           sum(pjp.EQUIPMENT_BRDN_COST)                EQUIPMENT_BRDN_COST,
10965           sum(pjp.CAPITALIZABLE_RAW_COST)             CAPITALIZABLE_RAW_COST,
10966           sum(pjp.CAPITALIZABLE_BRDN_COST)            CAPITALIZABLE_BRDN_COST,
10967           sum(pjp.LABOR_RAW_COST)                     LABOR_RAW_COST,
10968           sum(pjp.LABOR_BRDN_COST)                    LABOR_BRDN_COST,
10969           sum(pjp.LABOR_HRS)                          LABOR_HRS,
10970           sum(pjp.LABOR_REVENUE)                      LABOR_REVENUE,
10971           sum(pjp.EQUIPMENT_HOURS)                    EQUIPMENT_HOURS,
10972           sum(pjp.BILLABLE_EQUIPMENT_HOURS)           BILLABLE_EQUIPMENT_HOURS,
10973           sum(pjp.SUP_INV_COMMITTED_COST)             SUP_INV_COMMITTED_COST,
10974           sum(pjp.PO_COMMITTED_COST)                  PO_COMMITTED_COST,
10975           sum(pjp.PR_COMMITTED_COST)                  PR_COMMITTED_COST,
10976           sum(pjp.OTH_COMMITTED_COST)                 OTH_COMMITTED_COST,
10977           sum(pjp.ACT_LABOR_HRS)                      ACT_LABOR_HRS,
10978           sum(pjp.ACT_EQUIP_HRS)                      ACT_EQUIP_HRS,
10979           sum(pjp.ACT_LABOR_BRDN_COST)                ACT_LABOR_BRDN_COST,
10980           sum(pjp.ACT_EQUIP_BRDN_COST)                ACT_EQUIP_BRDN_COST,
10981           sum(pjp.ACT_BRDN_COST)                      ACT_BRDN_COST,
10982           sum(pjp.ACT_RAW_COST)                       ACT_RAW_COST,
10983           sum(pjp.ACT_REVENUE)                        ACT_REVENUE,
10984           sum(pjp.ACT_LABOR_RAW_COST)                 ACT_LABOR_RAW_COST,
10985           sum(pjp.ACT_EQUIP_RAW_COST)                 ACT_EQUIP_RAW_COST,
10986           sum(pjp.ETC_LABOR_HRS)                      ETC_LABOR_HRS,
10987           sum(pjp.ETC_EQUIP_HRS)                      ETC_EQUIP_HRS,
10988           sum(pjp.ETC_LABOR_BRDN_COST)                ETC_LABOR_BRDN_COST,
10989           sum(pjp.ETC_EQUIP_BRDN_COST)                ETC_EQUIP_BRDN_COST,
10990           sum(pjp.ETC_BRDN_COST)                      ETC_BRDN_COST,
10991           sum(pjp.ETC_RAW_COST)                       ETC_RAW_COST,
10992           sum(pjp.ETC_LABOR_RAW_COST)                 ETC_LABOR_RAW_COST,
10993           sum(pjp.ETC_EQUIP_RAW_COST)                 ETC_EQUIP_RAW_COST,
10994           sum(pjp.CUSTOM1)                            CUSTOM1,
10995           sum(pjp.CUSTOM2)                            CUSTOM2,
10996           sum(pjp.CUSTOM3)                            CUSTOM3,
10997           sum(pjp.CUSTOM4)                            CUSTOM4,
10998           sum(pjp.CUSTOM5)                            CUSTOM5,
10999           sum(pjp.CUSTOM6)                            CUSTOM6,
11000           sum(pjp.CUSTOM7)                            CUSTOM7,
11001           sum(pjp.CUSTOM8)                            CUSTOM8,
11002           sum(pjp.CUSTOM9)                            CUSTOM9,
11003           sum(pjp.CUSTOM10)                           CUSTOM10,
11004           sum(pjp.CUSTOM11)                           CUSTOM11,
11005           sum(pjp.CUSTOM12)                           CUSTOM12,
11006           sum(pjp.CUSTOM13)                           CUSTOM13,
11007           sum(pjp.CUSTOM14)                           CUSTOM14,
11008           sum(pjp.CUSTOM15)                           CUSTOM15
11009         from
11010           (
11011           select /*+ index(wbs PA_XBS_DENORM_N2) parallel(pjp1) */ -- changed for bug 5927368
11012 		 -- get incremental task level amounts from source and
11013                  -- program rollup amounts from interim
11014             to_char(null)                             LINE_TYPE,
11015             wbs_hdr.WBS_VERSION_ID,
11016             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
11017             decode(wbs_hdr.WP_FLAG
11018                      || '_' || to_char(sign(pjp1.PLAN_VERSION_ID))
11019                      || '_' || nvl(fin_plan.INVERT_ID, 'PRJ'),
11020                    'N_1_PRJ', 'N',
11021                    'N_-1_PRG', 'N',
11022                    decode(top_slice.INVERT_ID,
11023                           'PRJ', 'Y',
11024                           decode(wbs.SUB_LEVEL,
11025                                  1, 'Y', 'N')))       PUSHUP_FLAG,
11026             decode(pjp1.RBS_AGGR_LEVEL,
11027                    'L', 'N',
11028                         decode(wbs_hdr.WP_FLAG
11029                                  || '_' || to_char(sign(pjp1.PLAN_VERSION_ID))
11030                                  || '_' || fin_plan.INVERT_ID,
11031                                'N_1_PRG', decode(top_slice.INVERT_ID,
11032                                                  'PRJ', 'Y',
11033                                                  decode(wbs.SUB_LEVEL,
11034                                                         1, 'Y', 'N')),
11035                                'N_-1_PRG', 'N',
11036                                decode(wbs_hdr.WP_FLAG
11037                                         || '_' || fin_plan.INVERT_ID
11038                                         || '_' || fin_plan.CB
11039                                         || '_' || fin_plan.CO
11040                                         || '_'
11041                                         || to_char(fin_plan.PLAN_VERSION_ID),
11042                                       'N_PRJ_Y_Y_-4', 'N',
11043                                                       'Y'))
11044                   )                                   INSERT_FLAG,
11045             pjp1.PROJECT_ID,
11046             pjp1.PROJECT_ORG_ID,
11047             pjp1.PROJECT_ORGANIZATION_ID,
11048             decode(top_slice.INVERT_ID,
11049                    'PRJ', prg.SUP_EMT_ID,
11050                           decode(wbs.SUB_LEVEL,
11051                                  1, prg.SUP_EMT_ID,
11052                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
11053             pjp1.TIME_ID,
11054             pjp1.PERIOD_TYPE_ID,
11055             pjp1.CALENDAR_TYPE,
11056             pjp1.RBS_AGGR_LEVEL,
11057             'Y'                                       WBS_ROLLUP_FLAG,
11058             pjp1.PRG_ROLLUP_FLAG,
11059             pjp1.CURR_RECORD_TYPE_ID,
11060             pjp1.CURRENCY_CODE,
11061             pjp1.RBS_ELEMENT_ID,
11062             pjp1.RBS_VERSION_ID,
11063             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
11064                    'N_PRG', fin_plan.PLAN_VERSION_ID,
11065                             pjp1.PLAN_VERSION_ID)     PLAN_VERSION_ID,
11066             pjp1.PLAN_TYPE_ID,
11067             pjp1.PLAN_TYPE_CODE,
11068             pjp1.RAW_COST,
11069             pjp1.BRDN_COST,
11070             pjp1.REVENUE,
11071             pjp1.BILL_RAW_COST,
11072             pjp1.BILL_BRDN_COST,
11073             pjp1.BILL_LABOR_RAW_COST,
11074             pjp1.BILL_LABOR_BRDN_COST,
11075             pjp1.BILL_LABOR_HRS,
11076             pjp1.EQUIPMENT_RAW_COST,
11077             pjp1.EQUIPMENT_BRDN_COST,
11078             pjp1.CAPITALIZABLE_RAW_COST,
11079             pjp1.CAPITALIZABLE_BRDN_COST,
11080             pjp1.LABOR_RAW_COST,
11081             pjp1.LABOR_BRDN_COST,
11082             pjp1.LABOR_HRS,
11083             pjp1.LABOR_REVENUE,
11084             pjp1.EQUIPMENT_HOURS,
11085             pjp1.BILLABLE_EQUIPMENT_HOURS,
11086             pjp1.SUP_INV_COMMITTED_COST,
11087             pjp1.PO_COMMITTED_COST,
11088             pjp1.PR_COMMITTED_COST,
11089             pjp1.OTH_COMMITTED_COST,
11090             pjp1.ACT_LABOR_HRS,
11091             pjp1.ACT_EQUIP_HRS,
11092             pjp1.ACT_LABOR_BRDN_COST,
11093             pjp1.ACT_EQUIP_BRDN_COST,
11094             pjp1.ACT_BRDN_COST,
11095             pjp1.ACT_RAW_COST,
11096             pjp1.ACT_REVENUE,
11097             pjp1.ACT_LABOR_RAW_COST,
11098             pjp1.ACT_EQUIP_RAW_COST,
11099             pjp1.ETC_LABOR_HRS,
11100             pjp1.ETC_EQUIP_HRS,
11101             pjp1.ETC_LABOR_BRDN_COST,
11102             pjp1.ETC_EQUIP_BRDN_COST,
11103             pjp1.ETC_BRDN_COST,
11104             pjp1.ETC_RAW_COST,
11105             pjp1.ETC_LABOR_RAW_COST,
11106             pjp1.ETC_EQUIP_RAW_COST,
11107             pjp1.CUSTOM1,
11108             pjp1.CUSTOM2,
11109             pjp1.CUSTOM3,
11110             pjp1.CUSTOM4,
11111             pjp1.CUSTOM5,
11112             pjp1.CUSTOM6,
11113             pjp1.CUSTOM7,
11114             pjp1.CUSTOM8,
11115             pjp1.CUSTOM9,
11116             pjp1.CUSTOM10,
11117             pjp1.CUSTOM11,
11118             pjp1.CUSTOM12,
11119             pjp1.CUSTOM13,
11120             pjp1.CUSTOM14,
11121             pjp1.CUSTOM15
11122           from
11123             PJI_FP_AGGR_PJP1   pjp1,
11124             PJI_PJP_WBS_HEADER wbs_hdr,
11125             PA_XBS_DENORM      wbs,
11126             PJI_XBS_DENORM     prg,
11127             (
11128               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
11129               from DUAL union all
11130               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
11131               from DUAL union all
11132               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
11133               from DUAL union all
11134               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
11135               from DUAL union all
11136               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
11137               from DUAL union all
11138               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
11139               from DUAL union all
11140               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
11141               from DUAL union all
11142               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
11143               from DUAL
11144             ) fin_plan,
11145             (
11146               select 1     WBS_SUP_LEVEL,
11147                      1     WBS_SUB_LEVEL,
11148                      'PRJ' INVERT_ID
11149               from   DUAL
11150               union all
11151               select 1     WBS_SUP_LEVEL,
11152                      1     WBS_SUB_LEVEL,
11153                      'WBS' INVERT_ID
11154               from   DUAL
11155             ) top_slice
11156           where
11157             prg.STRUCT_TYPE         =  'PRG'                       and
11158             prg.SUP_LEVEL           =  l_level                     and
11159             prg.SUB_LEVEL           =  l_level                     and
11160             wbs.STRUCT_TYPE         =  'WBS'                       and
11161             ((wbs.SUP_LEVEL = 1 and
11162               wbs.SUB_LEVEL = 1) or
11163              (wbs.SUP_LEVEL <> wbs.SUB_LEVEL))                     and
11164             wbs.STRUCT_VERSION_ID   =  prg.SUP_ID                  and
11165             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
11166             pjp1.WORKER_ID          =  p_worker_id                 and
11167             pjp1.PRG_LEVEL          in (0, l_level)                and
11168             pjp1.RBS_AGGR_LEVEL     in ('T', 'L')                  and
11169             pjp1.WBS_ROLLUP_FLAG    =  'N'                         and
11170             pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                  and
11171             pjp1.PROJECT_ID         =  wbs_hdr.PROJECT_ID          and
11172             pjp1.PLAN_VERSION_ID    =  wbs_hdr.PLAN_VERSION_ID     and
11173             pjp1.PLAN_TYPE_CODE     =  wbs_hdr.PLAN_TYPE_CODE      and
11174             decode(pjp1.PLAN_VERSION_ID,
11175                    -3, pjp1.PLAN_TYPE_ID,
11176                    -4, pjp1.PLAN_TYPE_ID,
11177                        -1)          =  decode(pjp1.PLAN_VERSION_ID,
11178                                               -3, wbs_hdr.PLAN_TYPE_ID,
11179                                               -4, wbs_hdr.PLAN_TYPE_ID,
11180                                                   -1)              and
11181             wbs.STRUCT_VERSION_ID   =  wbs_hdr.WBS_VERSION_ID      and
11182             pjp1.PROJECT_ELEMENT_ID =  wbs.SUB_EMT_ID              and
11183             wbs_hdr.CB_FLAG         =  fin_plan.CB             (+) and
11184             wbs_hdr.CO_FLAG         =  fin_plan.CO             (+) and
11185             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
11186             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+)
11187           union all
11188           select /*+ parallel(pjp1) */          -- changed for bug 5927368
11189 		 -- get incremental project level amounts from source
11190             to_char(null)                             LINE_TYPE,
11191             wbs_hdr.WBS_VERSION_ID,
11192             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
11193             'Y'                                       PUSHUP_FLAG,
11194             decode(pjp1.RBS_AGGR_LEVEL,
11195                    'L', 'N',
11196                         decode(fin_plan.PLAN_VERSION_ID,
11197                                null, 'N', 'Y'))       INSERT_FLAG,
11198             pjp1.PROJECT_ID,
11199             pjp1.PROJECT_ORG_ID,
11200             pjp1.PROJECT_ORGANIZATION_ID,
11201             pjp1.PROJECT_ELEMENT_ID,
11202             pjp1.TIME_ID,
11203             pjp1.PERIOD_TYPE_ID,
11204             pjp1.CALENDAR_TYPE,
11205             pjp1.RBS_AGGR_LEVEL,
11206             'Y'                                       WBS_ROLLUP_FLAG,
11207             pjp1.PRG_ROLLUP_FLAG,
11208             pjp1.CURR_RECORD_TYPE_ID,
11209             pjp1.CURRENCY_CODE,
11210             pjp1.RBS_ELEMENT_ID,
11211             pjp1.RBS_VERSION_ID,
11212             decode(wbs_hdr.WP_FLAG,
11213                    'N', decode(pjp1.PLAN_VERSION_ID,
11214                                -1, pjp1.PLAN_VERSION_ID,
11215                                -2, pjp1.PLAN_VERSION_ID,
11216                                -3, pjp1.PLAN_VERSION_ID, -- won't exist
11217                                -4, pjp1.PLAN_VERSION_ID, -- won't exist
11218                                    fin_plan.PLAN_VERSION_ID),
11219                         pjp1.PLAN_VERSION_ID)         PLAN_VERSION_ID,
11220             pjp1.PLAN_TYPE_ID,
11221             pjp1.PLAN_TYPE_CODE,
11222             pjp1.RAW_COST,
11223             pjp1.BRDN_COST,
11224             pjp1.REVENUE,
11225             pjp1.BILL_RAW_COST,
11226             pjp1.BILL_BRDN_COST,
11227             pjp1.BILL_LABOR_RAW_COST,
11228             pjp1.BILL_LABOR_BRDN_COST,
11229             pjp1.BILL_LABOR_HRS,
11230             pjp1.EQUIPMENT_RAW_COST,
11231             pjp1.EQUIPMENT_BRDN_COST,
11232             pjp1.CAPITALIZABLE_RAW_COST,
11233             pjp1.CAPITALIZABLE_BRDN_COST,
11234             pjp1.LABOR_RAW_COST,
11235             pjp1.LABOR_BRDN_COST,
11236             pjp1.LABOR_HRS,
11237             pjp1.LABOR_REVENUE,
11238             pjp1.EQUIPMENT_HOURS,
11239             pjp1.BILLABLE_EQUIPMENT_HOURS,
11240             pjp1.SUP_INV_COMMITTED_COST,
11241             pjp1.PO_COMMITTED_COST,
11242             pjp1.PR_COMMITTED_COST,
11243             pjp1.OTH_COMMITTED_COST,
11244             pjp1.ACT_LABOR_HRS,
11245             pjp1.ACT_EQUIP_HRS,
11246             pjp1.ACT_LABOR_BRDN_COST,
11247             pjp1.ACT_EQUIP_BRDN_COST,
11248             pjp1.ACT_BRDN_COST,
11249             pjp1.ACT_RAW_COST,
11250             pjp1.ACT_REVENUE,
11251             pjp1.ACT_LABOR_RAW_COST,
11252             pjp1.ACT_EQUIP_RAW_COST,
11253             pjp1.ETC_LABOR_HRS,
11254             pjp1.ETC_EQUIP_HRS,
11255             pjp1.ETC_LABOR_BRDN_COST,
11256             pjp1.ETC_EQUIP_BRDN_COST,
11257             pjp1.ETC_BRDN_COST,
11258             pjp1.ETC_RAW_COST,
11259             pjp1.ETC_LABOR_RAW_COST,
11260             pjp1.ETC_EQUIP_RAW_COST,
11261             pjp1.CUSTOM1,
11262             pjp1.CUSTOM2,
11263             pjp1.CUSTOM3,
11264             pjp1.CUSTOM4,
11265             pjp1.CUSTOM5,
11266             pjp1.CUSTOM6,
11267             pjp1.CUSTOM7,
11268             pjp1.CUSTOM8,
11269             pjp1.CUSTOM9,
11270             pjp1.CUSTOM10,
11271             pjp1.CUSTOM11,
11272             pjp1.CUSTOM12,
11273             pjp1.CUSTOM13,
11274             pjp1.CUSTOM14,
11275             pjp1.CUSTOM15
11276           from
11277             PJI_FP_AGGR_PJP1   pjp1,
11278             PJI_PJP_WBS_HEADER wbs_hdr,
11279             PJI_XBS_DENORM     prg,
11280             (
11281               select 'Y' CB_FLAG,
11282                      'N' CO_FLAG,
11283                      -3  PLAN_VERSION_ID
11284               from DUAL union all
11285               select 'N' CB_FLAG,
11286                      'Y' CO_FLAG,
11287                      -4  PLAN_VERSION_ID
11288               from DUAL union all
11289               select 'Y' CB_FLAG,
11290                      'Y' CO_FLAG,
11291                      -3  PLAN_VERSION_ID
11292               from DUAL union all
11293               select 'Y' CB_FLAG,
11294                      'Y' CO_FLAG,
11295                      -4  PLAN_VERSION_ID
11296               from DUAL
11297             ) fin_plan
11298           where
11299             prg.STRUCT_TYPE         = 'PRG'                    and
11300             prg.SUP_LEVEL           = l_level                  and
11301             prg.SUB_LEVEL           = l_level                  and
11302             pjp1.WORKER_ID          = p_worker_id              and
11303             pjp1.PROJECT_ID         = prg.SUP_PROJECT_ID       and
11304             pjp1.PROJECT_ELEMENT_ID = prg.SUP_EMT_ID           and
11305             pjp1.PRG_LEVEL          = 0                        and
11306             pjp1.RBS_AGGR_LEVEL     in ('T', 'L')              and
11307             pjp1.WBS_ROLLUP_FLAG    = 'N'                      and
11308             pjp1.PRG_ROLLUP_FLAG    = 'N'                      and
11309             wbs_hdr.PROJECT_ID      = pjp1.PROJECT_ID          and
11310             wbs_hdr.PLAN_VERSION_ID = pjp1.PLAN_VERSION_ID     and
11311             wbs_hdr.PLAN_TYPE_CODE  = pjp1.PLAN_TYPE_CODE      and
11312             decode(wbs_hdr.WP_FLAG,
11313                    'N', decode(pjp1.PLAN_VERSION_ID,
11314                                -1, 'Y',
11315                                -2, 'Y',
11316                                -3, 'Y', -- won't exist
11317                                -4, 'Y', -- won't exist
11318                                    decode(wbs_hdr.CB_FLAG || '_' ||
11319                                           wbs_hdr.CO_FLAG,
11320                                           'Y_Y', 'Y',
11321                                           'N_Y', 'Y',
11322                                           'Y_N', 'Y',
11323                                                  'N')),
11324                         'Y')        =  'Y'                     and
11325             wbs_hdr.WBS_VERSION_ID  = prg.SUP_ID               and
11326             wbs_hdr.CB_FLAG         = fin_plan.CB_FLAG     (+) and
11327             wbs_hdr.CO_FLAG         = fin_plan.CO_FLAG     (+)
11328           union all
11329           select /*+ ordered
11330                      index(fpr PJI_FP_XBS_ACCUM_F_N1) */
11331                  -- get delta task level amounts from Reporting Lines
11332             to_char(null)                             LINE_TYPE,
11333             wbs_hdr.WBS_VERSION_ID,
11334             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
11335             decode(log.EVENT_TYPE,
11336                    'WBS_CHANGE', 'Y',
11337                    'WBS_PUBLISH', 'N')                PUSHUP_FLAG,
11338             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
11339                    'N_PRG', decode(top_slice.INVERT_ID,
11340                                    'PRJ', 'Y',
11341                                    decode(wbs.SUB_LEVEL,
11342                                           1, 'Y', 'N')),
11343                    decode(wbs_hdr.WP_FLAG
11344                             || '_' || fin_plan.INVERT_ID
11345                             || '_' || fin_plan.CB
11346                             || '_' || fin_plan.CO
11347                             || '_' || to_char(fin_plan.PLAN_VERSION_ID),
11348                           'N_PRJ_Y_Y_-4', 'N',
11349                                           'Y'))       INSERT_FLAG,
11350             fpr.PROJECT_ID,
11351             fpr.PROJECT_ORG_ID,
11352             fpr.PROJECT_ORGANIZATION_ID,
11353             decode(top_slice.INVERT_ID,
11354                    'PRJ', prg.SUP_EMT_ID,
11355                           decode(wbs.SUB_LEVEL,
11356                                  1, prg.SUP_EMT_ID,
11357                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
11358             fpr.TIME_ID,
11359             fpr.PERIOD_TYPE_ID,
11360             fpr.CALENDAR_TYPE,
11361             fpr.RBS_AGGR_LEVEL,
11362             'Y'                                       WBS_ROLLUP_FLAG,
11363             fpr.PRG_ROLLUP_FLAG,
11364             fpr.CURR_RECORD_TYPE_ID,
11365             fpr.CURRENCY_CODE,
11366             fpr.RBS_ELEMENT_ID,
11367             fpr.RBS_VERSION_ID,
11368             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
11369                    'N_PRG', fin_plan.PLAN_VERSION_ID,
11370                             fpr.PLAN_VERSION_ID)      PLAN_VERSION_ID,
11371             fpr.PLAN_TYPE_ID,
11372             fpr.PLAN_TYPE_CODE,
11373             wbs.SIGN * fpr.RAW_COST                   RAW_COST,
11374             wbs.SIGN * fpr.BRDN_COST                  BRDN_COST,
11375             wbs.SIGN * fpr.REVENUE                    REVENUE,
11376             wbs.SIGN * fpr.BILL_RAW_COST              BILL_RAW_COST,
11377             wbs.SIGN * fpr.BILL_BRDN_COST             BILL_BRDN_COST,
11378             wbs.SIGN * fpr.BILL_LABOR_RAW_COST        BILL_LABOR_RAW_COST,
11379             wbs.SIGN * fpr.BILL_LABOR_BRDN_COST       BILL_LABOR_BRDN_COST,
11380             wbs.SIGN * fpr.BILL_LABOR_HRS             BILL_LABOR_HRS,
11381             wbs.SIGN * fpr.EQUIPMENT_RAW_COST         EQUIPMENT_RAW_COST,
11382             wbs.SIGN * fpr.EQUIPMENT_BRDN_COST        EQUIPMENT_BRDN_COST,
11383             wbs.SIGN * fpr.CAPITALIZABLE_RAW_COST     CAPITALIZABLE_RAW_COST,
11384             wbs.SIGN * fpr.CAPITALIZABLE_BRDN_COST    CAPITALIZABLE_BRDN_COST,
11385             wbs.SIGN * fpr.LABOR_RAW_COST             LABOR_RAW_COST,
11386             wbs.SIGN * fpr.LABOR_BRDN_COST            LABOR_BRDN_COST,
11387             wbs.SIGN * fpr.LABOR_HRS                  LABOR_HRS,
11388             wbs.SIGN * fpr.LABOR_REVENUE              LABOR_REVENUE,
11389             wbs.SIGN * fpr.EQUIPMENT_HOURS            EQUIPMENT_HOURS,
11390             wbs.SIGN * fpr.BILLABLE_EQUIPMENT_HOURS   BILLABLE_EQUIPMENT_HOURS,
11391             wbs.SIGN * fpr.SUP_INV_COMMITTED_COST     SUP_INV_COMMITTED_COST,
11392             wbs.SIGN * fpr.PO_COMMITTED_COST          PO_COMMITTED_COST,
11393             wbs.SIGN * fpr.PR_COMMITTED_COST          PR_COMMITTED_COST,
11394             wbs.SIGN * fpr.OTH_COMMITTED_COST         OTH_COMMITTED_COST,
11395             wbs.SIGN * fpr.ACT_LABOR_HRS              ACT_LABOR_HRS,
11396             wbs.SIGN * fpr.ACT_EQUIP_HRS              ACT_EQUIP_HRS,
11397             wbs.SIGN * fpr.ACT_LABOR_BRDN_COST        ACT_LABOR_BRDN_COST,
11398             wbs.SIGN * fpr.ACT_EQUIP_BRDN_COST        ACT_EQUIP_BRDN_COST,
11399             wbs.SIGN * fpr.ACT_BRDN_COST              ACT_BRDN_COST,
11400             wbs.SIGN * fpr.ACT_RAW_COST               ACT_RAW_COST,
11401             wbs.SIGN * fpr.ACT_REVENUE                ACT_REVENUE,
11402             wbs.SIGN * fpr.ACT_LABOR_RAW_COST         ACT_LABOR_RAW_COST,
11403             wbs.SIGN * fpr.ACT_EQUIP_RAW_COST         ACT_EQUIP_RAW_COST,
11404             wbs.SIGN * fpr.ETC_LABOR_HRS              ETC_LABOR_HRS,
11405             wbs.SIGN * fpr.ETC_EQUIP_HRS              ETC_EQUIP_HRS,
11406             wbs.SIGN * fpr.ETC_LABOR_BRDN_COST        ETC_LABOR_BRDN_COST,
11407             wbs.SIGN * fpr.ETC_EQUIP_BRDN_COST        ETC_EQUIP_BRDN_COST,
11408             wbs.SIGN * fpr.ETC_BRDN_COST              ETC_BRDN_COST,
11409             wbs.SIGN * fpr.ETC_RAW_COST               ETC_RAW_COST,
11410             wbs.SIGN * fpr.ETC_LABOR_RAW_COST         ETC_LABOR_RAW_COST,
11411             wbs.SIGN * fpr.ETC_EQUIP_RAW_COST         ETC_EQUIP_RAW_COST,
11412             wbs.SIGN * fpr.CUSTOM1                    CUSTOM1,
11413             wbs.SIGN * fpr.CUSTOM2                    CUSTOM2,
11414             wbs.SIGN * fpr.CUSTOM3                    CUSTOM3,
11415             wbs.SIGN * fpr.CUSTOM4                    CUSTOM4,
11416             wbs.SIGN * fpr.CUSTOM5                    CUSTOM5,
11417             wbs.SIGN * fpr.CUSTOM6                    CUSTOM6,
11418             wbs.SIGN * fpr.CUSTOM7                    CUSTOM7,
11419             wbs.SIGN * fpr.CUSTOM8                    CUSTOM8,
11420             wbs.SIGN * fpr.CUSTOM9                    CUSTOM9,
11421             wbs.SIGN * fpr.CUSTOM10                   CUSTOM10,
11422             wbs.SIGN * fpr.CUSTOM11                   CUSTOM11,
11423             wbs.SIGN * fpr.CUSTOM12                   CUSTOM12,
11424             wbs.SIGN * fpr.CUSTOM13                   CUSTOM13,
11425             wbs.SIGN * fpr.CUSTOM14                   CUSTOM14,
11426             wbs.SIGN * fpr.CUSTOM15                   CUSTOM15
11427           from
11428             PJI_PA_PROJ_EVENTS_LOG log,
11429             PJI_PJP_WBS_HEADER     wbs_hdr,
11430             PJI_XBS_DENORM_DELTA   wbs,
11431             PJI_XBS_DENORM         prg,
11432             PJI_FP_XBS_ACCUM_F     fpr,
11433             (
11434               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
11435               from DUAL union all
11436               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
11437               from DUAL union all
11438               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
11439               from DUAL union all
11440               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
11441               from DUAL union all
11442               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
11443               from DUAL union all
11444               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
11445               from DUAL union all
11446               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
11447               from DUAL union all
11448               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
11449               from DUAL
11450             ) fin_plan,
11451             (
11452               select 1     WBS_SUP_LEVEL,
11453                      1     WBS_SUB_LEVEL,
11454                      'PRJ' INVERT_ID
11455               from   DUAL
11456               union all
11457               select 1     WBS_SUP_LEVEL,
11458                      1     WBS_SUB_LEVEL,
11459                      'WBS' INVERT_ID
11460               from   DUAL
11461             ) top_slice
11462           where
11463             prg.STRUCT_TYPE         =  'PRG'                       and
11464             prg.SUP_LEVEL           =  l_level                     and
11465             prg.SUB_LEVEL           =  l_level                     and
11466             wbs.WORKER_ID           =  p_worker_id                 and
11467             wbs.STRUCT_TYPE         =  'WBS'                       and
11468             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
11469             log.WORKER_ID           =  p_worker_id                 and
11470             log.EVENT_ID            =  wbs.EVENT_ID                and
11471             log.EVENT_TYPE          in ('WBS_CHANGE',
11472                                         'WBS_PUBLISH')             and
11473             wbs_hdr.PROJECT_ID      =  log.ATTRIBUTE1              and
11474             wbs_hdr.PLAN_VERSION_ID =  log.ATTRIBUTE3              and
11475             wbs_hdr.WBS_VERSION_ID  =  wbs.STRUCT_VERSION_ID       and
11476             wbs_hdr.PROJECT_ID      =  prg.SUP_PROJECT_ID          and
11477             wbs_hdr.WBS_VERSION_ID  =  prg.SUP_ID                  and
11478             fpr.RBS_AGGR_LEVEL      =  'T'                         and
11479             fpr.WBS_ROLLUP_FLAG     =  'N'                         and
11480             fpr.PRG_ROLLUP_FLAG     in ('Y', 'N')                  and
11481             fpr.PROJECT_ID          =  wbs.SUP_PROJECT_ID          and
11482             fpr.PROJECT_ELEMENT_ID  =  wbs.SUB_EMT_ID              and
11483             fpr.PROJECT_ID          =  wbs_hdr.PROJECT_ID          and
11484             fpr.PLAN_VERSION_ID     =  wbs_hdr.PLAN_VERSION_ID     and
11485             fpr.PLAN_TYPE_CODE      =  wbs_hdr.PLAN_TYPE_CODE      and
11486             decode(fpr.PLAN_VERSION_ID,
11487                    -3, fpr.PLAN_TYPE_ID,
11488                    -4, fpr.PLAN_TYPE_ID,
11489                        -1)          =  decode(fpr.PLAN_VERSION_ID,
11490                                               -3, wbs_hdr.PLAN_TYPE_ID,
11491                                               -4, wbs_hdr.PLAN_TYPE_ID,
11492                                                   -1)              and
11493             wbs_hdr.CB_FLAG         =  fin_plan.CB             (+) and
11494             wbs_hdr.CO_FLAG         =  fin_plan.CO             (+) and
11495             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
11496             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+) and
11497             (wbs.SUP_LEVEL <> wbs.SUB_LEVEL or
11498              (wbs.SUP_LEVEL = 1 and
11499               wbs.SUB_LEVEL = 1))
11500           ) pjp,
11501           (
11502           select /*+ ordered */
11503             prg.SUP_PROJECT_ID,
11504             map.PROJECT_ORG_ID               SUP_PROJECT_ORG_ID,
11505             map.PROJECT_ORGANIZATION_ID      SUP_PROJECT_ORGANIZATION_ID,
11506             prg.SUP_ID,
11507             prg.SUP_EMT_ID,
11508             prg.SUP_LEVEL,
11509             prg.SUB_ID,
11510             prg.SUB_EMT_ID,
11511             prg.SUB_ROLLUP_ID,
11512             invert.INVERT_VALUE              RELATIONSHIP_TYPE,
11513             decode(prg.RELATIONSHIP_TYPE,
11514                    'LW', 'Y',
11515                    'LF', 'N')                WP_FLAG,
11516             'Y'                              PUSHUP_FLAG
11517           from
11518             PJI_PJP_PROJ_BATCH_MAP map,
11519             PJI_XBS_DENORM prg,
11520             (
11521               select 'LF' INVERT_ID, 'LF' INVERT_VALUE from dual union all
11522               select 'LW' INVERT_ID, 'LW' INVERT_VALUE from dual union all
11523               select 'A'  INVERT_ID, 'LF' INVERT_VALUE from dual union all
11524               select 'A'  INVERT_ID, 'LW' INVERT_VALUE from dual
11525             ) invert,
11526             PJI_XBS_DENORM_DELTA prg_delta
11527           where
11528             prg.STRUCT_TYPE               = 'PRG'                           and
11529             prg.SUB_ROLLUP_ID             is not null                       and
11530             prg.SUB_LEVEL                 = l_level                         and
11531             map.WORKER_ID                 = p_worker_id                     and
11532             map.PROJECT_ID                = prg.SUP_PROJECT_ID              and
11533             decode(prg.SUB_LEVEL,
11534                    prg.SUP_LEVEL, 'A',
11535                    prg.RELATIONSHIP_TYPE) = invert.INVERT_ID                and
11536             p_worker_id                   = prg_delta.WORKER_ID         (+) and
11537             prg.STRUCT_TYPE               = prg_delta.STRUCT_TYPE       (+) and
11538             prg.SUP_PROJECT_ID            = prg_delta.SUP_PROJECT_ID    (+) and
11539             prg.SUP_LEVEL                 = prg_delta.SUP_LEVEL         (+) and
11540             prg.SUP_ID                    = prg_delta.SUP_ID            (+) and
11541             prg.SUB_LEVEL                 = prg_delta.SUB_LEVEL         (+) and
11542             prg.SUB_ID                    = prg_delta.SUB_ID            (+) and
11543             prg.RELATIONSHIP_TYPE         = prg_delta.RELATIONSHIP_TYPE (+) and
11544             -1                            = prg_delta.SIGN              (+) and
11545             prg_delta.SUP_PROJECT_ID      is null
11546           )                          prg,
11547           PJI_PJP_WBS_HEADER         wbs_hdr,
11548           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
11549           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
11550           PA_PROJ_WORKPLAN_ATTR      sup_wpa
11551         where
11552           pjp.PROJECT_ID         = sub_ver.PROJECT_ID                (+) and
11553           pjp.WBS_VERSION_ID     = sub_ver.ELEMENT_VERSION_ID        (+) and
11554           'STRUCTURE_PUBLISHED'  = sub_ver.STATUS_CODE               (+) and
11555           pjp.WBS_VERSION_ID     = prg.SUB_ID                        (+) and
11556           pjp.RELATIONSHIP_TYPE  = prg.RELATIONSHIP_TYPE             (+) and
11557           pjp.PUSHUP_FLAG        = prg.PUSHUP_FLAG                   (+) and
11558           prg.SUP_PROJECT_ID     = wbs_hdr.PROJECT_ID                (+) and
11559           prg.SUP_ID             = wbs_hdr.WBS_VERSION_ID            (+) and
11560           prg.WP_FLAG            = wbs_hdr.WP_FLAG                   (+) and
11561           'Y'                    = wbs_hdr.WP_FLAG                   (+) and
11562           wbs_hdr.PROJECT_ID     = sup_ver.PROJECT_ID                (+) and
11563           wbs_hdr.WBS_VERSION_ID = sup_ver.ELEMENT_VERSION_ID        (+) and
11564           'STRUCTURE_PUBLISHED'  = sup_ver.STATUS_CODE               (+) and
11565           'Y'                    = sup_ver.LATEST_EFF_PUBLISHED_FLAG (+) and
11566           prg.SUP_EMT_ID         = sup_wpa.PROJ_ELEMENT_ID           (+)
11567         group by
11568           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
11569                  pjp.INSERT_FLAG, 'Y'),
11570           pjp.RELATIONSHIP_TYPE,
11571           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
11572                  null, sub_ver.STATUS_CODE),
11573           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
11574                  null, sup_ver.STATUS_CODE),
11575           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
11576                  null, sup_wpa.WP_ENABLE_VERSION_FLAG),
11577           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
11578                  null, decode(pjp.PLAN_VERSION_ID,
11579                               -1, prg.SUP_ID,
11580                               -3, prg.SUP_ID,
11581                               -4, prg.SUP_ID,
11582                                   null)),
11583           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
11584                  null, decode(pjp.PLAN_VERSION_ID,
11585                               -1, prg.SUP_EMT_ID,
11586                               -3, prg.SUP_EMT_ID,
11587                               -4, prg.SUP_EMT_ID,
11588                                   null)),
11589           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
11590                  null, decode(pjp.PLAN_VERSION_ID,
11591                               -1, prg.WP_FLAG,
11592                               -3, prg.WP_FLAG,
11593                               -4, prg.WP_FLAG,
11594                                   null)),
11595           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
11596                  l_level, prg.SUP_LEVEL),
11597           pjp.LINE_TYPE,
11598           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
11599                  pjp.PROJECT_ID, prg.SUP_PROJECT_ID),
11600           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
11601                  pjp.PROJECT_ORG_ID,
11602                  prg.SUP_PROJECT_ORG_ID),
11603           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
11604                  pjp.PROJECT_ORGANIZATION_ID,
11605                  prg.SUP_PROJECT_ORGANIZATION_ID),
11606           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
11607                  pjp.PROJECT_ELEMENT_ID,
11608                  prg.SUB_ROLLUP_ID),
11609           pjp.TIME_ID,
11610           pjp.PERIOD_TYPE_ID,
11611           pjp.CALENDAR_TYPE,
11612           pjp.RBS_AGGR_LEVEL,
11613           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
11614                  pjp.WBS_ROLLUP_FLAG, 'N'),
11615           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
11616                  pjp.PRG_ROLLUP_FLAG, 'Y'),
11617           pjp.CURR_RECORD_TYPE_ID,
11618           pjp.CURRENCY_CODE,
11619           pjp.RBS_ELEMENT_ID,
11620           pjp.RBS_VERSION_ID,
11621           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
11622                  pjp.PLAN_VERSION_ID,
11623                  decode(pjp.PLAN_VERSION_ID,
11624                         -1, pjp.PLAN_VERSION_ID,
11625                         -2, pjp.PLAN_VERSION_ID,
11626                         -3, pjp.PLAN_VERSION_ID,
11627                         -4, pjp.PLAN_VERSION_ID,
11628                             wbs_hdr.PLAN_VERSION_ID)),
11629           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
11630                  pjp.PLAN_TYPE_ID,
11631                  decode(pjp.PLAN_VERSION_ID,
11632                         -1, pjp.PLAN_TYPE_ID,
11633                         -2, pjp.PLAN_TYPE_ID,
11634                         -3, pjp.PLAN_TYPE_ID,
11635                         -4, pjp.PLAN_TYPE_ID,
11636                             wbs_hdr.PLAN_TYPE_ID)),
11637           pjp.PLAN_TYPE_CODE
11638           )                          pjp1_i,
11639           PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
11640           PA_PROJ_WORKPLAN_ATTR      sup_wpa
11641         where
11642           pjp1_i.INSERT_FLAG  = 'Y'                                and
11643           pjp1_i.PROJECT_ID   = sup_fin_ver.PROJECT_ID         (+) and
11644           pjp1_i.SUP_ID       = sup_fin_ver.ELEMENT_VERSION_ID (+) and
11645           'STRUCTURE_WORKING' = sup_fin_ver.STATUS_CODE        (+) and
11646           pjp1_i.SUP_EMT_ID   = sup_wpa.PROJ_ELEMENT_ID        (+) and
11647           'N'                 = sup_wpa.WP_ENABLE_VERSION_FLAG (+) and
11648           (pjp1_i.SUP_ID is null or
11649            (pjp1_i.SUP_ID is not null and
11650             (sup_fin_ver.PROJECT_ID is not null or
11651              sup_wpa.PROJ_ELEMENT_ID is not null)));
11652     elsif (p_worker_id =4) then
11653       -- Query for Partition 4
11654 
11655         insert /*+ parallel(PJI_FP_AGGR_PJP1) */
11656                    into PJI_FP_AGGR_PJP1 partition(P4)
11657 	(
11658           WORKER_ID,
11659           RECORD_TYPE,
11660           PRG_LEVEL,
11661           LINE_TYPE,
11662           PROJECT_ID,
11663           PROJECT_ORG_ID,
11664           PROJECT_ORGANIZATION_ID,
11665           PROJECT_ELEMENT_ID,
11666           TIME_ID,
11667           PERIOD_TYPE_ID,
11668           CALENDAR_TYPE,
11669           RBS_AGGR_LEVEL,
11670           WBS_ROLLUP_FLAG,
11671           PRG_ROLLUP_FLAG,
11672           CURR_RECORD_TYPE_ID,
11673           CURRENCY_CODE,
11674           RBS_ELEMENT_ID,
11675           RBS_VERSION_ID,
11676           PLAN_VERSION_ID,
11677           PLAN_TYPE_ID,
11678           PLAN_TYPE_CODE,
11679           RAW_COST,
11680           BRDN_COST,
11681           REVENUE,
11682           BILL_RAW_COST,
11683           BILL_BRDN_COST,
11684           BILL_LABOR_RAW_COST,
11685           BILL_LABOR_BRDN_COST,
11686           BILL_LABOR_HRS,
11687           EQUIPMENT_RAW_COST,
11688           EQUIPMENT_BRDN_COST,
11689           CAPITALIZABLE_RAW_COST,
11690           CAPITALIZABLE_BRDN_COST,
11691           LABOR_RAW_COST,
11692           LABOR_BRDN_COST,
11693           LABOR_HRS,
11694           LABOR_REVENUE,
11695           EQUIPMENT_HOURS,
11696           BILLABLE_EQUIPMENT_HOURS,
11697           SUP_INV_COMMITTED_COST,
11698           PO_COMMITTED_COST,
11699           PR_COMMITTED_COST,
11700           OTH_COMMITTED_COST,
11701           ACT_LABOR_HRS,
11702           ACT_EQUIP_HRS,
11703           ACT_LABOR_BRDN_COST,
11704           ACT_EQUIP_BRDN_COST,
11705           ACT_BRDN_COST,
11706           ACT_RAW_COST,
11707           ACT_REVENUE,
11708           ACT_LABOR_RAW_COST,
11709           ACT_EQUIP_RAW_COST,
11710           ETC_LABOR_HRS,
11711           ETC_EQUIP_HRS,
11712           ETC_LABOR_BRDN_COST,
11713           ETC_EQUIP_BRDN_COST,
11714           ETC_BRDN_COST,
11715           ETC_RAW_COST,
11716           ETC_LABOR_RAW_COST,
11717           ETC_EQUIP_RAW_COST,
11718           CUSTOM1,
11719           CUSTOM2,
11720           CUSTOM3,
11721           CUSTOM4,
11722           CUSTOM5,
11723           CUSTOM6,
11724           CUSTOM7,
11725           CUSTOM8,
11726           CUSTOM9,
11727           CUSTOM10,
11728           CUSTOM11,
11729           CUSTOM12,
11730           CUSTOM13,
11731           CUSTOM14,
11732           CUSTOM15
11733         )
11734         select
11735           pjp1_i.WORKER_ID,
11736           pjp1_i.RECORD_TYPE,
11737           pjp1_i.PRG_LEVEL,
11738           pjp1_i.LINE_TYPE,
11739           pjp1_i.PROJECT_ID,
11740           pjp1_i.PROJECT_ORG_ID,
11741           pjp1_i.PROJECT_ORGANIZATION_ID,
11742           pjp1_i.PROJECT_ELEMENT_ID,
11743           pjp1_i.TIME_ID,
11744           pjp1_i.PERIOD_TYPE_ID,
11745           pjp1_i.CALENDAR_TYPE,
11746           pjp1_i.RBS_AGGR_LEVEL,
11747           pjp1_i.WBS_ROLLUP_FLAG,
11748           pjp1_i.PRG_ROLLUP_FLAG,
11749           pjp1_i.CURR_RECORD_TYPE_ID,
11750           pjp1_i.CURRENCY_CODE,
11751           pjp1_i.RBS_ELEMENT_ID,
11752           pjp1_i.RBS_VERSION_ID,
11753           pjp1_i.PLAN_VERSION_ID,
11754           pjp1_i.PLAN_TYPE_ID,
11755           pjp1_i.PLAN_TYPE_CODE,
11756           decode(pjp1_i.RELATIONSHIP_TYPE
11757                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
11758                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
11759                    || '_' || pjp1_i.SUB_STATUS_CODE
11760                    || '_' || pjp1_i.SUP_STATUS_CODE,
11761                  'LW_N_Y__', to_number(null),
11762                  decode(pjp1_i.RELATIONSHIP_TYPE
11763                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
11764                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
11765                           || '_' || pjp1_i.SUP_VER_ENABLED
11766                           || '_' || l_fpm_upgrade
11767                           || '_' || l_partial_mode,
11768                         'LW_N_Y_Y_C_', to_number(null),
11769                  pjp1_i.RAW_COST))                    RAW_COST,
11770           decode(pjp1_i.RELATIONSHIP_TYPE
11771                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
11772                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
11773                    || '_' || pjp1_i.SUB_STATUS_CODE
11774                    || '_' || pjp1_i.SUP_STATUS_CODE,
11775                  'LW_N_Y__', to_number(null),
11776                  decode(pjp1_i.RELATIONSHIP_TYPE
11777                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
11778                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
11779                           || '_' || pjp1_i.SUP_VER_ENABLED
11780                           || '_' || l_fpm_upgrade
11781                           || '_' || l_partial_mode,
11782                         'LW_N_Y_Y_C_', to_number(null),
11783                  pjp1_i.BRDN_COST))                   BRDN_COST,
11784           decode(pjp1_i.RELATIONSHIP_TYPE
11785                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
11786                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
11787                    || '_' || pjp1_i.SUB_STATUS_CODE
11788                    || '_' || pjp1_i.SUP_STATUS_CODE,
11789                  'LW_N_Y__', to_number(null),
11790                  decode(pjp1_i.RELATIONSHIP_TYPE
11791                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
11792                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
11793                           || '_' || pjp1_i.SUP_VER_ENABLED
11794                           || '_' || l_fpm_upgrade
11795                           || '_' || l_partial_mode,
11796                         'LW_N_Y_Y_C_', to_number(null),
11797                  pjp1_i.REVENUE))                     REVENUE,
11798           decode(pjp1_i.RELATIONSHIP_TYPE
11799                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
11800                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
11801                    || '_' || pjp1_i.SUB_STATUS_CODE
11802                    || '_' || pjp1_i.SUP_STATUS_CODE,
11803                  'LW_N_Y__', to_number(null),
11804                  decode(pjp1_i.RELATIONSHIP_TYPE
11805                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
11806                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
11807                           || '_' || pjp1_i.SUP_VER_ENABLED
11808                           || '_' || l_fpm_upgrade
11809                           || '_' || l_partial_mode,
11810                         'LW_N_Y_Y_C_', to_number(null),
11811                  pjp1_i.BILL_RAW_COST))               BILL_RAW_COST,
11812           decode(pjp1_i.RELATIONSHIP_TYPE
11813                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
11814                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
11815                    || '_' || pjp1_i.SUB_STATUS_CODE
11816                    || '_' || pjp1_i.SUP_STATUS_CODE,
11817                  'LW_N_Y__', to_number(null),
11818                  decode(pjp1_i.RELATIONSHIP_TYPE
11819                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
11820                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
11821                           || '_' || pjp1_i.SUP_VER_ENABLED
11822                           || '_' || l_fpm_upgrade
11823                           || '_' || l_partial_mode,
11824                         'LW_N_Y_Y_C_', to_number(null),
11825                  pjp1_i.BILL_BRDN_COST))              BILL_BRDN_COST,
11826           decode(pjp1_i.RELATIONSHIP_TYPE
11827                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
11828                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
11829                    || '_' || pjp1_i.SUB_STATUS_CODE
11830                    || '_' || pjp1_i.SUP_STATUS_CODE,
11831                  'LW_N_Y__', to_number(null),
11832                  decode(pjp1_i.RELATIONSHIP_TYPE
11833                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
11834                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
11835                           || '_' || pjp1_i.SUP_VER_ENABLED
11836                           || '_' || l_fpm_upgrade
11837                           || '_' || l_partial_mode,
11838                         'LW_N_Y_Y_C_', to_number(null),
11839                  pjp1_i.BILL_LABOR_RAW_COST))         BILL_LABOR_RAW_COST,
11840           decode(pjp1_i.RELATIONSHIP_TYPE
11841                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
11842                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
11843                    || '_' || pjp1_i.SUB_STATUS_CODE
11844                    || '_' || pjp1_i.SUP_STATUS_CODE,
11845                  'LW_N_Y__', to_number(null),
11846                  decode(pjp1_i.RELATIONSHIP_TYPE
11847                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
11848                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
11849                           || '_' || pjp1_i.SUP_VER_ENABLED
11850                           || '_' || l_fpm_upgrade
11851                           || '_' || l_partial_mode,
11852                         'LW_N_Y_Y_C_', to_number(null),
11853                  pjp1_i.BILL_LABOR_BRDN_COST))        BILL_LABOR_BRDN_COST,
11854           decode(pjp1_i.RELATIONSHIP_TYPE
11855                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
11856                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
11857                    || '_' || pjp1_i.SUB_STATUS_CODE
11858                    || '_' || pjp1_i.SUP_STATUS_CODE,
11859                  'LW_N_Y__', to_number(null),
11860                  decode(pjp1_i.RELATIONSHIP_TYPE
11861                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
11862                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
11863                           || '_' || pjp1_i.SUP_VER_ENABLED
11864                           || '_' || l_fpm_upgrade
11865                           || '_' || l_partial_mode,
11866                         'LW_N_Y_Y_C_', to_number(null),
11867                  pjp1_i.BILL_LABOR_HRS))              BILL_LABOR_HRS,
11868           decode(pjp1_i.RELATIONSHIP_TYPE
11869                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
11870                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
11871                    || '_' || pjp1_i.SUB_STATUS_CODE
11872                    || '_' || pjp1_i.SUP_STATUS_CODE,
11873                  'LW_N_Y__', to_number(null),
11874                  decode(pjp1_i.RELATIONSHIP_TYPE
11875                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
11876                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
11877                           || '_' || pjp1_i.SUP_VER_ENABLED
11878                           || '_' || l_fpm_upgrade
11879                           || '_' || l_partial_mode,
11880                         'LW_N_Y_Y_C_', to_number(null),
11881                  pjp1_i.EQUIPMENT_RAW_COST))          EQUIPMENT_RAW_COST,
11882           decode(pjp1_i.RELATIONSHIP_TYPE
11883                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
11884                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
11885                    || '_' || pjp1_i.SUB_STATUS_CODE
11886                    || '_' || pjp1_i.SUP_STATUS_CODE,
11887                  'LW_N_Y__', to_number(null),
11888                  decode(pjp1_i.RELATIONSHIP_TYPE
11889                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
11890                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
11891                           || '_' || pjp1_i.SUP_VER_ENABLED
11892                           || '_' || l_fpm_upgrade
11893                           || '_' || l_partial_mode,
11894                         'LW_N_Y_Y_C_', to_number(null),
11895                  pjp1_i.EQUIPMENT_BRDN_COST))         EQUIPMENT_BRDN_COST,
11896           decode(pjp1_i.RELATIONSHIP_TYPE
11897                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
11898                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
11899                    || '_' || pjp1_i.SUB_STATUS_CODE
11900                    || '_' || pjp1_i.SUP_STATUS_CODE,
11901                  'LW_N_Y__', to_number(null),
11902                  decode(pjp1_i.RELATIONSHIP_TYPE
11903                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
11904                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
11905                           || '_' || pjp1_i.SUP_VER_ENABLED
11906                           || '_' || l_fpm_upgrade
11907                           || '_' || l_partial_mode,
11908                         'LW_N_Y_Y_C_', to_number(null),
11909                  pjp1_i.CAPITALIZABLE_RAW_COST))      CAPITALIZABLE_RAW_COST,
11910           decode(pjp1_i.RELATIONSHIP_TYPE
11911                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
11912                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
11913                    || '_' || pjp1_i.SUB_STATUS_CODE
11914                    || '_' || pjp1_i.SUP_STATUS_CODE,
11915                  'LW_N_Y__', to_number(null),
11916                  decode(pjp1_i.RELATIONSHIP_TYPE
11917                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
11918                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
11919                           || '_' || pjp1_i.SUP_VER_ENABLED
11920                           || '_' || l_fpm_upgrade
11921                           || '_' || l_partial_mode,
11922                         'LW_N_Y_Y_C_', to_number(null),
11923                  pjp1_i.CAPITALIZABLE_BRDN_COST))     CAPITALIZABLE_BRDN_COST,
11924           decode(pjp1_i.RELATIONSHIP_TYPE
11925                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
11926                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
11927                    || '_' || pjp1_i.SUB_STATUS_CODE
11928                    || '_' || pjp1_i.SUP_STATUS_CODE,
11929                  'LW_N_Y__', to_number(null),
11930                  decode(pjp1_i.RELATIONSHIP_TYPE
11931                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
11932                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
11933                           || '_' || pjp1_i.SUP_VER_ENABLED
11934                           || '_' || l_fpm_upgrade
11935                           || '_' || l_partial_mode,
11936                         'LW_N_Y_Y_C_', to_number(null),
11937                  pjp1_i.LABOR_RAW_COST))              LABOR_RAW_COST,
11938           decode(pjp1_i.RELATIONSHIP_TYPE
11939                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
11940                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
11941                    || '_' || pjp1_i.SUB_STATUS_CODE
11942                    || '_' || pjp1_i.SUP_STATUS_CODE,
11943                  'LW_N_Y__', to_number(null),
11944                  decode(pjp1_i.RELATIONSHIP_TYPE
11945                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
11946                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
11947                           || '_' || pjp1_i.SUP_VER_ENABLED
11948                           || '_' || l_fpm_upgrade
11949                           || '_' || l_partial_mode,
11950                         'LW_N_Y_Y_C_', to_number(null),
11951                  pjp1_i.LABOR_BRDN_COST))             LABOR_BRDN_COST,
11952           decode(pjp1_i.RELATIONSHIP_TYPE
11953                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
11954                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
11955                    || '_' || pjp1_i.SUB_STATUS_CODE
11956                    || '_' || pjp1_i.SUP_STATUS_CODE,
11957                  'LW_N_Y__', to_number(null),
11958                  decode(pjp1_i.RELATIONSHIP_TYPE
11959                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
11960                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
11961                           || '_' || pjp1_i.SUP_VER_ENABLED
11962                           || '_' || l_fpm_upgrade
11963                           || '_' || l_partial_mode,
11964                         'LW_N_Y_Y_C_', to_number(null),
11965                  pjp1_i.LABOR_HRS))                   LABOR_HRS,
11966           decode(pjp1_i.RELATIONSHIP_TYPE
11967                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
11968                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
11969                    || '_' || pjp1_i.SUB_STATUS_CODE
11970                    || '_' || pjp1_i.SUP_STATUS_CODE,
11971                  'LW_N_Y__', to_number(null),
11972                  decode(pjp1_i.RELATIONSHIP_TYPE
11973                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
11974                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
11975                           || '_' || pjp1_i.SUP_VER_ENABLED
11976                           || '_' || l_fpm_upgrade
11977                           || '_' || l_partial_mode,
11978                         'LW_N_Y_Y_C_', to_number(null),
11979                  pjp1_i.LABOR_REVENUE))               LABOR_REVENUE,
11980           decode(pjp1_i.RELATIONSHIP_TYPE
11981                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
11982                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
11983                    || '_' || pjp1_i.SUB_STATUS_CODE
11984                    || '_' || pjp1_i.SUP_STATUS_CODE,
11985                  'LW_N_Y__', to_number(null),
11986                  decode(pjp1_i.RELATIONSHIP_TYPE
11987                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
11988                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
11989                           || '_' || pjp1_i.SUP_VER_ENABLED
11990                           || '_' || l_fpm_upgrade
11991                           || '_' || l_partial_mode,
11992                         'LW_N_Y_Y_C_', to_number(null),
11993                  pjp1_i.EQUIPMENT_HOURS))             EQUIPMENT_HOURS,
11994           decode(pjp1_i.RELATIONSHIP_TYPE
11995                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
11996                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
11997                    || '_' || pjp1_i.SUB_STATUS_CODE
11998                    || '_' || pjp1_i.SUP_STATUS_CODE,
11999                  'LW_N_Y__', to_number(null),
12000                  decode(pjp1_i.RELATIONSHIP_TYPE
12001                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
12002                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
12003                           || '_' || pjp1_i.SUP_VER_ENABLED
12004                           || '_' || l_fpm_upgrade
12005                           || '_' || l_partial_mode,
12006                         'LW_N_Y_Y_C_', to_number(null),
12007                  pjp1_i.BILLABLE_EQUIPMENT_HOURS))    BILLABLE_EQUIPMENT_HOURS,
12008           decode(pjp1_i.RELATIONSHIP_TYPE
12009                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
12010                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
12011                    || '_' || pjp1_i.SUB_STATUS_CODE
12012                    || '_' || pjp1_i.SUP_STATUS_CODE,
12013                  'LW_N_Y__', to_number(null),
12014                  decode(pjp1_i.RELATIONSHIP_TYPE
12015                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
12016                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
12017                           || '_' || pjp1_i.SUP_VER_ENABLED
12018                           || '_' || l_fpm_upgrade
12019                           || '_' || l_partial_mode,
12020                         'LW_N_Y_Y_C_', to_number(null),
12021                  pjp1_i.SUP_INV_COMMITTED_COST))      SUP_INV_COMMITTED_COST,
12022           decode(pjp1_i.RELATIONSHIP_TYPE
12023                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
12024                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
12025                    || '_' || pjp1_i.SUB_STATUS_CODE
12026                    || '_' || pjp1_i.SUP_STATUS_CODE,
12027                  'LW_N_Y__', to_number(null),
12028                  decode(pjp1_i.RELATIONSHIP_TYPE
12029                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
12030                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
12031                           || '_' || pjp1_i.SUP_VER_ENABLED
12032                           || '_' || l_fpm_upgrade
12033                           || '_' || l_partial_mode,
12034                         'LW_N_Y_Y_C_', to_number(null),
12035                  pjp1_i.PO_COMMITTED_COST))           PO_COMMITTED_COST,
12036           decode(pjp1_i.RELATIONSHIP_TYPE
12037                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
12038                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
12039                    || '_' || pjp1_i.SUB_STATUS_CODE
12040                    || '_' || pjp1_i.SUP_STATUS_CODE,
12041                  'LW_N_Y__', to_number(null),
12042                  decode(pjp1_i.RELATIONSHIP_TYPE
12043                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
12044                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
12045                           || '_' || pjp1_i.SUP_VER_ENABLED
12046                           || '_' || l_fpm_upgrade
12047                           || '_' || l_partial_mode,
12048                         'LW_N_Y_Y_C_', to_number(null),
12049                  pjp1_i.PR_COMMITTED_COST))           PR_COMMITTED_COST,
12050           decode(pjp1_i.RELATIONSHIP_TYPE
12051                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
12052                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
12053                    || '_' || pjp1_i.SUB_STATUS_CODE
12054                    || '_' || pjp1_i.SUP_STATUS_CODE,
12055                  'LW_N_Y__', to_number(null),
12056                  decode(pjp1_i.RELATIONSHIP_TYPE
12057                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
12058                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
12059                           || '_' || pjp1_i.SUP_VER_ENABLED
12060                           || '_' || l_fpm_upgrade
12061                           || '_' || l_partial_mode,
12062                         'LW_N_Y_Y_C_', to_number(null),
12063                  pjp1_i.OTH_COMMITTED_COST))          OTH_COMMITTED_COST,
12064           decode(pjp1_i.RELATIONSHIP_TYPE
12065                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
12066                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
12067                    || '_' || pjp1_i.SUP_STATUS_CODE
12068                    || '_' || l_partial_mode,
12069                  'LW_N_Y__', to_number(null),
12070                           pjp1_i.ACT_LABOR_HRS)       ACT_LABOR_HRS,
12071           decode(pjp1_i.RELATIONSHIP_TYPE
12072                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
12073                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
12074                    || '_' || pjp1_i.SUP_STATUS_CODE
12075                    || '_' || l_partial_mode,
12076                  'LW_N_Y__', to_number(null),
12077                           pjp1_i.ACT_EQUIP_HRS)       ACT_EQUIP_HRS,
12078           decode(pjp1_i.RELATIONSHIP_TYPE
12079                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
12080                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
12081                    || '_' || pjp1_i.SUP_STATUS_CODE
12082                    || '_' || l_partial_mode,
12083                  'LW_N_Y__', to_number(null),
12084                           pjp1_i.ACT_LABOR_BRDN_COST) ACT_LABOR_BRDN_COST,
12085           decode(pjp1_i.RELATIONSHIP_TYPE
12086                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
12087                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
12088                    || '_' || pjp1_i.SUP_STATUS_CODE
12089                    || '_' || l_partial_mode,
12090                  'LW_N_Y__', to_number(null),
12091                           pjp1_i.ACT_EQUIP_BRDN_COST) ACT_EQUIP_BRDN_COST,
12092           decode(pjp1_i.RELATIONSHIP_TYPE
12093                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
12094                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
12095                    || '_' || pjp1_i.SUP_STATUS_CODE
12096                    || '_' || l_partial_mode,
12097                  'LW_N_Y__', to_number(null),
12098                           pjp1_i.ACT_BRDN_COST)       ACT_BRDN_COST,
12099           decode(pjp1_i.RELATIONSHIP_TYPE
12100                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
12101                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
12102                    || '_' || pjp1_i.SUP_STATUS_CODE
12103                    || '_' || l_partial_mode,
12104                  'LW_N_Y__', to_number(null),
12105                           pjp1_i.ACT_RAW_COST)        ACT_RAW_COST,
12106           decode(pjp1_i.RELATIONSHIP_TYPE
12107                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
12108                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
12109                    || '_' || pjp1_i.SUP_STATUS_CODE
12110                    || '_' || l_partial_mode,
12111                  'LW_N_Y__', to_number(null),
12112                           pjp1_i.ACT_REVENUE)         ACT_REVENUE,
12113           decode(pjp1_i.RELATIONSHIP_TYPE
12114                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
12115                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
12116                    || '_' || pjp1_i.SUP_STATUS_CODE
12117                    || '_' || l_partial_mode,
12118                  'LW_N_Y__', to_number(null),
12119                           pjp1_i.ACT_LABOR_RAW_COST)  ACT_LABOR_RAW_COST,
12120           decode(pjp1_i.RELATIONSHIP_TYPE
12121                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
12122                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
12123                    || '_' || pjp1_i.SUP_STATUS_CODE
12124                    || '_' || l_partial_mode,
12125                  'LW_N_Y__', to_number(null),
12126                           pjp1_i.ACT_EQUIP_RAW_COST)  ACT_EQUIP_RAW_COST,
12127           decode(pjp1_i.RELATIONSHIP_TYPE
12128                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
12129                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
12130                    || '_' || pjp1_i.SUP_STATUS_CODE
12131                    || '_' || l_partial_mode,
12132                  'LW_N_Y__', to_number(null),
12133                           pjp1_i.ETC_LABOR_HRS)       ETC_LABOR_HRS,
12134           decode(pjp1_i.RELATIONSHIP_TYPE
12135                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
12136                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
12137                    || '_' || pjp1_i.SUP_STATUS_CODE
12138                    || '_' || l_partial_mode,
12139                  'LW_N_Y__', to_number(null),
12140                           pjp1_i.ETC_EQUIP_HRS)       ETC_EQUIP_HRS,
12141           decode(pjp1_i.RELATIONSHIP_TYPE
12142                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
12143                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
12144                    || '_' || pjp1_i.SUP_STATUS_CODE
12145                    || '_' || l_partial_mode,
12146                  'LW_N_Y__', to_number(null),
12147                           pjp1_i.ETC_LABOR_BRDN_COST) ETC_LABOR_BRDN_COST,
12148           decode(pjp1_i.RELATIONSHIP_TYPE
12149                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
12150                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
12151                    || '_' || pjp1_i.SUP_STATUS_CODE
12152                    || '_' || l_partial_mode,
12153                  'LW_N_Y__', to_number(null),
12154                           pjp1_i.ETC_EQUIP_BRDN_COST) ETC_EQUIP_BRDN_COST,
12155           decode(pjp1_i.RELATIONSHIP_TYPE
12156                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
12157                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
12158                    || '_' || pjp1_i.SUP_STATUS_CODE
12159                    || '_' || l_partial_mode,
12160                  'LW_N_Y__', to_number(null),
12161                           pjp1_i.ETC_BRDN_COST)       ETC_BRDN_COST,
12162           decode(pjp1_i.RELATIONSHIP_TYPE
12163                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
12164                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
12165                    || '_' || pjp1_i.SUP_STATUS_CODE
12166                    || '_' || l_partial_mode,
12167                  'LW_N_Y__', to_number(null),
12168                           pjp1_i.ETC_RAW_COST)        ETC_RAW_COST,
12169           decode(pjp1_i.RELATIONSHIP_TYPE
12170                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
12171                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
12172                    || '_' || pjp1_i.SUP_STATUS_CODE
12173                    || '_' || l_partial_mode,
12174                  'LW_N_Y__', to_number(null),
12175                           pjp1_i.ETC_LABOR_RAW_COST)  ETC_LABOR_RAW_COST,
12176           decode(pjp1_i.RELATIONSHIP_TYPE
12177                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
12178                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
12179                    || '_' || pjp1_i.SUP_STATUS_CODE
12180                    || '_' || l_partial_mode,
12181                  'LW_N_Y__', to_number(null),
12182                           pjp1_i.ETC_EQUIP_RAW_COST)  ETC_EQUIP_RAW_COST,
12183           pjp1_i.CUSTOM1,
12184           pjp1_i.CUSTOM2,
12185           pjp1_i.CUSTOM3,
12186           pjp1_i.CUSTOM4,
12187           pjp1_i.CUSTOM5,
12188           pjp1_i.CUSTOM6,
12189           pjp1_i.CUSTOM7,
12190           pjp1_i.CUSTOM8,
12191           pjp1_i.CUSTOM9,
12192           pjp1_i.CUSTOM10,
12193           pjp1_i.CUSTOM11,
12194           pjp1_i.CUSTOM12,
12195           pjp1_i.CUSTOM13,
12196           pjp1_i.CUSTOM14,
12197           pjp1_i.CUSTOM15
12198         from
12199           (
12200         select
12201           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12202                  pjp.INSERT_FLAG, 'Y')                INSERT_FLAG,
12203           pjp.RELATIONSHIP_TYPE,
12204           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12205                  null, sub_ver.STATUS_CODE)           SUB_STATUS_CODE,
12206           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12207                  null, sup_ver.STATUS_CODE)           SUP_STATUS_CODE,
12208           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12209                  null, sup_wpa.WP_ENABLE_VERSION_FLAG)SUP_VER_ENABLED,
12210           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12211                  null, decode(pjp.PLAN_VERSION_ID,
12212                               -1, prg.SUP_ID,
12213                               -3, prg.SUP_ID,
12214                               -4, prg.SUP_ID,
12215                                   null))              SUP_ID,
12216           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12217                  null, decode(pjp.PLAN_VERSION_ID,
12218                               -1, prg.SUP_EMT_ID,
12219                               -3, prg.SUP_EMT_ID,
12220                               -4, prg.SUP_EMT_ID,
12221                                   null))              SUP_EMT_ID,
12222           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12223                  null, decode(pjp.PLAN_VERSION_ID,
12224                               -1, prg.WP_FLAG,
12225                               -3, prg.WP_FLAG,
12226                               -4, prg.WP_FLAG,
12227                                   null))              SUP_WP_FLAG,
12228           p_worker_id                                 WORKER_ID,
12229           'W'                                         RECORD_TYPE,
12230           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12231                  l_level, prg.SUP_LEVEL)              PRG_LEVEL,
12232           pjp.LINE_TYPE,
12233           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12234                  pjp.PROJECT_ID, prg.SUP_PROJECT_ID)  PROJECT_ID,
12235           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12236                  pjp.PROJECT_ORG_ID,
12237                  prg.SUP_PROJECT_ORG_ID)              PROJECT_ORG_ID,
12238           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12239                  pjp.PROJECT_ORGANIZATION_ID,
12240                  prg.SUP_PROJECT_ORGANIZATION_ID)     PROJECT_ORGANIZATION_ID,
12241           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12242                  pjp.PROJECT_ELEMENT_ID,
12243                  prg.SUB_ROLLUP_ID)                   PROJECT_ELEMENT_ID,
12244           pjp.TIME_ID,
12245           pjp.PERIOD_TYPE_ID,
12246           pjp.CALENDAR_TYPE,
12247           pjp.RBS_AGGR_LEVEL,
12248           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12249                  pjp.WBS_ROLLUP_FLAG, 'N')            WBS_ROLLUP_FLAG,
12250           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12251                  pjp.PRG_ROLLUP_FLAG, 'Y')            PRG_ROLLUP_FLAG,
12252           pjp.CURR_RECORD_TYPE_ID,
12253           pjp.CURRENCY_CODE,
12254           pjp.RBS_ELEMENT_ID,
12255           pjp.RBS_VERSION_ID,
12256           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12257                  pjp.PLAN_VERSION_ID,
12258                  decode(pjp.PLAN_VERSION_ID,
12259                         -1, pjp.PLAN_VERSION_ID,
12260                         -2, pjp.PLAN_VERSION_ID,
12261                         -3, pjp.PLAN_VERSION_ID,
12262                         -4, pjp.PLAN_VERSION_ID,
12263                             wbs_hdr.PLAN_VERSION_ID)) PLAN_VERSION_ID,
12264           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12265                  pjp.PLAN_TYPE_ID,
12266                  decode(pjp.PLAN_VERSION_ID,
12267                         -1, pjp.PLAN_TYPE_ID,
12268                         -2, pjp.PLAN_TYPE_ID,
12269                         -3, pjp.PLAN_TYPE_ID,
12270                         -4, pjp.PLAN_TYPE_ID,
12271                             wbs_hdr.PLAN_TYPE_ID))    PLAN_TYPE_ID,
12272           pjp.PLAN_TYPE_CODE,
12273           sum(pjp.RAW_COST)                           RAW_COST,
12274           sum(pjp.BRDN_COST)                          BRDN_COST,
12275           sum(pjp.REVENUE)                            REVENUE,
12276           sum(pjp.BILL_RAW_COST)                      BILL_RAW_COST,
12277           sum(pjp.BILL_BRDN_COST)                     BILL_BRDN_COST,
12278           sum(pjp.BILL_LABOR_RAW_COST)                BILL_LABOR_RAW_COST,
12279           sum(pjp.BILL_LABOR_BRDN_COST)               BILL_LABOR_BRDN_COST,
12280           sum(pjp.BILL_LABOR_HRS)                     BILL_LABOR_HRS,
12281           sum(pjp.EQUIPMENT_RAW_COST)                 EQUIPMENT_RAW_COST,
12282           sum(pjp.EQUIPMENT_BRDN_COST)                EQUIPMENT_BRDN_COST,
12283           sum(pjp.CAPITALIZABLE_RAW_COST)             CAPITALIZABLE_RAW_COST,
12284           sum(pjp.CAPITALIZABLE_BRDN_COST)            CAPITALIZABLE_BRDN_COST,
12285           sum(pjp.LABOR_RAW_COST)                     LABOR_RAW_COST,
12286           sum(pjp.LABOR_BRDN_COST)                    LABOR_BRDN_COST,
12287           sum(pjp.LABOR_HRS)                          LABOR_HRS,
12288           sum(pjp.LABOR_REVENUE)                      LABOR_REVENUE,
12289           sum(pjp.EQUIPMENT_HOURS)                    EQUIPMENT_HOURS,
12290           sum(pjp.BILLABLE_EQUIPMENT_HOURS)           BILLABLE_EQUIPMENT_HOURS,
12291           sum(pjp.SUP_INV_COMMITTED_COST)             SUP_INV_COMMITTED_COST,
12292           sum(pjp.PO_COMMITTED_COST)                  PO_COMMITTED_COST,
12293           sum(pjp.PR_COMMITTED_COST)                  PR_COMMITTED_COST,
12294           sum(pjp.OTH_COMMITTED_COST)                 OTH_COMMITTED_COST,
12295           sum(pjp.ACT_LABOR_HRS)                      ACT_LABOR_HRS,
12296           sum(pjp.ACT_EQUIP_HRS)                      ACT_EQUIP_HRS,
12297           sum(pjp.ACT_LABOR_BRDN_COST)                ACT_LABOR_BRDN_COST,
12298           sum(pjp.ACT_EQUIP_BRDN_COST)                ACT_EQUIP_BRDN_COST,
12299           sum(pjp.ACT_BRDN_COST)                      ACT_BRDN_COST,
12300           sum(pjp.ACT_RAW_COST)                       ACT_RAW_COST,
12301           sum(pjp.ACT_REVENUE)                        ACT_REVENUE,
12302           sum(pjp.ACT_LABOR_RAW_COST)                 ACT_LABOR_RAW_COST,
12303           sum(pjp.ACT_EQUIP_RAW_COST)                 ACT_EQUIP_RAW_COST,
12304           sum(pjp.ETC_LABOR_HRS)                      ETC_LABOR_HRS,
12305           sum(pjp.ETC_EQUIP_HRS)                      ETC_EQUIP_HRS,
12306           sum(pjp.ETC_LABOR_BRDN_COST)                ETC_LABOR_BRDN_COST,
12307           sum(pjp.ETC_EQUIP_BRDN_COST)                ETC_EQUIP_BRDN_COST,
12308           sum(pjp.ETC_BRDN_COST)                      ETC_BRDN_COST,
12309           sum(pjp.ETC_RAW_COST)                       ETC_RAW_COST,
12310           sum(pjp.ETC_LABOR_RAW_COST)                 ETC_LABOR_RAW_COST,
12311           sum(pjp.ETC_EQUIP_RAW_COST)                 ETC_EQUIP_RAW_COST,
12312           sum(pjp.CUSTOM1)                            CUSTOM1,
12313           sum(pjp.CUSTOM2)                            CUSTOM2,
12314           sum(pjp.CUSTOM3)                            CUSTOM3,
12315           sum(pjp.CUSTOM4)                            CUSTOM4,
12316           sum(pjp.CUSTOM5)                            CUSTOM5,
12317           sum(pjp.CUSTOM6)                            CUSTOM6,
12318           sum(pjp.CUSTOM7)                            CUSTOM7,
12319           sum(pjp.CUSTOM8)                            CUSTOM8,
12320           sum(pjp.CUSTOM9)                            CUSTOM9,
12321           sum(pjp.CUSTOM10)                           CUSTOM10,
12322           sum(pjp.CUSTOM11)                           CUSTOM11,
12323           sum(pjp.CUSTOM12)                           CUSTOM12,
12324           sum(pjp.CUSTOM13)                           CUSTOM13,
12325           sum(pjp.CUSTOM14)                           CUSTOM14,
12326           sum(pjp.CUSTOM15)                           CUSTOM15
12327         from
12328           (
12329           select /*+ index(wbs PA_XBS_DENORM_N2) parallel(pjp1) */ -- changed for bug 5927368
12330 		 -- get incremental task level amounts from source and
12331                  -- program rollup amounts from interim
12332             to_char(null)                             LINE_TYPE,
12333             wbs_hdr.WBS_VERSION_ID,
12334             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
12335             decode(wbs_hdr.WP_FLAG
12336                      || '_' || to_char(sign(pjp1.PLAN_VERSION_ID))
12337                      || '_' || nvl(fin_plan.INVERT_ID, 'PRJ'),
12338                    'N_1_PRJ', 'N',
12339                    'N_-1_PRG', 'N',
12340                    decode(top_slice.INVERT_ID,
12341                           'PRJ', 'Y',
12342                           decode(wbs.SUB_LEVEL,
12343                                  1, 'Y', 'N')))       PUSHUP_FLAG,
12344             decode(pjp1.RBS_AGGR_LEVEL,
12345                    'L', 'N',
12346                         decode(wbs_hdr.WP_FLAG
12347                                  || '_' || to_char(sign(pjp1.PLAN_VERSION_ID))
12348                                  || '_' || fin_plan.INVERT_ID,
12349                                'N_1_PRG', decode(top_slice.INVERT_ID,
12350                                                  'PRJ', 'Y',
12351                                                  decode(wbs.SUB_LEVEL,
12352                                                         1, 'Y', 'N')),
12353                                'N_-1_PRG', 'N',
12354                                decode(wbs_hdr.WP_FLAG
12355                                         || '_' || fin_plan.INVERT_ID
12356                                         || '_' || fin_plan.CB
12357                                         || '_' || fin_plan.CO
12358                                         || '_'
12359                                         || to_char(fin_plan.PLAN_VERSION_ID),
12360                                       'N_PRJ_Y_Y_-4', 'N',
12361                                                       'Y'))
12362                   )                                   INSERT_FLAG,
12363             pjp1.PROJECT_ID,
12364             pjp1.PROJECT_ORG_ID,
12365             pjp1.PROJECT_ORGANIZATION_ID,
12366             decode(top_slice.INVERT_ID,
12367                    'PRJ', prg.SUP_EMT_ID,
12368                           decode(wbs.SUB_LEVEL,
12369                                  1, prg.SUP_EMT_ID,
12370                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
12371             pjp1.TIME_ID,
12372             pjp1.PERIOD_TYPE_ID,
12373             pjp1.CALENDAR_TYPE,
12374             pjp1.RBS_AGGR_LEVEL,
12375             'Y'                                       WBS_ROLLUP_FLAG,
12376             pjp1.PRG_ROLLUP_FLAG,
12377             pjp1.CURR_RECORD_TYPE_ID,
12378             pjp1.CURRENCY_CODE,
12379             pjp1.RBS_ELEMENT_ID,
12380             pjp1.RBS_VERSION_ID,
12381             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
12382                    'N_PRG', fin_plan.PLAN_VERSION_ID,
12383                             pjp1.PLAN_VERSION_ID)     PLAN_VERSION_ID,
12384             pjp1.PLAN_TYPE_ID,
12385             pjp1.PLAN_TYPE_CODE,
12386             pjp1.RAW_COST,
12387             pjp1.BRDN_COST,
12388             pjp1.REVENUE,
12389             pjp1.BILL_RAW_COST,
12390             pjp1.BILL_BRDN_COST,
12391             pjp1.BILL_LABOR_RAW_COST,
12392             pjp1.BILL_LABOR_BRDN_COST,
12393             pjp1.BILL_LABOR_HRS,
12394             pjp1.EQUIPMENT_RAW_COST,
12395             pjp1.EQUIPMENT_BRDN_COST,
12396             pjp1.CAPITALIZABLE_RAW_COST,
12397             pjp1.CAPITALIZABLE_BRDN_COST,
12398             pjp1.LABOR_RAW_COST,
12399             pjp1.LABOR_BRDN_COST,
12400             pjp1.LABOR_HRS,
12401             pjp1.LABOR_REVENUE,
12402             pjp1.EQUIPMENT_HOURS,
12403             pjp1.BILLABLE_EQUIPMENT_HOURS,
12404             pjp1.SUP_INV_COMMITTED_COST,
12405             pjp1.PO_COMMITTED_COST,
12406             pjp1.PR_COMMITTED_COST,
12407             pjp1.OTH_COMMITTED_COST,
12408             pjp1.ACT_LABOR_HRS,
12409             pjp1.ACT_EQUIP_HRS,
12410             pjp1.ACT_LABOR_BRDN_COST,
12411             pjp1.ACT_EQUIP_BRDN_COST,
12412             pjp1.ACT_BRDN_COST,
12413             pjp1.ACT_RAW_COST,
12414             pjp1.ACT_REVENUE,
12415             pjp1.ACT_LABOR_RAW_COST,
12416             pjp1.ACT_EQUIP_RAW_COST,
12417             pjp1.ETC_LABOR_HRS,
12418             pjp1.ETC_EQUIP_HRS,
12419             pjp1.ETC_LABOR_BRDN_COST,
12420             pjp1.ETC_EQUIP_BRDN_COST,
12421             pjp1.ETC_BRDN_COST,
12422             pjp1.ETC_RAW_COST,
12423             pjp1.ETC_LABOR_RAW_COST,
12424             pjp1.ETC_EQUIP_RAW_COST,
12425             pjp1.CUSTOM1,
12426             pjp1.CUSTOM2,
12427             pjp1.CUSTOM3,
12428             pjp1.CUSTOM4,
12429             pjp1.CUSTOM5,
12430             pjp1.CUSTOM6,
12431             pjp1.CUSTOM7,
12432             pjp1.CUSTOM8,
12433             pjp1.CUSTOM9,
12434             pjp1.CUSTOM10,
12435             pjp1.CUSTOM11,
12436             pjp1.CUSTOM12,
12437             pjp1.CUSTOM13,
12438             pjp1.CUSTOM14,
12439             pjp1.CUSTOM15
12440           from
12441             PJI_FP_AGGR_PJP1   pjp1,
12442             PJI_PJP_WBS_HEADER wbs_hdr,
12443             PA_XBS_DENORM      wbs,
12444             PJI_XBS_DENORM     prg,
12445             (
12446               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
12447               from DUAL union all
12448               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
12449               from DUAL union all
12450               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
12451               from DUAL union all
12452               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
12453               from DUAL union all
12454               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
12455               from DUAL union all
12456               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
12457               from DUAL union all
12458               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
12459               from DUAL union all
12460               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
12461               from DUAL
12462             ) fin_plan,
12463             (
12464               select 1     WBS_SUP_LEVEL,
12465                      1     WBS_SUB_LEVEL,
12466                      'PRJ' INVERT_ID
12467               from   DUAL
12468               union all
12469               select 1     WBS_SUP_LEVEL,
12470                      1     WBS_SUB_LEVEL,
12471                      'WBS' INVERT_ID
12472               from   DUAL
12473             ) top_slice
12474           where
12475             prg.STRUCT_TYPE         =  'PRG'                       and
12476             prg.SUP_LEVEL           =  l_level                     and
12477             prg.SUB_LEVEL           =  l_level                     and
12478             wbs.STRUCT_TYPE         =  'WBS'                       and
12479             ((wbs.SUP_LEVEL = 1 and
12480               wbs.SUB_LEVEL = 1) or
12481              (wbs.SUP_LEVEL <> wbs.SUB_LEVEL))                     and
12482             wbs.STRUCT_VERSION_ID   =  prg.SUP_ID                  and
12483             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
12484             pjp1.WORKER_ID          =  p_worker_id                 and
12485             pjp1.PRG_LEVEL          in (0, l_level)                and
12486             pjp1.RBS_AGGR_LEVEL     in ('T', 'L')                  and
12487             pjp1.WBS_ROLLUP_FLAG    =  'N'                         and
12488             pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                  and
12489             pjp1.PROJECT_ID         =  wbs_hdr.PROJECT_ID          and
12490             pjp1.PLAN_VERSION_ID    =  wbs_hdr.PLAN_VERSION_ID     and
12491             pjp1.PLAN_TYPE_CODE     =  wbs_hdr.PLAN_TYPE_CODE      and
12492             decode(pjp1.PLAN_VERSION_ID,
12493                    -3, pjp1.PLAN_TYPE_ID,
12494                    -4, pjp1.PLAN_TYPE_ID,
12495                        -1)          =  decode(pjp1.PLAN_VERSION_ID,
12496                                               -3, wbs_hdr.PLAN_TYPE_ID,
12497                                               -4, wbs_hdr.PLAN_TYPE_ID,
12498                                                   -1)              and
12499             wbs.STRUCT_VERSION_ID   =  wbs_hdr.WBS_VERSION_ID      and
12500             pjp1.PROJECT_ELEMENT_ID =  wbs.SUB_EMT_ID              and
12501             wbs_hdr.CB_FLAG         =  fin_plan.CB             (+) and
12502             wbs_hdr.CO_FLAG         =  fin_plan.CO             (+) and
12503             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
12504             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+)
12505           union all
12506           select /*+ parallel(pjp1) */          -- changed for bug 5927368
12507 		 -- get incremental project level amounts from source
12508             to_char(null)                             LINE_TYPE,
12509             wbs_hdr.WBS_VERSION_ID,
12510             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
12511             'Y'                                       PUSHUP_FLAG,
12512             decode(pjp1.RBS_AGGR_LEVEL,
12513                    'L', 'N',
12514                         decode(fin_plan.PLAN_VERSION_ID,
12515                                null, 'N', 'Y'))       INSERT_FLAG,
12516             pjp1.PROJECT_ID,
12517             pjp1.PROJECT_ORG_ID,
12518             pjp1.PROJECT_ORGANIZATION_ID,
12519             pjp1.PROJECT_ELEMENT_ID,
12520             pjp1.TIME_ID,
12521             pjp1.PERIOD_TYPE_ID,
12522             pjp1.CALENDAR_TYPE,
12523             pjp1.RBS_AGGR_LEVEL,
12524             'Y'                                       WBS_ROLLUP_FLAG,
12525             pjp1.PRG_ROLLUP_FLAG,
12526             pjp1.CURR_RECORD_TYPE_ID,
12527             pjp1.CURRENCY_CODE,
12528             pjp1.RBS_ELEMENT_ID,
12529             pjp1.RBS_VERSION_ID,
12530             decode(wbs_hdr.WP_FLAG,
12531                    'N', decode(pjp1.PLAN_VERSION_ID,
12532                                -1, pjp1.PLAN_VERSION_ID,
12533                                -2, pjp1.PLAN_VERSION_ID,
12534                                -3, pjp1.PLAN_VERSION_ID, -- won't exist
12535                                -4, pjp1.PLAN_VERSION_ID, -- won't exist
12536                                    fin_plan.PLAN_VERSION_ID),
12537                         pjp1.PLAN_VERSION_ID)         PLAN_VERSION_ID,
12538             pjp1.PLAN_TYPE_ID,
12539             pjp1.PLAN_TYPE_CODE,
12540             pjp1.RAW_COST,
12541             pjp1.BRDN_COST,
12542             pjp1.REVENUE,
12543             pjp1.BILL_RAW_COST,
12544             pjp1.BILL_BRDN_COST,
12545             pjp1.BILL_LABOR_RAW_COST,
12546             pjp1.BILL_LABOR_BRDN_COST,
12547             pjp1.BILL_LABOR_HRS,
12548             pjp1.EQUIPMENT_RAW_COST,
12549             pjp1.EQUIPMENT_BRDN_COST,
12550             pjp1.CAPITALIZABLE_RAW_COST,
12551             pjp1.CAPITALIZABLE_BRDN_COST,
12552             pjp1.LABOR_RAW_COST,
12553             pjp1.LABOR_BRDN_COST,
12554             pjp1.LABOR_HRS,
12555             pjp1.LABOR_REVENUE,
12556             pjp1.EQUIPMENT_HOURS,
12557             pjp1.BILLABLE_EQUIPMENT_HOURS,
12558             pjp1.SUP_INV_COMMITTED_COST,
12559             pjp1.PO_COMMITTED_COST,
12560             pjp1.PR_COMMITTED_COST,
12561             pjp1.OTH_COMMITTED_COST,
12562             pjp1.ACT_LABOR_HRS,
12563             pjp1.ACT_EQUIP_HRS,
12564             pjp1.ACT_LABOR_BRDN_COST,
12565             pjp1.ACT_EQUIP_BRDN_COST,
12566             pjp1.ACT_BRDN_COST,
12567             pjp1.ACT_RAW_COST,
12568             pjp1.ACT_REVENUE,
12569             pjp1.ACT_LABOR_RAW_COST,
12570             pjp1.ACT_EQUIP_RAW_COST,
12571             pjp1.ETC_LABOR_HRS,
12572             pjp1.ETC_EQUIP_HRS,
12573             pjp1.ETC_LABOR_BRDN_COST,
12574             pjp1.ETC_EQUIP_BRDN_COST,
12575             pjp1.ETC_BRDN_COST,
12576             pjp1.ETC_RAW_COST,
12577             pjp1.ETC_LABOR_RAW_COST,
12578             pjp1.ETC_EQUIP_RAW_COST,
12579             pjp1.CUSTOM1,
12580             pjp1.CUSTOM2,
12581             pjp1.CUSTOM3,
12582             pjp1.CUSTOM4,
12583             pjp1.CUSTOM5,
12584             pjp1.CUSTOM6,
12585             pjp1.CUSTOM7,
12586             pjp1.CUSTOM8,
12587             pjp1.CUSTOM9,
12588             pjp1.CUSTOM10,
12589             pjp1.CUSTOM11,
12590             pjp1.CUSTOM12,
12591             pjp1.CUSTOM13,
12592             pjp1.CUSTOM14,
12593             pjp1.CUSTOM15
12594           from
12595             PJI_FP_AGGR_PJP1   pjp1,
12596             PJI_PJP_WBS_HEADER wbs_hdr,
12597             PJI_XBS_DENORM     prg,
12598             (
12599               select 'Y' CB_FLAG,
12600                      'N' CO_FLAG,
12601                      -3  PLAN_VERSION_ID
12602               from DUAL union all
12603               select 'N' CB_FLAG,
12604                      'Y' CO_FLAG,
12605                      -4  PLAN_VERSION_ID
12606               from DUAL union all
12607               select 'Y' CB_FLAG,
12608                      'Y' CO_FLAG,
12609                      -3  PLAN_VERSION_ID
12610               from DUAL union all
12611               select 'Y' CB_FLAG,
12612                      'Y' CO_FLAG,
12613                      -4  PLAN_VERSION_ID
12614               from DUAL
12615             ) fin_plan
12616           where
12617             prg.STRUCT_TYPE         = 'PRG'                    and
12618             prg.SUP_LEVEL           = l_level                  and
12619             prg.SUB_LEVEL           = l_level                  and
12620             pjp1.WORKER_ID          = p_worker_id              and
12621             pjp1.PROJECT_ID         = prg.SUP_PROJECT_ID       and
12622             pjp1.PROJECT_ELEMENT_ID = prg.SUP_EMT_ID           and
12623             pjp1.PRG_LEVEL          = 0                        and
12624             pjp1.RBS_AGGR_LEVEL     in ('T', 'L')              and
12625             pjp1.WBS_ROLLUP_FLAG    = 'N'                      and
12626             pjp1.PRG_ROLLUP_FLAG    = 'N'                      and
12627             wbs_hdr.PROJECT_ID      = pjp1.PROJECT_ID          and
12628             wbs_hdr.PLAN_VERSION_ID = pjp1.PLAN_VERSION_ID     and
12629             wbs_hdr.PLAN_TYPE_CODE  = pjp1.PLAN_TYPE_CODE      and
12630             decode(wbs_hdr.WP_FLAG,
12631                    'N', decode(pjp1.PLAN_VERSION_ID,
12632                                -1, 'Y',
12633                                -2, 'Y',
12634                                -3, 'Y', -- won't exist
12635                                -4, 'Y', -- won't exist
12636                                    decode(wbs_hdr.CB_FLAG || '_' ||
12637                                           wbs_hdr.CO_FLAG,
12638                                           'Y_Y', 'Y',
12639                                           'N_Y', 'Y',
12640                                           'Y_N', 'Y',
12641                                                  'N')),
12642                         'Y')        =  'Y'                     and
12643             wbs_hdr.WBS_VERSION_ID  = prg.SUP_ID               and
12644             wbs_hdr.CB_FLAG         = fin_plan.CB_FLAG     (+) and
12645             wbs_hdr.CO_FLAG         = fin_plan.CO_FLAG     (+)
12646           union all
12647           select /*+ ordered
12648                      index(fpr PJI_FP_XBS_ACCUM_F_N1) */
12649                  -- get delta task level amounts from Reporting Lines
12650             to_char(null)                             LINE_TYPE,
12651             wbs_hdr.WBS_VERSION_ID,
12652             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
12653             decode(log.EVENT_TYPE,
12654                    'WBS_CHANGE', 'Y',
12655                    'WBS_PUBLISH', 'N')                PUSHUP_FLAG,
12656             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
12657                    'N_PRG', decode(top_slice.INVERT_ID,
12658                                    'PRJ', 'Y',
12659                                    decode(wbs.SUB_LEVEL,
12660                                           1, 'Y', 'N')),
12661                    decode(wbs_hdr.WP_FLAG
12662                             || '_' || fin_plan.INVERT_ID
12663                             || '_' || fin_plan.CB
12664                             || '_' || fin_plan.CO
12665                             || '_' || to_char(fin_plan.PLAN_VERSION_ID),
12666                           'N_PRJ_Y_Y_-4', 'N',
12667                                           'Y'))       INSERT_FLAG,
12668             fpr.PROJECT_ID,
12669             fpr.PROJECT_ORG_ID,
12670             fpr.PROJECT_ORGANIZATION_ID,
12671             decode(top_slice.INVERT_ID,
12672                    'PRJ', prg.SUP_EMT_ID,
12673                           decode(wbs.SUB_LEVEL,
12674                                  1, prg.SUP_EMT_ID,
12675                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
12676             fpr.TIME_ID,
12677             fpr.PERIOD_TYPE_ID,
12678             fpr.CALENDAR_TYPE,
12679             fpr.RBS_AGGR_LEVEL,
12680             'Y'                                       WBS_ROLLUP_FLAG,
12681             fpr.PRG_ROLLUP_FLAG,
12682             fpr.CURR_RECORD_TYPE_ID,
12683             fpr.CURRENCY_CODE,
12684             fpr.RBS_ELEMENT_ID,
12685             fpr.RBS_VERSION_ID,
12686             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
12687                    'N_PRG', fin_plan.PLAN_VERSION_ID,
12688                             fpr.PLAN_VERSION_ID)      PLAN_VERSION_ID,
12689             fpr.PLAN_TYPE_ID,
12690             fpr.PLAN_TYPE_CODE,
12691             wbs.SIGN * fpr.RAW_COST                   RAW_COST,
12692             wbs.SIGN * fpr.BRDN_COST                  BRDN_COST,
12693             wbs.SIGN * fpr.REVENUE                    REVENUE,
12694             wbs.SIGN * fpr.BILL_RAW_COST              BILL_RAW_COST,
12695             wbs.SIGN * fpr.BILL_BRDN_COST             BILL_BRDN_COST,
12696             wbs.SIGN * fpr.BILL_LABOR_RAW_COST        BILL_LABOR_RAW_COST,
12697             wbs.SIGN * fpr.BILL_LABOR_BRDN_COST       BILL_LABOR_BRDN_COST,
12698             wbs.SIGN * fpr.BILL_LABOR_HRS             BILL_LABOR_HRS,
12699             wbs.SIGN * fpr.EQUIPMENT_RAW_COST         EQUIPMENT_RAW_COST,
12700             wbs.SIGN * fpr.EQUIPMENT_BRDN_COST        EQUIPMENT_BRDN_COST,
12701             wbs.SIGN * fpr.CAPITALIZABLE_RAW_COST     CAPITALIZABLE_RAW_COST,
12702             wbs.SIGN * fpr.CAPITALIZABLE_BRDN_COST    CAPITALIZABLE_BRDN_COST,
12703             wbs.SIGN * fpr.LABOR_RAW_COST             LABOR_RAW_COST,
12704             wbs.SIGN * fpr.LABOR_BRDN_COST            LABOR_BRDN_COST,
12705             wbs.SIGN * fpr.LABOR_HRS                  LABOR_HRS,
12706             wbs.SIGN * fpr.LABOR_REVENUE              LABOR_REVENUE,
12707             wbs.SIGN * fpr.EQUIPMENT_HOURS            EQUIPMENT_HOURS,
12708             wbs.SIGN * fpr.BILLABLE_EQUIPMENT_HOURS   BILLABLE_EQUIPMENT_HOURS,
12709             wbs.SIGN * fpr.SUP_INV_COMMITTED_COST     SUP_INV_COMMITTED_COST,
12710             wbs.SIGN * fpr.PO_COMMITTED_COST          PO_COMMITTED_COST,
12711             wbs.SIGN * fpr.PR_COMMITTED_COST          PR_COMMITTED_COST,
12712             wbs.SIGN * fpr.OTH_COMMITTED_COST         OTH_COMMITTED_COST,
12713             wbs.SIGN * fpr.ACT_LABOR_HRS              ACT_LABOR_HRS,
12714             wbs.SIGN * fpr.ACT_EQUIP_HRS              ACT_EQUIP_HRS,
12715             wbs.SIGN * fpr.ACT_LABOR_BRDN_COST        ACT_LABOR_BRDN_COST,
12716             wbs.SIGN * fpr.ACT_EQUIP_BRDN_COST        ACT_EQUIP_BRDN_COST,
12717             wbs.SIGN * fpr.ACT_BRDN_COST              ACT_BRDN_COST,
12718             wbs.SIGN * fpr.ACT_RAW_COST               ACT_RAW_COST,
12719             wbs.SIGN * fpr.ACT_REVENUE                ACT_REVENUE,
12720             wbs.SIGN * fpr.ACT_LABOR_RAW_COST         ACT_LABOR_RAW_COST,
12721             wbs.SIGN * fpr.ACT_EQUIP_RAW_COST         ACT_EQUIP_RAW_COST,
12722             wbs.SIGN * fpr.ETC_LABOR_HRS              ETC_LABOR_HRS,
12723             wbs.SIGN * fpr.ETC_EQUIP_HRS              ETC_EQUIP_HRS,
12724             wbs.SIGN * fpr.ETC_LABOR_BRDN_COST        ETC_LABOR_BRDN_COST,
12725             wbs.SIGN * fpr.ETC_EQUIP_BRDN_COST        ETC_EQUIP_BRDN_COST,
12726             wbs.SIGN * fpr.ETC_BRDN_COST              ETC_BRDN_COST,
12727             wbs.SIGN * fpr.ETC_RAW_COST               ETC_RAW_COST,
12728             wbs.SIGN * fpr.ETC_LABOR_RAW_COST         ETC_LABOR_RAW_COST,
12729             wbs.SIGN * fpr.ETC_EQUIP_RAW_COST         ETC_EQUIP_RAW_COST,
12730             wbs.SIGN * fpr.CUSTOM1                    CUSTOM1,
12731             wbs.SIGN * fpr.CUSTOM2                    CUSTOM2,
12732             wbs.SIGN * fpr.CUSTOM3                    CUSTOM3,
12733             wbs.SIGN * fpr.CUSTOM4                    CUSTOM4,
12734             wbs.SIGN * fpr.CUSTOM5                    CUSTOM5,
12735             wbs.SIGN * fpr.CUSTOM6                    CUSTOM6,
12736             wbs.SIGN * fpr.CUSTOM7                    CUSTOM7,
12737             wbs.SIGN * fpr.CUSTOM8                    CUSTOM8,
12738             wbs.SIGN * fpr.CUSTOM9                    CUSTOM9,
12739             wbs.SIGN * fpr.CUSTOM10                   CUSTOM10,
12740             wbs.SIGN * fpr.CUSTOM11                   CUSTOM11,
12741             wbs.SIGN * fpr.CUSTOM12                   CUSTOM12,
12742             wbs.SIGN * fpr.CUSTOM13                   CUSTOM13,
12743             wbs.SIGN * fpr.CUSTOM14                   CUSTOM14,
12744             wbs.SIGN * fpr.CUSTOM15                   CUSTOM15
12745           from
12746             PJI_PA_PROJ_EVENTS_LOG log,
12747             PJI_PJP_WBS_HEADER     wbs_hdr,
12748             PJI_XBS_DENORM_DELTA   wbs,
12749             PJI_XBS_DENORM         prg,
12750             PJI_FP_XBS_ACCUM_F     fpr,
12751             (
12752               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
12753               from DUAL union all
12754               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
12755               from DUAL union all
12756               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
12757               from DUAL union all
12758               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
12759               from DUAL union all
12760               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
12761               from DUAL union all
12762               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
12763               from DUAL union all
12764               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
12765               from DUAL union all
12766               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
12767               from DUAL
12768             ) fin_plan,
12769             (
12770               select 1     WBS_SUP_LEVEL,
12771                      1     WBS_SUB_LEVEL,
12772                      'PRJ' INVERT_ID
12773               from   DUAL
12774               union all
12775               select 1     WBS_SUP_LEVEL,
12776                      1     WBS_SUB_LEVEL,
12777                      'WBS' INVERT_ID
12778               from   DUAL
12779             ) top_slice
12780           where
12781             prg.STRUCT_TYPE         =  'PRG'                       and
12782             prg.SUP_LEVEL           =  l_level                     and
12783             prg.SUB_LEVEL           =  l_level                     and
12784             wbs.WORKER_ID           =  p_worker_id                 and
12785             wbs.STRUCT_TYPE         =  'WBS'                       and
12786             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
12787             log.WORKER_ID           =  p_worker_id                 and
12788             log.EVENT_ID            =  wbs.EVENT_ID                and
12789             log.EVENT_TYPE          in ('WBS_CHANGE',
12790                                         'WBS_PUBLISH')             and
12791             wbs_hdr.PROJECT_ID      =  log.ATTRIBUTE1              and
12792             wbs_hdr.PLAN_VERSION_ID =  log.ATTRIBUTE3              and
12793             wbs_hdr.WBS_VERSION_ID  =  wbs.STRUCT_VERSION_ID       and
12794             wbs_hdr.PROJECT_ID      =  prg.SUP_PROJECT_ID          and
12795             wbs_hdr.WBS_VERSION_ID  =  prg.SUP_ID                  and
12796             fpr.RBS_AGGR_LEVEL      =  'T'                         and
12797             fpr.WBS_ROLLUP_FLAG     =  'N'                         and
12798             fpr.PRG_ROLLUP_FLAG     in ('Y', 'N')                  and
12799             fpr.PROJECT_ID          =  wbs.SUP_PROJECT_ID          and
12800             fpr.PROJECT_ELEMENT_ID  =  wbs.SUB_EMT_ID              and
12801             fpr.PROJECT_ID          =  wbs_hdr.PROJECT_ID          and
12802             fpr.PLAN_VERSION_ID     =  wbs_hdr.PLAN_VERSION_ID     and
12803             fpr.PLAN_TYPE_CODE      =  wbs_hdr.PLAN_TYPE_CODE      and
12804             decode(fpr.PLAN_VERSION_ID,
12805                    -3, fpr.PLAN_TYPE_ID,
12806                    -4, fpr.PLAN_TYPE_ID,
12807                        -1)          =  decode(fpr.PLAN_VERSION_ID,
12808                                               -3, wbs_hdr.PLAN_TYPE_ID,
12809                                               -4, wbs_hdr.PLAN_TYPE_ID,
12810                                                   -1)              and
12811             wbs_hdr.CB_FLAG         =  fin_plan.CB             (+) and
12812             wbs_hdr.CO_FLAG         =  fin_plan.CO             (+) and
12813             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
12814             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+) and
12815             (wbs.SUP_LEVEL <> wbs.SUB_LEVEL or
12816              (wbs.SUP_LEVEL = 1 and
12817               wbs.SUB_LEVEL = 1))
12818           ) pjp,
12819           (
12820           select /*+ ordered */
12821             prg.SUP_PROJECT_ID,
12822             map.PROJECT_ORG_ID               SUP_PROJECT_ORG_ID,
12823             map.PROJECT_ORGANIZATION_ID      SUP_PROJECT_ORGANIZATION_ID,
12824             prg.SUP_ID,
12825             prg.SUP_EMT_ID,
12826             prg.SUP_LEVEL,
12827             prg.SUB_ID,
12828             prg.SUB_EMT_ID,
12829             prg.SUB_ROLLUP_ID,
12830             invert.INVERT_VALUE              RELATIONSHIP_TYPE,
12831             decode(prg.RELATIONSHIP_TYPE,
12832                    'LW', 'Y',
12833                    'LF', 'N')                WP_FLAG,
12834             'Y'                              PUSHUP_FLAG
12835           from
12836             PJI_PJP_PROJ_BATCH_MAP map,
12837             PJI_XBS_DENORM prg,
12838             (
12839               select 'LF' INVERT_ID, 'LF' INVERT_VALUE from dual union all
12840               select 'LW' INVERT_ID, 'LW' INVERT_VALUE from dual union all
12841               select 'A'  INVERT_ID, 'LF' INVERT_VALUE from dual union all
12842               select 'A'  INVERT_ID, 'LW' INVERT_VALUE from dual
12843             ) invert,
12844             PJI_XBS_DENORM_DELTA prg_delta
12845           where
12846             prg.STRUCT_TYPE               = 'PRG'                           and
12847             prg.SUB_ROLLUP_ID             is not null                       and
12848             prg.SUB_LEVEL                 = l_level                         and
12849             map.WORKER_ID                 = p_worker_id                     and
12850             map.PROJECT_ID                = prg.SUP_PROJECT_ID              and
12851             decode(prg.SUB_LEVEL,
12852                    prg.SUP_LEVEL, 'A',
12853                    prg.RELATIONSHIP_TYPE) = invert.INVERT_ID                and
12854             p_worker_id                   = prg_delta.WORKER_ID         (+) and
12855             prg.STRUCT_TYPE               = prg_delta.STRUCT_TYPE       (+) and
12856             prg.SUP_PROJECT_ID            = prg_delta.SUP_PROJECT_ID    (+) and
12857             prg.SUP_LEVEL                 = prg_delta.SUP_LEVEL         (+) and
12858             prg.SUP_ID                    = prg_delta.SUP_ID            (+) and
12859             prg.SUB_LEVEL                 = prg_delta.SUB_LEVEL         (+) and
12860             prg.SUB_ID                    = prg_delta.SUB_ID            (+) and
12861             prg.RELATIONSHIP_TYPE         = prg_delta.RELATIONSHIP_TYPE (+) and
12862             -1                            = prg_delta.SIGN              (+) and
12863             prg_delta.SUP_PROJECT_ID      is null
12864           )                          prg,
12865           PJI_PJP_WBS_HEADER         wbs_hdr,
12866           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
12867           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
12868           PA_PROJ_WORKPLAN_ATTR      sup_wpa
12869         where
12870           pjp.PROJECT_ID         = sub_ver.PROJECT_ID                (+) and
12871           pjp.WBS_VERSION_ID     = sub_ver.ELEMENT_VERSION_ID        (+) and
12872           'STRUCTURE_PUBLISHED'  = sub_ver.STATUS_CODE               (+) and
12873           pjp.WBS_VERSION_ID     = prg.SUB_ID                        (+) and
12874           pjp.RELATIONSHIP_TYPE  = prg.RELATIONSHIP_TYPE             (+) and
12875           pjp.PUSHUP_FLAG        = prg.PUSHUP_FLAG                   (+) and
12876           prg.SUP_PROJECT_ID     = wbs_hdr.PROJECT_ID                (+) and
12877           prg.SUP_ID             = wbs_hdr.WBS_VERSION_ID            (+) and
12878           prg.WP_FLAG            = wbs_hdr.WP_FLAG                   (+) and
12879           'Y'                    = wbs_hdr.WP_FLAG                   (+) and
12880           wbs_hdr.PROJECT_ID     = sup_ver.PROJECT_ID                (+) and
12881           wbs_hdr.WBS_VERSION_ID = sup_ver.ELEMENT_VERSION_ID        (+) and
12882           'STRUCTURE_PUBLISHED'  = sup_ver.STATUS_CODE               (+) and
12883           'Y'                    = sup_ver.LATEST_EFF_PUBLISHED_FLAG (+) and
12884           prg.SUP_EMT_ID         = sup_wpa.PROJ_ELEMENT_ID           (+)
12885         group by
12886           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12887                  pjp.INSERT_FLAG, 'Y'),
12888           pjp.RELATIONSHIP_TYPE,
12889           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12890                  null, sub_ver.STATUS_CODE),
12891           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12892                  null, sup_ver.STATUS_CODE),
12893           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12894                  null, sup_wpa.WP_ENABLE_VERSION_FLAG),
12895           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12896                  null, decode(pjp.PLAN_VERSION_ID,
12897                               -1, prg.SUP_ID,
12898                               -3, prg.SUP_ID,
12899                               -4, prg.SUP_ID,
12900                                   null)),
12901           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12902                  null, decode(pjp.PLAN_VERSION_ID,
12903                               -1, prg.SUP_EMT_ID,
12904                               -3, prg.SUP_EMT_ID,
12905                               -4, prg.SUP_EMT_ID,
12906                                   null)),
12907           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12908                  null, decode(pjp.PLAN_VERSION_ID,
12909                               -1, prg.WP_FLAG,
12910                               -3, prg.WP_FLAG,
12911                               -4, prg.WP_FLAG,
12912                                   null)),
12913           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12914                  l_level, prg.SUP_LEVEL),
12915           pjp.LINE_TYPE,
12916           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12917                  pjp.PROJECT_ID, prg.SUP_PROJECT_ID),
12918           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12919                  pjp.PROJECT_ORG_ID,
12920                  prg.SUP_PROJECT_ORG_ID),
12921           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12922                  pjp.PROJECT_ORGANIZATION_ID,
12923                  prg.SUP_PROJECT_ORGANIZATION_ID),
12924           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12925                  pjp.PROJECT_ELEMENT_ID,
12926                  prg.SUB_ROLLUP_ID),
12927           pjp.TIME_ID,
12928           pjp.PERIOD_TYPE_ID,
12929           pjp.CALENDAR_TYPE,
12930           pjp.RBS_AGGR_LEVEL,
12931           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12932                  pjp.WBS_ROLLUP_FLAG, 'N'),
12933           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12934                  pjp.PRG_ROLLUP_FLAG, 'Y'),
12935           pjp.CURR_RECORD_TYPE_ID,
12936           pjp.CURRENCY_CODE,
12937           pjp.RBS_ELEMENT_ID,
12938           pjp.RBS_VERSION_ID,
12939           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12940                  pjp.PLAN_VERSION_ID,
12941                  decode(pjp.PLAN_VERSION_ID,
12942                         -1, pjp.PLAN_VERSION_ID,
12943                         -2, pjp.PLAN_VERSION_ID,
12944                         -3, pjp.PLAN_VERSION_ID,
12945                         -4, pjp.PLAN_VERSION_ID,
12946                             wbs_hdr.PLAN_VERSION_ID)),
12947           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
12948                  pjp.PLAN_TYPE_ID,
12949                  decode(pjp.PLAN_VERSION_ID,
12950                         -1, pjp.PLAN_TYPE_ID,
12951                         -2, pjp.PLAN_TYPE_ID,
12952                         -3, pjp.PLAN_TYPE_ID,
12953                         -4, pjp.PLAN_TYPE_ID,
12954                             wbs_hdr.PLAN_TYPE_ID)),
12955           pjp.PLAN_TYPE_CODE
12956           )                          pjp1_i,
12957           PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
12958           PA_PROJ_WORKPLAN_ATTR      sup_wpa
12959         where
12960           pjp1_i.INSERT_FLAG  = 'Y'                                and
12961           pjp1_i.PROJECT_ID   = sup_fin_ver.PROJECT_ID         (+) and
12962           pjp1_i.SUP_ID       = sup_fin_ver.ELEMENT_VERSION_ID (+) and
12963           'STRUCTURE_WORKING' = sup_fin_ver.STATUS_CODE        (+) and
12964           pjp1_i.SUP_EMT_ID   = sup_wpa.PROJ_ELEMENT_ID        (+) and
12965           'N'                 = sup_wpa.WP_ENABLE_VERSION_FLAG (+) and
12966           (pjp1_i.SUP_ID is null or
12967            (pjp1_i.SUP_ID is not null and
12968             (sup_fin_ver.PROJECT_ID is not null or
12969              sup_wpa.PROJ_ELEMENT_ID is not null)));
12970     elsif (p_worker_id =5) then
12971       -- Query for Partition 5
12972 
12973         insert /*+ parallel(PJI_FP_AGGR_PJP1) */
12974                    into PJI_FP_AGGR_PJP1 partition(P5)
12975 	(
12976           WORKER_ID,
12977           RECORD_TYPE,
12978           PRG_LEVEL,
12979           LINE_TYPE,
12980           PROJECT_ID,
12981           PROJECT_ORG_ID,
12982           PROJECT_ORGANIZATION_ID,
12983           PROJECT_ELEMENT_ID,
12984           TIME_ID,
12985           PERIOD_TYPE_ID,
12986           CALENDAR_TYPE,
12987           RBS_AGGR_LEVEL,
12988           WBS_ROLLUP_FLAG,
12989           PRG_ROLLUP_FLAG,
12990           CURR_RECORD_TYPE_ID,
12991           CURRENCY_CODE,
12992           RBS_ELEMENT_ID,
12993           RBS_VERSION_ID,
12994           PLAN_VERSION_ID,
12995           PLAN_TYPE_ID,
12996           PLAN_TYPE_CODE,
12997           RAW_COST,
12998           BRDN_COST,
12999           REVENUE,
13000           BILL_RAW_COST,
13001           BILL_BRDN_COST,
13002           BILL_LABOR_RAW_COST,
13003           BILL_LABOR_BRDN_COST,
13004           BILL_LABOR_HRS,
13005           EQUIPMENT_RAW_COST,
13006           EQUIPMENT_BRDN_COST,
13007           CAPITALIZABLE_RAW_COST,
13008           CAPITALIZABLE_BRDN_COST,
13009           LABOR_RAW_COST,
13010           LABOR_BRDN_COST,
13011           LABOR_HRS,
13012           LABOR_REVENUE,
13013           EQUIPMENT_HOURS,
13014           BILLABLE_EQUIPMENT_HOURS,
13015           SUP_INV_COMMITTED_COST,
13016           PO_COMMITTED_COST,
13017           PR_COMMITTED_COST,
13018           OTH_COMMITTED_COST,
13019           ACT_LABOR_HRS,
13020           ACT_EQUIP_HRS,
13021           ACT_LABOR_BRDN_COST,
13022           ACT_EQUIP_BRDN_COST,
13023           ACT_BRDN_COST,
13024           ACT_RAW_COST,
13025           ACT_REVENUE,
13026           ACT_LABOR_RAW_COST,
13027           ACT_EQUIP_RAW_COST,
13028           ETC_LABOR_HRS,
13029           ETC_EQUIP_HRS,
13030           ETC_LABOR_BRDN_COST,
13031           ETC_EQUIP_BRDN_COST,
13032           ETC_BRDN_COST,
13033           ETC_RAW_COST,
13034           ETC_LABOR_RAW_COST,
13035           ETC_EQUIP_RAW_COST,
13036           CUSTOM1,
13037           CUSTOM2,
13038           CUSTOM3,
13039           CUSTOM4,
13040           CUSTOM5,
13041           CUSTOM6,
13042           CUSTOM7,
13043           CUSTOM8,
13044           CUSTOM9,
13045           CUSTOM10,
13046           CUSTOM11,
13047           CUSTOM12,
13048           CUSTOM13,
13049           CUSTOM14,
13050           CUSTOM15
13051         )
13052         select
13053           pjp1_i.WORKER_ID,
13054           pjp1_i.RECORD_TYPE,
13055           pjp1_i.PRG_LEVEL,
13056           pjp1_i.LINE_TYPE,
13057           pjp1_i.PROJECT_ID,
13058           pjp1_i.PROJECT_ORG_ID,
13059           pjp1_i.PROJECT_ORGANIZATION_ID,
13060           pjp1_i.PROJECT_ELEMENT_ID,
13061           pjp1_i.TIME_ID,
13062           pjp1_i.PERIOD_TYPE_ID,
13063           pjp1_i.CALENDAR_TYPE,
13064           pjp1_i.RBS_AGGR_LEVEL,
13065           pjp1_i.WBS_ROLLUP_FLAG,
13066           pjp1_i.PRG_ROLLUP_FLAG,
13067           pjp1_i.CURR_RECORD_TYPE_ID,
13068           pjp1_i.CURRENCY_CODE,
13069           pjp1_i.RBS_ELEMENT_ID,
13070           pjp1_i.RBS_VERSION_ID,
13071           pjp1_i.PLAN_VERSION_ID,
13072           pjp1_i.PLAN_TYPE_ID,
13073           pjp1_i.PLAN_TYPE_CODE,
13074           decode(pjp1_i.RELATIONSHIP_TYPE
13075                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13076                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13077                    || '_' || pjp1_i.SUB_STATUS_CODE
13078                    || '_' || pjp1_i.SUP_STATUS_CODE,
13079                  'LW_N_Y__', to_number(null),
13080                  decode(pjp1_i.RELATIONSHIP_TYPE
13081                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
13082                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
13083                           || '_' || pjp1_i.SUP_VER_ENABLED
13084                           || '_' || l_fpm_upgrade
13085                           || '_' || l_partial_mode,
13086                         'LW_N_Y_Y_C_', to_number(null),
13087                  pjp1_i.RAW_COST))                    RAW_COST,
13088           decode(pjp1_i.RELATIONSHIP_TYPE
13089                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13090                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13091                    || '_' || pjp1_i.SUB_STATUS_CODE
13092                    || '_' || pjp1_i.SUP_STATUS_CODE,
13093                  'LW_N_Y__', to_number(null),
13094                  decode(pjp1_i.RELATIONSHIP_TYPE
13095                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
13096                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
13097                           || '_' || pjp1_i.SUP_VER_ENABLED
13098                           || '_' || l_fpm_upgrade
13099                           || '_' || l_partial_mode,
13100                         'LW_N_Y_Y_C_', to_number(null),
13101                  pjp1_i.BRDN_COST))                   BRDN_COST,
13102           decode(pjp1_i.RELATIONSHIP_TYPE
13103                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13104                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13105                    || '_' || pjp1_i.SUB_STATUS_CODE
13106                    || '_' || pjp1_i.SUP_STATUS_CODE,
13107                  'LW_N_Y__', to_number(null),
13108                  decode(pjp1_i.RELATIONSHIP_TYPE
13109                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
13110                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
13111                           || '_' || pjp1_i.SUP_VER_ENABLED
13112                           || '_' || l_fpm_upgrade
13113                           || '_' || l_partial_mode,
13114                         'LW_N_Y_Y_C_', to_number(null),
13115                  pjp1_i.REVENUE))                     REVENUE,
13116           decode(pjp1_i.RELATIONSHIP_TYPE
13117                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13118                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13119                    || '_' || pjp1_i.SUB_STATUS_CODE
13120                    || '_' || pjp1_i.SUP_STATUS_CODE,
13121                  'LW_N_Y__', to_number(null),
13122                  decode(pjp1_i.RELATIONSHIP_TYPE
13123                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
13124                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
13125                           || '_' || pjp1_i.SUP_VER_ENABLED
13126                           || '_' || l_fpm_upgrade
13127                           || '_' || l_partial_mode,
13128                         'LW_N_Y_Y_C_', to_number(null),
13129                  pjp1_i.BILL_RAW_COST))               BILL_RAW_COST,
13130           decode(pjp1_i.RELATIONSHIP_TYPE
13131                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13132                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13133                    || '_' || pjp1_i.SUB_STATUS_CODE
13134                    || '_' || pjp1_i.SUP_STATUS_CODE,
13135                  'LW_N_Y__', to_number(null),
13136                  decode(pjp1_i.RELATIONSHIP_TYPE
13137                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
13138                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
13139                           || '_' || pjp1_i.SUP_VER_ENABLED
13140                           || '_' || l_fpm_upgrade
13141                           || '_' || l_partial_mode,
13142                         'LW_N_Y_Y_C_', to_number(null),
13143                  pjp1_i.BILL_BRDN_COST))              BILL_BRDN_COST,
13144           decode(pjp1_i.RELATIONSHIP_TYPE
13145                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13146                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13147                    || '_' || pjp1_i.SUB_STATUS_CODE
13148                    || '_' || pjp1_i.SUP_STATUS_CODE,
13149                  'LW_N_Y__', to_number(null),
13150                  decode(pjp1_i.RELATIONSHIP_TYPE
13151                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
13152                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
13153                           || '_' || pjp1_i.SUP_VER_ENABLED
13154                           || '_' || l_fpm_upgrade
13155                           || '_' || l_partial_mode,
13156                         'LW_N_Y_Y_C_', to_number(null),
13157                  pjp1_i.BILL_LABOR_RAW_COST))         BILL_LABOR_RAW_COST,
13158           decode(pjp1_i.RELATIONSHIP_TYPE
13159                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13160                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13161                    || '_' || pjp1_i.SUB_STATUS_CODE
13162                    || '_' || pjp1_i.SUP_STATUS_CODE,
13163                  'LW_N_Y__', to_number(null),
13164                  decode(pjp1_i.RELATIONSHIP_TYPE
13165                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
13166                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
13167                           || '_' || pjp1_i.SUP_VER_ENABLED
13168                           || '_' || l_fpm_upgrade
13169                           || '_' || l_partial_mode,
13170                         'LW_N_Y_Y_C_', to_number(null),
13171                  pjp1_i.BILL_LABOR_BRDN_COST))        BILL_LABOR_BRDN_COST,
13172           decode(pjp1_i.RELATIONSHIP_TYPE
13173                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13174                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13175                    || '_' || pjp1_i.SUB_STATUS_CODE
13176                    || '_' || pjp1_i.SUP_STATUS_CODE,
13177                  'LW_N_Y__', to_number(null),
13178                  decode(pjp1_i.RELATIONSHIP_TYPE
13179                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
13180                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
13181                           || '_' || pjp1_i.SUP_VER_ENABLED
13182                           || '_' || l_fpm_upgrade
13183                           || '_' || l_partial_mode,
13184                         'LW_N_Y_Y_C_', to_number(null),
13185                  pjp1_i.BILL_LABOR_HRS))              BILL_LABOR_HRS,
13186           decode(pjp1_i.RELATIONSHIP_TYPE
13187                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13188                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13189                    || '_' || pjp1_i.SUB_STATUS_CODE
13190                    || '_' || pjp1_i.SUP_STATUS_CODE,
13191                  'LW_N_Y__', to_number(null),
13192                  decode(pjp1_i.RELATIONSHIP_TYPE
13193                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
13194                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
13195                           || '_' || pjp1_i.SUP_VER_ENABLED
13196                           || '_' || l_fpm_upgrade
13197                           || '_' || l_partial_mode,
13198                         'LW_N_Y_Y_C_', to_number(null),
13199                  pjp1_i.EQUIPMENT_RAW_COST))          EQUIPMENT_RAW_COST,
13200           decode(pjp1_i.RELATIONSHIP_TYPE
13201                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13202                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13203                    || '_' || pjp1_i.SUB_STATUS_CODE
13204                    || '_' || pjp1_i.SUP_STATUS_CODE,
13205                  'LW_N_Y__', to_number(null),
13206                  decode(pjp1_i.RELATIONSHIP_TYPE
13207                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
13208                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
13209                           || '_' || pjp1_i.SUP_VER_ENABLED
13210                           || '_' || l_fpm_upgrade
13211                           || '_' || l_partial_mode,
13212                         'LW_N_Y_Y_C_', to_number(null),
13213                  pjp1_i.EQUIPMENT_BRDN_COST))         EQUIPMENT_BRDN_COST,
13214           decode(pjp1_i.RELATIONSHIP_TYPE
13215                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13216                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13217                    || '_' || pjp1_i.SUB_STATUS_CODE
13218                    || '_' || pjp1_i.SUP_STATUS_CODE,
13219                  'LW_N_Y__', to_number(null),
13220                  decode(pjp1_i.RELATIONSHIP_TYPE
13221                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
13222                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
13223                           || '_' || pjp1_i.SUP_VER_ENABLED
13224                           || '_' || l_fpm_upgrade
13225                           || '_' || l_partial_mode,
13226                         'LW_N_Y_Y_C_', to_number(null),
13227                  pjp1_i.CAPITALIZABLE_RAW_COST))      CAPITALIZABLE_RAW_COST,
13228           decode(pjp1_i.RELATIONSHIP_TYPE
13229                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13230                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13231                    || '_' || pjp1_i.SUB_STATUS_CODE
13232                    || '_' || pjp1_i.SUP_STATUS_CODE,
13233                  'LW_N_Y__', to_number(null),
13234                  decode(pjp1_i.RELATIONSHIP_TYPE
13235                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
13236                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
13237                           || '_' || pjp1_i.SUP_VER_ENABLED
13238                           || '_' || l_fpm_upgrade
13239                           || '_' || l_partial_mode,
13240                         'LW_N_Y_Y_C_', to_number(null),
13241                  pjp1_i.CAPITALIZABLE_BRDN_COST))     CAPITALIZABLE_BRDN_COST,
13242           decode(pjp1_i.RELATIONSHIP_TYPE
13243                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13244                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13245                    || '_' || pjp1_i.SUB_STATUS_CODE
13246                    || '_' || pjp1_i.SUP_STATUS_CODE,
13247                  'LW_N_Y__', to_number(null),
13248                  decode(pjp1_i.RELATIONSHIP_TYPE
13249                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
13250                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
13251                           || '_' || pjp1_i.SUP_VER_ENABLED
13252                           || '_' || l_fpm_upgrade
13253                           || '_' || l_partial_mode,
13254                         'LW_N_Y_Y_C_', to_number(null),
13255                  pjp1_i.LABOR_RAW_COST))              LABOR_RAW_COST,
13256           decode(pjp1_i.RELATIONSHIP_TYPE
13257                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13258                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13259                    || '_' || pjp1_i.SUB_STATUS_CODE
13260                    || '_' || pjp1_i.SUP_STATUS_CODE,
13261                  'LW_N_Y__', to_number(null),
13262                  decode(pjp1_i.RELATIONSHIP_TYPE
13263                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
13264                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
13265                           || '_' || pjp1_i.SUP_VER_ENABLED
13266                           || '_' || l_fpm_upgrade
13267                           || '_' || l_partial_mode,
13268                         'LW_N_Y_Y_C_', to_number(null),
13269                  pjp1_i.LABOR_BRDN_COST))             LABOR_BRDN_COST,
13270           decode(pjp1_i.RELATIONSHIP_TYPE
13271                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13272                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13273                    || '_' || pjp1_i.SUB_STATUS_CODE
13274                    || '_' || pjp1_i.SUP_STATUS_CODE,
13275                  'LW_N_Y__', to_number(null),
13276                  decode(pjp1_i.RELATIONSHIP_TYPE
13277                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
13278                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
13279                           || '_' || pjp1_i.SUP_VER_ENABLED
13280                           || '_' || l_fpm_upgrade
13281                           || '_' || l_partial_mode,
13282                         'LW_N_Y_Y_C_', to_number(null),
13283                  pjp1_i.LABOR_HRS))                   LABOR_HRS,
13284           decode(pjp1_i.RELATIONSHIP_TYPE
13285                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13286                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13287                    || '_' || pjp1_i.SUB_STATUS_CODE
13288                    || '_' || pjp1_i.SUP_STATUS_CODE,
13289                  'LW_N_Y__', to_number(null),
13290                  decode(pjp1_i.RELATIONSHIP_TYPE
13291                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
13292                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
13293                           || '_' || pjp1_i.SUP_VER_ENABLED
13294                           || '_' || l_fpm_upgrade
13295                           || '_' || l_partial_mode,
13296                         'LW_N_Y_Y_C_', to_number(null),
13297                  pjp1_i.LABOR_REVENUE))               LABOR_REVENUE,
13298           decode(pjp1_i.RELATIONSHIP_TYPE
13299                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13300                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13301                    || '_' || pjp1_i.SUB_STATUS_CODE
13302                    || '_' || pjp1_i.SUP_STATUS_CODE,
13303                  'LW_N_Y__', to_number(null),
13304                  decode(pjp1_i.RELATIONSHIP_TYPE
13305                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
13306                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
13307                           || '_' || pjp1_i.SUP_VER_ENABLED
13308                           || '_' || l_fpm_upgrade
13309                           || '_' || l_partial_mode,
13310                         'LW_N_Y_Y_C_', to_number(null),
13311                  pjp1_i.EQUIPMENT_HOURS))             EQUIPMENT_HOURS,
13312           decode(pjp1_i.RELATIONSHIP_TYPE
13313                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13314                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13315                    || '_' || pjp1_i.SUB_STATUS_CODE
13316                    || '_' || pjp1_i.SUP_STATUS_CODE,
13317                  'LW_N_Y__', to_number(null),
13318                  decode(pjp1_i.RELATIONSHIP_TYPE
13319                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
13320                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
13321                           || '_' || pjp1_i.SUP_VER_ENABLED
13322                           || '_' || l_fpm_upgrade
13323                           || '_' || l_partial_mode,
13324                         'LW_N_Y_Y_C_', to_number(null),
13325                  pjp1_i.BILLABLE_EQUIPMENT_HOURS))    BILLABLE_EQUIPMENT_HOURS,
13326           decode(pjp1_i.RELATIONSHIP_TYPE
13327                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13328                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13329                    || '_' || pjp1_i.SUB_STATUS_CODE
13330                    || '_' || pjp1_i.SUP_STATUS_CODE,
13331                  'LW_N_Y__', to_number(null),
13332                  decode(pjp1_i.RELATIONSHIP_TYPE
13333                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
13334                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
13335                           || '_' || pjp1_i.SUP_VER_ENABLED
13336                           || '_' || l_fpm_upgrade
13337                           || '_' || l_partial_mode,
13338                         'LW_N_Y_Y_C_', to_number(null),
13339                  pjp1_i.SUP_INV_COMMITTED_COST))      SUP_INV_COMMITTED_COST,
13340           decode(pjp1_i.RELATIONSHIP_TYPE
13341                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13342                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13343                    || '_' || pjp1_i.SUB_STATUS_CODE
13344                    || '_' || pjp1_i.SUP_STATUS_CODE,
13345                  'LW_N_Y__', to_number(null),
13346                  decode(pjp1_i.RELATIONSHIP_TYPE
13347                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
13348                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
13349                           || '_' || pjp1_i.SUP_VER_ENABLED
13350                           || '_' || l_fpm_upgrade
13351                           || '_' || l_partial_mode,
13352                         'LW_N_Y_Y_C_', to_number(null),
13353                  pjp1_i.PO_COMMITTED_COST))           PO_COMMITTED_COST,
13354           decode(pjp1_i.RELATIONSHIP_TYPE
13355                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13356                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13357                    || '_' || pjp1_i.SUB_STATUS_CODE
13358                    || '_' || pjp1_i.SUP_STATUS_CODE,
13359                  'LW_N_Y__', to_number(null),
13360                  decode(pjp1_i.RELATIONSHIP_TYPE
13361                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
13362                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
13363                           || '_' || pjp1_i.SUP_VER_ENABLED
13364                           || '_' || l_fpm_upgrade
13365                           || '_' || l_partial_mode,
13366                         'LW_N_Y_Y_C_', to_number(null),
13367                  pjp1_i.PR_COMMITTED_COST))           PR_COMMITTED_COST,
13368           decode(pjp1_i.RELATIONSHIP_TYPE
13369                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13370                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13371                    || '_' || pjp1_i.SUB_STATUS_CODE
13372                    || '_' || pjp1_i.SUP_STATUS_CODE,
13373                  'LW_N_Y__', to_number(null),
13374                  decode(pjp1_i.RELATIONSHIP_TYPE
13375                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
13376                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
13377                           || '_' || pjp1_i.SUP_VER_ENABLED
13378                           || '_' || l_fpm_upgrade
13379                           || '_' || l_partial_mode,
13380                         'LW_N_Y_Y_C_', to_number(null),
13381                  pjp1_i.OTH_COMMITTED_COST))          OTH_COMMITTED_COST,
13382           decode(pjp1_i.RELATIONSHIP_TYPE
13383                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13384                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13385                    || '_' || pjp1_i.SUP_STATUS_CODE
13386                    || '_' || l_partial_mode,
13387                  'LW_N_Y__', to_number(null),
13388                           pjp1_i.ACT_LABOR_HRS)       ACT_LABOR_HRS,
13389           decode(pjp1_i.RELATIONSHIP_TYPE
13390                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13391                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13392                    || '_' || pjp1_i.SUP_STATUS_CODE
13393                    || '_' || l_partial_mode,
13394                  'LW_N_Y__', to_number(null),
13395                           pjp1_i.ACT_EQUIP_HRS)       ACT_EQUIP_HRS,
13396           decode(pjp1_i.RELATIONSHIP_TYPE
13397                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13398                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13399                    || '_' || pjp1_i.SUP_STATUS_CODE
13400                    || '_' || l_partial_mode,
13401                  'LW_N_Y__', to_number(null),
13402                           pjp1_i.ACT_LABOR_BRDN_COST) ACT_LABOR_BRDN_COST,
13403           decode(pjp1_i.RELATIONSHIP_TYPE
13404                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13405                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13406                    || '_' || pjp1_i.SUP_STATUS_CODE
13407                    || '_' || l_partial_mode,
13408                  'LW_N_Y__', to_number(null),
13409                           pjp1_i.ACT_EQUIP_BRDN_COST) ACT_EQUIP_BRDN_COST,
13410           decode(pjp1_i.RELATIONSHIP_TYPE
13411                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13412                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13413                    || '_' || pjp1_i.SUP_STATUS_CODE
13414                    || '_' || l_partial_mode,
13415                  'LW_N_Y__', to_number(null),
13416                           pjp1_i.ACT_BRDN_COST)       ACT_BRDN_COST,
13417           decode(pjp1_i.RELATIONSHIP_TYPE
13418                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13419                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13420                    || '_' || pjp1_i.SUP_STATUS_CODE
13421                    || '_' || l_partial_mode,
13422                  'LW_N_Y__', to_number(null),
13423                           pjp1_i.ACT_RAW_COST)        ACT_RAW_COST,
13424           decode(pjp1_i.RELATIONSHIP_TYPE
13425                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13426                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13427                    || '_' || pjp1_i.SUP_STATUS_CODE
13428                    || '_' || l_partial_mode,
13429                  'LW_N_Y__', to_number(null),
13430                           pjp1_i.ACT_REVENUE)         ACT_REVENUE,
13431           decode(pjp1_i.RELATIONSHIP_TYPE
13432                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13433                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13434                    || '_' || pjp1_i.SUP_STATUS_CODE
13435                    || '_' || l_partial_mode,
13436                  'LW_N_Y__', to_number(null),
13437                           pjp1_i.ACT_LABOR_RAW_COST)  ACT_LABOR_RAW_COST,
13438           decode(pjp1_i.RELATIONSHIP_TYPE
13439                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13440                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13441                    || '_' || pjp1_i.SUP_STATUS_CODE
13442                    || '_' || l_partial_mode,
13443                  'LW_N_Y__', to_number(null),
13444                           pjp1_i.ACT_EQUIP_RAW_COST)  ACT_EQUIP_RAW_COST,
13445           decode(pjp1_i.RELATIONSHIP_TYPE
13446                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13447                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13448                    || '_' || pjp1_i.SUP_STATUS_CODE
13449                    || '_' || l_partial_mode,
13450                  'LW_N_Y__', to_number(null),
13451                           pjp1_i.ETC_LABOR_HRS)       ETC_LABOR_HRS,
13452           decode(pjp1_i.RELATIONSHIP_TYPE
13453                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13454                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13455                    || '_' || pjp1_i.SUP_STATUS_CODE
13456                    || '_' || l_partial_mode,
13457                  'LW_N_Y__', to_number(null),
13458                           pjp1_i.ETC_EQUIP_HRS)       ETC_EQUIP_HRS,
13459           decode(pjp1_i.RELATIONSHIP_TYPE
13460                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13461                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13462                    || '_' || pjp1_i.SUP_STATUS_CODE
13463                    || '_' || l_partial_mode,
13464                  'LW_N_Y__', to_number(null),
13465                           pjp1_i.ETC_LABOR_BRDN_COST) ETC_LABOR_BRDN_COST,
13466           decode(pjp1_i.RELATIONSHIP_TYPE
13467                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13468                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13469                    || '_' || pjp1_i.SUP_STATUS_CODE
13470                    || '_' || l_partial_mode,
13471                  'LW_N_Y__', to_number(null),
13472                           pjp1_i.ETC_EQUIP_BRDN_COST) ETC_EQUIP_BRDN_COST,
13473           decode(pjp1_i.RELATIONSHIP_TYPE
13474                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13475                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13476                    || '_' || pjp1_i.SUP_STATUS_CODE
13477                    || '_' || l_partial_mode,
13478                  'LW_N_Y__', to_number(null),
13479                           pjp1_i.ETC_BRDN_COST)       ETC_BRDN_COST,
13480           decode(pjp1_i.RELATIONSHIP_TYPE
13481                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13482                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13483                    || '_' || pjp1_i.SUP_STATUS_CODE
13484                    || '_' || l_partial_mode,
13485                  'LW_N_Y__', to_number(null),
13486                           pjp1_i.ETC_RAW_COST)        ETC_RAW_COST,
13487           decode(pjp1_i.RELATIONSHIP_TYPE
13488                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13489                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13490                    || '_' || pjp1_i.SUP_STATUS_CODE
13491                    || '_' || l_partial_mode,
13492                  'LW_N_Y__', to_number(null),
13493                           pjp1_i.ETC_LABOR_RAW_COST)  ETC_LABOR_RAW_COST,
13494           decode(pjp1_i.RELATIONSHIP_TYPE
13495                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
13496                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
13497                    || '_' || pjp1_i.SUP_STATUS_CODE
13498                    || '_' || l_partial_mode,
13499                  'LW_N_Y__', to_number(null),
13500                           pjp1_i.ETC_EQUIP_RAW_COST)  ETC_EQUIP_RAW_COST,
13501           pjp1_i.CUSTOM1,
13502           pjp1_i.CUSTOM2,
13503           pjp1_i.CUSTOM3,
13504           pjp1_i.CUSTOM4,
13505           pjp1_i.CUSTOM5,
13506           pjp1_i.CUSTOM6,
13507           pjp1_i.CUSTOM7,
13508           pjp1_i.CUSTOM8,
13509           pjp1_i.CUSTOM9,
13510           pjp1_i.CUSTOM10,
13511           pjp1_i.CUSTOM11,
13512           pjp1_i.CUSTOM12,
13513           pjp1_i.CUSTOM13,
13514           pjp1_i.CUSTOM14,
13515           pjp1_i.CUSTOM15
13516         from
13517           (
13518         select
13519           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
13520                  pjp.INSERT_FLAG, 'Y')                INSERT_FLAG,
13521           pjp.RELATIONSHIP_TYPE,
13522           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
13523                  null, sub_ver.STATUS_CODE)           SUB_STATUS_CODE,
13524           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
13525                  null, sup_ver.STATUS_CODE)           SUP_STATUS_CODE,
13526           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
13527                  null, sup_wpa.WP_ENABLE_VERSION_FLAG)SUP_VER_ENABLED,
13528           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
13529                  null, decode(pjp.PLAN_VERSION_ID,
13530                               -1, prg.SUP_ID,
13531                               -3, prg.SUP_ID,
13532                               -4, prg.SUP_ID,
13533                                   null))              SUP_ID,
13534           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
13535                  null, decode(pjp.PLAN_VERSION_ID,
13536                               -1, prg.SUP_EMT_ID,
13537                               -3, prg.SUP_EMT_ID,
13538                               -4, prg.SUP_EMT_ID,
13539                                   null))              SUP_EMT_ID,
13540           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
13541                  null, decode(pjp.PLAN_VERSION_ID,
13542                               -1, prg.WP_FLAG,
13543                               -3, prg.WP_FLAG,
13544                               -4, prg.WP_FLAG,
13545                                   null))              SUP_WP_FLAG,
13546           p_worker_id                                 WORKER_ID,
13547           'W'                                         RECORD_TYPE,
13548           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
13549                  l_level, prg.SUP_LEVEL)              PRG_LEVEL,
13550           pjp.LINE_TYPE,
13551           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
13552                  pjp.PROJECT_ID, prg.SUP_PROJECT_ID)  PROJECT_ID,
13553           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
13554                  pjp.PROJECT_ORG_ID,
13555                  prg.SUP_PROJECT_ORG_ID)              PROJECT_ORG_ID,
13556           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
13557                  pjp.PROJECT_ORGANIZATION_ID,
13558                  prg.SUP_PROJECT_ORGANIZATION_ID)     PROJECT_ORGANIZATION_ID,
13559           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
13560                  pjp.PROJECT_ELEMENT_ID,
13561                  prg.SUB_ROLLUP_ID)                   PROJECT_ELEMENT_ID,
13562           pjp.TIME_ID,
13563           pjp.PERIOD_TYPE_ID,
13564           pjp.CALENDAR_TYPE,
13565           pjp.RBS_AGGR_LEVEL,
13566           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
13567                  pjp.WBS_ROLLUP_FLAG, 'N')            WBS_ROLLUP_FLAG,
13568           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
13569                  pjp.PRG_ROLLUP_FLAG, 'Y')            PRG_ROLLUP_FLAG,
13570           pjp.CURR_RECORD_TYPE_ID,
13571           pjp.CURRENCY_CODE,
13572           pjp.RBS_ELEMENT_ID,
13573           pjp.RBS_VERSION_ID,
13574           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
13575                  pjp.PLAN_VERSION_ID,
13576                  decode(pjp.PLAN_VERSION_ID,
13577                         -1, pjp.PLAN_VERSION_ID,
13578                         -2, pjp.PLAN_VERSION_ID,
13579                         -3, pjp.PLAN_VERSION_ID,
13580                         -4, pjp.PLAN_VERSION_ID,
13581                             wbs_hdr.PLAN_VERSION_ID)) PLAN_VERSION_ID,
13582           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
13583                  pjp.PLAN_TYPE_ID,
13584                  decode(pjp.PLAN_VERSION_ID,
13585                         -1, pjp.PLAN_TYPE_ID,
13586                         -2, pjp.PLAN_TYPE_ID,
13587                         -3, pjp.PLAN_TYPE_ID,
13588                         -4, pjp.PLAN_TYPE_ID,
13589                             wbs_hdr.PLAN_TYPE_ID))    PLAN_TYPE_ID,
13590           pjp.PLAN_TYPE_CODE,
13591           sum(pjp.RAW_COST)                           RAW_COST,
13592           sum(pjp.BRDN_COST)                          BRDN_COST,
13593           sum(pjp.REVENUE)                            REVENUE,
13594           sum(pjp.BILL_RAW_COST)                      BILL_RAW_COST,
13595           sum(pjp.BILL_BRDN_COST)                     BILL_BRDN_COST,
13596           sum(pjp.BILL_LABOR_RAW_COST)                BILL_LABOR_RAW_COST,
13597           sum(pjp.BILL_LABOR_BRDN_COST)               BILL_LABOR_BRDN_COST,
13598           sum(pjp.BILL_LABOR_HRS)                     BILL_LABOR_HRS,
13599           sum(pjp.EQUIPMENT_RAW_COST)                 EQUIPMENT_RAW_COST,
13600           sum(pjp.EQUIPMENT_BRDN_COST)                EQUIPMENT_BRDN_COST,
13601           sum(pjp.CAPITALIZABLE_RAW_COST)             CAPITALIZABLE_RAW_COST,
13602           sum(pjp.CAPITALIZABLE_BRDN_COST)            CAPITALIZABLE_BRDN_COST,
13603           sum(pjp.LABOR_RAW_COST)                     LABOR_RAW_COST,
13604           sum(pjp.LABOR_BRDN_COST)                    LABOR_BRDN_COST,
13605           sum(pjp.LABOR_HRS)                          LABOR_HRS,
13606           sum(pjp.LABOR_REVENUE)                      LABOR_REVENUE,
13607           sum(pjp.EQUIPMENT_HOURS)                    EQUIPMENT_HOURS,
13608           sum(pjp.BILLABLE_EQUIPMENT_HOURS)           BILLABLE_EQUIPMENT_HOURS,
13609           sum(pjp.SUP_INV_COMMITTED_COST)             SUP_INV_COMMITTED_COST,
13610           sum(pjp.PO_COMMITTED_COST)                  PO_COMMITTED_COST,
13611           sum(pjp.PR_COMMITTED_COST)                  PR_COMMITTED_COST,
13612           sum(pjp.OTH_COMMITTED_COST)                 OTH_COMMITTED_COST,
13613           sum(pjp.ACT_LABOR_HRS)                      ACT_LABOR_HRS,
13614           sum(pjp.ACT_EQUIP_HRS)                      ACT_EQUIP_HRS,
13615           sum(pjp.ACT_LABOR_BRDN_COST)                ACT_LABOR_BRDN_COST,
13616           sum(pjp.ACT_EQUIP_BRDN_COST)                ACT_EQUIP_BRDN_COST,
13617           sum(pjp.ACT_BRDN_COST)                      ACT_BRDN_COST,
13618           sum(pjp.ACT_RAW_COST)                       ACT_RAW_COST,
13619           sum(pjp.ACT_REVENUE)                        ACT_REVENUE,
13620           sum(pjp.ACT_LABOR_RAW_COST)                 ACT_LABOR_RAW_COST,
13621           sum(pjp.ACT_EQUIP_RAW_COST)                 ACT_EQUIP_RAW_COST,
13622           sum(pjp.ETC_LABOR_HRS)                      ETC_LABOR_HRS,
13623           sum(pjp.ETC_EQUIP_HRS)                      ETC_EQUIP_HRS,
13624           sum(pjp.ETC_LABOR_BRDN_COST)                ETC_LABOR_BRDN_COST,
13625           sum(pjp.ETC_EQUIP_BRDN_COST)                ETC_EQUIP_BRDN_COST,
13626           sum(pjp.ETC_BRDN_COST)                      ETC_BRDN_COST,
13627           sum(pjp.ETC_RAW_COST)                       ETC_RAW_COST,
13628           sum(pjp.ETC_LABOR_RAW_COST)                 ETC_LABOR_RAW_COST,
13629           sum(pjp.ETC_EQUIP_RAW_COST)                 ETC_EQUIP_RAW_COST,
13630           sum(pjp.CUSTOM1)                            CUSTOM1,
13631           sum(pjp.CUSTOM2)                            CUSTOM2,
13632           sum(pjp.CUSTOM3)                            CUSTOM3,
13633           sum(pjp.CUSTOM4)                            CUSTOM4,
13634           sum(pjp.CUSTOM5)                            CUSTOM5,
13635           sum(pjp.CUSTOM6)                            CUSTOM6,
13636           sum(pjp.CUSTOM7)                            CUSTOM7,
13637           sum(pjp.CUSTOM8)                            CUSTOM8,
13638           sum(pjp.CUSTOM9)                            CUSTOM9,
13639           sum(pjp.CUSTOM10)                           CUSTOM10,
13640           sum(pjp.CUSTOM11)                           CUSTOM11,
13641           sum(pjp.CUSTOM12)                           CUSTOM12,
13642           sum(pjp.CUSTOM13)                           CUSTOM13,
13643           sum(pjp.CUSTOM14)                           CUSTOM14,
13644           sum(pjp.CUSTOM15)                           CUSTOM15
13645         from
13646           (
13647           select /*+ index(wbs PA_XBS_DENORM_N2) parallel(pjp1) */ -- changed for bug 5927368
13648 		 -- get incremental task level amounts from source and
13649                  -- program rollup amounts from interim
13650             to_char(null)                             LINE_TYPE,
13651             wbs_hdr.WBS_VERSION_ID,
13652             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
13653             decode(wbs_hdr.WP_FLAG
13654                      || '_' || to_char(sign(pjp1.PLAN_VERSION_ID))
13655                      || '_' || nvl(fin_plan.INVERT_ID, 'PRJ'),
13656                    'N_1_PRJ', 'N',
13657                    'N_-1_PRG', 'N',
13658                    decode(top_slice.INVERT_ID,
13659                           'PRJ', 'Y',
13660                           decode(wbs.SUB_LEVEL,
13661                                  1, 'Y', 'N')))       PUSHUP_FLAG,
13662             decode(pjp1.RBS_AGGR_LEVEL,
13663                    'L', 'N',
13664                         decode(wbs_hdr.WP_FLAG
13665                                  || '_' || to_char(sign(pjp1.PLAN_VERSION_ID))
13666                                  || '_' || fin_plan.INVERT_ID,
13667                                'N_1_PRG', decode(top_slice.INVERT_ID,
13668                                                  'PRJ', 'Y',
13669                                                  decode(wbs.SUB_LEVEL,
13670                                                         1, 'Y', 'N')),
13671                                'N_-1_PRG', 'N',
13672                                decode(wbs_hdr.WP_FLAG
13673                                         || '_' || fin_plan.INVERT_ID
13674                                         || '_' || fin_plan.CB
13675                                         || '_' || fin_plan.CO
13676                                         || '_'
13677                                         || to_char(fin_plan.PLAN_VERSION_ID),
13678                                       'N_PRJ_Y_Y_-4', 'N',
13679                                                       'Y'))
13680                   )                                   INSERT_FLAG,
13681             pjp1.PROJECT_ID,
13682             pjp1.PROJECT_ORG_ID,
13683             pjp1.PROJECT_ORGANIZATION_ID,
13684             decode(top_slice.INVERT_ID,
13685                    'PRJ', prg.SUP_EMT_ID,
13686                           decode(wbs.SUB_LEVEL,
13687                                  1, prg.SUP_EMT_ID,
13688                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
13689             pjp1.TIME_ID,
13690             pjp1.PERIOD_TYPE_ID,
13691             pjp1.CALENDAR_TYPE,
13692             pjp1.RBS_AGGR_LEVEL,
13693             'Y'                                       WBS_ROLLUP_FLAG,
13694             pjp1.PRG_ROLLUP_FLAG,
13695             pjp1.CURR_RECORD_TYPE_ID,
13696             pjp1.CURRENCY_CODE,
13697             pjp1.RBS_ELEMENT_ID,
13698             pjp1.RBS_VERSION_ID,
13699             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
13700                    'N_PRG', fin_plan.PLAN_VERSION_ID,
13701                             pjp1.PLAN_VERSION_ID)     PLAN_VERSION_ID,
13702             pjp1.PLAN_TYPE_ID,
13703             pjp1.PLAN_TYPE_CODE,
13704             pjp1.RAW_COST,
13705             pjp1.BRDN_COST,
13706             pjp1.REVENUE,
13707             pjp1.BILL_RAW_COST,
13708             pjp1.BILL_BRDN_COST,
13709             pjp1.BILL_LABOR_RAW_COST,
13710             pjp1.BILL_LABOR_BRDN_COST,
13711             pjp1.BILL_LABOR_HRS,
13712             pjp1.EQUIPMENT_RAW_COST,
13713             pjp1.EQUIPMENT_BRDN_COST,
13714             pjp1.CAPITALIZABLE_RAW_COST,
13715             pjp1.CAPITALIZABLE_BRDN_COST,
13716             pjp1.LABOR_RAW_COST,
13717             pjp1.LABOR_BRDN_COST,
13718             pjp1.LABOR_HRS,
13719             pjp1.LABOR_REVENUE,
13720             pjp1.EQUIPMENT_HOURS,
13721             pjp1.BILLABLE_EQUIPMENT_HOURS,
13722             pjp1.SUP_INV_COMMITTED_COST,
13723             pjp1.PO_COMMITTED_COST,
13724             pjp1.PR_COMMITTED_COST,
13725             pjp1.OTH_COMMITTED_COST,
13726             pjp1.ACT_LABOR_HRS,
13727             pjp1.ACT_EQUIP_HRS,
13728             pjp1.ACT_LABOR_BRDN_COST,
13729             pjp1.ACT_EQUIP_BRDN_COST,
13730             pjp1.ACT_BRDN_COST,
13731             pjp1.ACT_RAW_COST,
13732             pjp1.ACT_REVENUE,
13733             pjp1.ACT_LABOR_RAW_COST,
13734             pjp1.ACT_EQUIP_RAW_COST,
13735             pjp1.ETC_LABOR_HRS,
13736             pjp1.ETC_EQUIP_HRS,
13737             pjp1.ETC_LABOR_BRDN_COST,
13738             pjp1.ETC_EQUIP_BRDN_COST,
13739             pjp1.ETC_BRDN_COST,
13740             pjp1.ETC_RAW_COST,
13741             pjp1.ETC_LABOR_RAW_COST,
13742             pjp1.ETC_EQUIP_RAW_COST,
13743             pjp1.CUSTOM1,
13744             pjp1.CUSTOM2,
13745             pjp1.CUSTOM3,
13746             pjp1.CUSTOM4,
13747             pjp1.CUSTOM5,
13748             pjp1.CUSTOM6,
13749             pjp1.CUSTOM7,
13750             pjp1.CUSTOM8,
13751             pjp1.CUSTOM9,
13752             pjp1.CUSTOM10,
13753             pjp1.CUSTOM11,
13754             pjp1.CUSTOM12,
13755             pjp1.CUSTOM13,
13756             pjp1.CUSTOM14,
13757             pjp1.CUSTOM15
13758           from
13759             PJI_FP_AGGR_PJP1   pjp1,
13760             PJI_PJP_WBS_HEADER wbs_hdr,
13761             PA_XBS_DENORM      wbs,
13762             PJI_XBS_DENORM     prg,
13763             (
13764               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
13765               from DUAL union all
13766               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
13767               from DUAL union all
13768               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
13769               from DUAL union all
13770               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
13771               from DUAL union all
13772               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
13773               from DUAL union all
13774               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
13775               from DUAL union all
13776               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
13777               from DUAL union all
13778               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
13779               from DUAL
13780             ) fin_plan,
13781             (
13782               select 1     WBS_SUP_LEVEL,
13783                      1     WBS_SUB_LEVEL,
13784                      'PRJ' INVERT_ID
13785               from   DUAL
13786               union all
13787               select 1     WBS_SUP_LEVEL,
13788                      1     WBS_SUB_LEVEL,
13789                      'WBS' INVERT_ID
13790               from   DUAL
13791             ) top_slice
13792           where
13793             prg.STRUCT_TYPE         =  'PRG'                       and
13794             prg.SUP_LEVEL           =  l_level                     and
13795             prg.SUB_LEVEL           =  l_level                     and
13796             wbs.STRUCT_TYPE         =  'WBS'                       and
13797             ((wbs.SUP_LEVEL = 1 and
13798               wbs.SUB_LEVEL = 1) or
13799              (wbs.SUP_LEVEL <> wbs.SUB_LEVEL))                     and
13800             wbs.STRUCT_VERSION_ID   =  prg.SUP_ID                  and
13801             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
13802             pjp1.WORKER_ID          =  p_worker_id                 and
13803             pjp1.PRG_LEVEL          in (0, l_level)                and
13804             pjp1.RBS_AGGR_LEVEL     in ('T', 'L')                  and
13805             pjp1.WBS_ROLLUP_FLAG    =  'N'                         and
13806             pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                  and
13807             pjp1.PROJECT_ID         =  wbs_hdr.PROJECT_ID          and
13808             pjp1.PLAN_VERSION_ID    =  wbs_hdr.PLAN_VERSION_ID     and
13809             pjp1.PLAN_TYPE_CODE     =  wbs_hdr.PLAN_TYPE_CODE      and
13810             decode(pjp1.PLAN_VERSION_ID,
13811                    -3, pjp1.PLAN_TYPE_ID,
13812                    -4, pjp1.PLAN_TYPE_ID,
13813                        -1)          =  decode(pjp1.PLAN_VERSION_ID,
13814                                               -3, wbs_hdr.PLAN_TYPE_ID,
13815                                               -4, wbs_hdr.PLAN_TYPE_ID,
13816                                                   -1)              and
13817             wbs.STRUCT_VERSION_ID   =  wbs_hdr.WBS_VERSION_ID      and
13818             pjp1.PROJECT_ELEMENT_ID =  wbs.SUB_EMT_ID              and
13819             wbs_hdr.CB_FLAG         =  fin_plan.CB             (+) and
13820             wbs_hdr.CO_FLAG         =  fin_plan.CO             (+) and
13821             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
13822             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+)
13823           union all
13824           select /*+ parallel(pjp1) */          -- changed for bug 5927368
13825 		 -- get incremental project level amounts from source
13826             to_char(null)                             LINE_TYPE,
13827             wbs_hdr.WBS_VERSION_ID,
13828             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
13829             'Y'                                       PUSHUP_FLAG,
13830             decode(pjp1.RBS_AGGR_LEVEL,
13831                    'L', 'N',
13832                         decode(fin_plan.PLAN_VERSION_ID,
13833                                null, 'N', 'Y'))       INSERT_FLAG,
13834             pjp1.PROJECT_ID,
13835             pjp1.PROJECT_ORG_ID,
13836             pjp1.PROJECT_ORGANIZATION_ID,
13837             pjp1.PROJECT_ELEMENT_ID,
13838             pjp1.TIME_ID,
13839             pjp1.PERIOD_TYPE_ID,
13840             pjp1.CALENDAR_TYPE,
13841             pjp1.RBS_AGGR_LEVEL,
13842             'Y'                                       WBS_ROLLUP_FLAG,
13843             pjp1.PRG_ROLLUP_FLAG,
13844             pjp1.CURR_RECORD_TYPE_ID,
13845             pjp1.CURRENCY_CODE,
13846             pjp1.RBS_ELEMENT_ID,
13847             pjp1.RBS_VERSION_ID,
13848             decode(wbs_hdr.WP_FLAG,
13849                    'N', decode(pjp1.PLAN_VERSION_ID,
13850                                -1, pjp1.PLAN_VERSION_ID,
13851                                -2, pjp1.PLAN_VERSION_ID,
13852                                -3, pjp1.PLAN_VERSION_ID, -- won't exist
13853                                -4, pjp1.PLAN_VERSION_ID, -- won't exist
13854                                    fin_plan.PLAN_VERSION_ID),
13855                         pjp1.PLAN_VERSION_ID)         PLAN_VERSION_ID,
13856             pjp1.PLAN_TYPE_ID,
13857             pjp1.PLAN_TYPE_CODE,
13858             pjp1.RAW_COST,
13859             pjp1.BRDN_COST,
13860             pjp1.REVENUE,
13861             pjp1.BILL_RAW_COST,
13862             pjp1.BILL_BRDN_COST,
13863             pjp1.BILL_LABOR_RAW_COST,
13864             pjp1.BILL_LABOR_BRDN_COST,
13865             pjp1.BILL_LABOR_HRS,
13866             pjp1.EQUIPMENT_RAW_COST,
13867             pjp1.EQUIPMENT_BRDN_COST,
13868             pjp1.CAPITALIZABLE_RAW_COST,
13869             pjp1.CAPITALIZABLE_BRDN_COST,
13870             pjp1.LABOR_RAW_COST,
13871             pjp1.LABOR_BRDN_COST,
13872             pjp1.LABOR_HRS,
13873             pjp1.LABOR_REVENUE,
13874             pjp1.EQUIPMENT_HOURS,
13875             pjp1.BILLABLE_EQUIPMENT_HOURS,
13876             pjp1.SUP_INV_COMMITTED_COST,
13877             pjp1.PO_COMMITTED_COST,
13878             pjp1.PR_COMMITTED_COST,
13879             pjp1.OTH_COMMITTED_COST,
13880             pjp1.ACT_LABOR_HRS,
13881             pjp1.ACT_EQUIP_HRS,
13882             pjp1.ACT_LABOR_BRDN_COST,
13883             pjp1.ACT_EQUIP_BRDN_COST,
13884             pjp1.ACT_BRDN_COST,
13885             pjp1.ACT_RAW_COST,
13886             pjp1.ACT_REVENUE,
13887             pjp1.ACT_LABOR_RAW_COST,
13888             pjp1.ACT_EQUIP_RAW_COST,
13889             pjp1.ETC_LABOR_HRS,
13890             pjp1.ETC_EQUIP_HRS,
13891             pjp1.ETC_LABOR_BRDN_COST,
13892             pjp1.ETC_EQUIP_BRDN_COST,
13893             pjp1.ETC_BRDN_COST,
13894             pjp1.ETC_RAW_COST,
13895             pjp1.ETC_LABOR_RAW_COST,
13896             pjp1.ETC_EQUIP_RAW_COST,
13897             pjp1.CUSTOM1,
13898             pjp1.CUSTOM2,
13899             pjp1.CUSTOM3,
13900             pjp1.CUSTOM4,
13901             pjp1.CUSTOM5,
13902             pjp1.CUSTOM6,
13903             pjp1.CUSTOM7,
13904             pjp1.CUSTOM8,
13905             pjp1.CUSTOM9,
13906             pjp1.CUSTOM10,
13907             pjp1.CUSTOM11,
13908             pjp1.CUSTOM12,
13909             pjp1.CUSTOM13,
13910             pjp1.CUSTOM14,
13911             pjp1.CUSTOM15
13912           from
13913             PJI_FP_AGGR_PJP1   pjp1,
13914             PJI_PJP_WBS_HEADER wbs_hdr,
13915             PJI_XBS_DENORM     prg,
13916             (
13917               select 'Y' CB_FLAG,
13918                      'N' CO_FLAG,
13919                      -3  PLAN_VERSION_ID
13920               from DUAL union all
13921               select 'N' CB_FLAG,
13922                      'Y' CO_FLAG,
13923                      -4  PLAN_VERSION_ID
13924               from DUAL union all
13925               select 'Y' CB_FLAG,
13926                      'Y' CO_FLAG,
13927                      -3  PLAN_VERSION_ID
13928               from DUAL union all
13929               select 'Y' CB_FLAG,
13930                      'Y' CO_FLAG,
13931                      -4  PLAN_VERSION_ID
13932               from DUAL
13933             ) fin_plan
13934           where
13935             prg.STRUCT_TYPE         = 'PRG'                    and
13936             prg.SUP_LEVEL           = l_level                  and
13937             prg.SUB_LEVEL           = l_level                  and
13938             pjp1.WORKER_ID          = p_worker_id              and
13939             pjp1.PROJECT_ID         = prg.SUP_PROJECT_ID       and
13940             pjp1.PROJECT_ELEMENT_ID = prg.SUP_EMT_ID           and
13941             pjp1.PRG_LEVEL          = 0                        and
13942             pjp1.RBS_AGGR_LEVEL     in ('T', 'L')              and
13943             pjp1.WBS_ROLLUP_FLAG    = 'N'                      and
13944             pjp1.PRG_ROLLUP_FLAG    = 'N'                      and
13945             wbs_hdr.PROJECT_ID      = pjp1.PROJECT_ID          and
13946             wbs_hdr.PLAN_VERSION_ID = pjp1.PLAN_VERSION_ID     and
13947             wbs_hdr.PLAN_TYPE_CODE  = pjp1.PLAN_TYPE_CODE      and
13948             decode(wbs_hdr.WP_FLAG,
13949                    'N', decode(pjp1.PLAN_VERSION_ID,
13950                                -1, 'Y',
13951                                -2, 'Y',
13952                                -3, 'Y', -- won't exist
13953                                -4, 'Y', -- won't exist
13954                                    decode(wbs_hdr.CB_FLAG || '_' ||
13955                                           wbs_hdr.CO_FLAG,
13956                                           'Y_Y', 'Y',
13957                                           'N_Y', 'Y',
13958                                           'Y_N', 'Y',
13959                                                  'N')),
13960                         'Y')        =  'Y'                     and
13961             wbs_hdr.WBS_VERSION_ID  = prg.SUP_ID               and
13962             wbs_hdr.CB_FLAG         = fin_plan.CB_FLAG     (+) and
13963             wbs_hdr.CO_FLAG         = fin_plan.CO_FLAG     (+)
13964           union all
13965           select /*+ ordered
13966                      index(fpr PJI_FP_XBS_ACCUM_F_N1) */
13967                  -- get delta task level amounts from Reporting Lines
13968             to_char(null)                             LINE_TYPE,
13969             wbs_hdr.WBS_VERSION_ID,
13970             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
13971             decode(log.EVENT_TYPE,
13972                    'WBS_CHANGE', 'Y',
13973                    'WBS_PUBLISH', 'N')                PUSHUP_FLAG,
13974             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
13975                    'N_PRG', decode(top_slice.INVERT_ID,
13976                                    'PRJ', 'Y',
13977                                    decode(wbs.SUB_LEVEL,
13978                                           1, 'Y', 'N')),
13979                    decode(wbs_hdr.WP_FLAG
13980                             || '_' || fin_plan.INVERT_ID
13981                             || '_' || fin_plan.CB
13982                             || '_' || fin_plan.CO
13983                             || '_' || to_char(fin_plan.PLAN_VERSION_ID),
13984                           'N_PRJ_Y_Y_-4', 'N',
13985                                           'Y'))       INSERT_FLAG,
13986             fpr.PROJECT_ID,
13987             fpr.PROJECT_ORG_ID,
13988             fpr.PROJECT_ORGANIZATION_ID,
13989             decode(top_slice.INVERT_ID,
13990                    'PRJ', prg.SUP_EMT_ID,
13991                           decode(wbs.SUB_LEVEL,
13992                                  1, prg.SUP_EMT_ID,
13993                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
13994             fpr.TIME_ID,
13995             fpr.PERIOD_TYPE_ID,
13996             fpr.CALENDAR_TYPE,
13997             fpr.RBS_AGGR_LEVEL,
13998             'Y'                                       WBS_ROLLUP_FLAG,
13999             fpr.PRG_ROLLUP_FLAG,
14000             fpr.CURR_RECORD_TYPE_ID,
14001             fpr.CURRENCY_CODE,
14002             fpr.RBS_ELEMENT_ID,
14003             fpr.RBS_VERSION_ID,
14004             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
14005                    'N_PRG', fin_plan.PLAN_VERSION_ID,
14006                             fpr.PLAN_VERSION_ID)      PLAN_VERSION_ID,
14007             fpr.PLAN_TYPE_ID,
14008             fpr.PLAN_TYPE_CODE,
14009             wbs.SIGN * fpr.RAW_COST                   RAW_COST,
14010             wbs.SIGN * fpr.BRDN_COST                  BRDN_COST,
14011             wbs.SIGN * fpr.REVENUE                    REVENUE,
14012             wbs.SIGN * fpr.BILL_RAW_COST              BILL_RAW_COST,
14013             wbs.SIGN * fpr.BILL_BRDN_COST             BILL_BRDN_COST,
14014             wbs.SIGN * fpr.BILL_LABOR_RAW_COST        BILL_LABOR_RAW_COST,
14015             wbs.SIGN * fpr.BILL_LABOR_BRDN_COST       BILL_LABOR_BRDN_COST,
14016             wbs.SIGN * fpr.BILL_LABOR_HRS             BILL_LABOR_HRS,
14017             wbs.SIGN * fpr.EQUIPMENT_RAW_COST         EQUIPMENT_RAW_COST,
14018             wbs.SIGN * fpr.EQUIPMENT_BRDN_COST        EQUIPMENT_BRDN_COST,
14019             wbs.SIGN * fpr.CAPITALIZABLE_RAW_COST     CAPITALIZABLE_RAW_COST,
14020             wbs.SIGN * fpr.CAPITALIZABLE_BRDN_COST    CAPITALIZABLE_BRDN_COST,
14021             wbs.SIGN * fpr.LABOR_RAW_COST             LABOR_RAW_COST,
14022             wbs.SIGN * fpr.LABOR_BRDN_COST            LABOR_BRDN_COST,
14023             wbs.SIGN * fpr.LABOR_HRS                  LABOR_HRS,
14024             wbs.SIGN * fpr.LABOR_REVENUE              LABOR_REVENUE,
14025             wbs.SIGN * fpr.EQUIPMENT_HOURS            EQUIPMENT_HOURS,
14026             wbs.SIGN * fpr.BILLABLE_EQUIPMENT_HOURS   BILLABLE_EQUIPMENT_HOURS,
14027             wbs.SIGN * fpr.SUP_INV_COMMITTED_COST     SUP_INV_COMMITTED_COST,
14028             wbs.SIGN * fpr.PO_COMMITTED_COST          PO_COMMITTED_COST,
14029             wbs.SIGN * fpr.PR_COMMITTED_COST          PR_COMMITTED_COST,
14030             wbs.SIGN * fpr.OTH_COMMITTED_COST         OTH_COMMITTED_COST,
14031             wbs.SIGN * fpr.ACT_LABOR_HRS              ACT_LABOR_HRS,
14032             wbs.SIGN * fpr.ACT_EQUIP_HRS              ACT_EQUIP_HRS,
14033             wbs.SIGN * fpr.ACT_LABOR_BRDN_COST        ACT_LABOR_BRDN_COST,
14034             wbs.SIGN * fpr.ACT_EQUIP_BRDN_COST        ACT_EQUIP_BRDN_COST,
14035             wbs.SIGN * fpr.ACT_BRDN_COST              ACT_BRDN_COST,
14036             wbs.SIGN * fpr.ACT_RAW_COST               ACT_RAW_COST,
14037             wbs.SIGN * fpr.ACT_REVENUE                ACT_REVENUE,
14038             wbs.SIGN * fpr.ACT_LABOR_RAW_COST         ACT_LABOR_RAW_COST,
14039             wbs.SIGN * fpr.ACT_EQUIP_RAW_COST         ACT_EQUIP_RAW_COST,
14040             wbs.SIGN * fpr.ETC_LABOR_HRS              ETC_LABOR_HRS,
14041             wbs.SIGN * fpr.ETC_EQUIP_HRS              ETC_EQUIP_HRS,
14042             wbs.SIGN * fpr.ETC_LABOR_BRDN_COST        ETC_LABOR_BRDN_COST,
14043             wbs.SIGN * fpr.ETC_EQUIP_BRDN_COST        ETC_EQUIP_BRDN_COST,
14044             wbs.SIGN * fpr.ETC_BRDN_COST              ETC_BRDN_COST,
14045             wbs.SIGN * fpr.ETC_RAW_COST               ETC_RAW_COST,
14046             wbs.SIGN * fpr.ETC_LABOR_RAW_COST         ETC_LABOR_RAW_COST,
14047             wbs.SIGN * fpr.ETC_EQUIP_RAW_COST         ETC_EQUIP_RAW_COST,
14048             wbs.SIGN * fpr.CUSTOM1                    CUSTOM1,
14049             wbs.SIGN * fpr.CUSTOM2                    CUSTOM2,
14050             wbs.SIGN * fpr.CUSTOM3                    CUSTOM3,
14051             wbs.SIGN * fpr.CUSTOM4                    CUSTOM4,
14052             wbs.SIGN * fpr.CUSTOM5                    CUSTOM5,
14053             wbs.SIGN * fpr.CUSTOM6                    CUSTOM6,
14054             wbs.SIGN * fpr.CUSTOM7                    CUSTOM7,
14055             wbs.SIGN * fpr.CUSTOM8                    CUSTOM8,
14056             wbs.SIGN * fpr.CUSTOM9                    CUSTOM9,
14057             wbs.SIGN * fpr.CUSTOM10                   CUSTOM10,
14058             wbs.SIGN * fpr.CUSTOM11                   CUSTOM11,
14059             wbs.SIGN * fpr.CUSTOM12                   CUSTOM12,
14060             wbs.SIGN * fpr.CUSTOM13                   CUSTOM13,
14061             wbs.SIGN * fpr.CUSTOM14                   CUSTOM14,
14062             wbs.SIGN * fpr.CUSTOM15                   CUSTOM15
14063           from
14064             PJI_PA_PROJ_EVENTS_LOG log,
14065             PJI_PJP_WBS_HEADER     wbs_hdr,
14066             PJI_XBS_DENORM_DELTA   wbs,
14067             PJI_XBS_DENORM         prg,
14068             PJI_FP_XBS_ACCUM_F     fpr,
14069             (
14070               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
14071               from DUAL union all
14072               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
14073               from DUAL union all
14074               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
14075               from DUAL union all
14076               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
14077               from DUAL union all
14078               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
14079               from DUAL union all
14080               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
14081               from DUAL union all
14082               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
14083               from DUAL union all
14084               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
14085               from DUAL
14086             ) fin_plan,
14087             (
14088               select 1     WBS_SUP_LEVEL,
14089                      1     WBS_SUB_LEVEL,
14090                      'PRJ' INVERT_ID
14091               from   DUAL
14092               union all
14093               select 1     WBS_SUP_LEVEL,
14094                      1     WBS_SUB_LEVEL,
14095                      'WBS' INVERT_ID
14096               from   DUAL
14097             ) top_slice
14098           where
14099             prg.STRUCT_TYPE         =  'PRG'                       and
14100             prg.SUP_LEVEL           =  l_level                     and
14101             prg.SUB_LEVEL           =  l_level                     and
14102             wbs.WORKER_ID           =  p_worker_id                 and
14103             wbs.STRUCT_TYPE         =  'WBS'                       and
14104             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
14105             log.WORKER_ID           =  p_worker_id                 and
14106             log.EVENT_ID            =  wbs.EVENT_ID                and
14107             log.EVENT_TYPE          in ('WBS_CHANGE',
14108                                         'WBS_PUBLISH')             and
14109             wbs_hdr.PROJECT_ID      =  log.ATTRIBUTE1              and
14110             wbs_hdr.PLAN_VERSION_ID =  log.ATTRIBUTE3              and
14111             wbs_hdr.WBS_VERSION_ID  =  wbs.STRUCT_VERSION_ID       and
14112             wbs_hdr.PROJECT_ID      =  prg.SUP_PROJECT_ID          and
14113             wbs_hdr.WBS_VERSION_ID  =  prg.SUP_ID                  and
14114             fpr.RBS_AGGR_LEVEL      =  'T'                         and
14115             fpr.WBS_ROLLUP_FLAG     =  'N'                         and
14116             fpr.PRG_ROLLUP_FLAG     in ('Y', 'N')                  and
14117             fpr.PROJECT_ID          =  wbs.SUP_PROJECT_ID          and
14118             fpr.PROJECT_ELEMENT_ID  =  wbs.SUB_EMT_ID              and
14119             fpr.PROJECT_ID          =  wbs_hdr.PROJECT_ID          and
14120             fpr.PLAN_VERSION_ID     =  wbs_hdr.PLAN_VERSION_ID     and
14121             fpr.PLAN_TYPE_CODE      =  wbs_hdr.PLAN_TYPE_CODE      and
14122             decode(fpr.PLAN_VERSION_ID,
14123                    -3, fpr.PLAN_TYPE_ID,
14124                    -4, fpr.PLAN_TYPE_ID,
14125                        -1)          =  decode(fpr.PLAN_VERSION_ID,
14126                                               -3, wbs_hdr.PLAN_TYPE_ID,
14127                                               -4, wbs_hdr.PLAN_TYPE_ID,
14128                                                   -1)              and
14129             wbs_hdr.CB_FLAG         =  fin_plan.CB             (+) and
14130             wbs_hdr.CO_FLAG         =  fin_plan.CO             (+) and
14131             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
14132             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+) and
14133             (wbs.SUP_LEVEL <> wbs.SUB_LEVEL or
14134              (wbs.SUP_LEVEL = 1 and
14135               wbs.SUB_LEVEL = 1))
14136           ) pjp,
14137           (
14138           select /*+ ordered */
14139             prg.SUP_PROJECT_ID,
14140             map.PROJECT_ORG_ID               SUP_PROJECT_ORG_ID,
14141             map.PROJECT_ORGANIZATION_ID      SUP_PROJECT_ORGANIZATION_ID,
14142             prg.SUP_ID,
14143             prg.SUP_EMT_ID,
14144             prg.SUP_LEVEL,
14145             prg.SUB_ID,
14146             prg.SUB_EMT_ID,
14147             prg.SUB_ROLLUP_ID,
14148             invert.INVERT_VALUE              RELATIONSHIP_TYPE,
14149             decode(prg.RELATIONSHIP_TYPE,
14150                    'LW', 'Y',
14151                    'LF', 'N')                WP_FLAG,
14152             'Y'                              PUSHUP_FLAG
14153           from
14154             PJI_PJP_PROJ_BATCH_MAP map,
14155             PJI_XBS_DENORM prg,
14156             (
14157               select 'LF' INVERT_ID, 'LF' INVERT_VALUE from dual union all
14158               select 'LW' INVERT_ID, 'LW' INVERT_VALUE from dual union all
14159               select 'A'  INVERT_ID, 'LF' INVERT_VALUE from dual union all
14160               select 'A'  INVERT_ID, 'LW' INVERT_VALUE from dual
14161             ) invert,
14162             PJI_XBS_DENORM_DELTA prg_delta
14163           where
14164             prg.STRUCT_TYPE               = 'PRG'                           and
14165             prg.SUB_ROLLUP_ID             is not null                       and
14166             prg.SUB_LEVEL                 = l_level                         and
14167             map.WORKER_ID                 = p_worker_id                     and
14168             map.PROJECT_ID                = prg.SUP_PROJECT_ID              and
14169             decode(prg.SUB_LEVEL,
14170                    prg.SUP_LEVEL, 'A',
14171                    prg.RELATIONSHIP_TYPE) = invert.INVERT_ID                and
14172             p_worker_id                   = prg_delta.WORKER_ID         (+) and
14173             prg.STRUCT_TYPE               = prg_delta.STRUCT_TYPE       (+) and
14174             prg.SUP_PROJECT_ID            = prg_delta.SUP_PROJECT_ID    (+) and
14175             prg.SUP_LEVEL                 = prg_delta.SUP_LEVEL         (+) and
14176             prg.SUP_ID                    = prg_delta.SUP_ID            (+) and
14177             prg.SUB_LEVEL                 = prg_delta.SUB_LEVEL         (+) and
14178             prg.SUB_ID                    = prg_delta.SUB_ID            (+) and
14179             prg.RELATIONSHIP_TYPE         = prg_delta.RELATIONSHIP_TYPE (+) and
14180             -1                            = prg_delta.SIGN              (+) and
14181             prg_delta.SUP_PROJECT_ID      is null
14182           )                          prg,
14183           PJI_PJP_WBS_HEADER         wbs_hdr,
14184           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
14185           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
14186           PA_PROJ_WORKPLAN_ATTR      sup_wpa
14187         where
14188           pjp.PROJECT_ID         = sub_ver.PROJECT_ID                (+) and
14189           pjp.WBS_VERSION_ID     = sub_ver.ELEMENT_VERSION_ID        (+) and
14190           'STRUCTURE_PUBLISHED'  = sub_ver.STATUS_CODE               (+) and
14191           pjp.WBS_VERSION_ID     = prg.SUB_ID                        (+) and
14192           pjp.RELATIONSHIP_TYPE  = prg.RELATIONSHIP_TYPE             (+) and
14193           pjp.PUSHUP_FLAG        = prg.PUSHUP_FLAG                   (+) and
14194           prg.SUP_PROJECT_ID     = wbs_hdr.PROJECT_ID                (+) and
14195           prg.SUP_ID             = wbs_hdr.WBS_VERSION_ID            (+) and
14196           prg.WP_FLAG            = wbs_hdr.WP_FLAG                   (+) and
14197           'Y'                    = wbs_hdr.WP_FLAG                   (+) and
14198           wbs_hdr.PROJECT_ID     = sup_ver.PROJECT_ID                (+) and
14199           wbs_hdr.WBS_VERSION_ID = sup_ver.ELEMENT_VERSION_ID        (+) and
14200           'STRUCTURE_PUBLISHED'  = sup_ver.STATUS_CODE               (+) and
14201           'Y'                    = sup_ver.LATEST_EFF_PUBLISHED_FLAG (+) and
14202           prg.SUP_EMT_ID         = sup_wpa.PROJ_ELEMENT_ID           (+)
14203         group by
14204           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14205                  pjp.INSERT_FLAG, 'Y'),
14206           pjp.RELATIONSHIP_TYPE,
14207           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14208                  null, sub_ver.STATUS_CODE),
14209           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14210                  null, sup_ver.STATUS_CODE),
14211           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14212                  null, sup_wpa.WP_ENABLE_VERSION_FLAG),
14213           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14214                  null, decode(pjp.PLAN_VERSION_ID,
14215                               -1, prg.SUP_ID,
14216                               -3, prg.SUP_ID,
14217                               -4, prg.SUP_ID,
14218                                   null)),
14219           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14220                  null, decode(pjp.PLAN_VERSION_ID,
14221                               -1, prg.SUP_EMT_ID,
14222                               -3, prg.SUP_EMT_ID,
14223                               -4, prg.SUP_EMT_ID,
14224                                   null)),
14225           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14226                  null, decode(pjp.PLAN_VERSION_ID,
14227                               -1, prg.WP_FLAG,
14228                               -3, prg.WP_FLAG,
14229                               -4, prg.WP_FLAG,
14230                                   null)),
14231           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14232                  l_level, prg.SUP_LEVEL),
14233           pjp.LINE_TYPE,
14234           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14235                  pjp.PROJECT_ID, prg.SUP_PROJECT_ID),
14236           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14237                  pjp.PROJECT_ORG_ID,
14238                  prg.SUP_PROJECT_ORG_ID),
14239           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14240                  pjp.PROJECT_ORGANIZATION_ID,
14241                  prg.SUP_PROJECT_ORGANIZATION_ID),
14242           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14243                  pjp.PROJECT_ELEMENT_ID,
14244                  prg.SUB_ROLLUP_ID),
14245           pjp.TIME_ID,
14246           pjp.PERIOD_TYPE_ID,
14247           pjp.CALENDAR_TYPE,
14248           pjp.RBS_AGGR_LEVEL,
14249           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14250                  pjp.WBS_ROLLUP_FLAG, 'N'),
14251           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14252                  pjp.PRG_ROLLUP_FLAG, 'Y'),
14253           pjp.CURR_RECORD_TYPE_ID,
14254           pjp.CURRENCY_CODE,
14255           pjp.RBS_ELEMENT_ID,
14256           pjp.RBS_VERSION_ID,
14257           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14258                  pjp.PLAN_VERSION_ID,
14259                  decode(pjp.PLAN_VERSION_ID,
14260                         -1, pjp.PLAN_VERSION_ID,
14261                         -2, pjp.PLAN_VERSION_ID,
14262                         -3, pjp.PLAN_VERSION_ID,
14263                         -4, pjp.PLAN_VERSION_ID,
14264                             wbs_hdr.PLAN_VERSION_ID)),
14265           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14266                  pjp.PLAN_TYPE_ID,
14267                  decode(pjp.PLAN_VERSION_ID,
14268                         -1, pjp.PLAN_TYPE_ID,
14269                         -2, pjp.PLAN_TYPE_ID,
14270                         -3, pjp.PLAN_TYPE_ID,
14271                         -4, pjp.PLAN_TYPE_ID,
14272                             wbs_hdr.PLAN_TYPE_ID)),
14273           pjp.PLAN_TYPE_CODE
14274           )                          pjp1_i,
14275           PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
14276           PA_PROJ_WORKPLAN_ATTR      sup_wpa
14277         where
14278           pjp1_i.INSERT_FLAG  = 'Y'                                and
14279           pjp1_i.PROJECT_ID   = sup_fin_ver.PROJECT_ID         (+) and
14280           pjp1_i.SUP_ID       = sup_fin_ver.ELEMENT_VERSION_ID (+) and
14281           'STRUCTURE_WORKING' = sup_fin_ver.STATUS_CODE        (+) and
14282           pjp1_i.SUP_EMT_ID   = sup_wpa.PROJ_ELEMENT_ID        (+) and
14283           'N'                 = sup_wpa.WP_ENABLE_VERSION_FLAG (+) and
14284           (pjp1_i.SUP_ID is null or
14285            (pjp1_i.SUP_ID is not null and
14286             (sup_fin_ver.PROJECT_ID is not null or
14287              sup_wpa.PROJ_ELEMENT_ID is not null)));
14288     elsif (p_worker_id =6) then
14289       -- Query for Partition 6
14290 
14291         insert /*+ parallel(PJI_FP_AGGR_PJP1) */
14292                    into PJI_FP_AGGR_PJP1 partition(P6)
14293 	(
14294           WORKER_ID,
14295           RECORD_TYPE,
14296           PRG_LEVEL,
14297           LINE_TYPE,
14298           PROJECT_ID,
14299           PROJECT_ORG_ID,
14300           PROJECT_ORGANIZATION_ID,
14301           PROJECT_ELEMENT_ID,
14302           TIME_ID,
14303           PERIOD_TYPE_ID,
14304           CALENDAR_TYPE,
14305           RBS_AGGR_LEVEL,
14306           WBS_ROLLUP_FLAG,
14307           PRG_ROLLUP_FLAG,
14308           CURR_RECORD_TYPE_ID,
14309           CURRENCY_CODE,
14310           RBS_ELEMENT_ID,
14311           RBS_VERSION_ID,
14312           PLAN_VERSION_ID,
14313           PLAN_TYPE_ID,
14314           PLAN_TYPE_CODE,
14315           RAW_COST,
14316           BRDN_COST,
14317           REVENUE,
14318           BILL_RAW_COST,
14319           BILL_BRDN_COST,
14320           BILL_LABOR_RAW_COST,
14321           BILL_LABOR_BRDN_COST,
14322           BILL_LABOR_HRS,
14323           EQUIPMENT_RAW_COST,
14324           EQUIPMENT_BRDN_COST,
14325           CAPITALIZABLE_RAW_COST,
14326           CAPITALIZABLE_BRDN_COST,
14327           LABOR_RAW_COST,
14328           LABOR_BRDN_COST,
14329           LABOR_HRS,
14330           LABOR_REVENUE,
14331           EQUIPMENT_HOURS,
14332           BILLABLE_EQUIPMENT_HOURS,
14333           SUP_INV_COMMITTED_COST,
14334           PO_COMMITTED_COST,
14335           PR_COMMITTED_COST,
14336           OTH_COMMITTED_COST,
14337           ACT_LABOR_HRS,
14338           ACT_EQUIP_HRS,
14339           ACT_LABOR_BRDN_COST,
14340           ACT_EQUIP_BRDN_COST,
14341           ACT_BRDN_COST,
14342           ACT_RAW_COST,
14343           ACT_REVENUE,
14344           ACT_LABOR_RAW_COST,
14345           ACT_EQUIP_RAW_COST,
14346           ETC_LABOR_HRS,
14347           ETC_EQUIP_HRS,
14348           ETC_LABOR_BRDN_COST,
14349           ETC_EQUIP_BRDN_COST,
14350           ETC_BRDN_COST,
14351           ETC_RAW_COST,
14352           ETC_LABOR_RAW_COST,
14353           ETC_EQUIP_RAW_COST,
14354           CUSTOM1,
14355           CUSTOM2,
14356           CUSTOM3,
14357           CUSTOM4,
14358           CUSTOM5,
14359           CUSTOM6,
14360           CUSTOM7,
14361           CUSTOM8,
14362           CUSTOM9,
14363           CUSTOM10,
14364           CUSTOM11,
14365           CUSTOM12,
14366           CUSTOM13,
14367           CUSTOM14,
14368           CUSTOM15
14369         )
14370         select
14371           pjp1_i.WORKER_ID,
14372           pjp1_i.RECORD_TYPE,
14373           pjp1_i.PRG_LEVEL,
14374           pjp1_i.LINE_TYPE,
14375           pjp1_i.PROJECT_ID,
14376           pjp1_i.PROJECT_ORG_ID,
14377           pjp1_i.PROJECT_ORGANIZATION_ID,
14378           pjp1_i.PROJECT_ELEMENT_ID,
14379           pjp1_i.TIME_ID,
14380           pjp1_i.PERIOD_TYPE_ID,
14381           pjp1_i.CALENDAR_TYPE,
14382           pjp1_i.RBS_AGGR_LEVEL,
14383           pjp1_i.WBS_ROLLUP_FLAG,
14384           pjp1_i.PRG_ROLLUP_FLAG,
14385           pjp1_i.CURR_RECORD_TYPE_ID,
14386           pjp1_i.CURRENCY_CODE,
14387           pjp1_i.RBS_ELEMENT_ID,
14388           pjp1_i.RBS_VERSION_ID,
14389           pjp1_i.PLAN_VERSION_ID,
14390           pjp1_i.PLAN_TYPE_ID,
14391           pjp1_i.PLAN_TYPE_CODE,
14392           decode(pjp1_i.RELATIONSHIP_TYPE
14393                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14394                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14395                    || '_' || pjp1_i.SUB_STATUS_CODE
14396                    || '_' || pjp1_i.SUP_STATUS_CODE,
14397                  'LW_N_Y__', to_number(null),
14398                  decode(pjp1_i.RELATIONSHIP_TYPE
14399                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
14400                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
14401                           || '_' || pjp1_i.SUP_VER_ENABLED
14402                           || '_' || l_fpm_upgrade
14403                           || '_' || l_partial_mode,
14404                         'LW_N_Y_Y_C_', to_number(null),
14405                  pjp1_i.RAW_COST))                    RAW_COST,
14406           decode(pjp1_i.RELATIONSHIP_TYPE
14407                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14408                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14409                    || '_' || pjp1_i.SUB_STATUS_CODE
14410                    || '_' || pjp1_i.SUP_STATUS_CODE,
14411                  'LW_N_Y__', to_number(null),
14412                  decode(pjp1_i.RELATIONSHIP_TYPE
14413                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
14414                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
14415                           || '_' || pjp1_i.SUP_VER_ENABLED
14416                           || '_' || l_fpm_upgrade
14417                           || '_' || l_partial_mode,
14418                         'LW_N_Y_Y_C_', to_number(null),
14419                  pjp1_i.BRDN_COST))                   BRDN_COST,
14420           decode(pjp1_i.RELATIONSHIP_TYPE
14421                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14422                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14423                    || '_' || pjp1_i.SUB_STATUS_CODE
14424                    || '_' || pjp1_i.SUP_STATUS_CODE,
14425                  'LW_N_Y__', to_number(null),
14426                  decode(pjp1_i.RELATIONSHIP_TYPE
14427                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
14428                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
14429                           || '_' || pjp1_i.SUP_VER_ENABLED
14430                           || '_' || l_fpm_upgrade
14431                           || '_' || l_partial_mode,
14432                         'LW_N_Y_Y_C_', to_number(null),
14433                  pjp1_i.REVENUE))                     REVENUE,
14434           decode(pjp1_i.RELATIONSHIP_TYPE
14435                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14436                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14437                    || '_' || pjp1_i.SUB_STATUS_CODE
14438                    || '_' || pjp1_i.SUP_STATUS_CODE,
14439                  'LW_N_Y__', to_number(null),
14440                  decode(pjp1_i.RELATIONSHIP_TYPE
14441                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
14442                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
14443                           || '_' || pjp1_i.SUP_VER_ENABLED
14444                           || '_' || l_fpm_upgrade
14445                           || '_' || l_partial_mode,
14446                         'LW_N_Y_Y_C_', to_number(null),
14447                  pjp1_i.BILL_RAW_COST))               BILL_RAW_COST,
14448           decode(pjp1_i.RELATIONSHIP_TYPE
14449                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14450                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14451                    || '_' || pjp1_i.SUB_STATUS_CODE
14452                    || '_' || pjp1_i.SUP_STATUS_CODE,
14453                  'LW_N_Y__', to_number(null),
14454                  decode(pjp1_i.RELATIONSHIP_TYPE
14455                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
14456                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
14457                           || '_' || pjp1_i.SUP_VER_ENABLED
14458                           || '_' || l_fpm_upgrade
14459                           || '_' || l_partial_mode,
14460                         'LW_N_Y_Y_C_', to_number(null),
14461                  pjp1_i.BILL_BRDN_COST))              BILL_BRDN_COST,
14462           decode(pjp1_i.RELATIONSHIP_TYPE
14463                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14464                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14465                    || '_' || pjp1_i.SUB_STATUS_CODE
14466                    || '_' || pjp1_i.SUP_STATUS_CODE,
14467                  'LW_N_Y__', to_number(null),
14468                  decode(pjp1_i.RELATIONSHIP_TYPE
14469                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
14470                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
14471                           || '_' || pjp1_i.SUP_VER_ENABLED
14472                           || '_' || l_fpm_upgrade
14473                           || '_' || l_partial_mode,
14474                         'LW_N_Y_Y_C_', to_number(null),
14475                  pjp1_i.BILL_LABOR_RAW_COST))         BILL_LABOR_RAW_COST,
14476           decode(pjp1_i.RELATIONSHIP_TYPE
14477                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14478                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14479                    || '_' || pjp1_i.SUB_STATUS_CODE
14480                    || '_' || pjp1_i.SUP_STATUS_CODE,
14481                  'LW_N_Y__', to_number(null),
14482                  decode(pjp1_i.RELATIONSHIP_TYPE
14483                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
14484                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
14485                           || '_' || pjp1_i.SUP_VER_ENABLED
14486                           || '_' || l_fpm_upgrade
14487                           || '_' || l_partial_mode,
14488                         'LW_N_Y_Y_C_', to_number(null),
14489                  pjp1_i.BILL_LABOR_BRDN_COST))        BILL_LABOR_BRDN_COST,
14490           decode(pjp1_i.RELATIONSHIP_TYPE
14491                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14492                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14493                    || '_' || pjp1_i.SUB_STATUS_CODE
14494                    || '_' || pjp1_i.SUP_STATUS_CODE,
14495                  'LW_N_Y__', to_number(null),
14496                  decode(pjp1_i.RELATIONSHIP_TYPE
14497                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
14498                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
14499                           || '_' || pjp1_i.SUP_VER_ENABLED
14500                           || '_' || l_fpm_upgrade
14501                           || '_' || l_partial_mode,
14502                         'LW_N_Y_Y_C_', to_number(null),
14503                  pjp1_i.BILL_LABOR_HRS))              BILL_LABOR_HRS,
14504           decode(pjp1_i.RELATIONSHIP_TYPE
14505                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14506                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14507                    || '_' || pjp1_i.SUB_STATUS_CODE
14508                    || '_' || pjp1_i.SUP_STATUS_CODE,
14509                  'LW_N_Y__', to_number(null),
14510                  decode(pjp1_i.RELATIONSHIP_TYPE
14511                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
14512                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
14513                           || '_' || pjp1_i.SUP_VER_ENABLED
14514                           || '_' || l_fpm_upgrade
14515                           || '_' || l_partial_mode,
14516                         'LW_N_Y_Y_C_', to_number(null),
14517                  pjp1_i.EQUIPMENT_RAW_COST))          EQUIPMENT_RAW_COST,
14518           decode(pjp1_i.RELATIONSHIP_TYPE
14519                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14520                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14521                    || '_' || pjp1_i.SUB_STATUS_CODE
14522                    || '_' || pjp1_i.SUP_STATUS_CODE,
14523                  'LW_N_Y__', to_number(null),
14524                  decode(pjp1_i.RELATIONSHIP_TYPE
14525                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
14526                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
14527                           || '_' || pjp1_i.SUP_VER_ENABLED
14528                           || '_' || l_fpm_upgrade
14529                           || '_' || l_partial_mode,
14530                         'LW_N_Y_Y_C_', to_number(null),
14531                  pjp1_i.EQUIPMENT_BRDN_COST))         EQUIPMENT_BRDN_COST,
14532           decode(pjp1_i.RELATIONSHIP_TYPE
14533                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14534                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14535                    || '_' || pjp1_i.SUB_STATUS_CODE
14536                    || '_' || pjp1_i.SUP_STATUS_CODE,
14537                  'LW_N_Y__', to_number(null),
14538                  decode(pjp1_i.RELATIONSHIP_TYPE
14539                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
14540                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
14541                           || '_' || pjp1_i.SUP_VER_ENABLED
14542                           || '_' || l_fpm_upgrade
14543                           || '_' || l_partial_mode,
14544                         'LW_N_Y_Y_C_', to_number(null),
14545                  pjp1_i.CAPITALIZABLE_RAW_COST))      CAPITALIZABLE_RAW_COST,
14546           decode(pjp1_i.RELATIONSHIP_TYPE
14547                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14548                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14549                    || '_' || pjp1_i.SUB_STATUS_CODE
14550                    || '_' || pjp1_i.SUP_STATUS_CODE,
14551                  'LW_N_Y__', to_number(null),
14552                  decode(pjp1_i.RELATIONSHIP_TYPE
14553                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
14554                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
14555                           || '_' || pjp1_i.SUP_VER_ENABLED
14556                           || '_' || l_fpm_upgrade
14557                           || '_' || l_partial_mode,
14558                         'LW_N_Y_Y_C_', to_number(null),
14559                  pjp1_i.CAPITALIZABLE_BRDN_COST))     CAPITALIZABLE_BRDN_COST,
14560           decode(pjp1_i.RELATIONSHIP_TYPE
14561                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14562                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14563                    || '_' || pjp1_i.SUB_STATUS_CODE
14564                    || '_' || pjp1_i.SUP_STATUS_CODE,
14565                  'LW_N_Y__', to_number(null),
14566                  decode(pjp1_i.RELATIONSHIP_TYPE
14567                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
14568                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
14569                           || '_' || pjp1_i.SUP_VER_ENABLED
14570                           || '_' || l_fpm_upgrade
14571                           || '_' || l_partial_mode,
14572                         'LW_N_Y_Y_C_', to_number(null),
14573                  pjp1_i.LABOR_RAW_COST))              LABOR_RAW_COST,
14574           decode(pjp1_i.RELATIONSHIP_TYPE
14575                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14576                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14577                    || '_' || pjp1_i.SUB_STATUS_CODE
14578                    || '_' || pjp1_i.SUP_STATUS_CODE,
14579                  'LW_N_Y__', to_number(null),
14580                  decode(pjp1_i.RELATIONSHIP_TYPE
14581                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
14582                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
14583                           || '_' || pjp1_i.SUP_VER_ENABLED
14584                           || '_' || l_fpm_upgrade
14585                           || '_' || l_partial_mode,
14586                         'LW_N_Y_Y_C_', to_number(null),
14587                  pjp1_i.LABOR_BRDN_COST))             LABOR_BRDN_COST,
14588           decode(pjp1_i.RELATIONSHIP_TYPE
14589                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14590                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14591                    || '_' || pjp1_i.SUB_STATUS_CODE
14592                    || '_' || pjp1_i.SUP_STATUS_CODE,
14593                  'LW_N_Y__', to_number(null),
14594                  decode(pjp1_i.RELATIONSHIP_TYPE
14595                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
14596                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
14597                           || '_' || pjp1_i.SUP_VER_ENABLED
14598                           || '_' || l_fpm_upgrade
14599                           || '_' || l_partial_mode,
14600                         'LW_N_Y_Y_C_', to_number(null),
14601                  pjp1_i.LABOR_HRS))                   LABOR_HRS,
14602           decode(pjp1_i.RELATIONSHIP_TYPE
14603                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14604                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14605                    || '_' || pjp1_i.SUB_STATUS_CODE
14606                    || '_' || pjp1_i.SUP_STATUS_CODE,
14607                  'LW_N_Y__', to_number(null),
14608                  decode(pjp1_i.RELATIONSHIP_TYPE
14609                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
14610                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
14611                           || '_' || pjp1_i.SUP_VER_ENABLED
14612                           || '_' || l_fpm_upgrade
14613                           || '_' || l_partial_mode,
14614                         'LW_N_Y_Y_C_', to_number(null),
14615                  pjp1_i.LABOR_REVENUE))               LABOR_REVENUE,
14616           decode(pjp1_i.RELATIONSHIP_TYPE
14617                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14618                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14619                    || '_' || pjp1_i.SUB_STATUS_CODE
14620                    || '_' || pjp1_i.SUP_STATUS_CODE,
14621                  'LW_N_Y__', to_number(null),
14622                  decode(pjp1_i.RELATIONSHIP_TYPE
14623                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
14624                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
14625                           || '_' || pjp1_i.SUP_VER_ENABLED
14626                           || '_' || l_fpm_upgrade
14627                           || '_' || l_partial_mode,
14628                         'LW_N_Y_Y_C_', to_number(null),
14629                  pjp1_i.EQUIPMENT_HOURS))             EQUIPMENT_HOURS,
14630           decode(pjp1_i.RELATIONSHIP_TYPE
14631                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14632                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14633                    || '_' || pjp1_i.SUB_STATUS_CODE
14634                    || '_' || pjp1_i.SUP_STATUS_CODE,
14635                  'LW_N_Y__', to_number(null),
14636                  decode(pjp1_i.RELATIONSHIP_TYPE
14637                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
14638                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
14639                           || '_' || pjp1_i.SUP_VER_ENABLED
14640                           || '_' || l_fpm_upgrade
14641                           || '_' || l_partial_mode,
14642                         'LW_N_Y_Y_C_', to_number(null),
14643                  pjp1_i.BILLABLE_EQUIPMENT_HOURS))    BILLABLE_EQUIPMENT_HOURS,
14644           decode(pjp1_i.RELATIONSHIP_TYPE
14645                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14646                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14647                    || '_' || pjp1_i.SUB_STATUS_CODE
14648                    || '_' || pjp1_i.SUP_STATUS_CODE,
14649                  'LW_N_Y__', to_number(null),
14650                  decode(pjp1_i.RELATIONSHIP_TYPE
14651                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
14652                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
14653                           || '_' || pjp1_i.SUP_VER_ENABLED
14654                           || '_' || l_fpm_upgrade
14655                           || '_' || l_partial_mode,
14656                         'LW_N_Y_Y_C_', to_number(null),
14657                  pjp1_i.SUP_INV_COMMITTED_COST))      SUP_INV_COMMITTED_COST,
14658           decode(pjp1_i.RELATIONSHIP_TYPE
14659                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14660                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14661                    || '_' || pjp1_i.SUB_STATUS_CODE
14662                    || '_' || pjp1_i.SUP_STATUS_CODE,
14663                  'LW_N_Y__', to_number(null),
14664                  decode(pjp1_i.RELATIONSHIP_TYPE
14665                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
14666                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
14667                           || '_' || pjp1_i.SUP_VER_ENABLED
14668                           || '_' || l_fpm_upgrade
14669                           || '_' || l_partial_mode,
14670                         'LW_N_Y_Y_C_', to_number(null),
14671                  pjp1_i.PO_COMMITTED_COST))           PO_COMMITTED_COST,
14672           decode(pjp1_i.RELATIONSHIP_TYPE
14673                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14674                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14675                    || '_' || pjp1_i.SUB_STATUS_CODE
14676                    || '_' || pjp1_i.SUP_STATUS_CODE,
14677                  'LW_N_Y__', to_number(null),
14678                  decode(pjp1_i.RELATIONSHIP_TYPE
14679                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
14680                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
14681                           || '_' || pjp1_i.SUP_VER_ENABLED
14682                           || '_' || l_fpm_upgrade
14683                           || '_' || l_partial_mode,
14684                         'LW_N_Y_Y_C_', to_number(null),
14685                  pjp1_i.PR_COMMITTED_COST))           PR_COMMITTED_COST,
14686           decode(pjp1_i.RELATIONSHIP_TYPE
14687                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14688                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14689                    || '_' || pjp1_i.SUB_STATUS_CODE
14690                    || '_' || pjp1_i.SUP_STATUS_CODE,
14691                  'LW_N_Y__', to_number(null),
14692                  decode(pjp1_i.RELATIONSHIP_TYPE
14693                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
14694                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
14695                           || '_' || pjp1_i.SUP_VER_ENABLED
14696                           || '_' || l_fpm_upgrade
14697                           || '_' || l_partial_mode,
14698                         'LW_N_Y_Y_C_', to_number(null),
14699                  pjp1_i.OTH_COMMITTED_COST))          OTH_COMMITTED_COST,
14700           decode(pjp1_i.RELATIONSHIP_TYPE
14701                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14702                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14703                    || '_' || pjp1_i.SUP_STATUS_CODE
14704                    || '_' || l_partial_mode,
14705                  'LW_N_Y__', to_number(null),
14706                           pjp1_i.ACT_LABOR_HRS)       ACT_LABOR_HRS,
14707           decode(pjp1_i.RELATIONSHIP_TYPE
14708                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14709                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14710                    || '_' || pjp1_i.SUP_STATUS_CODE
14711                    || '_' || l_partial_mode,
14712                  'LW_N_Y__', to_number(null),
14713                           pjp1_i.ACT_EQUIP_HRS)       ACT_EQUIP_HRS,
14714           decode(pjp1_i.RELATIONSHIP_TYPE
14715                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14716                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14717                    || '_' || pjp1_i.SUP_STATUS_CODE
14718                    || '_' || l_partial_mode,
14719                  'LW_N_Y__', to_number(null),
14720                           pjp1_i.ACT_LABOR_BRDN_COST) ACT_LABOR_BRDN_COST,
14721           decode(pjp1_i.RELATIONSHIP_TYPE
14722                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14723                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14724                    || '_' || pjp1_i.SUP_STATUS_CODE
14725                    || '_' || l_partial_mode,
14726                  'LW_N_Y__', to_number(null),
14727                           pjp1_i.ACT_EQUIP_BRDN_COST) ACT_EQUIP_BRDN_COST,
14728           decode(pjp1_i.RELATIONSHIP_TYPE
14729                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14730                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14731                    || '_' || pjp1_i.SUP_STATUS_CODE
14732                    || '_' || l_partial_mode,
14733                  'LW_N_Y__', to_number(null),
14734                           pjp1_i.ACT_BRDN_COST)       ACT_BRDN_COST,
14735           decode(pjp1_i.RELATIONSHIP_TYPE
14736                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14737                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14738                    || '_' || pjp1_i.SUP_STATUS_CODE
14739                    || '_' || l_partial_mode,
14740                  'LW_N_Y__', to_number(null),
14741                           pjp1_i.ACT_RAW_COST)        ACT_RAW_COST,
14742           decode(pjp1_i.RELATIONSHIP_TYPE
14743                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14744                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14745                    || '_' || pjp1_i.SUP_STATUS_CODE
14746                    || '_' || l_partial_mode,
14747                  'LW_N_Y__', to_number(null),
14748                           pjp1_i.ACT_REVENUE)         ACT_REVENUE,
14749           decode(pjp1_i.RELATIONSHIP_TYPE
14750                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14751                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14752                    || '_' || pjp1_i.SUP_STATUS_CODE
14753                    || '_' || l_partial_mode,
14754                  'LW_N_Y__', to_number(null),
14755                           pjp1_i.ACT_LABOR_RAW_COST)  ACT_LABOR_RAW_COST,
14756           decode(pjp1_i.RELATIONSHIP_TYPE
14757                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14758                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14759                    || '_' || pjp1_i.SUP_STATUS_CODE
14760                    || '_' || l_partial_mode,
14761                  'LW_N_Y__', to_number(null),
14762                           pjp1_i.ACT_EQUIP_RAW_COST)  ACT_EQUIP_RAW_COST,
14763           decode(pjp1_i.RELATIONSHIP_TYPE
14764                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14765                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14766                    || '_' || pjp1_i.SUP_STATUS_CODE
14767                    || '_' || l_partial_mode,
14768                  'LW_N_Y__', to_number(null),
14769                           pjp1_i.ETC_LABOR_HRS)       ETC_LABOR_HRS,
14770           decode(pjp1_i.RELATIONSHIP_TYPE
14771                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14772                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14773                    || '_' || pjp1_i.SUP_STATUS_CODE
14774                    || '_' || l_partial_mode,
14775                  'LW_N_Y__', to_number(null),
14776                           pjp1_i.ETC_EQUIP_HRS)       ETC_EQUIP_HRS,
14777           decode(pjp1_i.RELATIONSHIP_TYPE
14778                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14779                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14780                    || '_' || pjp1_i.SUP_STATUS_CODE
14781                    || '_' || l_partial_mode,
14782                  'LW_N_Y__', to_number(null),
14783                           pjp1_i.ETC_LABOR_BRDN_COST) ETC_LABOR_BRDN_COST,
14784           decode(pjp1_i.RELATIONSHIP_TYPE
14785                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14786                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14787                    || '_' || pjp1_i.SUP_STATUS_CODE
14788                    || '_' || l_partial_mode,
14789                  'LW_N_Y__', to_number(null),
14790                           pjp1_i.ETC_EQUIP_BRDN_COST) ETC_EQUIP_BRDN_COST,
14791           decode(pjp1_i.RELATIONSHIP_TYPE
14792                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14793                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14794                    || '_' || pjp1_i.SUP_STATUS_CODE
14795                    || '_' || l_partial_mode,
14796                  'LW_N_Y__', to_number(null),
14797                           pjp1_i.ETC_BRDN_COST)       ETC_BRDN_COST,
14798           decode(pjp1_i.RELATIONSHIP_TYPE
14799                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14800                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14801                    || '_' || pjp1_i.SUP_STATUS_CODE
14802                    || '_' || l_partial_mode,
14803                  'LW_N_Y__', to_number(null),
14804                           pjp1_i.ETC_RAW_COST)        ETC_RAW_COST,
14805           decode(pjp1_i.RELATIONSHIP_TYPE
14806                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14807                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14808                    || '_' || pjp1_i.SUP_STATUS_CODE
14809                    || '_' || l_partial_mode,
14810                  'LW_N_Y__', to_number(null),
14811                           pjp1_i.ETC_LABOR_RAW_COST)  ETC_LABOR_RAW_COST,
14812           decode(pjp1_i.RELATIONSHIP_TYPE
14813                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
14814                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
14815                    || '_' || pjp1_i.SUP_STATUS_CODE
14816                    || '_' || l_partial_mode,
14817                  'LW_N_Y__', to_number(null),
14818                           pjp1_i.ETC_EQUIP_RAW_COST)  ETC_EQUIP_RAW_COST,
14819           pjp1_i.CUSTOM1,
14820           pjp1_i.CUSTOM2,
14821           pjp1_i.CUSTOM3,
14822           pjp1_i.CUSTOM4,
14823           pjp1_i.CUSTOM5,
14824           pjp1_i.CUSTOM6,
14825           pjp1_i.CUSTOM7,
14826           pjp1_i.CUSTOM8,
14827           pjp1_i.CUSTOM9,
14828           pjp1_i.CUSTOM10,
14829           pjp1_i.CUSTOM11,
14830           pjp1_i.CUSTOM12,
14831           pjp1_i.CUSTOM13,
14832           pjp1_i.CUSTOM14,
14833           pjp1_i.CUSTOM15
14834         from
14835           (
14836         select
14837           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14838                  pjp.INSERT_FLAG, 'Y')                INSERT_FLAG,
14839           pjp.RELATIONSHIP_TYPE,
14840           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14841                  null, sub_ver.STATUS_CODE)           SUB_STATUS_CODE,
14842           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14843                  null, sup_ver.STATUS_CODE)           SUP_STATUS_CODE,
14844           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14845                  null, sup_wpa.WP_ENABLE_VERSION_FLAG)SUP_VER_ENABLED,
14846           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14847                  null, decode(pjp.PLAN_VERSION_ID,
14848                               -1, prg.SUP_ID,
14849                               -3, prg.SUP_ID,
14850                               -4, prg.SUP_ID,
14851                                   null))              SUP_ID,
14852           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14853                  null, decode(pjp.PLAN_VERSION_ID,
14854                               -1, prg.SUP_EMT_ID,
14855                               -3, prg.SUP_EMT_ID,
14856                               -4, prg.SUP_EMT_ID,
14857                                   null))              SUP_EMT_ID,
14858           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14859                  null, decode(pjp.PLAN_VERSION_ID,
14860                               -1, prg.WP_FLAG,
14861                               -3, prg.WP_FLAG,
14862                               -4, prg.WP_FLAG,
14863                                   null))              SUP_WP_FLAG,
14864           p_worker_id                                 WORKER_ID,
14865           'W'                                         RECORD_TYPE,
14866           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14867                  l_level, prg.SUP_LEVEL)              PRG_LEVEL,
14868           pjp.LINE_TYPE,
14869           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14870                  pjp.PROJECT_ID, prg.SUP_PROJECT_ID)  PROJECT_ID,
14871           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14872                  pjp.PROJECT_ORG_ID,
14873                  prg.SUP_PROJECT_ORG_ID)              PROJECT_ORG_ID,
14874           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14875                  pjp.PROJECT_ORGANIZATION_ID,
14876                  prg.SUP_PROJECT_ORGANIZATION_ID)     PROJECT_ORGANIZATION_ID,
14877           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14878                  pjp.PROJECT_ELEMENT_ID,
14879                  prg.SUB_ROLLUP_ID)                   PROJECT_ELEMENT_ID,
14880           pjp.TIME_ID,
14881           pjp.PERIOD_TYPE_ID,
14882           pjp.CALENDAR_TYPE,
14883           pjp.RBS_AGGR_LEVEL,
14884           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14885                  pjp.WBS_ROLLUP_FLAG, 'N')            WBS_ROLLUP_FLAG,
14886           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14887                  pjp.PRG_ROLLUP_FLAG, 'Y')            PRG_ROLLUP_FLAG,
14888           pjp.CURR_RECORD_TYPE_ID,
14889           pjp.CURRENCY_CODE,
14890           pjp.RBS_ELEMENT_ID,
14891           pjp.RBS_VERSION_ID,
14892           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14893                  pjp.PLAN_VERSION_ID,
14894                  decode(pjp.PLAN_VERSION_ID,
14895                         -1, pjp.PLAN_VERSION_ID,
14896                         -2, pjp.PLAN_VERSION_ID,
14897                         -3, pjp.PLAN_VERSION_ID,
14898                         -4, pjp.PLAN_VERSION_ID,
14899                             wbs_hdr.PLAN_VERSION_ID)) PLAN_VERSION_ID,
14900           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
14901                  pjp.PLAN_TYPE_ID,
14902                  decode(pjp.PLAN_VERSION_ID,
14903                         -1, pjp.PLAN_TYPE_ID,
14904                         -2, pjp.PLAN_TYPE_ID,
14905                         -3, pjp.PLAN_TYPE_ID,
14906                         -4, pjp.PLAN_TYPE_ID,
14907                             wbs_hdr.PLAN_TYPE_ID))    PLAN_TYPE_ID,
14908           pjp.PLAN_TYPE_CODE,
14909           sum(pjp.RAW_COST)                           RAW_COST,
14910           sum(pjp.BRDN_COST)                          BRDN_COST,
14911           sum(pjp.REVENUE)                            REVENUE,
14912           sum(pjp.BILL_RAW_COST)                      BILL_RAW_COST,
14913           sum(pjp.BILL_BRDN_COST)                     BILL_BRDN_COST,
14914           sum(pjp.BILL_LABOR_RAW_COST)                BILL_LABOR_RAW_COST,
14915           sum(pjp.BILL_LABOR_BRDN_COST)               BILL_LABOR_BRDN_COST,
14916           sum(pjp.BILL_LABOR_HRS)                     BILL_LABOR_HRS,
14917           sum(pjp.EQUIPMENT_RAW_COST)                 EQUIPMENT_RAW_COST,
14918           sum(pjp.EQUIPMENT_BRDN_COST)                EQUIPMENT_BRDN_COST,
14919           sum(pjp.CAPITALIZABLE_RAW_COST)             CAPITALIZABLE_RAW_COST,
14920           sum(pjp.CAPITALIZABLE_BRDN_COST)            CAPITALIZABLE_BRDN_COST,
14921           sum(pjp.LABOR_RAW_COST)                     LABOR_RAW_COST,
14922           sum(pjp.LABOR_BRDN_COST)                    LABOR_BRDN_COST,
14923           sum(pjp.LABOR_HRS)                          LABOR_HRS,
14924           sum(pjp.LABOR_REVENUE)                      LABOR_REVENUE,
14925           sum(pjp.EQUIPMENT_HOURS)                    EQUIPMENT_HOURS,
14926           sum(pjp.BILLABLE_EQUIPMENT_HOURS)           BILLABLE_EQUIPMENT_HOURS,
14927           sum(pjp.SUP_INV_COMMITTED_COST)             SUP_INV_COMMITTED_COST,
14928           sum(pjp.PO_COMMITTED_COST)                  PO_COMMITTED_COST,
14929           sum(pjp.PR_COMMITTED_COST)                  PR_COMMITTED_COST,
14930           sum(pjp.OTH_COMMITTED_COST)                 OTH_COMMITTED_COST,
14931           sum(pjp.ACT_LABOR_HRS)                      ACT_LABOR_HRS,
14932           sum(pjp.ACT_EQUIP_HRS)                      ACT_EQUIP_HRS,
14933           sum(pjp.ACT_LABOR_BRDN_COST)                ACT_LABOR_BRDN_COST,
14934           sum(pjp.ACT_EQUIP_BRDN_COST)                ACT_EQUIP_BRDN_COST,
14935           sum(pjp.ACT_BRDN_COST)                      ACT_BRDN_COST,
14936           sum(pjp.ACT_RAW_COST)                       ACT_RAW_COST,
14937           sum(pjp.ACT_REVENUE)                        ACT_REVENUE,
14938           sum(pjp.ACT_LABOR_RAW_COST)                 ACT_LABOR_RAW_COST,
14939           sum(pjp.ACT_EQUIP_RAW_COST)                 ACT_EQUIP_RAW_COST,
14940           sum(pjp.ETC_LABOR_HRS)                      ETC_LABOR_HRS,
14941           sum(pjp.ETC_EQUIP_HRS)                      ETC_EQUIP_HRS,
14942           sum(pjp.ETC_LABOR_BRDN_COST)                ETC_LABOR_BRDN_COST,
14943           sum(pjp.ETC_EQUIP_BRDN_COST)                ETC_EQUIP_BRDN_COST,
14944           sum(pjp.ETC_BRDN_COST)                      ETC_BRDN_COST,
14945           sum(pjp.ETC_RAW_COST)                       ETC_RAW_COST,
14946           sum(pjp.ETC_LABOR_RAW_COST)                 ETC_LABOR_RAW_COST,
14947           sum(pjp.ETC_EQUIP_RAW_COST)                 ETC_EQUIP_RAW_COST,
14948           sum(pjp.CUSTOM1)                            CUSTOM1,
14949           sum(pjp.CUSTOM2)                            CUSTOM2,
14950           sum(pjp.CUSTOM3)                            CUSTOM3,
14951           sum(pjp.CUSTOM4)                            CUSTOM4,
14952           sum(pjp.CUSTOM5)                            CUSTOM5,
14953           sum(pjp.CUSTOM6)                            CUSTOM6,
14954           sum(pjp.CUSTOM7)                            CUSTOM7,
14955           sum(pjp.CUSTOM8)                            CUSTOM8,
14956           sum(pjp.CUSTOM9)                            CUSTOM9,
14957           sum(pjp.CUSTOM10)                           CUSTOM10,
14958           sum(pjp.CUSTOM11)                           CUSTOM11,
14959           sum(pjp.CUSTOM12)                           CUSTOM12,
14960           sum(pjp.CUSTOM13)                           CUSTOM13,
14961           sum(pjp.CUSTOM14)                           CUSTOM14,
14962           sum(pjp.CUSTOM15)                           CUSTOM15
14963         from
14964           (
14965           select /*+ index(wbs PA_XBS_DENORM_N2) parallel(pjp1) */ -- changed for bug 5927368
14966 		 -- get incremental task level amounts from source and
14967                  -- program rollup amounts from interim
14968             to_char(null)                             LINE_TYPE,
14969             wbs_hdr.WBS_VERSION_ID,
14970             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
14971             decode(wbs_hdr.WP_FLAG
14972                      || '_' || to_char(sign(pjp1.PLAN_VERSION_ID))
14973                      || '_' || nvl(fin_plan.INVERT_ID, 'PRJ'),
14974                    'N_1_PRJ', 'N',
14975                    'N_-1_PRG', 'N',
14976                    decode(top_slice.INVERT_ID,
14977                           'PRJ', 'Y',
14978                           decode(wbs.SUB_LEVEL,
14979                                  1, 'Y', 'N')))       PUSHUP_FLAG,
14980             decode(pjp1.RBS_AGGR_LEVEL,
14981                    'L', 'N',
14982                         decode(wbs_hdr.WP_FLAG
14983                                  || '_' || to_char(sign(pjp1.PLAN_VERSION_ID))
14984                                  || '_' || fin_plan.INVERT_ID,
14985                                'N_1_PRG', decode(top_slice.INVERT_ID,
14986                                                  'PRJ', 'Y',
14987                                                  decode(wbs.SUB_LEVEL,
14988                                                         1, 'Y', 'N')),
14989                                'N_-1_PRG', 'N',
14990                                decode(wbs_hdr.WP_FLAG
14991                                         || '_' || fin_plan.INVERT_ID
14992                                         || '_' || fin_plan.CB
14993                                         || '_' || fin_plan.CO
14994                                         || '_'
14995                                         || to_char(fin_plan.PLAN_VERSION_ID),
14996                                       'N_PRJ_Y_Y_-4', 'N',
14997                                                       'Y'))
14998                   )                                   INSERT_FLAG,
14999             pjp1.PROJECT_ID,
15000             pjp1.PROJECT_ORG_ID,
15001             pjp1.PROJECT_ORGANIZATION_ID,
15002             decode(top_slice.INVERT_ID,
15003                    'PRJ', prg.SUP_EMT_ID,
15004                           decode(wbs.SUB_LEVEL,
15005                                  1, prg.SUP_EMT_ID,
15006                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
15007             pjp1.TIME_ID,
15008             pjp1.PERIOD_TYPE_ID,
15009             pjp1.CALENDAR_TYPE,
15010             pjp1.RBS_AGGR_LEVEL,
15011             'Y'                                       WBS_ROLLUP_FLAG,
15012             pjp1.PRG_ROLLUP_FLAG,
15013             pjp1.CURR_RECORD_TYPE_ID,
15014             pjp1.CURRENCY_CODE,
15015             pjp1.RBS_ELEMENT_ID,
15016             pjp1.RBS_VERSION_ID,
15017             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
15018                    'N_PRG', fin_plan.PLAN_VERSION_ID,
15019                             pjp1.PLAN_VERSION_ID)     PLAN_VERSION_ID,
15020             pjp1.PLAN_TYPE_ID,
15021             pjp1.PLAN_TYPE_CODE,
15022             pjp1.RAW_COST,
15023             pjp1.BRDN_COST,
15024             pjp1.REVENUE,
15025             pjp1.BILL_RAW_COST,
15026             pjp1.BILL_BRDN_COST,
15027             pjp1.BILL_LABOR_RAW_COST,
15028             pjp1.BILL_LABOR_BRDN_COST,
15029             pjp1.BILL_LABOR_HRS,
15030             pjp1.EQUIPMENT_RAW_COST,
15031             pjp1.EQUIPMENT_BRDN_COST,
15032             pjp1.CAPITALIZABLE_RAW_COST,
15033             pjp1.CAPITALIZABLE_BRDN_COST,
15034             pjp1.LABOR_RAW_COST,
15035             pjp1.LABOR_BRDN_COST,
15036             pjp1.LABOR_HRS,
15037             pjp1.LABOR_REVENUE,
15038             pjp1.EQUIPMENT_HOURS,
15039             pjp1.BILLABLE_EQUIPMENT_HOURS,
15040             pjp1.SUP_INV_COMMITTED_COST,
15041             pjp1.PO_COMMITTED_COST,
15042             pjp1.PR_COMMITTED_COST,
15043             pjp1.OTH_COMMITTED_COST,
15044             pjp1.ACT_LABOR_HRS,
15045             pjp1.ACT_EQUIP_HRS,
15046             pjp1.ACT_LABOR_BRDN_COST,
15047             pjp1.ACT_EQUIP_BRDN_COST,
15048             pjp1.ACT_BRDN_COST,
15049             pjp1.ACT_RAW_COST,
15050             pjp1.ACT_REVENUE,
15051             pjp1.ACT_LABOR_RAW_COST,
15052             pjp1.ACT_EQUIP_RAW_COST,
15053             pjp1.ETC_LABOR_HRS,
15054             pjp1.ETC_EQUIP_HRS,
15055             pjp1.ETC_LABOR_BRDN_COST,
15056             pjp1.ETC_EQUIP_BRDN_COST,
15057             pjp1.ETC_BRDN_COST,
15058             pjp1.ETC_RAW_COST,
15059             pjp1.ETC_LABOR_RAW_COST,
15060             pjp1.ETC_EQUIP_RAW_COST,
15061             pjp1.CUSTOM1,
15062             pjp1.CUSTOM2,
15063             pjp1.CUSTOM3,
15064             pjp1.CUSTOM4,
15065             pjp1.CUSTOM5,
15066             pjp1.CUSTOM6,
15067             pjp1.CUSTOM7,
15068             pjp1.CUSTOM8,
15069             pjp1.CUSTOM9,
15070             pjp1.CUSTOM10,
15071             pjp1.CUSTOM11,
15072             pjp1.CUSTOM12,
15073             pjp1.CUSTOM13,
15074             pjp1.CUSTOM14,
15075             pjp1.CUSTOM15
15076           from
15077             PJI_FP_AGGR_PJP1   pjp1,
15078             PJI_PJP_WBS_HEADER wbs_hdr,
15079             PA_XBS_DENORM      wbs,
15080             PJI_XBS_DENORM     prg,
15081             (
15082               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
15083               from DUAL union all
15084               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
15085               from DUAL union all
15086               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
15087               from DUAL union all
15088               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
15089               from DUAL union all
15090               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
15091               from DUAL union all
15092               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
15093               from DUAL union all
15094               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
15095               from DUAL union all
15096               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
15097               from DUAL
15098             ) fin_plan,
15099             (
15100               select 1     WBS_SUP_LEVEL,
15101                      1     WBS_SUB_LEVEL,
15102                      'PRJ' INVERT_ID
15103               from   DUAL
15104               union all
15105               select 1     WBS_SUP_LEVEL,
15106                      1     WBS_SUB_LEVEL,
15107                      'WBS' INVERT_ID
15108               from   DUAL
15109             ) top_slice
15110           where
15111             prg.STRUCT_TYPE         =  'PRG'                       and
15112             prg.SUP_LEVEL           =  l_level                     and
15113             prg.SUB_LEVEL           =  l_level                     and
15114             wbs.STRUCT_TYPE         =  'WBS'                       and
15115             ((wbs.SUP_LEVEL = 1 and
15116               wbs.SUB_LEVEL = 1) or
15117              (wbs.SUP_LEVEL <> wbs.SUB_LEVEL))                     and
15118             wbs.STRUCT_VERSION_ID   =  prg.SUP_ID                  and
15119             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
15120             pjp1.WORKER_ID          =  p_worker_id                 and
15121             pjp1.PRG_LEVEL          in (0, l_level)                and
15122             pjp1.RBS_AGGR_LEVEL     in ('T', 'L')                  and
15123             pjp1.WBS_ROLLUP_FLAG    =  'N'                         and
15124             pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                  and
15125             pjp1.PROJECT_ID         =  wbs_hdr.PROJECT_ID          and
15126             pjp1.PLAN_VERSION_ID    =  wbs_hdr.PLAN_VERSION_ID     and
15127             pjp1.PLAN_TYPE_CODE     =  wbs_hdr.PLAN_TYPE_CODE      and
15128             decode(pjp1.PLAN_VERSION_ID,
15129                    -3, pjp1.PLAN_TYPE_ID,
15130                    -4, pjp1.PLAN_TYPE_ID,
15131                        -1)          =  decode(pjp1.PLAN_VERSION_ID,
15132                                               -3, wbs_hdr.PLAN_TYPE_ID,
15133                                               -4, wbs_hdr.PLAN_TYPE_ID,
15134                                                   -1)              and
15135             wbs.STRUCT_VERSION_ID   =  wbs_hdr.WBS_VERSION_ID      and
15136             pjp1.PROJECT_ELEMENT_ID =  wbs.SUB_EMT_ID              and
15137             wbs_hdr.CB_FLAG         =  fin_plan.CB             (+) and
15138             wbs_hdr.CO_FLAG         =  fin_plan.CO             (+) and
15139             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
15140             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+)
15141           union all
15142           select /*+ parallel(pjp1) */          -- changed for bug 5927368
15143 		 -- get incremental project level amounts from source
15144             to_char(null)                             LINE_TYPE,
15145             wbs_hdr.WBS_VERSION_ID,
15146             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
15147             'Y'                                       PUSHUP_FLAG,
15148             decode(pjp1.RBS_AGGR_LEVEL,
15149                    'L', 'N',
15150                         decode(fin_plan.PLAN_VERSION_ID,
15151                                null, 'N', 'Y'))       INSERT_FLAG,
15152             pjp1.PROJECT_ID,
15153             pjp1.PROJECT_ORG_ID,
15154             pjp1.PROJECT_ORGANIZATION_ID,
15155             pjp1.PROJECT_ELEMENT_ID,
15156             pjp1.TIME_ID,
15157             pjp1.PERIOD_TYPE_ID,
15158             pjp1.CALENDAR_TYPE,
15159             pjp1.RBS_AGGR_LEVEL,
15160             'Y'                                       WBS_ROLLUP_FLAG,
15161             pjp1.PRG_ROLLUP_FLAG,
15162             pjp1.CURR_RECORD_TYPE_ID,
15163             pjp1.CURRENCY_CODE,
15164             pjp1.RBS_ELEMENT_ID,
15165             pjp1.RBS_VERSION_ID,
15166             decode(wbs_hdr.WP_FLAG,
15167                    'N', decode(pjp1.PLAN_VERSION_ID,
15168                                -1, pjp1.PLAN_VERSION_ID,
15169                                -2, pjp1.PLAN_VERSION_ID,
15170                                -3, pjp1.PLAN_VERSION_ID, -- won't exist
15171                                -4, pjp1.PLAN_VERSION_ID, -- won't exist
15172                                    fin_plan.PLAN_VERSION_ID),
15173                         pjp1.PLAN_VERSION_ID)         PLAN_VERSION_ID,
15174             pjp1.PLAN_TYPE_ID,
15175             pjp1.PLAN_TYPE_CODE,
15176             pjp1.RAW_COST,
15177             pjp1.BRDN_COST,
15178             pjp1.REVENUE,
15179             pjp1.BILL_RAW_COST,
15180             pjp1.BILL_BRDN_COST,
15181             pjp1.BILL_LABOR_RAW_COST,
15182             pjp1.BILL_LABOR_BRDN_COST,
15183             pjp1.BILL_LABOR_HRS,
15184             pjp1.EQUIPMENT_RAW_COST,
15185             pjp1.EQUIPMENT_BRDN_COST,
15186             pjp1.CAPITALIZABLE_RAW_COST,
15187             pjp1.CAPITALIZABLE_BRDN_COST,
15188             pjp1.LABOR_RAW_COST,
15189             pjp1.LABOR_BRDN_COST,
15190             pjp1.LABOR_HRS,
15191             pjp1.LABOR_REVENUE,
15192             pjp1.EQUIPMENT_HOURS,
15193             pjp1.BILLABLE_EQUIPMENT_HOURS,
15194             pjp1.SUP_INV_COMMITTED_COST,
15195             pjp1.PO_COMMITTED_COST,
15196             pjp1.PR_COMMITTED_COST,
15197             pjp1.OTH_COMMITTED_COST,
15198             pjp1.ACT_LABOR_HRS,
15199             pjp1.ACT_EQUIP_HRS,
15200             pjp1.ACT_LABOR_BRDN_COST,
15201             pjp1.ACT_EQUIP_BRDN_COST,
15202             pjp1.ACT_BRDN_COST,
15203             pjp1.ACT_RAW_COST,
15204             pjp1.ACT_REVENUE,
15205             pjp1.ACT_LABOR_RAW_COST,
15206             pjp1.ACT_EQUIP_RAW_COST,
15207             pjp1.ETC_LABOR_HRS,
15208             pjp1.ETC_EQUIP_HRS,
15209             pjp1.ETC_LABOR_BRDN_COST,
15210             pjp1.ETC_EQUIP_BRDN_COST,
15211             pjp1.ETC_BRDN_COST,
15212             pjp1.ETC_RAW_COST,
15213             pjp1.ETC_LABOR_RAW_COST,
15214             pjp1.ETC_EQUIP_RAW_COST,
15215             pjp1.CUSTOM1,
15216             pjp1.CUSTOM2,
15217             pjp1.CUSTOM3,
15218             pjp1.CUSTOM4,
15219             pjp1.CUSTOM5,
15220             pjp1.CUSTOM6,
15221             pjp1.CUSTOM7,
15222             pjp1.CUSTOM8,
15223             pjp1.CUSTOM9,
15224             pjp1.CUSTOM10,
15225             pjp1.CUSTOM11,
15226             pjp1.CUSTOM12,
15227             pjp1.CUSTOM13,
15228             pjp1.CUSTOM14,
15229             pjp1.CUSTOM15
15230           from
15231             PJI_FP_AGGR_PJP1   pjp1,
15232             PJI_PJP_WBS_HEADER wbs_hdr,
15233             PJI_XBS_DENORM     prg,
15234             (
15235               select 'Y' CB_FLAG,
15236                      'N' CO_FLAG,
15237                      -3  PLAN_VERSION_ID
15238               from DUAL union all
15239               select 'N' CB_FLAG,
15240                      'Y' CO_FLAG,
15241                      -4  PLAN_VERSION_ID
15242               from DUAL union all
15243               select 'Y' CB_FLAG,
15244                      'Y' CO_FLAG,
15245                      -3  PLAN_VERSION_ID
15246               from DUAL union all
15247               select 'Y' CB_FLAG,
15248                      'Y' CO_FLAG,
15249                      -4  PLAN_VERSION_ID
15250               from DUAL
15251             ) fin_plan
15252           where
15253             prg.STRUCT_TYPE         = 'PRG'                    and
15254             prg.SUP_LEVEL           = l_level                  and
15255             prg.SUB_LEVEL           = l_level                  and
15256             pjp1.WORKER_ID          = p_worker_id              and
15257             pjp1.PROJECT_ID         = prg.SUP_PROJECT_ID       and
15258             pjp1.PROJECT_ELEMENT_ID = prg.SUP_EMT_ID           and
15259             pjp1.PRG_LEVEL          = 0                        and
15260             pjp1.RBS_AGGR_LEVEL     in ('T', 'L')              and
15261             pjp1.WBS_ROLLUP_FLAG    = 'N'                      and
15262             pjp1.PRG_ROLLUP_FLAG    = 'N'                      and
15263             wbs_hdr.PROJECT_ID      = pjp1.PROJECT_ID          and
15264             wbs_hdr.PLAN_VERSION_ID = pjp1.PLAN_VERSION_ID     and
15265             wbs_hdr.PLAN_TYPE_CODE  = pjp1.PLAN_TYPE_CODE      and
15266             decode(wbs_hdr.WP_FLAG,
15267                    'N', decode(pjp1.PLAN_VERSION_ID,
15268                                -1, 'Y',
15269                                -2, 'Y',
15270                                -3, 'Y', -- won't exist
15271                                -4, 'Y', -- won't exist
15272                                    decode(wbs_hdr.CB_FLAG || '_' ||
15273                                           wbs_hdr.CO_FLAG,
15274                                           'Y_Y', 'Y',
15275                                           'N_Y', 'Y',
15276                                           'Y_N', 'Y',
15277                                                  'N')),
15278                         'Y')        =  'Y'                     and
15279             wbs_hdr.WBS_VERSION_ID  = prg.SUP_ID               and
15280             wbs_hdr.CB_FLAG         = fin_plan.CB_FLAG     (+) and
15281             wbs_hdr.CO_FLAG         = fin_plan.CO_FLAG     (+)
15282           union all
15283           select /*+ ordered
15284                      index(fpr PJI_FP_XBS_ACCUM_F_N1) */
15285                  -- get delta task level amounts from Reporting Lines
15286             to_char(null)                             LINE_TYPE,
15287             wbs_hdr.WBS_VERSION_ID,
15288             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
15289             decode(log.EVENT_TYPE,
15290                    'WBS_CHANGE', 'Y',
15291                    'WBS_PUBLISH', 'N')                PUSHUP_FLAG,
15292             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
15293                    'N_PRG', decode(top_slice.INVERT_ID,
15294                                    'PRJ', 'Y',
15295                                    decode(wbs.SUB_LEVEL,
15296                                           1, 'Y', 'N')),
15297                    decode(wbs_hdr.WP_FLAG
15298                             || '_' || fin_plan.INVERT_ID
15299                             || '_' || fin_plan.CB
15300                             || '_' || fin_plan.CO
15301                             || '_' || to_char(fin_plan.PLAN_VERSION_ID),
15302                           'N_PRJ_Y_Y_-4', 'N',
15303                                           'Y'))       INSERT_FLAG,
15304             fpr.PROJECT_ID,
15305             fpr.PROJECT_ORG_ID,
15306             fpr.PROJECT_ORGANIZATION_ID,
15307             decode(top_slice.INVERT_ID,
15308                    'PRJ', prg.SUP_EMT_ID,
15309                           decode(wbs.SUB_LEVEL,
15310                                  1, prg.SUP_EMT_ID,
15311                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
15312             fpr.TIME_ID,
15313             fpr.PERIOD_TYPE_ID,
15314             fpr.CALENDAR_TYPE,
15315             fpr.RBS_AGGR_LEVEL,
15316             'Y'                                       WBS_ROLLUP_FLAG,
15317             fpr.PRG_ROLLUP_FLAG,
15318             fpr.CURR_RECORD_TYPE_ID,
15319             fpr.CURRENCY_CODE,
15320             fpr.RBS_ELEMENT_ID,
15321             fpr.RBS_VERSION_ID,
15322             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
15323                    'N_PRG', fin_plan.PLAN_VERSION_ID,
15324                             fpr.PLAN_VERSION_ID)      PLAN_VERSION_ID,
15325             fpr.PLAN_TYPE_ID,
15326             fpr.PLAN_TYPE_CODE,
15327             wbs.SIGN * fpr.RAW_COST                   RAW_COST,
15328             wbs.SIGN * fpr.BRDN_COST                  BRDN_COST,
15329             wbs.SIGN * fpr.REVENUE                    REVENUE,
15330             wbs.SIGN * fpr.BILL_RAW_COST              BILL_RAW_COST,
15331             wbs.SIGN * fpr.BILL_BRDN_COST             BILL_BRDN_COST,
15332             wbs.SIGN * fpr.BILL_LABOR_RAW_COST        BILL_LABOR_RAW_COST,
15333             wbs.SIGN * fpr.BILL_LABOR_BRDN_COST       BILL_LABOR_BRDN_COST,
15334             wbs.SIGN * fpr.BILL_LABOR_HRS             BILL_LABOR_HRS,
15335             wbs.SIGN * fpr.EQUIPMENT_RAW_COST         EQUIPMENT_RAW_COST,
15336             wbs.SIGN * fpr.EQUIPMENT_BRDN_COST        EQUIPMENT_BRDN_COST,
15337             wbs.SIGN * fpr.CAPITALIZABLE_RAW_COST     CAPITALIZABLE_RAW_COST,
15338             wbs.SIGN * fpr.CAPITALIZABLE_BRDN_COST    CAPITALIZABLE_BRDN_COST,
15339             wbs.SIGN * fpr.LABOR_RAW_COST             LABOR_RAW_COST,
15340             wbs.SIGN * fpr.LABOR_BRDN_COST            LABOR_BRDN_COST,
15341             wbs.SIGN * fpr.LABOR_HRS                  LABOR_HRS,
15342             wbs.SIGN * fpr.LABOR_REVENUE              LABOR_REVENUE,
15343             wbs.SIGN * fpr.EQUIPMENT_HOURS            EQUIPMENT_HOURS,
15344             wbs.SIGN * fpr.BILLABLE_EQUIPMENT_HOURS   BILLABLE_EQUIPMENT_HOURS,
15345             wbs.SIGN * fpr.SUP_INV_COMMITTED_COST     SUP_INV_COMMITTED_COST,
15346             wbs.SIGN * fpr.PO_COMMITTED_COST          PO_COMMITTED_COST,
15347             wbs.SIGN * fpr.PR_COMMITTED_COST          PR_COMMITTED_COST,
15348             wbs.SIGN * fpr.OTH_COMMITTED_COST         OTH_COMMITTED_COST,
15349             wbs.SIGN * fpr.ACT_LABOR_HRS              ACT_LABOR_HRS,
15350             wbs.SIGN * fpr.ACT_EQUIP_HRS              ACT_EQUIP_HRS,
15351             wbs.SIGN * fpr.ACT_LABOR_BRDN_COST        ACT_LABOR_BRDN_COST,
15352             wbs.SIGN * fpr.ACT_EQUIP_BRDN_COST        ACT_EQUIP_BRDN_COST,
15353             wbs.SIGN * fpr.ACT_BRDN_COST              ACT_BRDN_COST,
15354             wbs.SIGN * fpr.ACT_RAW_COST               ACT_RAW_COST,
15355             wbs.SIGN * fpr.ACT_REVENUE                ACT_REVENUE,
15356             wbs.SIGN * fpr.ACT_LABOR_RAW_COST         ACT_LABOR_RAW_COST,
15357             wbs.SIGN * fpr.ACT_EQUIP_RAW_COST         ACT_EQUIP_RAW_COST,
15358             wbs.SIGN * fpr.ETC_LABOR_HRS              ETC_LABOR_HRS,
15359             wbs.SIGN * fpr.ETC_EQUIP_HRS              ETC_EQUIP_HRS,
15360             wbs.SIGN * fpr.ETC_LABOR_BRDN_COST        ETC_LABOR_BRDN_COST,
15361             wbs.SIGN * fpr.ETC_EQUIP_BRDN_COST        ETC_EQUIP_BRDN_COST,
15362             wbs.SIGN * fpr.ETC_BRDN_COST              ETC_BRDN_COST,
15363             wbs.SIGN * fpr.ETC_RAW_COST               ETC_RAW_COST,
15364             wbs.SIGN * fpr.ETC_LABOR_RAW_COST         ETC_LABOR_RAW_COST,
15365             wbs.SIGN * fpr.ETC_EQUIP_RAW_COST         ETC_EQUIP_RAW_COST,
15366             wbs.SIGN * fpr.CUSTOM1                    CUSTOM1,
15367             wbs.SIGN * fpr.CUSTOM2                    CUSTOM2,
15368             wbs.SIGN * fpr.CUSTOM3                    CUSTOM3,
15369             wbs.SIGN * fpr.CUSTOM4                    CUSTOM4,
15370             wbs.SIGN * fpr.CUSTOM5                    CUSTOM5,
15371             wbs.SIGN * fpr.CUSTOM6                    CUSTOM6,
15372             wbs.SIGN * fpr.CUSTOM7                    CUSTOM7,
15373             wbs.SIGN * fpr.CUSTOM8                    CUSTOM8,
15374             wbs.SIGN * fpr.CUSTOM9                    CUSTOM9,
15375             wbs.SIGN * fpr.CUSTOM10                   CUSTOM10,
15376             wbs.SIGN * fpr.CUSTOM11                   CUSTOM11,
15377             wbs.SIGN * fpr.CUSTOM12                   CUSTOM12,
15378             wbs.SIGN * fpr.CUSTOM13                   CUSTOM13,
15379             wbs.SIGN * fpr.CUSTOM14                   CUSTOM14,
15380             wbs.SIGN * fpr.CUSTOM15                   CUSTOM15
15381           from
15382             PJI_PA_PROJ_EVENTS_LOG log,
15383             PJI_PJP_WBS_HEADER     wbs_hdr,
15384             PJI_XBS_DENORM_DELTA   wbs,
15385             PJI_XBS_DENORM         prg,
15386             PJI_FP_XBS_ACCUM_F     fpr,
15387             (
15388               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
15389               from DUAL union all
15390               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
15391               from DUAL union all
15392               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
15393               from DUAL union all
15394               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
15395               from DUAL union all
15396               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
15397               from DUAL union all
15398               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
15399               from DUAL union all
15400               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
15401               from DUAL union all
15402               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
15403               from DUAL
15404             ) fin_plan,
15405             (
15406               select 1     WBS_SUP_LEVEL,
15407                      1     WBS_SUB_LEVEL,
15408                      'PRJ' INVERT_ID
15409               from   DUAL
15410               union all
15411               select 1     WBS_SUP_LEVEL,
15412                      1     WBS_SUB_LEVEL,
15413                      'WBS' INVERT_ID
15414               from   DUAL
15415             ) top_slice
15416           where
15417             prg.STRUCT_TYPE         =  'PRG'                       and
15418             prg.SUP_LEVEL           =  l_level                     and
15419             prg.SUB_LEVEL           =  l_level                     and
15420             wbs.WORKER_ID           =  p_worker_id                 and
15421             wbs.STRUCT_TYPE         =  'WBS'                       and
15422             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
15423             log.WORKER_ID           =  p_worker_id                 and
15424             log.EVENT_ID            =  wbs.EVENT_ID                and
15425             log.EVENT_TYPE          in ('WBS_CHANGE',
15426                                         'WBS_PUBLISH')             and
15427             wbs_hdr.PROJECT_ID      =  log.ATTRIBUTE1              and
15428             wbs_hdr.PLAN_VERSION_ID =  log.ATTRIBUTE3              and
15429             wbs_hdr.WBS_VERSION_ID  =  wbs.STRUCT_VERSION_ID       and
15430             wbs_hdr.PROJECT_ID      =  prg.SUP_PROJECT_ID          and
15431             wbs_hdr.WBS_VERSION_ID  =  prg.SUP_ID                  and
15432             fpr.RBS_AGGR_LEVEL      =  'T'                         and
15433             fpr.WBS_ROLLUP_FLAG     =  'N'                         and
15434             fpr.PRG_ROLLUP_FLAG     in ('Y', 'N')                  and
15435             fpr.PROJECT_ID          =  wbs.SUP_PROJECT_ID          and
15436             fpr.PROJECT_ELEMENT_ID  =  wbs.SUB_EMT_ID              and
15437             fpr.PROJECT_ID          =  wbs_hdr.PROJECT_ID          and
15438             fpr.PLAN_VERSION_ID     =  wbs_hdr.PLAN_VERSION_ID     and
15439             fpr.PLAN_TYPE_CODE      =  wbs_hdr.PLAN_TYPE_CODE      and
15440             decode(fpr.PLAN_VERSION_ID,
15441                    -3, fpr.PLAN_TYPE_ID,
15442                    -4, fpr.PLAN_TYPE_ID,
15443                        -1)          =  decode(fpr.PLAN_VERSION_ID,
15444                                               -3, wbs_hdr.PLAN_TYPE_ID,
15445                                               -4, wbs_hdr.PLAN_TYPE_ID,
15446                                                   -1)              and
15447             wbs_hdr.CB_FLAG         =  fin_plan.CB             (+) and
15448             wbs_hdr.CO_FLAG         =  fin_plan.CO             (+) and
15449             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
15450             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+) and
15451             (wbs.SUP_LEVEL <> wbs.SUB_LEVEL or
15452              (wbs.SUP_LEVEL = 1 and
15453               wbs.SUB_LEVEL = 1))
15454           ) pjp,
15455           (
15456           select /*+ ordered */
15457             prg.SUP_PROJECT_ID,
15458             map.PROJECT_ORG_ID               SUP_PROJECT_ORG_ID,
15459             map.PROJECT_ORGANIZATION_ID      SUP_PROJECT_ORGANIZATION_ID,
15460             prg.SUP_ID,
15461             prg.SUP_EMT_ID,
15462             prg.SUP_LEVEL,
15463             prg.SUB_ID,
15464             prg.SUB_EMT_ID,
15465             prg.SUB_ROLLUP_ID,
15466             invert.INVERT_VALUE              RELATIONSHIP_TYPE,
15467             decode(prg.RELATIONSHIP_TYPE,
15468                    'LW', 'Y',
15469                    'LF', 'N')                WP_FLAG,
15470             'Y'                              PUSHUP_FLAG
15471           from
15472             PJI_PJP_PROJ_BATCH_MAP map,
15473             PJI_XBS_DENORM prg,
15474             (
15475               select 'LF' INVERT_ID, 'LF' INVERT_VALUE from dual union all
15476               select 'LW' INVERT_ID, 'LW' INVERT_VALUE from dual union all
15477               select 'A'  INVERT_ID, 'LF' INVERT_VALUE from dual union all
15478               select 'A'  INVERT_ID, 'LW' INVERT_VALUE from dual
15479             ) invert,
15480             PJI_XBS_DENORM_DELTA prg_delta
15481           where
15482             prg.STRUCT_TYPE               = 'PRG'                           and
15483             prg.SUB_ROLLUP_ID             is not null                       and
15484             prg.SUB_LEVEL                 = l_level                         and
15485             map.WORKER_ID                 = p_worker_id                     and
15486             map.PROJECT_ID                = prg.SUP_PROJECT_ID              and
15487             decode(prg.SUB_LEVEL,
15488                    prg.SUP_LEVEL, 'A',
15489                    prg.RELATIONSHIP_TYPE) = invert.INVERT_ID                and
15490             p_worker_id                   = prg_delta.WORKER_ID         (+) and
15491             prg.STRUCT_TYPE               = prg_delta.STRUCT_TYPE       (+) and
15492             prg.SUP_PROJECT_ID            = prg_delta.SUP_PROJECT_ID    (+) and
15493             prg.SUP_LEVEL                 = prg_delta.SUP_LEVEL         (+) and
15494             prg.SUP_ID                    = prg_delta.SUP_ID            (+) and
15495             prg.SUB_LEVEL                 = prg_delta.SUB_LEVEL         (+) and
15496             prg.SUB_ID                    = prg_delta.SUB_ID            (+) and
15497             prg.RELATIONSHIP_TYPE         = prg_delta.RELATIONSHIP_TYPE (+) and
15498             -1                            = prg_delta.SIGN              (+) and
15499             prg_delta.SUP_PROJECT_ID      is null
15500           )                          prg,
15501           PJI_PJP_WBS_HEADER         wbs_hdr,
15502           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
15503           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
15504           PA_PROJ_WORKPLAN_ATTR      sup_wpa
15505         where
15506           pjp.PROJECT_ID         = sub_ver.PROJECT_ID                (+) and
15507           pjp.WBS_VERSION_ID     = sub_ver.ELEMENT_VERSION_ID        (+) and
15508           'STRUCTURE_PUBLISHED'  = sub_ver.STATUS_CODE               (+) and
15509           pjp.WBS_VERSION_ID     = prg.SUB_ID                        (+) and
15510           pjp.RELATIONSHIP_TYPE  = prg.RELATIONSHIP_TYPE             (+) and
15511           pjp.PUSHUP_FLAG        = prg.PUSHUP_FLAG                   (+) and
15512           prg.SUP_PROJECT_ID     = wbs_hdr.PROJECT_ID                (+) and
15513           prg.SUP_ID             = wbs_hdr.WBS_VERSION_ID            (+) and
15514           prg.WP_FLAG            = wbs_hdr.WP_FLAG                   (+) and
15515           'Y'                    = wbs_hdr.WP_FLAG                   (+) and
15516           wbs_hdr.PROJECT_ID     = sup_ver.PROJECT_ID                (+) and
15517           wbs_hdr.WBS_VERSION_ID = sup_ver.ELEMENT_VERSION_ID        (+) and
15518           'STRUCTURE_PUBLISHED'  = sup_ver.STATUS_CODE               (+) and
15519           'Y'                    = sup_ver.LATEST_EFF_PUBLISHED_FLAG (+) and
15520           prg.SUP_EMT_ID         = sup_wpa.PROJ_ELEMENT_ID           (+)
15521         group by
15522           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
15523                  pjp.INSERT_FLAG, 'Y'),
15524           pjp.RELATIONSHIP_TYPE,
15525           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
15526                  null, sub_ver.STATUS_CODE),
15527           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
15528                  null, sup_ver.STATUS_CODE),
15529           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
15530                  null, sup_wpa.WP_ENABLE_VERSION_FLAG),
15531           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
15532                  null, decode(pjp.PLAN_VERSION_ID,
15533                               -1, prg.SUP_ID,
15534                               -3, prg.SUP_ID,
15535                               -4, prg.SUP_ID,
15536                                   null)),
15537           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
15538                  null, decode(pjp.PLAN_VERSION_ID,
15539                               -1, prg.SUP_EMT_ID,
15540                               -3, prg.SUP_EMT_ID,
15541                               -4, prg.SUP_EMT_ID,
15542                                   null)),
15543           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
15544                  null, decode(pjp.PLAN_VERSION_ID,
15545                               -1, prg.WP_FLAG,
15546                               -3, prg.WP_FLAG,
15547                               -4, prg.WP_FLAG,
15548                                   null)),
15549           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
15550                  l_level, prg.SUP_LEVEL),
15551           pjp.LINE_TYPE,
15552           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
15553                  pjp.PROJECT_ID, prg.SUP_PROJECT_ID),
15554           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
15555                  pjp.PROJECT_ORG_ID,
15556                  prg.SUP_PROJECT_ORG_ID),
15557           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
15558                  pjp.PROJECT_ORGANIZATION_ID,
15559                  prg.SUP_PROJECT_ORGANIZATION_ID),
15560           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
15561                  pjp.PROJECT_ELEMENT_ID,
15562                  prg.SUB_ROLLUP_ID),
15563           pjp.TIME_ID,
15564           pjp.PERIOD_TYPE_ID,
15565           pjp.CALENDAR_TYPE,
15566           pjp.RBS_AGGR_LEVEL,
15567           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
15568                  pjp.WBS_ROLLUP_FLAG, 'N'),
15569           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
15570                  pjp.PRG_ROLLUP_FLAG, 'Y'),
15571           pjp.CURR_RECORD_TYPE_ID,
15572           pjp.CURRENCY_CODE,
15573           pjp.RBS_ELEMENT_ID,
15574           pjp.RBS_VERSION_ID,
15575           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
15576                  pjp.PLAN_VERSION_ID,
15577                  decode(pjp.PLAN_VERSION_ID,
15578                         -1, pjp.PLAN_VERSION_ID,
15579                         -2, pjp.PLAN_VERSION_ID,
15580                         -3, pjp.PLAN_VERSION_ID,
15581                         -4, pjp.PLAN_VERSION_ID,
15582                             wbs_hdr.PLAN_VERSION_ID)),
15583           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
15584                  pjp.PLAN_TYPE_ID,
15585                  decode(pjp.PLAN_VERSION_ID,
15586                         -1, pjp.PLAN_TYPE_ID,
15587                         -2, pjp.PLAN_TYPE_ID,
15588                         -3, pjp.PLAN_TYPE_ID,
15589                         -4, pjp.PLAN_TYPE_ID,
15590                             wbs_hdr.PLAN_TYPE_ID)),
15591           pjp.PLAN_TYPE_CODE
15592           )                          pjp1_i,
15593           PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
15594           PA_PROJ_WORKPLAN_ATTR      sup_wpa
15595         where
15596           pjp1_i.INSERT_FLAG  = 'Y'                                and
15597           pjp1_i.PROJECT_ID   = sup_fin_ver.PROJECT_ID         (+) and
15598           pjp1_i.SUP_ID       = sup_fin_ver.ELEMENT_VERSION_ID (+) and
15599           'STRUCTURE_WORKING' = sup_fin_ver.STATUS_CODE        (+) and
15600           pjp1_i.SUP_EMT_ID   = sup_wpa.PROJ_ELEMENT_ID        (+) and
15601           'N'                 = sup_wpa.WP_ENABLE_VERSION_FLAG (+) and
15602           (pjp1_i.SUP_ID is null or
15603            (pjp1_i.SUP_ID is not null and
15604             (sup_fin_ver.PROJECT_ID is not null or
15605              sup_wpa.PROJ_ELEMENT_ID is not null)));
15606     elsif (p_worker_id =7) then
15607       -- Query for Partition 7
15608 
15609         insert /*+ parallel(PJI_FP_AGGR_PJP1) */
15610                    into PJI_FP_AGGR_PJP1 partition(P7)
15611 	(
15612           WORKER_ID,
15613           RECORD_TYPE,
15614           PRG_LEVEL,
15615           LINE_TYPE,
15616           PROJECT_ID,
15617           PROJECT_ORG_ID,
15618           PROJECT_ORGANIZATION_ID,
15619           PROJECT_ELEMENT_ID,
15620           TIME_ID,
15621           PERIOD_TYPE_ID,
15622           CALENDAR_TYPE,
15623           RBS_AGGR_LEVEL,
15624           WBS_ROLLUP_FLAG,
15625           PRG_ROLLUP_FLAG,
15626           CURR_RECORD_TYPE_ID,
15627           CURRENCY_CODE,
15628           RBS_ELEMENT_ID,
15629           RBS_VERSION_ID,
15630           PLAN_VERSION_ID,
15631           PLAN_TYPE_ID,
15632           PLAN_TYPE_CODE,
15633           RAW_COST,
15634           BRDN_COST,
15635           REVENUE,
15636           BILL_RAW_COST,
15637           BILL_BRDN_COST,
15638           BILL_LABOR_RAW_COST,
15639           BILL_LABOR_BRDN_COST,
15640           BILL_LABOR_HRS,
15641           EQUIPMENT_RAW_COST,
15642           EQUIPMENT_BRDN_COST,
15643           CAPITALIZABLE_RAW_COST,
15644           CAPITALIZABLE_BRDN_COST,
15645           LABOR_RAW_COST,
15646           LABOR_BRDN_COST,
15647           LABOR_HRS,
15648           LABOR_REVENUE,
15649           EQUIPMENT_HOURS,
15650           BILLABLE_EQUIPMENT_HOURS,
15651           SUP_INV_COMMITTED_COST,
15652           PO_COMMITTED_COST,
15653           PR_COMMITTED_COST,
15654           OTH_COMMITTED_COST,
15655           ACT_LABOR_HRS,
15656           ACT_EQUIP_HRS,
15657           ACT_LABOR_BRDN_COST,
15658           ACT_EQUIP_BRDN_COST,
15659           ACT_BRDN_COST,
15660           ACT_RAW_COST,
15661           ACT_REVENUE,
15662           ACT_LABOR_RAW_COST,
15663           ACT_EQUIP_RAW_COST,
15664           ETC_LABOR_HRS,
15665           ETC_EQUIP_HRS,
15666           ETC_LABOR_BRDN_COST,
15667           ETC_EQUIP_BRDN_COST,
15668           ETC_BRDN_COST,
15669           ETC_RAW_COST,
15670           ETC_LABOR_RAW_COST,
15671           ETC_EQUIP_RAW_COST,
15672           CUSTOM1,
15673           CUSTOM2,
15674           CUSTOM3,
15675           CUSTOM4,
15676           CUSTOM5,
15677           CUSTOM6,
15678           CUSTOM7,
15679           CUSTOM8,
15680           CUSTOM9,
15681           CUSTOM10,
15682           CUSTOM11,
15683           CUSTOM12,
15684           CUSTOM13,
15685           CUSTOM14,
15686           CUSTOM15
15687         )
15688         select
15689           pjp1_i.WORKER_ID,
15690           pjp1_i.RECORD_TYPE,
15691           pjp1_i.PRG_LEVEL,
15692           pjp1_i.LINE_TYPE,
15693           pjp1_i.PROJECT_ID,
15694           pjp1_i.PROJECT_ORG_ID,
15695           pjp1_i.PROJECT_ORGANIZATION_ID,
15696           pjp1_i.PROJECT_ELEMENT_ID,
15697           pjp1_i.TIME_ID,
15698           pjp1_i.PERIOD_TYPE_ID,
15699           pjp1_i.CALENDAR_TYPE,
15700           pjp1_i.RBS_AGGR_LEVEL,
15701           pjp1_i.WBS_ROLLUP_FLAG,
15702           pjp1_i.PRG_ROLLUP_FLAG,
15703           pjp1_i.CURR_RECORD_TYPE_ID,
15704           pjp1_i.CURRENCY_CODE,
15705           pjp1_i.RBS_ELEMENT_ID,
15706           pjp1_i.RBS_VERSION_ID,
15707           pjp1_i.PLAN_VERSION_ID,
15708           pjp1_i.PLAN_TYPE_ID,
15709           pjp1_i.PLAN_TYPE_CODE,
15710           decode(pjp1_i.RELATIONSHIP_TYPE
15711                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
15712                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
15713                    || '_' || pjp1_i.SUB_STATUS_CODE
15714                    || '_' || pjp1_i.SUP_STATUS_CODE,
15715                  'LW_N_Y__', to_number(null),
15716                  decode(pjp1_i.RELATIONSHIP_TYPE
15717                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
15718                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
15719                           || '_' || pjp1_i.SUP_VER_ENABLED
15720                           || '_' || l_fpm_upgrade
15721                           || '_' || l_partial_mode,
15722                         'LW_N_Y_Y_C_', to_number(null),
15723                  pjp1_i.RAW_COST))                    RAW_COST,
15724           decode(pjp1_i.RELATIONSHIP_TYPE
15725                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
15726                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
15727                    || '_' || pjp1_i.SUB_STATUS_CODE
15728                    || '_' || pjp1_i.SUP_STATUS_CODE,
15729                  'LW_N_Y__', to_number(null),
15730                  decode(pjp1_i.RELATIONSHIP_TYPE
15731                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
15732                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
15733                           || '_' || pjp1_i.SUP_VER_ENABLED
15734                           || '_' || l_fpm_upgrade
15735                           || '_' || l_partial_mode,
15736                         'LW_N_Y_Y_C_', to_number(null),
15737                  pjp1_i.BRDN_COST))                   BRDN_COST,
15738           decode(pjp1_i.RELATIONSHIP_TYPE
15739                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
15740                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
15741                    || '_' || pjp1_i.SUB_STATUS_CODE
15742                    || '_' || pjp1_i.SUP_STATUS_CODE,
15743                  'LW_N_Y__', to_number(null),
15744                  decode(pjp1_i.RELATIONSHIP_TYPE
15745                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
15746                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
15747                           || '_' || pjp1_i.SUP_VER_ENABLED
15748                           || '_' || l_fpm_upgrade
15749                           || '_' || l_partial_mode,
15750                         'LW_N_Y_Y_C_', to_number(null),
15751                  pjp1_i.REVENUE))                     REVENUE,
15752           decode(pjp1_i.RELATIONSHIP_TYPE
15753                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
15754                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
15755                    || '_' || pjp1_i.SUB_STATUS_CODE
15756                    || '_' || pjp1_i.SUP_STATUS_CODE,
15757                  'LW_N_Y__', to_number(null),
15758                  decode(pjp1_i.RELATIONSHIP_TYPE
15759                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
15760                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
15761                           || '_' || pjp1_i.SUP_VER_ENABLED
15762                           || '_' || l_fpm_upgrade
15763                           || '_' || l_partial_mode,
15764                         'LW_N_Y_Y_C_', to_number(null),
15765                  pjp1_i.BILL_RAW_COST))               BILL_RAW_COST,
15766           decode(pjp1_i.RELATIONSHIP_TYPE
15767                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
15768                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
15769                    || '_' || pjp1_i.SUB_STATUS_CODE
15770                    || '_' || pjp1_i.SUP_STATUS_CODE,
15771                  'LW_N_Y__', to_number(null),
15772                  decode(pjp1_i.RELATIONSHIP_TYPE
15773                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
15774                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
15775                           || '_' || pjp1_i.SUP_VER_ENABLED
15776                           || '_' || l_fpm_upgrade
15777                           || '_' || l_partial_mode,
15778                         'LW_N_Y_Y_C_', to_number(null),
15779                  pjp1_i.BILL_BRDN_COST))              BILL_BRDN_COST,
15780           decode(pjp1_i.RELATIONSHIP_TYPE
15781                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
15782                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
15783                    || '_' || pjp1_i.SUB_STATUS_CODE
15784                    || '_' || pjp1_i.SUP_STATUS_CODE,
15785                  'LW_N_Y__', to_number(null),
15786                  decode(pjp1_i.RELATIONSHIP_TYPE
15787                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
15788                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
15789                           || '_' || pjp1_i.SUP_VER_ENABLED
15790                           || '_' || l_fpm_upgrade
15791                           || '_' || l_partial_mode,
15792                         'LW_N_Y_Y_C_', to_number(null),
15793                  pjp1_i.BILL_LABOR_RAW_COST))         BILL_LABOR_RAW_COST,
15794           decode(pjp1_i.RELATIONSHIP_TYPE
15795                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
15796                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
15797                    || '_' || pjp1_i.SUB_STATUS_CODE
15798                    || '_' || pjp1_i.SUP_STATUS_CODE,
15799                  'LW_N_Y__', to_number(null),
15800                  decode(pjp1_i.RELATIONSHIP_TYPE
15801                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
15802                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
15803                           || '_' || pjp1_i.SUP_VER_ENABLED
15804                           || '_' || l_fpm_upgrade
15805                           || '_' || l_partial_mode,
15806                         'LW_N_Y_Y_C_', to_number(null),
15807                  pjp1_i.BILL_LABOR_BRDN_COST))        BILL_LABOR_BRDN_COST,
15808           decode(pjp1_i.RELATIONSHIP_TYPE
15809                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
15810                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
15811                    || '_' || pjp1_i.SUB_STATUS_CODE
15812                    || '_' || pjp1_i.SUP_STATUS_CODE,
15813                  'LW_N_Y__', to_number(null),
15814                  decode(pjp1_i.RELATIONSHIP_TYPE
15815                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
15816                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
15817                           || '_' || pjp1_i.SUP_VER_ENABLED
15818                           || '_' || l_fpm_upgrade
15819                           || '_' || l_partial_mode,
15820                         'LW_N_Y_Y_C_', to_number(null),
15821                  pjp1_i.BILL_LABOR_HRS))              BILL_LABOR_HRS,
15822           decode(pjp1_i.RELATIONSHIP_TYPE
15823                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
15824                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
15825                    || '_' || pjp1_i.SUB_STATUS_CODE
15826                    || '_' || pjp1_i.SUP_STATUS_CODE,
15827                  'LW_N_Y__', to_number(null),
15828                  decode(pjp1_i.RELATIONSHIP_TYPE
15829                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
15830                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
15831                           || '_' || pjp1_i.SUP_VER_ENABLED
15832                           || '_' || l_fpm_upgrade
15833                           || '_' || l_partial_mode,
15834                         'LW_N_Y_Y_C_', to_number(null),
15835                  pjp1_i.EQUIPMENT_RAW_COST))          EQUIPMENT_RAW_COST,
15836           decode(pjp1_i.RELATIONSHIP_TYPE
15837                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
15838                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
15839                    || '_' || pjp1_i.SUB_STATUS_CODE
15840                    || '_' || pjp1_i.SUP_STATUS_CODE,
15841                  'LW_N_Y__', to_number(null),
15842                  decode(pjp1_i.RELATIONSHIP_TYPE
15843                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
15844                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
15845                           || '_' || pjp1_i.SUP_VER_ENABLED
15846                           || '_' || l_fpm_upgrade
15847                           || '_' || l_partial_mode,
15848                         'LW_N_Y_Y_C_', to_number(null),
15849                  pjp1_i.EQUIPMENT_BRDN_COST))         EQUIPMENT_BRDN_COST,
15850           decode(pjp1_i.RELATIONSHIP_TYPE
15851                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
15852                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
15853                    || '_' || pjp1_i.SUB_STATUS_CODE
15854                    || '_' || pjp1_i.SUP_STATUS_CODE,
15855                  'LW_N_Y__', to_number(null),
15856                  decode(pjp1_i.RELATIONSHIP_TYPE
15857                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
15858                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
15859                           || '_' || pjp1_i.SUP_VER_ENABLED
15860                           || '_' || l_fpm_upgrade
15861                           || '_' || l_partial_mode,
15862                         'LW_N_Y_Y_C_', to_number(null),
15863                  pjp1_i.CAPITALIZABLE_RAW_COST))      CAPITALIZABLE_RAW_COST,
15864           decode(pjp1_i.RELATIONSHIP_TYPE
15865                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
15866                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
15867                    || '_' || pjp1_i.SUB_STATUS_CODE
15868                    || '_' || pjp1_i.SUP_STATUS_CODE,
15869                  'LW_N_Y__', to_number(null),
15870                  decode(pjp1_i.RELATIONSHIP_TYPE
15871                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
15872                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
15873                           || '_' || pjp1_i.SUP_VER_ENABLED
15874                           || '_' || l_fpm_upgrade
15875                           || '_' || l_partial_mode,
15876                         'LW_N_Y_Y_C_', to_number(null),
15877                  pjp1_i.CAPITALIZABLE_BRDN_COST))     CAPITALIZABLE_BRDN_COST,
15878           decode(pjp1_i.RELATIONSHIP_TYPE
15879                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
15880                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
15881                    || '_' || pjp1_i.SUB_STATUS_CODE
15882                    || '_' || pjp1_i.SUP_STATUS_CODE,
15883                  'LW_N_Y__', to_number(null),
15884                  decode(pjp1_i.RELATIONSHIP_TYPE
15885                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
15886                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
15887                           || '_' || pjp1_i.SUP_VER_ENABLED
15888                           || '_' || l_fpm_upgrade
15889                           || '_' || l_partial_mode,
15890                         'LW_N_Y_Y_C_', to_number(null),
15891                  pjp1_i.LABOR_RAW_COST))              LABOR_RAW_COST,
15892           decode(pjp1_i.RELATIONSHIP_TYPE
15893                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
15894                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
15895                    || '_' || pjp1_i.SUB_STATUS_CODE
15896                    || '_' || pjp1_i.SUP_STATUS_CODE,
15897                  'LW_N_Y__', to_number(null),
15898                  decode(pjp1_i.RELATIONSHIP_TYPE
15899                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
15900                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
15901                           || '_' || pjp1_i.SUP_VER_ENABLED
15902                           || '_' || l_fpm_upgrade
15903                           || '_' || l_partial_mode,
15904                         'LW_N_Y_Y_C_', to_number(null),
15905                  pjp1_i.LABOR_BRDN_COST))             LABOR_BRDN_COST,
15906           decode(pjp1_i.RELATIONSHIP_TYPE
15907                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
15908                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
15909                    || '_' || pjp1_i.SUB_STATUS_CODE
15910                    || '_' || pjp1_i.SUP_STATUS_CODE,
15911                  'LW_N_Y__', to_number(null),
15912                  decode(pjp1_i.RELATIONSHIP_TYPE
15913                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
15914                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
15915                           || '_' || pjp1_i.SUP_VER_ENABLED
15916                           || '_' || l_fpm_upgrade
15917                           || '_' || l_partial_mode,
15918                         'LW_N_Y_Y_C_', to_number(null),
15919                  pjp1_i.LABOR_HRS))                   LABOR_HRS,
15920           decode(pjp1_i.RELATIONSHIP_TYPE
15921                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
15922                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
15923                    || '_' || pjp1_i.SUB_STATUS_CODE
15924                    || '_' || pjp1_i.SUP_STATUS_CODE,
15925                  'LW_N_Y__', to_number(null),
15926                  decode(pjp1_i.RELATIONSHIP_TYPE
15927                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
15928                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
15929                           || '_' || pjp1_i.SUP_VER_ENABLED
15930                           || '_' || l_fpm_upgrade
15931                           || '_' || l_partial_mode,
15932                         'LW_N_Y_Y_C_', to_number(null),
15933                  pjp1_i.LABOR_REVENUE))               LABOR_REVENUE,
15934           decode(pjp1_i.RELATIONSHIP_TYPE
15935                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
15936                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
15937                    || '_' || pjp1_i.SUB_STATUS_CODE
15938                    || '_' || pjp1_i.SUP_STATUS_CODE,
15939                  'LW_N_Y__', to_number(null),
15940                  decode(pjp1_i.RELATIONSHIP_TYPE
15941                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
15942                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
15943                           || '_' || pjp1_i.SUP_VER_ENABLED
15944                           || '_' || l_fpm_upgrade
15945                           || '_' || l_partial_mode,
15946                         'LW_N_Y_Y_C_', to_number(null),
15947                  pjp1_i.EQUIPMENT_HOURS))             EQUIPMENT_HOURS,
15948           decode(pjp1_i.RELATIONSHIP_TYPE
15949                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
15950                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
15951                    || '_' || pjp1_i.SUB_STATUS_CODE
15952                    || '_' || pjp1_i.SUP_STATUS_CODE,
15953                  'LW_N_Y__', to_number(null),
15954                  decode(pjp1_i.RELATIONSHIP_TYPE
15955                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
15956                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
15957                           || '_' || pjp1_i.SUP_VER_ENABLED
15958                           || '_' || l_fpm_upgrade
15959                           || '_' || l_partial_mode,
15960                         'LW_N_Y_Y_C_', to_number(null),
15961                  pjp1_i.BILLABLE_EQUIPMENT_HOURS))    BILLABLE_EQUIPMENT_HOURS,
15962           decode(pjp1_i.RELATIONSHIP_TYPE
15963                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
15964                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
15965                    || '_' || pjp1_i.SUB_STATUS_CODE
15966                    || '_' || pjp1_i.SUP_STATUS_CODE,
15967                  'LW_N_Y__', to_number(null),
15968                  decode(pjp1_i.RELATIONSHIP_TYPE
15969                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
15970                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
15971                           || '_' || pjp1_i.SUP_VER_ENABLED
15972                           || '_' || l_fpm_upgrade
15973                           || '_' || l_partial_mode,
15974                         'LW_N_Y_Y_C_', to_number(null),
15975                  pjp1_i.SUP_INV_COMMITTED_COST))      SUP_INV_COMMITTED_COST,
15976           decode(pjp1_i.RELATIONSHIP_TYPE
15977                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
15978                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
15979                    || '_' || pjp1_i.SUB_STATUS_CODE
15980                    || '_' || pjp1_i.SUP_STATUS_CODE,
15981                  'LW_N_Y__', to_number(null),
15982                  decode(pjp1_i.RELATIONSHIP_TYPE
15983                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
15984                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
15985                           || '_' || pjp1_i.SUP_VER_ENABLED
15986                           || '_' || l_fpm_upgrade
15987                           || '_' || l_partial_mode,
15988                         'LW_N_Y_Y_C_', to_number(null),
15989                  pjp1_i.PO_COMMITTED_COST))           PO_COMMITTED_COST,
15990           decode(pjp1_i.RELATIONSHIP_TYPE
15991                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
15992                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
15993                    || '_' || pjp1_i.SUB_STATUS_CODE
15994                    || '_' || pjp1_i.SUP_STATUS_CODE,
15995                  'LW_N_Y__', to_number(null),
15996                  decode(pjp1_i.RELATIONSHIP_TYPE
15997                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
15998                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
15999                           || '_' || pjp1_i.SUP_VER_ENABLED
16000                           || '_' || l_fpm_upgrade
16001                           || '_' || l_partial_mode,
16002                         'LW_N_Y_Y_C_', to_number(null),
16003                  pjp1_i.PR_COMMITTED_COST))           PR_COMMITTED_COST,
16004           decode(pjp1_i.RELATIONSHIP_TYPE
16005                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
16006                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
16007                    || '_' || pjp1_i.SUB_STATUS_CODE
16008                    || '_' || pjp1_i.SUP_STATUS_CODE,
16009                  'LW_N_Y__', to_number(null),
16010                  decode(pjp1_i.RELATIONSHIP_TYPE
16011                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
16012                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
16013                           || '_' || pjp1_i.SUP_VER_ENABLED
16014                           || '_' || l_fpm_upgrade
16015                           || '_' || l_partial_mode,
16016                         'LW_N_Y_Y_C_', to_number(null),
16017                  pjp1_i.OTH_COMMITTED_COST))          OTH_COMMITTED_COST,
16018           decode(pjp1_i.RELATIONSHIP_TYPE
16019                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
16020                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
16021                    || '_' || pjp1_i.SUP_STATUS_CODE
16022                    || '_' || l_partial_mode,
16023                  'LW_N_Y__', to_number(null),
16024                           pjp1_i.ACT_LABOR_HRS)       ACT_LABOR_HRS,
16025           decode(pjp1_i.RELATIONSHIP_TYPE
16026                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
16027                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
16028                    || '_' || pjp1_i.SUP_STATUS_CODE
16029                    || '_' || l_partial_mode,
16030                  'LW_N_Y__', to_number(null),
16031                           pjp1_i.ACT_EQUIP_HRS)       ACT_EQUIP_HRS,
16032           decode(pjp1_i.RELATIONSHIP_TYPE
16033                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
16034                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
16035                    || '_' || pjp1_i.SUP_STATUS_CODE
16036                    || '_' || l_partial_mode,
16037                  'LW_N_Y__', to_number(null),
16038                           pjp1_i.ACT_LABOR_BRDN_COST) ACT_LABOR_BRDN_COST,
16039           decode(pjp1_i.RELATIONSHIP_TYPE
16040                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
16041                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
16042                    || '_' || pjp1_i.SUP_STATUS_CODE
16043                    || '_' || l_partial_mode,
16044                  'LW_N_Y__', to_number(null),
16045                           pjp1_i.ACT_EQUIP_BRDN_COST) ACT_EQUIP_BRDN_COST,
16046           decode(pjp1_i.RELATIONSHIP_TYPE
16047                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
16048                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
16049                    || '_' || pjp1_i.SUP_STATUS_CODE
16050                    || '_' || l_partial_mode,
16051                  'LW_N_Y__', to_number(null),
16052                           pjp1_i.ACT_BRDN_COST)       ACT_BRDN_COST,
16053           decode(pjp1_i.RELATIONSHIP_TYPE
16054                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
16055                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
16056                    || '_' || pjp1_i.SUP_STATUS_CODE
16057                    || '_' || l_partial_mode,
16058                  'LW_N_Y__', to_number(null),
16059                           pjp1_i.ACT_RAW_COST)        ACT_RAW_COST,
16060           decode(pjp1_i.RELATIONSHIP_TYPE
16061                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
16062                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
16063                    || '_' || pjp1_i.SUP_STATUS_CODE
16064                    || '_' || l_partial_mode,
16065                  'LW_N_Y__', to_number(null),
16066                           pjp1_i.ACT_REVENUE)         ACT_REVENUE,
16067           decode(pjp1_i.RELATIONSHIP_TYPE
16068                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
16069                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
16070                    || '_' || pjp1_i.SUP_STATUS_CODE
16071                    || '_' || l_partial_mode,
16072                  'LW_N_Y__', to_number(null),
16073                           pjp1_i.ACT_LABOR_RAW_COST)  ACT_LABOR_RAW_COST,
16074           decode(pjp1_i.RELATIONSHIP_TYPE
16075                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
16076                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
16077                    || '_' || pjp1_i.SUP_STATUS_CODE
16078                    || '_' || l_partial_mode,
16079                  'LW_N_Y__', to_number(null),
16080                           pjp1_i.ACT_EQUIP_RAW_COST)  ACT_EQUIP_RAW_COST,
16081           decode(pjp1_i.RELATIONSHIP_TYPE
16082                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
16083                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
16084                    || '_' || pjp1_i.SUP_STATUS_CODE
16085                    || '_' || l_partial_mode,
16086                  'LW_N_Y__', to_number(null),
16087                           pjp1_i.ETC_LABOR_HRS)       ETC_LABOR_HRS,
16088           decode(pjp1_i.RELATIONSHIP_TYPE
16089                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
16090                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
16091                    || '_' || pjp1_i.SUP_STATUS_CODE
16092                    || '_' || l_partial_mode,
16093                  'LW_N_Y__', to_number(null),
16094                           pjp1_i.ETC_EQUIP_HRS)       ETC_EQUIP_HRS,
16095           decode(pjp1_i.RELATIONSHIP_TYPE
16096                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
16097                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
16098                    || '_' || pjp1_i.SUP_STATUS_CODE
16099                    || '_' || l_partial_mode,
16100                  'LW_N_Y__', to_number(null),
16101                           pjp1_i.ETC_LABOR_BRDN_COST) ETC_LABOR_BRDN_COST,
16102           decode(pjp1_i.RELATIONSHIP_TYPE
16103                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
16104                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
16105                    || '_' || pjp1_i.SUP_STATUS_CODE
16106                    || '_' || l_partial_mode,
16107                  'LW_N_Y__', to_number(null),
16108                           pjp1_i.ETC_EQUIP_BRDN_COST) ETC_EQUIP_BRDN_COST,
16109           decode(pjp1_i.RELATIONSHIP_TYPE
16110                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
16111                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
16112                    || '_' || pjp1_i.SUP_STATUS_CODE
16113                    || '_' || l_partial_mode,
16114                  'LW_N_Y__', to_number(null),
16115                           pjp1_i.ETC_BRDN_COST)       ETC_BRDN_COST,
16116           decode(pjp1_i.RELATIONSHIP_TYPE
16117                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
16118                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
16119                    || '_' || pjp1_i.SUP_STATUS_CODE
16120                    || '_' || l_partial_mode,
16121                  'LW_N_Y__', to_number(null),
16122                           pjp1_i.ETC_RAW_COST)        ETC_RAW_COST,
16123           decode(pjp1_i.RELATIONSHIP_TYPE
16124                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
16125                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
16126                    || '_' || pjp1_i.SUP_STATUS_CODE
16127                    || '_' || l_partial_mode,
16128                  'LW_N_Y__', to_number(null),
16129                           pjp1_i.ETC_LABOR_RAW_COST)  ETC_LABOR_RAW_COST,
16130           decode(pjp1_i.RELATIONSHIP_TYPE
16131                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
16132                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
16133                    || '_' || pjp1_i.SUP_STATUS_CODE
16134                    || '_' || l_partial_mode,
16135                  'LW_N_Y__', to_number(null),
16136                           pjp1_i.ETC_EQUIP_RAW_COST)  ETC_EQUIP_RAW_COST,
16137           pjp1_i.CUSTOM1,
16138           pjp1_i.CUSTOM2,
16139           pjp1_i.CUSTOM3,
16140           pjp1_i.CUSTOM4,
16141           pjp1_i.CUSTOM5,
16142           pjp1_i.CUSTOM6,
16143           pjp1_i.CUSTOM7,
16144           pjp1_i.CUSTOM8,
16145           pjp1_i.CUSTOM9,
16146           pjp1_i.CUSTOM10,
16147           pjp1_i.CUSTOM11,
16148           pjp1_i.CUSTOM12,
16149           pjp1_i.CUSTOM13,
16150           pjp1_i.CUSTOM14,
16151           pjp1_i.CUSTOM15
16152         from
16153           (
16154         select
16155           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16156                  pjp.INSERT_FLAG, 'Y')                INSERT_FLAG,
16157           pjp.RELATIONSHIP_TYPE,
16158           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16159                  null, sub_ver.STATUS_CODE)           SUB_STATUS_CODE,
16160           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16161                  null, sup_ver.STATUS_CODE)           SUP_STATUS_CODE,
16162           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16163                  null, sup_wpa.WP_ENABLE_VERSION_FLAG)SUP_VER_ENABLED,
16164           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16165                  null, decode(pjp.PLAN_VERSION_ID,
16166                               -1, prg.SUP_ID,
16167                               -3, prg.SUP_ID,
16168                               -4, prg.SUP_ID,
16169                                   null))              SUP_ID,
16170           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16171                  null, decode(pjp.PLAN_VERSION_ID,
16172                               -1, prg.SUP_EMT_ID,
16173                               -3, prg.SUP_EMT_ID,
16174                               -4, prg.SUP_EMT_ID,
16175                                   null))              SUP_EMT_ID,
16176           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16177                  null, decode(pjp.PLAN_VERSION_ID,
16178                               -1, prg.WP_FLAG,
16179                               -3, prg.WP_FLAG,
16180                               -4, prg.WP_FLAG,
16181                                   null))              SUP_WP_FLAG,
16182           p_worker_id                                 WORKER_ID,
16183           'W'                                         RECORD_TYPE,
16184           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16185                  l_level, prg.SUP_LEVEL)              PRG_LEVEL,
16186           pjp.LINE_TYPE,
16187           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16188                  pjp.PROJECT_ID, prg.SUP_PROJECT_ID)  PROJECT_ID,
16189           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16190                  pjp.PROJECT_ORG_ID,
16191                  prg.SUP_PROJECT_ORG_ID)              PROJECT_ORG_ID,
16192           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16193                  pjp.PROJECT_ORGANIZATION_ID,
16194                  prg.SUP_PROJECT_ORGANIZATION_ID)     PROJECT_ORGANIZATION_ID,
16195           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16196                  pjp.PROJECT_ELEMENT_ID,
16197                  prg.SUB_ROLLUP_ID)                   PROJECT_ELEMENT_ID,
16198           pjp.TIME_ID,
16199           pjp.PERIOD_TYPE_ID,
16200           pjp.CALENDAR_TYPE,
16201           pjp.RBS_AGGR_LEVEL,
16202           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16203                  pjp.WBS_ROLLUP_FLAG, 'N')            WBS_ROLLUP_FLAG,
16204           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16205                  pjp.PRG_ROLLUP_FLAG, 'Y')            PRG_ROLLUP_FLAG,
16206           pjp.CURR_RECORD_TYPE_ID,
16207           pjp.CURRENCY_CODE,
16208           pjp.RBS_ELEMENT_ID,
16209           pjp.RBS_VERSION_ID,
16210           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16211                  pjp.PLAN_VERSION_ID,
16212                  decode(pjp.PLAN_VERSION_ID,
16213                         -1, pjp.PLAN_VERSION_ID,
16214                         -2, pjp.PLAN_VERSION_ID,
16215                         -3, pjp.PLAN_VERSION_ID,
16216                         -4, pjp.PLAN_VERSION_ID,
16217                             wbs_hdr.PLAN_VERSION_ID)) PLAN_VERSION_ID,
16218           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16219                  pjp.PLAN_TYPE_ID,
16220                  decode(pjp.PLAN_VERSION_ID,
16221                         -1, pjp.PLAN_TYPE_ID,
16222                         -2, pjp.PLAN_TYPE_ID,
16223                         -3, pjp.PLAN_TYPE_ID,
16224                         -4, pjp.PLAN_TYPE_ID,
16225                             wbs_hdr.PLAN_TYPE_ID))    PLAN_TYPE_ID,
16226           pjp.PLAN_TYPE_CODE,
16227           sum(pjp.RAW_COST)                           RAW_COST,
16228           sum(pjp.BRDN_COST)                          BRDN_COST,
16229           sum(pjp.REVENUE)                            REVENUE,
16230           sum(pjp.BILL_RAW_COST)                      BILL_RAW_COST,
16231           sum(pjp.BILL_BRDN_COST)                     BILL_BRDN_COST,
16232           sum(pjp.BILL_LABOR_RAW_COST)                BILL_LABOR_RAW_COST,
16233           sum(pjp.BILL_LABOR_BRDN_COST)               BILL_LABOR_BRDN_COST,
16234           sum(pjp.BILL_LABOR_HRS)                     BILL_LABOR_HRS,
16235           sum(pjp.EQUIPMENT_RAW_COST)                 EQUIPMENT_RAW_COST,
16236           sum(pjp.EQUIPMENT_BRDN_COST)                EQUIPMENT_BRDN_COST,
16237           sum(pjp.CAPITALIZABLE_RAW_COST)             CAPITALIZABLE_RAW_COST,
16238           sum(pjp.CAPITALIZABLE_BRDN_COST)            CAPITALIZABLE_BRDN_COST,
16239           sum(pjp.LABOR_RAW_COST)                     LABOR_RAW_COST,
16240           sum(pjp.LABOR_BRDN_COST)                    LABOR_BRDN_COST,
16241           sum(pjp.LABOR_HRS)                          LABOR_HRS,
16242           sum(pjp.LABOR_REVENUE)                      LABOR_REVENUE,
16243           sum(pjp.EQUIPMENT_HOURS)                    EQUIPMENT_HOURS,
16244           sum(pjp.BILLABLE_EQUIPMENT_HOURS)           BILLABLE_EQUIPMENT_HOURS,
16245           sum(pjp.SUP_INV_COMMITTED_COST)             SUP_INV_COMMITTED_COST,
16246           sum(pjp.PO_COMMITTED_COST)                  PO_COMMITTED_COST,
16247           sum(pjp.PR_COMMITTED_COST)                  PR_COMMITTED_COST,
16248           sum(pjp.OTH_COMMITTED_COST)                 OTH_COMMITTED_COST,
16249           sum(pjp.ACT_LABOR_HRS)                      ACT_LABOR_HRS,
16250           sum(pjp.ACT_EQUIP_HRS)                      ACT_EQUIP_HRS,
16251           sum(pjp.ACT_LABOR_BRDN_COST)                ACT_LABOR_BRDN_COST,
16252           sum(pjp.ACT_EQUIP_BRDN_COST)                ACT_EQUIP_BRDN_COST,
16253           sum(pjp.ACT_BRDN_COST)                      ACT_BRDN_COST,
16254           sum(pjp.ACT_RAW_COST)                       ACT_RAW_COST,
16255           sum(pjp.ACT_REVENUE)                        ACT_REVENUE,
16256           sum(pjp.ACT_LABOR_RAW_COST)                 ACT_LABOR_RAW_COST,
16257           sum(pjp.ACT_EQUIP_RAW_COST)                 ACT_EQUIP_RAW_COST,
16258           sum(pjp.ETC_LABOR_HRS)                      ETC_LABOR_HRS,
16259           sum(pjp.ETC_EQUIP_HRS)                      ETC_EQUIP_HRS,
16260           sum(pjp.ETC_LABOR_BRDN_COST)                ETC_LABOR_BRDN_COST,
16261           sum(pjp.ETC_EQUIP_BRDN_COST)                ETC_EQUIP_BRDN_COST,
16262           sum(pjp.ETC_BRDN_COST)                      ETC_BRDN_COST,
16263           sum(pjp.ETC_RAW_COST)                       ETC_RAW_COST,
16264           sum(pjp.ETC_LABOR_RAW_COST)                 ETC_LABOR_RAW_COST,
16265           sum(pjp.ETC_EQUIP_RAW_COST)                 ETC_EQUIP_RAW_COST,
16266           sum(pjp.CUSTOM1)                            CUSTOM1,
16267           sum(pjp.CUSTOM2)                            CUSTOM2,
16268           sum(pjp.CUSTOM3)                            CUSTOM3,
16269           sum(pjp.CUSTOM4)                            CUSTOM4,
16270           sum(pjp.CUSTOM5)                            CUSTOM5,
16271           sum(pjp.CUSTOM6)                            CUSTOM6,
16272           sum(pjp.CUSTOM7)                            CUSTOM7,
16273           sum(pjp.CUSTOM8)                            CUSTOM8,
16274           sum(pjp.CUSTOM9)                            CUSTOM9,
16275           sum(pjp.CUSTOM10)                           CUSTOM10,
16276           sum(pjp.CUSTOM11)                           CUSTOM11,
16277           sum(pjp.CUSTOM12)                           CUSTOM12,
16278           sum(pjp.CUSTOM13)                           CUSTOM13,
16279           sum(pjp.CUSTOM14)                           CUSTOM14,
16280           sum(pjp.CUSTOM15)                           CUSTOM15
16281         from
16282           (
16283           select /*+ index(wbs PA_XBS_DENORM_N2) parallel(pjp1) */ -- changed for bug 5927368
16284 		 -- get incremental task level amounts from source and
16285                  -- program rollup amounts from interim
16286             to_char(null)                             LINE_TYPE,
16287             wbs_hdr.WBS_VERSION_ID,
16288             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
16289             decode(wbs_hdr.WP_FLAG
16290                      || '_' || to_char(sign(pjp1.PLAN_VERSION_ID))
16291                      || '_' || nvl(fin_plan.INVERT_ID, 'PRJ'),
16292                    'N_1_PRJ', 'N',
16293                    'N_-1_PRG', 'N',
16294                    decode(top_slice.INVERT_ID,
16295                           'PRJ', 'Y',
16296                           decode(wbs.SUB_LEVEL,
16297                                  1, 'Y', 'N')))       PUSHUP_FLAG,
16298             decode(pjp1.RBS_AGGR_LEVEL,
16299                    'L', 'N',
16300                         decode(wbs_hdr.WP_FLAG
16301                                  || '_' || to_char(sign(pjp1.PLAN_VERSION_ID))
16302                                  || '_' || fin_plan.INVERT_ID,
16303                                'N_1_PRG', decode(top_slice.INVERT_ID,
16304                                                  'PRJ', 'Y',
16305                                                  decode(wbs.SUB_LEVEL,
16306                                                         1, 'Y', 'N')),
16307                                'N_-1_PRG', 'N',
16308                                decode(wbs_hdr.WP_FLAG
16309                                         || '_' || fin_plan.INVERT_ID
16310                                         || '_' || fin_plan.CB
16311                                         || '_' || fin_plan.CO
16312                                         || '_'
16313                                         || to_char(fin_plan.PLAN_VERSION_ID),
16314                                       'N_PRJ_Y_Y_-4', 'N',
16315                                                       'Y'))
16316                   )                                   INSERT_FLAG,
16317             pjp1.PROJECT_ID,
16318             pjp1.PROJECT_ORG_ID,
16319             pjp1.PROJECT_ORGANIZATION_ID,
16320             decode(top_slice.INVERT_ID,
16321                    'PRJ', prg.SUP_EMT_ID,
16322                           decode(wbs.SUB_LEVEL,
16323                                  1, prg.SUP_EMT_ID,
16324                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
16325             pjp1.TIME_ID,
16326             pjp1.PERIOD_TYPE_ID,
16327             pjp1.CALENDAR_TYPE,
16328             pjp1.RBS_AGGR_LEVEL,
16329             'Y'                                       WBS_ROLLUP_FLAG,
16330             pjp1.PRG_ROLLUP_FLAG,
16331             pjp1.CURR_RECORD_TYPE_ID,
16332             pjp1.CURRENCY_CODE,
16333             pjp1.RBS_ELEMENT_ID,
16334             pjp1.RBS_VERSION_ID,
16335             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
16336                    'N_PRG', fin_plan.PLAN_VERSION_ID,
16337                             pjp1.PLAN_VERSION_ID)     PLAN_VERSION_ID,
16338             pjp1.PLAN_TYPE_ID,
16339             pjp1.PLAN_TYPE_CODE,
16340             pjp1.RAW_COST,
16341             pjp1.BRDN_COST,
16342             pjp1.REVENUE,
16343             pjp1.BILL_RAW_COST,
16344             pjp1.BILL_BRDN_COST,
16345             pjp1.BILL_LABOR_RAW_COST,
16346             pjp1.BILL_LABOR_BRDN_COST,
16347             pjp1.BILL_LABOR_HRS,
16348             pjp1.EQUIPMENT_RAW_COST,
16349             pjp1.EQUIPMENT_BRDN_COST,
16350             pjp1.CAPITALIZABLE_RAW_COST,
16351             pjp1.CAPITALIZABLE_BRDN_COST,
16352             pjp1.LABOR_RAW_COST,
16353             pjp1.LABOR_BRDN_COST,
16354             pjp1.LABOR_HRS,
16355             pjp1.LABOR_REVENUE,
16356             pjp1.EQUIPMENT_HOURS,
16357             pjp1.BILLABLE_EQUIPMENT_HOURS,
16358             pjp1.SUP_INV_COMMITTED_COST,
16359             pjp1.PO_COMMITTED_COST,
16360             pjp1.PR_COMMITTED_COST,
16361             pjp1.OTH_COMMITTED_COST,
16362             pjp1.ACT_LABOR_HRS,
16363             pjp1.ACT_EQUIP_HRS,
16364             pjp1.ACT_LABOR_BRDN_COST,
16365             pjp1.ACT_EQUIP_BRDN_COST,
16366             pjp1.ACT_BRDN_COST,
16367             pjp1.ACT_RAW_COST,
16368             pjp1.ACT_REVENUE,
16369             pjp1.ACT_LABOR_RAW_COST,
16370             pjp1.ACT_EQUIP_RAW_COST,
16371             pjp1.ETC_LABOR_HRS,
16372             pjp1.ETC_EQUIP_HRS,
16373             pjp1.ETC_LABOR_BRDN_COST,
16374             pjp1.ETC_EQUIP_BRDN_COST,
16375             pjp1.ETC_BRDN_COST,
16376             pjp1.ETC_RAW_COST,
16377             pjp1.ETC_LABOR_RAW_COST,
16378             pjp1.ETC_EQUIP_RAW_COST,
16379             pjp1.CUSTOM1,
16380             pjp1.CUSTOM2,
16381             pjp1.CUSTOM3,
16382             pjp1.CUSTOM4,
16383             pjp1.CUSTOM5,
16384             pjp1.CUSTOM6,
16385             pjp1.CUSTOM7,
16386             pjp1.CUSTOM8,
16387             pjp1.CUSTOM9,
16388             pjp1.CUSTOM10,
16389             pjp1.CUSTOM11,
16390             pjp1.CUSTOM12,
16391             pjp1.CUSTOM13,
16392             pjp1.CUSTOM14,
16393             pjp1.CUSTOM15
16394           from
16395             PJI_FP_AGGR_PJP1   pjp1,
16396             PJI_PJP_WBS_HEADER wbs_hdr,
16397             PA_XBS_DENORM      wbs,
16398             PJI_XBS_DENORM     prg,
16399             (
16400               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
16401               from DUAL union all
16402               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
16403               from DUAL union all
16404               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
16405               from DUAL union all
16406               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
16407               from DUAL union all
16408               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
16409               from DUAL union all
16410               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
16411               from DUAL union all
16412               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
16413               from DUAL union all
16414               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
16415               from DUAL
16416             ) fin_plan,
16417             (
16418               select 1     WBS_SUP_LEVEL,
16419                      1     WBS_SUB_LEVEL,
16420                      'PRJ' INVERT_ID
16421               from   DUAL
16422               union all
16423               select 1     WBS_SUP_LEVEL,
16424                      1     WBS_SUB_LEVEL,
16425                      'WBS' INVERT_ID
16426               from   DUAL
16427             ) top_slice
16428           where
16429             prg.STRUCT_TYPE         =  'PRG'                       and
16430             prg.SUP_LEVEL           =  l_level                     and
16431             prg.SUB_LEVEL           =  l_level                     and
16432             wbs.STRUCT_TYPE         =  'WBS'                       and
16433             ((wbs.SUP_LEVEL = 1 and
16434               wbs.SUB_LEVEL = 1) or
16435              (wbs.SUP_LEVEL <> wbs.SUB_LEVEL))                     and
16436             wbs.STRUCT_VERSION_ID   =  prg.SUP_ID                  and
16437             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
16438             pjp1.WORKER_ID          =  p_worker_id                 and
16439             pjp1.PRG_LEVEL          in (0, l_level)                and
16440             pjp1.RBS_AGGR_LEVEL     in ('T', 'L')                  and
16441             pjp1.WBS_ROLLUP_FLAG    =  'N'                         and
16442             pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                  and
16443             pjp1.PROJECT_ID         =  wbs_hdr.PROJECT_ID          and
16444             pjp1.PLAN_VERSION_ID    =  wbs_hdr.PLAN_VERSION_ID     and
16445             pjp1.PLAN_TYPE_CODE     =  wbs_hdr.PLAN_TYPE_CODE      and
16446             decode(pjp1.PLAN_VERSION_ID,
16447                    -3, pjp1.PLAN_TYPE_ID,
16448                    -4, pjp1.PLAN_TYPE_ID,
16449                        -1)          =  decode(pjp1.PLAN_VERSION_ID,
16450                                               -3, wbs_hdr.PLAN_TYPE_ID,
16451                                               -4, wbs_hdr.PLAN_TYPE_ID,
16452                                                   -1)              and
16453             wbs.STRUCT_VERSION_ID   =  wbs_hdr.WBS_VERSION_ID      and
16454             pjp1.PROJECT_ELEMENT_ID =  wbs.SUB_EMT_ID              and
16455             wbs_hdr.CB_FLAG         =  fin_plan.CB             (+) and
16456             wbs_hdr.CO_FLAG         =  fin_plan.CO             (+) and
16457             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
16458             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+)
16459           union all
16460           select /*+ parallel(pjp1) */          -- changed for bug 5927368
16461 		 -- get incremental project level amounts from source
16462             to_char(null)                             LINE_TYPE,
16463             wbs_hdr.WBS_VERSION_ID,
16464             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
16465             'Y'                                       PUSHUP_FLAG,
16466             decode(pjp1.RBS_AGGR_LEVEL,
16467                    'L', 'N',
16468                         decode(fin_plan.PLAN_VERSION_ID,
16469                                null, 'N', 'Y'))       INSERT_FLAG,
16470             pjp1.PROJECT_ID,
16471             pjp1.PROJECT_ORG_ID,
16472             pjp1.PROJECT_ORGANIZATION_ID,
16473             pjp1.PROJECT_ELEMENT_ID,
16474             pjp1.TIME_ID,
16475             pjp1.PERIOD_TYPE_ID,
16476             pjp1.CALENDAR_TYPE,
16477             pjp1.RBS_AGGR_LEVEL,
16478             'Y'                                       WBS_ROLLUP_FLAG,
16479             pjp1.PRG_ROLLUP_FLAG,
16480             pjp1.CURR_RECORD_TYPE_ID,
16481             pjp1.CURRENCY_CODE,
16482             pjp1.RBS_ELEMENT_ID,
16483             pjp1.RBS_VERSION_ID,
16484             decode(wbs_hdr.WP_FLAG,
16485                    'N', decode(pjp1.PLAN_VERSION_ID,
16486                                -1, pjp1.PLAN_VERSION_ID,
16487                                -2, pjp1.PLAN_VERSION_ID,
16488                                -3, pjp1.PLAN_VERSION_ID, -- won't exist
16489                                -4, pjp1.PLAN_VERSION_ID, -- won't exist
16490                                    fin_plan.PLAN_VERSION_ID),
16491                         pjp1.PLAN_VERSION_ID)         PLAN_VERSION_ID,
16492             pjp1.PLAN_TYPE_ID,
16493             pjp1.PLAN_TYPE_CODE,
16494             pjp1.RAW_COST,
16495             pjp1.BRDN_COST,
16496             pjp1.REVENUE,
16497             pjp1.BILL_RAW_COST,
16498             pjp1.BILL_BRDN_COST,
16499             pjp1.BILL_LABOR_RAW_COST,
16500             pjp1.BILL_LABOR_BRDN_COST,
16501             pjp1.BILL_LABOR_HRS,
16502             pjp1.EQUIPMENT_RAW_COST,
16503             pjp1.EQUIPMENT_BRDN_COST,
16504             pjp1.CAPITALIZABLE_RAW_COST,
16505             pjp1.CAPITALIZABLE_BRDN_COST,
16506             pjp1.LABOR_RAW_COST,
16507             pjp1.LABOR_BRDN_COST,
16508             pjp1.LABOR_HRS,
16509             pjp1.LABOR_REVENUE,
16510             pjp1.EQUIPMENT_HOURS,
16511             pjp1.BILLABLE_EQUIPMENT_HOURS,
16512             pjp1.SUP_INV_COMMITTED_COST,
16513             pjp1.PO_COMMITTED_COST,
16514             pjp1.PR_COMMITTED_COST,
16515             pjp1.OTH_COMMITTED_COST,
16516             pjp1.ACT_LABOR_HRS,
16517             pjp1.ACT_EQUIP_HRS,
16518             pjp1.ACT_LABOR_BRDN_COST,
16519             pjp1.ACT_EQUIP_BRDN_COST,
16520             pjp1.ACT_BRDN_COST,
16521             pjp1.ACT_RAW_COST,
16522             pjp1.ACT_REVENUE,
16523             pjp1.ACT_LABOR_RAW_COST,
16524             pjp1.ACT_EQUIP_RAW_COST,
16525             pjp1.ETC_LABOR_HRS,
16526             pjp1.ETC_EQUIP_HRS,
16527             pjp1.ETC_LABOR_BRDN_COST,
16528             pjp1.ETC_EQUIP_BRDN_COST,
16529             pjp1.ETC_BRDN_COST,
16530             pjp1.ETC_RAW_COST,
16531             pjp1.ETC_LABOR_RAW_COST,
16532             pjp1.ETC_EQUIP_RAW_COST,
16533             pjp1.CUSTOM1,
16534             pjp1.CUSTOM2,
16535             pjp1.CUSTOM3,
16536             pjp1.CUSTOM4,
16537             pjp1.CUSTOM5,
16538             pjp1.CUSTOM6,
16539             pjp1.CUSTOM7,
16540             pjp1.CUSTOM8,
16541             pjp1.CUSTOM9,
16542             pjp1.CUSTOM10,
16543             pjp1.CUSTOM11,
16544             pjp1.CUSTOM12,
16545             pjp1.CUSTOM13,
16546             pjp1.CUSTOM14,
16547             pjp1.CUSTOM15
16548           from
16549             PJI_FP_AGGR_PJP1   pjp1,
16550             PJI_PJP_WBS_HEADER wbs_hdr,
16551             PJI_XBS_DENORM     prg,
16552             (
16553               select 'Y' CB_FLAG,
16554                      'N' CO_FLAG,
16555                      -3  PLAN_VERSION_ID
16556               from DUAL union all
16557               select 'N' CB_FLAG,
16558                      'Y' CO_FLAG,
16559                      -4  PLAN_VERSION_ID
16560               from DUAL union all
16561               select 'Y' CB_FLAG,
16562                      'Y' CO_FLAG,
16563                      -3  PLAN_VERSION_ID
16564               from DUAL union all
16565               select 'Y' CB_FLAG,
16566                      'Y' CO_FLAG,
16567                      -4  PLAN_VERSION_ID
16568               from DUAL
16569             ) fin_plan
16570           where
16571             prg.STRUCT_TYPE         = 'PRG'                    and
16572             prg.SUP_LEVEL           = l_level                  and
16573             prg.SUB_LEVEL           = l_level                  and
16574             pjp1.WORKER_ID          = p_worker_id              and
16575             pjp1.PROJECT_ID         = prg.SUP_PROJECT_ID       and
16576             pjp1.PROJECT_ELEMENT_ID = prg.SUP_EMT_ID           and
16577             pjp1.PRG_LEVEL          = 0                        and
16578             pjp1.RBS_AGGR_LEVEL     in ('T', 'L')              and
16579             pjp1.WBS_ROLLUP_FLAG    = 'N'                      and
16580             pjp1.PRG_ROLLUP_FLAG    = 'N'                      and
16581             wbs_hdr.PROJECT_ID      = pjp1.PROJECT_ID          and
16582             wbs_hdr.PLAN_VERSION_ID = pjp1.PLAN_VERSION_ID     and
16583             wbs_hdr.PLAN_TYPE_CODE  = pjp1.PLAN_TYPE_CODE      and
16584             decode(wbs_hdr.WP_FLAG,
16585                    'N', decode(pjp1.PLAN_VERSION_ID,
16586                                -1, 'Y',
16587                                -2, 'Y',
16588                                -3, 'Y', -- won't exist
16589                                -4, 'Y', -- won't exist
16590                                    decode(wbs_hdr.CB_FLAG || '_' ||
16591                                           wbs_hdr.CO_FLAG,
16592                                           'Y_Y', 'Y',
16593                                           'N_Y', 'Y',
16594                                           'Y_N', 'Y',
16595                                                  'N')),
16596                         'Y')        =  'Y'                     and
16597             wbs_hdr.WBS_VERSION_ID  = prg.SUP_ID               and
16598             wbs_hdr.CB_FLAG         = fin_plan.CB_FLAG     (+) and
16599             wbs_hdr.CO_FLAG         = fin_plan.CO_FLAG     (+)
16600           union all
16601           select /*+ ordered
16602                      index(fpr PJI_FP_XBS_ACCUM_F_N1) */
16603                  -- get delta task level amounts from Reporting Lines
16604             to_char(null)                             LINE_TYPE,
16605             wbs_hdr.WBS_VERSION_ID,
16606             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
16607             decode(log.EVENT_TYPE,
16608                    'WBS_CHANGE', 'Y',
16609                    'WBS_PUBLISH', 'N')                PUSHUP_FLAG,
16610             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
16611                    'N_PRG', decode(top_slice.INVERT_ID,
16612                                    'PRJ', 'Y',
16613                                    decode(wbs.SUB_LEVEL,
16614                                           1, 'Y', 'N')),
16615                    decode(wbs_hdr.WP_FLAG
16616                             || '_' || fin_plan.INVERT_ID
16617                             || '_' || fin_plan.CB
16618                             || '_' || fin_plan.CO
16619                             || '_' || to_char(fin_plan.PLAN_VERSION_ID),
16620                           'N_PRJ_Y_Y_-4', 'N',
16621                                           'Y'))       INSERT_FLAG,
16622             fpr.PROJECT_ID,
16623             fpr.PROJECT_ORG_ID,
16624             fpr.PROJECT_ORGANIZATION_ID,
16625             decode(top_slice.INVERT_ID,
16626                    'PRJ', prg.SUP_EMT_ID,
16627                           decode(wbs.SUB_LEVEL,
16628                                  1, prg.SUP_EMT_ID,
16629                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
16630             fpr.TIME_ID,
16631             fpr.PERIOD_TYPE_ID,
16632             fpr.CALENDAR_TYPE,
16633             fpr.RBS_AGGR_LEVEL,
16634             'Y'                                       WBS_ROLLUP_FLAG,
16635             fpr.PRG_ROLLUP_FLAG,
16636             fpr.CURR_RECORD_TYPE_ID,
16637             fpr.CURRENCY_CODE,
16638             fpr.RBS_ELEMENT_ID,
16639             fpr.RBS_VERSION_ID,
16640             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
16641                    'N_PRG', fin_plan.PLAN_VERSION_ID,
16642                             fpr.PLAN_VERSION_ID)      PLAN_VERSION_ID,
16643             fpr.PLAN_TYPE_ID,
16644             fpr.PLAN_TYPE_CODE,
16645             wbs.SIGN * fpr.RAW_COST                   RAW_COST,
16646             wbs.SIGN * fpr.BRDN_COST                  BRDN_COST,
16647             wbs.SIGN * fpr.REVENUE                    REVENUE,
16648             wbs.SIGN * fpr.BILL_RAW_COST              BILL_RAW_COST,
16649             wbs.SIGN * fpr.BILL_BRDN_COST             BILL_BRDN_COST,
16650             wbs.SIGN * fpr.BILL_LABOR_RAW_COST        BILL_LABOR_RAW_COST,
16651             wbs.SIGN * fpr.BILL_LABOR_BRDN_COST       BILL_LABOR_BRDN_COST,
16652             wbs.SIGN * fpr.BILL_LABOR_HRS             BILL_LABOR_HRS,
16653             wbs.SIGN * fpr.EQUIPMENT_RAW_COST         EQUIPMENT_RAW_COST,
16654             wbs.SIGN * fpr.EQUIPMENT_BRDN_COST        EQUIPMENT_BRDN_COST,
16655             wbs.SIGN * fpr.CAPITALIZABLE_RAW_COST     CAPITALIZABLE_RAW_COST,
16656             wbs.SIGN * fpr.CAPITALIZABLE_BRDN_COST    CAPITALIZABLE_BRDN_COST,
16657             wbs.SIGN * fpr.LABOR_RAW_COST             LABOR_RAW_COST,
16658             wbs.SIGN * fpr.LABOR_BRDN_COST            LABOR_BRDN_COST,
16659             wbs.SIGN * fpr.LABOR_HRS                  LABOR_HRS,
16660             wbs.SIGN * fpr.LABOR_REVENUE              LABOR_REVENUE,
16661             wbs.SIGN * fpr.EQUIPMENT_HOURS            EQUIPMENT_HOURS,
16662             wbs.SIGN * fpr.BILLABLE_EQUIPMENT_HOURS   BILLABLE_EQUIPMENT_HOURS,
16663             wbs.SIGN * fpr.SUP_INV_COMMITTED_COST     SUP_INV_COMMITTED_COST,
16664             wbs.SIGN * fpr.PO_COMMITTED_COST          PO_COMMITTED_COST,
16665             wbs.SIGN * fpr.PR_COMMITTED_COST          PR_COMMITTED_COST,
16666             wbs.SIGN * fpr.OTH_COMMITTED_COST         OTH_COMMITTED_COST,
16667             wbs.SIGN * fpr.ACT_LABOR_HRS              ACT_LABOR_HRS,
16668             wbs.SIGN * fpr.ACT_EQUIP_HRS              ACT_EQUIP_HRS,
16669             wbs.SIGN * fpr.ACT_LABOR_BRDN_COST        ACT_LABOR_BRDN_COST,
16670             wbs.SIGN * fpr.ACT_EQUIP_BRDN_COST        ACT_EQUIP_BRDN_COST,
16671             wbs.SIGN * fpr.ACT_BRDN_COST              ACT_BRDN_COST,
16672             wbs.SIGN * fpr.ACT_RAW_COST               ACT_RAW_COST,
16673             wbs.SIGN * fpr.ACT_REVENUE                ACT_REVENUE,
16674             wbs.SIGN * fpr.ACT_LABOR_RAW_COST         ACT_LABOR_RAW_COST,
16675             wbs.SIGN * fpr.ACT_EQUIP_RAW_COST         ACT_EQUIP_RAW_COST,
16676             wbs.SIGN * fpr.ETC_LABOR_HRS              ETC_LABOR_HRS,
16677             wbs.SIGN * fpr.ETC_EQUIP_HRS              ETC_EQUIP_HRS,
16678             wbs.SIGN * fpr.ETC_LABOR_BRDN_COST        ETC_LABOR_BRDN_COST,
16679             wbs.SIGN * fpr.ETC_EQUIP_BRDN_COST        ETC_EQUIP_BRDN_COST,
16680             wbs.SIGN * fpr.ETC_BRDN_COST              ETC_BRDN_COST,
16681             wbs.SIGN * fpr.ETC_RAW_COST               ETC_RAW_COST,
16682             wbs.SIGN * fpr.ETC_LABOR_RAW_COST         ETC_LABOR_RAW_COST,
16683             wbs.SIGN * fpr.ETC_EQUIP_RAW_COST         ETC_EQUIP_RAW_COST,
16684             wbs.SIGN * fpr.CUSTOM1                    CUSTOM1,
16685             wbs.SIGN * fpr.CUSTOM2                    CUSTOM2,
16686             wbs.SIGN * fpr.CUSTOM3                    CUSTOM3,
16687             wbs.SIGN * fpr.CUSTOM4                    CUSTOM4,
16688             wbs.SIGN * fpr.CUSTOM5                    CUSTOM5,
16689             wbs.SIGN * fpr.CUSTOM6                    CUSTOM6,
16690             wbs.SIGN * fpr.CUSTOM7                    CUSTOM7,
16691             wbs.SIGN * fpr.CUSTOM8                    CUSTOM8,
16692             wbs.SIGN * fpr.CUSTOM9                    CUSTOM9,
16693             wbs.SIGN * fpr.CUSTOM10                   CUSTOM10,
16694             wbs.SIGN * fpr.CUSTOM11                   CUSTOM11,
16695             wbs.SIGN * fpr.CUSTOM12                   CUSTOM12,
16696             wbs.SIGN * fpr.CUSTOM13                   CUSTOM13,
16697             wbs.SIGN * fpr.CUSTOM14                   CUSTOM14,
16698             wbs.SIGN * fpr.CUSTOM15                   CUSTOM15
16699           from
16700             PJI_PA_PROJ_EVENTS_LOG log,
16701             PJI_PJP_WBS_HEADER     wbs_hdr,
16702             PJI_XBS_DENORM_DELTA   wbs,
16703             PJI_XBS_DENORM         prg,
16704             PJI_FP_XBS_ACCUM_F     fpr,
16705             (
16706               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
16707               from DUAL union all
16708               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
16709               from DUAL union all
16710               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
16711               from DUAL union all
16712               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
16713               from DUAL union all
16714               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
16715               from DUAL union all
16716               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
16717               from DUAL union all
16718               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
16719               from DUAL union all
16720               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
16721               from DUAL
16722             ) fin_plan,
16723             (
16724               select 1     WBS_SUP_LEVEL,
16725                      1     WBS_SUB_LEVEL,
16726                      'PRJ' INVERT_ID
16727               from   DUAL
16728               union all
16729               select 1     WBS_SUP_LEVEL,
16730                      1     WBS_SUB_LEVEL,
16731                      'WBS' INVERT_ID
16732               from   DUAL
16733             ) top_slice
16734           where
16735             prg.STRUCT_TYPE         =  'PRG'                       and
16736             prg.SUP_LEVEL           =  l_level                     and
16737             prg.SUB_LEVEL           =  l_level                     and
16738             wbs.WORKER_ID           =  p_worker_id                 and
16739             wbs.STRUCT_TYPE         =  'WBS'                       and
16740             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
16741             log.WORKER_ID           =  p_worker_id                 and
16742             log.EVENT_ID            =  wbs.EVENT_ID                and
16743             log.EVENT_TYPE          in ('WBS_CHANGE',
16744                                         'WBS_PUBLISH')             and
16745             wbs_hdr.PROJECT_ID      =  log.ATTRIBUTE1              and
16746             wbs_hdr.PLAN_VERSION_ID =  log.ATTRIBUTE3              and
16747             wbs_hdr.WBS_VERSION_ID  =  wbs.STRUCT_VERSION_ID       and
16748             wbs_hdr.PROJECT_ID      =  prg.SUP_PROJECT_ID          and
16749             wbs_hdr.WBS_VERSION_ID  =  prg.SUP_ID                  and
16750             fpr.RBS_AGGR_LEVEL      =  'T'                         and
16751             fpr.WBS_ROLLUP_FLAG     =  'N'                         and
16752             fpr.PRG_ROLLUP_FLAG     in ('Y', 'N')                  and
16753             fpr.PROJECT_ID          =  wbs.SUP_PROJECT_ID          and
16754             fpr.PROJECT_ELEMENT_ID  =  wbs.SUB_EMT_ID              and
16755             fpr.PROJECT_ID          =  wbs_hdr.PROJECT_ID          and
16756             fpr.PLAN_VERSION_ID     =  wbs_hdr.PLAN_VERSION_ID     and
16757             fpr.PLAN_TYPE_CODE      =  wbs_hdr.PLAN_TYPE_CODE      and
16758             decode(fpr.PLAN_VERSION_ID,
16759                    -3, fpr.PLAN_TYPE_ID,
16760                    -4, fpr.PLAN_TYPE_ID,
16761                        -1)          =  decode(fpr.PLAN_VERSION_ID,
16762                                               -3, wbs_hdr.PLAN_TYPE_ID,
16763                                               -4, wbs_hdr.PLAN_TYPE_ID,
16764                                                   -1)              and
16765             wbs_hdr.CB_FLAG         =  fin_plan.CB             (+) and
16766             wbs_hdr.CO_FLAG         =  fin_plan.CO             (+) and
16767             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
16768             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+) and
16769             (wbs.SUP_LEVEL <> wbs.SUB_LEVEL or
16770              (wbs.SUP_LEVEL = 1 and
16771               wbs.SUB_LEVEL = 1))
16772           ) pjp,
16773           (
16774           select /*+ ordered */
16775             prg.SUP_PROJECT_ID,
16776             map.PROJECT_ORG_ID               SUP_PROJECT_ORG_ID,
16777             map.PROJECT_ORGANIZATION_ID      SUP_PROJECT_ORGANIZATION_ID,
16778             prg.SUP_ID,
16779             prg.SUP_EMT_ID,
16780             prg.SUP_LEVEL,
16781             prg.SUB_ID,
16782             prg.SUB_EMT_ID,
16783             prg.SUB_ROLLUP_ID,
16784             invert.INVERT_VALUE              RELATIONSHIP_TYPE,
16785             decode(prg.RELATIONSHIP_TYPE,
16786                    'LW', 'Y',
16787                    'LF', 'N')                WP_FLAG,
16788             'Y'                              PUSHUP_FLAG
16789           from
16790             PJI_PJP_PROJ_BATCH_MAP map,
16791             PJI_XBS_DENORM prg,
16792             (
16793               select 'LF' INVERT_ID, 'LF' INVERT_VALUE from dual union all
16794               select 'LW' INVERT_ID, 'LW' INVERT_VALUE from dual union all
16795               select 'A'  INVERT_ID, 'LF' INVERT_VALUE from dual union all
16796               select 'A'  INVERT_ID, 'LW' INVERT_VALUE from dual
16797             ) invert,
16798             PJI_XBS_DENORM_DELTA prg_delta
16799           where
16800             prg.STRUCT_TYPE               = 'PRG'                           and
16801             prg.SUB_ROLLUP_ID             is not null                       and
16802             prg.SUB_LEVEL                 = l_level                         and
16803             map.WORKER_ID                 = p_worker_id                     and
16804             map.PROJECT_ID                = prg.SUP_PROJECT_ID              and
16805             decode(prg.SUB_LEVEL,
16806                    prg.SUP_LEVEL, 'A',
16807                    prg.RELATIONSHIP_TYPE) = invert.INVERT_ID                and
16808             p_worker_id                   = prg_delta.WORKER_ID         (+) and
16809             prg.STRUCT_TYPE               = prg_delta.STRUCT_TYPE       (+) and
16810             prg.SUP_PROJECT_ID            = prg_delta.SUP_PROJECT_ID    (+) and
16811             prg.SUP_LEVEL                 = prg_delta.SUP_LEVEL         (+) and
16812             prg.SUP_ID                    = prg_delta.SUP_ID            (+) and
16813             prg.SUB_LEVEL                 = prg_delta.SUB_LEVEL         (+) and
16814             prg.SUB_ID                    = prg_delta.SUB_ID            (+) and
16815             prg.RELATIONSHIP_TYPE         = prg_delta.RELATIONSHIP_TYPE (+) and
16816             -1                            = prg_delta.SIGN              (+) and
16817             prg_delta.SUP_PROJECT_ID      is null
16818           )                          prg,
16819           PJI_PJP_WBS_HEADER         wbs_hdr,
16820           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
16821           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
16822           PA_PROJ_WORKPLAN_ATTR      sup_wpa
16823         where
16824           pjp.PROJECT_ID         = sub_ver.PROJECT_ID                (+) and
16825           pjp.WBS_VERSION_ID     = sub_ver.ELEMENT_VERSION_ID        (+) and
16826           'STRUCTURE_PUBLISHED'  = sub_ver.STATUS_CODE               (+) and
16827           pjp.WBS_VERSION_ID     = prg.SUB_ID                        (+) and
16828           pjp.RELATIONSHIP_TYPE  = prg.RELATIONSHIP_TYPE             (+) and
16829           pjp.PUSHUP_FLAG        = prg.PUSHUP_FLAG                   (+) and
16830           prg.SUP_PROJECT_ID     = wbs_hdr.PROJECT_ID                (+) and
16831           prg.SUP_ID             = wbs_hdr.WBS_VERSION_ID            (+) and
16832           prg.WP_FLAG            = wbs_hdr.WP_FLAG                   (+) and
16833           'Y'                    = wbs_hdr.WP_FLAG                   (+) and
16834           wbs_hdr.PROJECT_ID     = sup_ver.PROJECT_ID                (+) and
16835           wbs_hdr.WBS_VERSION_ID = sup_ver.ELEMENT_VERSION_ID        (+) and
16836           'STRUCTURE_PUBLISHED'  = sup_ver.STATUS_CODE               (+) and
16837           'Y'                    = sup_ver.LATEST_EFF_PUBLISHED_FLAG (+) and
16838           prg.SUP_EMT_ID         = sup_wpa.PROJ_ELEMENT_ID           (+)
16839         group by
16840           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16841                  pjp.INSERT_FLAG, 'Y'),
16842           pjp.RELATIONSHIP_TYPE,
16843           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16844                  null, sub_ver.STATUS_CODE),
16845           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16846                  null, sup_ver.STATUS_CODE),
16847           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16848                  null, sup_wpa.WP_ENABLE_VERSION_FLAG),
16849           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16850                  null, decode(pjp.PLAN_VERSION_ID,
16851                               -1, prg.SUP_ID,
16852                               -3, prg.SUP_ID,
16853                               -4, prg.SUP_ID,
16854                                   null)),
16855           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16856                  null, decode(pjp.PLAN_VERSION_ID,
16857                               -1, prg.SUP_EMT_ID,
16858                               -3, prg.SUP_EMT_ID,
16859                               -4, prg.SUP_EMT_ID,
16860                                   null)),
16861           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16862                  null, decode(pjp.PLAN_VERSION_ID,
16863                               -1, prg.WP_FLAG,
16864                               -3, prg.WP_FLAG,
16865                               -4, prg.WP_FLAG,
16866                                   null)),
16867           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16868                  l_level, prg.SUP_LEVEL),
16869           pjp.LINE_TYPE,
16870           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16871                  pjp.PROJECT_ID, prg.SUP_PROJECT_ID),
16872           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16873                  pjp.PROJECT_ORG_ID,
16874                  prg.SUP_PROJECT_ORG_ID),
16875           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16876                  pjp.PROJECT_ORGANIZATION_ID,
16877                  prg.SUP_PROJECT_ORGANIZATION_ID),
16878           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16879                  pjp.PROJECT_ELEMENT_ID,
16880                  prg.SUB_ROLLUP_ID),
16881           pjp.TIME_ID,
16882           pjp.PERIOD_TYPE_ID,
16883           pjp.CALENDAR_TYPE,
16884           pjp.RBS_AGGR_LEVEL,
16885           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16886                  pjp.WBS_ROLLUP_FLAG, 'N'),
16887           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16888                  pjp.PRG_ROLLUP_FLAG, 'Y'),
16889           pjp.CURR_RECORD_TYPE_ID,
16890           pjp.CURRENCY_CODE,
16891           pjp.RBS_ELEMENT_ID,
16892           pjp.RBS_VERSION_ID,
16893           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16894                  pjp.PLAN_VERSION_ID,
16895                  decode(pjp.PLAN_VERSION_ID,
16896                         -1, pjp.PLAN_VERSION_ID,
16897                         -2, pjp.PLAN_VERSION_ID,
16898                         -3, pjp.PLAN_VERSION_ID,
16899                         -4, pjp.PLAN_VERSION_ID,
16900                             wbs_hdr.PLAN_VERSION_ID)),
16901           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
16902                  pjp.PLAN_TYPE_ID,
16903                  decode(pjp.PLAN_VERSION_ID,
16904                         -1, pjp.PLAN_TYPE_ID,
16905                         -2, pjp.PLAN_TYPE_ID,
16906                         -3, pjp.PLAN_TYPE_ID,
16907                         -4, pjp.PLAN_TYPE_ID,
16908                             wbs_hdr.PLAN_TYPE_ID)),
16909           pjp.PLAN_TYPE_CODE
16910           )                          pjp1_i,
16911           PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
16912           PA_PROJ_WORKPLAN_ATTR      sup_wpa
16913         where
16914           pjp1_i.INSERT_FLAG  = 'Y'                                and
16915           pjp1_i.PROJECT_ID   = sup_fin_ver.PROJECT_ID         (+) and
16916           pjp1_i.SUP_ID       = sup_fin_ver.ELEMENT_VERSION_ID (+) and
16917           'STRUCTURE_WORKING' = sup_fin_ver.STATUS_CODE        (+) and
16918           pjp1_i.SUP_EMT_ID   = sup_wpa.PROJ_ELEMENT_ID        (+) and
16919           'N'                 = sup_wpa.WP_ENABLE_VERSION_FLAG (+) and
16920           (pjp1_i.SUP_ID is null or
16921            (pjp1_i.SUP_ID is not null and
16922             (sup_fin_ver.PROJECT_ID is not null or
16923              sup_wpa.PROJ_ELEMENT_ID is not null)));
16924     elsif (p_worker_id =8) then
16925       -- Query for Partition 8
16926 
16927         insert /*+ parallel(PJI_FP_AGGR_PJP1) */
16928                    into PJI_FP_AGGR_PJP1 partition(P8)
16929 	(
16930           WORKER_ID,
16931           RECORD_TYPE,
16932           PRG_LEVEL,
16933           LINE_TYPE,
16934           PROJECT_ID,
16935           PROJECT_ORG_ID,
16936           PROJECT_ORGANIZATION_ID,
16937           PROJECT_ELEMENT_ID,
16938           TIME_ID,
16939           PERIOD_TYPE_ID,
16940           CALENDAR_TYPE,
16941           RBS_AGGR_LEVEL,
16942           WBS_ROLLUP_FLAG,
16943           PRG_ROLLUP_FLAG,
16944           CURR_RECORD_TYPE_ID,
16945           CURRENCY_CODE,
16946           RBS_ELEMENT_ID,
16947           RBS_VERSION_ID,
16948           PLAN_VERSION_ID,
16949           PLAN_TYPE_ID,
16950           PLAN_TYPE_CODE,
16951           RAW_COST,
16952           BRDN_COST,
16953           REVENUE,
16954           BILL_RAW_COST,
16955           BILL_BRDN_COST,
16956           BILL_LABOR_RAW_COST,
16957           BILL_LABOR_BRDN_COST,
16958           BILL_LABOR_HRS,
16959           EQUIPMENT_RAW_COST,
16960           EQUIPMENT_BRDN_COST,
16961           CAPITALIZABLE_RAW_COST,
16962           CAPITALIZABLE_BRDN_COST,
16963           LABOR_RAW_COST,
16964           LABOR_BRDN_COST,
16965           LABOR_HRS,
16966           LABOR_REVENUE,
16967           EQUIPMENT_HOURS,
16968           BILLABLE_EQUIPMENT_HOURS,
16969           SUP_INV_COMMITTED_COST,
16970           PO_COMMITTED_COST,
16971           PR_COMMITTED_COST,
16972           OTH_COMMITTED_COST,
16973           ACT_LABOR_HRS,
16974           ACT_EQUIP_HRS,
16975           ACT_LABOR_BRDN_COST,
16976           ACT_EQUIP_BRDN_COST,
16977           ACT_BRDN_COST,
16978           ACT_RAW_COST,
16979           ACT_REVENUE,
16980           ACT_LABOR_RAW_COST,
16981           ACT_EQUIP_RAW_COST,
16982           ETC_LABOR_HRS,
16983           ETC_EQUIP_HRS,
16984           ETC_LABOR_BRDN_COST,
16985           ETC_EQUIP_BRDN_COST,
16986           ETC_BRDN_COST,
16987           ETC_RAW_COST,
16988           ETC_LABOR_RAW_COST,
16989           ETC_EQUIP_RAW_COST,
16990           CUSTOM1,
16991           CUSTOM2,
16992           CUSTOM3,
16993           CUSTOM4,
16994           CUSTOM5,
16995           CUSTOM6,
16996           CUSTOM7,
16997           CUSTOM8,
16998           CUSTOM9,
16999           CUSTOM10,
17000           CUSTOM11,
17001           CUSTOM12,
17002           CUSTOM13,
17003           CUSTOM14,
17004           CUSTOM15
17005         )
17006         select
17007           pjp1_i.WORKER_ID,
17008           pjp1_i.RECORD_TYPE,
17009           pjp1_i.PRG_LEVEL,
17010           pjp1_i.LINE_TYPE,
17011           pjp1_i.PROJECT_ID,
17012           pjp1_i.PROJECT_ORG_ID,
17013           pjp1_i.PROJECT_ORGANIZATION_ID,
17014           pjp1_i.PROJECT_ELEMENT_ID,
17015           pjp1_i.TIME_ID,
17016           pjp1_i.PERIOD_TYPE_ID,
17017           pjp1_i.CALENDAR_TYPE,
17018           pjp1_i.RBS_AGGR_LEVEL,
17019           pjp1_i.WBS_ROLLUP_FLAG,
17020           pjp1_i.PRG_ROLLUP_FLAG,
17021           pjp1_i.CURR_RECORD_TYPE_ID,
17022           pjp1_i.CURRENCY_CODE,
17023           pjp1_i.RBS_ELEMENT_ID,
17024           pjp1_i.RBS_VERSION_ID,
17025           pjp1_i.PLAN_VERSION_ID,
17026           pjp1_i.PLAN_TYPE_ID,
17027           pjp1_i.PLAN_TYPE_CODE,
17028           decode(pjp1_i.RELATIONSHIP_TYPE
17029                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17030                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17031                    || '_' || pjp1_i.SUB_STATUS_CODE
17032                    || '_' || pjp1_i.SUP_STATUS_CODE,
17033                  'LW_N_Y__', to_number(null),
17034                  decode(pjp1_i.RELATIONSHIP_TYPE
17035                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
17036                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
17037                           || '_' || pjp1_i.SUP_VER_ENABLED
17038                           || '_' || l_fpm_upgrade
17039                           || '_' || l_partial_mode,
17040                         'LW_N_Y_Y_C_', to_number(null),
17041                  pjp1_i.RAW_COST))                    RAW_COST,
17042           decode(pjp1_i.RELATIONSHIP_TYPE
17043                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17044                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17045                    || '_' || pjp1_i.SUB_STATUS_CODE
17046                    || '_' || pjp1_i.SUP_STATUS_CODE,
17047                  'LW_N_Y__', to_number(null),
17048                  decode(pjp1_i.RELATIONSHIP_TYPE
17049                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
17050                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
17051                           || '_' || pjp1_i.SUP_VER_ENABLED
17052                           || '_' || l_fpm_upgrade
17053                           || '_' || l_partial_mode,
17054                         'LW_N_Y_Y_C_', to_number(null),
17055                  pjp1_i.BRDN_COST))                   BRDN_COST,
17056           decode(pjp1_i.RELATIONSHIP_TYPE
17057                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17058                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17059                    || '_' || pjp1_i.SUB_STATUS_CODE
17060                    || '_' || pjp1_i.SUP_STATUS_CODE,
17061                  'LW_N_Y__', to_number(null),
17062                  decode(pjp1_i.RELATIONSHIP_TYPE
17063                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
17064                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
17065                           || '_' || pjp1_i.SUP_VER_ENABLED
17066                           || '_' || l_fpm_upgrade
17067                           || '_' || l_partial_mode,
17068                         'LW_N_Y_Y_C_', to_number(null),
17069                  pjp1_i.REVENUE))                     REVENUE,
17070           decode(pjp1_i.RELATIONSHIP_TYPE
17071                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17072                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17073                    || '_' || pjp1_i.SUB_STATUS_CODE
17074                    || '_' || pjp1_i.SUP_STATUS_CODE,
17075                  'LW_N_Y__', to_number(null),
17076                  decode(pjp1_i.RELATIONSHIP_TYPE
17077                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
17078                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
17079                           || '_' || pjp1_i.SUP_VER_ENABLED
17080                           || '_' || l_fpm_upgrade
17081                           || '_' || l_partial_mode,
17082                         'LW_N_Y_Y_C_', to_number(null),
17083                  pjp1_i.BILL_RAW_COST))               BILL_RAW_COST,
17084           decode(pjp1_i.RELATIONSHIP_TYPE
17085                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17086                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17087                    || '_' || pjp1_i.SUB_STATUS_CODE
17088                    || '_' || pjp1_i.SUP_STATUS_CODE,
17089                  'LW_N_Y__', to_number(null),
17090                  decode(pjp1_i.RELATIONSHIP_TYPE
17091                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
17092                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
17093                           || '_' || pjp1_i.SUP_VER_ENABLED
17094                           || '_' || l_fpm_upgrade
17095                           || '_' || l_partial_mode,
17096                         'LW_N_Y_Y_C_', to_number(null),
17097                  pjp1_i.BILL_BRDN_COST))              BILL_BRDN_COST,
17098           decode(pjp1_i.RELATIONSHIP_TYPE
17099                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17100                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17101                    || '_' || pjp1_i.SUB_STATUS_CODE
17102                    || '_' || pjp1_i.SUP_STATUS_CODE,
17103                  'LW_N_Y__', to_number(null),
17104                  decode(pjp1_i.RELATIONSHIP_TYPE
17105                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
17106                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
17107                           || '_' || pjp1_i.SUP_VER_ENABLED
17108                           || '_' || l_fpm_upgrade
17109                           || '_' || l_partial_mode,
17110                         'LW_N_Y_Y_C_', to_number(null),
17111                  pjp1_i.BILL_LABOR_RAW_COST))         BILL_LABOR_RAW_COST,
17112           decode(pjp1_i.RELATIONSHIP_TYPE
17113                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17114                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17115                    || '_' || pjp1_i.SUB_STATUS_CODE
17116                    || '_' || pjp1_i.SUP_STATUS_CODE,
17117                  'LW_N_Y__', to_number(null),
17118                  decode(pjp1_i.RELATIONSHIP_TYPE
17119                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
17120                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
17121                           || '_' || pjp1_i.SUP_VER_ENABLED
17122                           || '_' || l_fpm_upgrade
17123                           || '_' || l_partial_mode,
17124                         'LW_N_Y_Y_C_', to_number(null),
17125                  pjp1_i.BILL_LABOR_BRDN_COST))        BILL_LABOR_BRDN_COST,
17126           decode(pjp1_i.RELATIONSHIP_TYPE
17127                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17128                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17129                    || '_' || pjp1_i.SUB_STATUS_CODE
17130                    || '_' || pjp1_i.SUP_STATUS_CODE,
17131                  'LW_N_Y__', to_number(null),
17132                  decode(pjp1_i.RELATIONSHIP_TYPE
17133                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
17134                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
17135                           || '_' || pjp1_i.SUP_VER_ENABLED
17136                           || '_' || l_fpm_upgrade
17137                           || '_' || l_partial_mode,
17138                         'LW_N_Y_Y_C_', to_number(null),
17139                  pjp1_i.BILL_LABOR_HRS))              BILL_LABOR_HRS,
17140           decode(pjp1_i.RELATIONSHIP_TYPE
17141                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17142                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17143                    || '_' || pjp1_i.SUB_STATUS_CODE
17144                    || '_' || pjp1_i.SUP_STATUS_CODE,
17145                  'LW_N_Y__', to_number(null),
17146                  decode(pjp1_i.RELATIONSHIP_TYPE
17147                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
17148                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
17149                           || '_' || pjp1_i.SUP_VER_ENABLED
17150                           || '_' || l_fpm_upgrade
17151                           || '_' || l_partial_mode,
17152                         'LW_N_Y_Y_C_', to_number(null),
17153                  pjp1_i.EQUIPMENT_RAW_COST))          EQUIPMENT_RAW_COST,
17154           decode(pjp1_i.RELATIONSHIP_TYPE
17155                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17156                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17157                    || '_' || pjp1_i.SUB_STATUS_CODE
17158                    || '_' || pjp1_i.SUP_STATUS_CODE,
17159                  'LW_N_Y__', to_number(null),
17160                  decode(pjp1_i.RELATIONSHIP_TYPE
17161                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
17162                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
17163                           || '_' || pjp1_i.SUP_VER_ENABLED
17164                           || '_' || l_fpm_upgrade
17165                           || '_' || l_partial_mode,
17166                         'LW_N_Y_Y_C_', to_number(null),
17167                  pjp1_i.EQUIPMENT_BRDN_COST))         EQUIPMENT_BRDN_COST,
17168           decode(pjp1_i.RELATIONSHIP_TYPE
17169                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17170                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17171                    || '_' || pjp1_i.SUB_STATUS_CODE
17172                    || '_' || pjp1_i.SUP_STATUS_CODE,
17173                  'LW_N_Y__', to_number(null),
17174                  decode(pjp1_i.RELATIONSHIP_TYPE
17175                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
17176                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
17177                           || '_' || pjp1_i.SUP_VER_ENABLED
17178                           || '_' || l_fpm_upgrade
17179                           || '_' || l_partial_mode,
17180                         'LW_N_Y_Y_C_', to_number(null),
17181                  pjp1_i.CAPITALIZABLE_RAW_COST))      CAPITALIZABLE_RAW_COST,
17182           decode(pjp1_i.RELATIONSHIP_TYPE
17183                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17184                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17185                    || '_' || pjp1_i.SUB_STATUS_CODE
17186                    || '_' || pjp1_i.SUP_STATUS_CODE,
17187                  'LW_N_Y__', to_number(null),
17188                  decode(pjp1_i.RELATIONSHIP_TYPE
17189                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
17190                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
17191                           || '_' || pjp1_i.SUP_VER_ENABLED
17192                           || '_' || l_fpm_upgrade
17193                           || '_' || l_partial_mode,
17194                         'LW_N_Y_Y_C_', to_number(null),
17195                  pjp1_i.CAPITALIZABLE_BRDN_COST))     CAPITALIZABLE_BRDN_COST,
17196           decode(pjp1_i.RELATIONSHIP_TYPE
17197                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17198                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17199                    || '_' || pjp1_i.SUB_STATUS_CODE
17200                    || '_' || pjp1_i.SUP_STATUS_CODE,
17201                  'LW_N_Y__', to_number(null),
17202                  decode(pjp1_i.RELATIONSHIP_TYPE
17203                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
17204                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
17205                           || '_' || pjp1_i.SUP_VER_ENABLED
17206                           || '_' || l_fpm_upgrade
17207                           || '_' || l_partial_mode,
17208                         'LW_N_Y_Y_C_', to_number(null),
17209                  pjp1_i.LABOR_RAW_COST))              LABOR_RAW_COST,
17210           decode(pjp1_i.RELATIONSHIP_TYPE
17211                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17212                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17213                    || '_' || pjp1_i.SUB_STATUS_CODE
17214                    || '_' || pjp1_i.SUP_STATUS_CODE,
17215                  'LW_N_Y__', to_number(null),
17216                  decode(pjp1_i.RELATIONSHIP_TYPE
17217                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
17218                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
17219                           || '_' || pjp1_i.SUP_VER_ENABLED
17220                           || '_' || l_fpm_upgrade
17221                           || '_' || l_partial_mode,
17222                         'LW_N_Y_Y_C_', to_number(null),
17223                  pjp1_i.LABOR_BRDN_COST))             LABOR_BRDN_COST,
17224           decode(pjp1_i.RELATIONSHIP_TYPE
17225                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17226                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17227                    || '_' || pjp1_i.SUB_STATUS_CODE
17228                    || '_' || pjp1_i.SUP_STATUS_CODE,
17229                  'LW_N_Y__', to_number(null),
17230                  decode(pjp1_i.RELATIONSHIP_TYPE
17231                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
17232                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
17233                           || '_' || pjp1_i.SUP_VER_ENABLED
17234                           || '_' || l_fpm_upgrade
17235                           || '_' || l_partial_mode,
17236                         'LW_N_Y_Y_C_', to_number(null),
17237                  pjp1_i.LABOR_HRS))                   LABOR_HRS,
17238           decode(pjp1_i.RELATIONSHIP_TYPE
17239                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17240                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17241                    || '_' || pjp1_i.SUB_STATUS_CODE
17242                    || '_' || pjp1_i.SUP_STATUS_CODE,
17243                  'LW_N_Y__', to_number(null),
17244                  decode(pjp1_i.RELATIONSHIP_TYPE
17245                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
17246                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
17247                           || '_' || pjp1_i.SUP_VER_ENABLED
17248                           || '_' || l_fpm_upgrade
17249                           || '_' || l_partial_mode,
17250                         'LW_N_Y_Y_C_', to_number(null),
17251                  pjp1_i.LABOR_REVENUE))               LABOR_REVENUE,
17252           decode(pjp1_i.RELATIONSHIP_TYPE
17253                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17254                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17255                    || '_' || pjp1_i.SUB_STATUS_CODE
17256                    || '_' || pjp1_i.SUP_STATUS_CODE,
17257                  'LW_N_Y__', to_number(null),
17258                  decode(pjp1_i.RELATIONSHIP_TYPE
17259                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
17260                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
17261                           || '_' || pjp1_i.SUP_VER_ENABLED
17262                           || '_' || l_fpm_upgrade
17263                           || '_' || l_partial_mode,
17264                         'LW_N_Y_Y_C_', to_number(null),
17265                  pjp1_i.EQUIPMENT_HOURS))             EQUIPMENT_HOURS,
17266           decode(pjp1_i.RELATIONSHIP_TYPE
17267                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17268                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17269                    || '_' || pjp1_i.SUB_STATUS_CODE
17270                    || '_' || pjp1_i.SUP_STATUS_CODE,
17271                  'LW_N_Y__', to_number(null),
17272                  decode(pjp1_i.RELATIONSHIP_TYPE
17273                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
17274                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
17275                           || '_' || pjp1_i.SUP_VER_ENABLED
17276                           || '_' || l_fpm_upgrade
17277                           || '_' || l_partial_mode,
17278                         'LW_N_Y_Y_C_', to_number(null),
17279                  pjp1_i.BILLABLE_EQUIPMENT_HOURS))    BILLABLE_EQUIPMENT_HOURS,
17280           decode(pjp1_i.RELATIONSHIP_TYPE
17281                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17282                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17283                    || '_' || pjp1_i.SUB_STATUS_CODE
17284                    || '_' || pjp1_i.SUP_STATUS_CODE,
17285                  'LW_N_Y__', to_number(null),
17286                  decode(pjp1_i.RELATIONSHIP_TYPE
17287                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
17288                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
17289                           || '_' || pjp1_i.SUP_VER_ENABLED
17290                           || '_' || l_fpm_upgrade
17291                           || '_' || l_partial_mode,
17292                         'LW_N_Y_Y_C_', to_number(null),
17293                  pjp1_i.SUP_INV_COMMITTED_COST))      SUP_INV_COMMITTED_COST,
17294           decode(pjp1_i.RELATIONSHIP_TYPE
17295                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17296                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17297                    || '_' || pjp1_i.SUB_STATUS_CODE
17298                    || '_' || pjp1_i.SUP_STATUS_CODE,
17299                  'LW_N_Y__', to_number(null),
17300                  decode(pjp1_i.RELATIONSHIP_TYPE
17301                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
17302                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
17303                           || '_' || pjp1_i.SUP_VER_ENABLED
17304                           || '_' || l_fpm_upgrade
17305                           || '_' || l_partial_mode,
17306                         'LW_N_Y_Y_C_', to_number(null),
17307                  pjp1_i.PO_COMMITTED_COST))           PO_COMMITTED_COST,
17308           decode(pjp1_i.RELATIONSHIP_TYPE
17309                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17310                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17311                    || '_' || pjp1_i.SUB_STATUS_CODE
17312                    || '_' || pjp1_i.SUP_STATUS_CODE,
17313                  'LW_N_Y__', to_number(null),
17314                  decode(pjp1_i.RELATIONSHIP_TYPE
17315                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
17316                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
17317                           || '_' || pjp1_i.SUP_VER_ENABLED
17318                           || '_' || l_fpm_upgrade
17319                           || '_' || l_partial_mode,
17320                         'LW_N_Y_Y_C_', to_number(null),
17321                  pjp1_i.PR_COMMITTED_COST))           PR_COMMITTED_COST,
17322           decode(pjp1_i.RELATIONSHIP_TYPE
17323                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17324                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17325                    || '_' || pjp1_i.SUB_STATUS_CODE
17326                    || '_' || pjp1_i.SUP_STATUS_CODE,
17327                  'LW_N_Y__', to_number(null),
17328                  decode(pjp1_i.RELATIONSHIP_TYPE
17329                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
17330                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
17331                           || '_' || pjp1_i.SUP_VER_ENABLED
17332                           || '_' || l_fpm_upgrade
17333                           || '_' || l_partial_mode,
17334                         'LW_N_Y_Y_C_', to_number(null),
17335                  pjp1_i.OTH_COMMITTED_COST))          OTH_COMMITTED_COST,
17336           decode(pjp1_i.RELATIONSHIP_TYPE
17337                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17338                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17339                    || '_' || pjp1_i.SUP_STATUS_CODE
17340                    || '_' || l_partial_mode,
17341                  'LW_N_Y__', to_number(null),
17342                           pjp1_i.ACT_LABOR_HRS)       ACT_LABOR_HRS,
17343           decode(pjp1_i.RELATIONSHIP_TYPE
17344                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17345                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17346                    || '_' || pjp1_i.SUP_STATUS_CODE
17347                    || '_' || l_partial_mode,
17348                  'LW_N_Y__', to_number(null),
17349                           pjp1_i.ACT_EQUIP_HRS)       ACT_EQUIP_HRS,
17350           decode(pjp1_i.RELATIONSHIP_TYPE
17351                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17352                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17353                    || '_' || pjp1_i.SUP_STATUS_CODE
17354                    || '_' || l_partial_mode,
17355                  'LW_N_Y__', to_number(null),
17356                           pjp1_i.ACT_LABOR_BRDN_COST) ACT_LABOR_BRDN_COST,
17357           decode(pjp1_i.RELATIONSHIP_TYPE
17358                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17359                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17360                    || '_' || pjp1_i.SUP_STATUS_CODE
17361                    || '_' || l_partial_mode,
17362                  'LW_N_Y__', to_number(null),
17363                           pjp1_i.ACT_EQUIP_BRDN_COST) ACT_EQUIP_BRDN_COST,
17364           decode(pjp1_i.RELATIONSHIP_TYPE
17365                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17366                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17367                    || '_' || pjp1_i.SUP_STATUS_CODE
17368                    || '_' || l_partial_mode,
17369                  'LW_N_Y__', to_number(null),
17370                           pjp1_i.ACT_BRDN_COST)       ACT_BRDN_COST,
17371           decode(pjp1_i.RELATIONSHIP_TYPE
17372                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17373                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17374                    || '_' || pjp1_i.SUP_STATUS_CODE
17375                    || '_' || l_partial_mode,
17376                  'LW_N_Y__', to_number(null),
17377                           pjp1_i.ACT_RAW_COST)        ACT_RAW_COST,
17378           decode(pjp1_i.RELATIONSHIP_TYPE
17379                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17380                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17381                    || '_' || pjp1_i.SUP_STATUS_CODE
17382                    || '_' || l_partial_mode,
17383                  'LW_N_Y__', to_number(null),
17384                           pjp1_i.ACT_REVENUE)         ACT_REVENUE,
17385           decode(pjp1_i.RELATIONSHIP_TYPE
17386                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17387                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17388                    || '_' || pjp1_i.SUP_STATUS_CODE
17389                    || '_' || l_partial_mode,
17390                  'LW_N_Y__', to_number(null),
17391                           pjp1_i.ACT_LABOR_RAW_COST)  ACT_LABOR_RAW_COST,
17392           decode(pjp1_i.RELATIONSHIP_TYPE
17393                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17394                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17395                    || '_' || pjp1_i.SUP_STATUS_CODE
17396                    || '_' || l_partial_mode,
17397                  'LW_N_Y__', to_number(null),
17398                           pjp1_i.ACT_EQUIP_RAW_COST)  ACT_EQUIP_RAW_COST,
17399           decode(pjp1_i.RELATIONSHIP_TYPE
17400                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17401                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17402                    || '_' || pjp1_i.SUP_STATUS_CODE
17403                    || '_' || l_partial_mode,
17404                  'LW_N_Y__', to_number(null),
17405                           pjp1_i.ETC_LABOR_HRS)       ETC_LABOR_HRS,
17406           decode(pjp1_i.RELATIONSHIP_TYPE
17407                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17408                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17409                    || '_' || pjp1_i.SUP_STATUS_CODE
17410                    || '_' || l_partial_mode,
17411                  'LW_N_Y__', to_number(null),
17412                           pjp1_i.ETC_EQUIP_HRS)       ETC_EQUIP_HRS,
17413           decode(pjp1_i.RELATIONSHIP_TYPE
17414                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17415                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17416                    || '_' || pjp1_i.SUP_STATUS_CODE
17417                    || '_' || l_partial_mode,
17418                  'LW_N_Y__', to_number(null),
17419                           pjp1_i.ETC_LABOR_BRDN_COST) ETC_LABOR_BRDN_COST,
17420           decode(pjp1_i.RELATIONSHIP_TYPE
17421                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17422                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17423                    || '_' || pjp1_i.SUP_STATUS_CODE
17424                    || '_' || l_partial_mode,
17425                  'LW_N_Y__', to_number(null),
17426                           pjp1_i.ETC_EQUIP_BRDN_COST) ETC_EQUIP_BRDN_COST,
17427           decode(pjp1_i.RELATIONSHIP_TYPE
17428                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17429                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17430                    || '_' || pjp1_i.SUP_STATUS_CODE
17431                    || '_' || l_partial_mode,
17432                  'LW_N_Y__', to_number(null),
17433                           pjp1_i.ETC_BRDN_COST)       ETC_BRDN_COST,
17434           decode(pjp1_i.RELATIONSHIP_TYPE
17435                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17436                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17437                    || '_' || pjp1_i.SUP_STATUS_CODE
17438                    || '_' || l_partial_mode,
17439                  'LW_N_Y__', to_number(null),
17440                           pjp1_i.ETC_RAW_COST)        ETC_RAW_COST,
17441           decode(pjp1_i.RELATIONSHIP_TYPE
17442                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17443                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17444                    || '_' || pjp1_i.SUP_STATUS_CODE
17445                    || '_' || l_partial_mode,
17446                  'LW_N_Y__', to_number(null),
17447                           pjp1_i.ETC_LABOR_RAW_COST)  ETC_LABOR_RAW_COST,
17448           decode(pjp1_i.RELATIONSHIP_TYPE
17449                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
17450                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
17451                    || '_' || pjp1_i.SUP_STATUS_CODE
17452                    || '_' || l_partial_mode,
17453                  'LW_N_Y__', to_number(null),
17454                           pjp1_i.ETC_EQUIP_RAW_COST)  ETC_EQUIP_RAW_COST,
17455           pjp1_i.CUSTOM1,
17456           pjp1_i.CUSTOM2,
17457           pjp1_i.CUSTOM3,
17458           pjp1_i.CUSTOM4,
17459           pjp1_i.CUSTOM5,
17460           pjp1_i.CUSTOM6,
17461           pjp1_i.CUSTOM7,
17462           pjp1_i.CUSTOM8,
17463           pjp1_i.CUSTOM9,
17464           pjp1_i.CUSTOM10,
17465           pjp1_i.CUSTOM11,
17466           pjp1_i.CUSTOM12,
17467           pjp1_i.CUSTOM13,
17468           pjp1_i.CUSTOM14,
17469           pjp1_i.CUSTOM15
17470         from
17471           (
17472         select
17473           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
17474                  pjp.INSERT_FLAG, 'Y')                INSERT_FLAG,
17475           pjp.RELATIONSHIP_TYPE,
17476           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
17477                  null, sub_ver.STATUS_CODE)           SUB_STATUS_CODE,
17478           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
17479                  null, sup_ver.STATUS_CODE)           SUP_STATUS_CODE,
17480           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
17481                  null, sup_wpa.WP_ENABLE_VERSION_FLAG)SUP_VER_ENABLED,
17482           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
17483                  null, decode(pjp.PLAN_VERSION_ID,
17484                               -1, prg.SUP_ID,
17485                               -3, prg.SUP_ID,
17486                               -4, prg.SUP_ID,
17487                                   null))              SUP_ID,
17488           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
17489                  null, decode(pjp.PLAN_VERSION_ID,
17490                               -1, prg.SUP_EMT_ID,
17491                               -3, prg.SUP_EMT_ID,
17492                               -4, prg.SUP_EMT_ID,
17493                                   null))              SUP_EMT_ID,
17494           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
17495                  null, decode(pjp.PLAN_VERSION_ID,
17496                               -1, prg.WP_FLAG,
17497                               -3, prg.WP_FLAG,
17498                               -4, prg.WP_FLAG,
17499                                   null))              SUP_WP_FLAG,
17500           p_worker_id                                 WORKER_ID,
17501           'W'                                         RECORD_TYPE,
17502           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
17503                  l_level, prg.SUP_LEVEL)              PRG_LEVEL,
17504           pjp.LINE_TYPE,
17505           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
17506                  pjp.PROJECT_ID, prg.SUP_PROJECT_ID)  PROJECT_ID,
17507           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
17508                  pjp.PROJECT_ORG_ID,
17509                  prg.SUP_PROJECT_ORG_ID)              PROJECT_ORG_ID,
17510           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
17511                  pjp.PROJECT_ORGANIZATION_ID,
17512                  prg.SUP_PROJECT_ORGANIZATION_ID)     PROJECT_ORGANIZATION_ID,
17513           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
17514                  pjp.PROJECT_ELEMENT_ID,
17515                  prg.SUB_ROLLUP_ID)                   PROJECT_ELEMENT_ID,
17516           pjp.TIME_ID,
17517           pjp.PERIOD_TYPE_ID,
17518           pjp.CALENDAR_TYPE,
17519           pjp.RBS_AGGR_LEVEL,
17520           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
17521                  pjp.WBS_ROLLUP_FLAG, 'N')            WBS_ROLLUP_FLAG,
17522           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
17523                  pjp.PRG_ROLLUP_FLAG, 'Y')            PRG_ROLLUP_FLAG,
17524           pjp.CURR_RECORD_TYPE_ID,
17525           pjp.CURRENCY_CODE,
17526           pjp.RBS_ELEMENT_ID,
17527           pjp.RBS_VERSION_ID,
17528           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
17529                  pjp.PLAN_VERSION_ID,
17530                  decode(pjp.PLAN_VERSION_ID,
17531                         -1, pjp.PLAN_VERSION_ID,
17532                         -2, pjp.PLAN_VERSION_ID,
17533                         -3, pjp.PLAN_VERSION_ID,
17534                         -4, pjp.PLAN_VERSION_ID,
17535                             wbs_hdr.PLAN_VERSION_ID)) PLAN_VERSION_ID,
17536           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
17537                  pjp.PLAN_TYPE_ID,
17538                  decode(pjp.PLAN_VERSION_ID,
17539                         -1, pjp.PLAN_TYPE_ID,
17540                         -2, pjp.PLAN_TYPE_ID,
17541                         -3, pjp.PLAN_TYPE_ID,
17542                         -4, pjp.PLAN_TYPE_ID,
17543                             wbs_hdr.PLAN_TYPE_ID))    PLAN_TYPE_ID,
17544           pjp.PLAN_TYPE_CODE,
17545           sum(pjp.RAW_COST)                           RAW_COST,
17546           sum(pjp.BRDN_COST)                          BRDN_COST,
17547           sum(pjp.REVENUE)                            REVENUE,
17548           sum(pjp.BILL_RAW_COST)                      BILL_RAW_COST,
17549           sum(pjp.BILL_BRDN_COST)                     BILL_BRDN_COST,
17550           sum(pjp.BILL_LABOR_RAW_COST)                BILL_LABOR_RAW_COST,
17551           sum(pjp.BILL_LABOR_BRDN_COST)               BILL_LABOR_BRDN_COST,
17552           sum(pjp.BILL_LABOR_HRS)                     BILL_LABOR_HRS,
17553           sum(pjp.EQUIPMENT_RAW_COST)                 EQUIPMENT_RAW_COST,
17554           sum(pjp.EQUIPMENT_BRDN_COST)                EQUIPMENT_BRDN_COST,
17555           sum(pjp.CAPITALIZABLE_RAW_COST)             CAPITALIZABLE_RAW_COST,
17556           sum(pjp.CAPITALIZABLE_BRDN_COST)            CAPITALIZABLE_BRDN_COST,
17557           sum(pjp.LABOR_RAW_COST)                     LABOR_RAW_COST,
17558           sum(pjp.LABOR_BRDN_COST)                    LABOR_BRDN_COST,
17559           sum(pjp.LABOR_HRS)                          LABOR_HRS,
17560           sum(pjp.LABOR_REVENUE)                      LABOR_REVENUE,
17561           sum(pjp.EQUIPMENT_HOURS)                    EQUIPMENT_HOURS,
17562           sum(pjp.BILLABLE_EQUIPMENT_HOURS)           BILLABLE_EQUIPMENT_HOURS,
17563           sum(pjp.SUP_INV_COMMITTED_COST)             SUP_INV_COMMITTED_COST,
17564           sum(pjp.PO_COMMITTED_COST)                  PO_COMMITTED_COST,
17565           sum(pjp.PR_COMMITTED_COST)                  PR_COMMITTED_COST,
17566           sum(pjp.OTH_COMMITTED_COST)                 OTH_COMMITTED_COST,
17567           sum(pjp.ACT_LABOR_HRS)                      ACT_LABOR_HRS,
17568           sum(pjp.ACT_EQUIP_HRS)                      ACT_EQUIP_HRS,
17569           sum(pjp.ACT_LABOR_BRDN_COST)                ACT_LABOR_BRDN_COST,
17570           sum(pjp.ACT_EQUIP_BRDN_COST)                ACT_EQUIP_BRDN_COST,
17571           sum(pjp.ACT_BRDN_COST)                      ACT_BRDN_COST,
17572           sum(pjp.ACT_RAW_COST)                       ACT_RAW_COST,
17573           sum(pjp.ACT_REVENUE)                        ACT_REVENUE,
17574           sum(pjp.ACT_LABOR_RAW_COST)                 ACT_LABOR_RAW_COST,
17575           sum(pjp.ACT_EQUIP_RAW_COST)                 ACT_EQUIP_RAW_COST,
17576           sum(pjp.ETC_LABOR_HRS)                      ETC_LABOR_HRS,
17577           sum(pjp.ETC_EQUIP_HRS)                      ETC_EQUIP_HRS,
17578           sum(pjp.ETC_LABOR_BRDN_COST)                ETC_LABOR_BRDN_COST,
17579           sum(pjp.ETC_EQUIP_BRDN_COST)                ETC_EQUIP_BRDN_COST,
17580           sum(pjp.ETC_BRDN_COST)                      ETC_BRDN_COST,
17581           sum(pjp.ETC_RAW_COST)                       ETC_RAW_COST,
17582           sum(pjp.ETC_LABOR_RAW_COST)                 ETC_LABOR_RAW_COST,
17583           sum(pjp.ETC_EQUIP_RAW_COST)                 ETC_EQUIP_RAW_COST,
17584           sum(pjp.CUSTOM1)                            CUSTOM1,
17585           sum(pjp.CUSTOM2)                            CUSTOM2,
17586           sum(pjp.CUSTOM3)                            CUSTOM3,
17587           sum(pjp.CUSTOM4)                            CUSTOM4,
17588           sum(pjp.CUSTOM5)                            CUSTOM5,
17589           sum(pjp.CUSTOM6)                            CUSTOM6,
17590           sum(pjp.CUSTOM7)                            CUSTOM7,
17591           sum(pjp.CUSTOM8)                            CUSTOM8,
17592           sum(pjp.CUSTOM9)                            CUSTOM9,
17593           sum(pjp.CUSTOM10)                           CUSTOM10,
17594           sum(pjp.CUSTOM11)                           CUSTOM11,
17595           sum(pjp.CUSTOM12)                           CUSTOM12,
17596           sum(pjp.CUSTOM13)                           CUSTOM13,
17597           sum(pjp.CUSTOM14)                           CUSTOM14,
17598           sum(pjp.CUSTOM15)                           CUSTOM15
17599         from
17600           (
17601           select /*+ index(wbs PA_XBS_DENORM_N2) parallel(pjp1) */ -- changed for bug 5927368
17602 		 -- get incremental task level amounts from source and
17603                  -- program rollup amounts from interim
17604             to_char(null)                             LINE_TYPE,
17605             wbs_hdr.WBS_VERSION_ID,
17606             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
17607             decode(wbs_hdr.WP_FLAG
17608                      || '_' || to_char(sign(pjp1.PLAN_VERSION_ID))
17609                      || '_' || nvl(fin_plan.INVERT_ID, 'PRJ'),
17610                    'N_1_PRJ', 'N',
17611                    'N_-1_PRG', 'N',
17612                    decode(top_slice.INVERT_ID,
17613                           'PRJ', 'Y',
17614                           decode(wbs.SUB_LEVEL,
17615                                  1, 'Y', 'N')))       PUSHUP_FLAG,
17616             decode(pjp1.RBS_AGGR_LEVEL,
17617                    'L', 'N',
17618                         decode(wbs_hdr.WP_FLAG
17619                                  || '_' || to_char(sign(pjp1.PLAN_VERSION_ID))
17620                                  || '_' || fin_plan.INVERT_ID,
17621                                'N_1_PRG', decode(top_slice.INVERT_ID,
17622                                                  'PRJ', 'Y',
17623                                                  decode(wbs.SUB_LEVEL,
17624                                                         1, 'Y', 'N')),
17625                                'N_-1_PRG', 'N',
17626                                decode(wbs_hdr.WP_FLAG
17627                                         || '_' || fin_plan.INVERT_ID
17628                                         || '_' || fin_plan.CB
17629                                         || '_' || fin_plan.CO
17630                                         || '_'
17631                                         || to_char(fin_plan.PLAN_VERSION_ID),
17632                                       'N_PRJ_Y_Y_-4', 'N',
17633                                                       'Y'))
17634                   )                                   INSERT_FLAG,
17635             pjp1.PROJECT_ID,
17636             pjp1.PROJECT_ORG_ID,
17637             pjp1.PROJECT_ORGANIZATION_ID,
17638             decode(top_slice.INVERT_ID,
17639                    'PRJ', prg.SUP_EMT_ID,
17640                           decode(wbs.SUB_LEVEL,
17641                                  1, prg.SUP_EMT_ID,
17642                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
17643             pjp1.TIME_ID,
17644             pjp1.PERIOD_TYPE_ID,
17645             pjp1.CALENDAR_TYPE,
17646             pjp1.RBS_AGGR_LEVEL,
17647             'Y'                                       WBS_ROLLUP_FLAG,
17648             pjp1.PRG_ROLLUP_FLAG,
17649             pjp1.CURR_RECORD_TYPE_ID,
17650             pjp1.CURRENCY_CODE,
17651             pjp1.RBS_ELEMENT_ID,
17652             pjp1.RBS_VERSION_ID,
17653             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
17654                    'N_PRG', fin_plan.PLAN_VERSION_ID,
17655                             pjp1.PLAN_VERSION_ID)     PLAN_VERSION_ID,
17656             pjp1.PLAN_TYPE_ID,
17657             pjp1.PLAN_TYPE_CODE,
17658             pjp1.RAW_COST,
17659             pjp1.BRDN_COST,
17660             pjp1.REVENUE,
17661             pjp1.BILL_RAW_COST,
17662             pjp1.BILL_BRDN_COST,
17663             pjp1.BILL_LABOR_RAW_COST,
17664             pjp1.BILL_LABOR_BRDN_COST,
17665             pjp1.BILL_LABOR_HRS,
17666             pjp1.EQUIPMENT_RAW_COST,
17667             pjp1.EQUIPMENT_BRDN_COST,
17668             pjp1.CAPITALIZABLE_RAW_COST,
17669             pjp1.CAPITALIZABLE_BRDN_COST,
17670             pjp1.LABOR_RAW_COST,
17671             pjp1.LABOR_BRDN_COST,
17672             pjp1.LABOR_HRS,
17673             pjp1.LABOR_REVENUE,
17674             pjp1.EQUIPMENT_HOURS,
17675             pjp1.BILLABLE_EQUIPMENT_HOURS,
17676             pjp1.SUP_INV_COMMITTED_COST,
17677             pjp1.PO_COMMITTED_COST,
17678             pjp1.PR_COMMITTED_COST,
17679             pjp1.OTH_COMMITTED_COST,
17680             pjp1.ACT_LABOR_HRS,
17681             pjp1.ACT_EQUIP_HRS,
17682             pjp1.ACT_LABOR_BRDN_COST,
17683             pjp1.ACT_EQUIP_BRDN_COST,
17684             pjp1.ACT_BRDN_COST,
17685             pjp1.ACT_RAW_COST,
17686             pjp1.ACT_REVENUE,
17687             pjp1.ACT_LABOR_RAW_COST,
17688             pjp1.ACT_EQUIP_RAW_COST,
17689             pjp1.ETC_LABOR_HRS,
17690             pjp1.ETC_EQUIP_HRS,
17691             pjp1.ETC_LABOR_BRDN_COST,
17692             pjp1.ETC_EQUIP_BRDN_COST,
17693             pjp1.ETC_BRDN_COST,
17694             pjp1.ETC_RAW_COST,
17695             pjp1.ETC_LABOR_RAW_COST,
17696             pjp1.ETC_EQUIP_RAW_COST,
17697             pjp1.CUSTOM1,
17698             pjp1.CUSTOM2,
17699             pjp1.CUSTOM3,
17700             pjp1.CUSTOM4,
17701             pjp1.CUSTOM5,
17702             pjp1.CUSTOM6,
17703             pjp1.CUSTOM7,
17704             pjp1.CUSTOM8,
17705             pjp1.CUSTOM9,
17706             pjp1.CUSTOM10,
17707             pjp1.CUSTOM11,
17708             pjp1.CUSTOM12,
17709             pjp1.CUSTOM13,
17710             pjp1.CUSTOM14,
17711             pjp1.CUSTOM15
17712           from
17713             PJI_FP_AGGR_PJP1   pjp1,
17714             PJI_PJP_WBS_HEADER wbs_hdr,
17715             PA_XBS_DENORM      wbs,
17716             PJI_XBS_DENORM     prg,
17717             (
17718               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
17719               from DUAL union all
17720               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
17721               from DUAL union all
17722               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
17723               from DUAL union all
17724               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
17725               from DUAL union all
17726               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
17727               from DUAL union all
17728               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
17729               from DUAL union all
17730               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
17731               from DUAL union all
17732               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
17733               from DUAL
17734             ) fin_plan,
17735             (
17736               select 1     WBS_SUP_LEVEL,
17737                      1     WBS_SUB_LEVEL,
17738                      'PRJ' INVERT_ID
17739               from   DUAL
17740               union all
17741               select 1     WBS_SUP_LEVEL,
17742                      1     WBS_SUB_LEVEL,
17743                      'WBS' INVERT_ID
17744               from   DUAL
17745             ) top_slice
17746           where
17747             prg.STRUCT_TYPE         =  'PRG'                       and
17748             prg.SUP_LEVEL           =  l_level                     and
17749             prg.SUB_LEVEL           =  l_level                     and
17750             wbs.STRUCT_TYPE         =  'WBS'                       and
17751             ((wbs.SUP_LEVEL = 1 and
17752               wbs.SUB_LEVEL = 1) or
17753              (wbs.SUP_LEVEL <> wbs.SUB_LEVEL))                     and
17754             wbs.STRUCT_VERSION_ID   =  prg.SUP_ID                  and
17755             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
17756             pjp1.WORKER_ID          =  p_worker_id                 and
17757             pjp1.PRG_LEVEL          in (0, l_level)                and
17758             pjp1.RBS_AGGR_LEVEL     in ('T', 'L')                  and
17759             pjp1.WBS_ROLLUP_FLAG    =  'N'                         and
17760             pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                  and
17761             pjp1.PROJECT_ID         =  wbs_hdr.PROJECT_ID          and
17762             pjp1.PLAN_VERSION_ID    =  wbs_hdr.PLAN_VERSION_ID     and
17763             pjp1.PLAN_TYPE_CODE     =  wbs_hdr.PLAN_TYPE_CODE      and
17764             decode(pjp1.PLAN_VERSION_ID,
17765                    -3, pjp1.PLAN_TYPE_ID,
17766                    -4, pjp1.PLAN_TYPE_ID,
17767                        -1)          =  decode(pjp1.PLAN_VERSION_ID,
17768                                               -3, wbs_hdr.PLAN_TYPE_ID,
17769                                               -4, wbs_hdr.PLAN_TYPE_ID,
17770                                                   -1)              and
17771             wbs.STRUCT_VERSION_ID   =  wbs_hdr.WBS_VERSION_ID      and
17772             pjp1.PROJECT_ELEMENT_ID =  wbs.SUB_EMT_ID              and
17773             wbs_hdr.CB_FLAG         =  fin_plan.CB             (+) and
17774             wbs_hdr.CO_FLAG         =  fin_plan.CO             (+) and
17775             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
17776             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+)
17777           union all
17778           select /*+ parallel(pjp1) */          -- changed for bug 5927368
17779 		 -- get incremental project level amounts from source
17780             to_char(null)                             LINE_TYPE,
17781             wbs_hdr.WBS_VERSION_ID,
17782             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
17783             'Y'                                       PUSHUP_FLAG,
17784             decode(pjp1.RBS_AGGR_LEVEL,
17785                    'L', 'N',
17786                         decode(fin_plan.PLAN_VERSION_ID,
17787                                null, 'N', 'Y'))       INSERT_FLAG,
17788             pjp1.PROJECT_ID,
17789             pjp1.PROJECT_ORG_ID,
17790             pjp1.PROJECT_ORGANIZATION_ID,
17791             pjp1.PROJECT_ELEMENT_ID,
17792             pjp1.TIME_ID,
17793             pjp1.PERIOD_TYPE_ID,
17794             pjp1.CALENDAR_TYPE,
17795             pjp1.RBS_AGGR_LEVEL,
17796             'Y'                                       WBS_ROLLUP_FLAG,
17797             pjp1.PRG_ROLLUP_FLAG,
17798             pjp1.CURR_RECORD_TYPE_ID,
17799             pjp1.CURRENCY_CODE,
17800             pjp1.RBS_ELEMENT_ID,
17801             pjp1.RBS_VERSION_ID,
17802             decode(wbs_hdr.WP_FLAG,
17803                    'N', decode(pjp1.PLAN_VERSION_ID,
17804                                -1, pjp1.PLAN_VERSION_ID,
17805                                -2, pjp1.PLAN_VERSION_ID,
17806                                -3, pjp1.PLAN_VERSION_ID, -- won't exist
17807                                -4, pjp1.PLAN_VERSION_ID, -- won't exist
17808                                    fin_plan.PLAN_VERSION_ID),
17809                         pjp1.PLAN_VERSION_ID)         PLAN_VERSION_ID,
17810             pjp1.PLAN_TYPE_ID,
17811             pjp1.PLAN_TYPE_CODE,
17812             pjp1.RAW_COST,
17813             pjp1.BRDN_COST,
17814             pjp1.REVENUE,
17815             pjp1.BILL_RAW_COST,
17816             pjp1.BILL_BRDN_COST,
17817             pjp1.BILL_LABOR_RAW_COST,
17818             pjp1.BILL_LABOR_BRDN_COST,
17819             pjp1.BILL_LABOR_HRS,
17820             pjp1.EQUIPMENT_RAW_COST,
17821             pjp1.EQUIPMENT_BRDN_COST,
17822             pjp1.CAPITALIZABLE_RAW_COST,
17823             pjp1.CAPITALIZABLE_BRDN_COST,
17824             pjp1.LABOR_RAW_COST,
17825             pjp1.LABOR_BRDN_COST,
17826             pjp1.LABOR_HRS,
17827             pjp1.LABOR_REVENUE,
17828             pjp1.EQUIPMENT_HOURS,
17829             pjp1.BILLABLE_EQUIPMENT_HOURS,
17830             pjp1.SUP_INV_COMMITTED_COST,
17831             pjp1.PO_COMMITTED_COST,
17832             pjp1.PR_COMMITTED_COST,
17833             pjp1.OTH_COMMITTED_COST,
17834             pjp1.ACT_LABOR_HRS,
17835             pjp1.ACT_EQUIP_HRS,
17836             pjp1.ACT_LABOR_BRDN_COST,
17837             pjp1.ACT_EQUIP_BRDN_COST,
17838             pjp1.ACT_BRDN_COST,
17839             pjp1.ACT_RAW_COST,
17840             pjp1.ACT_REVENUE,
17841             pjp1.ACT_LABOR_RAW_COST,
17842             pjp1.ACT_EQUIP_RAW_COST,
17843             pjp1.ETC_LABOR_HRS,
17844             pjp1.ETC_EQUIP_HRS,
17845             pjp1.ETC_LABOR_BRDN_COST,
17846             pjp1.ETC_EQUIP_BRDN_COST,
17847             pjp1.ETC_BRDN_COST,
17848             pjp1.ETC_RAW_COST,
17849             pjp1.ETC_LABOR_RAW_COST,
17850             pjp1.ETC_EQUIP_RAW_COST,
17851             pjp1.CUSTOM1,
17852             pjp1.CUSTOM2,
17853             pjp1.CUSTOM3,
17854             pjp1.CUSTOM4,
17855             pjp1.CUSTOM5,
17856             pjp1.CUSTOM6,
17857             pjp1.CUSTOM7,
17858             pjp1.CUSTOM8,
17859             pjp1.CUSTOM9,
17860             pjp1.CUSTOM10,
17861             pjp1.CUSTOM11,
17862             pjp1.CUSTOM12,
17863             pjp1.CUSTOM13,
17864             pjp1.CUSTOM14,
17865             pjp1.CUSTOM15
17866           from
17867             PJI_FP_AGGR_PJP1   pjp1,
17868             PJI_PJP_WBS_HEADER wbs_hdr,
17869             PJI_XBS_DENORM     prg,
17870             (
17871               select 'Y' CB_FLAG,
17872                      'N' CO_FLAG,
17873                      -3  PLAN_VERSION_ID
17874               from DUAL union all
17875               select 'N' CB_FLAG,
17876                      'Y' CO_FLAG,
17877                      -4  PLAN_VERSION_ID
17878               from DUAL union all
17879               select 'Y' CB_FLAG,
17880                      'Y' CO_FLAG,
17881                      -3  PLAN_VERSION_ID
17882               from DUAL union all
17883               select 'Y' CB_FLAG,
17884                      'Y' CO_FLAG,
17885                      -4  PLAN_VERSION_ID
17886               from DUAL
17887             ) fin_plan
17888           where
17889             prg.STRUCT_TYPE         = 'PRG'                    and
17890             prg.SUP_LEVEL           = l_level                  and
17891             prg.SUB_LEVEL           = l_level                  and
17892             pjp1.WORKER_ID          = p_worker_id              and
17893             pjp1.PROJECT_ID         = prg.SUP_PROJECT_ID       and
17894             pjp1.PROJECT_ELEMENT_ID = prg.SUP_EMT_ID           and
17895             pjp1.PRG_LEVEL          = 0                        and
17896             pjp1.RBS_AGGR_LEVEL     in ('T', 'L')              and
17897             pjp1.WBS_ROLLUP_FLAG    = 'N'                      and
17898             pjp1.PRG_ROLLUP_FLAG    = 'N'                      and
17899             wbs_hdr.PROJECT_ID      = pjp1.PROJECT_ID          and
17900             wbs_hdr.PLAN_VERSION_ID = pjp1.PLAN_VERSION_ID     and
17901             wbs_hdr.PLAN_TYPE_CODE  = pjp1.PLAN_TYPE_CODE      and
17902             decode(wbs_hdr.WP_FLAG,
17903                    'N', decode(pjp1.PLAN_VERSION_ID,
17904                                -1, 'Y',
17905                                -2, 'Y',
17906                                -3, 'Y', -- won't exist
17907                                -4, 'Y', -- won't exist
17908                                    decode(wbs_hdr.CB_FLAG || '_' ||
17909                                           wbs_hdr.CO_FLAG,
17910                                           'Y_Y', 'Y',
17911                                           'N_Y', 'Y',
17912                                           'Y_N', 'Y',
17913                                                  'N')),
17914                         'Y')        =  'Y'                     and
17915             wbs_hdr.WBS_VERSION_ID  = prg.SUP_ID               and
17916             wbs_hdr.CB_FLAG         = fin_plan.CB_FLAG     (+) and
17917             wbs_hdr.CO_FLAG         = fin_plan.CO_FLAG     (+)
17918           union all
17919           select /*+ ordered
17920                      index(fpr PJI_FP_XBS_ACCUM_F_N1) */
17921                  -- get delta task level amounts from Reporting Lines
17922             to_char(null)                             LINE_TYPE,
17923             wbs_hdr.WBS_VERSION_ID,
17924             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
17925             decode(log.EVENT_TYPE,
17926                    'WBS_CHANGE', 'Y',
17927                    'WBS_PUBLISH', 'N')                PUSHUP_FLAG,
17928             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
17929                    'N_PRG', decode(top_slice.INVERT_ID,
17930                                    'PRJ', 'Y',
17931                                    decode(wbs.SUB_LEVEL,
17932                                           1, 'Y', 'N')),
17933                    decode(wbs_hdr.WP_FLAG
17934                             || '_' || fin_plan.INVERT_ID
17935                             || '_' || fin_plan.CB
17936                             || '_' || fin_plan.CO
17937                             || '_' || to_char(fin_plan.PLAN_VERSION_ID),
17938                           'N_PRJ_Y_Y_-4', 'N',
17939                                           'Y'))       INSERT_FLAG,
17940             fpr.PROJECT_ID,
17941             fpr.PROJECT_ORG_ID,
17942             fpr.PROJECT_ORGANIZATION_ID,
17943             decode(top_slice.INVERT_ID,
17944                    'PRJ', prg.SUP_EMT_ID,
17945                           decode(wbs.SUB_LEVEL,
17946                                  1, prg.SUP_EMT_ID,
17947                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
17948             fpr.TIME_ID,
17949             fpr.PERIOD_TYPE_ID,
17950             fpr.CALENDAR_TYPE,
17951             fpr.RBS_AGGR_LEVEL,
17952             'Y'                                       WBS_ROLLUP_FLAG,
17953             fpr.PRG_ROLLUP_FLAG,
17954             fpr.CURR_RECORD_TYPE_ID,
17955             fpr.CURRENCY_CODE,
17956             fpr.RBS_ELEMENT_ID,
17957             fpr.RBS_VERSION_ID,
17958             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
17959                    'N_PRG', fin_plan.PLAN_VERSION_ID,
17960                             fpr.PLAN_VERSION_ID)      PLAN_VERSION_ID,
17961             fpr.PLAN_TYPE_ID,
17962             fpr.PLAN_TYPE_CODE,
17963             wbs.SIGN * fpr.RAW_COST                   RAW_COST,
17964             wbs.SIGN * fpr.BRDN_COST                  BRDN_COST,
17965             wbs.SIGN * fpr.REVENUE                    REVENUE,
17966             wbs.SIGN * fpr.BILL_RAW_COST              BILL_RAW_COST,
17967             wbs.SIGN * fpr.BILL_BRDN_COST             BILL_BRDN_COST,
17968             wbs.SIGN * fpr.BILL_LABOR_RAW_COST        BILL_LABOR_RAW_COST,
17969             wbs.SIGN * fpr.BILL_LABOR_BRDN_COST       BILL_LABOR_BRDN_COST,
17970             wbs.SIGN * fpr.BILL_LABOR_HRS             BILL_LABOR_HRS,
17971             wbs.SIGN * fpr.EQUIPMENT_RAW_COST         EQUIPMENT_RAW_COST,
17972             wbs.SIGN * fpr.EQUIPMENT_BRDN_COST        EQUIPMENT_BRDN_COST,
17973             wbs.SIGN * fpr.CAPITALIZABLE_RAW_COST     CAPITALIZABLE_RAW_COST,
17974             wbs.SIGN * fpr.CAPITALIZABLE_BRDN_COST    CAPITALIZABLE_BRDN_COST,
17975             wbs.SIGN * fpr.LABOR_RAW_COST             LABOR_RAW_COST,
17976             wbs.SIGN * fpr.LABOR_BRDN_COST            LABOR_BRDN_COST,
17977             wbs.SIGN * fpr.LABOR_HRS                  LABOR_HRS,
17978             wbs.SIGN * fpr.LABOR_REVENUE              LABOR_REVENUE,
17979             wbs.SIGN * fpr.EQUIPMENT_HOURS            EQUIPMENT_HOURS,
17980             wbs.SIGN * fpr.BILLABLE_EQUIPMENT_HOURS   BILLABLE_EQUIPMENT_HOURS,
17981             wbs.SIGN * fpr.SUP_INV_COMMITTED_COST     SUP_INV_COMMITTED_COST,
17982             wbs.SIGN * fpr.PO_COMMITTED_COST          PO_COMMITTED_COST,
17983             wbs.SIGN * fpr.PR_COMMITTED_COST          PR_COMMITTED_COST,
17984             wbs.SIGN * fpr.OTH_COMMITTED_COST         OTH_COMMITTED_COST,
17985             wbs.SIGN * fpr.ACT_LABOR_HRS              ACT_LABOR_HRS,
17986             wbs.SIGN * fpr.ACT_EQUIP_HRS              ACT_EQUIP_HRS,
17987             wbs.SIGN * fpr.ACT_LABOR_BRDN_COST        ACT_LABOR_BRDN_COST,
17988             wbs.SIGN * fpr.ACT_EQUIP_BRDN_COST        ACT_EQUIP_BRDN_COST,
17989             wbs.SIGN * fpr.ACT_BRDN_COST              ACT_BRDN_COST,
17990             wbs.SIGN * fpr.ACT_RAW_COST               ACT_RAW_COST,
17991             wbs.SIGN * fpr.ACT_REVENUE                ACT_REVENUE,
17992             wbs.SIGN * fpr.ACT_LABOR_RAW_COST         ACT_LABOR_RAW_COST,
17993             wbs.SIGN * fpr.ACT_EQUIP_RAW_COST         ACT_EQUIP_RAW_COST,
17994             wbs.SIGN * fpr.ETC_LABOR_HRS              ETC_LABOR_HRS,
17995             wbs.SIGN * fpr.ETC_EQUIP_HRS              ETC_EQUIP_HRS,
17996             wbs.SIGN * fpr.ETC_LABOR_BRDN_COST        ETC_LABOR_BRDN_COST,
17997             wbs.SIGN * fpr.ETC_EQUIP_BRDN_COST        ETC_EQUIP_BRDN_COST,
17998             wbs.SIGN * fpr.ETC_BRDN_COST              ETC_BRDN_COST,
17999             wbs.SIGN * fpr.ETC_RAW_COST               ETC_RAW_COST,
18000             wbs.SIGN * fpr.ETC_LABOR_RAW_COST         ETC_LABOR_RAW_COST,
18001             wbs.SIGN * fpr.ETC_EQUIP_RAW_COST         ETC_EQUIP_RAW_COST,
18002             wbs.SIGN * fpr.CUSTOM1                    CUSTOM1,
18003             wbs.SIGN * fpr.CUSTOM2                    CUSTOM2,
18004             wbs.SIGN * fpr.CUSTOM3                    CUSTOM3,
18005             wbs.SIGN * fpr.CUSTOM4                    CUSTOM4,
18006             wbs.SIGN * fpr.CUSTOM5                    CUSTOM5,
18007             wbs.SIGN * fpr.CUSTOM6                    CUSTOM6,
18008             wbs.SIGN * fpr.CUSTOM7                    CUSTOM7,
18009             wbs.SIGN * fpr.CUSTOM8                    CUSTOM8,
18010             wbs.SIGN * fpr.CUSTOM9                    CUSTOM9,
18011             wbs.SIGN * fpr.CUSTOM10                   CUSTOM10,
18012             wbs.SIGN * fpr.CUSTOM11                   CUSTOM11,
18013             wbs.SIGN * fpr.CUSTOM12                   CUSTOM12,
18014             wbs.SIGN * fpr.CUSTOM13                   CUSTOM13,
18015             wbs.SIGN * fpr.CUSTOM14                   CUSTOM14,
18016             wbs.SIGN * fpr.CUSTOM15                   CUSTOM15
18017           from
18018             PJI_PA_PROJ_EVENTS_LOG log,
18019             PJI_PJP_WBS_HEADER     wbs_hdr,
18020             PJI_XBS_DENORM_DELTA   wbs,
18021             PJI_XBS_DENORM         prg,
18022             PJI_FP_XBS_ACCUM_F     fpr,
18023             (
18024               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
18025               from DUAL union all
18026               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
18027               from DUAL union all
18028               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
18029               from DUAL union all
18030               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
18031               from DUAL union all
18032               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
18033               from DUAL union all
18034               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
18035               from DUAL union all
18036               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
18037               from DUAL union all
18038               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
18039               from DUAL
18040             ) fin_plan,
18041             (
18042               select 1     WBS_SUP_LEVEL,
18043                      1     WBS_SUB_LEVEL,
18044                      'PRJ' INVERT_ID
18045               from   DUAL
18046               union all
18047               select 1     WBS_SUP_LEVEL,
18048                      1     WBS_SUB_LEVEL,
18049                      'WBS' INVERT_ID
18050               from   DUAL
18051             ) top_slice
18052           where
18053             prg.STRUCT_TYPE         =  'PRG'                       and
18054             prg.SUP_LEVEL           =  l_level                     and
18055             prg.SUB_LEVEL           =  l_level                     and
18056             wbs.WORKER_ID           =  p_worker_id                 and
18057             wbs.STRUCT_TYPE         =  'WBS'                       and
18058             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
18059             log.WORKER_ID           =  p_worker_id                 and
18060             log.EVENT_ID            =  wbs.EVENT_ID                and
18061             log.EVENT_TYPE          in ('WBS_CHANGE',
18062                                         'WBS_PUBLISH')             and
18063             wbs_hdr.PROJECT_ID      =  log.ATTRIBUTE1              and
18064             wbs_hdr.PLAN_VERSION_ID =  log.ATTRIBUTE3              and
18065             wbs_hdr.WBS_VERSION_ID  =  wbs.STRUCT_VERSION_ID       and
18066             wbs_hdr.PROJECT_ID      =  prg.SUP_PROJECT_ID          and
18067             wbs_hdr.WBS_VERSION_ID  =  prg.SUP_ID                  and
18068             fpr.RBS_AGGR_LEVEL      =  'T'                         and
18069             fpr.WBS_ROLLUP_FLAG     =  'N'                         and
18070             fpr.PRG_ROLLUP_FLAG     in ('Y', 'N')                  and
18071             fpr.PROJECT_ID          =  wbs.SUP_PROJECT_ID          and
18072             fpr.PROJECT_ELEMENT_ID  =  wbs.SUB_EMT_ID              and
18073             fpr.PROJECT_ID          =  wbs_hdr.PROJECT_ID          and
18074             fpr.PLAN_VERSION_ID     =  wbs_hdr.PLAN_VERSION_ID     and
18075             fpr.PLAN_TYPE_CODE      =  wbs_hdr.PLAN_TYPE_CODE      and
18076             decode(fpr.PLAN_VERSION_ID,
18077                    -3, fpr.PLAN_TYPE_ID,
18078                    -4, fpr.PLAN_TYPE_ID,
18079                        -1)          =  decode(fpr.PLAN_VERSION_ID,
18080                                               -3, wbs_hdr.PLAN_TYPE_ID,
18081                                               -4, wbs_hdr.PLAN_TYPE_ID,
18082                                                   -1)              and
18083             wbs_hdr.CB_FLAG         =  fin_plan.CB             (+) and
18084             wbs_hdr.CO_FLAG         =  fin_plan.CO             (+) and
18085             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
18086             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+) and
18087             (wbs.SUP_LEVEL <> wbs.SUB_LEVEL or
18088              (wbs.SUP_LEVEL = 1 and
18089               wbs.SUB_LEVEL = 1))
18090           ) pjp,
18091           (
18092           select /*+ ordered */
18093             prg.SUP_PROJECT_ID,
18094             map.PROJECT_ORG_ID               SUP_PROJECT_ORG_ID,
18095             map.PROJECT_ORGANIZATION_ID      SUP_PROJECT_ORGANIZATION_ID,
18096             prg.SUP_ID,
18097             prg.SUP_EMT_ID,
18098             prg.SUP_LEVEL,
18099             prg.SUB_ID,
18100             prg.SUB_EMT_ID,
18101             prg.SUB_ROLLUP_ID,
18102             invert.INVERT_VALUE              RELATIONSHIP_TYPE,
18103             decode(prg.RELATIONSHIP_TYPE,
18104                    'LW', 'Y',
18105                    'LF', 'N')                WP_FLAG,
18106             'Y'                              PUSHUP_FLAG
18107           from
18108             PJI_PJP_PROJ_BATCH_MAP map,
18109             PJI_XBS_DENORM prg,
18110             (
18111               select 'LF' INVERT_ID, 'LF' INVERT_VALUE from dual union all
18112               select 'LW' INVERT_ID, 'LW' INVERT_VALUE from dual union all
18113               select 'A'  INVERT_ID, 'LF' INVERT_VALUE from dual union all
18114               select 'A'  INVERT_ID, 'LW' INVERT_VALUE from dual
18115             ) invert,
18116             PJI_XBS_DENORM_DELTA prg_delta
18117           where
18118             prg.STRUCT_TYPE               = 'PRG'                           and
18119             prg.SUB_ROLLUP_ID             is not null                       and
18120             prg.SUB_LEVEL                 = l_level                         and
18121             map.WORKER_ID                 = p_worker_id                     and
18122             map.PROJECT_ID                = prg.SUP_PROJECT_ID              and
18123             decode(prg.SUB_LEVEL,
18124                    prg.SUP_LEVEL, 'A',
18125                    prg.RELATIONSHIP_TYPE) = invert.INVERT_ID                and
18126             p_worker_id                   = prg_delta.WORKER_ID         (+) and
18127             prg.STRUCT_TYPE               = prg_delta.STRUCT_TYPE       (+) and
18128             prg.SUP_PROJECT_ID            = prg_delta.SUP_PROJECT_ID    (+) and
18129             prg.SUP_LEVEL                 = prg_delta.SUP_LEVEL         (+) and
18130             prg.SUP_ID                    = prg_delta.SUP_ID            (+) and
18131             prg.SUB_LEVEL                 = prg_delta.SUB_LEVEL         (+) and
18132             prg.SUB_ID                    = prg_delta.SUB_ID            (+) and
18133             prg.RELATIONSHIP_TYPE         = prg_delta.RELATIONSHIP_TYPE (+) and
18134             -1                            = prg_delta.SIGN              (+) and
18135             prg_delta.SUP_PROJECT_ID      is null
18136           )                          prg,
18137           PJI_PJP_WBS_HEADER         wbs_hdr,
18138           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
18139           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
18140           PA_PROJ_WORKPLAN_ATTR      sup_wpa
18141         where
18142           pjp.PROJECT_ID         = sub_ver.PROJECT_ID                (+) and
18143           pjp.WBS_VERSION_ID     = sub_ver.ELEMENT_VERSION_ID        (+) and
18144           'STRUCTURE_PUBLISHED'  = sub_ver.STATUS_CODE               (+) and
18145           pjp.WBS_VERSION_ID     = prg.SUB_ID                        (+) and
18146           pjp.RELATIONSHIP_TYPE  = prg.RELATIONSHIP_TYPE             (+) and
18147           pjp.PUSHUP_FLAG        = prg.PUSHUP_FLAG                   (+) and
18148           prg.SUP_PROJECT_ID     = wbs_hdr.PROJECT_ID                (+) and
18149           prg.SUP_ID             = wbs_hdr.WBS_VERSION_ID            (+) and
18150           prg.WP_FLAG            = wbs_hdr.WP_FLAG                   (+) and
18151           'Y'                    = wbs_hdr.WP_FLAG                   (+) and
18152           wbs_hdr.PROJECT_ID     = sup_ver.PROJECT_ID                (+) and
18153           wbs_hdr.WBS_VERSION_ID = sup_ver.ELEMENT_VERSION_ID        (+) and
18154           'STRUCTURE_PUBLISHED'  = sup_ver.STATUS_CODE               (+) and
18155           'Y'                    = sup_ver.LATEST_EFF_PUBLISHED_FLAG (+) and
18156           prg.SUP_EMT_ID         = sup_wpa.PROJ_ELEMENT_ID           (+)
18157         group by
18158           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18159                  pjp.INSERT_FLAG, 'Y'),
18160           pjp.RELATIONSHIP_TYPE,
18161           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18162                  null, sub_ver.STATUS_CODE),
18163           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18164                  null, sup_ver.STATUS_CODE),
18165           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18166                  null, sup_wpa.WP_ENABLE_VERSION_FLAG),
18167           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18168                  null, decode(pjp.PLAN_VERSION_ID,
18169                               -1, prg.SUP_ID,
18170                               -3, prg.SUP_ID,
18171                               -4, prg.SUP_ID,
18172                                   null)),
18173           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18174                  null, decode(pjp.PLAN_VERSION_ID,
18175                               -1, prg.SUP_EMT_ID,
18176                               -3, prg.SUP_EMT_ID,
18177                               -4, prg.SUP_EMT_ID,
18178                                   null)),
18179           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18180                  null, decode(pjp.PLAN_VERSION_ID,
18181                               -1, prg.WP_FLAG,
18182                               -3, prg.WP_FLAG,
18183                               -4, prg.WP_FLAG,
18184                                   null)),
18185           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18186                  l_level, prg.SUP_LEVEL),
18187           pjp.LINE_TYPE,
18188           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18189                  pjp.PROJECT_ID, prg.SUP_PROJECT_ID),
18190           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18191                  pjp.PROJECT_ORG_ID,
18192                  prg.SUP_PROJECT_ORG_ID),
18193           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18194                  pjp.PROJECT_ORGANIZATION_ID,
18195                  prg.SUP_PROJECT_ORGANIZATION_ID),
18196           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18197                  pjp.PROJECT_ELEMENT_ID,
18198                  prg.SUB_ROLLUP_ID),
18199           pjp.TIME_ID,
18200           pjp.PERIOD_TYPE_ID,
18201           pjp.CALENDAR_TYPE,
18202           pjp.RBS_AGGR_LEVEL,
18203           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18204                  pjp.WBS_ROLLUP_FLAG, 'N'),
18205           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18206                  pjp.PRG_ROLLUP_FLAG, 'Y'),
18207           pjp.CURR_RECORD_TYPE_ID,
18208           pjp.CURRENCY_CODE,
18209           pjp.RBS_ELEMENT_ID,
18210           pjp.RBS_VERSION_ID,
18211           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18212                  pjp.PLAN_VERSION_ID,
18213                  decode(pjp.PLAN_VERSION_ID,
18214                         -1, pjp.PLAN_VERSION_ID,
18215                         -2, pjp.PLAN_VERSION_ID,
18216                         -3, pjp.PLAN_VERSION_ID,
18217                         -4, pjp.PLAN_VERSION_ID,
18218                             wbs_hdr.PLAN_VERSION_ID)),
18219           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18220                  pjp.PLAN_TYPE_ID,
18221                  decode(pjp.PLAN_VERSION_ID,
18222                         -1, pjp.PLAN_TYPE_ID,
18223                         -2, pjp.PLAN_TYPE_ID,
18224                         -3, pjp.PLAN_TYPE_ID,
18225                         -4, pjp.PLAN_TYPE_ID,
18226                             wbs_hdr.PLAN_TYPE_ID)),
18227           pjp.PLAN_TYPE_CODE
18228           )                          pjp1_i,
18229           PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
18230           PA_PROJ_WORKPLAN_ATTR      sup_wpa
18231         where
18232           pjp1_i.INSERT_FLAG  = 'Y'                                and
18233           pjp1_i.PROJECT_ID   = sup_fin_ver.PROJECT_ID         (+) and
18234           pjp1_i.SUP_ID       = sup_fin_ver.ELEMENT_VERSION_ID (+) and
18235           'STRUCTURE_WORKING' = sup_fin_ver.STATUS_CODE        (+) and
18236           pjp1_i.SUP_EMT_ID   = sup_wpa.PROJ_ELEMENT_ID        (+) and
18237           'N'                 = sup_wpa.WP_ENABLE_VERSION_FLAG (+) and
18238           (pjp1_i.SUP_ID is null or
18239            (pjp1_i.SUP_ID is not null and
18240             (sup_fin_ver.PROJECT_ID is not null or
18241              sup_wpa.PROJ_ELEMENT_ID is not null)));
18242     elsif (p_worker_id =9) then
18243       -- Query for Partition 9
18244 
18245         insert /*+ parallel(PJI_FP_AGGR_PJP1) */
18246                    into PJI_FP_AGGR_PJP1 partition(P9)
18247 	(
18248           WORKER_ID,
18249           RECORD_TYPE,
18250           PRG_LEVEL,
18251           LINE_TYPE,
18252           PROJECT_ID,
18253           PROJECT_ORG_ID,
18254           PROJECT_ORGANIZATION_ID,
18255           PROJECT_ELEMENT_ID,
18256           TIME_ID,
18257           PERIOD_TYPE_ID,
18258           CALENDAR_TYPE,
18259           RBS_AGGR_LEVEL,
18260           WBS_ROLLUP_FLAG,
18261           PRG_ROLLUP_FLAG,
18262           CURR_RECORD_TYPE_ID,
18263           CURRENCY_CODE,
18264           RBS_ELEMENT_ID,
18265           RBS_VERSION_ID,
18266           PLAN_VERSION_ID,
18267           PLAN_TYPE_ID,
18268           PLAN_TYPE_CODE,
18269           RAW_COST,
18270           BRDN_COST,
18271           REVENUE,
18272           BILL_RAW_COST,
18273           BILL_BRDN_COST,
18274           BILL_LABOR_RAW_COST,
18275           BILL_LABOR_BRDN_COST,
18276           BILL_LABOR_HRS,
18277           EQUIPMENT_RAW_COST,
18278           EQUIPMENT_BRDN_COST,
18279           CAPITALIZABLE_RAW_COST,
18280           CAPITALIZABLE_BRDN_COST,
18281           LABOR_RAW_COST,
18282           LABOR_BRDN_COST,
18283           LABOR_HRS,
18284           LABOR_REVENUE,
18285           EQUIPMENT_HOURS,
18286           BILLABLE_EQUIPMENT_HOURS,
18287           SUP_INV_COMMITTED_COST,
18288           PO_COMMITTED_COST,
18289           PR_COMMITTED_COST,
18290           OTH_COMMITTED_COST,
18291           ACT_LABOR_HRS,
18292           ACT_EQUIP_HRS,
18293           ACT_LABOR_BRDN_COST,
18294           ACT_EQUIP_BRDN_COST,
18295           ACT_BRDN_COST,
18296           ACT_RAW_COST,
18297           ACT_REVENUE,
18298           ACT_LABOR_RAW_COST,
18299           ACT_EQUIP_RAW_COST,
18300           ETC_LABOR_HRS,
18301           ETC_EQUIP_HRS,
18302           ETC_LABOR_BRDN_COST,
18303           ETC_EQUIP_BRDN_COST,
18304           ETC_BRDN_COST,
18305           ETC_RAW_COST,
18306           ETC_LABOR_RAW_COST,
18307           ETC_EQUIP_RAW_COST,
18308           CUSTOM1,
18309           CUSTOM2,
18310           CUSTOM3,
18311           CUSTOM4,
18312           CUSTOM5,
18313           CUSTOM6,
18314           CUSTOM7,
18315           CUSTOM8,
18316           CUSTOM9,
18317           CUSTOM10,
18318           CUSTOM11,
18319           CUSTOM12,
18320           CUSTOM13,
18321           CUSTOM14,
18322           CUSTOM15
18323         )
18324         select
18325           pjp1_i.WORKER_ID,
18326           pjp1_i.RECORD_TYPE,
18327           pjp1_i.PRG_LEVEL,
18328           pjp1_i.LINE_TYPE,
18329           pjp1_i.PROJECT_ID,
18330           pjp1_i.PROJECT_ORG_ID,
18331           pjp1_i.PROJECT_ORGANIZATION_ID,
18332           pjp1_i.PROJECT_ELEMENT_ID,
18333           pjp1_i.TIME_ID,
18334           pjp1_i.PERIOD_TYPE_ID,
18335           pjp1_i.CALENDAR_TYPE,
18336           pjp1_i.RBS_AGGR_LEVEL,
18337           pjp1_i.WBS_ROLLUP_FLAG,
18338           pjp1_i.PRG_ROLLUP_FLAG,
18339           pjp1_i.CURR_RECORD_TYPE_ID,
18340           pjp1_i.CURRENCY_CODE,
18341           pjp1_i.RBS_ELEMENT_ID,
18342           pjp1_i.RBS_VERSION_ID,
18343           pjp1_i.PLAN_VERSION_ID,
18344           pjp1_i.PLAN_TYPE_ID,
18345           pjp1_i.PLAN_TYPE_CODE,
18346           decode(pjp1_i.RELATIONSHIP_TYPE
18347                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18348                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18349                    || '_' || pjp1_i.SUB_STATUS_CODE
18350                    || '_' || pjp1_i.SUP_STATUS_CODE,
18351                  'LW_N_Y__', to_number(null),
18352                  decode(pjp1_i.RELATIONSHIP_TYPE
18353                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
18354                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
18355                           || '_' || pjp1_i.SUP_VER_ENABLED
18356                           || '_' || l_fpm_upgrade
18357                           || '_' || l_partial_mode,
18358                         'LW_N_Y_Y_C_', to_number(null),
18359                  pjp1_i.RAW_COST))                    RAW_COST,
18360           decode(pjp1_i.RELATIONSHIP_TYPE
18361                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18362                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18363                    || '_' || pjp1_i.SUB_STATUS_CODE
18364                    || '_' || pjp1_i.SUP_STATUS_CODE,
18365                  'LW_N_Y__', to_number(null),
18366                  decode(pjp1_i.RELATIONSHIP_TYPE
18367                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
18368                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
18369                           || '_' || pjp1_i.SUP_VER_ENABLED
18370                           || '_' || l_fpm_upgrade
18371                           || '_' || l_partial_mode,
18372                         'LW_N_Y_Y_C_', to_number(null),
18373                  pjp1_i.BRDN_COST))                   BRDN_COST,
18374           decode(pjp1_i.RELATIONSHIP_TYPE
18375                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18376                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18377                    || '_' || pjp1_i.SUB_STATUS_CODE
18378                    || '_' || pjp1_i.SUP_STATUS_CODE,
18379                  'LW_N_Y__', to_number(null),
18380                  decode(pjp1_i.RELATIONSHIP_TYPE
18381                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
18382                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
18383                           || '_' || pjp1_i.SUP_VER_ENABLED
18384                           || '_' || l_fpm_upgrade
18385                           || '_' || l_partial_mode,
18386                         'LW_N_Y_Y_C_', to_number(null),
18387                  pjp1_i.REVENUE))                     REVENUE,
18388           decode(pjp1_i.RELATIONSHIP_TYPE
18389                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18390                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18391                    || '_' || pjp1_i.SUB_STATUS_CODE
18392                    || '_' || pjp1_i.SUP_STATUS_CODE,
18393                  'LW_N_Y__', to_number(null),
18394                  decode(pjp1_i.RELATIONSHIP_TYPE
18395                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
18396                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
18397                           || '_' || pjp1_i.SUP_VER_ENABLED
18398                           || '_' || l_fpm_upgrade
18399                           || '_' || l_partial_mode,
18400                         'LW_N_Y_Y_C_', to_number(null),
18401                  pjp1_i.BILL_RAW_COST))               BILL_RAW_COST,
18402           decode(pjp1_i.RELATIONSHIP_TYPE
18403                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18404                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18405                    || '_' || pjp1_i.SUB_STATUS_CODE
18406                    || '_' || pjp1_i.SUP_STATUS_CODE,
18407                  'LW_N_Y__', to_number(null),
18408                  decode(pjp1_i.RELATIONSHIP_TYPE
18409                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
18410                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
18411                           || '_' || pjp1_i.SUP_VER_ENABLED
18412                           || '_' || l_fpm_upgrade
18413                           || '_' || l_partial_mode,
18414                         'LW_N_Y_Y_C_', to_number(null),
18415                  pjp1_i.BILL_BRDN_COST))              BILL_BRDN_COST,
18416           decode(pjp1_i.RELATIONSHIP_TYPE
18417                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18418                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18419                    || '_' || pjp1_i.SUB_STATUS_CODE
18420                    || '_' || pjp1_i.SUP_STATUS_CODE,
18421                  'LW_N_Y__', to_number(null),
18422                  decode(pjp1_i.RELATIONSHIP_TYPE
18423                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
18424                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
18425                           || '_' || pjp1_i.SUP_VER_ENABLED
18426                           || '_' || l_fpm_upgrade
18427                           || '_' || l_partial_mode,
18428                         'LW_N_Y_Y_C_', to_number(null),
18429                  pjp1_i.BILL_LABOR_RAW_COST))         BILL_LABOR_RAW_COST,
18430           decode(pjp1_i.RELATIONSHIP_TYPE
18431                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18432                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18433                    || '_' || pjp1_i.SUB_STATUS_CODE
18434                    || '_' || pjp1_i.SUP_STATUS_CODE,
18435                  'LW_N_Y__', to_number(null),
18436                  decode(pjp1_i.RELATIONSHIP_TYPE
18437                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
18438                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
18439                           || '_' || pjp1_i.SUP_VER_ENABLED
18440                           || '_' || l_fpm_upgrade
18441                           || '_' || l_partial_mode,
18442                         'LW_N_Y_Y_C_', to_number(null),
18443                  pjp1_i.BILL_LABOR_BRDN_COST))        BILL_LABOR_BRDN_COST,
18444           decode(pjp1_i.RELATIONSHIP_TYPE
18445                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18446                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18447                    || '_' || pjp1_i.SUB_STATUS_CODE
18448                    || '_' || pjp1_i.SUP_STATUS_CODE,
18449                  'LW_N_Y__', to_number(null),
18450                  decode(pjp1_i.RELATIONSHIP_TYPE
18451                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
18452                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
18453                           || '_' || pjp1_i.SUP_VER_ENABLED
18454                           || '_' || l_fpm_upgrade
18455                           || '_' || l_partial_mode,
18456                         'LW_N_Y_Y_C_', to_number(null),
18457                  pjp1_i.BILL_LABOR_HRS))              BILL_LABOR_HRS,
18458           decode(pjp1_i.RELATIONSHIP_TYPE
18459                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18460                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18461                    || '_' || pjp1_i.SUB_STATUS_CODE
18462                    || '_' || pjp1_i.SUP_STATUS_CODE,
18463                  'LW_N_Y__', to_number(null),
18464                  decode(pjp1_i.RELATIONSHIP_TYPE
18465                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
18466                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
18467                           || '_' || pjp1_i.SUP_VER_ENABLED
18468                           || '_' || l_fpm_upgrade
18469                           || '_' || l_partial_mode,
18470                         'LW_N_Y_Y_C_', to_number(null),
18471                  pjp1_i.EQUIPMENT_RAW_COST))          EQUIPMENT_RAW_COST,
18472           decode(pjp1_i.RELATIONSHIP_TYPE
18473                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18474                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18475                    || '_' || pjp1_i.SUB_STATUS_CODE
18476                    || '_' || pjp1_i.SUP_STATUS_CODE,
18477                  'LW_N_Y__', to_number(null),
18478                  decode(pjp1_i.RELATIONSHIP_TYPE
18479                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
18480                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
18481                           || '_' || pjp1_i.SUP_VER_ENABLED
18482                           || '_' || l_fpm_upgrade
18483                           || '_' || l_partial_mode,
18484                         'LW_N_Y_Y_C_', to_number(null),
18485                  pjp1_i.EQUIPMENT_BRDN_COST))         EQUIPMENT_BRDN_COST,
18486           decode(pjp1_i.RELATIONSHIP_TYPE
18487                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18488                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18489                    || '_' || pjp1_i.SUB_STATUS_CODE
18490                    || '_' || pjp1_i.SUP_STATUS_CODE,
18491                  'LW_N_Y__', to_number(null),
18492                  decode(pjp1_i.RELATIONSHIP_TYPE
18493                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
18494                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
18495                           || '_' || pjp1_i.SUP_VER_ENABLED
18496                           || '_' || l_fpm_upgrade
18497                           || '_' || l_partial_mode,
18498                         'LW_N_Y_Y_C_', to_number(null),
18499                  pjp1_i.CAPITALIZABLE_RAW_COST))      CAPITALIZABLE_RAW_COST,
18500           decode(pjp1_i.RELATIONSHIP_TYPE
18501                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18502                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18503                    || '_' || pjp1_i.SUB_STATUS_CODE
18504                    || '_' || pjp1_i.SUP_STATUS_CODE,
18505                  'LW_N_Y__', to_number(null),
18506                  decode(pjp1_i.RELATIONSHIP_TYPE
18507                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
18508                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
18509                           || '_' || pjp1_i.SUP_VER_ENABLED
18510                           || '_' || l_fpm_upgrade
18511                           || '_' || l_partial_mode,
18512                         'LW_N_Y_Y_C_', to_number(null),
18513                  pjp1_i.CAPITALIZABLE_BRDN_COST))     CAPITALIZABLE_BRDN_COST,
18514           decode(pjp1_i.RELATIONSHIP_TYPE
18515                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18516                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18517                    || '_' || pjp1_i.SUB_STATUS_CODE
18518                    || '_' || pjp1_i.SUP_STATUS_CODE,
18519                  'LW_N_Y__', to_number(null),
18520                  decode(pjp1_i.RELATIONSHIP_TYPE
18521                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
18522                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
18523                           || '_' || pjp1_i.SUP_VER_ENABLED
18524                           || '_' || l_fpm_upgrade
18525                           || '_' || l_partial_mode,
18526                         'LW_N_Y_Y_C_', to_number(null),
18527                  pjp1_i.LABOR_RAW_COST))              LABOR_RAW_COST,
18528           decode(pjp1_i.RELATIONSHIP_TYPE
18529                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18530                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18531                    || '_' || pjp1_i.SUB_STATUS_CODE
18532                    || '_' || pjp1_i.SUP_STATUS_CODE,
18533                  'LW_N_Y__', to_number(null),
18534                  decode(pjp1_i.RELATIONSHIP_TYPE
18535                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
18536                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
18537                           || '_' || pjp1_i.SUP_VER_ENABLED
18538                           || '_' || l_fpm_upgrade
18539                           || '_' || l_partial_mode,
18540                         'LW_N_Y_Y_C_', to_number(null),
18541                  pjp1_i.LABOR_BRDN_COST))             LABOR_BRDN_COST,
18542           decode(pjp1_i.RELATIONSHIP_TYPE
18543                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18544                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18545                    || '_' || pjp1_i.SUB_STATUS_CODE
18546                    || '_' || pjp1_i.SUP_STATUS_CODE,
18547                  'LW_N_Y__', to_number(null),
18548                  decode(pjp1_i.RELATIONSHIP_TYPE
18549                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
18550                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
18551                           || '_' || pjp1_i.SUP_VER_ENABLED
18552                           || '_' || l_fpm_upgrade
18553                           || '_' || l_partial_mode,
18554                         'LW_N_Y_Y_C_', to_number(null),
18555                  pjp1_i.LABOR_HRS))                   LABOR_HRS,
18556           decode(pjp1_i.RELATIONSHIP_TYPE
18557                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18558                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18559                    || '_' || pjp1_i.SUB_STATUS_CODE
18560                    || '_' || pjp1_i.SUP_STATUS_CODE,
18561                  'LW_N_Y__', to_number(null),
18562                  decode(pjp1_i.RELATIONSHIP_TYPE
18563                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
18564                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
18565                           || '_' || pjp1_i.SUP_VER_ENABLED
18566                           || '_' || l_fpm_upgrade
18567                           || '_' || l_partial_mode,
18568                         'LW_N_Y_Y_C_', to_number(null),
18569                  pjp1_i.LABOR_REVENUE))               LABOR_REVENUE,
18570           decode(pjp1_i.RELATIONSHIP_TYPE
18571                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18572                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18573                    || '_' || pjp1_i.SUB_STATUS_CODE
18574                    || '_' || pjp1_i.SUP_STATUS_CODE,
18575                  'LW_N_Y__', to_number(null),
18576                  decode(pjp1_i.RELATIONSHIP_TYPE
18577                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
18578                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
18579                           || '_' || pjp1_i.SUP_VER_ENABLED
18580                           || '_' || l_fpm_upgrade
18581                           || '_' || l_partial_mode,
18582                         'LW_N_Y_Y_C_', to_number(null),
18583                  pjp1_i.EQUIPMENT_HOURS))             EQUIPMENT_HOURS,
18584           decode(pjp1_i.RELATIONSHIP_TYPE
18585                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18586                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18587                    || '_' || pjp1_i.SUB_STATUS_CODE
18588                    || '_' || pjp1_i.SUP_STATUS_CODE,
18589                  'LW_N_Y__', to_number(null),
18590                  decode(pjp1_i.RELATIONSHIP_TYPE
18591                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
18592                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
18593                           || '_' || pjp1_i.SUP_VER_ENABLED
18594                           || '_' || l_fpm_upgrade
18595                           || '_' || l_partial_mode,
18596                         'LW_N_Y_Y_C_', to_number(null),
18597                  pjp1_i.BILLABLE_EQUIPMENT_HOURS))    BILLABLE_EQUIPMENT_HOURS,
18598           decode(pjp1_i.RELATIONSHIP_TYPE
18599                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18600                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18601                    || '_' || pjp1_i.SUB_STATUS_CODE
18602                    || '_' || pjp1_i.SUP_STATUS_CODE,
18603                  'LW_N_Y__', to_number(null),
18604                  decode(pjp1_i.RELATIONSHIP_TYPE
18605                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
18606                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
18607                           || '_' || pjp1_i.SUP_VER_ENABLED
18608                           || '_' || l_fpm_upgrade
18609                           || '_' || l_partial_mode,
18610                         'LW_N_Y_Y_C_', to_number(null),
18611                  pjp1_i.SUP_INV_COMMITTED_COST))      SUP_INV_COMMITTED_COST,
18612           decode(pjp1_i.RELATIONSHIP_TYPE
18613                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18614                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18615                    || '_' || pjp1_i.SUB_STATUS_CODE
18616                    || '_' || pjp1_i.SUP_STATUS_CODE,
18617                  'LW_N_Y__', to_number(null),
18618                  decode(pjp1_i.RELATIONSHIP_TYPE
18619                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
18620                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
18621                           || '_' || pjp1_i.SUP_VER_ENABLED
18622                           || '_' || l_fpm_upgrade
18623                           || '_' || l_partial_mode,
18624                         'LW_N_Y_Y_C_', to_number(null),
18625                  pjp1_i.PO_COMMITTED_COST))           PO_COMMITTED_COST,
18626           decode(pjp1_i.RELATIONSHIP_TYPE
18627                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18628                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18629                    || '_' || pjp1_i.SUB_STATUS_CODE
18630                    || '_' || pjp1_i.SUP_STATUS_CODE,
18631                  'LW_N_Y__', to_number(null),
18632                  decode(pjp1_i.RELATIONSHIP_TYPE
18633                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
18634                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
18635                           || '_' || pjp1_i.SUP_VER_ENABLED
18636                           || '_' || l_fpm_upgrade
18637                           || '_' || l_partial_mode,
18638                         'LW_N_Y_Y_C_', to_number(null),
18639                  pjp1_i.PR_COMMITTED_COST))           PR_COMMITTED_COST,
18640           decode(pjp1_i.RELATIONSHIP_TYPE
18641                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18642                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18643                    || '_' || pjp1_i.SUB_STATUS_CODE
18644                    || '_' || pjp1_i.SUP_STATUS_CODE,
18645                  'LW_N_Y__', to_number(null),
18646                  decode(pjp1_i.RELATIONSHIP_TYPE
18647                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
18648                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
18649                           || '_' || pjp1_i.SUP_VER_ENABLED
18650                           || '_' || l_fpm_upgrade
18651                           || '_' || l_partial_mode,
18652                         'LW_N_Y_Y_C_', to_number(null),
18653                  pjp1_i.OTH_COMMITTED_COST))          OTH_COMMITTED_COST,
18654           decode(pjp1_i.RELATIONSHIP_TYPE
18655                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18656                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18657                    || '_' || pjp1_i.SUP_STATUS_CODE
18658                    || '_' || l_partial_mode,
18659                  'LW_N_Y__', to_number(null),
18660                           pjp1_i.ACT_LABOR_HRS)       ACT_LABOR_HRS,
18661           decode(pjp1_i.RELATIONSHIP_TYPE
18662                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18663                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18664                    || '_' || pjp1_i.SUP_STATUS_CODE
18665                    || '_' || l_partial_mode,
18666                  'LW_N_Y__', to_number(null),
18667                           pjp1_i.ACT_EQUIP_HRS)       ACT_EQUIP_HRS,
18668           decode(pjp1_i.RELATIONSHIP_TYPE
18669                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18670                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18671                    || '_' || pjp1_i.SUP_STATUS_CODE
18672                    || '_' || l_partial_mode,
18673                  'LW_N_Y__', to_number(null),
18674                           pjp1_i.ACT_LABOR_BRDN_COST) ACT_LABOR_BRDN_COST,
18675           decode(pjp1_i.RELATIONSHIP_TYPE
18676                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18677                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18678                    || '_' || pjp1_i.SUP_STATUS_CODE
18679                    || '_' || l_partial_mode,
18680                  'LW_N_Y__', to_number(null),
18681                           pjp1_i.ACT_EQUIP_BRDN_COST) ACT_EQUIP_BRDN_COST,
18682           decode(pjp1_i.RELATIONSHIP_TYPE
18683                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18684                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18685                    || '_' || pjp1_i.SUP_STATUS_CODE
18686                    || '_' || l_partial_mode,
18687                  'LW_N_Y__', to_number(null),
18688                           pjp1_i.ACT_BRDN_COST)       ACT_BRDN_COST,
18689           decode(pjp1_i.RELATIONSHIP_TYPE
18690                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18691                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18692                    || '_' || pjp1_i.SUP_STATUS_CODE
18693                    || '_' || l_partial_mode,
18694                  'LW_N_Y__', to_number(null),
18695                           pjp1_i.ACT_RAW_COST)        ACT_RAW_COST,
18696           decode(pjp1_i.RELATIONSHIP_TYPE
18697                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18698                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18699                    || '_' || pjp1_i.SUP_STATUS_CODE
18700                    || '_' || l_partial_mode,
18701                  'LW_N_Y__', to_number(null),
18702                           pjp1_i.ACT_REVENUE)         ACT_REVENUE,
18703           decode(pjp1_i.RELATIONSHIP_TYPE
18704                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18705                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18706                    || '_' || pjp1_i.SUP_STATUS_CODE
18707                    || '_' || l_partial_mode,
18708                  'LW_N_Y__', to_number(null),
18709                           pjp1_i.ACT_LABOR_RAW_COST)  ACT_LABOR_RAW_COST,
18710           decode(pjp1_i.RELATIONSHIP_TYPE
18711                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18712                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18713                    || '_' || pjp1_i.SUP_STATUS_CODE
18714                    || '_' || l_partial_mode,
18715                  'LW_N_Y__', to_number(null),
18716                           pjp1_i.ACT_EQUIP_RAW_COST)  ACT_EQUIP_RAW_COST,
18717           decode(pjp1_i.RELATIONSHIP_TYPE
18718                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18719                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18720                    || '_' || pjp1_i.SUP_STATUS_CODE
18721                    || '_' || l_partial_mode,
18722                  'LW_N_Y__', to_number(null),
18723                           pjp1_i.ETC_LABOR_HRS)       ETC_LABOR_HRS,
18724           decode(pjp1_i.RELATIONSHIP_TYPE
18725                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18726                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18727                    || '_' || pjp1_i.SUP_STATUS_CODE
18728                    || '_' || l_partial_mode,
18729                  'LW_N_Y__', to_number(null),
18730                           pjp1_i.ETC_EQUIP_HRS)       ETC_EQUIP_HRS,
18731           decode(pjp1_i.RELATIONSHIP_TYPE
18732                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18733                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18734                    || '_' || pjp1_i.SUP_STATUS_CODE
18735                    || '_' || l_partial_mode,
18736                  'LW_N_Y__', to_number(null),
18737                           pjp1_i.ETC_LABOR_BRDN_COST) ETC_LABOR_BRDN_COST,
18738           decode(pjp1_i.RELATIONSHIP_TYPE
18739                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18740                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18741                    || '_' || pjp1_i.SUP_STATUS_CODE
18742                    || '_' || l_partial_mode,
18743                  'LW_N_Y__', to_number(null),
18744                           pjp1_i.ETC_EQUIP_BRDN_COST) ETC_EQUIP_BRDN_COST,
18745           decode(pjp1_i.RELATIONSHIP_TYPE
18746                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18747                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18748                    || '_' || pjp1_i.SUP_STATUS_CODE
18749                    || '_' || l_partial_mode,
18750                  'LW_N_Y__', to_number(null),
18751                           pjp1_i.ETC_BRDN_COST)       ETC_BRDN_COST,
18752           decode(pjp1_i.RELATIONSHIP_TYPE
18753                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18754                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18755                    || '_' || pjp1_i.SUP_STATUS_CODE
18756                    || '_' || l_partial_mode,
18757                  'LW_N_Y__', to_number(null),
18758                           pjp1_i.ETC_RAW_COST)        ETC_RAW_COST,
18759           decode(pjp1_i.RELATIONSHIP_TYPE
18760                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18761                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18762                    || '_' || pjp1_i.SUP_STATUS_CODE
18763                    || '_' || l_partial_mode,
18764                  'LW_N_Y__', to_number(null),
18765                           pjp1_i.ETC_LABOR_RAW_COST)  ETC_LABOR_RAW_COST,
18766           decode(pjp1_i.RELATIONSHIP_TYPE
18767                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
18768                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
18769                    || '_' || pjp1_i.SUP_STATUS_CODE
18770                    || '_' || l_partial_mode,
18771                  'LW_N_Y__', to_number(null),
18772                           pjp1_i.ETC_EQUIP_RAW_COST)  ETC_EQUIP_RAW_COST,
18773           pjp1_i.CUSTOM1,
18774           pjp1_i.CUSTOM2,
18775           pjp1_i.CUSTOM3,
18776           pjp1_i.CUSTOM4,
18777           pjp1_i.CUSTOM5,
18778           pjp1_i.CUSTOM6,
18779           pjp1_i.CUSTOM7,
18780           pjp1_i.CUSTOM8,
18781           pjp1_i.CUSTOM9,
18782           pjp1_i.CUSTOM10,
18783           pjp1_i.CUSTOM11,
18784           pjp1_i.CUSTOM12,
18785           pjp1_i.CUSTOM13,
18786           pjp1_i.CUSTOM14,
18787           pjp1_i.CUSTOM15
18788         from
18789           (
18790         select
18791           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18792                  pjp.INSERT_FLAG, 'Y')                INSERT_FLAG,
18793           pjp.RELATIONSHIP_TYPE,
18794           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18795                  null, sub_ver.STATUS_CODE)           SUB_STATUS_CODE,
18796           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18797                  null, sup_ver.STATUS_CODE)           SUP_STATUS_CODE,
18798           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18799                  null, sup_wpa.WP_ENABLE_VERSION_FLAG)SUP_VER_ENABLED,
18800           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18801                  null, decode(pjp.PLAN_VERSION_ID,
18802                               -1, prg.SUP_ID,
18803                               -3, prg.SUP_ID,
18804                               -4, prg.SUP_ID,
18805                                   null))              SUP_ID,
18806           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18807                  null, decode(pjp.PLAN_VERSION_ID,
18808                               -1, prg.SUP_EMT_ID,
18809                               -3, prg.SUP_EMT_ID,
18810                               -4, prg.SUP_EMT_ID,
18811                                   null))              SUP_EMT_ID,
18812           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18813                  null, decode(pjp.PLAN_VERSION_ID,
18814                               -1, prg.WP_FLAG,
18815                               -3, prg.WP_FLAG,
18816                               -4, prg.WP_FLAG,
18817                                   null))              SUP_WP_FLAG,
18818           p_worker_id                                 WORKER_ID,
18819           'W'                                         RECORD_TYPE,
18820           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18821                  l_level, prg.SUP_LEVEL)              PRG_LEVEL,
18822           pjp.LINE_TYPE,
18823           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18824                  pjp.PROJECT_ID, prg.SUP_PROJECT_ID)  PROJECT_ID,
18825           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18826                  pjp.PROJECT_ORG_ID,
18827                  prg.SUP_PROJECT_ORG_ID)              PROJECT_ORG_ID,
18828           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18829                  pjp.PROJECT_ORGANIZATION_ID,
18830                  prg.SUP_PROJECT_ORGANIZATION_ID)     PROJECT_ORGANIZATION_ID,
18831           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18832                  pjp.PROJECT_ELEMENT_ID,
18833                  prg.SUB_ROLLUP_ID)                   PROJECT_ELEMENT_ID,
18834           pjp.TIME_ID,
18835           pjp.PERIOD_TYPE_ID,
18836           pjp.CALENDAR_TYPE,
18837           pjp.RBS_AGGR_LEVEL,
18838           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18839                  pjp.WBS_ROLLUP_FLAG, 'N')            WBS_ROLLUP_FLAG,
18840           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18841                  pjp.PRG_ROLLUP_FLAG, 'Y')            PRG_ROLLUP_FLAG,
18842           pjp.CURR_RECORD_TYPE_ID,
18843           pjp.CURRENCY_CODE,
18844           pjp.RBS_ELEMENT_ID,
18845           pjp.RBS_VERSION_ID,
18846           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18847                  pjp.PLAN_VERSION_ID,
18848                  decode(pjp.PLAN_VERSION_ID,
18849                         -1, pjp.PLAN_VERSION_ID,
18850                         -2, pjp.PLAN_VERSION_ID,
18851                         -3, pjp.PLAN_VERSION_ID,
18852                         -4, pjp.PLAN_VERSION_ID,
18853                             wbs_hdr.PLAN_VERSION_ID)) PLAN_VERSION_ID,
18854           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
18855                  pjp.PLAN_TYPE_ID,
18856                  decode(pjp.PLAN_VERSION_ID,
18857                         -1, pjp.PLAN_TYPE_ID,
18858                         -2, pjp.PLAN_TYPE_ID,
18859                         -3, pjp.PLAN_TYPE_ID,
18860                         -4, pjp.PLAN_TYPE_ID,
18861                             wbs_hdr.PLAN_TYPE_ID))    PLAN_TYPE_ID,
18862           pjp.PLAN_TYPE_CODE,
18863           sum(pjp.RAW_COST)                           RAW_COST,
18864           sum(pjp.BRDN_COST)                          BRDN_COST,
18865           sum(pjp.REVENUE)                            REVENUE,
18866           sum(pjp.BILL_RAW_COST)                      BILL_RAW_COST,
18867           sum(pjp.BILL_BRDN_COST)                     BILL_BRDN_COST,
18868           sum(pjp.BILL_LABOR_RAW_COST)                BILL_LABOR_RAW_COST,
18869           sum(pjp.BILL_LABOR_BRDN_COST)               BILL_LABOR_BRDN_COST,
18870           sum(pjp.BILL_LABOR_HRS)                     BILL_LABOR_HRS,
18871           sum(pjp.EQUIPMENT_RAW_COST)                 EQUIPMENT_RAW_COST,
18872           sum(pjp.EQUIPMENT_BRDN_COST)                EQUIPMENT_BRDN_COST,
18873           sum(pjp.CAPITALIZABLE_RAW_COST)             CAPITALIZABLE_RAW_COST,
18874           sum(pjp.CAPITALIZABLE_BRDN_COST)            CAPITALIZABLE_BRDN_COST,
18875           sum(pjp.LABOR_RAW_COST)                     LABOR_RAW_COST,
18876           sum(pjp.LABOR_BRDN_COST)                    LABOR_BRDN_COST,
18877           sum(pjp.LABOR_HRS)                          LABOR_HRS,
18878           sum(pjp.LABOR_REVENUE)                      LABOR_REVENUE,
18879           sum(pjp.EQUIPMENT_HOURS)                    EQUIPMENT_HOURS,
18880           sum(pjp.BILLABLE_EQUIPMENT_HOURS)           BILLABLE_EQUIPMENT_HOURS,
18881           sum(pjp.SUP_INV_COMMITTED_COST)             SUP_INV_COMMITTED_COST,
18882           sum(pjp.PO_COMMITTED_COST)                  PO_COMMITTED_COST,
18883           sum(pjp.PR_COMMITTED_COST)                  PR_COMMITTED_COST,
18884           sum(pjp.OTH_COMMITTED_COST)                 OTH_COMMITTED_COST,
18885           sum(pjp.ACT_LABOR_HRS)                      ACT_LABOR_HRS,
18886           sum(pjp.ACT_EQUIP_HRS)                      ACT_EQUIP_HRS,
18887           sum(pjp.ACT_LABOR_BRDN_COST)                ACT_LABOR_BRDN_COST,
18888           sum(pjp.ACT_EQUIP_BRDN_COST)                ACT_EQUIP_BRDN_COST,
18889           sum(pjp.ACT_BRDN_COST)                      ACT_BRDN_COST,
18890           sum(pjp.ACT_RAW_COST)                       ACT_RAW_COST,
18891           sum(pjp.ACT_REVENUE)                        ACT_REVENUE,
18892           sum(pjp.ACT_LABOR_RAW_COST)                 ACT_LABOR_RAW_COST,
18893           sum(pjp.ACT_EQUIP_RAW_COST)                 ACT_EQUIP_RAW_COST,
18894           sum(pjp.ETC_LABOR_HRS)                      ETC_LABOR_HRS,
18895           sum(pjp.ETC_EQUIP_HRS)                      ETC_EQUIP_HRS,
18896           sum(pjp.ETC_LABOR_BRDN_COST)                ETC_LABOR_BRDN_COST,
18897           sum(pjp.ETC_EQUIP_BRDN_COST)                ETC_EQUIP_BRDN_COST,
18898           sum(pjp.ETC_BRDN_COST)                      ETC_BRDN_COST,
18899           sum(pjp.ETC_RAW_COST)                       ETC_RAW_COST,
18900           sum(pjp.ETC_LABOR_RAW_COST)                 ETC_LABOR_RAW_COST,
18901           sum(pjp.ETC_EQUIP_RAW_COST)                 ETC_EQUIP_RAW_COST,
18902           sum(pjp.CUSTOM1)                            CUSTOM1,
18903           sum(pjp.CUSTOM2)                            CUSTOM2,
18904           sum(pjp.CUSTOM3)                            CUSTOM3,
18905           sum(pjp.CUSTOM4)                            CUSTOM4,
18906           sum(pjp.CUSTOM5)                            CUSTOM5,
18907           sum(pjp.CUSTOM6)                            CUSTOM6,
18908           sum(pjp.CUSTOM7)                            CUSTOM7,
18909           sum(pjp.CUSTOM8)                            CUSTOM8,
18910           sum(pjp.CUSTOM9)                            CUSTOM9,
18911           sum(pjp.CUSTOM10)                           CUSTOM10,
18912           sum(pjp.CUSTOM11)                           CUSTOM11,
18913           sum(pjp.CUSTOM12)                           CUSTOM12,
18914           sum(pjp.CUSTOM13)                           CUSTOM13,
18915           sum(pjp.CUSTOM14)                           CUSTOM14,
18916           sum(pjp.CUSTOM15)                           CUSTOM15
18917         from
18918           (
18919           select /*+ index(wbs PA_XBS_DENORM_N2) parallel(pjp1) */ -- changed for bug 5927368
18920 		 -- get incremental task level amounts from source and
18921                  -- program rollup amounts from interim
18922             to_char(null)                             LINE_TYPE,
18923             wbs_hdr.WBS_VERSION_ID,
18924             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
18925             decode(wbs_hdr.WP_FLAG
18926                      || '_' || to_char(sign(pjp1.PLAN_VERSION_ID))
18927                      || '_' || nvl(fin_plan.INVERT_ID, 'PRJ'),
18928                    'N_1_PRJ', 'N',
18929                    'N_-1_PRG', 'N',
18930                    decode(top_slice.INVERT_ID,
18931                           'PRJ', 'Y',
18932                           decode(wbs.SUB_LEVEL,
18933                                  1, 'Y', 'N')))       PUSHUP_FLAG,
18934             decode(pjp1.RBS_AGGR_LEVEL,
18935                    'L', 'N',
18936                         decode(wbs_hdr.WP_FLAG
18937                                  || '_' || to_char(sign(pjp1.PLAN_VERSION_ID))
18938                                  || '_' || fin_plan.INVERT_ID,
18939                                'N_1_PRG', decode(top_slice.INVERT_ID,
18940                                                  'PRJ', 'Y',
18941                                                  decode(wbs.SUB_LEVEL,
18942                                                         1, 'Y', 'N')),
18943                                'N_-1_PRG', 'N',
18944                                decode(wbs_hdr.WP_FLAG
18945                                         || '_' || fin_plan.INVERT_ID
18946                                         || '_' || fin_plan.CB
18947                                         || '_' || fin_plan.CO
18948                                         || '_'
18949                                         || to_char(fin_plan.PLAN_VERSION_ID),
18950                                       'N_PRJ_Y_Y_-4', 'N',
18951                                                       'Y'))
18952                   )                                   INSERT_FLAG,
18953             pjp1.PROJECT_ID,
18954             pjp1.PROJECT_ORG_ID,
18955             pjp1.PROJECT_ORGANIZATION_ID,
18956             decode(top_slice.INVERT_ID,
18957                    'PRJ', prg.SUP_EMT_ID,
18958                           decode(wbs.SUB_LEVEL,
18959                                  1, prg.SUP_EMT_ID,
18960                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
18961             pjp1.TIME_ID,
18962             pjp1.PERIOD_TYPE_ID,
18963             pjp1.CALENDAR_TYPE,
18964             pjp1.RBS_AGGR_LEVEL,
18965             'Y'                                       WBS_ROLLUP_FLAG,
18966             pjp1.PRG_ROLLUP_FLAG,
18967             pjp1.CURR_RECORD_TYPE_ID,
18968             pjp1.CURRENCY_CODE,
18969             pjp1.RBS_ELEMENT_ID,
18970             pjp1.RBS_VERSION_ID,
18971             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
18972                    'N_PRG', fin_plan.PLAN_VERSION_ID,
18973                             pjp1.PLAN_VERSION_ID)     PLAN_VERSION_ID,
18974             pjp1.PLAN_TYPE_ID,
18975             pjp1.PLAN_TYPE_CODE,
18976             pjp1.RAW_COST,
18977             pjp1.BRDN_COST,
18978             pjp1.REVENUE,
18979             pjp1.BILL_RAW_COST,
18980             pjp1.BILL_BRDN_COST,
18981             pjp1.BILL_LABOR_RAW_COST,
18982             pjp1.BILL_LABOR_BRDN_COST,
18983             pjp1.BILL_LABOR_HRS,
18984             pjp1.EQUIPMENT_RAW_COST,
18985             pjp1.EQUIPMENT_BRDN_COST,
18986             pjp1.CAPITALIZABLE_RAW_COST,
18987             pjp1.CAPITALIZABLE_BRDN_COST,
18988             pjp1.LABOR_RAW_COST,
18989             pjp1.LABOR_BRDN_COST,
18990             pjp1.LABOR_HRS,
18991             pjp1.LABOR_REVENUE,
18992             pjp1.EQUIPMENT_HOURS,
18993             pjp1.BILLABLE_EQUIPMENT_HOURS,
18994             pjp1.SUP_INV_COMMITTED_COST,
18995             pjp1.PO_COMMITTED_COST,
18996             pjp1.PR_COMMITTED_COST,
18997             pjp1.OTH_COMMITTED_COST,
18998             pjp1.ACT_LABOR_HRS,
18999             pjp1.ACT_EQUIP_HRS,
19000             pjp1.ACT_LABOR_BRDN_COST,
19001             pjp1.ACT_EQUIP_BRDN_COST,
19002             pjp1.ACT_BRDN_COST,
19003             pjp1.ACT_RAW_COST,
19004             pjp1.ACT_REVENUE,
19005             pjp1.ACT_LABOR_RAW_COST,
19006             pjp1.ACT_EQUIP_RAW_COST,
19007             pjp1.ETC_LABOR_HRS,
19008             pjp1.ETC_EQUIP_HRS,
19009             pjp1.ETC_LABOR_BRDN_COST,
19010             pjp1.ETC_EQUIP_BRDN_COST,
19011             pjp1.ETC_BRDN_COST,
19012             pjp1.ETC_RAW_COST,
19013             pjp1.ETC_LABOR_RAW_COST,
19014             pjp1.ETC_EQUIP_RAW_COST,
19015             pjp1.CUSTOM1,
19016             pjp1.CUSTOM2,
19017             pjp1.CUSTOM3,
19018             pjp1.CUSTOM4,
19019             pjp1.CUSTOM5,
19020             pjp1.CUSTOM6,
19021             pjp1.CUSTOM7,
19022             pjp1.CUSTOM8,
19023             pjp1.CUSTOM9,
19024             pjp1.CUSTOM10,
19025             pjp1.CUSTOM11,
19026             pjp1.CUSTOM12,
19027             pjp1.CUSTOM13,
19028             pjp1.CUSTOM14,
19029             pjp1.CUSTOM15
19030           from
19031             PJI_FP_AGGR_PJP1   pjp1,
19032             PJI_PJP_WBS_HEADER wbs_hdr,
19033             PA_XBS_DENORM      wbs,
19034             PJI_XBS_DENORM     prg,
19035             (
19036               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
19037               from DUAL union all
19038               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
19039               from DUAL union all
19040               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
19041               from DUAL union all
19042               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
19043               from DUAL union all
19044               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
19045               from DUAL union all
19046               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
19047               from DUAL union all
19048               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
19049               from DUAL union all
19050               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
19051               from DUAL
19052             ) fin_plan,
19053             (
19054               select 1     WBS_SUP_LEVEL,
19055                      1     WBS_SUB_LEVEL,
19056                      'PRJ' INVERT_ID
19057               from   DUAL
19058               union all
19059               select 1     WBS_SUP_LEVEL,
19060                      1     WBS_SUB_LEVEL,
19061                      'WBS' INVERT_ID
19062               from   DUAL
19063             ) top_slice
19064           where
19065             prg.STRUCT_TYPE         =  'PRG'                       and
19066             prg.SUP_LEVEL           =  l_level                     and
19067             prg.SUB_LEVEL           =  l_level                     and
19068             wbs.STRUCT_TYPE         =  'WBS'                       and
19069             ((wbs.SUP_LEVEL = 1 and
19070               wbs.SUB_LEVEL = 1) or
19071              (wbs.SUP_LEVEL <> wbs.SUB_LEVEL))                     and
19072             wbs.STRUCT_VERSION_ID   =  prg.SUP_ID                  and
19073             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
19074             pjp1.WORKER_ID          =  p_worker_id                 and
19075             pjp1.PRG_LEVEL          in (0, l_level)                and
19076             pjp1.RBS_AGGR_LEVEL     in ('T', 'L')                  and
19077             pjp1.WBS_ROLLUP_FLAG    =  'N'                         and
19078             pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                  and
19079             pjp1.PROJECT_ID         =  wbs_hdr.PROJECT_ID          and
19080             pjp1.PLAN_VERSION_ID    =  wbs_hdr.PLAN_VERSION_ID     and
19081             pjp1.PLAN_TYPE_CODE     =  wbs_hdr.PLAN_TYPE_CODE      and
19082             decode(pjp1.PLAN_VERSION_ID,
19083                    -3, pjp1.PLAN_TYPE_ID,
19084                    -4, pjp1.PLAN_TYPE_ID,
19085                        -1)          =  decode(pjp1.PLAN_VERSION_ID,
19086                                               -3, wbs_hdr.PLAN_TYPE_ID,
19087                                               -4, wbs_hdr.PLAN_TYPE_ID,
19088                                                   -1)              and
19089             wbs.STRUCT_VERSION_ID   =  wbs_hdr.WBS_VERSION_ID      and
19090             pjp1.PROJECT_ELEMENT_ID =  wbs.SUB_EMT_ID              and
19091             wbs_hdr.CB_FLAG         =  fin_plan.CB             (+) and
19092             wbs_hdr.CO_FLAG         =  fin_plan.CO             (+) and
19093             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
19094             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+)
19095           union all
19096           select /*+ parallel(pjp1) */          -- changed for bug 5927368
19097 		 -- get incremental project level amounts from source
19098             to_char(null)                             LINE_TYPE,
19099             wbs_hdr.WBS_VERSION_ID,
19100             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
19101             'Y'                                       PUSHUP_FLAG,
19102             decode(pjp1.RBS_AGGR_LEVEL,
19103                    'L', 'N',
19104                         decode(fin_plan.PLAN_VERSION_ID,
19105                                null, 'N', 'Y'))       INSERT_FLAG,
19106             pjp1.PROJECT_ID,
19107             pjp1.PROJECT_ORG_ID,
19108             pjp1.PROJECT_ORGANIZATION_ID,
19109             pjp1.PROJECT_ELEMENT_ID,
19110             pjp1.TIME_ID,
19111             pjp1.PERIOD_TYPE_ID,
19112             pjp1.CALENDAR_TYPE,
19113             pjp1.RBS_AGGR_LEVEL,
19114             'Y'                                       WBS_ROLLUP_FLAG,
19115             pjp1.PRG_ROLLUP_FLAG,
19116             pjp1.CURR_RECORD_TYPE_ID,
19117             pjp1.CURRENCY_CODE,
19118             pjp1.RBS_ELEMENT_ID,
19119             pjp1.RBS_VERSION_ID,
19120             decode(wbs_hdr.WP_FLAG,
19121                    'N', decode(pjp1.PLAN_VERSION_ID,
19122                                -1, pjp1.PLAN_VERSION_ID,
19123                                -2, pjp1.PLAN_VERSION_ID,
19124                                -3, pjp1.PLAN_VERSION_ID, -- won't exist
19125                                -4, pjp1.PLAN_VERSION_ID, -- won't exist
19126                                    fin_plan.PLAN_VERSION_ID),
19127                         pjp1.PLAN_VERSION_ID)         PLAN_VERSION_ID,
19128             pjp1.PLAN_TYPE_ID,
19129             pjp1.PLAN_TYPE_CODE,
19130             pjp1.RAW_COST,
19131             pjp1.BRDN_COST,
19132             pjp1.REVENUE,
19133             pjp1.BILL_RAW_COST,
19134             pjp1.BILL_BRDN_COST,
19135             pjp1.BILL_LABOR_RAW_COST,
19136             pjp1.BILL_LABOR_BRDN_COST,
19137             pjp1.BILL_LABOR_HRS,
19138             pjp1.EQUIPMENT_RAW_COST,
19139             pjp1.EQUIPMENT_BRDN_COST,
19140             pjp1.CAPITALIZABLE_RAW_COST,
19141             pjp1.CAPITALIZABLE_BRDN_COST,
19142             pjp1.LABOR_RAW_COST,
19143             pjp1.LABOR_BRDN_COST,
19144             pjp1.LABOR_HRS,
19145             pjp1.LABOR_REVENUE,
19146             pjp1.EQUIPMENT_HOURS,
19147             pjp1.BILLABLE_EQUIPMENT_HOURS,
19148             pjp1.SUP_INV_COMMITTED_COST,
19149             pjp1.PO_COMMITTED_COST,
19150             pjp1.PR_COMMITTED_COST,
19151             pjp1.OTH_COMMITTED_COST,
19152             pjp1.ACT_LABOR_HRS,
19153             pjp1.ACT_EQUIP_HRS,
19154             pjp1.ACT_LABOR_BRDN_COST,
19155             pjp1.ACT_EQUIP_BRDN_COST,
19156             pjp1.ACT_BRDN_COST,
19157             pjp1.ACT_RAW_COST,
19158             pjp1.ACT_REVENUE,
19159             pjp1.ACT_LABOR_RAW_COST,
19160             pjp1.ACT_EQUIP_RAW_COST,
19161             pjp1.ETC_LABOR_HRS,
19162             pjp1.ETC_EQUIP_HRS,
19163             pjp1.ETC_LABOR_BRDN_COST,
19164             pjp1.ETC_EQUIP_BRDN_COST,
19165             pjp1.ETC_BRDN_COST,
19166             pjp1.ETC_RAW_COST,
19167             pjp1.ETC_LABOR_RAW_COST,
19168             pjp1.ETC_EQUIP_RAW_COST,
19169             pjp1.CUSTOM1,
19170             pjp1.CUSTOM2,
19171             pjp1.CUSTOM3,
19172             pjp1.CUSTOM4,
19173             pjp1.CUSTOM5,
19174             pjp1.CUSTOM6,
19175             pjp1.CUSTOM7,
19176             pjp1.CUSTOM8,
19177             pjp1.CUSTOM9,
19178             pjp1.CUSTOM10,
19179             pjp1.CUSTOM11,
19180             pjp1.CUSTOM12,
19181             pjp1.CUSTOM13,
19182             pjp1.CUSTOM14,
19183             pjp1.CUSTOM15
19184           from
19185             PJI_FP_AGGR_PJP1   pjp1,
19186             PJI_PJP_WBS_HEADER wbs_hdr,
19187             PJI_XBS_DENORM     prg,
19188             (
19189               select 'Y' CB_FLAG,
19190                      'N' CO_FLAG,
19191                      -3  PLAN_VERSION_ID
19192               from DUAL union all
19193               select 'N' CB_FLAG,
19194                      'Y' CO_FLAG,
19195                      -4  PLAN_VERSION_ID
19196               from DUAL union all
19197               select 'Y' CB_FLAG,
19198                      'Y' CO_FLAG,
19199                      -3  PLAN_VERSION_ID
19200               from DUAL union all
19201               select 'Y' CB_FLAG,
19202                      'Y' CO_FLAG,
19203                      -4  PLAN_VERSION_ID
19204               from DUAL
19205             ) fin_plan
19206           where
19207             prg.STRUCT_TYPE         = 'PRG'                    and
19208             prg.SUP_LEVEL           = l_level                  and
19209             prg.SUB_LEVEL           = l_level                  and
19210             pjp1.WORKER_ID          = p_worker_id              and
19211             pjp1.PROJECT_ID         = prg.SUP_PROJECT_ID       and
19212             pjp1.PROJECT_ELEMENT_ID = prg.SUP_EMT_ID           and
19213             pjp1.PRG_LEVEL          = 0                        and
19214             pjp1.RBS_AGGR_LEVEL     in ('T', 'L')              and
19215             pjp1.WBS_ROLLUP_FLAG    = 'N'                      and
19216             pjp1.PRG_ROLLUP_FLAG    = 'N'                      and
19217             wbs_hdr.PROJECT_ID      = pjp1.PROJECT_ID          and
19218             wbs_hdr.PLAN_VERSION_ID = pjp1.PLAN_VERSION_ID     and
19219             wbs_hdr.PLAN_TYPE_CODE  = pjp1.PLAN_TYPE_CODE      and
19220             decode(wbs_hdr.WP_FLAG,
19221                    'N', decode(pjp1.PLAN_VERSION_ID,
19222                                -1, 'Y',
19223                                -2, 'Y',
19224                                -3, 'Y', -- won't exist
19225                                -4, 'Y', -- won't exist
19226                                    decode(wbs_hdr.CB_FLAG || '_' ||
19227                                           wbs_hdr.CO_FLAG,
19228                                           'Y_Y', 'Y',
19229                                           'N_Y', 'Y',
19230                                           'Y_N', 'Y',
19231                                                  'N')),
19232                         'Y')        =  'Y'                     and
19233             wbs_hdr.WBS_VERSION_ID  = prg.SUP_ID               and
19234             wbs_hdr.CB_FLAG         = fin_plan.CB_FLAG     (+) and
19235             wbs_hdr.CO_FLAG         = fin_plan.CO_FLAG     (+)
19236           union all
19237           select /*+ ordered
19238                      index(fpr PJI_FP_XBS_ACCUM_F_N1) */
19239                  -- get delta task level amounts from Reporting Lines
19240             to_char(null)                             LINE_TYPE,
19241             wbs_hdr.WBS_VERSION_ID,
19242             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
19243             decode(log.EVENT_TYPE,
19244                    'WBS_CHANGE', 'Y',
19245                    'WBS_PUBLISH', 'N')                PUSHUP_FLAG,
19246             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
19247                    'N_PRG', decode(top_slice.INVERT_ID,
19248                                    'PRJ', 'Y',
19249                                    decode(wbs.SUB_LEVEL,
19250                                           1, 'Y', 'N')),
19251                    decode(wbs_hdr.WP_FLAG
19252                             || '_' || fin_plan.INVERT_ID
19253                             || '_' || fin_plan.CB
19254                             || '_' || fin_plan.CO
19255                             || '_' || to_char(fin_plan.PLAN_VERSION_ID),
19256                           'N_PRJ_Y_Y_-4', 'N',
19257                                           'Y'))       INSERT_FLAG,
19258             fpr.PROJECT_ID,
19259             fpr.PROJECT_ORG_ID,
19260             fpr.PROJECT_ORGANIZATION_ID,
19261             decode(top_slice.INVERT_ID,
19262                    'PRJ', prg.SUP_EMT_ID,
19263                           decode(wbs.SUB_LEVEL,
19264                                  1, prg.SUP_EMT_ID,
19265                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
19266             fpr.TIME_ID,
19267             fpr.PERIOD_TYPE_ID,
19268             fpr.CALENDAR_TYPE,
19269             fpr.RBS_AGGR_LEVEL,
19270             'Y'                                       WBS_ROLLUP_FLAG,
19271             fpr.PRG_ROLLUP_FLAG,
19272             fpr.CURR_RECORD_TYPE_ID,
19273             fpr.CURRENCY_CODE,
19274             fpr.RBS_ELEMENT_ID,
19275             fpr.RBS_VERSION_ID,
19276             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
19277                    'N_PRG', fin_plan.PLAN_VERSION_ID,
19278                             fpr.PLAN_VERSION_ID)      PLAN_VERSION_ID,
19279             fpr.PLAN_TYPE_ID,
19280             fpr.PLAN_TYPE_CODE,
19281             wbs.SIGN * fpr.RAW_COST                   RAW_COST,
19282             wbs.SIGN * fpr.BRDN_COST                  BRDN_COST,
19283             wbs.SIGN * fpr.REVENUE                    REVENUE,
19284             wbs.SIGN * fpr.BILL_RAW_COST              BILL_RAW_COST,
19285             wbs.SIGN * fpr.BILL_BRDN_COST             BILL_BRDN_COST,
19286             wbs.SIGN * fpr.BILL_LABOR_RAW_COST        BILL_LABOR_RAW_COST,
19287             wbs.SIGN * fpr.BILL_LABOR_BRDN_COST       BILL_LABOR_BRDN_COST,
19288             wbs.SIGN * fpr.BILL_LABOR_HRS             BILL_LABOR_HRS,
19289             wbs.SIGN * fpr.EQUIPMENT_RAW_COST         EQUIPMENT_RAW_COST,
19290             wbs.SIGN * fpr.EQUIPMENT_BRDN_COST        EQUIPMENT_BRDN_COST,
19291             wbs.SIGN * fpr.CAPITALIZABLE_RAW_COST     CAPITALIZABLE_RAW_COST,
19292             wbs.SIGN * fpr.CAPITALIZABLE_BRDN_COST    CAPITALIZABLE_BRDN_COST,
19293             wbs.SIGN * fpr.LABOR_RAW_COST             LABOR_RAW_COST,
19294             wbs.SIGN * fpr.LABOR_BRDN_COST            LABOR_BRDN_COST,
19295             wbs.SIGN * fpr.LABOR_HRS                  LABOR_HRS,
19296             wbs.SIGN * fpr.LABOR_REVENUE              LABOR_REVENUE,
19297             wbs.SIGN * fpr.EQUIPMENT_HOURS            EQUIPMENT_HOURS,
19298             wbs.SIGN * fpr.BILLABLE_EQUIPMENT_HOURS   BILLABLE_EQUIPMENT_HOURS,
19299             wbs.SIGN * fpr.SUP_INV_COMMITTED_COST     SUP_INV_COMMITTED_COST,
19300             wbs.SIGN * fpr.PO_COMMITTED_COST          PO_COMMITTED_COST,
19301             wbs.SIGN * fpr.PR_COMMITTED_COST          PR_COMMITTED_COST,
19302             wbs.SIGN * fpr.OTH_COMMITTED_COST         OTH_COMMITTED_COST,
19303             wbs.SIGN * fpr.ACT_LABOR_HRS              ACT_LABOR_HRS,
19304             wbs.SIGN * fpr.ACT_EQUIP_HRS              ACT_EQUIP_HRS,
19305             wbs.SIGN * fpr.ACT_LABOR_BRDN_COST        ACT_LABOR_BRDN_COST,
19306             wbs.SIGN * fpr.ACT_EQUIP_BRDN_COST        ACT_EQUIP_BRDN_COST,
19307             wbs.SIGN * fpr.ACT_BRDN_COST              ACT_BRDN_COST,
19308             wbs.SIGN * fpr.ACT_RAW_COST               ACT_RAW_COST,
19309             wbs.SIGN * fpr.ACT_REVENUE                ACT_REVENUE,
19310             wbs.SIGN * fpr.ACT_LABOR_RAW_COST         ACT_LABOR_RAW_COST,
19311             wbs.SIGN * fpr.ACT_EQUIP_RAW_COST         ACT_EQUIP_RAW_COST,
19312             wbs.SIGN * fpr.ETC_LABOR_HRS              ETC_LABOR_HRS,
19313             wbs.SIGN * fpr.ETC_EQUIP_HRS              ETC_EQUIP_HRS,
19314             wbs.SIGN * fpr.ETC_LABOR_BRDN_COST        ETC_LABOR_BRDN_COST,
19315             wbs.SIGN * fpr.ETC_EQUIP_BRDN_COST        ETC_EQUIP_BRDN_COST,
19316             wbs.SIGN * fpr.ETC_BRDN_COST              ETC_BRDN_COST,
19317             wbs.SIGN * fpr.ETC_RAW_COST               ETC_RAW_COST,
19318             wbs.SIGN * fpr.ETC_LABOR_RAW_COST         ETC_LABOR_RAW_COST,
19319             wbs.SIGN * fpr.ETC_EQUIP_RAW_COST         ETC_EQUIP_RAW_COST,
19320             wbs.SIGN * fpr.CUSTOM1                    CUSTOM1,
19321             wbs.SIGN * fpr.CUSTOM2                    CUSTOM2,
19322             wbs.SIGN * fpr.CUSTOM3                    CUSTOM3,
19323             wbs.SIGN * fpr.CUSTOM4                    CUSTOM4,
19324             wbs.SIGN * fpr.CUSTOM5                    CUSTOM5,
19325             wbs.SIGN * fpr.CUSTOM6                    CUSTOM6,
19326             wbs.SIGN * fpr.CUSTOM7                    CUSTOM7,
19327             wbs.SIGN * fpr.CUSTOM8                    CUSTOM8,
19328             wbs.SIGN * fpr.CUSTOM9                    CUSTOM9,
19329             wbs.SIGN * fpr.CUSTOM10                   CUSTOM10,
19330             wbs.SIGN * fpr.CUSTOM11                   CUSTOM11,
19331             wbs.SIGN * fpr.CUSTOM12                   CUSTOM12,
19332             wbs.SIGN * fpr.CUSTOM13                   CUSTOM13,
19333             wbs.SIGN * fpr.CUSTOM14                   CUSTOM14,
19334             wbs.SIGN * fpr.CUSTOM15                   CUSTOM15
19335           from
19336             PJI_PA_PROJ_EVENTS_LOG log,
19337             PJI_PJP_WBS_HEADER     wbs_hdr,
19338             PJI_XBS_DENORM_DELTA   wbs,
19339             PJI_XBS_DENORM         prg,
19340             PJI_FP_XBS_ACCUM_F     fpr,
19341             (
19342               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
19343               from DUAL union all
19344               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
19345               from DUAL union all
19346               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
19347               from DUAL union all
19348               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
19349               from DUAL union all
19350               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
19351               from DUAL union all
19352               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
19353               from DUAL union all
19354               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
19355               from DUAL union all
19356               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
19357               from DUAL
19358             ) fin_plan,
19359             (
19360               select 1     WBS_SUP_LEVEL,
19361                      1     WBS_SUB_LEVEL,
19362                      'PRJ' INVERT_ID
19363               from   DUAL
19364               union all
19365               select 1     WBS_SUP_LEVEL,
19366                      1     WBS_SUB_LEVEL,
19367                      'WBS' INVERT_ID
19368               from   DUAL
19369             ) top_slice
19370           where
19371             prg.STRUCT_TYPE         =  'PRG'                       and
19372             prg.SUP_LEVEL           =  l_level                     and
19373             prg.SUB_LEVEL           =  l_level                     and
19374             wbs.WORKER_ID           =  p_worker_id                 and
19375             wbs.STRUCT_TYPE         =  'WBS'                       and
19376             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
19377             log.WORKER_ID           =  p_worker_id                 and
19378             log.EVENT_ID            =  wbs.EVENT_ID                and
19379             log.EVENT_TYPE          in ('WBS_CHANGE',
19380                                         'WBS_PUBLISH')             and
19381             wbs_hdr.PROJECT_ID      =  log.ATTRIBUTE1              and
19382             wbs_hdr.PLAN_VERSION_ID =  log.ATTRIBUTE3              and
19383             wbs_hdr.WBS_VERSION_ID  =  wbs.STRUCT_VERSION_ID       and
19384             wbs_hdr.PROJECT_ID      =  prg.SUP_PROJECT_ID          and
19385             wbs_hdr.WBS_VERSION_ID  =  prg.SUP_ID                  and
19386             fpr.RBS_AGGR_LEVEL      =  'T'                         and
19387             fpr.WBS_ROLLUP_FLAG     =  'N'                         and
19388             fpr.PRG_ROLLUP_FLAG     in ('Y', 'N')                  and
19389             fpr.PROJECT_ID          =  wbs.SUP_PROJECT_ID          and
19390             fpr.PROJECT_ELEMENT_ID  =  wbs.SUB_EMT_ID              and
19391             fpr.PROJECT_ID          =  wbs_hdr.PROJECT_ID          and
19392             fpr.PLAN_VERSION_ID     =  wbs_hdr.PLAN_VERSION_ID     and
19393             fpr.PLAN_TYPE_CODE      =  wbs_hdr.PLAN_TYPE_CODE      and
19394             decode(fpr.PLAN_VERSION_ID,
19395                    -3, fpr.PLAN_TYPE_ID,
19396                    -4, fpr.PLAN_TYPE_ID,
19397                        -1)          =  decode(fpr.PLAN_VERSION_ID,
19398                                               -3, wbs_hdr.PLAN_TYPE_ID,
19399                                               -4, wbs_hdr.PLAN_TYPE_ID,
19400                                                   -1)              and
19401             wbs_hdr.CB_FLAG         =  fin_plan.CB             (+) and
19402             wbs_hdr.CO_FLAG         =  fin_plan.CO             (+) and
19403             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
19404             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+) and
19405             (wbs.SUP_LEVEL <> wbs.SUB_LEVEL or
19406              (wbs.SUP_LEVEL = 1 and
19407               wbs.SUB_LEVEL = 1))
19408           ) pjp,
19409           (
19410           select /*+ ordered */
19411             prg.SUP_PROJECT_ID,
19412             map.PROJECT_ORG_ID               SUP_PROJECT_ORG_ID,
19413             map.PROJECT_ORGANIZATION_ID      SUP_PROJECT_ORGANIZATION_ID,
19414             prg.SUP_ID,
19415             prg.SUP_EMT_ID,
19416             prg.SUP_LEVEL,
19417             prg.SUB_ID,
19418             prg.SUB_EMT_ID,
19419             prg.SUB_ROLLUP_ID,
19420             invert.INVERT_VALUE              RELATIONSHIP_TYPE,
19421             decode(prg.RELATIONSHIP_TYPE,
19422                    'LW', 'Y',
19423                    'LF', 'N')                WP_FLAG,
19424             'Y'                              PUSHUP_FLAG
19425           from
19426             PJI_PJP_PROJ_BATCH_MAP map,
19427             PJI_XBS_DENORM prg,
19428             (
19429               select 'LF' INVERT_ID, 'LF' INVERT_VALUE from dual union all
19430               select 'LW' INVERT_ID, 'LW' INVERT_VALUE from dual union all
19431               select 'A'  INVERT_ID, 'LF' INVERT_VALUE from dual union all
19432               select 'A'  INVERT_ID, 'LW' INVERT_VALUE from dual
19433             ) invert,
19434             PJI_XBS_DENORM_DELTA prg_delta
19435           where
19436             prg.STRUCT_TYPE               = 'PRG'                           and
19437             prg.SUB_ROLLUP_ID             is not null                       and
19438             prg.SUB_LEVEL                 = l_level                         and
19439             map.WORKER_ID                 = p_worker_id                     and
19440             map.PROJECT_ID                = prg.SUP_PROJECT_ID              and
19441             decode(prg.SUB_LEVEL,
19442                    prg.SUP_LEVEL, 'A',
19443                    prg.RELATIONSHIP_TYPE) = invert.INVERT_ID                and
19444             p_worker_id                   = prg_delta.WORKER_ID         (+) and
19445             prg.STRUCT_TYPE               = prg_delta.STRUCT_TYPE       (+) and
19446             prg.SUP_PROJECT_ID            = prg_delta.SUP_PROJECT_ID    (+) and
19447             prg.SUP_LEVEL                 = prg_delta.SUP_LEVEL         (+) and
19448             prg.SUP_ID                    = prg_delta.SUP_ID            (+) and
19449             prg.SUB_LEVEL                 = prg_delta.SUB_LEVEL         (+) and
19450             prg.SUB_ID                    = prg_delta.SUB_ID            (+) and
19451             prg.RELATIONSHIP_TYPE         = prg_delta.RELATIONSHIP_TYPE (+) and
19452             -1                            = prg_delta.SIGN              (+) and
19453             prg_delta.SUP_PROJECT_ID      is null
19454           )                          prg,
19455           PJI_PJP_WBS_HEADER         wbs_hdr,
19456           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
19457           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
19458           PA_PROJ_WORKPLAN_ATTR      sup_wpa
19459         where
19460           pjp.PROJECT_ID         = sub_ver.PROJECT_ID                (+) and
19461           pjp.WBS_VERSION_ID     = sub_ver.ELEMENT_VERSION_ID        (+) and
19462           'STRUCTURE_PUBLISHED'  = sub_ver.STATUS_CODE               (+) and
19463           pjp.WBS_VERSION_ID     = prg.SUB_ID                        (+) and
19464           pjp.RELATIONSHIP_TYPE  = prg.RELATIONSHIP_TYPE             (+) and
19465           pjp.PUSHUP_FLAG        = prg.PUSHUP_FLAG                   (+) and
19466           prg.SUP_PROJECT_ID     = wbs_hdr.PROJECT_ID                (+) and
19467           prg.SUP_ID             = wbs_hdr.WBS_VERSION_ID            (+) and
19468           prg.WP_FLAG            = wbs_hdr.WP_FLAG                   (+) and
19469           'Y'                    = wbs_hdr.WP_FLAG                   (+) and
19470           wbs_hdr.PROJECT_ID     = sup_ver.PROJECT_ID                (+) and
19471           wbs_hdr.WBS_VERSION_ID = sup_ver.ELEMENT_VERSION_ID        (+) and
19472           'STRUCTURE_PUBLISHED'  = sup_ver.STATUS_CODE               (+) and
19473           'Y'                    = sup_ver.LATEST_EFF_PUBLISHED_FLAG (+) and
19474           prg.SUP_EMT_ID         = sup_wpa.PROJ_ELEMENT_ID           (+)
19475         group by
19476           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
19477                  pjp.INSERT_FLAG, 'Y'),
19478           pjp.RELATIONSHIP_TYPE,
19479           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
19480                  null, sub_ver.STATUS_CODE),
19481           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
19482                  null, sup_ver.STATUS_CODE),
19483           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
19484                  null, sup_wpa.WP_ENABLE_VERSION_FLAG),
19485           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
19486                  null, decode(pjp.PLAN_VERSION_ID,
19487                               -1, prg.SUP_ID,
19488                               -3, prg.SUP_ID,
19489                               -4, prg.SUP_ID,
19490                                   null)),
19491           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
19492                  null, decode(pjp.PLAN_VERSION_ID,
19493                               -1, prg.SUP_EMT_ID,
19494                               -3, prg.SUP_EMT_ID,
19495                               -4, prg.SUP_EMT_ID,
19496                                   null)),
19497           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
19498                  null, decode(pjp.PLAN_VERSION_ID,
19499                               -1, prg.WP_FLAG,
19500                               -3, prg.WP_FLAG,
19501                               -4, prg.WP_FLAG,
19502                                   null)),
19503           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
19504                  l_level, prg.SUP_LEVEL),
19505           pjp.LINE_TYPE,
19506           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
19507                  pjp.PROJECT_ID, prg.SUP_PROJECT_ID),
19508           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
19509                  pjp.PROJECT_ORG_ID,
19510                  prg.SUP_PROJECT_ORG_ID),
19511           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
19512                  pjp.PROJECT_ORGANIZATION_ID,
19513                  prg.SUP_PROJECT_ORGANIZATION_ID),
19514           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
19515                  pjp.PROJECT_ELEMENT_ID,
19516                  prg.SUB_ROLLUP_ID),
19517           pjp.TIME_ID,
19518           pjp.PERIOD_TYPE_ID,
19519           pjp.CALENDAR_TYPE,
19520           pjp.RBS_AGGR_LEVEL,
19521           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
19522                  pjp.WBS_ROLLUP_FLAG, 'N'),
19523           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
19524                  pjp.PRG_ROLLUP_FLAG, 'Y'),
19525           pjp.CURR_RECORD_TYPE_ID,
19526           pjp.CURRENCY_CODE,
19527           pjp.RBS_ELEMENT_ID,
19528           pjp.RBS_VERSION_ID,
19529           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
19530                  pjp.PLAN_VERSION_ID,
19531                  decode(pjp.PLAN_VERSION_ID,
19532                         -1, pjp.PLAN_VERSION_ID,
19533                         -2, pjp.PLAN_VERSION_ID,
19534                         -3, pjp.PLAN_VERSION_ID,
19535                         -4, pjp.PLAN_VERSION_ID,
19536                             wbs_hdr.PLAN_VERSION_ID)),
19537           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
19538                  pjp.PLAN_TYPE_ID,
19539                  decode(pjp.PLAN_VERSION_ID,
19540                         -1, pjp.PLAN_TYPE_ID,
19541                         -2, pjp.PLAN_TYPE_ID,
19542                         -3, pjp.PLAN_TYPE_ID,
19543                         -4, pjp.PLAN_TYPE_ID,
19544                             wbs_hdr.PLAN_TYPE_ID)),
19545           pjp.PLAN_TYPE_CODE
19546           )                          pjp1_i,
19547           PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
19548           PA_PROJ_WORKPLAN_ATTR      sup_wpa
19549         where
19550           pjp1_i.INSERT_FLAG  = 'Y'                                and
19551           pjp1_i.PROJECT_ID   = sup_fin_ver.PROJECT_ID         (+) and
19552           pjp1_i.SUP_ID       = sup_fin_ver.ELEMENT_VERSION_ID (+) and
19553           'STRUCTURE_WORKING' = sup_fin_ver.STATUS_CODE        (+) and
19554           pjp1_i.SUP_EMT_ID   = sup_wpa.PROJ_ELEMENT_ID        (+) and
19555           'N'                 = sup_wpa.WP_ENABLE_VERSION_FLAG (+) and
19556           (pjp1_i.SUP_ID is null or
19557            (pjp1_i.SUP_ID is not null and
19558             (sup_fin_ver.PROJECT_ID is not null or
19559              sup_wpa.PROJ_ELEMENT_ID is not null)));
19560     elsif (p_worker_id =10) then
19561       -- Query for Partition 10
19562 
19563         insert /*+ parallel(PJI_FP_AGGR_PJP1) */
19564                    into PJI_FP_AGGR_PJP1 partition(P10)
19565 	(
19566           WORKER_ID,
19567           RECORD_TYPE,
19568           PRG_LEVEL,
19569           LINE_TYPE,
19570           PROJECT_ID,
19571           PROJECT_ORG_ID,
19572           PROJECT_ORGANIZATION_ID,
19573           PROJECT_ELEMENT_ID,
19574           TIME_ID,
19575           PERIOD_TYPE_ID,
19576           CALENDAR_TYPE,
19577           RBS_AGGR_LEVEL,
19578           WBS_ROLLUP_FLAG,
19579           PRG_ROLLUP_FLAG,
19580           CURR_RECORD_TYPE_ID,
19581           CURRENCY_CODE,
19582           RBS_ELEMENT_ID,
19583           RBS_VERSION_ID,
19584           PLAN_VERSION_ID,
19585           PLAN_TYPE_ID,
19586           PLAN_TYPE_CODE,
19587           RAW_COST,
19588           BRDN_COST,
19589           REVENUE,
19590           BILL_RAW_COST,
19591           BILL_BRDN_COST,
19592           BILL_LABOR_RAW_COST,
19593           BILL_LABOR_BRDN_COST,
19594           BILL_LABOR_HRS,
19595           EQUIPMENT_RAW_COST,
19596           EQUIPMENT_BRDN_COST,
19597           CAPITALIZABLE_RAW_COST,
19598           CAPITALIZABLE_BRDN_COST,
19599           LABOR_RAW_COST,
19600           LABOR_BRDN_COST,
19601           LABOR_HRS,
19602           LABOR_REVENUE,
19603           EQUIPMENT_HOURS,
19604           BILLABLE_EQUIPMENT_HOURS,
19605           SUP_INV_COMMITTED_COST,
19606           PO_COMMITTED_COST,
19607           PR_COMMITTED_COST,
19608           OTH_COMMITTED_COST,
19609           ACT_LABOR_HRS,
19610           ACT_EQUIP_HRS,
19611           ACT_LABOR_BRDN_COST,
19612           ACT_EQUIP_BRDN_COST,
19613           ACT_BRDN_COST,
19614           ACT_RAW_COST,
19615           ACT_REVENUE,
19616           ACT_LABOR_RAW_COST,
19617           ACT_EQUIP_RAW_COST,
19618           ETC_LABOR_HRS,
19619           ETC_EQUIP_HRS,
19620           ETC_LABOR_BRDN_COST,
19621           ETC_EQUIP_BRDN_COST,
19622           ETC_BRDN_COST,
19623           ETC_RAW_COST,
19624           ETC_LABOR_RAW_COST,
19625           ETC_EQUIP_RAW_COST,
19626           CUSTOM1,
19627           CUSTOM2,
19628           CUSTOM3,
19629           CUSTOM4,
19630           CUSTOM5,
19631           CUSTOM6,
19632           CUSTOM7,
19633           CUSTOM8,
19634           CUSTOM9,
19635           CUSTOM10,
19636           CUSTOM11,
19637           CUSTOM12,
19638           CUSTOM13,
19639           CUSTOM14,
19640           CUSTOM15
19641         )
19642         select
19643           pjp1_i.WORKER_ID,
19644           pjp1_i.RECORD_TYPE,
19645           pjp1_i.PRG_LEVEL,
19646           pjp1_i.LINE_TYPE,
19647           pjp1_i.PROJECT_ID,
19648           pjp1_i.PROJECT_ORG_ID,
19649           pjp1_i.PROJECT_ORGANIZATION_ID,
19650           pjp1_i.PROJECT_ELEMENT_ID,
19651           pjp1_i.TIME_ID,
19652           pjp1_i.PERIOD_TYPE_ID,
19653           pjp1_i.CALENDAR_TYPE,
19654           pjp1_i.RBS_AGGR_LEVEL,
19655           pjp1_i.WBS_ROLLUP_FLAG,
19656           pjp1_i.PRG_ROLLUP_FLAG,
19657           pjp1_i.CURR_RECORD_TYPE_ID,
19658           pjp1_i.CURRENCY_CODE,
19659           pjp1_i.RBS_ELEMENT_ID,
19660           pjp1_i.RBS_VERSION_ID,
19661           pjp1_i.PLAN_VERSION_ID,
19662           pjp1_i.PLAN_TYPE_ID,
19663           pjp1_i.PLAN_TYPE_CODE,
19664           decode(pjp1_i.RELATIONSHIP_TYPE
19665                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
19666                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
19667                    || '_' || pjp1_i.SUB_STATUS_CODE
19668                    || '_' || pjp1_i.SUP_STATUS_CODE,
19669                  'LW_N_Y__', to_number(null),
19670                  decode(pjp1_i.RELATIONSHIP_TYPE
19671                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
19672                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
19673                           || '_' || pjp1_i.SUP_VER_ENABLED
19674                           || '_' || l_fpm_upgrade
19675                           || '_' || l_partial_mode,
19676                         'LW_N_Y_Y_C_', to_number(null),
19677                  pjp1_i.RAW_COST))                    RAW_COST,
19678           decode(pjp1_i.RELATIONSHIP_TYPE
19679                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
19680                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
19681                    || '_' || pjp1_i.SUB_STATUS_CODE
19682                    || '_' || pjp1_i.SUP_STATUS_CODE,
19683                  'LW_N_Y__', to_number(null),
19684                  decode(pjp1_i.RELATIONSHIP_TYPE
19685                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
19686                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
19687                           || '_' || pjp1_i.SUP_VER_ENABLED
19688                           || '_' || l_fpm_upgrade
19689                           || '_' || l_partial_mode,
19690                         'LW_N_Y_Y_C_', to_number(null),
19691                  pjp1_i.BRDN_COST))                   BRDN_COST,
19692           decode(pjp1_i.RELATIONSHIP_TYPE
19693                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
19694                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
19695                    || '_' || pjp1_i.SUB_STATUS_CODE
19696                    || '_' || pjp1_i.SUP_STATUS_CODE,
19697                  'LW_N_Y__', to_number(null),
19698                  decode(pjp1_i.RELATIONSHIP_TYPE
19699                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
19700                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
19701                           || '_' || pjp1_i.SUP_VER_ENABLED
19702                           || '_' || l_fpm_upgrade
19703                           || '_' || l_partial_mode,
19704                         'LW_N_Y_Y_C_', to_number(null),
19705                  pjp1_i.REVENUE))                     REVENUE,
19706           decode(pjp1_i.RELATIONSHIP_TYPE
19707                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
19708                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
19709                    || '_' || pjp1_i.SUB_STATUS_CODE
19710                    || '_' || pjp1_i.SUP_STATUS_CODE,
19711                  'LW_N_Y__', to_number(null),
19712                  decode(pjp1_i.RELATIONSHIP_TYPE
19713                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
19714                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
19715                           || '_' || pjp1_i.SUP_VER_ENABLED
19716                           || '_' || l_fpm_upgrade
19717                           || '_' || l_partial_mode,
19718                         'LW_N_Y_Y_C_', to_number(null),
19719                  pjp1_i.BILL_RAW_COST))               BILL_RAW_COST,
19720           decode(pjp1_i.RELATIONSHIP_TYPE
19721                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
19722                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
19723                    || '_' || pjp1_i.SUB_STATUS_CODE
19724                    || '_' || pjp1_i.SUP_STATUS_CODE,
19725                  'LW_N_Y__', to_number(null),
19726                  decode(pjp1_i.RELATIONSHIP_TYPE
19727                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
19728                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
19729                           || '_' || pjp1_i.SUP_VER_ENABLED
19730                           || '_' || l_fpm_upgrade
19731                           || '_' || l_partial_mode,
19732                         'LW_N_Y_Y_C_', to_number(null),
19733                  pjp1_i.BILL_BRDN_COST))              BILL_BRDN_COST,
19734           decode(pjp1_i.RELATIONSHIP_TYPE
19735                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
19736                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
19737                    || '_' || pjp1_i.SUB_STATUS_CODE
19738                    || '_' || pjp1_i.SUP_STATUS_CODE,
19739                  'LW_N_Y__', to_number(null),
19740                  decode(pjp1_i.RELATIONSHIP_TYPE
19741                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
19742                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
19743                           || '_' || pjp1_i.SUP_VER_ENABLED
19744                           || '_' || l_fpm_upgrade
19745                           || '_' || l_partial_mode,
19746                         'LW_N_Y_Y_C_', to_number(null),
19747                  pjp1_i.BILL_LABOR_RAW_COST))         BILL_LABOR_RAW_COST,
19748           decode(pjp1_i.RELATIONSHIP_TYPE
19749                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
19750                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
19751                    || '_' || pjp1_i.SUB_STATUS_CODE
19752                    || '_' || pjp1_i.SUP_STATUS_CODE,
19753                  'LW_N_Y__', to_number(null),
19754                  decode(pjp1_i.RELATIONSHIP_TYPE
19755                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
19756                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
19757                           || '_' || pjp1_i.SUP_VER_ENABLED
19758                           || '_' || l_fpm_upgrade
19759                           || '_' || l_partial_mode,
19760                         'LW_N_Y_Y_C_', to_number(null),
19761                  pjp1_i.BILL_LABOR_BRDN_COST))        BILL_LABOR_BRDN_COST,
19762           decode(pjp1_i.RELATIONSHIP_TYPE
19763                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
19764                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
19765                    || '_' || pjp1_i.SUB_STATUS_CODE
19766                    || '_' || pjp1_i.SUP_STATUS_CODE,
19767                  'LW_N_Y__', to_number(null),
19768                  decode(pjp1_i.RELATIONSHIP_TYPE
19769                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
19770                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
19771                           || '_' || pjp1_i.SUP_VER_ENABLED
19772                           || '_' || l_fpm_upgrade
19773                           || '_' || l_partial_mode,
19774                         'LW_N_Y_Y_C_', to_number(null),
19775                  pjp1_i.BILL_LABOR_HRS))              BILL_LABOR_HRS,
19776           decode(pjp1_i.RELATIONSHIP_TYPE
19777                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
19778                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
19779                    || '_' || pjp1_i.SUB_STATUS_CODE
19780                    || '_' || pjp1_i.SUP_STATUS_CODE,
19781                  'LW_N_Y__', to_number(null),
19782                  decode(pjp1_i.RELATIONSHIP_TYPE
19783                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
19784                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
19785                           || '_' || pjp1_i.SUP_VER_ENABLED
19786                           || '_' || l_fpm_upgrade
19787                           || '_' || l_partial_mode,
19788                         'LW_N_Y_Y_C_', to_number(null),
19789                  pjp1_i.EQUIPMENT_RAW_COST))          EQUIPMENT_RAW_COST,
19790           decode(pjp1_i.RELATIONSHIP_TYPE
19791                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
19792                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
19793                    || '_' || pjp1_i.SUB_STATUS_CODE
19794                    || '_' || pjp1_i.SUP_STATUS_CODE,
19795                  'LW_N_Y__', to_number(null),
19796                  decode(pjp1_i.RELATIONSHIP_TYPE
19797                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
19798                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
19799                           || '_' || pjp1_i.SUP_VER_ENABLED
19800                           || '_' || l_fpm_upgrade
19801                           || '_' || l_partial_mode,
19802                         'LW_N_Y_Y_C_', to_number(null),
19803                  pjp1_i.EQUIPMENT_BRDN_COST))         EQUIPMENT_BRDN_COST,
19804           decode(pjp1_i.RELATIONSHIP_TYPE
19805                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
19806                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
19807                    || '_' || pjp1_i.SUB_STATUS_CODE
19808                    || '_' || pjp1_i.SUP_STATUS_CODE,
19809                  'LW_N_Y__', to_number(null),
19810                  decode(pjp1_i.RELATIONSHIP_TYPE
19811                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
19812                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
19813                           || '_' || pjp1_i.SUP_VER_ENABLED
19814                           || '_' || l_fpm_upgrade
19815                           || '_' || l_partial_mode,
19816                         'LW_N_Y_Y_C_', to_number(null),
19817                  pjp1_i.CAPITALIZABLE_RAW_COST))      CAPITALIZABLE_RAW_COST,
19818           decode(pjp1_i.RELATIONSHIP_TYPE
19819                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
19820                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
19821                    || '_' || pjp1_i.SUB_STATUS_CODE
19822                    || '_' || pjp1_i.SUP_STATUS_CODE,
19823                  'LW_N_Y__', to_number(null),
19824                  decode(pjp1_i.RELATIONSHIP_TYPE
19825                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
19826                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
19827                           || '_' || pjp1_i.SUP_VER_ENABLED
19828                           || '_' || l_fpm_upgrade
19829                           || '_' || l_partial_mode,
19830                         'LW_N_Y_Y_C_', to_number(null),
19831                  pjp1_i.CAPITALIZABLE_BRDN_COST))     CAPITALIZABLE_BRDN_COST,
19832           decode(pjp1_i.RELATIONSHIP_TYPE
19833                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
19834                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
19835                    || '_' || pjp1_i.SUB_STATUS_CODE
19836                    || '_' || pjp1_i.SUP_STATUS_CODE,
19837                  'LW_N_Y__', to_number(null),
19838                  decode(pjp1_i.RELATIONSHIP_TYPE
19839                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
19840                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
19841                           || '_' || pjp1_i.SUP_VER_ENABLED
19842                           || '_' || l_fpm_upgrade
19843                           || '_' || l_partial_mode,
19844                         'LW_N_Y_Y_C_', to_number(null),
19845                  pjp1_i.LABOR_RAW_COST))              LABOR_RAW_COST,
19846           decode(pjp1_i.RELATIONSHIP_TYPE
19847                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
19848                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
19849                    || '_' || pjp1_i.SUB_STATUS_CODE
19850                    || '_' || pjp1_i.SUP_STATUS_CODE,
19851                  'LW_N_Y__', to_number(null),
19852                  decode(pjp1_i.RELATIONSHIP_TYPE
19853                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
19854                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
19855                           || '_' || pjp1_i.SUP_VER_ENABLED
19856                           || '_' || l_fpm_upgrade
19857                           || '_' || l_partial_mode,
19858                         'LW_N_Y_Y_C_', to_number(null),
19859                  pjp1_i.LABOR_BRDN_COST))             LABOR_BRDN_COST,
19860           decode(pjp1_i.RELATIONSHIP_TYPE
19861                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
19862                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
19863                    || '_' || pjp1_i.SUB_STATUS_CODE
19864                    || '_' || pjp1_i.SUP_STATUS_CODE,
19865                  'LW_N_Y__', to_number(null),
19866                  decode(pjp1_i.RELATIONSHIP_TYPE
19867                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
19868                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
19869                           || '_' || pjp1_i.SUP_VER_ENABLED
19870                           || '_' || l_fpm_upgrade
19871                           || '_' || l_partial_mode,
19872                         'LW_N_Y_Y_C_', to_number(null),
19873                  pjp1_i.LABOR_HRS))                   LABOR_HRS,
19874           decode(pjp1_i.RELATIONSHIP_TYPE
19875                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
19876                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
19877                    || '_' || pjp1_i.SUB_STATUS_CODE
19878                    || '_' || pjp1_i.SUP_STATUS_CODE,
19879                  'LW_N_Y__', to_number(null),
19880                  decode(pjp1_i.RELATIONSHIP_TYPE
19881                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
19882                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
19883                           || '_' || pjp1_i.SUP_VER_ENABLED
19884                           || '_' || l_fpm_upgrade
19885                           || '_' || l_partial_mode,
19886                         'LW_N_Y_Y_C_', to_number(null),
19887                  pjp1_i.LABOR_REVENUE))               LABOR_REVENUE,
19888           decode(pjp1_i.RELATIONSHIP_TYPE
19889                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
19890                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
19891                    || '_' || pjp1_i.SUB_STATUS_CODE
19892                    || '_' || pjp1_i.SUP_STATUS_CODE,
19893                  'LW_N_Y__', to_number(null),
19894                  decode(pjp1_i.RELATIONSHIP_TYPE
19895                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
19896                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
19897                           || '_' || pjp1_i.SUP_VER_ENABLED
19898                           || '_' || l_fpm_upgrade
19899                           || '_' || l_partial_mode,
19900                         'LW_N_Y_Y_C_', to_number(null),
19901                  pjp1_i.EQUIPMENT_HOURS))             EQUIPMENT_HOURS,
19902           decode(pjp1_i.RELATIONSHIP_TYPE
19903                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
19904                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
19905                    || '_' || pjp1_i.SUB_STATUS_CODE
19906                    || '_' || pjp1_i.SUP_STATUS_CODE,
19907                  'LW_N_Y__', to_number(null),
19908                  decode(pjp1_i.RELATIONSHIP_TYPE
19909                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
19910                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
19911                           || '_' || pjp1_i.SUP_VER_ENABLED
19912                           || '_' || l_fpm_upgrade
19913                           || '_' || l_partial_mode,
19914                         'LW_N_Y_Y_C_', to_number(null),
19915                  pjp1_i.BILLABLE_EQUIPMENT_HOURS))    BILLABLE_EQUIPMENT_HOURS,
19916           decode(pjp1_i.RELATIONSHIP_TYPE
19917                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
19918                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
19919                    || '_' || pjp1_i.SUB_STATUS_CODE
19920                    || '_' || pjp1_i.SUP_STATUS_CODE,
19921                  'LW_N_Y__', to_number(null),
19922                  decode(pjp1_i.RELATIONSHIP_TYPE
19923                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
19924                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
19925                           || '_' || pjp1_i.SUP_VER_ENABLED
19926                           || '_' || l_fpm_upgrade
19927                           || '_' || l_partial_mode,
19928                         'LW_N_Y_Y_C_', to_number(null),
19929                  pjp1_i.SUP_INV_COMMITTED_COST))      SUP_INV_COMMITTED_COST,
19930           decode(pjp1_i.RELATIONSHIP_TYPE
19931                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
19932                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
19933                    || '_' || pjp1_i.SUB_STATUS_CODE
19934                    || '_' || pjp1_i.SUP_STATUS_CODE,
19935                  'LW_N_Y__', to_number(null),
19936                  decode(pjp1_i.RELATIONSHIP_TYPE
19937                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
19938                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
19939                           || '_' || pjp1_i.SUP_VER_ENABLED
19940                           || '_' || l_fpm_upgrade
19941                           || '_' || l_partial_mode,
19942                         'LW_N_Y_Y_C_', to_number(null),
19943                  pjp1_i.PO_COMMITTED_COST))           PO_COMMITTED_COST,
19944           decode(pjp1_i.RELATIONSHIP_TYPE
19945                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
19946                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
19947                    || '_' || pjp1_i.SUB_STATUS_CODE
19948                    || '_' || pjp1_i.SUP_STATUS_CODE,
19949                  'LW_N_Y__', to_number(null),
19950                  decode(pjp1_i.RELATIONSHIP_TYPE
19951                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
19952                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
19953                           || '_' || pjp1_i.SUP_VER_ENABLED
19954                           || '_' || l_fpm_upgrade
19955                           || '_' || l_partial_mode,
19956                         'LW_N_Y_Y_C_', to_number(null),
19957                  pjp1_i.PR_COMMITTED_COST))           PR_COMMITTED_COST,
19958           decode(pjp1_i.RELATIONSHIP_TYPE
19959                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
19960                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
19961                    || '_' || pjp1_i.SUB_STATUS_CODE
19962                    || '_' || pjp1_i.SUP_STATUS_CODE,
19963                  'LW_N_Y__', to_number(null),
19964                  decode(pjp1_i.RELATIONSHIP_TYPE
19965                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
19966                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
19967                           || '_' || pjp1_i.SUP_VER_ENABLED
19968                           || '_' || l_fpm_upgrade
19969                           || '_' || l_partial_mode,
19970                         'LW_N_Y_Y_C_', to_number(null),
19971                  pjp1_i.OTH_COMMITTED_COST))          OTH_COMMITTED_COST,
19972           decode(pjp1_i.RELATIONSHIP_TYPE
19973                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
19974                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
19975                    || '_' || pjp1_i.SUP_STATUS_CODE
19976                    || '_' || l_partial_mode,
19977                  'LW_N_Y__', to_number(null),
19978                           pjp1_i.ACT_LABOR_HRS)       ACT_LABOR_HRS,
19979           decode(pjp1_i.RELATIONSHIP_TYPE
19980                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
19981                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
19982                    || '_' || pjp1_i.SUP_STATUS_CODE
19983                    || '_' || l_partial_mode,
19984                  'LW_N_Y__', to_number(null),
19985                           pjp1_i.ACT_EQUIP_HRS)       ACT_EQUIP_HRS,
19986           decode(pjp1_i.RELATIONSHIP_TYPE
19987                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
19988                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
19989                    || '_' || pjp1_i.SUP_STATUS_CODE
19990                    || '_' || l_partial_mode,
19991                  'LW_N_Y__', to_number(null),
19992                           pjp1_i.ACT_LABOR_BRDN_COST) ACT_LABOR_BRDN_COST,
19993           decode(pjp1_i.RELATIONSHIP_TYPE
19994                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
19995                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
19996                    || '_' || pjp1_i.SUP_STATUS_CODE
19997                    || '_' || l_partial_mode,
19998                  'LW_N_Y__', to_number(null),
19999                           pjp1_i.ACT_EQUIP_BRDN_COST) ACT_EQUIP_BRDN_COST,
20000           decode(pjp1_i.RELATIONSHIP_TYPE
20001                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
20002                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
20003                    || '_' || pjp1_i.SUP_STATUS_CODE
20004                    || '_' || l_partial_mode,
20005                  'LW_N_Y__', to_number(null),
20006                           pjp1_i.ACT_BRDN_COST)       ACT_BRDN_COST,
20007           decode(pjp1_i.RELATIONSHIP_TYPE
20008                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
20009                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
20010                    || '_' || pjp1_i.SUP_STATUS_CODE
20011                    || '_' || l_partial_mode,
20012                  'LW_N_Y__', to_number(null),
20013                           pjp1_i.ACT_RAW_COST)        ACT_RAW_COST,
20014           decode(pjp1_i.RELATIONSHIP_TYPE
20015                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
20016                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
20017                    || '_' || pjp1_i.SUP_STATUS_CODE
20018                    || '_' || l_partial_mode,
20019                  'LW_N_Y__', to_number(null),
20020                           pjp1_i.ACT_REVENUE)         ACT_REVENUE,
20021           decode(pjp1_i.RELATIONSHIP_TYPE
20022                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
20023                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
20024                    || '_' || pjp1_i.SUP_STATUS_CODE
20025                    || '_' || l_partial_mode,
20026                  'LW_N_Y__', to_number(null),
20027                           pjp1_i.ACT_LABOR_RAW_COST)  ACT_LABOR_RAW_COST,
20028           decode(pjp1_i.RELATIONSHIP_TYPE
20029                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
20030                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
20031                    || '_' || pjp1_i.SUP_STATUS_CODE
20032                    || '_' || l_partial_mode,
20033                  'LW_N_Y__', to_number(null),
20034                           pjp1_i.ACT_EQUIP_RAW_COST)  ACT_EQUIP_RAW_COST,
20035           decode(pjp1_i.RELATIONSHIP_TYPE
20036                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
20037                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
20038                    || '_' || pjp1_i.SUP_STATUS_CODE
20039                    || '_' || l_partial_mode,
20040                  'LW_N_Y__', to_number(null),
20041                           pjp1_i.ETC_LABOR_HRS)       ETC_LABOR_HRS,
20042           decode(pjp1_i.RELATIONSHIP_TYPE
20043                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
20044                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
20045                    || '_' || pjp1_i.SUP_STATUS_CODE
20046                    || '_' || l_partial_mode,
20047                  'LW_N_Y__', to_number(null),
20048                           pjp1_i.ETC_EQUIP_HRS)       ETC_EQUIP_HRS,
20049           decode(pjp1_i.RELATIONSHIP_TYPE
20050                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
20051                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
20052                    || '_' || pjp1_i.SUP_STATUS_CODE
20053                    || '_' || l_partial_mode,
20054                  'LW_N_Y__', to_number(null),
20055                           pjp1_i.ETC_LABOR_BRDN_COST) ETC_LABOR_BRDN_COST,
20056           decode(pjp1_i.RELATIONSHIP_TYPE
20057                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
20058                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
20059                    || '_' || pjp1_i.SUP_STATUS_CODE
20060                    || '_' || l_partial_mode,
20061                  'LW_N_Y__', to_number(null),
20062                           pjp1_i.ETC_EQUIP_BRDN_COST) ETC_EQUIP_BRDN_COST,
20063           decode(pjp1_i.RELATIONSHIP_TYPE
20064                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
20065                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
20066                    || '_' || pjp1_i.SUP_STATUS_CODE
20067                    || '_' || l_partial_mode,
20068                  'LW_N_Y__', to_number(null),
20069                           pjp1_i.ETC_BRDN_COST)       ETC_BRDN_COST,
20070           decode(pjp1_i.RELATIONSHIP_TYPE
20071                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
20072                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
20073                    || '_' || pjp1_i.SUP_STATUS_CODE
20074                    || '_' || l_partial_mode,
20075                  'LW_N_Y__', to_number(null),
20076                           pjp1_i.ETC_RAW_COST)        ETC_RAW_COST,
20077           decode(pjp1_i.RELATIONSHIP_TYPE
20078                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
20079                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
20080                    || '_' || pjp1_i.SUP_STATUS_CODE
20081                    || '_' || l_partial_mode,
20082                  'LW_N_Y__', to_number(null),
20083                           pjp1_i.ETC_LABOR_RAW_COST)  ETC_LABOR_RAW_COST,
20084           decode(pjp1_i.RELATIONSHIP_TYPE
20085                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
20086                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
20087                    || '_' || pjp1_i.SUP_STATUS_CODE
20088                    || '_' || l_partial_mode,
20089                  'LW_N_Y__', to_number(null),
20090                           pjp1_i.ETC_EQUIP_RAW_COST)  ETC_EQUIP_RAW_COST,
20091           pjp1_i.CUSTOM1,
20092           pjp1_i.CUSTOM2,
20093           pjp1_i.CUSTOM3,
20094           pjp1_i.CUSTOM4,
20095           pjp1_i.CUSTOM5,
20096           pjp1_i.CUSTOM6,
20097           pjp1_i.CUSTOM7,
20098           pjp1_i.CUSTOM8,
20099           pjp1_i.CUSTOM9,
20100           pjp1_i.CUSTOM10,
20101           pjp1_i.CUSTOM11,
20102           pjp1_i.CUSTOM12,
20103           pjp1_i.CUSTOM13,
20104           pjp1_i.CUSTOM14,
20105           pjp1_i.CUSTOM15
20106         from
20107           (
20108         select
20109           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20110                  pjp.INSERT_FLAG, 'Y')                INSERT_FLAG,
20111           pjp.RELATIONSHIP_TYPE,
20112           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20113                  null, sub_ver.STATUS_CODE)           SUB_STATUS_CODE,
20114           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20115                  null, sup_ver.STATUS_CODE)           SUP_STATUS_CODE,
20116           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20117                  null, sup_wpa.WP_ENABLE_VERSION_FLAG)SUP_VER_ENABLED,
20118           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20119                  null, decode(pjp.PLAN_VERSION_ID,
20120                               -1, prg.SUP_ID,
20121                               -3, prg.SUP_ID,
20122                               -4, prg.SUP_ID,
20123                                   null))              SUP_ID,
20124           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20125                  null, decode(pjp.PLAN_VERSION_ID,
20126                               -1, prg.SUP_EMT_ID,
20127                               -3, prg.SUP_EMT_ID,
20128                               -4, prg.SUP_EMT_ID,
20129                                   null))              SUP_EMT_ID,
20130           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20131                  null, decode(pjp.PLAN_VERSION_ID,
20132                               -1, prg.WP_FLAG,
20133                               -3, prg.WP_FLAG,
20134                               -4, prg.WP_FLAG,
20135                                   null))              SUP_WP_FLAG,
20136           p_worker_id                                 WORKER_ID,
20137           'W'                                         RECORD_TYPE,
20138           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20139                  l_level, prg.SUP_LEVEL)              PRG_LEVEL,
20140           pjp.LINE_TYPE,
20141           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20142                  pjp.PROJECT_ID, prg.SUP_PROJECT_ID)  PROJECT_ID,
20143           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20144                  pjp.PROJECT_ORG_ID,
20145                  prg.SUP_PROJECT_ORG_ID)              PROJECT_ORG_ID,
20146           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20147                  pjp.PROJECT_ORGANIZATION_ID,
20148                  prg.SUP_PROJECT_ORGANIZATION_ID)     PROJECT_ORGANIZATION_ID,
20149           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20150                  pjp.PROJECT_ELEMENT_ID,
20151                  prg.SUB_ROLLUP_ID)                   PROJECT_ELEMENT_ID,
20152           pjp.TIME_ID,
20153           pjp.PERIOD_TYPE_ID,
20154           pjp.CALENDAR_TYPE,
20155           pjp.RBS_AGGR_LEVEL,
20156           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20157                  pjp.WBS_ROLLUP_FLAG, 'N')            WBS_ROLLUP_FLAG,
20158           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20159                  pjp.PRG_ROLLUP_FLAG, 'Y')            PRG_ROLLUP_FLAG,
20160           pjp.CURR_RECORD_TYPE_ID,
20161           pjp.CURRENCY_CODE,
20162           pjp.RBS_ELEMENT_ID,
20163           pjp.RBS_VERSION_ID,
20164           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20165                  pjp.PLAN_VERSION_ID,
20166                  decode(pjp.PLAN_VERSION_ID,
20167                         -1, pjp.PLAN_VERSION_ID,
20168                         -2, pjp.PLAN_VERSION_ID,
20169                         -3, pjp.PLAN_VERSION_ID,
20170                         -4, pjp.PLAN_VERSION_ID,
20171                             wbs_hdr.PLAN_VERSION_ID)) PLAN_VERSION_ID,
20172           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20173                  pjp.PLAN_TYPE_ID,
20174                  decode(pjp.PLAN_VERSION_ID,
20175                         -1, pjp.PLAN_TYPE_ID,
20176                         -2, pjp.PLAN_TYPE_ID,
20177                         -3, pjp.PLAN_TYPE_ID,
20178                         -4, pjp.PLAN_TYPE_ID,
20179                             wbs_hdr.PLAN_TYPE_ID))    PLAN_TYPE_ID,
20180           pjp.PLAN_TYPE_CODE,
20181           sum(pjp.RAW_COST)                           RAW_COST,
20182           sum(pjp.BRDN_COST)                          BRDN_COST,
20183           sum(pjp.REVENUE)                            REVENUE,
20184           sum(pjp.BILL_RAW_COST)                      BILL_RAW_COST,
20185           sum(pjp.BILL_BRDN_COST)                     BILL_BRDN_COST,
20186           sum(pjp.BILL_LABOR_RAW_COST)                BILL_LABOR_RAW_COST,
20187           sum(pjp.BILL_LABOR_BRDN_COST)               BILL_LABOR_BRDN_COST,
20188           sum(pjp.BILL_LABOR_HRS)                     BILL_LABOR_HRS,
20189           sum(pjp.EQUIPMENT_RAW_COST)                 EQUIPMENT_RAW_COST,
20190           sum(pjp.EQUIPMENT_BRDN_COST)                EQUIPMENT_BRDN_COST,
20191           sum(pjp.CAPITALIZABLE_RAW_COST)             CAPITALIZABLE_RAW_COST,
20192           sum(pjp.CAPITALIZABLE_BRDN_COST)            CAPITALIZABLE_BRDN_COST,
20193           sum(pjp.LABOR_RAW_COST)                     LABOR_RAW_COST,
20194           sum(pjp.LABOR_BRDN_COST)                    LABOR_BRDN_COST,
20195           sum(pjp.LABOR_HRS)                          LABOR_HRS,
20196           sum(pjp.LABOR_REVENUE)                      LABOR_REVENUE,
20197           sum(pjp.EQUIPMENT_HOURS)                    EQUIPMENT_HOURS,
20198           sum(pjp.BILLABLE_EQUIPMENT_HOURS)           BILLABLE_EQUIPMENT_HOURS,
20199           sum(pjp.SUP_INV_COMMITTED_COST)             SUP_INV_COMMITTED_COST,
20200           sum(pjp.PO_COMMITTED_COST)                  PO_COMMITTED_COST,
20201           sum(pjp.PR_COMMITTED_COST)                  PR_COMMITTED_COST,
20202           sum(pjp.OTH_COMMITTED_COST)                 OTH_COMMITTED_COST,
20203           sum(pjp.ACT_LABOR_HRS)                      ACT_LABOR_HRS,
20204           sum(pjp.ACT_EQUIP_HRS)                      ACT_EQUIP_HRS,
20205           sum(pjp.ACT_LABOR_BRDN_COST)                ACT_LABOR_BRDN_COST,
20206           sum(pjp.ACT_EQUIP_BRDN_COST)                ACT_EQUIP_BRDN_COST,
20207           sum(pjp.ACT_BRDN_COST)                      ACT_BRDN_COST,
20208           sum(pjp.ACT_RAW_COST)                       ACT_RAW_COST,
20209           sum(pjp.ACT_REVENUE)                        ACT_REVENUE,
20210           sum(pjp.ACT_LABOR_RAW_COST)                 ACT_LABOR_RAW_COST,
20211           sum(pjp.ACT_EQUIP_RAW_COST)                 ACT_EQUIP_RAW_COST,
20212           sum(pjp.ETC_LABOR_HRS)                      ETC_LABOR_HRS,
20213           sum(pjp.ETC_EQUIP_HRS)                      ETC_EQUIP_HRS,
20214           sum(pjp.ETC_LABOR_BRDN_COST)                ETC_LABOR_BRDN_COST,
20215           sum(pjp.ETC_EQUIP_BRDN_COST)                ETC_EQUIP_BRDN_COST,
20216           sum(pjp.ETC_BRDN_COST)                      ETC_BRDN_COST,
20217           sum(pjp.ETC_RAW_COST)                       ETC_RAW_COST,
20218           sum(pjp.ETC_LABOR_RAW_COST)                 ETC_LABOR_RAW_COST,
20219           sum(pjp.ETC_EQUIP_RAW_COST)                 ETC_EQUIP_RAW_COST,
20220           sum(pjp.CUSTOM1)                            CUSTOM1,
20221           sum(pjp.CUSTOM2)                            CUSTOM2,
20222           sum(pjp.CUSTOM3)                            CUSTOM3,
20223           sum(pjp.CUSTOM4)                            CUSTOM4,
20224           sum(pjp.CUSTOM5)                            CUSTOM5,
20225           sum(pjp.CUSTOM6)                            CUSTOM6,
20226           sum(pjp.CUSTOM7)                            CUSTOM7,
20227           sum(pjp.CUSTOM8)                            CUSTOM8,
20228           sum(pjp.CUSTOM9)                            CUSTOM9,
20229           sum(pjp.CUSTOM10)                           CUSTOM10,
20230           sum(pjp.CUSTOM11)                           CUSTOM11,
20231           sum(pjp.CUSTOM12)                           CUSTOM12,
20232           sum(pjp.CUSTOM13)                           CUSTOM13,
20233           sum(pjp.CUSTOM14)                           CUSTOM14,
20234           sum(pjp.CUSTOM15)                           CUSTOM15
20235         from
20236           (
20237           select /*+ index(wbs PA_XBS_DENORM_N2) parallel(pjp1) */ -- changed for bug 5927368
20238 		 -- get incremental task level amounts from source and
20239                  -- program rollup amounts from interim
20240             to_char(null)                             LINE_TYPE,
20241             wbs_hdr.WBS_VERSION_ID,
20242             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
20243             decode(wbs_hdr.WP_FLAG
20244                      || '_' || to_char(sign(pjp1.PLAN_VERSION_ID))
20245                      || '_' || nvl(fin_plan.INVERT_ID, 'PRJ'),
20246                    'N_1_PRJ', 'N',
20247                    'N_-1_PRG', 'N',
20248                    decode(top_slice.INVERT_ID,
20249                           'PRJ', 'Y',
20250                           decode(wbs.SUB_LEVEL,
20251                                  1, 'Y', 'N')))       PUSHUP_FLAG,
20252             decode(pjp1.RBS_AGGR_LEVEL,
20253                    'L', 'N',
20254                         decode(wbs_hdr.WP_FLAG
20255                                  || '_' || to_char(sign(pjp1.PLAN_VERSION_ID))
20256                                  || '_' || fin_plan.INVERT_ID,
20257                                'N_1_PRG', decode(top_slice.INVERT_ID,
20258                                                  'PRJ', 'Y',
20259                                                  decode(wbs.SUB_LEVEL,
20260                                                         1, 'Y', 'N')),
20261                                'N_-1_PRG', 'N',
20262                                decode(wbs_hdr.WP_FLAG
20263                                         || '_' || fin_plan.INVERT_ID
20264                                         || '_' || fin_plan.CB
20265                                         || '_' || fin_plan.CO
20266                                         || '_'
20267                                         || to_char(fin_plan.PLAN_VERSION_ID),
20268                                       'N_PRJ_Y_Y_-4', 'N',
20269                                                       'Y'))
20270                   )                                   INSERT_FLAG,
20271             pjp1.PROJECT_ID,
20272             pjp1.PROJECT_ORG_ID,
20273             pjp1.PROJECT_ORGANIZATION_ID,
20274             decode(top_slice.INVERT_ID,
20275                    'PRJ', prg.SUP_EMT_ID,
20276                           decode(wbs.SUB_LEVEL,
20277                                  1, prg.SUP_EMT_ID,
20278                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
20279             pjp1.TIME_ID,
20280             pjp1.PERIOD_TYPE_ID,
20281             pjp1.CALENDAR_TYPE,
20282             pjp1.RBS_AGGR_LEVEL,
20283             'Y'                                       WBS_ROLLUP_FLAG,
20284             pjp1.PRG_ROLLUP_FLAG,
20285             pjp1.CURR_RECORD_TYPE_ID,
20286             pjp1.CURRENCY_CODE,
20287             pjp1.RBS_ELEMENT_ID,
20288             pjp1.RBS_VERSION_ID,
20289             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
20290                    'N_PRG', fin_plan.PLAN_VERSION_ID,
20291                             pjp1.PLAN_VERSION_ID)     PLAN_VERSION_ID,
20292             pjp1.PLAN_TYPE_ID,
20293             pjp1.PLAN_TYPE_CODE,
20294             pjp1.RAW_COST,
20295             pjp1.BRDN_COST,
20296             pjp1.REVENUE,
20297             pjp1.BILL_RAW_COST,
20298             pjp1.BILL_BRDN_COST,
20299             pjp1.BILL_LABOR_RAW_COST,
20300             pjp1.BILL_LABOR_BRDN_COST,
20301             pjp1.BILL_LABOR_HRS,
20302             pjp1.EQUIPMENT_RAW_COST,
20303             pjp1.EQUIPMENT_BRDN_COST,
20304             pjp1.CAPITALIZABLE_RAW_COST,
20305             pjp1.CAPITALIZABLE_BRDN_COST,
20306             pjp1.LABOR_RAW_COST,
20307             pjp1.LABOR_BRDN_COST,
20308             pjp1.LABOR_HRS,
20309             pjp1.LABOR_REVENUE,
20310             pjp1.EQUIPMENT_HOURS,
20311             pjp1.BILLABLE_EQUIPMENT_HOURS,
20312             pjp1.SUP_INV_COMMITTED_COST,
20313             pjp1.PO_COMMITTED_COST,
20314             pjp1.PR_COMMITTED_COST,
20315             pjp1.OTH_COMMITTED_COST,
20316             pjp1.ACT_LABOR_HRS,
20317             pjp1.ACT_EQUIP_HRS,
20318             pjp1.ACT_LABOR_BRDN_COST,
20319             pjp1.ACT_EQUIP_BRDN_COST,
20320             pjp1.ACT_BRDN_COST,
20321             pjp1.ACT_RAW_COST,
20322             pjp1.ACT_REVENUE,
20323             pjp1.ACT_LABOR_RAW_COST,
20324             pjp1.ACT_EQUIP_RAW_COST,
20325             pjp1.ETC_LABOR_HRS,
20326             pjp1.ETC_EQUIP_HRS,
20327             pjp1.ETC_LABOR_BRDN_COST,
20328             pjp1.ETC_EQUIP_BRDN_COST,
20329             pjp1.ETC_BRDN_COST,
20330             pjp1.ETC_RAW_COST,
20331             pjp1.ETC_LABOR_RAW_COST,
20332             pjp1.ETC_EQUIP_RAW_COST,
20333             pjp1.CUSTOM1,
20334             pjp1.CUSTOM2,
20335             pjp1.CUSTOM3,
20336             pjp1.CUSTOM4,
20337             pjp1.CUSTOM5,
20338             pjp1.CUSTOM6,
20339             pjp1.CUSTOM7,
20340             pjp1.CUSTOM8,
20341             pjp1.CUSTOM9,
20342             pjp1.CUSTOM10,
20343             pjp1.CUSTOM11,
20344             pjp1.CUSTOM12,
20345             pjp1.CUSTOM13,
20346             pjp1.CUSTOM14,
20347             pjp1.CUSTOM15
20348           from
20349             PJI_FP_AGGR_PJP1   pjp1,
20350             PJI_PJP_WBS_HEADER wbs_hdr,
20351             PA_XBS_DENORM      wbs,
20352             PJI_XBS_DENORM     prg,
20353             (
20354               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
20355               from DUAL union all
20356               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
20357               from DUAL union all
20358               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
20359               from DUAL union all
20360               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
20361               from DUAL union all
20362               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
20363               from DUAL union all
20364               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
20365               from DUAL union all
20366               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
20367               from DUAL union all
20368               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
20369               from DUAL
20370             ) fin_plan,
20371             (
20372               select 1     WBS_SUP_LEVEL,
20373                      1     WBS_SUB_LEVEL,
20374                      'PRJ' INVERT_ID
20375               from   DUAL
20376               union all
20377               select 1     WBS_SUP_LEVEL,
20378                      1     WBS_SUB_LEVEL,
20379                      'WBS' INVERT_ID
20380               from   DUAL
20381             ) top_slice
20382           where
20383             prg.STRUCT_TYPE         =  'PRG'                       and
20384             prg.SUP_LEVEL           =  l_level                     and
20385             prg.SUB_LEVEL           =  l_level                     and
20386             wbs.STRUCT_TYPE         =  'WBS'                       and
20387             ((wbs.SUP_LEVEL = 1 and
20388               wbs.SUB_LEVEL = 1) or
20389              (wbs.SUP_LEVEL <> wbs.SUB_LEVEL))                     and
20390             wbs.STRUCT_VERSION_ID   =  prg.SUP_ID                  and
20391             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
20392             pjp1.WORKER_ID          =  p_worker_id                 and
20393             pjp1.PRG_LEVEL          in (0, l_level)                and
20394             pjp1.RBS_AGGR_LEVEL     in ('T', 'L')                  and
20395             pjp1.WBS_ROLLUP_FLAG    =  'N'                         and
20396             pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                  and
20397             pjp1.PROJECT_ID         =  wbs_hdr.PROJECT_ID          and
20398             pjp1.PLAN_VERSION_ID    =  wbs_hdr.PLAN_VERSION_ID     and
20399             pjp1.PLAN_TYPE_CODE     =  wbs_hdr.PLAN_TYPE_CODE      and
20400             decode(pjp1.PLAN_VERSION_ID,
20401                    -3, pjp1.PLAN_TYPE_ID,
20402                    -4, pjp1.PLAN_TYPE_ID,
20403                        -1)          =  decode(pjp1.PLAN_VERSION_ID,
20404                                               -3, wbs_hdr.PLAN_TYPE_ID,
20405                                               -4, wbs_hdr.PLAN_TYPE_ID,
20406                                                   -1)              and
20407             wbs.STRUCT_VERSION_ID   =  wbs_hdr.WBS_VERSION_ID      and
20408             pjp1.PROJECT_ELEMENT_ID =  wbs.SUB_EMT_ID              and
20409             wbs_hdr.CB_FLAG         =  fin_plan.CB             (+) and
20410             wbs_hdr.CO_FLAG         =  fin_plan.CO             (+) and
20411             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
20412             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+)
20413           union all
20414           select /*+ parallel(pjp1) */          -- changed for bug 5927368
20415 		 -- get incremental project level amounts from source
20416             to_char(null)                             LINE_TYPE,
20417             wbs_hdr.WBS_VERSION_ID,
20418             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
20419             'Y'                                       PUSHUP_FLAG,
20420             decode(pjp1.RBS_AGGR_LEVEL,
20421                    'L', 'N',
20422                         decode(fin_plan.PLAN_VERSION_ID,
20423                                null, 'N', 'Y'))       INSERT_FLAG,
20424             pjp1.PROJECT_ID,
20425             pjp1.PROJECT_ORG_ID,
20426             pjp1.PROJECT_ORGANIZATION_ID,
20427             pjp1.PROJECT_ELEMENT_ID,
20428             pjp1.TIME_ID,
20429             pjp1.PERIOD_TYPE_ID,
20430             pjp1.CALENDAR_TYPE,
20431             pjp1.RBS_AGGR_LEVEL,
20432             'Y'                                       WBS_ROLLUP_FLAG,
20433             pjp1.PRG_ROLLUP_FLAG,
20434             pjp1.CURR_RECORD_TYPE_ID,
20435             pjp1.CURRENCY_CODE,
20436             pjp1.RBS_ELEMENT_ID,
20437             pjp1.RBS_VERSION_ID,
20438             decode(wbs_hdr.WP_FLAG,
20439                    'N', decode(pjp1.PLAN_VERSION_ID,
20440                                -1, pjp1.PLAN_VERSION_ID,
20441                                -2, pjp1.PLAN_VERSION_ID,
20442                                -3, pjp1.PLAN_VERSION_ID, -- won't exist
20443                                -4, pjp1.PLAN_VERSION_ID, -- won't exist
20444                                    fin_plan.PLAN_VERSION_ID),
20445                         pjp1.PLAN_VERSION_ID)         PLAN_VERSION_ID,
20446             pjp1.PLAN_TYPE_ID,
20447             pjp1.PLAN_TYPE_CODE,
20448             pjp1.RAW_COST,
20449             pjp1.BRDN_COST,
20450             pjp1.REVENUE,
20451             pjp1.BILL_RAW_COST,
20452             pjp1.BILL_BRDN_COST,
20453             pjp1.BILL_LABOR_RAW_COST,
20454             pjp1.BILL_LABOR_BRDN_COST,
20455             pjp1.BILL_LABOR_HRS,
20456             pjp1.EQUIPMENT_RAW_COST,
20457             pjp1.EQUIPMENT_BRDN_COST,
20458             pjp1.CAPITALIZABLE_RAW_COST,
20459             pjp1.CAPITALIZABLE_BRDN_COST,
20460             pjp1.LABOR_RAW_COST,
20461             pjp1.LABOR_BRDN_COST,
20462             pjp1.LABOR_HRS,
20463             pjp1.LABOR_REVENUE,
20464             pjp1.EQUIPMENT_HOURS,
20465             pjp1.BILLABLE_EQUIPMENT_HOURS,
20466             pjp1.SUP_INV_COMMITTED_COST,
20467             pjp1.PO_COMMITTED_COST,
20468             pjp1.PR_COMMITTED_COST,
20469             pjp1.OTH_COMMITTED_COST,
20470             pjp1.ACT_LABOR_HRS,
20471             pjp1.ACT_EQUIP_HRS,
20472             pjp1.ACT_LABOR_BRDN_COST,
20473             pjp1.ACT_EQUIP_BRDN_COST,
20474             pjp1.ACT_BRDN_COST,
20475             pjp1.ACT_RAW_COST,
20476             pjp1.ACT_REVENUE,
20477             pjp1.ACT_LABOR_RAW_COST,
20478             pjp1.ACT_EQUIP_RAW_COST,
20479             pjp1.ETC_LABOR_HRS,
20480             pjp1.ETC_EQUIP_HRS,
20481             pjp1.ETC_LABOR_BRDN_COST,
20482             pjp1.ETC_EQUIP_BRDN_COST,
20483             pjp1.ETC_BRDN_COST,
20484             pjp1.ETC_RAW_COST,
20485             pjp1.ETC_LABOR_RAW_COST,
20486             pjp1.ETC_EQUIP_RAW_COST,
20487             pjp1.CUSTOM1,
20488             pjp1.CUSTOM2,
20489             pjp1.CUSTOM3,
20490             pjp1.CUSTOM4,
20491             pjp1.CUSTOM5,
20492             pjp1.CUSTOM6,
20493             pjp1.CUSTOM7,
20494             pjp1.CUSTOM8,
20495             pjp1.CUSTOM9,
20496             pjp1.CUSTOM10,
20497             pjp1.CUSTOM11,
20498             pjp1.CUSTOM12,
20499             pjp1.CUSTOM13,
20500             pjp1.CUSTOM14,
20501             pjp1.CUSTOM15
20502           from
20503             PJI_FP_AGGR_PJP1   pjp1,
20504             PJI_PJP_WBS_HEADER wbs_hdr,
20505             PJI_XBS_DENORM     prg,
20506             (
20507               select 'Y' CB_FLAG,
20508                      'N' CO_FLAG,
20509                      -3  PLAN_VERSION_ID
20510               from DUAL union all
20511               select 'N' CB_FLAG,
20512                      'Y' CO_FLAG,
20513                      -4  PLAN_VERSION_ID
20514               from DUAL union all
20515               select 'Y' CB_FLAG,
20516                      'Y' CO_FLAG,
20517                      -3  PLAN_VERSION_ID
20518               from DUAL union all
20519               select 'Y' CB_FLAG,
20520                      'Y' CO_FLAG,
20521                      -4  PLAN_VERSION_ID
20522               from DUAL
20523             ) fin_plan
20524           where
20525             prg.STRUCT_TYPE         = 'PRG'                    and
20526             prg.SUP_LEVEL           = l_level                  and
20527             prg.SUB_LEVEL           = l_level                  and
20528             pjp1.WORKER_ID          = p_worker_id              and
20529             pjp1.PROJECT_ID         = prg.SUP_PROJECT_ID       and
20530             pjp1.PROJECT_ELEMENT_ID = prg.SUP_EMT_ID           and
20531             pjp1.PRG_LEVEL          = 0                        and
20532             pjp1.RBS_AGGR_LEVEL     in ('T', 'L')              and
20533             pjp1.WBS_ROLLUP_FLAG    = 'N'                      and
20534             pjp1.PRG_ROLLUP_FLAG    = 'N'                      and
20535             wbs_hdr.PROJECT_ID      = pjp1.PROJECT_ID          and
20536             wbs_hdr.PLAN_VERSION_ID = pjp1.PLAN_VERSION_ID     and
20537             wbs_hdr.PLAN_TYPE_CODE  = pjp1.PLAN_TYPE_CODE      and
20538             decode(wbs_hdr.WP_FLAG,
20539                    'N', decode(pjp1.PLAN_VERSION_ID,
20540                                -1, 'Y',
20541                                -2, 'Y',
20542                                -3, 'Y', -- won't exist
20543                                -4, 'Y', -- won't exist
20544                                    decode(wbs_hdr.CB_FLAG || '_' ||
20545                                           wbs_hdr.CO_FLAG,
20546                                           'Y_Y', 'Y',
20547                                           'N_Y', 'Y',
20548                                           'Y_N', 'Y',
20549                                                  'N')),
20550                         'Y')        =  'Y'                     and
20551             wbs_hdr.WBS_VERSION_ID  = prg.SUP_ID               and
20552             wbs_hdr.CB_FLAG         = fin_plan.CB_FLAG     (+) and
20553             wbs_hdr.CO_FLAG         = fin_plan.CO_FLAG     (+)
20554           union all
20555           select /*+ ordered
20556                      index(fpr PJI_FP_XBS_ACCUM_F_N1) */
20557                  -- get delta task level amounts from Reporting Lines
20558             to_char(null)                             LINE_TYPE,
20559             wbs_hdr.WBS_VERSION_ID,
20560             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
20561             decode(log.EVENT_TYPE,
20562                    'WBS_CHANGE', 'Y',
20563                    'WBS_PUBLISH', 'N')                PUSHUP_FLAG,
20564             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
20565                    'N_PRG', decode(top_slice.INVERT_ID,
20566                                    'PRJ', 'Y',
20567                                    decode(wbs.SUB_LEVEL,
20568                                           1, 'Y', 'N')),
20569                    decode(wbs_hdr.WP_FLAG
20570                             || '_' || fin_plan.INVERT_ID
20571                             || '_' || fin_plan.CB
20572                             || '_' || fin_plan.CO
20573                             || '_' || to_char(fin_plan.PLAN_VERSION_ID),
20574                           'N_PRJ_Y_Y_-4', 'N',
20575                                           'Y'))       INSERT_FLAG,
20576             fpr.PROJECT_ID,
20577             fpr.PROJECT_ORG_ID,
20578             fpr.PROJECT_ORGANIZATION_ID,
20579             decode(top_slice.INVERT_ID,
20580                    'PRJ', prg.SUP_EMT_ID,
20581                           decode(wbs.SUB_LEVEL,
20582                                  1, prg.SUP_EMT_ID,
20583                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
20584             fpr.TIME_ID,
20585             fpr.PERIOD_TYPE_ID,
20586             fpr.CALENDAR_TYPE,
20587             fpr.RBS_AGGR_LEVEL,
20588             'Y'                                       WBS_ROLLUP_FLAG,
20589             fpr.PRG_ROLLUP_FLAG,
20590             fpr.CURR_RECORD_TYPE_ID,
20591             fpr.CURRENCY_CODE,
20592             fpr.RBS_ELEMENT_ID,
20593             fpr.RBS_VERSION_ID,
20594             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
20595                    'N_PRG', fin_plan.PLAN_VERSION_ID,
20596                             fpr.PLAN_VERSION_ID)      PLAN_VERSION_ID,
20597             fpr.PLAN_TYPE_ID,
20598             fpr.PLAN_TYPE_CODE,
20599             wbs.SIGN * fpr.RAW_COST                   RAW_COST,
20600             wbs.SIGN * fpr.BRDN_COST                  BRDN_COST,
20601             wbs.SIGN * fpr.REVENUE                    REVENUE,
20602             wbs.SIGN * fpr.BILL_RAW_COST              BILL_RAW_COST,
20603             wbs.SIGN * fpr.BILL_BRDN_COST             BILL_BRDN_COST,
20604             wbs.SIGN * fpr.BILL_LABOR_RAW_COST        BILL_LABOR_RAW_COST,
20605             wbs.SIGN * fpr.BILL_LABOR_BRDN_COST       BILL_LABOR_BRDN_COST,
20606             wbs.SIGN * fpr.BILL_LABOR_HRS             BILL_LABOR_HRS,
20607             wbs.SIGN * fpr.EQUIPMENT_RAW_COST         EQUIPMENT_RAW_COST,
20608             wbs.SIGN * fpr.EQUIPMENT_BRDN_COST        EQUIPMENT_BRDN_COST,
20609             wbs.SIGN * fpr.CAPITALIZABLE_RAW_COST     CAPITALIZABLE_RAW_COST,
20610             wbs.SIGN * fpr.CAPITALIZABLE_BRDN_COST    CAPITALIZABLE_BRDN_COST,
20611             wbs.SIGN * fpr.LABOR_RAW_COST             LABOR_RAW_COST,
20612             wbs.SIGN * fpr.LABOR_BRDN_COST            LABOR_BRDN_COST,
20613             wbs.SIGN * fpr.LABOR_HRS                  LABOR_HRS,
20614             wbs.SIGN * fpr.LABOR_REVENUE              LABOR_REVENUE,
20615             wbs.SIGN * fpr.EQUIPMENT_HOURS            EQUIPMENT_HOURS,
20616             wbs.SIGN * fpr.BILLABLE_EQUIPMENT_HOURS   BILLABLE_EQUIPMENT_HOURS,
20617             wbs.SIGN * fpr.SUP_INV_COMMITTED_COST     SUP_INV_COMMITTED_COST,
20618             wbs.SIGN * fpr.PO_COMMITTED_COST          PO_COMMITTED_COST,
20619             wbs.SIGN * fpr.PR_COMMITTED_COST          PR_COMMITTED_COST,
20620             wbs.SIGN * fpr.OTH_COMMITTED_COST         OTH_COMMITTED_COST,
20621             wbs.SIGN * fpr.ACT_LABOR_HRS              ACT_LABOR_HRS,
20622             wbs.SIGN * fpr.ACT_EQUIP_HRS              ACT_EQUIP_HRS,
20623             wbs.SIGN * fpr.ACT_LABOR_BRDN_COST        ACT_LABOR_BRDN_COST,
20624             wbs.SIGN * fpr.ACT_EQUIP_BRDN_COST        ACT_EQUIP_BRDN_COST,
20625             wbs.SIGN * fpr.ACT_BRDN_COST              ACT_BRDN_COST,
20626             wbs.SIGN * fpr.ACT_RAW_COST               ACT_RAW_COST,
20627             wbs.SIGN * fpr.ACT_REVENUE                ACT_REVENUE,
20628             wbs.SIGN * fpr.ACT_LABOR_RAW_COST         ACT_LABOR_RAW_COST,
20629             wbs.SIGN * fpr.ACT_EQUIP_RAW_COST         ACT_EQUIP_RAW_COST,
20630             wbs.SIGN * fpr.ETC_LABOR_HRS              ETC_LABOR_HRS,
20631             wbs.SIGN * fpr.ETC_EQUIP_HRS              ETC_EQUIP_HRS,
20632             wbs.SIGN * fpr.ETC_LABOR_BRDN_COST        ETC_LABOR_BRDN_COST,
20633             wbs.SIGN * fpr.ETC_EQUIP_BRDN_COST        ETC_EQUIP_BRDN_COST,
20634             wbs.SIGN * fpr.ETC_BRDN_COST              ETC_BRDN_COST,
20635             wbs.SIGN * fpr.ETC_RAW_COST               ETC_RAW_COST,
20636             wbs.SIGN * fpr.ETC_LABOR_RAW_COST         ETC_LABOR_RAW_COST,
20637             wbs.SIGN * fpr.ETC_EQUIP_RAW_COST         ETC_EQUIP_RAW_COST,
20638             wbs.SIGN * fpr.CUSTOM1                    CUSTOM1,
20639             wbs.SIGN * fpr.CUSTOM2                    CUSTOM2,
20640             wbs.SIGN * fpr.CUSTOM3                    CUSTOM3,
20641             wbs.SIGN * fpr.CUSTOM4                    CUSTOM4,
20642             wbs.SIGN * fpr.CUSTOM5                    CUSTOM5,
20643             wbs.SIGN * fpr.CUSTOM6                    CUSTOM6,
20644             wbs.SIGN * fpr.CUSTOM7                    CUSTOM7,
20645             wbs.SIGN * fpr.CUSTOM8                    CUSTOM8,
20646             wbs.SIGN * fpr.CUSTOM9                    CUSTOM9,
20647             wbs.SIGN * fpr.CUSTOM10                   CUSTOM10,
20648             wbs.SIGN * fpr.CUSTOM11                   CUSTOM11,
20649             wbs.SIGN * fpr.CUSTOM12                   CUSTOM12,
20650             wbs.SIGN * fpr.CUSTOM13                   CUSTOM13,
20651             wbs.SIGN * fpr.CUSTOM14                   CUSTOM14,
20652             wbs.SIGN * fpr.CUSTOM15                   CUSTOM15
20653           from
20654             PJI_PA_PROJ_EVENTS_LOG log,
20655             PJI_PJP_WBS_HEADER     wbs_hdr,
20656             PJI_XBS_DENORM_DELTA   wbs,
20657             PJI_XBS_DENORM         prg,
20658             PJI_FP_XBS_ACCUM_F     fpr,
20659             (
20660               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
20661               from DUAL union all
20662               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
20663               from DUAL union all
20664               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
20665               from DUAL union all
20666               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
20667               from DUAL union all
20668               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
20669               from DUAL union all
20670               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
20671               from DUAL union all
20672               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
20673               from DUAL union all
20674               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
20675               from DUAL
20676             ) fin_plan,
20677             (
20678               select 1     WBS_SUP_LEVEL,
20679                      1     WBS_SUB_LEVEL,
20680                      'PRJ' INVERT_ID
20681               from   DUAL
20682               union all
20683               select 1     WBS_SUP_LEVEL,
20684                      1     WBS_SUB_LEVEL,
20685                      'WBS' INVERT_ID
20686               from   DUAL
20687             ) top_slice
20688           where
20689             prg.STRUCT_TYPE         =  'PRG'                       and
20690             prg.SUP_LEVEL           =  l_level                     and
20691             prg.SUB_LEVEL           =  l_level                     and
20692             wbs.WORKER_ID           =  p_worker_id                 and
20693             wbs.STRUCT_TYPE         =  'WBS'                       and
20694             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
20695             log.WORKER_ID           =  p_worker_id                 and
20696             log.EVENT_ID            =  wbs.EVENT_ID                and
20697             log.EVENT_TYPE          in ('WBS_CHANGE',
20698                                         'WBS_PUBLISH')             and
20699             wbs_hdr.PROJECT_ID      =  log.ATTRIBUTE1              and
20700             wbs_hdr.PLAN_VERSION_ID =  log.ATTRIBUTE3              and
20701             wbs_hdr.WBS_VERSION_ID  =  wbs.STRUCT_VERSION_ID       and
20702             wbs_hdr.PROJECT_ID      =  prg.SUP_PROJECT_ID          and
20703             wbs_hdr.WBS_VERSION_ID  =  prg.SUP_ID                  and
20704             fpr.RBS_AGGR_LEVEL      =  'T'                         and
20705             fpr.WBS_ROLLUP_FLAG     =  'N'                         and
20706             fpr.PRG_ROLLUP_FLAG     in ('Y', 'N')                  and
20707             fpr.PROJECT_ID          =  wbs.SUP_PROJECT_ID          and
20708             fpr.PROJECT_ELEMENT_ID  =  wbs.SUB_EMT_ID              and
20709             fpr.PROJECT_ID          =  wbs_hdr.PROJECT_ID          and
20710             fpr.PLAN_VERSION_ID     =  wbs_hdr.PLAN_VERSION_ID     and
20711             fpr.PLAN_TYPE_CODE      =  wbs_hdr.PLAN_TYPE_CODE      and
20712             decode(fpr.PLAN_VERSION_ID,
20713                    -3, fpr.PLAN_TYPE_ID,
20714                    -4, fpr.PLAN_TYPE_ID,
20715                        -1)          =  decode(fpr.PLAN_VERSION_ID,
20716                                               -3, wbs_hdr.PLAN_TYPE_ID,
20717                                               -4, wbs_hdr.PLAN_TYPE_ID,
20718                                                   -1)              and
20719             wbs_hdr.CB_FLAG         =  fin_plan.CB             (+) and
20720             wbs_hdr.CO_FLAG         =  fin_plan.CO             (+) and
20721             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
20722             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+) and
20723             (wbs.SUP_LEVEL <> wbs.SUB_LEVEL or
20724              (wbs.SUP_LEVEL = 1 and
20725               wbs.SUB_LEVEL = 1))
20726           ) pjp,
20727           (
20728           select /*+ ordered */
20729             prg.SUP_PROJECT_ID,
20730             map.PROJECT_ORG_ID               SUP_PROJECT_ORG_ID,
20731             map.PROJECT_ORGANIZATION_ID      SUP_PROJECT_ORGANIZATION_ID,
20732             prg.SUP_ID,
20733             prg.SUP_EMT_ID,
20734             prg.SUP_LEVEL,
20735             prg.SUB_ID,
20736             prg.SUB_EMT_ID,
20737             prg.SUB_ROLLUP_ID,
20738             invert.INVERT_VALUE              RELATIONSHIP_TYPE,
20739             decode(prg.RELATIONSHIP_TYPE,
20740                    'LW', 'Y',
20741                    'LF', 'N')                WP_FLAG,
20742             'Y'                              PUSHUP_FLAG
20743           from
20744             PJI_PJP_PROJ_BATCH_MAP map,
20745             PJI_XBS_DENORM prg,
20746             (
20747               select 'LF' INVERT_ID, 'LF' INVERT_VALUE from dual union all
20748               select 'LW' INVERT_ID, 'LW' INVERT_VALUE from dual union all
20749               select 'A'  INVERT_ID, 'LF' INVERT_VALUE from dual union all
20750               select 'A'  INVERT_ID, 'LW' INVERT_VALUE from dual
20751             ) invert,
20752             PJI_XBS_DENORM_DELTA prg_delta
20753           where
20754             prg.STRUCT_TYPE               = 'PRG'                           and
20755             prg.SUB_ROLLUP_ID             is not null                       and
20756             prg.SUB_LEVEL                 = l_level                         and
20757             map.WORKER_ID                 = p_worker_id                     and
20758             map.PROJECT_ID                = prg.SUP_PROJECT_ID              and
20759             decode(prg.SUB_LEVEL,
20760                    prg.SUP_LEVEL, 'A',
20761                    prg.RELATIONSHIP_TYPE) = invert.INVERT_ID                and
20762             p_worker_id                   = prg_delta.WORKER_ID         (+) and
20763             prg.STRUCT_TYPE               = prg_delta.STRUCT_TYPE       (+) and
20764             prg.SUP_PROJECT_ID            = prg_delta.SUP_PROJECT_ID    (+) and
20765             prg.SUP_LEVEL                 = prg_delta.SUP_LEVEL         (+) and
20766             prg.SUP_ID                    = prg_delta.SUP_ID            (+) and
20767             prg.SUB_LEVEL                 = prg_delta.SUB_LEVEL         (+) and
20768             prg.SUB_ID                    = prg_delta.SUB_ID            (+) and
20769             prg.RELATIONSHIP_TYPE         = prg_delta.RELATIONSHIP_TYPE (+) and
20770             -1                            = prg_delta.SIGN              (+) and
20771             prg_delta.SUP_PROJECT_ID      is null
20772           )                          prg,
20773           PJI_PJP_WBS_HEADER         wbs_hdr,
20774           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
20775           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
20776           PA_PROJ_WORKPLAN_ATTR      sup_wpa
20777         where
20778           pjp.PROJECT_ID         = sub_ver.PROJECT_ID                (+) and
20779           pjp.WBS_VERSION_ID     = sub_ver.ELEMENT_VERSION_ID        (+) and
20780           'STRUCTURE_PUBLISHED'  = sub_ver.STATUS_CODE               (+) and
20781           pjp.WBS_VERSION_ID     = prg.SUB_ID                        (+) and
20782           pjp.RELATIONSHIP_TYPE  = prg.RELATIONSHIP_TYPE             (+) and
20783           pjp.PUSHUP_FLAG        = prg.PUSHUP_FLAG                   (+) and
20784           prg.SUP_PROJECT_ID     = wbs_hdr.PROJECT_ID                (+) and
20785           prg.SUP_ID             = wbs_hdr.WBS_VERSION_ID            (+) and
20786           prg.WP_FLAG            = wbs_hdr.WP_FLAG                   (+) and
20787           'Y'                    = wbs_hdr.WP_FLAG                   (+) and
20788           wbs_hdr.PROJECT_ID     = sup_ver.PROJECT_ID                (+) and
20789           wbs_hdr.WBS_VERSION_ID = sup_ver.ELEMENT_VERSION_ID        (+) and
20790           'STRUCTURE_PUBLISHED'  = sup_ver.STATUS_CODE               (+) and
20791           'Y'                    = sup_ver.LATEST_EFF_PUBLISHED_FLAG (+) and
20792           prg.SUP_EMT_ID         = sup_wpa.PROJ_ELEMENT_ID           (+)
20793         group by
20794           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20795                  pjp.INSERT_FLAG, 'Y'),
20796           pjp.RELATIONSHIP_TYPE,
20797           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20798                  null, sub_ver.STATUS_CODE),
20799           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20800                  null, sup_ver.STATUS_CODE),
20801           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20802                  null, sup_wpa.WP_ENABLE_VERSION_FLAG),
20803           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20804                  null, decode(pjp.PLAN_VERSION_ID,
20805                               -1, prg.SUP_ID,
20806                               -3, prg.SUP_ID,
20807                               -4, prg.SUP_ID,
20808                                   null)),
20809           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20810                  null, decode(pjp.PLAN_VERSION_ID,
20811                               -1, prg.SUP_EMT_ID,
20812                               -3, prg.SUP_EMT_ID,
20813                               -4, prg.SUP_EMT_ID,
20814                                   null)),
20815           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20816                  null, decode(pjp.PLAN_VERSION_ID,
20817                               -1, prg.WP_FLAG,
20818                               -3, prg.WP_FLAG,
20819                               -4, prg.WP_FLAG,
20820                                   null)),
20821           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20822                  l_level, prg.SUP_LEVEL),
20823           pjp.LINE_TYPE,
20824           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20825                  pjp.PROJECT_ID, prg.SUP_PROJECT_ID),
20826           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20827                  pjp.PROJECT_ORG_ID,
20828                  prg.SUP_PROJECT_ORG_ID),
20829           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20830                  pjp.PROJECT_ORGANIZATION_ID,
20831                  prg.SUP_PROJECT_ORGANIZATION_ID),
20832           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20833                  pjp.PROJECT_ELEMENT_ID,
20834                  prg.SUB_ROLLUP_ID),
20835           pjp.TIME_ID,
20836           pjp.PERIOD_TYPE_ID,
20837           pjp.CALENDAR_TYPE,
20838           pjp.RBS_AGGR_LEVEL,
20839           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20840                  pjp.WBS_ROLLUP_FLAG, 'N'),
20841           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20842                  pjp.PRG_ROLLUP_FLAG, 'Y'),
20843           pjp.CURR_RECORD_TYPE_ID,
20844           pjp.CURRENCY_CODE,
20845           pjp.RBS_ELEMENT_ID,
20846           pjp.RBS_VERSION_ID,
20847           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20848                  pjp.PLAN_VERSION_ID,
20849                  decode(pjp.PLAN_VERSION_ID,
20850                         -1, pjp.PLAN_VERSION_ID,
20851                         -2, pjp.PLAN_VERSION_ID,
20852                         -3, pjp.PLAN_VERSION_ID,
20853                         -4, pjp.PLAN_VERSION_ID,
20854                             wbs_hdr.PLAN_VERSION_ID)),
20855           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
20856                  pjp.PLAN_TYPE_ID,
20857                  decode(pjp.PLAN_VERSION_ID,
20858                         -1, pjp.PLAN_TYPE_ID,
20859                         -2, pjp.PLAN_TYPE_ID,
20860                         -3, pjp.PLAN_TYPE_ID,
20861                         -4, pjp.PLAN_TYPE_ID,
20862                             wbs_hdr.PLAN_TYPE_ID)),
20863           pjp.PLAN_TYPE_CODE
20864           )                          pjp1_i,
20865           PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
20866           PA_PROJ_WORKPLAN_ATTR      sup_wpa
20867         where
20868           pjp1_i.INSERT_FLAG  = 'Y'                                and
20869           pjp1_i.PROJECT_ID   = sup_fin_ver.PROJECT_ID         (+) and
20870           pjp1_i.SUP_ID       = sup_fin_ver.ELEMENT_VERSION_ID (+) and
20871           'STRUCTURE_WORKING' = sup_fin_ver.STATUS_CODE        (+) and
20872           pjp1_i.SUP_EMT_ID   = sup_wpa.PROJ_ELEMENT_ID        (+) and
20873           'N'                 = sup_wpa.WP_ENABLE_VERSION_FLAG (+) and
20874           (pjp1_i.SUP_ID is null or
20875            (pjp1_i.SUP_ID is not null and
20876             (sup_fin_ver.PROJECT_ID is not null or
20877              sup_wpa.PROJ_ELEMENT_ID is not null)));
20878     else
20879         return;
20880     end if;
20881 
20882     end if;
20883 
20884     end if;   /* Added for Bug 11843459 */
20885 
20886   end EXECUTE_ROLLUP_FPR_WBS;
20887 
20888 /* Procedure EXECUTE_ROLLUP_ACR_WBS added for Bug 7551819 */
20889   -- ----------------------------------------------------------
20890   -- procedure EXECUTE_ROLLUP_ACR_WBS
20891   --
20892   -- This is the same query as in ROLLUP_ACR_WBS
20893   -- To implement the worker logic, we are implementing this procedure.
20894   -- Because partition can't be a bind variable like table names.
20895   -- Any fix done in one if condition to be done in all 10 if conditions.
20896   -- ----------------------------------------------------------
20897   procedure EXECUTE_ROLLUP_ACR_WBS (p_worker_id in number default null,
20898                                     p_level in number default null) is
20899 
20900   l_level           number;
20901   begin
20902     l_level := p_level;
20903 
20904     if (p_worker_id =1) then
20905       -- Query for Partition 1
20906 
20907         insert /*+ parallel(PJI_AC_AGGR_PJP1) */
20908                    into PJI_AC_AGGR_PJP1 partition(P1)
20909         (
20910           WORKER_ID,
20911           RECORD_TYPE,
20912           PRG_LEVEL,
20913           PROJECT_ID,
20914           PROJECT_ORG_ID,
20915           PROJECT_ORGANIZATION_ID,
20916           PROJECT_ELEMENT_ID,
20917           TIME_ID,
20918           PERIOD_TYPE_ID,
20919           CALENDAR_TYPE,
20920           WBS_ROLLUP_FLAG,
20921           PRG_ROLLUP_FLAG,
20922           CURR_RECORD_TYPE_ID,
20923           CURRENCY_CODE,
20924           REVENUE,
20925           INITIAL_FUNDING_AMOUNT,
20926           INITIAL_FUNDING_COUNT,
20927           ADDITIONAL_FUNDING_AMOUNT,
20928           ADDITIONAL_FUNDING_COUNT,
20929           CANCELLED_FUNDING_AMOUNT,
20930           CANCELLED_FUNDING_COUNT,
20931           FUNDING_ADJUSTMENT_AMOUNT,
20932           FUNDING_ADJUSTMENT_COUNT,
20933           REVENUE_WRITEOFF,
20934           AR_INVOICE_AMOUNT,
20935           AR_INVOICE_COUNT,
20936           AR_CASH_APPLIED_AMOUNT,
20937           AR_INVOICE_WRITE_OFF_AMOUNT,
20938           AR_INVOICE_WRITEOFF_COUNT,
20939           AR_CREDIT_MEMO_AMOUNT,
20940           AR_CREDIT_MEMO_COUNT,
20941           UNBILLED_RECEIVABLES,
20942           UNEARNED_REVENUE,
20943           AR_UNAPPR_INVOICE_AMOUNT,
20944           AR_UNAPPR_INVOICE_COUNT,
20945           AR_APPR_INVOICE_AMOUNT,
20946           AR_APPR_INVOICE_COUNT,
20947           AR_AMOUNT_DUE,
20948           AR_COUNT_DUE,
20949           AR_AMOUNT_OVERDUE,
20950           AR_COUNT_OVERDUE,
20951           CUSTOM1,
20952           CUSTOM2,
20953           CUSTOM3,
20954           CUSTOM4,
20955           CUSTOM5,
20956           CUSTOM6,
20957           CUSTOM7,
20958           CUSTOM8,
20959           CUSTOM9,
20960           CUSTOM10,
20961           CUSTOM11,
20962           CUSTOM12,
20963           CUSTOM13,
20964           CUSTOM14,
20965           CUSTOM15
20966         )
20967         select
20968           pjp1_i.WORKER_ID,
20969           pjp1_i.RECORD_TYPE,
20970           pjp1_i.PRG_LEVEL,
20971           pjp1_i.PROJECT_ID,
20972           pjp1_i.PROJECT_ORG_ID,
20973           pjp1_i.PROJECT_ORGANIZATION_ID,
20974           pjp1_i.PROJECT_ELEMENT_ID,
20975           pjp1_i.TIME_ID,
20976           pjp1_i.PERIOD_TYPE_ID,
20977           pjp1_i.CALENDAR_TYPE,
20978           pjp1_i.WBS_ROLLUP_FLAG,
20979           pjp1_i.PRG_ROLLUP_FLAG,
20980           pjp1_i.CURR_RECORD_TYPE_ID,
20981           pjp1_i.CURRENCY_CODE,
20982           pjp1_i.REVENUE,
20983           pjp1_i.INITIAL_FUNDING_AMOUNT,
20984           pjp1_i.INITIAL_FUNDING_COUNT,
20985           pjp1_i.ADDITIONAL_FUNDING_AMOUNT,
20986           pjp1_i.ADDITIONAL_FUNDING_COUNT,
20987           pjp1_i.CANCELLED_FUNDING_AMOUNT,
20988           pjp1_i.CANCELLED_FUNDING_COUNT,
20989           pjp1_i.FUNDING_ADJUSTMENT_AMOUNT,
20990           pjp1_i.FUNDING_ADJUSTMENT_COUNT,
20991           pjp1_i.REVENUE_WRITEOFF,
20992           pjp1_i.AR_INVOICE_AMOUNT,
20993           pjp1_i.AR_INVOICE_COUNT,
20994           pjp1_i.AR_CASH_APPLIED_AMOUNT,
20995           pjp1_i.AR_INVOICE_WRITE_OFF_AMOUNT,
20996           pjp1_i.AR_INVOICE_WRITEOFF_COUNT,
20997           pjp1_i.AR_CREDIT_MEMO_AMOUNT,
20998           pjp1_i.AR_CREDIT_MEMO_COUNT,
20999           pjp1_i.UNBILLED_RECEIVABLES,
21000           pjp1_i.UNEARNED_REVENUE,
21001           pjp1_i.AR_UNAPPR_INVOICE_AMOUNT,
21002           pjp1_i.AR_UNAPPR_INVOICE_COUNT,
21003           pjp1_i.AR_APPR_INVOICE_AMOUNT,
21004           pjp1_i.AR_APPR_INVOICE_COUNT,
21005           pjp1_i.AR_AMOUNT_DUE,
21006           pjp1_i.AR_COUNT_DUE,
21007           pjp1_i.AR_AMOUNT_OVERDUE,
21008           pjp1_i.AR_COUNT_OVERDUE,
21009           pjp1_i.CUSTOM1,
21010           pjp1_i.CUSTOM2,
21011           pjp1_i.CUSTOM3,
21012           pjp1_i.CUSTOM4,
21013           pjp1_i.CUSTOM5,
21014           pjp1_i.CUSTOM6,
21015           pjp1_i.CUSTOM7,
21016           pjp1_i.CUSTOM8,
21017           pjp1_i.CUSTOM9,
21018           pjp1_i.CUSTOM10,
21019           pjp1_i.CUSTOM11,
21020           pjp1_i.CUSTOM12,
21021           pjp1_i.CUSTOM13,
21022           pjp1_i.CUSTOM14,
21023           pjp1_i.CUSTOM15
21024         from
21025           (
21026         select
21027           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21028                  pjp.INSERT_FLAG, 'Y')             INSERT_FLAG,
21029           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21030                  null, prg.SUP_ID)                 SUP_ID,
21031           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21032                  null, prg.SUP_EMT_ID)             SUP_EMT_ID,
21033           p_worker_id                              WORKER_ID,
21034           'W'                                      RECORD_TYPE,
21035           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21036                  l_level, prg.SUP_LEVEL)           PRG_LEVEL,
21037           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21038                  pjp.PROJECT_ID,
21039                  prg.SUP_PROJECT_ID)               PROJECT_ID,
21040           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21041                  pjp.PROJECT_ORG_ID,
21042                  prg.SUP_PROJECT_ORG_ID)           PROJECT_ORG_ID,
21043           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21044                  pjp.PROJECT_ORGANIZATION_ID,
21045                  prg.SUP_PROJECT_ORGANIZATION_ID)  PROJECT_ORGANIZATION_ID,
21046           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21047                  pjp.PROJECT_ELEMENT_ID,
21048                  prg.SUB_ROLLUP_ID)                PROJECT_ELEMENT_ID,
21049           pjp.TIME_ID,
21050           pjp.PERIOD_TYPE_ID,
21051           pjp.CALENDAR_TYPE,
21052           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21053                  pjp.WBS_ROLLUP_FLAG, 'N')         WBS_ROLLUP_FLAG,
21054           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21055                  pjp.PRG_ROLLUP_FLAG, 'Y')         PRG_ROLLUP_FLAG,
21056           pjp.CURR_RECORD_TYPE_ID,
21057           pjp.CURRENCY_CODE,
21058           sum(pjp.REVENUE)                         REVENUE,
21059           sum(pjp.INITIAL_FUNDING_AMOUNT)          INITIAL_FUNDING_AMOUNT,
21060           sum(pjp.INITIAL_FUNDING_COUNT)           INITIAL_FUNDING_COUNT,
21061           sum(pjp.ADDITIONAL_FUNDING_AMOUNT)       ADDITIONAL_FUNDING_AMOUNT,
21062           sum(pjp.ADDITIONAL_FUNDING_COUNT)        ADDITIONAL_FUNDING_COUNT,
21063           sum(pjp.CANCELLED_FUNDING_AMOUNT)        CANCELLED_FUNDING_AMOUNT,
21064           sum(pjp.CANCELLED_FUNDING_COUNT)         CANCELLED_FUNDING_COUNT,
21065           sum(pjp.FUNDING_ADJUSTMENT_AMOUNT)       FUNDING_ADJUSTMENT_AMOUNT,
21066           sum(pjp.FUNDING_ADJUSTMENT_COUNT)        FUNDING_ADJUSTMENT_COUNT,
21067           sum(pjp.REVENUE_WRITEOFF)                REVENUE_WRITEOFF,
21068           sum(pjp.AR_INVOICE_AMOUNT)               AR_INVOICE_AMOUNT,
21069           sum(pjp.AR_INVOICE_COUNT)                AR_INVOICE_COUNT,
21070           sum(pjp.AR_CASH_APPLIED_AMOUNT)          AR_CASH_APPLIED_AMOUNT,
21071           sum(pjp.AR_INVOICE_WRITE_OFF_AMOUNT)     AR_INVOICE_WRITE_OFF_AMOUNT,
21072           sum(pjp.AR_INVOICE_WRITEOFF_COUNT)       AR_INVOICE_WRITEOFF_COUNT,
21073           sum(pjp.AR_CREDIT_MEMO_AMOUNT)           AR_CREDIT_MEMO_AMOUNT,
21074           sum(pjp.AR_CREDIT_MEMO_COUNT)            AR_CREDIT_MEMO_COUNT,
21075           sum(pjp.UNBILLED_RECEIVABLES)            UNBILLED_RECEIVABLES,
21076           sum(pjp.UNEARNED_REVENUE)                UNEARNED_REVENUE,
21077           sum(pjp.AR_UNAPPR_INVOICE_AMOUNT)        AR_UNAPPR_INVOICE_AMOUNT,
21078           sum(pjp.AR_UNAPPR_INVOICE_COUNT)         AR_UNAPPR_INVOICE_COUNT,
21079           sum(pjp.AR_APPR_INVOICE_AMOUNT)          AR_APPR_INVOICE_AMOUNT,
21080           sum(pjp.AR_APPR_INVOICE_COUNT)           AR_APPR_INVOICE_COUNT,
21081           sum(pjp.AR_AMOUNT_DUE)                   AR_AMOUNT_DUE,
21082           sum(pjp.AR_COUNT_DUE)                    AR_COUNT_DUE,
21083           sum(pjp.AR_AMOUNT_OVERDUE)               AR_AMOUNT_OVERDUE,
21084           sum(pjp.AR_COUNT_OVERDUE)                AR_COUNT_OVERDUE,
21085           sum(pjp.CUSTOM1)                         CUSTOM1,
21086           sum(pjp.CUSTOM2)                         CUSTOM2,
21087           sum(pjp.CUSTOM3)                         CUSTOM3,
21088           sum(pjp.CUSTOM4)                         CUSTOM4,
21089           sum(pjp.CUSTOM5)                         CUSTOM5,
21090           sum(pjp.CUSTOM6)                         CUSTOM6,
21091           sum(pjp.CUSTOM7)                         CUSTOM7,
21092           sum(pjp.CUSTOM8)                         CUSTOM8,
21093           sum(pjp.CUSTOM9)                         CUSTOM9,
21094           sum(pjp.CUSTOM10)                        CUSTOM10,
21095           sum(pjp.CUSTOM11)                        CUSTOM11,
21096           sum(pjp.CUSTOM12)                        CUSTOM12,
21097           sum(pjp.CUSTOM13)                        CUSTOM13,
21098           sum(pjp.CUSTOM14)                        CUSTOM14,
21099           sum(pjp.CUSTOM15)                        CUSTOM15
21100         from
21101           (
21102           select /*+ ordered index(wbs PA_XBS_DENORM_N2) parallel(pjp1) */    -- changed for bug 5927368
21103                  -- get incremental task level amounts from source and
21104                  -- program rollup amounts from interim
21105             wbs_hdr.WBS_VERSION_ID,
21106             'LF'                                      RELATIONSHIP_TYPE,
21107             decode(top_slice.INVERT_ID,
21108                    'PRJ', 'Y',
21109                           decode(wbs.SUB_LEVEL,
21110                                  1, 'Y', 'N'))        PUSHUP_FLAG,
21111             'Y'                                       INSERT_FLAG,
21112             pjp1.PROJECT_ID,
21113             pjp1.PROJECT_ORG_ID,
21114             pjp1.PROJECT_ORGANIZATION_ID,
21115             decode(top_slice.INVERT_ID,
21116                    'PRJ', prg.SUP_EMT_ID,
21117                           decode(wbs.SUB_LEVEL,
21118                                  1, prg.SUP_EMT_ID,
21119                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
21120             pjp1.TIME_ID,
21121             pjp1.PERIOD_TYPE_ID,
21122             pjp1.CALENDAR_TYPE,
21123             'Y'                                       WBS_ROLLUP_FLAG,
21124             pjp1.PRG_ROLLUP_FLAG,
21125             pjp1.CURR_RECORD_TYPE_ID,
21126             pjp1.CURRENCY_CODE,
21127             pjp1.REVENUE,
21128             pjp1.INITIAL_FUNDING_AMOUNT,
21129             pjp1.INITIAL_FUNDING_COUNT,
21130             pjp1.ADDITIONAL_FUNDING_AMOUNT,
21131             pjp1.ADDITIONAL_FUNDING_COUNT,
21132             pjp1.CANCELLED_FUNDING_AMOUNT,
21133             pjp1.CANCELLED_FUNDING_COUNT,
21134             pjp1.FUNDING_ADJUSTMENT_AMOUNT,
21135             pjp1.FUNDING_ADJUSTMENT_COUNT,
21136             pjp1.REVENUE_WRITEOFF,
21137             pjp1.AR_INVOICE_AMOUNT,
21138             pjp1.AR_INVOICE_COUNT,
21139             pjp1.AR_CASH_APPLIED_AMOUNT,
21140             pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
21141             pjp1.AR_INVOICE_WRITEOFF_COUNT,
21142             pjp1.AR_CREDIT_MEMO_AMOUNT,
21143             pjp1.AR_CREDIT_MEMO_COUNT,
21144             pjp1.UNBILLED_RECEIVABLES,
21145             pjp1.UNEARNED_REVENUE,
21146             pjp1.AR_UNAPPR_INVOICE_AMOUNT,
21147             pjp1.AR_UNAPPR_INVOICE_COUNT,
21148             pjp1.AR_APPR_INVOICE_AMOUNT,
21149             pjp1.AR_APPR_INVOICE_COUNT,
21150             pjp1.AR_AMOUNT_DUE,
21151             pjp1.AR_COUNT_DUE,
21152             pjp1.AR_AMOUNT_OVERDUE,
21153             pjp1.AR_COUNT_OVERDUE,
21154             pjp1.CUSTOM1,
21155             pjp1.CUSTOM2,
21156             pjp1.CUSTOM3,
21157             pjp1.CUSTOM4,
21158             pjp1.CUSTOM5,
21159             pjp1.CUSTOM6,
21160             pjp1.CUSTOM7,
21161             pjp1.CUSTOM8,
21162             pjp1.CUSTOM9,
21163             pjp1.CUSTOM10,
21164             pjp1.CUSTOM11,
21165             pjp1.CUSTOM12,
21166             pjp1.CUSTOM13,
21167             pjp1.CUSTOM14,
21168             pjp1.CUSTOM15
21169           from
21170             PJI_AC_AGGR_PJP1   pjp1,
21171             PJI_PJP_WBS_HEADER wbs_hdr,
21172             PA_XBS_DENORM      wbs,
21173             PJI_XBS_DENORM     prg,
21174             (
21175               select 1     WBS_SUP_LEVEL,
21176                      1     WBS_SUB_LEVEL,
21177                      'PRJ' INVERT_ID
21178               from   DUAL
21179               union all
21180               select 1     WBS_SUP_LEVEL,
21181                      1     WBS_SUB_LEVEL,
21182                      'WBS' INVERT_ID
21183               from   DUAL
21184             ) top_slice
21185           where
21186             prg.STRUCT_TYPE         =  'PRG'                       and
21187             prg.SUP_LEVEL           =  l_level                     and
21188             prg.SUB_LEVEL           =  l_level                     and
21189             wbs.STRUCT_TYPE         =  'WBS'                       and
21190             ((wbs.SUP_LEVEL = 1 and
21191               wbs.SUB_LEVEL = 1) or
21192              (wbs.SUP_LEVEL <> wbs.SUB_LEVEL))                     and
21193             wbs.STRUCT_VERSION_ID   =  prg.SUP_ID                  and
21194             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
21195             pjp1.WORKER_ID          =  p_worker_id                 and
21196             pjp1.PRG_LEVEL          in (0, l_level)                and
21197             pjp1.WBS_ROLLUP_FLAG    =  'N'                         and
21198             pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                  and
21199             wbs_hdr.PLAN_VERSION_ID =  -1                          and
21200             pjp1.PROJECT_ID         =  wbs_hdr.PROJECT_ID          and
21201             wbs.STRUCT_VERSION_ID   =  wbs_hdr.WBS_VERSION_ID      and
21202             pjp1.PROJECT_ELEMENT_ID =  wbs.SUB_EMT_ID              and
21203             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
21204             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+)
21205           union all
21206           select /*+ ordered parallel(pjp1) */           -- changed for bug 5927368
21207                  -- get incremental project level amounts from source
21208             wbs_hdr.WBS_VERSION_ID,
21209             'LF'                                   RELATIONSHIP_TYPE,
21210             'Y'                                    PUSHUP_FLAG,
21211             'N'                                    INSERT_FLAG,
21212             pjp1.PROJECT_ID,
21213             pjp1.PROJECT_ORG_ID,
21214             pjp1.PROJECT_ORGANIZATION_ID,
21215             pjp1.PROJECT_ELEMENT_ID,
21216             pjp1.TIME_ID,
21217             pjp1.PERIOD_TYPE_ID,
21218             pjp1.CALENDAR_TYPE,
21219             'Y'                                    WBS_ROLLUP_FLAG,
21220             pjp1.PRG_ROLLUP_FLAG,
21221             pjp1.CURR_RECORD_TYPE_ID,
21222             pjp1.CURRENCY_CODE,
21223             pjp1.REVENUE,
21224             pjp1.INITIAL_FUNDING_AMOUNT,
21225             pjp1.INITIAL_FUNDING_COUNT,
21226             pjp1.ADDITIONAL_FUNDING_AMOUNT,
21227             pjp1.ADDITIONAL_FUNDING_COUNT,
21228             pjp1.CANCELLED_FUNDING_AMOUNT,
21229             pjp1.CANCELLED_FUNDING_COUNT,
21230             pjp1.FUNDING_ADJUSTMENT_AMOUNT,
21231             pjp1.FUNDING_ADJUSTMENT_COUNT,
21232             pjp1.REVENUE_WRITEOFF,
21233             pjp1.AR_INVOICE_AMOUNT,
21234             pjp1.AR_INVOICE_COUNT,
21235             pjp1.AR_CASH_APPLIED_AMOUNT,
21236             pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
21237             pjp1.AR_INVOICE_WRITEOFF_COUNT,
21238             pjp1.AR_CREDIT_MEMO_AMOUNT,
21239             pjp1.AR_CREDIT_MEMO_COUNT,
21240             pjp1.UNBILLED_RECEIVABLES,
21241             pjp1.UNEARNED_REVENUE,
21242             pjp1.AR_UNAPPR_INVOICE_AMOUNT,
21243             pjp1.AR_UNAPPR_INVOICE_COUNT,
21244             pjp1.AR_APPR_INVOICE_AMOUNT,
21245             pjp1.AR_APPR_INVOICE_COUNT,
21246             pjp1.AR_AMOUNT_DUE,
21247             pjp1.AR_COUNT_DUE,
21248             pjp1.AR_AMOUNT_OVERDUE,
21249             pjp1.AR_COUNT_OVERDUE,
21250             pjp1.CUSTOM1,
21251             pjp1.CUSTOM2,
21252             pjp1.CUSTOM3,
21253             pjp1.CUSTOM4,
21254             pjp1.CUSTOM5,
21255             pjp1.CUSTOM6,
21256             pjp1.CUSTOM7,
21257             pjp1.CUSTOM8,
21258             pjp1.CUSTOM9,
21259             pjp1.CUSTOM10,
21260             pjp1.CUSTOM11,
21261             pjp1.CUSTOM12,
21262             pjp1.CUSTOM13,
21263             pjp1.CUSTOM14,
21264             pjp1.CUSTOM15
21265           from
21266             PJI_AC_AGGR_PJP1   pjp1,
21267             PJI_PJP_WBS_HEADER wbs_hdr,
21268             PJI_XBS_DENORM     prg
21269           where
21270             prg.STRUCT_TYPE         = 'PRG'                              and
21271             prg.SUP_LEVEL           = l_level                            and
21272             prg.SUB_LEVEL           = l_level                            and
21273             pjp1.WORKER_ID          = p_worker_id                        and
21274             pjp1.PROJECT_ID         = prg.SUP_PROJECT_ID                 and
21275             pjp1.PROJECT_ELEMENT_ID = prg.SUP_EMT_ID                     and
21276             pjp1.PRG_LEVEL          = 0                                  and
21277             pjp1.WBS_ROLLUP_FLAG    = 'N'                                and
21278             pjp1.PRG_ROLLUP_FLAG    = 'N'                                and
21279             wbs_hdr.PROJECT_ID      = pjp1.PROJECT_ID                    and
21280             wbs_hdr.PLAN_VERSION_ID = -1                                 and
21281             wbs_hdr.WBS_VERSION_ID  = prg.SUP_ID
21282           union all
21283           select /*+ ordered
21284                      index(fpr PJI_AC_XBR_ACCUM_F_N1) */
21285                  -- get delta task level amounts from Reporting Lines
21286             wbs_hdr.WBS_VERSION_ID,
21287             'LF'                                   RELATIONSHIP_TYPE,
21288             decode(log.EVENT_TYPE,
21289                    'WBS_CHANGE', 'Y',
21290                    'WBS_PUBLISH', 'N')             PUSHUP_FLAG,
21291             'Y'                                    INSERT_FLAG,
21292             acr.PROJECT_ID,
21293             acr.PROJECT_ORG_ID,
21294             acr.PROJECT_ORGANIZATION_ID,
21295             decode(top_slice.INVERT_ID,
21296                    'PRJ', prg.SUP_EMT_ID,
21297                           decode(wbs.SUB_LEVEL,
21298                                  1, prg.SUP_EMT_ID,
21299                                     wbs.SUP_EMT_ID))
21300                                                    PROJECT_ELEMENT_ID,
21301             acr.TIME_ID,
21302             acr.PERIOD_TYPE_ID,
21303             acr.CALENDAR_TYPE,
21304             'Y'                                    WBS_ROLLUP_FLAG,
21305             acr.PRG_ROLLUP_FLAG,
21306             acr.CURR_RECORD_TYPE_ID,
21307             acr.CURRENCY_CODE,
21308             wbs.SIGN * acr.REVENUE                 REVENUE,
21309             wbs.SIGN * acr.INITIAL_FUNDING_AMOUNT  INITIAL_FUNDING_AMOUNT,
21310             wbs.SIGN * acr.INITIAL_FUNDING_COUNT   INITIAL_FUNDING_COUNT,
21311             wbs.SIGN * acr.ADDITIONAL_FUNDING_AMOUNT
21312                                                    ADDITIONAL_FUNDING_AMOUNT,
21313             wbs.SIGN * acr.ADDITIONAL_FUNDING_COUNT
21314                                                    ADDITIONAL_FUNDING_COUNT,
21315             wbs.SIGN * acr.CANCELLED_FUNDING_AMOUNT
21316                                                    CANCELLED_FUNDING_AMOUNT,
21317             wbs.SIGN * acr.CANCELLED_FUNDING_COUNT CANCELLED_FUNDING_COUNT,
21318             wbs.SIGN * acr.FUNDING_ADJUSTMENT_AMOUNT
21319                                                    FUNDING_ADJUSTMENT_AMOUNT,
21320             wbs.SIGN * acr.FUNDING_ADJUSTMENT_COUNT
21321                                                    FUNDING_ADJUSTMENT_COUNT,
21322             wbs.SIGN * acr.REVENUE_WRITEOFF        REVENUE_WRITEOFF,
21323             wbs.SIGN * acr.AR_INVOICE_AMOUNT       AR_INVOICE_AMOUNT,
21324             wbs.SIGN * acr.AR_INVOICE_COUNT        AR_INVOICE_COUNT,
21325             wbs.SIGN * acr.AR_CASH_APPLIED_AMOUNT  AR_CASH_APPLIED_AMOUNT,
21326             wbs.SIGN * acr.AR_INVOICE_WRITE_OFF_AMOUNT
21327                                                    AR_INVOICE_WRITE_OFF_AMOUNT,
21328             wbs.SIGN * acr.AR_INVOICE_WRITEOFF_COUNT
21329                                                    AR_INVOICE_WRITEOFF_COUNT,
21330             wbs.SIGN * acr.AR_CREDIT_MEMO_AMOUNT   AR_CREDIT_MEMO_AMOUNT,
21331             wbs.SIGN * acr.AR_CREDIT_MEMO_COUNT    AR_CREDIT_MEMO_COUNT,
21332             wbs.SIGN * acr.UNBILLED_RECEIVABLES    UNBILLED_RECEIVABLES,
21333             wbs.SIGN * acr.UNEARNED_REVENUE        UNEARNED_REVENUE,
21334             wbs.SIGN * acr.AR_UNAPPR_INVOICE_AMOUNT
21335                                                    AR_UNAPPR_INVOICE_AMOUNT,
21336             wbs.SIGN * acr.AR_UNAPPR_INVOICE_COUNT AR_UNAPPR_INVOICE_COUNT,
21337             wbs.SIGN * acr.AR_APPR_INVOICE_AMOUNT  AR_APPR_INVOICE_AMOUNT,
21338             wbs.SIGN * acr.AR_APPR_INVOICE_COUNT   AR_APPR_INVOICE_COUNT,
21339             wbs.SIGN * acr.AR_AMOUNT_DUE           AR_AMOUNT_DUE,
21340             wbs.SIGN * acr.AR_COUNT_DUE            AR_COUNT_DUE,
21341             wbs.SIGN * acr.AR_AMOUNT_OVERDUE       AR_AMOUNT_OVERDUE,
21342             wbs.SIGN * acr.AR_COUNT_OVERDUE        AR_COUNT_OVERDUE,
21343             wbs.SIGN * acr.CUSTOM1                 CUSTOM1,
21344             wbs.SIGN * acr.CUSTOM2                 CUSTOM2,
21345             wbs.SIGN * acr.CUSTOM3                 CUSTOM3,
21346             wbs.SIGN * acr.CUSTOM4                 CUSTOM4,
21347             wbs.SIGN * acr.CUSTOM5                 CUSTOM5,
21348             wbs.SIGN * acr.CUSTOM6                 CUSTOM6,
21349             wbs.SIGN * acr.CUSTOM7                 CUSTOM7,
21350             wbs.SIGN * acr.CUSTOM8                 CUSTOM8,
21351             wbs.SIGN * acr.CUSTOM9                 CUSTOM9,
21352             wbs.SIGN * acr.CUSTOM10                CUSTOM10,
21353             wbs.SIGN * acr.CUSTOM11                CUSTOM11,
21354             wbs.SIGN * acr.CUSTOM12                CUSTOM12,
21355             wbs.SIGN * acr.CUSTOM13                CUSTOM13,
21356             wbs.SIGN * acr.CUSTOM14                CUSTOM14,
21357             wbs.SIGN * acr.CUSTOM15                CUSTOM15
21358           from
21359             PJI_PA_PROJ_EVENTS_LOG log,
21360             PJI_PJP_WBS_HEADER     wbs_hdr,
21361             PJI_XBS_DENORM_DELTA   wbs,
21362             PJI_XBS_DENORM         prg,
21363             PJI_AC_XBS_ACCUM_F     acr,
21364             (
21365               select 1     WBS_SUP_LEVEL,
21366                      1     WBS_SUB_LEVEL,
21367                      'PRJ' INVERT_ID
21368               from   DUAL
21369               union all
21370               select 1     WBS_SUP_LEVEL,
21371                      1     WBS_SUB_LEVEL,
21372                      'WBS' INVERT_ID
21373               from   DUAL
21374             ) top_slice
21375           where
21376             prg.STRUCT_TYPE         =  'PRG'                       and
21377             prg.SUP_LEVEL           =  l_level                     and
21378             prg.SUB_LEVEL           =  l_level                     and
21379             wbs.WORKER_ID           =  p_worker_id                 and
21380             wbs.STRUCT_TYPE         =  'WBS'                       and
21381             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
21382             log.WORKER_ID           =  p_worker_id                 and
21383             log.EVENT_ID            =  wbs.EVENT_ID                and
21384             log.EVENT_TYPE          in ('WBS_CHANGE',
21385                                         'WBS_PUBLISH')             and
21386             wbs_hdr.PROJECT_ID      =  log.ATTRIBUTE1              and
21387             wbs_hdr.PLAN_VERSION_ID =  log.ATTRIBUTE3              and
21388             wbs_hdr.PLAN_VERSION_ID =  -1                          and
21389             wbs_hdr.WBS_VERSION_ID  =  wbs.STRUCT_VERSION_ID       and
21390             wbs_hdr.PROJECT_ID      =  prg.SUP_PROJECT_ID          and
21391             wbs_hdr.WBS_VERSION_ID  =  prg.SUP_ID                  and
21392             acr.WBS_ROLLUP_FLAG     =  'N'                         and
21393             acr.PRG_ROLLUP_FLAG     =  'N'                         and
21394             acr.PROJECT_ID          =  wbs.SUP_PROJECT_ID          and
21395             acr.PROJECT_ELEMENT_ID  =  wbs.SUB_EMT_ID              and
21396             acr.PROJECT_ID          =  wbs_hdr.PROJECT_ID          and
21397             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
21398             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+) and
21399             (wbs.SUP_LEVEL <> wbs.SUB_LEVEL or
21400              (wbs.SUP_LEVEL = 1 and
21401               wbs.SUB_LEVEL = 1))
21402           ) pjp,
21403           (
21404           select /*+ ordered */
21405             prg.SUP_PROJECT_ID,
21406             map.PROJECT_ORG_ID               SUP_PROJECT_ORG_ID,
21407             map.PROJECT_ORGANIZATION_ID      SUP_PROJECT_ORGANIZATION_ID,
21408             prg.SUP_ID,
21409             prg.SUP_EMT_ID,
21410             prg.SUP_LEVEL,
21411             prg.SUB_ID,
21412             prg.SUB_EMT_ID,
21413             prg.SUB_ROLLUP_ID,
21414             prg.RELATIONSHIP_TYPE            RELATIONSHIP_TYPE,
21415             'Y'                              PUSHUP_FLAG
21416           from
21417             PJI_PJP_PROJ_BATCH_MAP map,
21418             PJI_XBS_DENORM         prg,
21419             PJI_XBS_DENORM_DELTA   prg_delta
21420           where
21421             prg.STRUCT_TYPE          = 'PRG'                           and
21422             prg.RELATIONSHIP_TYPE    = 'LF'                            and
21423             prg.SUB_ROLLUP_ID        is not null                       and
21424             prg.SUB_LEVEL            = l_level                         and
21425             map.WORKER_ID            = p_worker_id                     and
21426             map.PROJECT_ID           = prg.SUP_PROJECT_ID              and
21427             p_worker_id              = prg_delta.WORKER_ID         (+) and
21428             prg.STRUCT_TYPE          = prg_delta.STRUCT_TYPE       (+) and
21429             prg.SUP_PROJECT_ID       = prg_delta.SUP_PROJECT_ID    (+) and
21430             prg.SUP_LEVEL            = prg_delta.SUP_LEVEL         (+) and
21431             prg.SUP_ID               = prg_delta.SUP_ID            (+) and
21432             prg.SUB_LEVEL            = prg_delta.SUB_LEVEL         (+) and
21433             prg.SUB_ID               = prg_delta.SUB_ID            (+) and
21434             prg.RELATIONSHIP_TYPE    = prg_delta.RELATIONSHIP_TYPE (+) and
21435             -1                       = prg_delta.SIGN              (+) and
21436             prg_delta.SUP_PROJECT_ID is null
21437           ) prg
21438         where
21439           pjp.WBS_VERSION_ID    = prg.SUB_ID            (+) and
21440           pjp.RELATIONSHIP_TYPE = prg.RELATIONSHIP_TYPE (+) and
21441           pjp.PUSHUP_FLAG       = prg.PUSHUP_FLAG       (+)
21442         group by
21443           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21444                  pjp.INSERT_FLAG, 'Y'),
21445           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21446                  null, prg.SUP_ID),
21447           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21448                  null, prg.SUP_EMT_ID),
21449           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21450                  l_level, prg.SUP_LEVEL),
21451           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21452                  pjp.PROJECT_ID,
21453                  prg.SUP_PROJECT_ID),
21454           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21455                  pjp.PROJECT_ORG_ID,
21456                  prg.SUP_PROJECT_ORG_ID),
21457           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21458                  pjp.PROJECT_ORGANIZATION_ID,
21459                  prg.SUP_PROJECT_ORGANIZATION_ID),
21460           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21461                  pjp.PROJECT_ELEMENT_ID,
21462                  prg.SUB_ROLLUP_ID),
21463           pjp.TIME_ID,
21464           pjp.PERIOD_TYPE_ID,
21465           pjp.CALENDAR_TYPE,
21466           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21467                  pjp.WBS_ROLLUP_FLAG, 'N'),
21468           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21469                  pjp.PRG_ROLLUP_FLAG, 'Y'),
21470           pjp.CURR_RECORD_TYPE_ID,
21471           pjp.CURRENCY_CODE
21472           )                          pjp1_i,
21473           PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
21474           PA_PROJ_WORKPLAN_ATTR      sup_wpa
21475         where
21476           pjp1_i.INSERT_FLAG  = 'Y'                                and
21477           pjp1_i.PROJECT_ID   = sup_fin_ver.PROJECT_ID         (+) and
21478           pjp1_i.SUP_ID       = sup_fin_ver.ELEMENT_VERSION_ID (+) and
21479           'STRUCTURE_WORKING' = sup_fin_ver.STATUS_CODE        (+) and
21480           pjp1_i.SUP_EMT_ID   = sup_wpa.PROJ_ELEMENT_ID        (+) and
21481           'N'                 = sup_wpa.WP_ENABLE_VERSION_FLAG (+) and
21482           (pjp1_i.SUP_ID is null or
21483            (pjp1_i.SUP_ID is not null and
21484             (sup_fin_ver.PROJECT_ID is not null or
21485              sup_wpa.PROJ_ELEMENT_ID is not null)));
21486     elsif (p_worker_id =2) then
21487       -- Query for Partition 2
21488 
21489         insert /*+ parallel(PJI_AC_AGGR_PJP1) */
21490                    into PJI_AC_AGGR_PJP1 partition(P2)
21491         (
21492           WORKER_ID,
21493           RECORD_TYPE,
21494           PRG_LEVEL,
21495           PROJECT_ID,
21496           PROJECT_ORG_ID,
21497           PROJECT_ORGANIZATION_ID,
21498           PROJECT_ELEMENT_ID,
21499           TIME_ID,
21500           PERIOD_TYPE_ID,
21501           CALENDAR_TYPE,
21502           WBS_ROLLUP_FLAG,
21503           PRG_ROLLUP_FLAG,
21504           CURR_RECORD_TYPE_ID,
21505           CURRENCY_CODE,
21506           REVENUE,
21507           INITIAL_FUNDING_AMOUNT,
21508           INITIAL_FUNDING_COUNT,
21509           ADDITIONAL_FUNDING_AMOUNT,
21510           ADDITIONAL_FUNDING_COUNT,
21511           CANCELLED_FUNDING_AMOUNT,
21512           CANCELLED_FUNDING_COUNT,
21513           FUNDING_ADJUSTMENT_AMOUNT,
21514           FUNDING_ADJUSTMENT_COUNT,
21515           REVENUE_WRITEOFF,
21516           AR_INVOICE_AMOUNT,
21517           AR_INVOICE_COUNT,
21518           AR_CASH_APPLIED_AMOUNT,
21519           AR_INVOICE_WRITE_OFF_AMOUNT,
21520           AR_INVOICE_WRITEOFF_COUNT,
21521           AR_CREDIT_MEMO_AMOUNT,
21522           AR_CREDIT_MEMO_COUNT,
21523           UNBILLED_RECEIVABLES,
21524           UNEARNED_REVENUE,
21525           AR_UNAPPR_INVOICE_AMOUNT,
21526           AR_UNAPPR_INVOICE_COUNT,
21527           AR_APPR_INVOICE_AMOUNT,
21528           AR_APPR_INVOICE_COUNT,
21529           AR_AMOUNT_DUE,
21530           AR_COUNT_DUE,
21531           AR_AMOUNT_OVERDUE,
21532           AR_COUNT_OVERDUE,
21533           CUSTOM1,
21534           CUSTOM2,
21535           CUSTOM3,
21536           CUSTOM4,
21537           CUSTOM5,
21538           CUSTOM6,
21539           CUSTOM7,
21540           CUSTOM8,
21541           CUSTOM9,
21542           CUSTOM10,
21543           CUSTOM11,
21544           CUSTOM12,
21545           CUSTOM13,
21546           CUSTOM14,
21547           CUSTOM15
21548         )
21549         select
21550           pjp1_i.WORKER_ID,
21551           pjp1_i.RECORD_TYPE,
21552           pjp1_i.PRG_LEVEL,
21553           pjp1_i.PROJECT_ID,
21554           pjp1_i.PROJECT_ORG_ID,
21555           pjp1_i.PROJECT_ORGANIZATION_ID,
21556           pjp1_i.PROJECT_ELEMENT_ID,
21557           pjp1_i.TIME_ID,
21558           pjp1_i.PERIOD_TYPE_ID,
21559           pjp1_i.CALENDAR_TYPE,
21560           pjp1_i.WBS_ROLLUP_FLAG,
21561           pjp1_i.PRG_ROLLUP_FLAG,
21562           pjp1_i.CURR_RECORD_TYPE_ID,
21563           pjp1_i.CURRENCY_CODE,
21564           pjp1_i.REVENUE,
21565           pjp1_i.INITIAL_FUNDING_AMOUNT,
21566           pjp1_i.INITIAL_FUNDING_COUNT,
21567           pjp1_i.ADDITIONAL_FUNDING_AMOUNT,
21568           pjp1_i.ADDITIONAL_FUNDING_COUNT,
21569           pjp1_i.CANCELLED_FUNDING_AMOUNT,
21570           pjp1_i.CANCELLED_FUNDING_COUNT,
21571           pjp1_i.FUNDING_ADJUSTMENT_AMOUNT,
21572           pjp1_i.FUNDING_ADJUSTMENT_COUNT,
21573           pjp1_i.REVENUE_WRITEOFF,
21574           pjp1_i.AR_INVOICE_AMOUNT,
21575           pjp1_i.AR_INVOICE_COUNT,
21576           pjp1_i.AR_CASH_APPLIED_AMOUNT,
21577           pjp1_i.AR_INVOICE_WRITE_OFF_AMOUNT,
21578           pjp1_i.AR_INVOICE_WRITEOFF_COUNT,
21579           pjp1_i.AR_CREDIT_MEMO_AMOUNT,
21580           pjp1_i.AR_CREDIT_MEMO_COUNT,
21581           pjp1_i.UNBILLED_RECEIVABLES,
21582           pjp1_i.UNEARNED_REVENUE,
21583           pjp1_i.AR_UNAPPR_INVOICE_AMOUNT,
21584           pjp1_i.AR_UNAPPR_INVOICE_COUNT,
21585           pjp1_i.AR_APPR_INVOICE_AMOUNT,
21586           pjp1_i.AR_APPR_INVOICE_COUNT,
21587           pjp1_i.AR_AMOUNT_DUE,
21588           pjp1_i.AR_COUNT_DUE,
21589           pjp1_i.AR_AMOUNT_OVERDUE,
21590           pjp1_i.AR_COUNT_OVERDUE,
21591           pjp1_i.CUSTOM1,
21592           pjp1_i.CUSTOM2,
21593           pjp1_i.CUSTOM3,
21594           pjp1_i.CUSTOM4,
21595           pjp1_i.CUSTOM5,
21596           pjp1_i.CUSTOM6,
21597           pjp1_i.CUSTOM7,
21598           pjp1_i.CUSTOM8,
21599           pjp1_i.CUSTOM9,
21600           pjp1_i.CUSTOM10,
21601           pjp1_i.CUSTOM11,
21602           pjp1_i.CUSTOM12,
21603           pjp1_i.CUSTOM13,
21604           pjp1_i.CUSTOM14,
21605           pjp1_i.CUSTOM15
21606         from
21607           (
21608         select
21609           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21610                  pjp.INSERT_FLAG, 'Y')             INSERT_FLAG,
21611           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21612                  null, prg.SUP_ID)                 SUP_ID,
21613           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21614                  null, prg.SUP_EMT_ID)             SUP_EMT_ID,
21615           p_worker_id                              WORKER_ID,
21616           'W'                                      RECORD_TYPE,
21617           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21618                  l_level, prg.SUP_LEVEL)           PRG_LEVEL,
21619           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21620                  pjp.PROJECT_ID,
21621                  prg.SUP_PROJECT_ID)               PROJECT_ID,
21622           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21623                  pjp.PROJECT_ORG_ID,
21624                  prg.SUP_PROJECT_ORG_ID)           PROJECT_ORG_ID,
21625           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21626                  pjp.PROJECT_ORGANIZATION_ID,
21627                  prg.SUP_PROJECT_ORGANIZATION_ID)  PROJECT_ORGANIZATION_ID,
21628           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21629                  pjp.PROJECT_ELEMENT_ID,
21630                  prg.SUB_ROLLUP_ID)                PROJECT_ELEMENT_ID,
21631           pjp.TIME_ID,
21632           pjp.PERIOD_TYPE_ID,
21633           pjp.CALENDAR_TYPE,
21634           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21635                  pjp.WBS_ROLLUP_FLAG, 'N')         WBS_ROLLUP_FLAG,
21636           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
21637                  pjp.PRG_ROLLUP_FLAG, 'Y')         PRG_ROLLUP_FLAG,
21638           pjp.CURR_RECORD_TYPE_ID,
21639           pjp.CURRENCY_CODE,
21640           sum(pjp.REVENUE)                         REVENUE,
21641           sum(pjp.INITIAL_FUNDING_AMOUNT)          INITIAL_FUNDING_AMOUNT,
21642           sum(pjp.INITIAL_FUNDING_COUNT)           INITIAL_FUNDING_COUNT,
21643           sum(pjp.ADDITIONAL_FUNDING_AMOUNT)       ADDITIONAL_FUNDING_AMOUNT,
21644           sum(pjp.ADDITIONAL_FUNDING_COUNT)        ADDITIONAL_FUNDING_COUNT,
21645           sum(pjp.CANCELLED_FUNDING_AMOUNT)        CANCELLED_FUNDING_AMOUNT,
21646           sum(pjp.CANCELLED_FUNDING_COUNT)         CANCELLED_FUNDING_COUNT,
21647           sum(pjp.FUNDING_ADJUSTMENT_AMOUNT)       FUNDING_ADJUSTMENT_AMOUNT,
21648           sum(pjp.FUNDING_ADJUSTMENT_COUNT)        FUNDING_ADJUSTMENT_COUNT,
21649           sum(pjp.REVENUE_WRITEOFF)                REVENUE_WRITEOFF,
21650           sum(pjp.AR_INVOICE_AMOUNT)               AR_INVOICE_AMOUNT,
21651           sum(pjp.AR_INVOICE_COUNT)                AR_INVOICE_COUNT,
21652           sum(pjp.AR_CASH_APPLIED_AMOUNT)          AR_CASH_APPLIED_AMOUNT,
21653           sum(pjp.AR_INVOICE_WRITE_OFF_AMOUNT)     AR_INVOICE_WRITE_OFF_AMOUNT,
21654           sum(pjp.AR_INVOICE_WRITEOFF_COUNT)       AR_INVOICE_WRITEOFF_COUNT,
21655           sum(pjp.AR_CREDIT_MEMO_AMOUNT)           AR_CREDIT_MEMO_AMOUNT,
21656           sum(pjp.AR_CREDIT_MEMO_COUNT)            AR_CREDIT_MEMO_COUNT,
21657           sum(pjp.UNBILLED_RECEIVABLES)            UNBILLED_RECEIVABLES,
21658           sum(pjp.UNEARNED_REVENUE)                UNEARNED_REVENUE,
21659           sum(pjp.AR_UNAPPR_INVOICE_AMOUNT)        AR_UNAPPR_INVOICE_AMOUNT,
21660           sum(pjp.AR_UNAPPR_INVOICE_COUNT)         AR_UNAPPR_INVOICE_COUNT,
21661           sum(pjp.AR_APPR_INVOICE_AMOUNT)          AR_APPR_INVOICE_AMOUNT,
21662           sum(pjp.AR_APPR_INVOICE_COUNT)           AR_APPR_INVOICE_COUNT,
21663           sum(pjp.AR_AMOUNT_DUE)                   AR_AMOUNT_DUE,
21664           sum(pjp.AR_COUNT_DUE)                    AR_COUNT_DUE,
21665           sum(pjp.AR_AMOUNT_OVERDUE)               AR_AMOUNT_OVERDUE,
21666           sum(pjp.AR_COUNT_OVERDUE)                AR_COUNT_OVERDUE,
21667           sum(pjp.CUSTOM1)                         CUSTOM1,
21668           sum(pjp.CUSTOM2)                         CUSTOM2,
21669           sum(pjp.CUSTOM3)                         CUSTOM3,
21670           sum(pjp.CUSTOM4)                         CUSTOM4,
21671           sum(pjp.CUSTOM5)                         CUSTOM5,
21672           sum(pjp.CUSTOM6)                         CUSTOM6,
21673           sum(pjp.CUSTOM7)                         CUSTOM7,
21674           sum(pjp.CUSTOM8)                         CUSTOM8,
21675           sum(pjp.CUSTOM9)                         CUSTOM9,
21676           sum(pjp.CUSTOM10)                        CUSTOM10,
21677           sum(pjp.CUSTOM11)                        CUSTOM11,
21678           sum(pjp.CUSTOM12)                        CUSTOM12,
21679           sum(pjp.CUSTOM13)                        CUSTOM13,
21680           sum(pjp.CUSTOM14)                        CUSTOM14,
21681           sum(pjp.CUSTOM15)                        CUSTOM15
21682         from
21683           (
21684           select /*+ ordered index(wbs PA_XBS_DENORM_N2) parallel(pjp1) */    -- changed for bug 5927368
21685                  -- get incremental task level amounts from source and
21686                  -- program rollup amounts from interim
21687             wbs_hdr.WBS_VERSION_ID,
21688             'LF'                                      RELATIONSHIP_TYPE,
21689             decode(top_slice.INVERT_ID,
21690                    'PRJ', 'Y',
21691                           decode(wbs.SUB_LEVEL,
21692                                  1, 'Y', 'N'))        PUSHUP_FLAG,
21693             'Y'                                       INSERT_FLAG,
21694             pjp1.PROJECT_ID,
21695             pjp1.PROJECT_ORG_ID,
21696             pjp1.PROJECT_ORGANIZATION_ID,
21697             decode(top_slice.INVERT_ID,
21698                    'PRJ', prg.SUP_EMT_ID,
21699                           decode(wbs.SUB_LEVEL,
21700                                  1, prg.SUP_EMT_ID,
21701                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
21702             pjp1.TIME_ID,
21703             pjp1.PERIOD_TYPE_ID,
21704             pjp1.CALENDAR_TYPE,
21705             'Y'                                       WBS_ROLLUP_FLAG,
21706             pjp1.PRG_ROLLUP_FLAG,
21707             pjp1.CURR_RECORD_TYPE_ID,
21708             pjp1.CURRENCY_CODE,
21709             pjp1.REVENUE,
21710             pjp1.INITIAL_FUNDING_AMOUNT,
21711             pjp1.INITIAL_FUNDING_COUNT,
21712             pjp1.ADDITIONAL_FUNDING_AMOUNT,
21713             pjp1.ADDITIONAL_FUNDING_COUNT,
21714             pjp1.CANCELLED_FUNDING_AMOUNT,
21715             pjp1.CANCELLED_FUNDING_COUNT,
21716             pjp1.FUNDING_ADJUSTMENT_AMOUNT,
21717             pjp1.FUNDING_ADJUSTMENT_COUNT,
21718             pjp1.REVENUE_WRITEOFF,
21719             pjp1.AR_INVOICE_AMOUNT,
21720             pjp1.AR_INVOICE_COUNT,
21721             pjp1.AR_CASH_APPLIED_AMOUNT,
21722             pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
21723             pjp1.AR_INVOICE_WRITEOFF_COUNT,
21724             pjp1.AR_CREDIT_MEMO_AMOUNT,
21725             pjp1.AR_CREDIT_MEMO_COUNT,
21726             pjp1.UNBILLED_RECEIVABLES,
21727             pjp1.UNEARNED_REVENUE,
21728             pjp1.AR_UNAPPR_INVOICE_AMOUNT,
21729             pjp1.AR_UNAPPR_INVOICE_COUNT,
21730             pjp1.AR_APPR_INVOICE_AMOUNT,
21731             pjp1.AR_APPR_INVOICE_COUNT,
21732             pjp1.AR_AMOUNT_DUE,
21733             pjp1.AR_COUNT_DUE,
21734             pjp1.AR_AMOUNT_OVERDUE,
21735             pjp1.AR_COUNT_OVERDUE,
21736             pjp1.CUSTOM1,
21737             pjp1.CUSTOM2,
21738             pjp1.CUSTOM3,
21739             pjp1.CUSTOM4,
21740             pjp1.CUSTOM5,
21741             pjp1.CUSTOM6,
21742             pjp1.CUSTOM7,
21743             pjp1.CUSTOM8,
21744             pjp1.CUSTOM9,
21745             pjp1.CUSTOM10,
21746             pjp1.CUSTOM11,
21747             pjp1.CUSTOM12,
21748             pjp1.CUSTOM13,
21749             pjp1.CUSTOM14,
21750             pjp1.CUSTOM15
21751           from
21752             PJI_AC_AGGR_PJP1   pjp1,
21753             PJI_PJP_WBS_HEADER wbs_hdr,
21754             PA_XBS_DENORM      wbs,
21755             PJI_XBS_DENORM     prg,
21756             (
21757               select 1     WBS_SUP_LEVEL,
21758                      1     WBS_SUB_LEVEL,
21759                      'PRJ' INVERT_ID
21760               from   DUAL
21761               union all
21762               select 1     WBS_SUP_LEVEL,
21763                      1     WBS_SUB_LEVEL,
21764                      'WBS' INVERT_ID
21765               from   DUAL
21766             ) top_slice
21767           where
21768             prg.STRUCT_TYPE         =  'PRG'                       and
21769             prg.SUP_LEVEL           =  l_level                     and
21770             prg.SUB_LEVEL           =  l_level                     and
21771             wbs.STRUCT_TYPE         =  'WBS'                       and
21772             ((wbs.SUP_LEVEL = 1 and
21773               wbs.SUB_LEVEL = 1) or
21774              (wbs.SUP_LEVEL <> wbs.SUB_LEVEL))                     and
21775             wbs.STRUCT_VERSION_ID   =  prg.SUP_ID                  and
21776             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
21777             pjp1.WORKER_ID          =  p_worker_id                 and
21778             pjp1.PRG_LEVEL          in (0, l_level)                and
21779             pjp1.WBS_ROLLUP_FLAG    =  'N'                         and
21780             pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                  and
21781             wbs_hdr.PLAN_VERSION_ID =  -1                          and
21782             pjp1.PROJECT_ID         =  wbs_hdr.PROJECT_ID          and
21783             wbs.STRUCT_VERSION_ID   =  wbs_hdr.WBS_VERSION_ID      and
21784             pjp1.PROJECT_ELEMENT_ID =  wbs.SUB_EMT_ID              and
21785             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
21786             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+)
21787           union all
21788           select /*+ ordered parallel(pjp1) */           -- changed for bug 5927368
21789                  -- get incremental project level amounts from source
21790             wbs_hdr.WBS_VERSION_ID,
21791             'LF'                                   RELATIONSHIP_TYPE,
21792             'Y'                                    PUSHUP_FLAG,
21793             'N'                                    INSERT_FLAG,
21794             pjp1.PROJECT_ID,
21795             pjp1.PROJECT_ORG_ID,
21796             pjp1.PROJECT_ORGANIZATION_ID,
21797             pjp1.PROJECT_ELEMENT_ID,
21798             pjp1.TIME_ID,
21799             pjp1.PERIOD_TYPE_ID,
21800             pjp1.CALENDAR_TYPE,
21801             'Y'                                    WBS_ROLLUP_FLAG,
21802             pjp1.PRG_ROLLUP_FLAG,
21803             pjp1.CURR_RECORD_TYPE_ID,
21804             pjp1.CURRENCY_CODE,
21805             pjp1.REVENUE,
21806             pjp1.INITIAL_FUNDING_AMOUNT,
21807             pjp1.INITIAL_FUNDING_COUNT,
21808             pjp1.ADDITIONAL_FUNDING_AMOUNT,
21809             pjp1.ADDITIONAL_FUNDING_COUNT,
21810             pjp1.CANCELLED_FUNDING_AMOUNT,
21811             pjp1.CANCELLED_FUNDING_COUNT,
21812             pjp1.FUNDING_ADJUSTMENT_AMOUNT,
21813             pjp1.FUNDING_ADJUSTMENT_COUNT,
21814             pjp1.REVENUE_WRITEOFF,
21815             pjp1.AR_INVOICE_AMOUNT,
21816             pjp1.AR_INVOICE_COUNT,
21817             pjp1.AR_CASH_APPLIED_AMOUNT,
21818             pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
21819             pjp1.AR_INVOICE_WRITEOFF_COUNT,
21820             pjp1.AR_CREDIT_MEMO_AMOUNT,
21821             pjp1.AR_CREDIT_MEMO_COUNT,
21822             pjp1.UNBILLED_RECEIVABLES,
21823             pjp1.UNEARNED_REVENUE,
21824             pjp1.AR_UNAPPR_INVOICE_AMOUNT,
21825             pjp1.AR_UNAPPR_INVOICE_COUNT,
21826             pjp1.AR_APPR_INVOICE_AMOUNT,
21827             pjp1.AR_APPR_INVOICE_COUNT,
21828             pjp1.AR_AMOUNT_DUE,
21829             pjp1.AR_COUNT_DUE,
21830             pjp1.AR_AMOUNT_OVERDUE,
21831             pjp1.AR_COUNT_OVERDUE,
21832             pjp1.CUSTOM1,
21833             pjp1.CUSTOM2,
21834             pjp1.CUSTOM3,
21835             pjp1.CUSTOM4,
21836             pjp1.CUSTOM5,
21837             pjp1.CUSTOM6,
21838             pjp1.CUSTOM7,
21839             pjp1.CUSTOM8,
21840             pjp1.CUSTOM9,
21841             pjp1.CUSTOM10,
21842             pjp1.CUSTOM11,
21843             pjp1.CUSTOM12,
21844             pjp1.CUSTOM13,
21845             pjp1.CUSTOM14,
21846             pjp1.CUSTOM15
21847           from
21848             PJI_AC_AGGR_PJP1   pjp1,
21849             PJI_PJP_WBS_HEADER wbs_hdr,
21850             PJI_XBS_DENORM     prg
21851           where
21852             prg.STRUCT_TYPE         = 'PRG'                              and
21853             prg.SUP_LEVEL           = l_level                            and
21854             prg.SUB_LEVEL           = l_level                            and
21855             pjp1.WORKER_ID          = p_worker_id                        and
21856             pjp1.PROJECT_ID         = prg.SUP_PROJECT_ID                 and
21857             pjp1.PROJECT_ELEMENT_ID = prg.SUP_EMT_ID                     and
21858             pjp1.PRG_LEVEL          = 0                                  and
21859             pjp1.WBS_ROLLUP_FLAG    = 'N'                                and
21860             pjp1.PRG_ROLLUP_FLAG    = 'N'                                and
21861             wbs_hdr.PROJECT_ID      = pjp1.PROJECT_ID                    and
21862             wbs_hdr.PLAN_VERSION_ID = -1                                 and
21863             wbs_hdr.WBS_VERSION_ID  = prg.SUP_ID
21864           union all
21865           select /*+ ordered
21866                      index(fpr PJI_AC_XBR_ACCUM_F_N1) */
21867                  -- get delta task level amounts from Reporting Lines
21868             wbs_hdr.WBS_VERSION_ID,
21869             'LF'                                   RELATIONSHIP_TYPE,
21870             decode(log.EVENT_TYPE,
21871                    'WBS_CHANGE', 'Y',
21872                    'WBS_PUBLISH', 'N')             PUSHUP_FLAG,
21873             'Y'                                    INSERT_FLAG,
21874             acr.PROJECT_ID,
21875             acr.PROJECT_ORG_ID,
21876             acr.PROJECT_ORGANIZATION_ID,
21877             decode(top_slice.INVERT_ID,
21878                    'PRJ', prg.SUP_EMT_ID,
21879                           decode(wbs.SUB_LEVEL,
21880                                  1, prg.SUP_EMT_ID,
21881                                     wbs.SUP_EMT_ID))
21882                                                    PROJECT_ELEMENT_ID,
21883             acr.TIME_ID,
21884             acr.PERIOD_TYPE_ID,
21885             acr.CALENDAR_TYPE,
21886             'Y'                                    WBS_ROLLUP_FLAG,
21887             acr.PRG_ROLLUP_FLAG,
21888             acr.CURR_RECORD_TYPE_ID,
21889             acr.CURRENCY_CODE,
21890             wbs.SIGN * acr.REVENUE                 REVENUE,
21891             wbs.SIGN * acr.INITIAL_FUNDING_AMOUNT  INITIAL_FUNDING_AMOUNT,
21892             wbs.SIGN * acr.INITIAL_FUNDING_COUNT   INITIAL_FUNDING_COUNT,
21893             wbs.SIGN * acr.ADDITIONAL_FUNDING_AMOUNT
21894                                                    ADDITIONAL_FUNDING_AMOUNT,
21895             wbs.SIGN * acr.ADDITIONAL_FUNDING_COUNT
21896                                                    ADDITIONAL_FUNDING_COUNT,
21897             wbs.SIGN * acr.CANCELLED_FUNDING_AMOUNT
21898                                                    CANCELLED_FUNDING_AMOUNT,
21899             wbs.SIGN * acr.CANCELLED_FUNDING_COUNT CANCELLED_FUNDING_COUNT,
21900             wbs.SIGN * acr.FUNDING_ADJUSTMENT_AMOUNT
21901                                                    FUNDING_ADJUSTMENT_AMOUNT,
21902             wbs.SIGN * acr.FUNDING_ADJUSTMENT_COUNT
21903                                                    FUNDING_ADJUSTMENT_COUNT,
21904             wbs.SIGN * acr.REVENUE_WRITEOFF        REVENUE_WRITEOFF,
21905             wbs.SIGN * acr.AR_INVOICE_AMOUNT       AR_INVOICE_AMOUNT,
21906             wbs.SIGN * acr.AR_INVOICE_COUNT        AR_INVOICE_COUNT,
21907             wbs.SIGN * acr.AR_CASH_APPLIED_AMOUNT  AR_CASH_APPLIED_AMOUNT,
21908             wbs.SIGN * acr.AR_INVOICE_WRITE_OFF_AMOUNT
21909                                                    AR_INVOICE_WRITE_OFF_AMOUNT,
21910             wbs.SIGN * acr.AR_INVOICE_WRITEOFF_COUNT
21911                                                    AR_INVOICE_WRITEOFF_COUNT,
21912             wbs.SIGN * acr.AR_CREDIT_MEMO_AMOUNT   AR_CREDIT_MEMO_AMOUNT,
21913             wbs.SIGN * acr.AR_CREDIT_MEMO_COUNT    AR_CREDIT_MEMO_COUNT,
21914             wbs.SIGN * acr.UNBILLED_RECEIVABLES    UNBILLED_RECEIVABLES,
21915             wbs.SIGN * acr.UNEARNED_REVENUE        UNEARNED_REVENUE,
21916             wbs.SIGN * acr.AR_UNAPPR_INVOICE_AMOUNT
21917                                                    AR_UNAPPR_INVOICE_AMOUNT,
21918             wbs.SIGN * acr.AR_UNAPPR_INVOICE_COUNT AR_UNAPPR_INVOICE_COUNT,
21919             wbs.SIGN * acr.AR_APPR_INVOICE_AMOUNT  AR_APPR_INVOICE_AMOUNT,
21920             wbs.SIGN * acr.AR_APPR_INVOICE_COUNT   AR_APPR_INVOICE_COUNT,
21921             wbs.SIGN * acr.AR_AMOUNT_DUE           AR_AMOUNT_DUE,
21922             wbs.SIGN * acr.AR_COUNT_DUE            AR_COUNT_DUE,
21923             wbs.SIGN * acr.AR_AMOUNT_OVERDUE       AR_AMOUNT_OVERDUE,
21924             wbs.SIGN * acr.AR_COUNT_OVERDUE        AR_COUNT_OVERDUE,
21925             wbs.SIGN * acr.CUSTOM1                 CUSTOM1,
21926             wbs.SIGN * acr.CUSTOM2                 CUSTOM2,
21927             wbs.SIGN * acr.CUSTOM3                 CUSTOM3,
21928             wbs.SIGN * acr.CUSTOM4                 CUSTOM4,
21929             wbs.SIGN * acr.CUSTOM5                 CUSTOM5,
21930             wbs.SIGN * acr.CUSTOM6                 CUSTOM6,
21931             wbs.SIGN * acr.CUSTOM7                 CUSTOM7,
21932             wbs.SIGN * acr.CUSTOM8                 CUSTOM8,
21933             wbs.SIGN * acr.CUSTOM9                 CUSTOM9,
21934             wbs.SIGN * acr.CUSTOM10                CUSTOM10,
21935             wbs.SIGN * acr.CUSTOM11                CUSTOM11,
21936             wbs.SIGN * acr.CUSTOM12                CUSTOM12,
21937             wbs.SIGN * acr.CUSTOM13                CUSTOM13,
21938             wbs.SIGN * acr.CUSTOM14                CUSTOM14,
21939             wbs.SIGN * acr.CUSTOM15                CUSTOM15
21940           from
21941             PJI_PA_PROJ_EVENTS_LOG log,
21942             PJI_PJP_WBS_HEADER     wbs_hdr,
21943             PJI_XBS_DENORM_DELTA   wbs,
21944             PJI_XBS_DENORM         prg,
21945             PJI_AC_XBS_ACCUM_F     acr,
21946             (
21947               select 1     WBS_SUP_LEVEL,
21948                      1     WBS_SUB_LEVEL,
21949                      'PRJ' INVERT_ID
21950               from   DUAL
21951               union all
21952               select 1     WBS_SUP_LEVEL,
21953                      1     WBS_SUB_LEVEL,
21954                      'WBS' INVERT_ID
21955               from   DUAL
21956             ) top_slice
21957           where
21958             prg.STRUCT_TYPE         =  'PRG'                       and
21959             prg.SUP_LEVEL           =  l_level                     and
21960             prg.SUB_LEVEL           =  l_level                     and
21961             wbs.WORKER_ID           =  p_worker_id                 and
21962             wbs.STRUCT_TYPE         =  'WBS'                       and
21963             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
21964             log.WORKER_ID           =  p_worker_id                 and
21965             log.EVENT_ID            =  wbs.EVENT_ID                and
21966             log.EVENT_TYPE          in ('WBS_CHANGE',
21967                                         'WBS_PUBLISH')             and
21968             wbs_hdr.PROJECT_ID      =  log.ATTRIBUTE1              and
21969             wbs_hdr.PLAN_VERSION_ID =  log.ATTRIBUTE3              and
21970             wbs_hdr.PLAN_VERSION_ID =  -1                          and
21971             wbs_hdr.WBS_VERSION_ID  =  wbs.STRUCT_VERSION_ID       and
21972             wbs_hdr.PROJECT_ID      =  prg.SUP_PROJECT_ID          and
21973             wbs_hdr.WBS_VERSION_ID  =  prg.SUP_ID                  and
21974             acr.WBS_ROLLUP_FLAG     =  'N'                         and
21975             acr.PRG_ROLLUP_FLAG     =  'N'                         and
21976             acr.PROJECT_ID          =  wbs.SUP_PROJECT_ID          and
21977             acr.PROJECT_ELEMENT_ID  =  wbs.SUB_EMT_ID              and
21978             acr.PROJECT_ID          =  wbs_hdr.PROJECT_ID          and
21979             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
21980             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+) and
21981             (wbs.SUP_LEVEL <> wbs.SUB_LEVEL or
21982              (wbs.SUP_LEVEL = 1 and
21983               wbs.SUB_LEVEL = 1))
21984           ) pjp,
21985           (
21986           select /*+ ordered */
21987             prg.SUP_PROJECT_ID,
21988             map.PROJECT_ORG_ID               SUP_PROJECT_ORG_ID,
21989             map.PROJECT_ORGANIZATION_ID      SUP_PROJECT_ORGANIZATION_ID,
21990             prg.SUP_ID,
21991             prg.SUP_EMT_ID,
21992             prg.SUP_LEVEL,
21993             prg.SUB_ID,
21994             prg.SUB_EMT_ID,
21995             prg.SUB_ROLLUP_ID,
21996             prg.RELATIONSHIP_TYPE            RELATIONSHIP_TYPE,
21997             'Y'                              PUSHUP_FLAG
21998           from
21999             PJI_PJP_PROJ_BATCH_MAP map,
22000             PJI_XBS_DENORM         prg,
22001             PJI_XBS_DENORM_DELTA   prg_delta
22002           where
22003             prg.STRUCT_TYPE          = 'PRG'                           and
22004             prg.RELATIONSHIP_TYPE    = 'LF'                            and
22005             prg.SUB_ROLLUP_ID        is not null                       and
22006             prg.SUB_LEVEL            = l_level                         and
22007             map.WORKER_ID            = p_worker_id                     and
22008             map.PROJECT_ID           = prg.SUP_PROJECT_ID              and
22009             p_worker_id              = prg_delta.WORKER_ID         (+) and
22010             prg.STRUCT_TYPE          = prg_delta.STRUCT_TYPE       (+) and
22011             prg.SUP_PROJECT_ID       = prg_delta.SUP_PROJECT_ID    (+) and
22012             prg.SUP_LEVEL            = prg_delta.SUP_LEVEL         (+) and
22013             prg.SUP_ID               = prg_delta.SUP_ID            (+) and
22014             prg.SUB_LEVEL            = prg_delta.SUB_LEVEL         (+) and
22015             prg.SUB_ID               = prg_delta.SUB_ID            (+) and
22016             prg.RELATIONSHIP_TYPE    = prg_delta.RELATIONSHIP_TYPE (+) and
22017             -1                       = prg_delta.SIGN              (+) and
22018             prg_delta.SUP_PROJECT_ID is null
22019           ) prg
22020         where
22021           pjp.WBS_VERSION_ID    = prg.SUB_ID            (+) and
22022           pjp.RELATIONSHIP_TYPE = prg.RELATIONSHIP_TYPE (+) and
22023           pjp.PUSHUP_FLAG       = prg.PUSHUP_FLAG       (+)
22024         group by
22025           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22026                  pjp.INSERT_FLAG, 'Y'),
22027           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22028                  null, prg.SUP_ID),
22029           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22030                  null, prg.SUP_EMT_ID),
22031           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22032                  l_level, prg.SUP_LEVEL),
22033           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22034                  pjp.PROJECT_ID,
22035                  prg.SUP_PROJECT_ID),
22036           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22037                  pjp.PROJECT_ORG_ID,
22038                  prg.SUP_PROJECT_ORG_ID),
22039           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22040                  pjp.PROJECT_ORGANIZATION_ID,
22041                  prg.SUP_PROJECT_ORGANIZATION_ID),
22042           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22043                  pjp.PROJECT_ELEMENT_ID,
22044                  prg.SUB_ROLLUP_ID),
22045           pjp.TIME_ID,
22046           pjp.PERIOD_TYPE_ID,
22047           pjp.CALENDAR_TYPE,
22048           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22049                  pjp.WBS_ROLLUP_FLAG, 'N'),
22050           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22051                  pjp.PRG_ROLLUP_FLAG, 'Y'),
22052           pjp.CURR_RECORD_TYPE_ID,
22053           pjp.CURRENCY_CODE
22054           )                          pjp1_i,
22055           PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
22056           PA_PROJ_WORKPLAN_ATTR      sup_wpa
22057         where
22058           pjp1_i.INSERT_FLAG  = 'Y'                                and
22059           pjp1_i.PROJECT_ID   = sup_fin_ver.PROJECT_ID         (+) and
22060           pjp1_i.SUP_ID       = sup_fin_ver.ELEMENT_VERSION_ID (+) and
22061           'STRUCTURE_WORKING' = sup_fin_ver.STATUS_CODE        (+) and
22062           pjp1_i.SUP_EMT_ID   = sup_wpa.PROJ_ELEMENT_ID        (+) and
22063           'N'                 = sup_wpa.WP_ENABLE_VERSION_FLAG (+) and
22064           (pjp1_i.SUP_ID is null or
22065            (pjp1_i.SUP_ID is not null and
22066             (sup_fin_ver.PROJECT_ID is not null or
22067              sup_wpa.PROJ_ELEMENT_ID is not null)));
22068     elsif (p_worker_id =3) then
22069       -- Query for Partition 3
22070 
22071         insert /*+ parallel(PJI_AC_AGGR_PJP1) */
22072                    into PJI_AC_AGGR_PJP1 partition(P3)
22073         (
22074           WORKER_ID,
22075           RECORD_TYPE,
22076           PRG_LEVEL,
22077           PROJECT_ID,
22078           PROJECT_ORG_ID,
22079           PROJECT_ORGANIZATION_ID,
22080           PROJECT_ELEMENT_ID,
22081           TIME_ID,
22082           PERIOD_TYPE_ID,
22083           CALENDAR_TYPE,
22084           WBS_ROLLUP_FLAG,
22085           PRG_ROLLUP_FLAG,
22086           CURR_RECORD_TYPE_ID,
22087           CURRENCY_CODE,
22088           REVENUE,
22089           INITIAL_FUNDING_AMOUNT,
22090           INITIAL_FUNDING_COUNT,
22091           ADDITIONAL_FUNDING_AMOUNT,
22092           ADDITIONAL_FUNDING_COUNT,
22093           CANCELLED_FUNDING_AMOUNT,
22094           CANCELLED_FUNDING_COUNT,
22095           FUNDING_ADJUSTMENT_AMOUNT,
22096           FUNDING_ADJUSTMENT_COUNT,
22097           REVENUE_WRITEOFF,
22098           AR_INVOICE_AMOUNT,
22099           AR_INVOICE_COUNT,
22100           AR_CASH_APPLIED_AMOUNT,
22101           AR_INVOICE_WRITE_OFF_AMOUNT,
22102           AR_INVOICE_WRITEOFF_COUNT,
22103           AR_CREDIT_MEMO_AMOUNT,
22104           AR_CREDIT_MEMO_COUNT,
22105           UNBILLED_RECEIVABLES,
22106           UNEARNED_REVENUE,
22107           AR_UNAPPR_INVOICE_AMOUNT,
22108           AR_UNAPPR_INVOICE_COUNT,
22109           AR_APPR_INVOICE_AMOUNT,
22110           AR_APPR_INVOICE_COUNT,
22111           AR_AMOUNT_DUE,
22112           AR_COUNT_DUE,
22113           AR_AMOUNT_OVERDUE,
22114           AR_COUNT_OVERDUE,
22115           CUSTOM1,
22116           CUSTOM2,
22117           CUSTOM3,
22118           CUSTOM4,
22119           CUSTOM5,
22120           CUSTOM6,
22121           CUSTOM7,
22122           CUSTOM8,
22123           CUSTOM9,
22124           CUSTOM10,
22125           CUSTOM11,
22126           CUSTOM12,
22127           CUSTOM13,
22128           CUSTOM14,
22129           CUSTOM15
22130         )
22131         select
22132           pjp1_i.WORKER_ID,
22133           pjp1_i.RECORD_TYPE,
22134           pjp1_i.PRG_LEVEL,
22135           pjp1_i.PROJECT_ID,
22136           pjp1_i.PROJECT_ORG_ID,
22137           pjp1_i.PROJECT_ORGANIZATION_ID,
22138           pjp1_i.PROJECT_ELEMENT_ID,
22139           pjp1_i.TIME_ID,
22140           pjp1_i.PERIOD_TYPE_ID,
22141           pjp1_i.CALENDAR_TYPE,
22142           pjp1_i.WBS_ROLLUP_FLAG,
22143           pjp1_i.PRG_ROLLUP_FLAG,
22144           pjp1_i.CURR_RECORD_TYPE_ID,
22145           pjp1_i.CURRENCY_CODE,
22146           pjp1_i.REVENUE,
22147           pjp1_i.INITIAL_FUNDING_AMOUNT,
22148           pjp1_i.INITIAL_FUNDING_COUNT,
22149           pjp1_i.ADDITIONAL_FUNDING_AMOUNT,
22150           pjp1_i.ADDITIONAL_FUNDING_COUNT,
22151           pjp1_i.CANCELLED_FUNDING_AMOUNT,
22152           pjp1_i.CANCELLED_FUNDING_COUNT,
22153           pjp1_i.FUNDING_ADJUSTMENT_AMOUNT,
22154           pjp1_i.FUNDING_ADJUSTMENT_COUNT,
22155           pjp1_i.REVENUE_WRITEOFF,
22156           pjp1_i.AR_INVOICE_AMOUNT,
22157           pjp1_i.AR_INVOICE_COUNT,
22158           pjp1_i.AR_CASH_APPLIED_AMOUNT,
22159           pjp1_i.AR_INVOICE_WRITE_OFF_AMOUNT,
22160           pjp1_i.AR_INVOICE_WRITEOFF_COUNT,
22161           pjp1_i.AR_CREDIT_MEMO_AMOUNT,
22162           pjp1_i.AR_CREDIT_MEMO_COUNT,
22163           pjp1_i.UNBILLED_RECEIVABLES,
22164           pjp1_i.UNEARNED_REVENUE,
22165           pjp1_i.AR_UNAPPR_INVOICE_AMOUNT,
22166           pjp1_i.AR_UNAPPR_INVOICE_COUNT,
22167           pjp1_i.AR_APPR_INVOICE_AMOUNT,
22168           pjp1_i.AR_APPR_INVOICE_COUNT,
22169           pjp1_i.AR_AMOUNT_DUE,
22170           pjp1_i.AR_COUNT_DUE,
22171           pjp1_i.AR_AMOUNT_OVERDUE,
22172           pjp1_i.AR_COUNT_OVERDUE,
22173           pjp1_i.CUSTOM1,
22174           pjp1_i.CUSTOM2,
22175           pjp1_i.CUSTOM3,
22176           pjp1_i.CUSTOM4,
22177           pjp1_i.CUSTOM5,
22178           pjp1_i.CUSTOM6,
22179           pjp1_i.CUSTOM7,
22180           pjp1_i.CUSTOM8,
22181           pjp1_i.CUSTOM9,
22182           pjp1_i.CUSTOM10,
22183           pjp1_i.CUSTOM11,
22184           pjp1_i.CUSTOM12,
22185           pjp1_i.CUSTOM13,
22186           pjp1_i.CUSTOM14,
22187           pjp1_i.CUSTOM15
22188         from
22189           (
22190         select
22191           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22192                  pjp.INSERT_FLAG, 'Y')             INSERT_FLAG,
22193           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22194                  null, prg.SUP_ID)                 SUP_ID,
22195           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22196                  null, prg.SUP_EMT_ID)             SUP_EMT_ID,
22197           p_worker_id                              WORKER_ID,
22198           'W'                                      RECORD_TYPE,
22199           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22200                  l_level, prg.SUP_LEVEL)           PRG_LEVEL,
22201           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22202                  pjp.PROJECT_ID,
22203                  prg.SUP_PROJECT_ID)               PROJECT_ID,
22204           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22205                  pjp.PROJECT_ORG_ID,
22206                  prg.SUP_PROJECT_ORG_ID)           PROJECT_ORG_ID,
22207           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22208                  pjp.PROJECT_ORGANIZATION_ID,
22209                  prg.SUP_PROJECT_ORGANIZATION_ID)  PROJECT_ORGANIZATION_ID,
22210           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22211                  pjp.PROJECT_ELEMENT_ID,
22212                  prg.SUB_ROLLUP_ID)                PROJECT_ELEMENT_ID,
22213           pjp.TIME_ID,
22214           pjp.PERIOD_TYPE_ID,
22215           pjp.CALENDAR_TYPE,
22216           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22217                  pjp.WBS_ROLLUP_FLAG, 'N')         WBS_ROLLUP_FLAG,
22218           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22219                  pjp.PRG_ROLLUP_FLAG, 'Y')         PRG_ROLLUP_FLAG,
22220           pjp.CURR_RECORD_TYPE_ID,
22221           pjp.CURRENCY_CODE,
22222           sum(pjp.REVENUE)                         REVENUE,
22223           sum(pjp.INITIAL_FUNDING_AMOUNT)          INITIAL_FUNDING_AMOUNT,
22224           sum(pjp.INITIAL_FUNDING_COUNT)           INITIAL_FUNDING_COUNT,
22225           sum(pjp.ADDITIONAL_FUNDING_AMOUNT)       ADDITIONAL_FUNDING_AMOUNT,
22226           sum(pjp.ADDITIONAL_FUNDING_COUNT)        ADDITIONAL_FUNDING_COUNT,
22227           sum(pjp.CANCELLED_FUNDING_AMOUNT)        CANCELLED_FUNDING_AMOUNT,
22228           sum(pjp.CANCELLED_FUNDING_COUNT)         CANCELLED_FUNDING_COUNT,
22229           sum(pjp.FUNDING_ADJUSTMENT_AMOUNT)       FUNDING_ADJUSTMENT_AMOUNT,
22230           sum(pjp.FUNDING_ADJUSTMENT_COUNT)        FUNDING_ADJUSTMENT_COUNT,
22231           sum(pjp.REVENUE_WRITEOFF)                REVENUE_WRITEOFF,
22232           sum(pjp.AR_INVOICE_AMOUNT)               AR_INVOICE_AMOUNT,
22233           sum(pjp.AR_INVOICE_COUNT)                AR_INVOICE_COUNT,
22234           sum(pjp.AR_CASH_APPLIED_AMOUNT)          AR_CASH_APPLIED_AMOUNT,
22235           sum(pjp.AR_INVOICE_WRITE_OFF_AMOUNT)     AR_INVOICE_WRITE_OFF_AMOUNT,
22236           sum(pjp.AR_INVOICE_WRITEOFF_COUNT)       AR_INVOICE_WRITEOFF_COUNT,
22237           sum(pjp.AR_CREDIT_MEMO_AMOUNT)           AR_CREDIT_MEMO_AMOUNT,
22238           sum(pjp.AR_CREDIT_MEMO_COUNT)            AR_CREDIT_MEMO_COUNT,
22239           sum(pjp.UNBILLED_RECEIVABLES)            UNBILLED_RECEIVABLES,
22240           sum(pjp.UNEARNED_REVENUE)                UNEARNED_REVENUE,
22241           sum(pjp.AR_UNAPPR_INVOICE_AMOUNT)        AR_UNAPPR_INVOICE_AMOUNT,
22242           sum(pjp.AR_UNAPPR_INVOICE_COUNT)         AR_UNAPPR_INVOICE_COUNT,
22243           sum(pjp.AR_APPR_INVOICE_AMOUNT)          AR_APPR_INVOICE_AMOUNT,
22244           sum(pjp.AR_APPR_INVOICE_COUNT)           AR_APPR_INVOICE_COUNT,
22245           sum(pjp.AR_AMOUNT_DUE)                   AR_AMOUNT_DUE,
22246           sum(pjp.AR_COUNT_DUE)                    AR_COUNT_DUE,
22247           sum(pjp.AR_AMOUNT_OVERDUE)               AR_AMOUNT_OVERDUE,
22248           sum(pjp.AR_COUNT_OVERDUE)                AR_COUNT_OVERDUE,
22249           sum(pjp.CUSTOM1)                         CUSTOM1,
22250           sum(pjp.CUSTOM2)                         CUSTOM2,
22251           sum(pjp.CUSTOM3)                         CUSTOM3,
22252           sum(pjp.CUSTOM4)                         CUSTOM4,
22253           sum(pjp.CUSTOM5)                         CUSTOM5,
22254           sum(pjp.CUSTOM6)                         CUSTOM6,
22255           sum(pjp.CUSTOM7)                         CUSTOM7,
22256           sum(pjp.CUSTOM8)                         CUSTOM8,
22257           sum(pjp.CUSTOM9)                         CUSTOM9,
22258           sum(pjp.CUSTOM10)                        CUSTOM10,
22259           sum(pjp.CUSTOM11)                        CUSTOM11,
22260           sum(pjp.CUSTOM12)                        CUSTOM12,
22261           sum(pjp.CUSTOM13)                        CUSTOM13,
22262           sum(pjp.CUSTOM14)                        CUSTOM14,
22263           sum(pjp.CUSTOM15)                        CUSTOM15
22264         from
22265           (
22266           select /*+ ordered index(wbs PA_XBS_DENORM_N2) parallel(pjp1) */    -- changed for bug 5927368
22267                  -- get incremental task level amounts from source and
22268                  -- program rollup amounts from interim
22269             wbs_hdr.WBS_VERSION_ID,
22270             'LF'                                      RELATIONSHIP_TYPE,
22271             decode(top_slice.INVERT_ID,
22272                    'PRJ', 'Y',
22273                           decode(wbs.SUB_LEVEL,
22274                                  1, 'Y', 'N'))        PUSHUP_FLAG,
22275             'Y'                                       INSERT_FLAG,
22276             pjp1.PROJECT_ID,
22277             pjp1.PROJECT_ORG_ID,
22278             pjp1.PROJECT_ORGANIZATION_ID,
22279             decode(top_slice.INVERT_ID,
22280                    'PRJ', prg.SUP_EMT_ID,
22281                           decode(wbs.SUB_LEVEL,
22282                                  1, prg.SUP_EMT_ID,
22283                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
22284             pjp1.TIME_ID,
22285             pjp1.PERIOD_TYPE_ID,
22286             pjp1.CALENDAR_TYPE,
22287             'Y'                                       WBS_ROLLUP_FLAG,
22288             pjp1.PRG_ROLLUP_FLAG,
22289             pjp1.CURR_RECORD_TYPE_ID,
22290             pjp1.CURRENCY_CODE,
22291             pjp1.REVENUE,
22292             pjp1.INITIAL_FUNDING_AMOUNT,
22293             pjp1.INITIAL_FUNDING_COUNT,
22294             pjp1.ADDITIONAL_FUNDING_AMOUNT,
22295             pjp1.ADDITIONAL_FUNDING_COUNT,
22296             pjp1.CANCELLED_FUNDING_AMOUNT,
22297             pjp1.CANCELLED_FUNDING_COUNT,
22298             pjp1.FUNDING_ADJUSTMENT_AMOUNT,
22299             pjp1.FUNDING_ADJUSTMENT_COUNT,
22300             pjp1.REVENUE_WRITEOFF,
22301             pjp1.AR_INVOICE_AMOUNT,
22302             pjp1.AR_INVOICE_COUNT,
22303             pjp1.AR_CASH_APPLIED_AMOUNT,
22304             pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
22305             pjp1.AR_INVOICE_WRITEOFF_COUNT,
22306             pjp1.AR_CREDIT_MEMO_AMOUNT,
22307             pjp1.AR_CREDIT_MEMO_COUNT,
22308             pjp1.UNBILLED_RECEIVABLES,
22309             pjp1.UNEARNED_REVENUE,
22310             pjp1.AR_UNAPPR_INVOICE_AMOUNT,
22311             pjp1.AR_UNAPPR_INVOICE_COUNT,
22312             pjp1.AR_APPR_INVOICE_AMOUNT,
22313             pjp1.AR_APPR_INVOICE_COUNT,
22314             pjp1.AR_AMOUNT_DUE,
22315             pjp1.AR_COUNT_DUE,
22316             pjp1.AR_AMOUNT_OVERDUE,
22317             pjp1.AR_COUNT_OVERDUE,
22318             pjp1.CUSTOM1,
22319             pjp1.CUSTOM2,
22320             pjp1.CUSTOM3,
22321             pjp1.CUSTOM4,
22322             pjp1.CUSTOM5,
22323             pjp1.CUSTOM6,
22324             pjp1.CUSTOM7,
22325             pjp1.CUSTOM8,
22326             pjp1.CUSTOM9,
22327             pjp1.CUSTOM10,
22328             pjp1.CUSTOM11,
22329             pjp1.CUSTOM12,
22330             pjp1.CUSTOM13,
22331             pjp1.CUSTOM14,
22332             pjp1.CUSTOM15
22333           from
22334             PJI_AC_AGGR_PJP1   pjp1,
22335             PJI_PJP_WBS_HEADER wbs_hdr,
22336             PA_XBS_DENORM      wbs,
22337             PJI_XBS_DENORM     prg,
22338             (
22339               select 1     WBS_SUP_LEVEL,
22340                      1     WBS_SUB_LEVEL,
22341                      'PRJ' INVERT_ID
22342               from   DUAL
22343               union all
22344               select 1     WBS_SUP_LEVEL,
22345                      1     WBS_SUB_LEVEL,
22346                      'WBS' INVERT_ID
22347               from   DUAL
22348             ) top_slice
22349           where
22350             prg.STRUCT_TYPE         =  'PRG'                       and
22351             prg.SUP_LEVEL           =  l_level                     and
22352             prg.SUB_LEVEL           =  l_level                     and
22353             wbs.STRUCT_TYPE         =  'WBS'                       and
22354             ((wbs.SUP_LEVEL = 1 and
22355               wbs.SUB_LEVEL = 1) or
22356              (wbs.SUP_LEVEL <> wbs.SUB_LEVEL))                     and
22357             wbs.STRUCT_VERSION_ID   =  prg.SUP_ID                  and
22358             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
22359             pjp1.WORKER_ID          =  p_worker_id                 and
22360             pjp1.PRG_LEVEL          in (0, l_level)                and
22361             pjp1.WBS_ROLLUP_FLAG    =  'N'                         and
22362             pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                  and
22363             wbs_hdr.PLAN_VERSION_ID =  -1                          and
22364             pjp1.PROJECT_ID         =  wbs_hdr.PROJECT_ID          and
22365             wbs.STRUCT_VERSION_ID   =  wbs_hdr.WBS_VERSION_ID      and
22366             pjp1.PROJECT_ELEMENT_ID =  wbs.SUB_EMT_ID              and
22367             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
22368             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+)
22369           union all
22370           select /*+ ordered parallel(pjp1) */           -- changed for bug 5927368
22371                  -- get incremental project level amounts from source
22372             wbs_hdr.WBS_VERSION_ID,
22373             'LF'                                   RELATIONSHIP_TYPE,
22374             'Y'                                    PUSHUP_FLAG,
22375             'N'                                    INSERT_FLAG,
22376             pjp1.PROJECT_ID,
22377             pjp1.PROJECT_ORG_ID,
22378             pjp1.PROJECT_ORGANIZATION_ID,
22379             pjp1.PROJECT_ELEMENT_ID,
22380             pjp1.TIME_ID,
22381             pjp1.PERIOD_TYPE_ID,
22382             pjp1.CALENDAR_TYPE,
22383             'Y'                                    WBS_ROLLUP_FLAG,
22384             pjp1.PRG_ROLLUP_FLAG,
22385             pjp1.CURR_RECORD_TYPE_ID,
22386             pjp1.CURRENCY_CODE,
22387             pjp1.REVENUE,
22388             pjp1.INITIAL_FUNDING_AMOUNT,
22389             pjp1.INITIAL_FUNDING_COUNT,
22390             pjp1.ADDITIONAL_FUNDING_AMOUNT,
22391             pjp1.ADDITIONAL_FUNDING_COUNT,
22392             pjp1.CANCELLED_FUNDING_AMOUNT,
22393             pjp1.CANCELLED_FUNDING_COUNT,
22394             pjp1.FUNDING_ADJUSTMENT_AMOUNT,
22395             pjp1.FUNDING_ADJUSTMENT_COUNT,
22396             pjp1.REVENUE_WRITEOFF,
22397             pjp1.AR_INVOICE_AMOUNT,
22398             pjp1.AR_INVOICE_COUNT,
22399             pjp1.AR_CASH_APPLIED_AMOUNT,
22400             pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
22401             pjp1.AR_INVOICE_WRITEOFF_COUNT,
22402             pjp1.AR_CREDIT_MEMO_AMOUNT,
22403             pjp1.AR_CREDIT_MEMO_COUNT,
22404             pjp1.UNBILLED_RECEIVABLES,
22405             pjp1.UNEARNED_REVENUE,
22406             pjp1.AR_UNAPPR_INVOICE_AMOUNT,
22407             pjp1.AR_UNAPPR_INVOICE_COUNT,
22408             pjp1.AR_APPR_INVOICE_AMOUNT,
22409             pjp1.AR_APPR_INVOICE_COUNT,
22410             pjp1.AR_AMOUNT_DUE,
22411             pjp1.AR_COUNT_DUE,
22412             pjp1.AR_AMOUNT_OVERDUE,
22413             pjp1.AR_COUNT_OVERDUE,
22414             pjp1.CUSTOM1,
22415             pjp1.CUSTOM2,
22416             pjp1.CUSTOM3,
22417             pjp1.CUSTOM4,
22418             pjp1.CUSTOM5,
22419             pjp1.CUSTOM6,
22420             pjp1.CUSTOM7,
22421             pjp1.CUSTOM8,
22422             pjp1.CUSTOM9,
22423             pjp1.CUSTOM10,
22424             pjp1.CUSTOM11,
22425             pjp1.CUSTOM12,
22426             pjp1.CUSTOM13,
22427             pjp1.CUSTOM14,
22428             pjp1.CUSTOM15
22429           from
22430             PJI_AC_AGGR_PJP1   pjp1,
22431             PJI_PJP_WBS_HEADER wbs_hdr,
22432             PJI_XBS_DENORM     prg
22433           where
22434             prg.STRUCT_TYPE         = 'PRG'                              and
22435             prg.SUP_LEVEL           = l_level                            and
22436             prg.SUB_LEVEL           = l_level                            and
22437             pjp1.WORKER_ID          = p_worker_id                        and
22438             pjp1.PROJECT_ID         = prg.SUP_PROJECT_ID                 and
22439             pjp1.PROJECT_ELEMENT_ID = prg.SUP_EMT_ID                     and
22440             pjp1.PRG_LEVEL          = 0                                  and
22441             pjp1.WBS_ROLLUP_FLAG    = 'N'                                and
22442             pjp1.PRG_ROLLUP_FLAG    = 'N'                                and
22443             wbs_hdr.PROJECT_ID      = pjp1.PROJECT_ID                    and
22444             wbs_hdr.PLAN_VERSION_ID = -1                                 and
22445             wbs_hdr.WBS_VERSION_ID  = prg.SUP_ID
22446           union all
22447           select /*+ ordered
22448                      index(fpr PJI_AC_XBR_ACCUM_F_N1) */
22449                  -- get delta task level amounts from Reporting Lines
22450             wbs_hdr.WBS_VERSION_ID,
22451             'LF'                                   RELATIONSHIP_TYPE,
22452             decode(log.EVENT_TYPE,
22453                    'WBS_CHANGE', 'Y',
22454                    'WBS_PUBLISH', 'N')             PUSHUP_FLAG,
22455             'Y'                                    INSERT_FLAG,
22456             acr.PROJECT_ID,
22457             acr.PROJECT_ORG_ID,
22458             acr.PROJECT_ORGANIZATION_ID,
22459             decode(top_slice.INVERT_ID,
22460                    'PRJ', prg.SUP_EMT_ID,
22461                           decode(wbs.SUB_LEVEL,
22462                                  1, prg.SUP_EMT_ID,
22463                                     wbs.SUP_EMT_ID))
22464                                                    PROJECT_ELEMENT_ID,
22465             acr.TIME_ID,
22466             acr.PERIOD_TYPE_ID,
22467             acr.CALENDAR_TYPE,
22468             'Y'                                    WBS_ROLLUP_FLAG,
22469             acr.PRG_ROLLUP_FLAG,
22470             acr.CURR_RECORD_TYPE_ID,
22471             acr.CURRENCY_CODE,
22472             wbs.SIGN * acr.REVENUE                 REVENUE,
22473             wbs.SIGN * acr.INITIAL_FUNDING_AMOUNT  INITIAL_FUNDING_AMOUNT,
22474             wbs.SIGN * acr.INITIAL_FUNDING_COUNT   INITIAL_FUNDING_COUNT,
22475             wbs.SIGN * acr.ADDITIONAL_FUNDING_AMOUNT
22476                                                    ADDITIONAL_FUNDING_AMOUNT,
22477             wbs.SIGN * acr.ADDITIONAL_FUNDING_COUNT
22478                                                    ADDITIONAL_FUNDING_COUNT,
22479             wbs.SIGN * acr.CANCELLED_FUNDING_AMOUNT
22480                                                    CANCELLED_FUNDING_AMOUNT,
22481             wbs.SIGN * acr.CANCELLED_FUNDING_COUNT CANCELLED_FUNDING_COUNT,
22482             wbs.SIGN * acr.FUNDING_ADJUSTMENT_AMOUNT
22483                                                    FUNDING_ADJUSTMENT_AMOUNT,
22484             wbs.SIGN * acr.FUNDING_ADJUSTMENT_COUNT
22485                                                    FUNDING_ADJUSTMENT_COUNT,
22486             wbs.SIGN * acr.REVENUE_WRITEOFF        REVENUE_WRITEOFF,
22487             wbs.SIGN * acr.AR_INVOICE_AMOUNT       AR_INVOICE_AMOUNT,
22488             wbs.SIGN * acr.AR_INVOICE_COUNT        AR_INVOICE_COUNT,
22489             wbs.SIGN * acr.AR_CASH_APPLIED_AMOUNT  AR_CASH_APPLIED_AMOUNT,
22490             wbs.SIGN * acr.AR_INVOICE_WRITE_OFF_AMOUNT
22491                                                    AR_INVOICE_WRITE_OFF_AMOUNT,
22492             wbs.SIGN * acr.AR_INVOICE_WRITEOFF_COUNT
22493                                                    AR_INVOICE_WRITEOFF_COUNT,
22494             wbs.SIGN * acr.AR_CREDIT_MEMO_AMOUNT   AR_CREDIT_MEMO_AMOUNT,
22495             wbs.SIGN * acr.AR_CREDIT_MEMO_COUNT    AR_CREDIT_MEMO_COUNT,
22496             wbs.SIGN * acr.UNBILLED_RECEIVABLES    UNBILLED_RECEIVABLES,
22497             wbs.SIGN * acr.UNEARNED_REVENUE        UNEARNED_REVENUE,
22498             wbs.SIGN * acr.AR_UNAPPR_INVOICE_AMOUNT
22499                                                    AR_UNAPPR_INVOICE_AMOUNT,
22500             wbs.SIGN * acr.AR_UNAPPR_INVOICE_COUNT AR_UNAPPR_INVOICE_COUNT,
22501             wbs.SIGN * acr.AR_APPR_INVOICE_AMOUNT  AR_APPR_INVOICE_AMOUNT,
22502             wbs.SIGN * acr.AR_APPR_INVOICE_COUNT   AR_APPR_INVOICE_COUNT,
22503             wbs.SIGN * acr.AR_AMOUNT_DUE           AR_AMOUNT_DUE,
22504             wbs.SIGN * acr.AR_COUNT_DUE            AR_COUNT_DUE,
22505             wbs.SIGN * acr.AR_AMOUNT_OVERDUE       AR_AMOUNT_OVERDUE,
22506             wbs.SIGN * acr.AR_COUNT_OVERDUE        AR_COUNT_OVERDUE,
22507             wbs.SIGN * acr.CUSTOM1                 CUSTOM1,
22508             wbs.SIGN * acr.CUSTOM2                 CUSTOM2,
22509             wbs.SIGN * acr.CUSTOM3                 CUSTOM3,
22510             wbs.SIGN * acr.CUSTOM4                 CUSTOM4,
22511             wbs.SIGN * acr.CUSTOM5                 CUSTOM5,
22512             wbs.SIGN * acr.CUSTOM6                 CUSTOM6,
22513             wbs.SIGN * acr.CUSTOM7                 CUSTOM7,
22514             wbs.SIGN * acr.CUSTOM8                 CUSTOM8,
22515             wbs.SIGN * acr.CUSTOM9                 CUSTOM9,
22516             wbs.SIGN * acr.CUSTOM10                CUSTOM10,
22517             wbs.SIGN * acr.CUSTOM11                CUSTOM11,
22518             wbs.SIGN * acr.CUSTOM12                CUSTOM12,
22519             wbs.SIGN * acr.CUSTOM13                CUSTOM13,
22520             wbs.SIGN * acr.CUSTOM14                CUSTOM14,
22521             wbs.SIGN * acr.CUSTOM15                CUSTOM15
22522           from
22523             PJI_PA_PROJ_EVENTS_LOG log,
22524             PJI_PJP_WBS_HEADER     wbs_hdr,
22525             PJI_XBS_DENORM_DELTA   wbs,
22526             PJI_XBS_DENORM         prg,
22527             PJI_AC_XBS_ACCUM_F     acr,
22528             (
22529               select 1     WBS_SUP_LEVEL,
22530                      1     WBS_SUB_LEVEL,
22531                      'PRJ' INVERT_ID
22532               from   DUAL
22533               union all
22534               select 1     WBS_SUP_LEVEL,
22535                      1     WBS_SUB_LEVEL,
22536                      'WBS' INVERT_ID
22537               from   DUAL
22538             ) top_slice
22539           where
22540             prg.STRUCT_TYPE         =  'PRG'                       and
22541             prg.SUP_LEVEL           =  l_level                     and
22542             prg.SUB_LEVEL           =  l_level                     and
22543             wbs.WORKER_ID           =  p_worker_id                 and
22544             wbs.STRUCT_TYPE         =  'WBS'                       and
22545             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
22546             log.WORKER_ID           =  p_worker_id                 and
22547             log.EVENT_ID            =  wbs.EVENT_ID                and
22548             log.EVENT_TYPE          in ('WBS_CHANGE',
22549                                         'WBS_PUBLISH')             and
22550             wbs_hdr.PROJECT_ID      =  log.ATTRIBUTE1              and
22551             wbs_hdr.PLAN_VERSION_ID =  log.ATTRIBUTE3              and
22552             wbs_hdr.PLAN_VERSION_ID =  -1                          and
22553             wbs_hdr.WBS_VERSION_ID  =  wbs.STRUCT_VERSION_ID       and
22554             wbs_hdr.PROJECT_ID      =  prg.SUP_PROJECT_ID          and
22555             wbs_hdr.WBS_VERSION_ID  =  prg.SUP_ID                  and
22556             acr.WBS_ROLLUP_FLAG     =  'N'                         and
22557             acr.PRG_ROLLUP_FLAG     =  'N'                         and
22558             acr.PROJECT_ID          =  wbs.SUP_PROJECT_ID          and
22559             acr.PROJECT_ELEMENT_ID  =  wbs.SUB_EMT_ID              and
22560             acr.PROJECT_ID          =  wbs_hdr.PROJECT_ID          and
22561             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
22562             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+) and
22563             (wbs.SUP_LEVEL <> wbs.SUB_LEVEL or
22564              (wbs.SUP_LEVEL = 1 and
22565               wbs.SUB_LEVEL = 1))
22566           ) pjp,
22567           (
22568           select /*+ ordered */
22569             prg.SUP_PROJECT_ID,
22570             map.PROJECT_ORG_ID               SUP_PROJECT_ORG_ID,
22571             map.PROJECT_ORGANIZATION_ID      SUP_PROJECT_ORGANIZATION_ID,
22572             prg.SUP_ID,
22573             prg.SUP_EMT_ID,
22574             prg.SUP_LEVEL,
22575             prg.SUB_ID,
22576             prg.SUB_EMT_ID,
22577             prg.SUB_ROLLUP_ID,
22578             prg.RELATIONSHIP_TYPE            RELATIONSHIP_TYPE,
22579             'Y'                              PUSHUP_FLAG
22580           from
22581             PJI_PJP_PROJ_BATCH_MAP map,
22582             PJI_XBS_DENORM         prg,
22583             PJI_XBS_DENORM_DELTA   prg_delta
22584           where
22585             prg.STRUCT_TYPE          = 'PRG'                           and
22586             prg.RELATIONSHIP_TYPE    = 'LF'                            and
22587             prg.SUB_ROLLUP_ID        is not null                       and
22588             prg.SUB_LEVEL            = l_level                         and
22589             map.WORKER_ID            = p_worker_id                     and
22590             map.PROJECT_ID           = prg.SUP_PROJECT_ID              and
22591             p_worker_id              = prg_delta.WORKER_ID         (+) and
22592             prg.STRUCT_TYPE          = prg_delta.STRUCT_TYPE       (+) and
22593             prg.SUP_PROJECT_ID       = prg_delta.SUP_PROJECT_ID    (+) and
22594             prg.SUP_LEVEL            = prg_delta.SUP_LEVEL         (+) and
22595             prg.SUP_ID               = prg_delta.SUP_ID            (+) and
22596             prg.SUB_LEVEL            = prg_delta.SUB_LEVEL         (+) and
22597             prg.SUB_ID               = prg_delta.SUB_ID            (+) and
22598             prg.RELATIONSHIP_TYPE    = prg_delta.RELATIONSHIP_TYPE (+) and
22599             -1                       = prg_delta.SIGN              (+) and
22600             prg_delta.SUP_PROJECT_ID is null
22601           ) prg
22602         where
22603           pjp.WBS_VERSION_ID    = prg.SUB_ID            (+) and
22604           pjp.RELATIONSHIP_TYPE = prg.RELATIONSHIP_TYPE (+) and
22605           pjp.PUSHUP_FLAG       = prg.PUSHUP_FLAG       (+)
22606         group by
22607           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22608                  pjp.INSERT_FLAG, 'Y'),
22609           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22610                  null, prg.SUP_ID),
22611           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22612                  null, prg.SUP_EMT_ID),
22613           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22614                  l_level, prg.SUP_LEVEL),
22615           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22616                  pjp.PROJECT_ID,
22617                  prg.SUP_PROJECT_ID),
22618           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22619                  pjp.PROJECT_ORG_ID,
22620                  prg.SUP_PROJECT_ORG_ID),
22621           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22622                  pjp.PROJECT_ORGANIZATION_ID,
22623                  prg.SUP_PROJECT_ORGANIZATION_ID),
22624           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22625                  pjp.PROJECT_ELEMENT_ID,
22626                  prg.SUB_ROLLUP_ID),
22627           pjp.TIME_ID,
22628           pjp.PERIOD_TYPE_ID,
22629           pjp.CALENDAR_TYPE,
22630           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22631                  pjp.WBS_ROLLUP_FLAG, 'N'),
22632           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22633                  pjp.PRG_ROLLUP_FLAG, 'Y'),
22634           pjp.CURR_RECORD_TYPE_ID,
22635           pjp.CURRENCY_CODE
22636           )                          pjp1_i,
22637           PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
22638           PA_PROJ_WORKPLAN_ATTR      sup_wpa
22639         where
22640           pjp1_i.INSERT_FLAG  = 'Y'                                and
22641           pjp1_i.PROJECT_ID   = sup_fin_ver.PROJECT_ID         (+) and
22642           pjp1_i.SUP_ID       = sup_fin_ver.ELEMENT_VERSION_ID (+) and
22643           'STRUCTURE_WORKING' = sup_fin_ver.STATUS_CODE        (+) and
22644           pjp1_i.SUP_EMT_ID   = sup_wpa.PROJ_ELEMENT_ID        (+) and
22645           'N'                 = sup_wpa.WP_ENABLE_VERSION_FLAG (+) and
22646           (pjp1_i.SUP_ID is null or
22647            (pjp1_i.SUP_ID is not null and
22648             (sup_fin_ver.PROJECT_ID is not null or
22649              sup_wpa.PROJ_ELEMENT_ID is not null)));
22650     elsif (p_worker_id =4) then
22651       -- Query for Partition 4
22652 
22653         insert /*+ parallel(PJI_AC_AGGR_PJP1) */
22654                    into PJI_AC_AGGR_PJP1 partition(P4)
22655         (
22656           WORKER_ID,
22657           RECORD_TYPE,
22658           PRG_LEVEL,
22659           PROJECT_ID,
22660           PROJECT_ORG_ID,
22661           PROJECT_ORGANIZATION_ID,
22662           PROJECT_ELEMENT_ID,
22663           TIME_ID,
22664           PERIOD_TYPE_ID,
22665           CALENDAR_TYPE,
22666           WBS_ROLLUP_FLAG,
22667           PRG_ROLLUP_FLAG,
22668           CURR_RECORD_TYPE_ID,
22669           CURRENCY_CODE,
22670           REVENUE,
22671           INITIAL_FUNDING_AMOUNT,
22672           INITIAL_FUNDING_COUNT,
22673           ADDITIONAL_FUNDING_AMOUNT,
22674           ADDITIONAL_FUNDING_COUNT,
22675           CANCELLED_FUNDING_AMOUNT,
22676           CANCELLED_FUNDING_COUNT,
22677           FUNDING_ADJUSTMENT_AMOUNT,
22678           FUNDING_ADJUSTMENT_COUNT,
22679           REVENUE_WRITEOFF,
22680           AR_INVOICE_AMOUNT,
22681           AR_INVOICE_COUNT,
22682           AR_CASH_APPLIED_AMOUNT,
22683           AR_INVOICE_WRITE_OFF_AMOUNT,
22684           AR_INVOICE_WRITEOFF_COUNT,
22685           AR_CREDIT_MEMO_AMOUNT,
22686           AR_CREDIT_MEMO_COUNT,
22687           UNBILLED_RECEIVABLES,
22688           UNEARNED_REVENUE,
22689           AR_UNAPPR_INVOICE_AMOUNT,
22690           AR_UNAPPR_INVOICE_COUNT,
22691           AR_APPR_INVOICE_AMOUNT,
22692           AR_APPR_INVOICE_COUNT,
22693           AR_AMOUNT_DUE,
22694           AR_COUNT_DUE,
22695           AR_AMOUNT_OVERDUE,
22696           AR_COUNT_OVERDUE,
22697           CUSTOM1,
22698           CUSTOM2,
22699           CUSTOM3,
22700           CUSTOM4,
22701           CUSTOM5,
22702           CUSTOM6,
22703           CUSTOM7,
22704           CUSTOM8,
22705           CUSTOM9,
22706           CUSTOM10,
22707           CUSTOM11,
22708           CUSTOM12,
22709           CUSTOM13,
22710           CUSTOM14,
22711           CUSTOM15
22712         )
22713         select
22714           pjp1_i.WORKER_ID,
22715           pjp1_i.RECORD_TYPE,
22716           pjp1_i.PRG_LEVEL,
22717           pjp1_i.PROJECT_ID,
22718           pjp1_i.PROJECT_ORG_ID,
22719           pjp1_i.PROJECT_ORGANIZATION_ID,
22720           pjp1_i.PROJECT_ELEMENT_ID,
22721           pjp1_i.TIME_ID,
22722           pjp1_i.PERIOD_TYPE_ID,
22723           pjp1_i.CALENDAR_TYPE,
22724           pjp1_i.WBS_ROLLUP_FLAG,
22725           pjp1_i.PRG_ROLLUP_FLAG,
22726           pjp1_i.CURR_RECORD_TYPE_ID,
22727           pjp1_i.CURRENCY_CODE,
22728           pjp1_i.REVENUE,
22729           pjp1_i.INITIAL_FUNDING_AMOUNT,
22730           pjp1_i.INITIAL_FUNDING_COUNT,
22731           pjp1_i.ADDITIONAL_FUNDING_AMOUNT,
22732           pjp1_i.ADDITIONAL_FUNDING_COUNT,
22733           pjp1_i.CANCELLED_FUNDING_AMOUNT,
22734           pjp1_i.CANCELLED_FUNDING_COUNT,
22735           pjp1_i.FUNDING_ADJUSTMENT_AMOUNT,
22736           pjp1_i.FUNDING_ADJUSTMENT_COUNT,
22737           pjp1_i.REVENUE_WRITEOFF,
22738           pjp1_i.AR_INVOICE_AMOUNT,
22739           pjp1_i.AR_INVOICE_COUNT,
22740           pjp1_i.AR_CASH_APPLIED_AMOUNT,
22741           pjp1_i.AR_INVOICE_WRITE_OFF_AMOUNT,
22742           pjp1_i.AR_INVOICE_WRITEOFF_COUNT,
22743           pjp1_i.AR_CREDIT_MEMO_AMOUNT,
22744           pjp1_i.AR_CREDIT_MEMO_COUNT,
22745           pjp1_i.UNBILLED_RECEIVABLES,
22746           pjp1_i.UNEARNED_REVENUE,
22747           pjp1_i.AR_UNAPPR_INVOICE_AMOUNT,
22748           pjp1_i.AR_UNAPPR_INVOICE_COUNT,
22749           pjp1_i.AR_APPR_INVOICE_AMOUNT,
22750           pjp1_i.AR_APPR_INVOICE_COUNT,
22751           pjp1_i.AR_AMOUNT_DUE,
22752           pjp1_i.AR_COUNT_DUE,
22753           pjp1_i.AR_AMOUNT_OVERDUE,
22754           pjp1_i.AR_COUNT_OVERDUE,
22755           pjp1_i.CUSTOM1,
22756           pjp1_i.CUSTOM2,
22757           pjp1_i.CUSTOM3,
22758           pjp1_i.CUSTOM4,
22759           pjp1_i.CUSTOM5,
22760           pjp1_i.CUSTOM6,
22761           pjp1_i.CUSTOM7,
22762           pjp1_i.CUSTOM8,
22763           pjp1_i.CUSTOM9,
22764           pjp1_i.CUSTOM10,
22765           pjp1_i.CUSTOM11,
22766           pjp1_i.CUSTOM12,
22767           pjp1_i.CUSTOM13,
22768           pjp1_i.CUSTOM14,
22769           pjp1_i.CUSTOM15
22770         from
22771           (
22772         select
22773           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22774                  pjp.INSERT_FLAG, 'Y')             INSERT_FLAG,
22775           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22776                  null, prg.SUP_ID)                 SUP_ID,
22777           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22778                  null, prg.SUP_EMT_ID)             SUP_EMT_ID,
22779           p_worker_id                              WORKER_ID,
22780           'W'                                      RECORD_TYPE,
22781           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22782                  l_level, prg.SUP_LEVEL)           PRG_LEVEL,
22783           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22784                  pjp.PROJECT_ID,
22785                  prg.SUP_PROJECT_ID)               PROJECT_ID,
22786           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22787                  pjp.PROJECT_ORG_ID,
22788                  prg.SUP_PROJECT_ORG_ID)           PROJECT_ORG_ID,
22789           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22790                  pjp.PROJECT_ORGANIZATION_ID,
22791                  prg.SUP_PROJECT_ORGANIZATION_ID)  PROJECT_ORGANIZATION_ID,
22792           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22793                  pjp.PROJECT_ELEMENT_ID,
22794                  prg.SUB_ROLLUP_ID)                PROJECT_ELEMENT_ID,
22795           pjp.TIME_ID,
22796           pjp.PERIOD_TYPE_ID,
22797           pjp.CALENDAR_TYPE,
22798           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22799                  pjp.WBS_ROLLUP_FLAG, 'N')         WBS_ROLLUP_FLAG,
22800           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
22801                  pjp.PRG_ROLLUP_FLAG, 'Y')         PRG_ROLLUP_FLAG,
22802           pjp.CURR_RECORD_TYPE_ID,
22803           pjp.CURRENCY_CODE,
22804           sum(pjp.REVENUE)                         REVENUE,
22805           sum(pjp.INITIAL_FUNDING_AMOUNT)          INITIAL_FUNDING_AMOUNT,
22806           sum(pjp.INITIAL_FUNDING_COUNT)           INITIAL_FUNDING_COUNT,
22807           sum(pjp.ADDITIONAL_FUNDING_AMOUNT)       ADDITIONAL_FUNDING_AMOUNT,
22808           sum(pjp.ADDITIONAL_FUNDING_COUNT)        ADDITIONAL_FUNDING_COUNT,
22809           sum(pjp.CANCELLED_FUNDING_AMOUNT)        CANCELLED_FUNDING_AMOUNT,
22810           sum(pjp.CANCELLED_FUNDING_COUNT)         CANCELLED_FUNDING_COUNT,
22811           sum(pjp.FUNDING_ADJUSTMENT_AMOUNT)       FUNDING_ADJUSTMENT_AMOUNT,
22812           sum(pjp.FUNDING_ADJUSTMENT_COUNT)        FUNDING_ADJUSTMENT_COUNT,
22813           sum(pjp.REVENUE_WRITEOFF)                REVENUE_WRITEOFF,
22814           sum(pjp.AR_INVOICE_AMOUNT)               AR_INVOICE_AMOUNT,
22815           sum(pjp.AR_INVOICE_COUNT)                AR_INVOICE_COUNT,
22816           sum(pjp.AR_CASH_APPLIED_AMOUNT)          AR_CASH_APPLIED_AMOUNT,
22817           sum(pjp.AR_INVOICE_WRITE_OFF_AMOUNT)     AR_INVOICE_WRITE_OFF_AMOUNT,
22818           sum(pjp.AR_INVOICE_WRITEOFF_COUNT)       AR_INVOICE_WRITEOFF_COUNT,
22819           sum(pjp.AR_CREDIT_MEMO_AMOUNT)           AR_CREDIT_MEMO_AMOUNT,
22820           sum(pjp.AR_CREDIT_MEMO_COUNT)            AR_CREDIT_MEMO_COUNT,
22821           sum(pjp.UNBILLED_RECEIVABLES)            UNBILLED_RECEIVABLES,
22822           sum(pjp.UNEARNED_REVENUE)                UNEARNED_REVENUE,
22823           sum(pjp.AR_UNAPPR_INVOICE_AMOUNT)        AR_UNAPPR_INVOICE_AMOUNT,
22824           sum(pjp.AR_UNAPPR_INVOICE_COUNT)         AR_UNAPPR_INVOICE_COUNT,
22825           sum(pjp.AR_APPR_INVOICE_AMOUNT)          AR_APPR_INVOICE_AMOUNT,
22826           sum(pjp.AR_APPR_INVOICE_COUNT)           AR_APPR_INVOICE_COUNT,
22827           sum(pjp.AR_AMOUNT_DUE)                   AR_AMOUNT_DUE,
22828           sum(pjp.AR_COUNT_DUE)                    AR_COUNT_DUE,
22829           sum(pjp.AR_AMOUNT_OVERDUE)               AR_AMOUNT_OVERDUE,
22830           sum(pjp.AR_COUNT_OVERDUE)                AR_COUNT_OVERDUE,
22831           sum(pjp.CUSTOM1)                         CUSTOM1,
22832           sum(pjp.CUSTOM2)                         CUSTOM2,
22833           sum(pjp.CUSTOM3)                         CUSTOM3,
22834           sum(pjp.CUSTOM4)                         CUSTOM4,
22835           sum(pjp.CUSTOM5)                         CUSTOM5,
22836           sum(pjp.CUSTOM6)                         CUSTOM6,
22837           sum(pjp.CUSTOM7)                         CUSTOM7,
22838           sum(pjp.CUSTOM8)                         CUSTOM8,
22839           sum(pjp.CUSTOM9)                         CUSTOM9,
22840           sum(pjp.CUSTOM10)                        CUSTOM10,
22841           sum(pjp.CUSTOM11)                        CUSTOM11,
22842           sum(pjp.CUSTOM12)                        CUSTOM12,
22843           sum(pjp.CUSTOM13)                        CUSTOM13,
22844           sum(pjp.CUSTOM14)                        CUSTOM14,
22845           sum(pjp.CUSTOM15)                        CUSTOM15
22846         from
22847           (
22848           select /*+ ordered index(wbs PA_XBS_DENORM_N2) parallel(pjp1) */    -- changed for bug 5927368
22849                  -- get incremental task level amounts from source and
22850                  -- program rollup amounts from interim
22851             wbs_hdr.WBS_VERSION_ID,
22852             'LF'                                      RELATIONSHIP_TYPE,
22853             decode(top_slice.INVERT_ID,
22854                    'PRJ', 'Y',
22855                           decode(wbs.SUB_LEVEL,
22856                                  1, 'Y', 'N'))        PUSHUP_FLAG,
22857             'Y'                                       INSERT_FLAG,
22858             pjp1.PROJECT_ID,
22859             pjp1.PROJECT_ORG_ID,
22860             pjp1.PROJECT_ORGANIZATION_ID,
22861             decode(top_slice.INVERT_ID,
22862                    'PRJ', prg.SUP_EMT_ID,
22863                           decode(wbs.SUB_LEVEL,
22864                                  1, prg.SUP_EMT_ID,
22865                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
22866             pjp1.TIME_ID,
22867             pjp1.PERIOD_TYPE_ID,
22868             pjp1.CALENDAR_TYPE,
22869             'Y'                                       WBS_ROLLUP_FLAG,
22870             pjp1.PRG_ROLLUP_FLAG,
22871             pjp1.CURR_RECORD_TYPE_ID,
22872             pjp1.CURRENCY_CODE,
22873             pjp1.REVENUE,
22874             pjp1.INITIAL_FUNDING_AMOUNT,
22875             pjp1.INITIAL_FUNDING_COUNT,
22876             pjp1.ADDITIONAL_FUNDING_AMOUNT,
22877             pjp1.ADDITIONAL_FUNDING_COUNT,
22878             pjp1.CANCELLED_FUNDING_AMOUNT,
22879             pjp1.CANCELLED_FUNDING_COUNT,
22880             pjp1.FUNDING_ADJUSTMENT_AMOUNT,
22881             pjp1.FUNDING_ADJUSTMENT_COUNT,
22882             pjp1.REVENUE_WRITEOFF,
22883             pjp1.AR_INVOICE_AMOUNT,
22884             pjp1.AR_INVOICE_COUNT,
22885             pjp1.AR_CASH_APPLIED_AMOUNT,
22886             pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
22887             pjp1.AR_INVOICE_WRITEOFF_COUNT,
22888             pjp1.AR_CREDIT_MEMO_AMOUNT,
22889             pjp1.AR_CREDIT_MEMO_COUNT,
22890             pjp1.UNBILLED_RECEIVABLES,
22891             pjp1.UNEARNED_REVENUE,
22892             pjp1.AR_UNAPPR_INVOICE_AMOUNT,
22893             pjp1.AR_UNAPPR_INVOICE_COUNT,
22894             pjp1.AR_APPR_INVOICE_AMOUNT,
22895             pjp1.AR_APPR_INVOICE_COUNT,
22896             pjp1.AR_AMOUNT_DUE,
22897             pjp1.AR_COUNT_DUE,
22898             pjp1.AR_AMOUNT_OVERDUE,
22899             pjp1.AR_COUNT_OVERDUE,
22900             pjp1.CUSTOM1,
22901             pjp1.CUSTOM2,
22902             pjp1.CUSTOM3,
22903             pjp1.CUSTOM4,
22904             pjp1.CUSTOM5,
22905             pjp1.CUSTOM6,
22906             pjp1.CUSTOM7,
22907             pjp1.CUSTOM8,
22908             pjp1.CUSTOM9,
22909             pjp1.CUSTOM10,
22910             pjp1.CUSTOM11,
22911             pjp1.CUSTOM12,
22912             pjp1.CUSTOM13,
22913             pjp1.CUSTOM14,
22914             pjp1.CUSTOM15
22915           from
22916             PJI_AC_AGGR_PJP1   pjp1,
22917             PJI_PJP_WBS_HEADER wbs_hdr,
22918             PA_XBS_DENORM      wbs,
22919             PJI_XBS_DENORM     prg,
22920             (
22921               select 1     WBS_SUP_LEVEL,
22922                      1     WBS_SUB_LEVEL,
22923                      'PRJ' INVERT_ID
22924               from   DUAL
22925               union all
22926               select 1     WBS_SUP_LEVEL,
22927                      1     WBS_SUB_LEVEL,
22928                      'WBS' INVERT_ID
22929               from   DUAL
22930             ) top_slice
22931           where
22932             prg.STRUCT_TYPE         =  'PRG'                       and
22933             prg.SUP_LEVEL           =  l_level                     and
22934             prg.SUB_LEVEL           =  l_level                     and
22935             wbs.STRUCT_TYPE         =  'WBS'                       and
22936             ((wbs.SUP_LEVEL = 1 and
22937               wbs.SUB_LEVEL = 1) or
22938              (wbs.SUP_LEVEL <> wbs.SUB_LEVEL))                     and
22939             wbs.STRUCT_VERSION_ID   =  prg.SUP_ID                  and
22940             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
22941             pjp1.WORKER_ID          =  p_worker_id                 and
22942             pjp1.PRG_LEVEL          in (0, l_level)                and
22943             pjp1.WBS_ROLLUP_FLAG    =  'N'                         and
22944             pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                  and
22945             wbs_hdr.PLAN_VERSION_ID =  -1                          and
22946             pjp1.PROJECT_ID         =  wbs_hdr.PROJECT_ID          and
22947             wbs.STRUCT_VERSION_ID   =  wbs_hdr.WBS_VERSION_ID      and
22948             pjp1.PROJECT_ELEMENT_ID =  wbs.SUB_EMT_ID              and
22949             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
22950             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+)
22951           union all
22952           select /*+ ordered parallel(pjp1) */           -- changed for bug 5927368
22953                  -- get incremental project level amounts from source
22954             wbs_hdr.WBS_VERSION_ID,
22955             'LF'                                   RELATIONSHIP_TYPE,
22956             'Y'                                    PUSHUP_FLAG,
22957             'N'                                    INSERT_FLAG,
22958             pjp1.PROJECT_ID,
22959             pjp1.PROJECT_ORG_ID,
22960             pjp1.PROJECT_ORGANIZATION_ID,
22961             pjp1.PROJECT_ELEMENT_ID,
22962             pjp1.TIME_ID,
22963             pjp1.PERIOD_TYPE_ID,
22964             pjp1.CALENDAR_TYPE,
22965             'Y'                                    WBS_ROLLUP_FLAG,
22966             pjp1.PRG_ROLLUP_FLAG,
22967             pjp1.CURR_RECORD_TYPE_ID,
22968             pjp1.CURRENCY_CODE,
22969             pjp1.REVENUE,
22970             pjp1.INITIAL_FUNDING_AMOUNT,
22971             pjp1.INITIAL_FUNDING_COUNT,
22972             pjp1.ADDITIONAL_FUNDING_AMOUNT,
22973             pjp1.ADDITIONAL_FUNDING_COUNT,
22974             pjp1.CANCELLED_FUNDING_AMOUNT,
22975             pjp1.CANCELLED_FUNDING_COUNT,
22976             pjp1.FUNDING_ADJUSTMENT_AMOUNT,
22977             pjp1.FUNDING_ADJUSTMENT_COUNT,
22978             pjp1.REVENUE_WRITEOFF,
22979             pjp1.AR_INVOICE_AMOUNT,
22980             pjp1.AR_INVOICE_COUNT,
22981             pjp1.AR_CASH_APPLIED_AMOUNT,
22982             pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
22983             pjp1.AR_INVOICE_WRITEOFF_COUNT,
22984             pjp1.AR_CREDIT_MEMO_AMOUNT,
22985             pjp1.AR_CREDIT_MEMO_COUNT,
22986             pjp1.UNBILLED_RECEIVABLES,
22987             pjp1.UNEARNED_REVENUE,
22988             pjp1.AR_UNAPPR_INVOICE_AMOUNT,
22989             pjp1.AR_UNAPPR_INVOICE_COUNT,
22990             pjp1.AR_APPR_INVOICE_AMOUNT,
22991             pjp1.AR_APPR_INVOICE_COUNT,
22992             pjp1.AR_AMOUNT_DUE,
22993             pjp1.AR_COUNT_DUE,
22994             pjp1.AR_AMOUNT_OVERDUE,
22995             pjp1.AR_COUNT_OVERDUE,
22996             pjp1.CUSTOM1,
22997             pjp1.CUSTOM2,
22998             pjp1.CUSTOM3,
22999             pjp1.CUSTOM4,
23000             pjp1.CUSTOM5,
23001             pjp1.CUSTOM6,
23002             pjp1.CUSTOM7,
23003             pjp1.CUSTOM8,
23004             pjp1.CUSTOM9,
23005             pjp1.CUSTOM10,
23006             pjp1.CUSTOM11,
23007             pjp1.CUSTOM12,
23008             pjp1.CUSTOM13,
23009             pjp1.CUSTOM14,
23010             pjp1.CUSTOM15
23011           from
23012             PJI_AC_AGGR_PJP1   pjp1,
23013             PJI_PJP_WBS_HEADER wbs_hdr,
23014             PJI_XBS_DENORM     prg
23015           where
23016             prg.STRUCT_TYPE         = 'PRG'                              and
23017             prg.SUP_LEVEL           = l_level                            and
23018             prg.SUB_LEVEL           = l_level                            and
23019             pjp1.WORKER_ID          = p_worker_id                        and
23020             pjp1.PROJECT_ID         = prg.SUP_PROJECT_ID                 and
23021             pjp1.PROJECT_ELEMENT_ID = prg.SUP_EMT_ID                     and
23022             pjp1.PRG_LEVEL          = 0                                  and
23023             pjp1.WBS_ROLLUP_FLAG    = 'N'                                and
23024             pjp1.PRG_ROLLUP_FLAG    = 'N'                                and
23025             wbs_hdr.PROJECT_ID      = pjp1.PROJECT_ID                    and
23026             wbs_hdr.PLAN_VERSION_ID = -1                                 and
23027             wbs_hdr.WBS_VERSION_ID  = prg.SUP_ID
23028           union all
23029           select /*+ ordered
23030                      index(fpr PJI_AC_XBR_ACCUM_F_N1) */
23031                  -- get delta task level amounts from Reporting Lines
23032             wbs_hdr.WBS_VERSION_ID,
23033             'LF'                                   RELATIONSHIP_TYPE,
23034             decode(log.EVENT_TYPE,
23035                    'WBS_CHANGE', 'Y',
23036                    'WBS_PUBLISH', 'N')             PUSHUP_FLAG,
23037             'Y'                                    INSERT_FLAG,
23038             acr.PROJECT_ID,
23039             acr.PROJECT_ORG_ID,
23040             acr.PROJECT_ORGANIZATION_ID,
23041             decode(top_slice.INVERT_ID,
23042                    'PRJ', prg.SUP_EMT_ID,
23043                           decode(wbs.SUB_LEVEL,
23044                                  1, prg.SUP_EMT_ID,
23045                                     wbs.SUP_EMT_ID))
23046                                                    PROJECT_ELEMENT_ID,
23047             acr.TIME_ID,
23048             acr.PERIOD_TYPE_ID,
23049             acr.CALENDAR_TYPE,
23050             'Y'                                    WBS_ROLLUP_FLAG,
23051             acr.PRG_ROLLUP_FLAG,
23052             acr.CURR_RECORD_TYPE_ID,
23053             acr.CURRENCY_CODE,
23054             wbs.SIGN * acr.REVENUE                 REVENUE,
23055             wbs.SIGN * acr.INITIAL_FUNDING_AMOUNT  INITIAL_FUNDING_AMOUNT,
23056             wbs.SIGN * acr.INITIAL_FUNDING_COUNT   INITIAL_FUNDING_COUNT,
23057             wbs.SIGN * acr.ADDITIONAL_FUNDING_AMOUNT
23058                                                    ADDITIONAL_FUNDING_AMOUNT,
23059             wbs.SIGN * acr.ADDITIONAL_FUNDING_COUNT
23060                                                    ADDITIONAL_FUNDING_COUNT,
23061             wbs.SIGN * acr.CANCELLED_FUNDING_AMOUNT
23062                                                    CANCELLED_FUNDING_AMOUNT,
23063             wbs.SIGN * acr.CANCELLED_FUNDING_COUNT CANCELLED_FUNDING_COUNT,
23064             wbs.SIGN * acr.FUNDING_ADJUSTMENT_AMOUNT
23065                                                    FUNDING_ADJUSTMENT_AMOUNT,
23066             wbs.SIGN * acr.FUNDING_ADJUSTMENT_COUNT
23067                                                    FUNDING_ADJUSTMENT_COUNT,
23068             wbs.SIGN * acr.REVENUE_WRITEOFF        REVENUE_WRITEOFF,
23069             wbs.SIGN * acr.AR_INVOICE_AMOUNT       AR_INVOICE_AMOUNT,
23070             wbs.SIGN * acr.AR_INVOICE_COUNT        AR_INVOICE_COUNT,
23071             wbs.SIGN * acr.AR_CASH_APPLIED_AMOUNT  AR_CASH_APPLIED_AMOUNT,
23072             wbs.SIGN * acr.AR_INVOICE_WRITE_OFF_AMOUNT
23073                                                    AR_INVOICE_WRITE_OFF_AMOUNT,
23074             wbs.SIGN * acr.AR_INVOICE_WRITEOFF_COUNT
23075                                                    AR_INVOICE_WRITEOFF_COUNT,
23076             wbs.SIGN * acr.AR_CREDIT_MEMO_AMOUNT   AR_CREDIT_MEMO_AMOUNT,
23077             wbs.SIGN * acr.AR_CREDIT_MEMO_COUNT    AR_CREDIT_MEMO_COUNT,
23078             wbs.SIGN * acr.UNBILLED_RECEIVABLES    UNBILLED_RECEIVABLES,
23079             wbs.SIGN * acr.UNEARNED_REVENUE        UNEARNED_REVENUE,
23080             wbs.SIGN * acr.AR_UNAPPR_INVOICE_AMOUNT
23081                                                    AR_UNAPPR_INVOICE_AMOUNT,
23082             wbs.SIGN * acr.AR_UNAPPR_INVOICE_COUNT AR_UNAPPR_INVOICE_COUNT,
23083             wbs.SIGN * acr.AR_APPR_INVOICE_AMOUNT  AR_APPR_INVOICE_AMOUNT,
23084             wbs.SIGN * acr.AR_APPR_INVOICE_COUNT   AR_APPR_INVOICE_COUNT,
23085             wbs.SIGN * acr.AR_AMOUNT_DUE           AR_AMOUNT_DUE,
23086             wbs.SIGN * acr.AR_COUNT_DUE            AR_COUNT_DUE,
23087             wbs.SIGN * acr.AR_AMOUNT_OVERDUE       AR_AMOUNT_OVERDUE,
23088             wbs.SIGN * acr.AR_COUNT_OVERDUE        AR_COUNT_OVERDUE,
23089             wbs.SIGN * acr.CUSTOM1                 CUSTOM1,
23090             wbs.SIGN * acr.CUSTOM2                 CUSTOM2,
23091             wbs.SIGN * acr.CUSTOM3                 CUSTOM3,
23092             wbs.SIGN * acr.CUSTOM4                 CUSTOM4,
23093             wbs.SIGN * acr.CUSTOM5                 CUSTOM5,
23094             wbs.SIGN * acr.CUSTOM6                 CUSTOM6,
23095             wbs.SIGN * acr.CUSTOM7                 CUSTOM7,
23096             wbs.SIGN * acr.CUSTOM8                 CUSTOM8,
23097             wbs.SIGN * acr.CUSTOM9                 CUSTOM9,
23098             wbs.SIGN * acr.CUSTOM10                CUSTOM10,
23099             wbs.SIGN * acr.CUSTOM11                CUSTOM11,
23100             wbs.SIGN * acr.CUSTOM12                CUSTOM12,
23101             wbs.SIGN * acr.CUSTOM13                CUSTOM13,
23102             wbs.SIGN * acr.CUSTOM14                CUSTOM14,
23103             wbs.SIGN * acr.CUSTOM15                CUSTOM15
23104           from
23105             PJI_PA_PROJ_EVENTS_LOG log,
23106             PJI_PJP_WBS_HEADER     wbs_hdr,
23107             PJI_XBS_DENORM_DELTA   wbs,
23108             PJI_XBS_DENORM         prg,
23109             PJI_AC_XBS_ACCUM_F     acr,
23110             (
23111               select 1     WBS_SUP_LEVEL,
23112                      1     WBS_SUB_LEVEL,
23113                      'PRJ' INVERT_ID
23114               from   DUAL
23115               union all
23116               select 1     WBS_SUP_LEVEL,
23117                      1     WBS_SUB_LEVEL,
23118                      'WBS' INVERT_ID
23119               from   DUAL
23120             ) top_slice
23121           where
23122             prg.STRUCT_TYPE         =  'PRG'                       and
23123             prg.SUP_LEVEL           =  l_level                     and
23124             prg.SUB_LEVEL           =  l_level                     and
23125             wbs.WORKER_ID           =  p_worker_id                 and
23126             wbs.STRUCT_TYPE         =  'WBS'                       and
23127             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
23128             log.WORKER_ID           =  p_worker_id                 and
23129             log.EVENT_ID            =  wbs.EVENT_ID                and
23130             log.EVENT_TYPE          in ('WBS_CHANGE',
23131                                         'WBS_PUBLISH')             and
23132             wbs_hdr.PROJECT_ID      =  log.ATTRIBUTE1              and
23133             wbs_hdr.PLAN_VERSION_ID =  log.ATTRIBUTE3              and
23134             wbs_hdr.PLAN_VERSION_ID =  -1                          and
23135             wbs_hdr.WBS_VERSION_ID  =  wbs.STRUCT_VERSION_ID       and
23136             wbs_hdr.PROJECT_ID      =  prg.SUP_PROJECT_ID          and
23137             wbs_hdr.WBS_VERSION_ID  =  prg.SUP_ID                  and
23138             acr.WBS_ROLLUP_FLAG     =  'N'                         and
23139             acr.PRG_ROLLUP_FLAG     =  'N'                         and
23140             acr.PROJECT_ID          =  wbs.SUP_PROJECT_ID          and
23141             acr.PROJECT_ELEMENT_ID  =  wbs.SUB_EMT_ID              and
23142             acr.PROJECT_ID          =  wbs_hdr.PROJECT_ID          and
23143             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
23144             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+) and
23145             (wbs.SUP_LEVEL <> wbs.SUB_LEVEL or
23146              (wbs.SUP_LEVEL = 1 and
23147               wbs.SUB_LEVEL = 1))
23148           ) pjp,
23149           (
23150           select /*+ ordered */
23151             prg.SUP_PROJECT_ID,
23152             map.PROJECT_ORG_ID               SUP_PROJECT_ORG_ID,
23153             map.PROJECT_ORGANIZATION_ID      SUP_PROJECT_ORGANIZATION_ID,
23154             prg.SUP_ID,
23155             prg.SUP_EMT_ID,
23156             prg.SUP_LEVEL,
23157             prg.SUB_ID,
23158             prg.SUB_EMT_ID,
23159             prg.SUB_ROLLUP_ID,
23160             prg.RELATIONSHIP_TYPE            RELATIONSHIP_TYPE,
23161             'Y'                              PUSHUP_FLAG
23162           from
23163             PJI_PJP_PROJ_BATCH_MAP map,
23164             PJI_XBS_DENORM         prg,
23165             PJI_XBS_DENORM_DELTA   prg_delta
23166           where
23167             prg.STRUCT_TYPE          = 'PRG'                           and
23168             prg.RELATIONSHIP_TYPE    = 'LF'                            and
23169             prg.SUB_ROLLUP_ID        is not null                       and
23170             prg.SUB_LEVEL            = l_level                         and
23171             map.WORKER_ID            = p_worker_id                     and
23172             map.PROJECT_ID           = prg.SUP_PROJECT_ID              and
23173             p_worker_id              = prg_delta.WORKER_ID         (+) and
23174             prg.STRUCT_TYPE          = prg_delta.STRUCT_TYPE       (+) and
23175             prg.SUP_PROJECT_ID       = prg_delta.SUP_PROJECT_ID    (+) and
23176             prg.SUP_LEVEL            = prg_delta.SUP_LEVEL         (+) and
23177             prg.SUP_ID               = prg_delta.SUP_ID            (+) and
23178             prg.SUB_LEVEL            = prg_delta.SUB_LEVEL         (+) and
23179             prg.SUB_ID               = prg_delta.SUB_ID            (+) and
23180             prg.RELATIONSHIP_TYPE    = prg_delta.RELATIONSHIP_TYPE (+) and
23181             -1                       = prg_delta.SIGN              (+) and
23182             prg_delta.SUP_PROJECT_ID is null
23183           ) prg
23184         where
23185           pjp.WBS_VERSION_ID    = prg.SUB_ID            (+) and
23186           pjp.RELATIONSHIP_TYPE = prg.RELATIONSHIP_TYPE (+) and
23187           pjp.PUSHUP_FLAG       = prg.PUSHUP_FLAG       (+)
23188         group by
23189           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23190                  pjp.INSERT_FLAG, 'Y'),
23191           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23192                  null, prg.SUP_ID),
23193           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23194                  null, prg.SUP_EMT_ID),
23195           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23196                  l_level, prg.SUP_LEVEL),
23197           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23198                  pjp.PROJECT_ID,
23199                  prg.SUP_PROJECT_ID),
23200           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23201                  pjp.PROJECT_ORG_ID,
23202                  prg.SUP_PROJECT_ORG_ID),
23203           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23204                  pjp.PROJECT_ORGANIZATION_ID,
23205                  prg.SUP_PROJECT_ORGANIZATION_ID),
23206           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23207                  pjp.PROJECT_ELEMENT_ID,
23208                  prg.SUB_ROLLUP_ID),
23209           pjp.TIME_ID,
23210           pjp.PERIOD_TYPE_ID,
23211           pjp.CALENDAR_TYPE,
23212           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23213                  pjp.WBS_ROLLUP_FLAG, 'N'),
23214           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23215                  pjp.PRG_ROLLUP_FLAG, 'Y'),
23216           pjp.CURR_RECORD_TYPE_ID,
23217           pjp.CURRENCY_CODE
23218           )                          pjp1_i,
23219           PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
23220           PA_PROJ_WORKPLAN_ATTR      sup_wpa
23221         where
23222           pjp1_i.INSERT_FLAG  = 'Y'                                and
23223           pjp1_i.PROJECT_ID   = sup_fin_ver.PROJECT_ID         (+) and
23224           pjp1_i.SUP_ID       = sup_fin_ver.ELEMENT_VERSION_ID (+) and
23225           'STRUCTURE_WORKING' = sup_fin_ver.STATUS_CODE        (+) and
23226           pjp1_i.SUP_EMT_ID   = sup_wpa.PROJ_ELEMENT_ID        (+) and
23227           'N'                 = sup_wpa.WP_ENABLE_VERSION_FLAG (+) and
23228           (pjp1_i.SUP_ID is null or
23229            (pjp1_i.SUP_ID is not null and
23230             (sup_fin_ver.PROJECT_ID is not null or
23231              sup_wpa.PROJ_ELEMENT_ID is not null)));
23232     elsif (p_worker_id =5) then
23233       -- Query for Partition 5
23234 
23235         insert /*+ parallel(PJI_AC_AGGR_PJP1) */
23236                    into PJI_AC_AGGR_PJP1 partition(P5)
23237         (
23238           WORKER_ID,
23239           RECORD_TYPE,
23240           PRG_LEVEL,
23241           PROJECT_ID,
23242           PROJECT_ORG_ID,
23243           PROJECT_ORGANIZATION_ID,
23244           PROJECT_ELEMENT_ID,
23245           TIME_ID,
23246           PERIOD_TYPE_ID,
23247           CALENDAR_TYPE,
23248           WBS_ROLLUP_FLAG,
23249           PRG_ROLLUP_FLAG,
23250           CURR_RECORD_TYPE_ID,
23251           CURRENCY_CODE,
23252           REVENUE,
23253           INITIAL_FUNDING_AMOUNT,
23254           INITIAL_FUNDING_COUNT,
23255           ADDITIONAL_FUNDING_AMOUNT,
23256           ADDITIONAL_FUNDING_COUNT,
23257           CANCELLED_FUNDING_AMOUNT,
23258           CANCELLED_FUNDING_COUNT,
23259           FUNDING_ADJUSTMENT_AMOUNT,
23260           FUNDING_ADJUSTMENT_COUNT,
23261           REVENUE_WRITEOFF,
23262           AR_INVOICE_AMOUNT,
23263           AR_INVOICE_COUNT,
23264           AR_CASH_APPLIED_AMOUNT,
23265           AR_INVOICE_WRITE_OFF_AMOUNT,
23266           AR_INVOICE_WRITEOFF_COUNT,
23267           AR_CREDIT_MEMO_AMOUNT,
23268           AR_CREDIT_MEMO_COUNT,
23269           UNBILLED_RECEIVABLES,
23270           UNEARNED_REVENUE,
23271           AR_UNAPPR_INVOICE_AMOUNT,
23272           AR_UNAPPR_INVOICE_COUNT,
23273           AR_APPR_INVOICE_AMOUNT,
23274           AR_APPR_INVOICE_COUNT,
23275           AR_AMOUNT_DUE,
23276           AR_COUNT_DUE,
23277           AR_AMOUNT_OVERDUE,
23278           AR_COUNT_OVERDUE,
23279           CUSTOM1,
23280           CUSTOM2,
23281           CUSTOM3,
23282           CUSTOM4,
23283           CUSTOM5,
23284           CUSTOM6,
23285           CUSTOM7,
23286           CUSTOM8,
23287           CUSTOM9,
23288           CUSTOM10,
23289           CUSTOM11,
23290           CUSTOM12,
23291           CUSTOM13,
23292           CUSTOM14,
23293           CUSTOM15
23294         )
23295         select
23296           pjp1_i.WORKER_ID,
23297           pjp1_i.RECORD_TYPE,
23298           pjp1_i.PRG_LEVEL,
23299           pjp1_i.PROJECT_ID,
23300           pjp1_i.PROJECT_ORG_ID,
23301           pjp1_i.PROJECT_ORGANIZATION_ID,
23302           pjp1_i.PROJECT_ELEMENT_ID,
23303           pjp1_i.TIME_ID,
23304           pjp1_i.PERIOD_TYPE_ID,
23305           pjp1_i.CALENDAR_TYPE,
23306           pjp1_i.WBS_ROLLUP_FLAG,
23307           pjp1_i.PRG_ROLLUP_FLAG,
23308           pjp1_i.CURR_RECORD_TYPE_ID,
23309           pjp1_i.CURRENCY_CODE,
23310           pjp1_i.REVENUE,
23311           pjp1_i.INITIAL_FUNDING_AMOUNT,
23312           pjp1_i.INITIAL_FUNDING_COUNT,
23313           pjp1_i.ADDITIONAL_FUNDING_AMOUNT,
23314           pjp1_i.ADDITIONAL_FUNDING_COUNT,
23315           pjp1_i.CANCELLED_FUNDING_AMOUNT,
23316           pjp1_i.CANCELLED_FUNDING_COUNT,
23317           pjp1_i.FUNDING_ADJUSTMENT_AMOUNT,
23318           pjp1_i.FUNDING_ADJUSTMENT_COUNT,
23319           pjp1_i.REVENUE_WRITEOFF,
23320           pjp1_i.AR_INVOICE_AMOUNT,
23321           pjp1_i.AR_INVOICE_COUNT,
23322           pjp1_i.AR_CASH_APPLIED_AMOUNT,
23323           pjp1_i.AR_INVOICE_WRITE_OFF_AMOUNT,
23324           pjp1_i.AR_INVOICE_WRITEOFF_COUNT,
23325           pjp1_i.AR_CREDIT_MEMO_AMOUNT,
23326           pjp1_i.AR_CREDIT_MEMO_COUNT,
23327           pjp1_i.UNBILLED_RECEIVABLES,
23328           pjp1_i.UNEARNED_REVENUE,
23329           pjp1_i.AR_UNAPPR_INVOICE_AMOUNT,
23330           pjp1_i.AR_UNAPPR_INVOICE_COUNT,
23331           pjp1_i.AR_APPR_INVOICE_AMOUNT,
23332           pjp1_i.AR_APPR_INVOICE_COUNT,
23333           pjp1_i.AR_AMOUNT_DUE,
23334           pjp1_i.AR_COUNT_DUE,
23335           pjp1_i.AR_AMOUNT_OVERDUE,
23336           pjp1_i.AR_COUNT_OVERDUE,
23337           pjp1_i.CUSTOM1,
23338           pjp1_i.CUSTOM2,
23339           pjp1_i.CUSTOM3,
23340           pjp1_i.CUSTOM4,
23341           pjp1_i.CUSTOM5,
23342           pjp1_i.CUSTOM6,
23343           pjp1_i.CUSTOM7,
23344           pjp1_i.CUSTOM8,
23345           pjp1_i.CUSTOM9,
23346           pjp1_i.CUSTOM10,
23347           pjp1_i.CUSTOM11,
23348           pjp1_i.CUSTOM12,
23349           pjp1_i.CUSTOM13,
23350           pjp1_i.CUSTOM14,
23351           pjp1_i.CUSTOM15
23352         from
23353           (
23354         select
23355           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23356                  pjp.INSERT_FLAG, 'Y')             INSERT_FLAG,
23357           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23358                  null, prg.SUP_ID)                 SUP_ID,
23359           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23360                  null, prg.SUP_EMT_ID)             SUP_EMT_ID,
23361           p_worker_id                              WORKER_ID,
23362           'W'                                      RECORD_TYPE,
23363           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23364                  l_level, prg.SUP_LEVEL)           PRG_LEVEL,
23365           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23366                  pjp.PROJECT_ID,
23367                  prg.SUP_PROJECT_ID)               PROJECT_ID,
23368           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23369                  pjp.PROJECT_ORG_ID,
23370                  prg.SUP_PROJECT_ORG_ID)           PROJECT_ORG_ID,
23371           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23372                  pjp.PROJECT_ORGANIZATION_ID,
23373                  prg.SUP_PROJECT_ORGANIZATION_ID)  PROJECT_ORGANIZATION_ID,
23374           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23375                  pjp.PROJECT_ELEMENT_ID,
23376                  prg.SUB_ROLLUP_ID)                PROJECT_ELEMENT_ID,
23377           pjp.TIME_ID,
23378           pjp.PERIOD_TYPE_ID,
23379           pjp.CALENDAR_TYPE,
23380           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23381                  pjp.WBS_ROLLUP_FLAG, 'N')         WBS_ROLLUP_FLAG,
23382           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23383                  pjp.PRG_ROLLUP_FLAG, 'Y')         PRG_ROLLUP_FLAG,
23384           pjp.CURR_RECORD_TYPE_ID,
23385           pjp.CURRENCY_CODE,
23386           sum(pjp.REVENUE)                         REVENUE,
23387           sum(pjp.INITIAL_FUNDING_AMOUNT)          INITIAL_FUNDING_AMOUNT,
23388           sum(pjp.INITIAL_FUNDING_COUNT)           INITIAL_FUNDING_COUNT,
23389           sum(pjp.ADDITIONAL_FUNDING_AMOUNT)       ADDITIONAL_FUNDING_AMOUNT,
23390           sum(pjp.ADDITIONAL_FUNDING_COUNT)        ADDITIONAL_FUNDING_COUNT,
23391           sum(pjp.CANCELLED_FUNDING_AMOUNT)        CANCELLED_FUNDING_AMOUNT,
23392           sum(pjp.CANCELLED_FUNDING_COUNT)         CANCELLED_FUNDING_COUNT,
23393           sum(pjp.FUNDING_ADJUSTMENT_AMOUNT)       FUNDING_ADJUSTMENT_AMOUNT,
23394           sum(pjp.FUNDING_ADJUSTMENT_COUNT)        FUNDING_ADJUSTMENT_COUNT,
23395           sum(pjp.REVENUE_WRITEOFF)                REVENUE_WRITEOFF,
23396           sum(pjp.AR_INVOICE_AMOUNT)               AR_INVOICE_AMOUNT,
23397           sum(pjp.AR_INVOICE_COUNT)                AR_INVOICE_COUNT,
23398           sum(pjp.AR_CASH_APPLIED_AMOUNT)          AR_CASH_APPLIED_AMOUNT,
23399           sum(pjp.AR_INVOICE_WRITE_OFF_AMOUNT)     AR_INVOICE_WRITE_OFF_AMOUNT,
23400           sum(pjp.AR_INVOICE_WRITEOFF_COUNT)       AR_INVOICE_WRITEOFF_COUNT,
23401           sum(pjp.AR_CREDIT_MEMO_AMOUNT)           AR_CREDIT_MEMO_AMOUNT,
23402           sum(pjp.AR_CREDIT_MEMO_COUNT)            AR_CREDIT_MEMO_COUNT,
23403           sum(pjp.UNBILLED_RECEIVABLES)            UNBILLED_RECEIVABLES,
23404           sum(pjp.UNEARNED_REVENUE)                UNEARNED_REVENUE,
23405           sum(pjp.AR_UNAPPR_INVOICE_AMOUNT)        AR_UNAPPR_INVOICE_AMOUNT,
23406           sum(pjp.AR_UNAPPR_INVOICE_COUNT)         AR_UNAPPR_INVOICE_COUNT,
23407           sum(pjp.AR_APPR_INVOICE_AMOUNT)          AR_APPR_INVOICE_AMOUNT,
23408           sum(pjp.AR_APPR_INVOICE_COUNT)           AR_APPR_INVOICE_COUNT,
23409           sum(pjp.AR_AMOUNT_DUE)                   AR_AMOUNT_DUE,
23410           sum(pjp.AR_COUNT_DUE)                    AR_COUNT_DUE,
23411           sum(pjp.AR_AMOUNT_OVERDUE)               AR_AMOUNT_OVERDUE,
23412           sum(pjp.AR_COUNT_OVERDUE)                AR_COUNT_OVERDUE,
23413           sum(pjp.CUSTOM1)                         CUSTOM1,
23414           sum(pjp.CUSTOM2)                         CUSTOM2,
23415           sum(pjp.CUSTOM3)                         CUSTOM3,
23416           sum(pjp.CUSTOM4)                         CUSTOM4,
23417           sum(pjp.CUSTOM5)                         CUSTOM5,
23418           sum(pjp.CUSTOM6)                         CUSTOM6,
23419           sum(pjp.CUSTOM7)                         CUSTOM7,
23420           sum(pjp.CUSTOM8)                         CUSTOM8,
23421           sum(pjp.CUSTOM9)                         CUSTOM9,
23422           sum(pjp.CUSTOM10)                        CUSTOM10,
23423           sum(pjp.CUSTOM11)                        CUSTOM11,
23424           sum(pjp.CUSTOM12)                        CUSTOM12,
23425           sum(pjp.CUSTOM13)                        CUSTOM13,
23426           sum(pjp.CUSTOM14)                        CUSTOM14,
23427           sum(pjp.CUSTOM15)                        CUSTOM15
23428         from
23429           (
23430           select /*+ ordered index(wbs PA_XBS_DENORM_N2) parallel(pjp1) */    -- changed for bug 5927368
23431                  -- get incremental task level amounts from source and
23432                  -- program rollup amounts from interim
23433             wbs_hdr.WBS_VERSION_ID,
23434             'LF'                                      RELATIONSHIP_TYPE,
23435             decode(top_slice.INVERT_ID,
23436                    'PRJ', 'Y',
23437                           decode(wbs.SUB_LEVEL,
23438                                  1, 'Y', 'N'))        PUSHUP_FLAG,
23439             'Y'                                       INSERT_FLAG,
23440             pjp1.PROJECT_ID,
23441             pjp1.PROJECT_ORG_ID,
23442             pjp1.PROJECT_ORGANIZATION_ID,
23443             decode(top_slice.INVERT_ID,
23444                    'PRJ', prg.SUP_EMT_ID,
23445                           decode(wbs.SUB_LEVEL,
23446                                  1, prg.SUP_EMT_ID,
23447                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
23448             pjp1.TIME_ID,
23449             pjp1.PERIOD_TYPE_ID,
23450             pjp1.CALENDAR_TYPE,
23451             'Y'                                       WBS_ROLLUP_FLAG,
23452             pjp1.PRG_ROLLUP_FLAG,
23453             pjp1.CURR_RECORD_TYPE_ID,
23454             pjp1.CURRENCY_CODE,
23455             pjp1.REVENUE,
23456             pjp1.INITIAL_FUNDING_AMOUNT,
23457             pjp1.INITIAL_FUNDING_COUNT,
23458             pjp1.ADDITIONAL_FUNDING_AMOUNT,
23459             pjp1.ADDITIONAL_FUNDING_COUNT,
23460             pjp1.CANCELLED_FUNDING_AMOUNT,
23461             pjp1.CANCELLED_FUNDING_COUNT,
23462             pjp1.FUNDING_ADJUSTMENT_AMOUNT,
23463             pjp1.FUNDING_ADJUSTMENT_COUNT,
23464             pjp1.REVENUE_WRITEOFF,
23465             pjp1.AR_INVOICE_AMOUNT,
23466             pjp1.AR_INVOICE_COUNT,
23467             pjp1.AR_CASH_APPLIED_AMOUNT,
23468             pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
23469             pjp1.AR_INVOICE_WRITEOFF_COUNT,
23470             pjp1.AR_CREDIT_MEMO_AMOUNT,
23471             pjp1.AR_CREDIT_MEMO_COUNT,
23472             pjp1.UNBILLED_RECEIVABLES,
23473             pjp1.UNEARNED_REVENUE,
23474             pjp1.AR_UNAPPR_INVOICE_AMOUNT,
23475             pjp1.AR_UNAPPR_INVOICE_COUNT,
23476             pjp1.AR_APPR_INVOICE_AMOUNT,
23477             pjp1.AR_APPR_INVOICE_COUNT,
23478             pjp1.AR_AMOUNT_DUE,
23479             pjp1.AR_COUNT_DUE,
23480             pjp1.AR_AMOUNT_OVERDUE,
23481             pjp1.AR_COUNT_OVERDUE,
23482             pjp1.CUSTOM1,
23483             pjp1.CUSTOM2,
23484             pjp1.CUSTOM3,
23485             pjp1.CUSTOM4,
23486             pjp1.CUSTOM5,
23487             pjp1.CUSTOM6,
23488             pjp1.CUSTOM7,
23489             pjp1.CUSTOM8,
23490             pjp1.CUSTOM9,
23491             pjp1.CUSTOM10,
23492             pjp1.CUSTOM11,
23493             pjp1.CUSTOM12,
23494             pjp1.CUSTOM13,
23495             pjp1.CUSTOM14,
23496             pjp1.CUSTOM15
23497           from
23498             PJI_AC_AGGR_PJP1   pjp1,
23499             PJI_PJP_WBS_HEADER wbs_hdr,
23500             PA_XBS_DENORM      wbs,
23501             PJI_XBS_DENORM     prg,
23502             (
23503               select 1     WBS_SUP_LEVEL,
23504                      1     WBS_SUB_LEVEL,
23505                      'PRJ' INVERT_ID
23506               from   DUAL
23507               union all
23508               select 1     WBS_SUP_LEVEL,
23509                      1     WBS_SUB_LEVEL,
23510                      'WBS' INVERT_ID
23511               from   DUAL
23512             ) top_slice
23513           where
23514             prg.STRUCT_TYPE         =  'PRG'                       and
23515             prg.SUP_LEVEL           =  l_level                     and
23516             prg.SUB_LEVEL           =  l_level                     and
23517             wbs.STRUCT_TYPE         =  'WBS'                       and
23518             ((wbs.SUP_LEVEL = 1 and
23519               wbs.SUB_LEVEL = 1) or
23520              (wbs.SUP_LEVEL <> wbs.SUB_LEVEL))                     and
23521             wbs.STRUCT_VERSION_ID   =  prg.SUP_ID                  and
23522             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
23523             pjp1.WORKER_ID          =  p_worker_id                 and
23524             pjp1.PRG_LEVEL          in (0, l_level)                and
23525             pjp1.WBS_ROLLUP_FLAG    =  'N'                         and
23526             pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                  and
23527             wbs_hdr.PLAN_VERSION_ID =  -1                          and
23528             pjp1.PROJECT_ID         =  wbs_hdr.PROJECT_ID          and
23529             wbs.STRUCT_VERSION_ID   =  wbs_hdr.WBS_VERSION_ID      and
23530             pjp1.PROJECT_ELEMENT_ID =  wbs.SUB_EMT_ID              and
23531             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
23532             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+)
23533           union all
23534           select /*+ ordered parallel(pjp1) */           -- changed for bug 5927368
23535                  -- get incremental project level amounts from source
23536             wbs_hdr.WBS_VERSION_ID,
23537             'LF'                                   RELATIONSHIP_TYPE,
23538             'Y'                                    PUSHUP_FLAG,
23539             'N'                                    INSERT_FLAG,
23540             pjp1.PROJECT_ID,
23541             pjp1.PROJECT_ORG_ID,
23542             pjp1.PROJECT_ORGANIZATION_ID,
23543             pjp1.PROJECT_ELEMENT_ID,
23544             pjp1.TIME_ID,
23545             pjp1.PERIOD_TYPE_ID,
23546             pjp1.CALENDAR_TYPE,
23547             'Y'                                    WBS_ROLLUP_FLAG,
23548             pjp1.PRG_ROLLUP_FLAG,
23549             pjp1.CURR_RECORD_TYPE_ID,
23550             pjp1.CURRENCY_CODE,
23551             pjp1.REVENUE,
23552             pjp1.INITIAL_FUNDING_AMOUNT,
23553             pjp1.INITIAL_FUNDING_COUNT,
23554             pjp1.ADDITIONAL_FUNDING_AMOUNT,
23555             pjp1.ADDITIONAL_FUNDING_COUNT,
23556             pjp1.CANCELLED_FUNDING_AMOUNT,
23557             pjp1.CANCELLED_FUNDING_COUNT,
23558             pjp1.FUNDING_ADJUSTMENT_AMOUNT,
23559             pjp1.FUNDING_ADJUSTMENT_COUNT,
23560             pjp1.REVENUE_WRITEOFF,
23561             pjp1.AR_INVOICE_AMOUNT,
23562             pjp1.AR_INVOICE_COUNT,
23563             pjp1.AR_CASH_APPLIED_AMOUNT,
23564             pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
23565             pjp1.AR_INVOICE_WRITEOFF_COUNT,
23566             pjp1.AR_CREDIT_MEMO_AMOUNT,
23567             pjp1.AR_CREDIT_MEMO_COUNT,
23568             pjp1.UNBILLED_RECEIVABLES,
23569             pjp1.UNEARNED_REVENUE,
23570             pjp1.AR_UNAPPR_INVOICE_AMOUNT,
23571             pjp1.AR_UNAPPR_INVOICE_COUNT,
23572             pjp1.AR_APPR_INVOICE_AMOUNT,
23573             pjp1.AR_APPR_INVOICE_COUNT,
23574             pjp1.AR_AMOUNT_DUE,
23575             pjp1.AR_COUNT_DUE,
23576             pjp1.AR_AMOUNT_OVERDUE,
23577             pjp1.AR_COUNT_OVERDUE,
23578             pjp1.CUSTOM1,
23579             pjp1.CUSTOM2,
23580             pjp1.CUSTOM3,
23581             pjp1.CUSTOM4,
23582             pjp1.CUSTOM5,
23583             pjp1.CUSTOM6,
23584             pjp1.CUSTOM7,
23585             pjp1.CUSTOM8,
23586             pjp1.CUSTOM9,
23587             pjp1.CUSTOM10,
23588             pjp1.CUSTOM11,
23589             pjp1.CUSTOM12,
23590             pjp1.CUSTOM13,
23591             pjp1.CUSTOM14,
23592             pjp1.CUSTOM15
23593           from
23594             PJI_AC_AGGR_PJP1   pjp1,
23595             PJI_PJP_WBS_HEADER wbs_hdr,
23596             PJI_XBS_DENORM     prg
23597           where
23598             prg.STRUCT_TYPE         = 'PRG'                              and
23599             prg.SUP_LEVEL           = l_level                            and
23600             prg.SUB_LEVEL           = l_level                            and
23601             pjp1.WORKER_ID          = p_worker_id                        and
23602             pjp1.PROJECT_ID         = prg.SUP_PROJECT_ID                 and
23603             pjp1.PROJECT_ELEMENT_ID = prg.SUP_EMT_ID                     and
23604             pjp1.PRG_LEVEL          = 0                                  and
23605             pjp1.WBS_ROLLUP_FLAG    = 'N'                                and
23606             pjp1.PRG_ROLLUP_FLAG    = 'N'                                and
23607             wbs_hdr.PROJECT_ID      = pjp1.PROJECT_ID                    and
23608             wbs_hdr.PLAN_VERSION_ID = -1                                 and
23609             wbs_hdr.WBS_VERSION_ID  = prg.SUP_ID
23610           union all
23611           select /*+ ordered
23612                      index(fpr PJI_AC_XBR_ACCUM_F_N1) */
23613                  -- get delta task level amounts from Reporting Lines
23614             wbs_hdr.WBS_VERSION_ID,
23615             'LF'                                   RELATIONSHIP_TYPE,
23616             decode(log.EVENT_TYPE,
23617                    'WBS_CHANGE', 'Y',
23618                    'WBS_PUBLISH', 'N')             PUSHUP_FLAG,
23619             'Y'                                    INSERT_FLAG,
23620             acr.PROJECT_ID,
23621             acr.PROJECT_ORG_ID,
23622             acr.PROJECT_ORGANIZATION_ID,
23623             decode(top_slice.INVERT_ID,
23624                    'PRJ', prg.SUP_EMT_ID,
23625                           decode(wbs.SUB_LEVEL,
23626                                  1, prg.SUP_EMT_ID,
23627                                     wbs.SUP_EMT_ID))
23628                                                    PROJECT_ELEMENT_ID,
23629             acr.TIME_ID,
23630             acr.PERIOD_TYPE_ID,
23631             acr.CALENDAR_TYPE,
23632             'Y'                                    WBS_ROLLUP_FLAG,
23633             acr.PRG_ROLLUP_FLAG,
23634             acr.CURR_RECORD_TYPE_ID,
23635             acr.CURRENCY_CODE,
23636             wbs.SIGN * acr.REVENUE                 REVENUE,
23637             wbs.SIGN * acr.INITIAL_FUNDING_AMOUNT  INITIAL_FUNDING_AMOUNT,
23638             wbs.SIGN * acr.INITIAL_FUNDING_COUNT   INITIAL_FUNDING_COUNT,
23639             wbs.SIGN * acr.ADDITIONAL_FUNDING_AMOUNT
23640                                                    ADDITIONAL_FUNDING_AMOUNT,
23641             wbs.SIGN * acr.ADDITIONAL_FUNDING_COUNT
23642                                                    ADDITIONAL_FUNDING_COUNT,
23643             wbs.SIGN * acr.CANCELLED_FUNDING_AMOUNT
23644                                                    CANCELLED_FUNDING_AMOUNT,
23645             wbs.SIGN * acr.CANCELLED_FUNDING_COUNT CANCELLED_FUNDING_COUNT,
23646             wbs.SIGN * acr.FUNDING_ADJUSTMENT_AMOUNT
23647                                                    FUNDING_ADJUSTMENT_AMOUNT,
23648             wbs.SIGN * acr.FUNDING_ADJUSTMENT_COUNT
23649                                                    FUNDING_ADJUSTMENT_COUNT,
23650             wbs.SIGN * acr.REVENUE_WRITEOFF        REVENUE_WRITEOFF,
23651             wbs.SIGN * acr.AR_INVOICE_AMOUNT       AR_INVOICE_AMOUNT,
23652             wbs.SIGN * acr.AR_INVOICE_COUNT        AR_INVOICE_COUNT,
23653             wbs.SIGN * acr.AR_CASH_APPLIED_AMOUNT  AR_CASH_APPLIED_AMOUNT,
23654             wbs.SIGN * acr.AR_INVOICE_WRITE_OFF_AMOUNT
23655                                                    AR_INVOICE_WRITE_OFF_AMOUNT,
23656             wbs.SIGN * acr.AR_INVOICE_WRITEOFF_COUNT
23657                                                    AR_INVOICE_WRITEOFF_COUNT,
23658             wbs.SIGN * acr.AR_CREDIT_MEMO_AMOUNT   AR_CREDIT_MEMO_AMOUNT,
23659             wbs.SIGN * acr.AR_CREDIT_MEMO_COUNT    AR_CREDIT_MEMO_COUNT,
23660             wbs.SIGN * acr.UNBILLED_RECEIVABLES    UNBILLED_RECEIVABLES,
23661             wbs.SIGN * acr.UNEARNED_REVENUE        UNEARNED_REVENUE,
23662             wbs.SIGN * acr.AR_UNAPPR_INVOICE_AMOUNT
23663                                                    AR_UNAPPR_INVOICE_AMOUNT,
23664             wbs.SIGN * acr.AR_UNAPPR_INVOICE_COUNT AR_UNAPPR_INVOICE_COUNT,
23665             wbs.SIGN * acr.AR_APPR_INVOICE_AMOUNT  AR_APPR_INVOICE_AMOUNT,
23666             wbs.SIGN * acr.AR_APPR_INVOICE_COUNT   AR_APPR_INVOICE_COUNT,
23667             wbs.SIGN * acr.AR_AMOUNT_DUE           AR_AMOUNT_DUE,
23668             wbs.SIGN * acr.AR_COUNT_DUE            AR_COUNT_DUE,
23669             wbs.SIGN * acr.AR_AMOUNT_OVERDUE       AR_AMOUNT_OVERDUE,
23670             wbs.SIGN * acr.AR_COUNT_OVERDUE        AR_COUNT_OVERDUE,
23671             wbs.SIGN * acr.CUSTOM1                 CUSTOM1,
23672             wbs.SIGN * acr.CUSTOM2                 CUSTOM2,
23673             wbs.SIGN * acr.CUSTOM3                 CUSTOM3,
23674             wbs.SIGN * acr.CUSTOM4                 CUSTOM4,
23675             wbs.SIGN * acr.CUSTOM5                 CUSTOM5,
23676             wbs.SIGN * acr.CUSTOM6                 CUSTOM6,
23677             wbs.SIGN * acr.CUSTOM7                 CUSTOM7,
23678             wbs.SIGN * acr.CUSTOM8                 CUSTOM8,
23679             wbs.SIGN * acr.CUSTOM9                 CUSTOM9,
23680             wbs.SIGN * acr.CUSTOM10                CUSTOM10,
23681             wbs.SIGN * acr.CUSTOM11                CUSTOM11,
23682             wbs.SIGN * acr.CUSTOM12                CUSTOM12,
23683             wbs.SIGN * acr.CUSTOM13                CUSTOM13,
23684             wbs.SIGN * acr.CUSTOM14                CUSTOM14,
23685             wbs.SIGN * acr.CUSTOM15                CUSTOM15
23686           from
23687             PJI_PA_PROJ_EVENTS_LOG log,
23688             PJI_PJP_WBS_HEADER     wbs_hdr,
23689             PJI_XBS_DENORM_DELTA   wbs,
23690             PJI_XBS_DENORM         prg,
23691             PJI_AC_XBS_ACCUM_F     acr,
23692             (
23693               select 1     WBS_SUP_LEVEL,
23694                      1     WBS_SUB_LEVEL,
23695                      'PRJ' INVERT_ID
23696               from   DUAL
23697               union all
23698               select 1     WBS_SUP_LEVEL,
23699                      1     WBS_SUB_LEVEL,
23700                      'WBS' INVERT_ID
23701               from   DUAL
23702             ) top_slice
23703           where
23704             prg.STRUCT_TYPE         =  'PRG'                       and
23705             prg.SUP_LEVEL           =  l_level                     and
23706             prg.SUB_LEVEL           =  l_level                     and
23707             wbs.WORKER_ID           =  p_worker_id                 and
23708             wbs.STRUCT_TYPE         =  'WBS'                       and
23709             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
23710             log.WORKER_ID           =  p_worker_id                 and
23711             log.EVENT_ID            =  wbs.EVENT_ID                and
23712             log.EVENT_TYPE          in ('WBS_CHANGE',
23713                                         'WBS_PUBLISH')             and
23714             wbs_hdr.PROJECT_ID      =  log.ATTRIBUTE1              and
23715             wbs_hdr.PLAN_VERSION_ID =  log.ATTRIBUTE3              and
23716             wbs_hdr.PLAN_VERSION_ID =  -1                          and
23717             wbs_hdr.WBS_VERSION_ID  =  wbs.STRUCT_VERSION_ID       and
23718             wbs_hdr.PROJECT_ID      =  prg.SUP_PROJECT_ID          and
23719             wbs_hdr.WBS_VERSION_ID  =  prg.SUP_ID                  and
23720             acr.WBS_ROLLUP_FLAG     =  'N'                         and
23721             acr.PRG_ROLLUP_FLAG     =  'N'                         and
23722             acr.PROJECT_ID          =  wbs.SUP_PROJECT_ID          and
23723             acr.PROJECT_ELEMENT_ID  =  wbs.SUB_EMT_ID              and
23724             acr.PROJECT_ID          =  wbs_hdr.PROJECT_ID          and
23725             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
23726             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+) and
23727             (wbs.SUP_LEVEL <> wbs.SUB_LEVEL or
23728              (wbs.SUP_LEVEL = 1 and
23729               wbs.SUB_LEVEL = 1))
23730           ) pjp,
23731           (
23732           select /*+ ordered */
23733             prg.SUP_PROJECT_ID,
23734             map.PROJECT_ORG_ID               SUP_PROJECT_ORG_ID,
23735             map.PROJECT_ORGANIZATION_ID      SUP_PROJECT_ORGANIZATION_ID,
23736             prg.SUP_ID,
23737             prg.SUP_EMT_ID,
23738             prg.SUP_LEVEL,
23739             prg.SUB_ID,
23740             prg.SUB_EMT_ID,
23741             prg.SUB_ROLLUP_ID,
23742             prg.RELATIONSHIP_TYPE            RELATIONSHIP_TYPE,
23743             'Y'                              PUSHUP_FLAG
23744           from
23745             PJI_PJP_PROJ_BATCH_MAP map,
23746             PJI_XBS_DENORM         prg,
23747             PJI_XBS_DENORM_DELTA   prg_delta
23748           where
23749             prg.STRUCT_TYPE          = 'PRG'                           and
23750             prg.RELATIONSHIP_TYPE    = 'LF'                            and
23751             prg.SUB_ROLLUP_ID        is not null                       and
23752             prg.SUB_LEVEL            = l_level                         and
23753             map.WORKER_ID            = p_worker_id                     and
23754             map.PROJECT_ID           = prg.SUP_PROJECT_ID              and
23755             p_worker_id              = prg_delta.WORKER_ID         (+) and
23756             prg.STRUCT_TYPE          = prg_delta.STRUCT_TYPE       (+) and
23757             prg.SUP_PROJECT_ID       = prg_delta.SUP_PROJECT_ID    (+) and
23758             prg.SUP_LEVEL            = prg_delta.SUP_LEVEL         (+) and
23759             prg.SUP_ID               = prg_delta.SUP_ID            (+) and
23760             prg.SUB_LEVEL            = prg_delta.SUB_LEVEL         (+) and
23761             prg.SUB_ID               = prg_delta.SUB_ID            (+) and
23762             prg.RELATIONSHIP_TYPE    = prg_delta.RELATIONSHIP_TYPE (+) and
23763             -1                       = prg_delta.SIGN              (+) and
23764             prg_delta.SUP_PROJECT_ID is null
23765           ) prg
23766         where
23767           pjp.WBS_VERSION_ID    = prg.SUB_ID            (+) and
23768           pjp.RELATIONSHIP_TYPE = prg.RELATIONSHIP_TYPE (+) and
23769           pjp.PUSHUP_FLAG       = prg.PUSHUP_FLAG       (+)
23770         group by
23771           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23772                  pjp.INSERT_FLAG, 'Y'),
23773           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23774                  null, prg.SUP_ID),
23775           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23776                  null, prg.SUP_EMT_ID),
23777           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23778                  l_level, prg.SUP_LEVEL),
23779           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23780                  pjp.PROJECT_ID,
23781                  prg.SUP_PROJECT_ID),
23782           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23783                  pjp.PROJECT_ORG_ID,
23784                  prg.SUP_PROJECT_ORG_ID),
23785           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23786                  pjp.PROJECT_ORGANIZATION_ID,
23787                  prg.SUP_PROJECT_ORGANIZATION_ID),
23788           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23789                  pjp.PROJECT_ELEMENT_ID,
23790                  prg.SUB_ROLLUP_ID),
23791           pjp.TIME_ID,
23792           pjp.PERIOD_TYPE_ID,
23793           pjp.CALENDAR_TYPE,
23794           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23795                  pjp.WBS_ROLLUP_FLAG, 'N'),
23796           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23797                  pjp.PRG_ROLLUP_FLAG, 'Y'),
23798           pjp.CURR_RECORD_TYPE_ID,
23799           pjp.CURRENCY_CODE
23800           )                          pjp1_i,
23801           PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
23802           PA_PROJ_WORKPLAN_ATTR      sup_wpa
23803         where
23804           pjp1_i.INSERT_FLAG  = 'Y'                                and
23805           pjp1_i.PROJECT_ID   = sup_fin_ver.PROJECT_ID         (+) and
23806           pjp1_i.SUP_ID       = sup_fin_ver.ELEMENT_VERSION_ID (+) and
23807           'STRUCTURE_WORKING' = sup_fin_ver.STATUS_CODE        (+) and
23808           pjp1_i.SUP_EMT_ID   = sup_wpa.PROJ_ELEMENT_ID        (+) and
23809           'N'                 = sup_wpa.WP_ENABLE_VERSION_FLAG (+) and
23810           (pjp1_i.SUP_ID is null or
23811            (pjp1_i.SUP_ID is not null and
23812             (sup_fin_ver.PROJECT_ID is not null or
23813              sup_wpa.PROJ_ELEMENT_ID is not null)));
23814     elsif (p_worker_id =6) then
23815       -- Query for Partition 6
23816 
23817         insert /*+ parallel(PJI_AC_AGGR_PJP1) */
23818                    into PJI_AC_AGGR_PJP1 partition(P6)
23819         (
23820           WORKER_ID,
23821           RECORD_TYPE,
23822           PRG_LEVEL,
23823           PROJECT_ID,
23824           PROJECT_ORG_ID,
23825           PROJECT_ORGANIZATION_ID,
23826           PROJECT_ELEMENT_ID,
23827           TIME_ID,
23828           PERIOD_TYPE_ID,
23829           CALENDAR_TYPE,
23830           WBS_ROLLUP_FLAG,
23831           PRG_ROLLUP_FLAG,
23832           CURR_RECORD_TYPE_ID,
23833           CURRENCY_CODE,
23834           REVENUE,
23835           INITIAL_FUNDING_AMOUNT,
23836           INITIAL_FUNDING_COUNT,
23837           ADDITIONAL_FUNDING_AMOUNT,
23838           ADDITIONAL_FUNDING_COUNT,
23839           CANCELLED_FUNDING_AMOUNT,
23840           CANCELLED_FUNDING_COUNT,
23841           FUNDING_ADJUSTMENT_AMOUNT,
23842           FUNDING_ADJUSTMENT_COUNT,
23843           REVENUE_WRITEOFF,
23844           AR_INVOICE_AMOUNT,
23845           AR_INVOICE_COUNT,
23846           AR_CASH_APPLIED_AMOUNT,
23847           AR_INVOICE_WRITE_OFF_AMOUNT,
23848           AR_INVOICE_WRITEOFF_COUNT,
23849           AR_CREDIT_MEMO_AMOUNT,
23850           AR_CREDIT_MEMO_COUNT,
23851           UNBILLED_RECEIVABLES,
23852           UNEARNED_REVENUE,
23853           AR_UNAPPR_INVOICE_AMOUNT,
23854           AR_UNAPPR_INVOICE_COUNT,
23855           AR_APPR_INVOICE_AMOUNT,
23856           AR_APPR_INVOICE_COUNT,
23857           AR_AMOUNT_DUE,
23858           AR_COUNT_DUE,
23859           AR_AMOUNT_OVERDUE,
23860           AR_COUNT_OVERDUE,
23861           CUSTOM1,
23862           CUSTOM2,
23863           CUSTOM3,
23864           CUSTOM4,
23865           CUSTOM5,
23866           CUSTOM6,
23867           CUSTOM7,
23868           CUSTOM8,
23869           CUSTOM9,
23870           CUSTOM10,
23871           CUSTOM11,
23872           CUSTOM12,
23873           CUSTOM13,
23874           CUSTOM14,
23875           CUSTOM15
23876         )
23877         select
23878           pjp1_i.WORKER_ID,
23879           pjp1_i.RECORD_TYPE,
23880           pjp1_i.PRG_LEVEL,
23881           pjp1_i.PROJECT_ID,
23882           pjp1_i.PROJECT_ORG_ID,
23883           pjp1_i.PROJECT_ORGANIZATION_ID,
23884           pjp1_i.PROJECT_ELEMENT_ID,
23885           pjp1_i.TIME_ID,
23886           pjp1_i.PERIOD_TYPE_ID,
23887           pjp1_i.CALENDAR_TYPE,
23888           pjp1_i.WBS_ROLLUP_FLAG,
23889           pjp1_i.PRG_ROLLUP_FLAG,
23890           pjp1_i.CURR_RECORD_TYPE_ID,
23891           pjp1_i.CURRENCY_CODE,
23892           pjp1_i.REVENUE,
23893           pjp1_i.INITIAL_FUNDING_AMOUNT,
23894           pjp1_i.INITIAL_FUNDING_COUNT,
23895           pjp1_i.ADDITIONAL_FUNDING_AMOUNT,
23896           pjp1_i.ADDITIONAL_FUNDING_COUNT,
23897           pjp1_i.CANCELLED_FUNDING_AMOUNT,
23898           pjp1_i.CANCELLED_FUNDING_COUNT,
23899           pjp1_i.FUNDING_ADJUSTMENT_AMOUNT,
23900           pjp1_i.FUNDING_ADJUSTMENT_COUNT,
23901           pjp1_i.REVENUE_WRITEOFF,
23902           pjp1_i.AR_INVOICE_AMOUNT,
23903           pjp1_i.AR_INVOICE_COUNT,
23904           pjp1_i.AR_CASH_APPLIED_AMOUNT,
23905           pjp1_i.AR_INVOICE_WRITE_OFF_AMOUNT,
23906           pjp1_i.AR_INVOICE_WRITEOFF_COUNT,
23907           pjp1_i.AR_CREDIT_MEMO_AMOUNT,
23908           pjp1_i.AR_CREDIT_MEMO_COUNT,
23909           pjp1_i.UNBILLED_RECEIVABLES,
23910           pjp1_i.UNEARNED_REVENUE,
23911           pjp1_i.AR_UNAPPR_INVOICE_AMOUNT,
23912           pjp1_i.AR_UNAPPR_INVOICE_COUNT,
23913           pjp1_i.AR_APPR_INVOICE_AMOUNT,
23914           pjp1_i.AR_APPR_INVOICE_COUNT,
23915           pjp1_i.AR_AMOUNT_DUE,
23916           pjp1_i.AR_COUNT_DUE,
23917           pjp1_i.AR_AMOUNT_OVERDUE,
23918           pjp1_i.AR_COUNT_OVERDUE,
23919           pjp1_i.CUSTOM1,
23920           pjp1_i.CUSTOM2,
23921           pjp1_i.CUSTOM3,
23922           pjp1_i.CUSTOM4,
23923           pjp1_i.CUSTOM5,
23924           pjp1_i.CUSTOM6,
23925           pjp1_i.CUSTOM7,
23926           pjp1_i.CUSTOM8,
23927           pjp1_i.CUSTOM9,
23928           pjp1_i.CUSTOM10,
23929           pjp1_i.CUSTOM11,
23930           pjp1_i.CUSTOM12,
23931           pjp1_i.CUSTOM13,
23932           pjp1_i.CUSTOM14,
23933           pjp1_i.CUSTOM15
23934         from
23935           (
23936         select
23937           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23938                  pjp.INSERT_FLAG, 'Y')             INSERT_FLAG,
23939           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23940                  null, prg.SUP_ID)                 SUP_ID,
23941           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23942                  null, prg.SUP_EMT_ID)             SUP_EMT_ID,
23943           p_worker_id                              WORKER_ID,
23944           'W'                                      RECORD_TYPE,
23945           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23946                  l_level, prg.SUP_LEVEL)           PRG_LEVEL,
23947           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23948                  pjp.PROJECT_ID,
23949                  prg.SUP_PROJECT_ID)               PROJECT_ID,
23950           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23951                  pjp.PROJECT_ORG_ID,
23952                  prg.SUP_PROJECT_ORG_ID)           PROJECT_ORG_ID,
23953           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23954                  pjp.PROJECT_ORGANIZATION_ID,
23955                  prg.SUP_PROJECT_ORGANIZATION_ID)  PROJECT_ORGANIZATION_ID,
23956           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23957                  pjp.PROJECT_ELEMENT_ID,
23958                  prg.SUB_ROLLUP_ID)                PROJECT_ELEMENT_ID,
23959           pjp.TIME_ID,
23960           pjp.PERIOD_TYPE_ID,
23961           pjp.CALENDAR_TYPE,
23962           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23963                  pjp.WBS_ROLLUP_FLAG, 'N')         WBS_ROLLUP_FLAG,
23964           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
23965                  pjp.PRG_ROLLUP_FLAG, 'Y')         PRG_ROLLUP_FLAG,
23966           pjp.CURR_RECORD_TYPE_ID,
23967           pjp.CURRENCY_CODE,
23968           sum(pjp.REVENUE)                         REVENUE,
23969           sum(pjp.INITIAL_FUNDING_AMOUNT)          INITIAL_FUNDING_AMOUNT,
23970           sum(pjp.INITIAL_FUNDING_COUNT)           INITIAL_FUNDING_COUNT,
23971           sum(pjp.ADDITIONAL_FUNDING_AMOUNT)       ADDITIONAL_FUNDING_AMOUNT,
23972           sum(pjp.ADDITIONAL_FUNDING_COUNT)        ADDITIONAL_FUNDING_COUNT,
23973           sum(pjp.CANCELLED_FUNDING_AMOUNT)        CANCELLED_FUNDING_AMOUNT,
23974           sum(pjp.CANCELLED_FUNDING_COUNT)         CANCELLED_FUNDING_COUNT,
23975           sum(pjp.FUNDING_ADJUSTMENT_AMOUNT)       FUNDING_ADJUSTMENT_AMOUNT,
23976           sum(pjp.FUNDING_ADJUSTMENT_COUNT)        FUNDING_ADJUSTMENT_COUNT,
23977           sum(pjp.REVENUE_WRITEOFF)                REVENUE_WRITEOFF,
23978           sum(pjp.AR_INVOICE_AMOUNT)               AR_INVOICE_AMOUNT,
23979           sum(pjp.AR_INVOICE_COUNT)                AR_INVOICE_COUNT,
23980           sum(pjp.AR_CASH_APPLIED_AMOUNT)          AR_CASH_APPLIED_AMOUNT,
23981           sum(pjp.AR_INVOICE_WRITE_OFF_AMOUNT)     AR_INVOICE_WRITE_OFF_AMOUNT,
23982           sum(pjp.AR_INVOICE_WRITEOFF_COUNT)       AR_INVOICE_WRITEOFF_COUNT,
23983           sum(pjp.AR_CREDIT_MEMO_AMOUNT)           AR_CREDIT_MEMO_AMOUNT,
23984           sum(pjp.AR_CREDIT_MEMO_COUNT)            AR_CREDIT_MEMO_COUNT,
23985           sum(pjp.UNBILLED_RECEIVABLES)            UNBILLED_RECEIVABLES,
23986           sum(pjp.UNEARNED_REVENUE)                UNEARNED_REVENUE,
23987           sum(pjp.AR_UNAPPR_INVOICE_AMOUNT)        AR_UNAPPR_INVOICE_AMOUNT,
23988           sum(pjp.AR_UNAPPR_INVOICE_COUNT)         AR_UNAPPR_INVOICE_COUNT,
23989           sum(pjp.AR_APPR_INVOICE_AMOUNT)          AR_APPR_INVOICE_AMOUNT,
23990           sum(pjp.AR_APPR_INVOICE_COUNT)           AR_APPR_INVOICE_COUNT,
23991           sum(pjp.AR_AMOUNT_DUE)                   AR_AMOUNT_DUE,
23992           sum(pjp.AR_COUNT_DUE)                    AR_COUNT_DUE,
23993           sum(pjp.AR_AMOUNT_OVERDUE)               AR_AMOUNT_OVERDUE,
23994           sum(pjp.AR_COUNT_OVERDUE)                AR_COUNT_OVERDUE,
23995           sum(pjp.CUSTOM1)                         CUSTOM1,
23996           sum(pjp.CUSTOM2)                         CUSTOM2,
23997           sum(pjp.CUSTOM3)                         CUSTOM3,
23998           sum(pjp.CUSTOM4)                         CUSTOM4,
23999           sum(pjp.CUSTOM5)                         CUSTOM5,
24000           sum(pjp.CUSTOM6)                         CUSTOM6,
24001           sum(pjp.CUSTOM7)                         CUSTOM7,
24002           sum(pjp.CUSTOM8)                         CUSTOM8,
24003           sum(pjp.CUSTOM9)                         CUSTOM9,
24004           sum(pjp.CUSTOM10)                        CUSTOM10,
24005           sum(pjp.CUSTOM11)                        CUSTOM11,
24006           sum(pjp.CUSTOM12)                        CUSTOM12,
24007           sum(pjp.CUSTOM13)                        CUSTOM13,
24008           sum(pjp.CUSTOM14)                        CUSTOM14,
24009           sum(pjp.CUSTOM15)                        CUSTOM15
24010         from
24011           (
24012           select /*+ ordered index(wbs PA_XBS_DENORM_N2) parallel(pjp1) */    -- changed for bug 5927368
24013                  -- get incremental task level amounts from source and
24014                  -- program rollup amounts from interim
24015             wbs_hdr.WBS_VERSION_ID,
24016             'LF'                                      RELATIONSHIP_TYPE,
24017             decode(top_slice.INVERT_ID,
24018                    'PRJ', 'Y',
24019                           decode(wbs.SUB_LEVEL,
24020                                  1, 'Y', 'N'))        PUSHUP_FLAG,
24021             'Y'                                       INSERT_FLAG,
24022             pjp1.PROJECT_ID,
24023             pjp1.PROJECT_ORG_ID,
24024             pjp1.PROJECT_ORGANIZATION_ID,
24025             decode(top_slice.INVERT_ID,
24026                    'PRJ', prg.SUP_EMT_ID,
24027                           decode(wbs.SUB_LEVEL,
24028                                  1, prg.SUP_EMT_ID,
24029                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
24030             pjp1.TIME_ID,
24031             pjp1.PERIOD_TYPE_ID,
24032             pjp1.CALENDAR_TYPE,
24033             'Y'                                       WBS_ROLLUP_FLAG,
24034             pjp1.PRG_ROLLUP_FLAG,
24035             pjp1.CURR_RECORD_TYPE_ID,
24036             pjp1.CURRENCY_CODE,
24037             pjp1.REVENUE,
24038             pjp1.INITIAL_FUNDING_AMOUNT,
24039             pjp1.INITIAL_FUNDING_COUNT,
24040             pjp1.ADDITIONAL_FUNDING_AMOUNT,
24041             pjp1.ADDITIONAL_FUNDING_COUNT,
24042             pjp1.CANCELLED_FUNDING_AMOUNT,
24043             pjp1.CANCELLED_FUNDING_COUNT,
24044             pjp1.FUNDING_ADJUSTMENT_AMOUNT,
24045             pjp1.FUNDING_ADJUSTMENT_COUNT,
24046             pjp1.REVENUE_WRITEOFF,
24047             pjp1.AR_INVOICE_AMOUNT,
24048             pjp1.AR_INVOICE_COUNT,
24049             pjp1.AR_CASH_APPLIED_AMOUNT,
24050             pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
24051             pjp1.AR_INVOICE_WRITEOFF_COUNT,
24052             pjp1.AR_CREDIT_MEMO_AMOUNT,
24053             pjp1.AR_CREDIT_MEMO_COUNT,
24054             pjp1.UNBILLED_RECEIVABLES,
24055             pjp1.UNEARNED_REVENUE,
24056             pjp1.AR_UNAPPR_INVOICE_AMOUNT,
24057             pjp1.AR_UNAPPR_INVOICE_COUNT,
24058             pjp1.AR_APPR_INVOICE_AMOUNT,
24059             pjp1.AR_APPR_INVOICE_COUNT,
24060             pjp1.AR_AMOUNT_DUE,
24061             pjp1.AR_COUNT_DUE,
24062             pjp1.AR_AMOUNT_OVERDUE,
24063             pjp1.AR_COUNT_OVERDUE,
24064             pjp1.CUSTOM1,
24065             pjp1.CUSTOM2,
24066             pjp1.CUSTOM3,
24067             pjp1.CUSTOM4,
24068             pjp1.CUSTOM5,
24069             pjp1.CUSTOM6,
24070             pjp1.CUSTOM7,
24071             pjp1.CUSTOM8,
24072             pjp1.CUSTOM9,
24073             pjp1.CUSTOM10,
24074             pjp1.CUSTOM11,
24075             pjp1.CUSTOM12,
24076             pjp1.CUSTOM13,
24077             pjp1.CUSTOM14,
24078             pjp1.CUSTOM15
24079           from
24080             PJI_AC_AGGR_PJP1   pjp1,
24081             PJI_PJP_WBS_HEADER wbs_hdr,
24082             PA_XBS_DENORM      wbs,
24083             PJI_XBS_DENORM     prg,
24084             (
24085               select 1     WBS_SUP_LEVEL,
24086                      1     WBS_SUB_LEVEL,
24087                      'PRJ' INVERT_ID
24088               from   DUAL
24089               union all
24090               select 1     WBS_SUP_LEVEL,
24091                      1     WBS_SUB_LEVEL,
24092                      'WBS' INVERT_ID
24093               from   DUAL
24094             ) top_slice
24095           where
24096             prg.STRUCT_TYPE         =  'PRG'                       and
24097             prg.SUP_LEVEL           =  l_level                     and
24098             prg.SUB_LEVEL           =  l_level                     and
24099             wbs.STRUCT_TYPE         =  'WBS'                       and
24100             ((wbs.SUP_LEVEL = 1 and
24101               wbs.SUB_LEVEL = 1) or
24102              (wbs.SUP_LEVEL <> wbs.SUB_LEVEL))                     and
24103             wbs.STRUCT_VERSION_ID   =  prg.SUP_ID                  and
24104             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
24105             pjp1.WORKER_ID          =  p_worker_id                 and
24106             pjp1.PRG_LEVEL          in (0, l_level)                and
24107             pjp1.WBS_ROLLUP_FLAG    =  'N'                         and
24108             pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                  and
24109             wbs_hdr.PLAN_VERSION_ID =  -1                          and
24110             pjp1.PROJECT_ID         =  wbs_hdr.PROJECT_ID          and
24111             wbs.STRUCT_VERSION_ID   =  wbs_hdr.WBS_VERSION_ID      and
24112             pjp1.PROJECT_ELEMENT_ID =  wbs.SUB_EMT_ID              and
24113             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
24114             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+)
24115           union all
24116           select /*+ ordered parallel(pjp1) */           -- changed for bug 5927368
24117                  -- get incremental project level amounts from source
24118             wbs_hdr.WBS_VERSION_ID,
24119             'LF'                                   RELATIONSHIP_TYPE,
24120             'Y'                                    PUSHUP_FLAG,
24121             'N'                                    INSERT_FLAG,
24122             pjp1.PROJECT_ID,
24123             pjp1.PROJECT_ORG_ID,
24124             pjp1.PROJECT_ORGANIZATION_ID,
24125             pjp1.PROJECT_ELEMENT_ID,
24126             pjp1.TIME_ID,
24127             pjp1.PERIOD_TYPE_ID,
24128             pjp1.CALENDAR_TYPE,
24129             'Y'                                    WBS_ROLLUP_FLAG,
24130             pjp1.PRG_ROLLUP_FLAG,
24131             pjp1.CURR_RECORD_TYPE_ID,
24132             pjp1.CURRENCY_CODE,
24133             pjp1.REVENUE,
24134             pjp1.INITIAL_FUNDING_AMOUNT,
24135             pjp1.INITIAL_FUNDING_COUNT,
24136             pjp1.ADDITIONAL_FUNDING_AMOUNT,
24137             pjp1.ADDITIONAL_FUNDING_COUNT,
24138             pjp1.CANCELLED_FUNDING_AMOUNT,
24139             pjp1.CANCELLED_FUNDING_COUNT,
24140             pjp1.FUNDING_ADJUSTMENT_AMOUNT,
24141             pjp1.FUNDING_ADJUSTMENT_COUNT,
24142             pjp1.REVENUE_WRITEOFF,
24143             pjp1.AR_INVOICE_AMOUNT,
24144             pjp1.AR_INVOICE_COUNT,
24145             pjp1.AR_CASH_APPLIED_AMOUNT,
24146             pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
24147             pjp1.AR_INVOICE_WRITEOFF_COUNT,
24148             pjp1.AR_CREDIT_MEMO_AMOUNT,
24149             pjp1.AR_CREDIT_MEMO_COUNT,
24150             pjp1.UNBILLED_RECEIVABLES,
24151             pjp1.UNEARNED_REVENUE,
24152             pjp1.AR_UNAPPR_INVOICE_AMOUNT,
24153             pjp1.AR_UNAPPR_INVOICE_COUNT,
24154             pjp1.AR_APPR_INVOICE_AMOUNT,
24155             pjp1.AR_APPR_INVOICE_COUNT,
24156             pjp1.AR_AMOUNT_DUE,
24157             pjp1.AR_COUNT_DUE,
24158             pjp1.AR_AMOUNT_OVERDUE,
24159             pjp1.AR_COUNT_OVERDUE,
24160             pjp1.CUSTOM1,
24161             pjp1.CUSTOM2,
24162             pjp1.CUSTOM3,
24163             pjp1.CUSTOM4,
24164             pjp1.CUSTOM5,
24165             pjp1.CUSTOM6,
24166             pjp1.CUSTOM7,
24167             pjp1.CUSTOM8,
24168             pjp1.CUSTOM9,
24169             pjp1.CUSTOM10,
24170             pjp1.CUSTOM11,
24171             pjp1.CUSTOM12,
24172             pjp1.CUSTOM13,
24173             pjp1.CUSTOM14,
24174             pjp1.CUSTOM15
24175           from
24176             PJI_AC_AGGR_PJP1   pjp1,
24177             PJI_PJP_WBS_HEADER wbs_hdr,
24178             PJI_XBS_DENORM     prg
24179           where
24180             prg.STRUCT_TYPE         = 'PRG'                              and
24181             prg.SUP_LEVEL           = l_level                            and
24182             prg.SUB_LEVEL           = l_level                            and
24183             pjp1.WORKER_ID          = p_worker_id                        and
24184             pjp1.PROJECT_ID         = prg.SUP_PROJECT_ID                 and
24185             pjp1.PROJECT_ELEMENT_ID = prg.SUP_EMT_ID                     and
24186             pjp1.PRG_LEVEL          = 0                                  and
24187             pjp1.WBS_ROLLUP_FLAG    = 'N'                                and
24188             pjp1.PRG_ROLLUP_FLAG    = 'N'                                and
24189             wbs_hdr.PROJECT_ID      = pjp1.PROJECT_ID                    and
24190             wbs_hdr.PLAN_VERSION_ID = -1                                 and
24191             wbs_hdr.WBS_VERSION_ID  = prg.SUP_ID
24192           union all
24193           select /*+ ordered
24194                      index(fpr PJI_AC_XBR_ACCUM_F_N1) */
24195                  -- get delta task level amounts from Reporting Lines
24196             wbs_hdr.WBS_VERSION_ID,
24197             'LF'                                   RELATIONSHIP_TYPE,
24198             decode(log.EVENT_TYPE,
24199                    'WBS_CHANGE', 'Y',
24200                    'WBS_PUBLISH', 'N')             PUSHUP_FLAG,
24201             'Y'                                    INSERT_FLAG,
24202             acr.PROJECT_ID,
24203             acr.PROJECT_ORG_ID,
24204             acr.PROJECT_ORGANIZATION_ID,
24205             decode(top_slice.INVERT_ID,
24206                    'PRJ', prg.SUP_EMT_ID,
24207                           decode(wbs.SUB_LEVEL,
24208                                  1, prg.SUP_EMT_ID,
24209                                     wbs.SUP_EMT_ID))
24210                                                    PROJECT_ELEMENT_ID,
24211             acr.TIME_ID,
24212             acr.PERIOD_TYPE_ID,
24213             acr.CALENDAR_TYPE,
24214             'Y'                                    WBS_ROLLUP_FLAG,
24215             acr.PRG_ROLLUP_FLAG,
24216             acr.CURR_RECORD_TYPE_ID,
24217             acr.CURRENCY_CODE,
24218             wbs.SIGN * acr.REVENUE                 REVENUE,
24219             wbs.SIGN * acr.INITIAL_FUNDING_AMOUNT  INITIAL_FUNDING_AMOUNT,
24220             wbs.SIGN * acr.INITIAL_FUNDING_COUNT   INITIAL_FUNDING_COUNT,
24221             wbs.SIGN * acr.ADDITIONAL_FUNDING_AMOUNT
24222                                                    ADDITIONAL_FUNDING_AMOUNT,
24223             wbs.SIGN * acr.ADDITIONAL_FUNDING_COUNT
24224                                                    ADDITIONAL_FUNDING_COUNT,
24225             wbs.SIGN * acr.CANCELLED_FUNDING_AMOUNT
24226                                                    CANCELLED_FUNDING_AMOUNT,
24227             wbs.SIGN * acr.CANCELLED_FUNDING_COUNT CANCELLED_FUNDING_COUNT,
24228             wbs.SIGN * acr.FUNDING_ADJUSTMENT_AMOUNT
24229                                                    FUNDING_ADJUSTMENT_AMOUNT,
24230             wbs.SIGN * acr.FUNDING_ADJUSTMENT_COUNT
24231                                                    FUNDING_ADJUSTMENT_COUNT,
24232             wbs.SIGN * acr.REVENUE_WRITEOFF        REVENUE_WRITEOFF,
24233             wbs.SIGN * acr.AR_INVOICE_AMOUNT       AR_INVOICE_AMOUNT,
24234             wbs.SIGN * acr.AR_INVOICE_COUNT        AR_INVOICE_COUNT,
24235             wbs.SIGN * acr.AR_CASH_APPLIED_AMOUNT  AR_CASH_APPLIED_AMOUNT,
24236             wbs.SIGN * acr.AR_INVOICE_WRITE_OFF_AMOUNT
24237                                                    AR_INVOICE_WRITE_OFF_AMOUNT,
24238             wbs.SIGN * acr.AR_INVOICE_WRITEOFF_COUNT
24239                                                    AR_INVOICE_WRITEOFF_COUNT,
24240             wbs.SIGN * acr.AR_CREDIT_MEMO_AMOUNT   AR_CREDIT_MEMO_AMOUNT,
24241             wbs.SIGN * acr.AR_CREDIT_MEMO_COUNT    AR_CREDIT_MEMO_COUNT,
24242             wbs.SIGN * acr.UNBILLED_RECEIVABLES    UNBILLED_RECEIVABLES,
24243             wbs.SIGN * acr.UNEARNED_REVENUE        UNEARNED_REVENUE,
24244             wbs.SIGN * acr.AR_UNAPPR_INVOICE_AMOUNT
24245                                                    AR_UNAPPR_INVOICE_AMOUNT,
24246             wbs.SIGN * acr.AR_UNAPPR_INVOICE_COUNT AR_UNAPPR_INVOICE_COUNT,
24247             wbs.SIGN * acr.AR_APPR_INVOICE_AMOUNT  AR_APPR_INVOICE_AMOUNT,
24248             wbs.SIGN * acr.AR_APPR_INVOICE_COUNT   AR_APPR_INVOICE_COUNT,
24249             wbs.SIGN * acr.AR_AMOUNT_DUE           AR_AMOUNT_DUE,
24250             wbs.SIGN * acr.AR_COUNT_DUE            AR_COUNT_DUE,
24251             wbs.SIGN * acr.AR_AMOUNT_OVERDUE       AR_AMOUNT_OVERDUE,
24252             wbs.SIGN * acr.AR_COUNT_OVERDUE        AR_COUNT_OVERDUE,
24253             wbs.SIGN * acr.CUSTOM1                 CUSTOM1,
24254             wbs.SIGN * acr.CUSTOM2                 CUSTOM2,
24255             wbs.SIGN * acr.CUSTOM3                 CUSTOM3,
24256             wbs.SIGN * acr.CUSTOM4                 CUSTOM4,
24257             wbs.SIGN * acr.CUSTOM5                 CUSTOM5,
24258             wbs.SIGN * acr.CUSTOM6                 CUSTOM6,
24259             wbs.SIGN * acr.CUSTOM7                 CUSTOM7,
24260             wbs.SIGN * acr.CUSTOM8                 CUSTOM8,
24261             wbs.SIGN * acr.CUSTOM9                 CUSTOM9,
24262             wbs.SIGN * acr.CUSTOM10                CUSTOM10,
24263             wbs.SIGN * acr.CUSTOM11                CUSTOM11,
24264             wbs.SIGN * acr.CUSTOM12                CUSTOM12,
24265             wbs.SIGN * acr.CUSTOM13                CUSTOM13,
24266             wbs.SIGN * acr.CUSTOM14                CUSTOM14,
24267             wbs.SIGN * acr.CUSTOM15                CUSTOM15
24268           from
24269             PJI_PA_PROJ_EVENTS_LOG log,
24270             PJI_PJP_WBS_HEADER     wbs_hdr,
24271             PJI_XBS_DENORM_DELTA   wbs,
24272             PJI_XBS_DENORM         prg,
24273             PJI_AC_XBS_ACCUM_F     acr,
24274             (
24275               select 1     WBS_SUP_LEVEL,
24276                      1     WBS_SUB_LEVEL,
24277                      'PRJ' INVERT_ID
24278               from   DUAL
24279               union all
24280               select 1     WBS_SUP_LEVEL,
24281                      1     WBS_SUB_LEVEL,
24282                      'WBS' INVERT_ID
24283               from   DUAL
24284             ) top_slice
24285           where
24286             prg.STRUCT_TYPE         =  'PRG'                       and
24287             prg.SUP_LEVEL           =  l_level                     and
24288             prg.SUB_LEVEL           =  l_level                     and
24289             wbs.WORKER_ID           =  p_worker_id                 and
24290             wbs.STRUCT_TYPE         =  'WBS'                       and
24291             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
24292             log.WORKER_ID           =  p_worker_id                 and
24293             log.EVENT_ID            =  wbs.EVENT_ID                and
24294             log.EVENT_TYPE          in ('WBS_CHANGE',
24295                                         'WBS_PUBLISH')             and
24296             wbs_hdr.PROJECT_ID      =  log.ATTRIBUTE1              and
24297             wbs_hdr.PLAN_VERSION_ID =  log.ATTRIBUTE3              and
24298             wbs_hdr.PLAN_VERSION_ID =  -1                          and
24299             wbs_hdr.WBS_VERSION_ID  =  wbs.STRUCT_VERSION_ID       and
24300             wbs_hdr.PROJECT_ID      =  prg.SUP_PROJECT_ID          and
24301             wbs_hdr.WBS_VERSION_ID  =  prg.SUP_ID                  and
24302             acr.WBS_ROLLUP_FLAG     =  'N'                         and
24303             acr.PRG_ROLLUP_FLAG     =  'N'                         and
24304             acr.PROJECT_ID          =  wbs.SUP_PROJECT_ID          and
24305             acr.PROJECT_ELEMENT_ID  =  wbs.SUB_EMT_ID              and
24306             acr.PROJECT_ID          =  wbs_hdr.PROJECT_ID          and
24307             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
24308             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+) and
24309             (wbs.SUP_LEVEL <> wbs.SUB_LEVEL or
24310              (wbs.SUP_LEVEL = 1 and
24311               wbs.SUB_LEVEL = 1))
24312           ) pjp,
24313           (
24314           select /*+ ordered */
24315             prg.SUP_PROJECT_ID,
24316             map.PROJECT_ORG_ID               SUP_PROJECT_ORG_ID,
24317             map.PROJECT_ORGANIZATION_ID      SUP_PROJECT_ORGANIZATION_ID,
24318             prg.SUP_ID,
24319             prg.SUP_EMT_ID,
24320             prg.SUP_LEVEL,
24321             prg.SUB_ID,
24322             prg.SUB_EMT_ID,
24323             prg.SUB_ROLLUP_ID,
24324             prg.RELATIONSHIP_TYPE            RELATIONSHIP_TYPE,
24325             'Y'                              PUSHUP_FLAG
24326           from
24327             PJI_PJP_PROJ_BATCH_MAP map,
24328             PJI_XBS_DENORM         prg,
24329             PJI_XBS_DENORM_DELTA   prg_delta
24330           where
24331             prg.STRUCT_TYPE          = 'PRG'                           and
24332             prg.RELATIONSHIP_TYPE    = 'LF'                            and
24333             prg.SUB_ROLLUP_ID        is not null                       and
24334             prg.SUB_LEVEL            = l_level                         and
24335             map.WORKER_ID            = p_worker_id                     and
24336             map.PROJECT_ID           = prg.SUP_PROJECT_ID              and
24337             p_worker_id              = prg_delta.WORKER_ID         (+) and
24338             prg.STRUCT_TYPE          = prg_delta.STRUCT_TYPE       (+) and
24339             prg.SUP_PROJECT_ID       = prg_delta.SUP_PROJECT_ID    (+) and
24340             prg.SUP_LEVEL            = prg_delta.SUP_LEVEL         (+) and
24341             prg.SUP_ID               = prg_delta.SUP_ID            (+) and
24342             prg.SUB_LEVEL            = prg_delta.SUB_LEVEL         (+) and
24343             prg.SUB_ID               = prg_delta.SUB_ID            (+) and
24344             prg.RELATIONSHIP_TYPE    = prg_delta.RELATIONSHIP_TYPE (+) and
24345             -1                       = prg_delta.SIGN              (+) and
24346             prg_delta.SUP_PROJECT_ID is null
24347           ) prg
24348         where
24349           pjp.WBS_VERSION_ID    = prg.SUB_ID            (+) and
24350           pjp.RELATIONSHIP_TYPE = prg.RELATIONSHIP_TYPE (+) and
24351           pjp.PUSHUP_FLAG       = prg.PUSHUP_FLAG       (+)
24352         group by
24353           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24354                  pjp.INSERT_FLAG, 'Y'),
24355           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24356                  null, prg.SUP_ID),
24357           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24358                  null, prg.SUP_EMT_ID),
24359           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24360                  l_level, prg.SUP_LEVEL),
24361           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24362                  pjp.PROJECT_ID,
24363                  prg.SUP_PROJECT_ID),
24364           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24365                  pjp.PROJECT_ORG_ID,
24366                  prg.SUP_PROJECT_ORG_ID),
24367           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24368                  pjp.PROJECT_ORGANIZATION_ID,
24369                  prg.SUP_PROJECT_ORGANIZATION_ID),
24370           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24371                  pjp.PROJECT_ELEMENT_ID,
24372                  prg.SUB_ROLLUP_ID),
24373           pjp.TIME_ID,
24374           pjp.PERIOD_TYPE_ID,
24375           pjp.CALENDAR_TYPE,
24376           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24377                  pjp.WBS_ROLLUP_FLAG, 'N'),
24378           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24379                  pjp.PRG_ROLLUP_FLAG, 'Y'),
24380           pjp.CURR_RECORD_TYPE_ID,
24381           pjp.CURRENCY_CODE
24382           )                          pjp1_i,
24383           PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
24384           PA_PROJ_WORKPLAN_ATTR      sup_wpa
24385         where
24386           pjp1_i.INSERT_FLAG  = 'Y'                                and
24387           pjp1_i.PROJECT_ID   = sup_fin_ver.PROJECT_ID         (+) and
24388           pjp1_i.SUP_ID       = sup_fin_ver.ELEMENT_VERSION_ID (+) and
24389           'STRUCTURE_WORKING' = sup_fin_ver.STATUS_CODE        (+) and
24390           pjp1_i.SUP_EMT_ID   = sup_wpa.PROJ_ELEMENT_ID        (+) and
24391           'N'                 = sup_wpa.WP_ENABLE_VERSION_FLAG (+) and
24392           (pjp1_i.SUP_ID is null or
24393            (pjp1_i.SUP_ID is not null and
24394             (sup_fin_ver.PROJECT_ID is not null or
24395              sup_wpa.PROJ_ELEMENT_ID is not null)));
24396     elsif (p_worker_id =7) then
24397       -- Query for Partition 7
24398 
24399         insert /*+ parallel(PJI_AC_AGGR_PJP1) */
24400                    into PJI_AC_AGGR_PJP1 partition(P7)
24401         (
24402           WORKER_ID,
24403           RECORD_TYPE,
24404           PRG_LEVEL,
24405           PROJECT_ID,
24406           PROJECT_ORG_ID,
24407           PROJECT_ORGANIZATION_ID,
24408           PROJECT_ELEMENT_ID,
24409           TIME_ID,
24410           PERIOD_TYPE_ID,
24411           CALENDAR_TYPE,
24412           WBS_ROLLUP_FLAG,
24413           PRG_ROLLUP_FLAG,
24414           CURR_RECORD_TYPE_ID,
24415           CURRENCY_CODE,
24416           REVENUE,
24417           INITIAL_FUNDING_AMOUNT,
24418           INITIAL_FUNDING_COUNT,
24419           ADDITIONAL_FUNDING_AMOUNT,
24420           ADDITIONAL_FUNDING_COUNT,
24421           CANCELLED_FUNDING_AMOUNT,
24422           CANCELLED_FUNDING_COUNT,
24423           FUNDING_ADJUSTMENT_AMOUNT,
24424           FUNDING_ADJUSTMENT_COUNT,
24425           REVENUE_WRITEOFF,
24426           AR_INVOICE_AMOUNT,
24427           AR_INVOICE_COUNT,
24428           AR_CASH_APPLIED_AMOUNT,
24429           AR_INVOICE_WRITE_OFF_AMOUNT,
24430           AR_INVOICE_WRITEOFF_COUNT,
24431           AR_CREDIT_MEMO_AMOUNT,
24432           AR_CREDIT_MEMO_COUNT,
24433           UNBILLED_RECEIVABLES,
24434           UNEARNED_REVENUE,
24435           AR_UNAPPR_INVOICE_AMOUNT,
24436           AR_UNAPPR_INVOICE_COUNT,
24437           AR_APPR_INVOICE_AMOUNT,
24438           AR_APPR_INVOICE_COUNT,
24439           AR_AMOUNT_DUE,
24440           AR_COUNT_DUE,
24441           AR_AMOUNT_OVERDUE,
24442           AR_COUNT_OVERDUE,
24443           CUSTOM1,
24444           CUSTOM2,
24445           CUSTOM3,
24446           CUSTOM4,
24447           CUSTOM5,
24448           CUSTOM6,
24449           CUSTOM7,
24450           CUSTOM8,
24451           CUSTOM9,
24452           CUSTOM10,
24453           CUSTOM11,
24454           CUSTOM12,
24455           CUSTOM13,
24456           CUSTOM14,
24457           CUSTOM15
24458         )
24459         select
24460           pjp1_i.WORKER_ID,
24461           pjp1_i.RECORD_TYPE,
24462           pjp1_i.PRG_LEVEL,
24463           pjp1_i.PROJECT_ID,
24464           pjp1_i.PROJECT_ORG_ID,
24465           pjp1_i.PROJECT_ORGANIZATION_ID,
24466           pjp1_i.PROJECT_ELEMENT_ID,
24467           pjp1_i.TIME_ID,
24468           pjp1_i.PERIOD_TYPE_ID,
24469           pjp1_i.CALENDAR_TYPE,
24470           pjp1_i.WBS_ROLLUP_FLAG,
24471           pjp1_i.PRG_ROLLUP_FLAG,
24472           pjp1_i.CURR_RECORD_TYPE_ID,
24473           pjp1_i.CURRENCY_CODE,
24474           pjp1_i.REVENUE,
24475           pjp1_i.INITIAL_FUNDING_AMOUNT,
24476           pjp1_i.INITIAL_FUNDING_COUNT,
24477           pjp1_i.ADDITIONAL_FUNDING_AMOUNT,
24478           pjp1_i.ADDITIONAL_FUNDING_COUNT,
24479           pjp1_i.CANCELLED_FUNDING_AMOUNT,
24480           pjp1_i.CANCELLED_FUNDING_COUNT,
24481           pjp1_i.FUNDING_ADJUSTMENT_AMOUNT,
24482           pjp1_i.FUNDING_ADJUSTMENT_COUNT,
24483           pjp1_i.REVENUE_WRITEOFF,
24484           pjp1_i.AR_INVOICE_AMOUNT,
24485           pjp1_i.AR_INVOICE_COUNT,
24486           pjp1_i.AR_CASH_APPLIED_AMOUNT,
24487           pjp1_i.AR_INVOICE_WRITE_OFF_AMOUNT,
24488           pjp1_i.AR_INVOICE_WRITEOFF_COUNT,
24489           pjp1_i.AR_CREDIT_MEMO_AMOUNT,
24490           pjp1_i.AR_CREDIT_MEMO_COUNT,
24491           pjp1_i.UNBILLED_RECEIVABLES,
24492           pjp1_i.UNEARNED_REVENUE,
24493           pjp1_i.AR_UNAPPR_INVOICE_AMOUNT,
24494           pjp1_i.AR_UNAPPR_INVOICE_COUNT,
24495           pjp1_i.AR_APPR_INVOICE_AMOUNT,
24496           pjp1_i.AR_APPR_INVOICE_COUNT,
24497           pjp1_i.AR_AMOUNT_DUE,
24498           pjp1_i.AR_COUNT_DUE,
24499           pjp1_i.AR_AMOUNT_OVERDUE,
24500           pjp1_i.AR_COUNT_OVERDUE,
24501           pjp1_i.CUSTOM1,
24502           pjp1_i.CUSTOM2,
24503           pjp1_i.CUSTOM3,
24504           pjp1_i.CUSTOM4,
24505           pjp1_i.CUSTOM5,
24506           pjp1_i.CUSTOM6,
24507           pjp1_i.CUSTOM7,
24508           pjp1_i.CUSTOM8,
24509           pjp1_i.CUSTOM9,
24510           pjp1_i.CUSTOM10,
24511           pjp1_i.CUSTOM11,
24512           pjp1_i.CUSTOM12,
24513           pjp1_i.CUSTOM13,
24514           pjp1_i.CUSTOM14,
24515           pjp1_i.CUSTOM15
24516         from
24517           (
24518         select
24519           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24520                  pjp.INSERT_FLAG, 'Y')             INSERT_FLAG,
24521           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24522                  null, prg.SUP_ID)                 SUP_ID,
24523           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24524                  null, prg.SUP_EMT_ID)             SUP_EMT_ID,
24525           p_worker_id                              WORKER_ID,
24526           'W'                                      RECORD_TYPE,
24527           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24528                  l_level, prg.SUP_LEVEL)           PRG_LEVEL,
24529           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24530                  pjp.PROJECT_ID,
24531                  prg.SUP_PROJECT_ID)               PROJECT_ID,
24532           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24533                  pjp.PROJECT_ORG_ID,
24534                  prg.SUP_PROJECT_ORG_ID)           PROJECT_ORG_ID,
24535           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24536                  pjp.PROJECT_ORGANIZATION_ID,
24537                  prg.SUP_PROJECT_ORGANIZATION_ID)  PROJECT_ORGANIZATION_ID,
24538           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24539                  pjp.PROJECT_ELEMENT_ID,
24540                  prg.SUB_ROLLUP_ID)                PROJECT_ELEMENT_ID,
24541           pjp.TIME_ID,
24542           pjp.PERIOD_TYPE_ID,
24543           pjp.CALENDAR_TYPE,
24544           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24545                  pjp.WBS_ROLLUP_FLAG, 'N')         WBS_ROLLUP_FLAG,
24546           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24547                  pjp.PRG_ROLLUP_FLAG, 'Y')         PRG_ROLLUP_FLAG,
24548           pjp.CURR_RECORD_TYPE_ID,
24549           pjp.CURRENCY_CODE,
24550           sum(pjp.REVENUE)                         REVENUE,
24551           sum(pjp.INITIAL_FUNDING_AMOUNT)          INITIAL_FUNDING_AMOUNT,
24552           sum(pjp.INITIAL_FUNDING_COUNT)           INITIAL_FUNDING_COUNT,
24553           sum(pjp.ADDITIONAL_FUNDING_AMOUNT)       ADDITIONAL_FUNDING_AMOUNT,
24554           sum(pjp.ADDITIONAL_FUNDING_COUNT)        ADDITIONAL_FUNDING_COUNT,
24555           sum(pjp.CANCELLED_FUNDING_AMOUNT)        CANCELLED_FUNDING_AMOUNT,
24556           sum(pjp.CANCELLED_FUNDING_COUNT)         CANCELLED_FUNDING_COUNT,
24557           sum(pjp.FUNDING_ADJUSTMENT_AMOUNT)       FUNDING_ADJUSTMENT_AMOUNT,
24558           sum(pjp.FUNDING_ADJUSTMENT_COUNT)        FUNDING_ADJUSTMENT_COUNT,
24559           sum(pjp.REVENUE_WRITEOFF)                REVENUE_WRITEOFF,
24560           sum(pjp.AR_INVOICE_AMOUNT)               AR_INVOICE_AMOUNT,
24561           sum(pjp.AR_INVOICE_COUNT)                AR_INVOICE_COUNT,
24562           sum(pjp.AR_CASH_APPLIED_AMOUNT)          AR_CASH_APPLIED_AMOUNT,
24563           sum(pjp.AR_INVOICE_WRITE_OFF_AMOUNT)     AR_INVOICE_WRITE_OFF_AMOUNT,
24564           sum(pjp.AR_INVOICE_WRITEOFF_COUNT)       AR_INVOICE_WRITEOFF_COUNT,
24565           sum(pjp.AR_CREDIT_MEMO_AMOUNT)           AR_CREDIT_MEMO_AMOUNT,
24566           sum(pjp.AR_CREDIT_MEMO_COUNT)            AR_CREDIT_MEMO_COUNT,
24567           sum(pjp.UNBILLED_RECEIVABLES)            UNBILLED_RECEIVABLES,
24568           sum(pjp.UNEARNED_REVENUE)                UNEARNED_REVENUE,
24569           sum(pjp.AR_UNAPPR_INVOICE_AMOUNT)        AR_UNAPPR_INVOICE_AMOUNT,
24570           sum(pjp.AR_UNAPPR_INVOICE_COUNT)         AR_UNAPPR_INVOICE_COUNT,
24571           sum(pjp.AR_APPR_INVOICE_AMOUNT)          AR_APPR_INVOICE_AMOUNT,
24572           sum(pjp.AR_APPR_INVOICE_COUNT)           AR_APPR_INVOICE_COUNT,
24573           sum(pjp.AR_AMOUNT_DUE)                   AR_AMOUNT_DUE,
24574           sum(pjp.AR_COUNT_DUE)                    AR_COUNT_DUE,
24575           sum(pjp.AR_AMOUNT_OVERDUE)               AR_AMOUNT_OVERDUE,
24576           sum(pjp.AR_COUNT_OVERDUE)                AR_COUNT_OVERDUE,
24577           sum(pjp.CUSTOM1)                         CUSTOM1,
24578           sum(pjp.CUSTOM2)                         CUSTOM2,
24579           sum(pjp.CUSTOM3)                         CUSTOM3,
24580           sum(pjp.CUSTOM4)                         CUSTOM4,
24581           sum(pjp.CUSTOM5)                         CUSTOM5,
24582           sum(pjp.CUSTOM6)                         CUSTOM6,
24583           sum(pjp.CUSTOM7)                         CUSTOM7,
24584           sum(pjp.CUSTOM8)                         CUSTOM8,
24585           sum(pjp.CUSTOM9)                         CUSTOM9,
24586           sum(pjp.CUSTOM10)                        CUSTOM10,
24587           sum(pjp.CUSTOM11)                        CUSTOM11,
24588           sum(pjp.CUSTOM12)                        CUSTOM12,
24589           sum(pjp.CUSTOM13)                        CUSTOM13,
24590           sum(pjp.CUSTOM14)                        CUSTOM14,
24591           sum(pjp.CUSTOM15)                        CUSTOM15
24592         from
24593           (
24594           select /*+ ordered index(wbs PA_XBS_DENORM_N2) parallel(pjp1) */    -- changed for bug 5927368
24595                  -- get incremental task level amounts from source and
24596                  -- program rollup amounts from interim
24597             wbs_hdr.WBS_VERSION_ID,
24598             'LF'                                      RELATIONSHIP_TYPE,
24599             decode(top_slice.INVERT_ID,
24600                    'PRJ', 'Y',
24601                           decode(wbs.SUB_LEVEL,
24602                                  1, 'Y', 'N'))        PUSHUP_FLAG,
24603             'Y'                                       INSERT_FLAG,
24604             pjp1.PROJECT_ID,
24605             pjp1.PROJECT_ORG_ID,
24606             pjp1.PROJECT_ORGANIZATION_ID,
24607             decode(top_slice.INVERT_ID,
24608                    'PRJ', prg.SUP_EMT_ID,
24609                           decode(wbs.SUB_LEVEL,
24610                                  1, prg.SUP_EMT_ID,
24611                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
24612             pjp1.TIME_ID,
24613             pjp1.PERIOD_TYPE_ID,
24614             pjp1.CALENDAR_TYPE,
24615             'Y'                                       WBS_ROLLUP_FLAG,
24616             pjp1.PRG_ROLLUP_FLAG,
24617             pjp1.CURR_RECORD_TYPE_ID,
24618             pjp1.CURRENCY_CODE,
24619             pjp1.REVENUE,
24620             pjp1.INITIAL_FUNDING_AMOUNT,
24621             pjp1.INITIAL_FUNDING_COUNT,
24622             pjp1.ADDITIONAL_FUNDING_AMOUNT,
24623             pjp1.ADDITIONAL_FUNDING_COUNT,
24624             pjp1.CANCELLED_FUNDING_AMOUNT,
24625             pjp1.CANCELLED_FUNDING_COUNT,
24626             pjp1.FUNDING_ADJUSTMENT_AMOUNT,
24627             pjp1.FUNDING_ADJUSTMENT_COUNT,
24628             pjp1.REVENUE_WRITEOFF,
24629             pjp1.AR_INVOICE_AMOUNT,
24630             pjp1.AR_INVOICE_COUNT,
24631             pjp1.AR_CASH_APPLIED_AMOUNT,
24632             pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
24633             pjp1.AR_INVOICE_WRITEOFF_COUNT,
24634             pjp1.AR_CREDIT_MEMO_AMOUNT,
24635             pjp1.AR_CREDIT_MEMO_COUNT,
24636             pjp1.UNBILLED_RECEIVABLES,
24637             pjp1.UNEARNED_REVENUE,
24638             pjp1.AR_UNAPPR_INVOICE_AMOUNT,
24639             pjp1.AR_UNAPPR_INVOICE_COUNT,
24640             pjp1.AR_APPR_INVOICE_AMOUNT,
24641             pjp1.AR_APPR_INVOICE_COUNT,
24642             pjp1.AR_AMOUNT_DUE,
24643             pjp1.AR_COUNT_DUE,
24644             pjp1.AR_AMOUNT_OVERDUE,
24645             pjp1.AR_COUNT_OVERDUE,
24646             pjp1.CUSTOM1,
24647             pjp1.CUSTOM2,
24648             pjp1.CUSTOM3,
24649             pjp1.CUSTOM4,
24650             pjp1.CUSTOM5,
24651             pjp1.CUSTOM6,
24652             pjp1.CUSTOM7,
24653             pjp1.CUSTOM8,
24654             pjp1.CUSTOM9,
24655             pjp1.CUSTOM10,
24656             pjp1.CUSTOM11,
24657             pjp1.CUSTOM12,
24658             pjp1.CUSTOM13,
24659             pjp1.CUSTOM14,
24660             pjp1.CUSTOM15
24661           from
24662             PJI_AC_AGGR_PJP1   pjp1,
24663             PJI_PJP_WBS_HEADER wbs_hdr,
24664             PA_XBS_DENORM      wbs,
24665             PJI_XBS_DENORM     prg,
24666             (
24667               select 1     WBS_SUP_LEVEL,
24668                      1     WBS_SUB_LEVEL,
24669                      'PRJ' INVERT_ID
24670               from   DUAL
24671               union all
24672               select 1     WBS_SUP_LEVEL,
24673                      1     WBS_SUB_LEVEL,
24674                      'WBS' INVERT_ID
24675               from   DUAL
24676             ) top_slice
24677           where
24678             prg.STRUCT_TYPE         =  'PRG'                       and
24679             prg.SUP_LEVEL           =  l_level                     and
24680             prg.SUB_LEVEL           =  l_level                     and
24681             wbs.STRUCT_TYPE         =  'WBS'                       and
24682             ((wbs.SUP_LEVEL = 1 and
24683               wbs.SUB_LEVEL = 1) or
24684              (wbs.SUP_LEVEL <> wbs.SUB_LEVEL))                     and
24685             wbs.STRUCT_VERSION_ID   =  prg.SUP_ID                  and
24686             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
24687             pjp1.WORKER_ID          =  p_worker_id                 and
24688             pjp1.PRG_LEVEL          in (0, l_level)                and
24689             pjp1.WBS_ROLLUP_FLAG    =  'N'                         and
24690             pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                  and
24691             wbs_hdr.PLAN_VERSION_ID =  -1                          and
24692             pjp1.PROJECT_ID         =  wbs_hdr.PROJECT_ID          and
24693             wbs.STRUCT_VERSION_ID   =  wbs_hdr.WBS_VERSION_ID      and
24694             pjp1.PROJECT_ELEMENT_ID =  wbs.SUB_EMT_ID              and
24695             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
24696             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+)
24697           union all
24698           select /*+ ordered parallel(pjp1) */           -- changed for bug 5927368
24699                  -- get incremental project level amounts from source
24700             wbs_hdr.WBS_VERSION_ID,
24701             'LF'                                   RELATIONSHIP_TYPE,
24702             'Y'                                    PUSHUP_FLAG,
24703             'N'                                    INSERT_FLAG,
24704             pjp1.PROJECT_ID,
24705             pjp1.PROJECT_ORG_ID,
24706             pjp1.PROJECT_ORGANIZATION_ID,
24707             pjp1.PROJECT_ELEMENT_ID,
24708             pjp1.TIME_ID,
24709             pjp1.PERIOD_TYPE_ID,
24710             pjp1.CALENDAR_TYPE,
24711             'Y'                                    WBS_ROLLUP_FLAG,
24712             pjp1.PRG_ROLLUP_FLAG,
24713             pjp1.CURR_RECORD_TYPE_ID,
24714             pjp1.CURRENCY_CODE,
24715             pjp1.REVENUE,
24716             pjp1.INITIAL_FUNDING_AMOUNT,
24717             pjp1.INITIAL_FUNDING_COUNT,
24718             pjp1.ADDITIONAL_FUNDING_AMOUNT,
24719             pjp1.ADDITIONAL_FUNDING_COUNT,
24720             pjp1.CANCELLED_FUNDING_AMOUNT,
24721             pjp1.CANCELLED_FUNDING_COUNT,
24722             pjp1.FUNDING_ADJUSTMENT_AMOUNT,
24723             pjp1.FUNDING_ADJUSTMENT_COUNT,
24724             pjp1.REVENUE_WRITEOFF,
24725             pjp1.AR_INVOICE_AMOUNT,
24726             pjp1.AR_INVOICE_COUNT,
24727             pjp1.AR_CASH_APPLIED_AMOUNT,
24728             pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
24729             pjp1.AR_INVOICE_WRITEOFF_COUNT,
24730             pjp1.AR_CREDIT_MEMO_AMOUNT,
24731             pjp1.AR_CREDIT_MEMO_COUNT,
24732             pjp1.UNBILLED_RECEIVABLES,
24733             pjp1.UNEARNED_REVENUE,
24734             pjp1.AR_UNAPPR_INVOICE_AMOUNT,
24735             pjp1.AR_UNAPPR_INVOICE_COUNT,
24736             pjp1.AR_APPR_INVOICE_AMOUNT,
24737             pjp1.AR_APPR_INVOICE_COUNT,
24738             pjp1.AR_AMOUNT_DUE,
24739             pjp1.AR_COUNT_DUE,
24740             pjp1.AR_AMOUNT_OVERDUE,
24741             pjp1.AR_COUNT_OVERDUE,
24742             pjp1.CUSTOM1,
24743             pjp1.CUSTOM2,
24744             pjp1.CUSTOM3,
24745             pjp1.CUSTOM4,
24746             pjp1.CUSTOM5,
24747             pjp1.CUSTOM6,
24748             pjp1.CUSTOM7,
24749             pjp1.CUSTOM8,
24750             pjp1.CUSTOM9,
24751             pjp1.CUSTOM10,
24752             pjp1.CUSTOM11,
24753             pjp1.CUSTOM12,
24754             pjp1.CUSTOM13,
24755             pjp1.CUSTOM14,
24756             pjp1.CUSTOM15
24757           from
24758             PJI_AC_AGGR_PJP1   pjp1,
24759             PJI_PJP_WBS_HEADER wbs_hdr,
24760             PJI_XBS_DENORM     prg
24761           where
24762             prg.STRUCT_TYPE         = 'PRG'                              and
24763             prg.SUP_LEVEL           = l_level                            and
24764             prg.SUB_LEVEL           = l_level                            and
24765             pjp1.WORKER_ID          = p_worker_id                        and
24766             pjp1.PROJECT_ID         = prg.SUP_PROJECT_ID                 and
24767             pjp1.PROJECT_ELEMENT_ID = prg.SUP_EMT_ID                     and
24768             pjp1.PRG_LEVEL          = 0                                  and
24769             pjp1.WBS_ROLLUP_FLAG    = 'N'                                and
24770             pjp1.PRG_ROLLUP_FLAG    = 'N'                                and
24771             wbs_hdr.PROJECT_ID      = pjp1.PROJECT_ID                    and
24772             wbs_hdr.PLAN_VERSION_ID = -1                                 and
24773             wbs_hdr.WBS_VERSION_ID  = prg.SUP_ID
24774           union all
24775           select /*+ ordered
24776                      index(fpr PJI_AC_XBR_ACCUM_F_N1) */
24777                  -- get delta task level amounts from Reporting Lines
24778             wbs_hdr.WBS_VERSION_ID,
24779             'LF'                                   RELATIONSHIP_TYPE,
24780             decode(log.EVENT_TYPE,
24781                    'WBS_CHANGE', 'Y',
24782                    'WBS_PUBLISH', 'N')             PUSHUP_FLAG,
24783             'Y'                                    INSERT_FLAG,
24784             acr.PROJECT_ID,
24785             acr.PROJECT_ORG_ID,
24786             acr.PROJECT_ORGANIZATION_ID,
24787             decode(top_slice.INVERT_ID,
24788                    'PRJ', prg.SUP_EMT_ID,
24789                           decode(wbs.SUB_LEVEL,
24790                                  1, prg.SUP_EMT_ID,
24791                                     wbs.SUP_EMT_ID))
24792                                                    PROJECT_ELEMENT_ID,
24793             acr.TIME_ID,
24794             acr.PERIOD_TYPE_ID,
24795             acr.CALENDAR_TYPE,
24796             'Y'                                    WBS_ROLLUP_FLAG,
24797             acr.PRG_ROLLUP_FLAG,
24798             acr.CURR_RECORD_TYPE_ID,
24799             acr.CURRENCY_CODE,
24800             wbs.SIGN * acr.REVENUE                 REVENUE,
24801             wbs.SIGN * acr.INITIAL_FUNDING_AMOUNT  INITIAL_FUNDING_AMOUNT,
24802             wbs.SIGN * acr.INITIAL_FUNDING_COUNT   INITIAL_FUNDING_COUNT,
24803             wbs.SIGN * acr.ADDITIONAL_FUNDING_AMOUNT
24804                                                    ADDITIONAL_FUNDING_AMOUNT,
24805             wbs.SIGN * acr.ADDITIONAL_FUNDING_COUNT
24806                                                    ADDITIONAL_FUNDING_COUNT,
24807             wbs.SIGN * acr.CANCELLED_FUNDING_AMOUNT
24808                                                    CANCELLED_FUNDING_AMOUNT,
24809             wbs.SIGN * acr.CANCELLED_FUNDING_COUNT CANCELLED_FUNDING_COUNT,
24810             wbs.SIGN * acr.FUNDING_ADJUSTMENT_AMOUNT
24811                                                    FUNDING_ADJUSTMENT_AMOUNT,
24812             wbs.SIGN * acr.FUNDING_ADJUSTMENT_COUNT
24813                                                    FUNDING_ADJUSTMENT_COUNT,
24814             wbs.SIGN * acr.REVENUE_WRITEOFF        REVENUE_WRITEOFF,
24815             wbs.SIGN * acr.AR_INVOICE_AMOUNT       AR_INVOICE_AMOUNT,
24816             wbs.SIGN * acr.AR_INVOICE_COUNT        AR_INVOICE_COUNT,
24817             wbs.SIGN * acr.AR_CASH_APPLIED_AMOUNT  AR_CASH_APPLIED_AMOUNT,
24818             wbs.SIGN * acr.AR_INVOICE_WRITE_OFF_AMOUNT
24819                                                    AR_INVOICE_WRITE_OFF_AMOUNT,
24820             wbs.SIGN * acr.AR_INVOICE_WRITEOFF_COUNT
24821                                                    AR_INVOICE_WRITEOFF_COUNT,
24822             wbs.SIGN * acr.AR_CREDIT_MEMO_AMOUNT   AR_CREDIT_MEMO_AMOUNT,
24823             wbs.SIGN * acr.AR_CREDIT_MEMO_COUNT    AR_CREDIT_MEMO_COUNT,
24824             wbs.SIGN * acr.UNBILLED_RECEIVABLES    UNBILLED_RECEIVABLES,
24825             wbs.SIGN * acr.UNEARNED_REVENUE        UNEARNED_REVENUE,
24826             wbs.SIGN * acr.AR_UNAPPR_INVOICE_AMOUNT
24827                                                    AR_UNAPPR_INVOICE_AMOUNT,
24828             wbs.SIGN * acr.AR_UNAPPR_INVOICE_COUNT AR_UNAPPR_INVOICE_COUNT,
24829             wbs.SIGN * acr.AR_APPR_INVOICE_AMOUNT  AR_APPR_INVOICE_AMOUNT,
24830             wbs.SIGN * acr.AR_APPR_INVOICE_COUNT   AR_APPR_INVOICE_COUNT,
24831             wbs.SIGN * acr.AR_AMOUNT_DUE           AR_AMOUNT_DUE,
24832             wbs.SIGN * acr.AR_COUNT_DUE            AR_COUNT_DUE,
24833             wbs.SIGN * acr.AR_AMOUNT_OVERDUE       AR_AMOUNT_OVERDUE,
24834             wbs.SIGN * acr.AR_COUNT_OVERDUE        AR_COUNT_OVERDUE,
24835             wbs.SIGN * acr.CUSTOM1                 CUSTOM1,
24836             wbs.SIGN * acr.CUSTOM2                 CUSTOM2,
24837             wbs.SIGN * acr.CUSTOM3                 CUSTOM3,
24838             wbs.SIGN * acr.CUSTOM4                 CUSTOM4,
24839             wbs.SIGN * acr.CUSTOM5                 CUSTOM5,
24840             wbs.SIGN * acr.CUSTOM6                 CUSTOM6,
24841             wbs.SIGN * acr.CUSTOM7                 CUSTOM7,
24842             wbs.SIGN * acr.CUSTOM8                 CUSTOM8,
24843             wbs.SIGN * acr.CUSTOM9                 CUSTOM9,
24844             wbs.SIGN * acr.CUSTOM10                CUSTOM10,
24845             wbs.SIGN * acr.CUSTOM11                CUSTOM11,
24846             wbs.SIGN * acr.CUSTOM12                CUSTOM12,
24847             wbs.SIGN * acr.CUSTOM13                CUSTOM13,
24848             wbs.SIGN * acr.CUSTOM14                CUSTOM14,
24849             wbs.SIGN * acr.CUSTOM15                CUSTOM15
24850           from
24851             PJI_PA_PROJ_EVENTS_LOG log,
24852             PJI_PJP_WBS_HEADER     wbs_hdr,
24853             PJI_XBS_DENORM_DELTA   wbs,
24854             PJI_XBS_DENORM         prg,
24855             PJI_AC_XBS_ACCUM_F     acr,
24856             (
24857               select 1     WBS_SUP_LEVEL,
24858                      1     WBS_SUB_LEVEL,
24859                      'PRJ' INVERT_ID
24860               from   DUAL
24861               union all
24862               select 1     WBS_SUP_LEVEL,
24863                      1     WBS_SUB_LEVEL,
24864                      'WBS' INVERT_ID
24865               from   DUAL
24866             ) top_slice
24867           where
24868             prg.STRUCT_TYPE         =  'PRG'                       and
24869             prg.SUP_LEVEL           =  l_level                     and
24870             prg.SUB_LEVEL           =  l_level                     and
24871             wbs.WORKER_ID           =  p_worker_id                 and
24872             wbs.STRUCT_TYPE         =  'WBS'                       and
24873             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
24874             log.WORKER_ID           =  p_worker_id                 and
24875             log.EVENT_ID            =  wbs.EVENT_ID                and
24876             log.EVENT_TYPE          in ('WBS_CHANGE',
24877                                         'WBS_PUBLISH')             and
24878             wbs_hdr.PROJECT_ID      =  log.ATTRIBUTE1              and
24879             wbs_hdr.PLAN_VERSION_ID =  log.ATTRIBUTE3              and
24880             wbs_hdr.PLAN_VERSION_ID =  -1                          and
24881             wbs_hdr.WBS_VERSION_ID  =  wbs.STRUCT_VERSION_ID       and
24882             wbs_hdr.PROJECT_ID      =  prg.SUP_PROJECT_ID          and
24883             wbs_hdr.WBS_VERSION_ID  =  prg.SUP_ID                  and
24884             acr.WBS_ROLLUP_FLAG     =  'N'                         and
24885             acr.PRG_ROLLUP_FLAG     =  'N'                         and
24886             acr.PROJECT_ID          =  wbs.SUP_PROJECT_ID          and
24887             acr.PROJECT_ELEMENT_ID  =  wbs.SUB_EMT_ID              and
24888             acr.PROJECT_ID          =  wbs_hdr.PROJECT_ID          and
24889             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
24890             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+) and
24891             (wbs.SUP_LEVEL <> wbs.SUB_LEVEL or
24892              (wbs.SUP_LEVEL = 1 and
24893               wbs.SUB_LEVEL = 1))
24894           ) pjp,
24895           (
24896           select /*+ ordered */
24897             prg.SUP_PROJECT_ID,
24898             map.PROJECT_ORG_ID               SUP_PROJECT_ORG_ID,
24899             map.PROJECT_ORGANIZATION_ID      SUP_PROJECT_ORGANIZATION_ID,
24900             prg.SUP_ID,
24901             prg.SUP_EMT_ID,
24902             prg.SUP_LEVEL,
24903             prg.SUB_ID,
24904             prg.SUB_EMT_ID,
24905             prg.SUB_ROLLUP_ID,
24906             prg.RELATIONSHIP_TYPE            RELATIONSHIP_TYPE,
24907             'Y'                              PUSHUP_FLAG
24908           from
24909             PJI_PJP_PROJ_BATCH_MAP map,
24910             PJI_XBS_DENORM         prg,
24911             PJI_XBS_DENORM_DELTA   prg_delta
24912           where
24913             prg.STRUCT_TYPE          = 'PRG'                           and
24914             prg.RELATIONSHIP_TYPE    = 'LF'                            and
24915             prg.SUB_ROLLUP_ID        is not null                       and
24916             prg.SUB_LEVEL            = l_level                         and
24917             map.WORKER_ID            = p_worker_id                     and
24918             map.PROJECT_ID           = prg.SUP_PROJECT_ID              and
24919             p_worker_id              = prg_delta.WORKER_ID         (+) and
24920             prg.STRUCT_TYPE          = prg_delta.STRUCT_TYPE       (+) and
24921             prg.SUP_PROJECT_ID       = prg_delta.SUP_PROJECT_ID    (+) and
24922             prg.SUP_LEVEL            = prg_delta.SUP_LEVEL         (+) and
24923             prg.SUP_ID               = prg_delta.SUP_ID            (+) and
24924             prg.SUB_LEVEL            = prg_delta.SUB_LEVEL         (+) and
24925             prg.SUB_ID               = prg_delta.SUB_ID            (+) and
24926             prg.RELATIONSHIP_TYPE    = prg_delta.RELATIONSHIP_TYPE (+) and
24927             -1                       = prg_delta.SIGN              (+) and
24928             prg_delta.SUP_PROJECT_ID is null
24929           ) prg
24930         where
24931           pjp.WBS_VERSION_ID    = prg.SUB_ID            (+) and
24932           pjp.RELATIONSHIP_TYPE = prg.RELATIONSHIP_TYPE (+) and
24933           pjp.PUSHUP_FLAG       = prg.PUSHUP_FLAG       (+)
24934         group by
24935           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24936                  pjp.INSERT_FLAG, 'Y'),
24937           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24938                  null, prg.SUP_ID),
24939           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24940                  null, prg.SUP_EMT_ID),
24941           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24942                  l_level, prg.SUP_LEVEL),
24943           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24944                  pjp.PROJECT_ID,
24945                  prg.SUP_PROJECT_ID),
24946           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24947                  pjp.PROJECT_ORG_ID,
24948                  prg.SUP_PROJECT_ORG_ID),
24949           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24950                  pjp.PROJECT_ORGANIZATION_ID,
24951                  prg.SUP_PROJECT_ORGANIZATION_ID),
24952           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24953                  pjp.PROJECT_ELEMENT_ID,
24954                  prg.SUB_ROLLUP_ID),
24955           pjp.TIME_ID,
24956           pjp.PERIOD_TYPE_ID,
24957           pjp.CALENDAR_TYPE,
24958           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24959                  pjp.WBS_ROLLUP_FLAG, 'N'),
24960           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
24961                  pjp.PRG_ROLLUP_FLAG, 'Y'),
24962           pjp.CURR_RECORD_TYPE_ID,
24963           pjp.CURRENCY_CODE
24964           )                          pjp1_i,
24965           PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
24966           PA_PROJ_WORKPLAN_ATTR      sup_wpa
24967         where
24968           pjp1_i.INSERT_FLAG  = 'Y'                                and
24969           pjp1_i.PROJECT_ID   = sup_fin_ver.PROJECT_ID         (+) and
24970           pjp1_i.SUP_ID       = sup_fin_ver.ELEMENT_VERSION_ID (+) and
24971           'STRUCTURE_WORKING' = sup_fin_ver.STATUS_CODE        (+) and
24972           pjp1_i.SUP_EMT_ID   = sup_wpa.PROJ_ELEMENT_ID        (+) and
24973           'N'                 = sup_wpa.WP_ENABLE_VERSION_FLAG (+) and
24974           (pjp1_i.SUP_ID is null or
24975            (pjp1_i.SUP_ID is not null and
24976             (sup_fin_ver.PROJECT_ID is not null or
24977              sup_wpa.PROJ_ELEMENT_ID is not null)));
24978     elsif (p_worker_id =8) then
24979       -- Query for Partition 8
24980 
24981         insert /*+ parallel(PJI_AC_AGGR_PJP1) */
24982                    into PJI_AC_AGGR_PJP1 partition(P8)
24983         (
24984           WORKER_ID,
24985           RECORD_TYPE,
24986           PRG_LEVEL,
24987           PROJECT_ID,
24988           PROJECT_ORG_ID,
24989           PROJECT_ORGANIZATION_ID,
24990           PROJECT_ELEMENT_ID,
24991           TIME_ID,
24992           PERIOD_TYPE_ID,
24993           CALENDAR_TYPE,
24994           WBS_ROLLUP_FLAG,
24995           PRG_ROLLUP_FLAG,
24996           CURR_RECORD_TYPE_ID,
24997           CURRENCY_CODE,
24998           REVENUE,
24999           INITIAL_FUNDING_AMOUNT,
25000           INITIAL_FUNDING_COUNT,
25001           ADDITIONAL_FUNDING_AMOUNT,
25002           ADDITIONAL_FUNDING_COUNT,
25003           CANCELLED_FUNDING_AMOUNT,
25004           CANCELLED_FUNDING_COUNT,
25005           FUNDING_ADJUSTMENT_AMOUNT,
25006           FUNDING_ADJUSTMENT_COUNT,
25007           REVENUE_WRITEOFF,
25008           AR_INVOICE_AMOUNT,
25009           AR_INVOICE_COUNT,
25010           AR_CASH_APPLIED_AMOUNT,
25011           AR_INVOICE_WRITE_OFF_AMOUNT,
25012           AR_INVOICE_WRITEOFF_COUNT,
25013           AR_CREDIT_MEMO_AMOUNT,
25014           AR_CREDIT_MEMO_COUNT,
25015           UNBILLED_RECEIVABLES,
25016           UNEARNED_REVENUE,
25017           AR_UNAPPR_INVOICE_AMOUNT,
25018           AR_UNAPPR_INVOICE_COUNT,
25019           AR_APPR_INVOICE_AMOUNT,
25020           AR_APPR_INVOICE_COUNT,
25021           AR_AMOUNT_DUE,
25022           AR_COUNT_DUE,
25023           AR_AMOUNT_OVERDUE,
25024           AR_COUNT_OVERDUE,
25025           CUSTOM1,
25026           CUSTOM2,
25027           CUSTOM3,
25028           CUSTOM4,
25029           CUSTOM5,
25030           CUSTOM6,
25031           CUSTOM7,
25032           CUSTOM8,
25033           CUSTOM9,
25034           CUSTOM10,
25035           CUSTOM11,
25036           CUSTOM12,
25037           CUSTOM13,
25038           CUSTOM14,
25039           CUSTOM15
25040         )
25041         select
25042           pjp1_i.WORKER_ID,
25043           pjp1_i.RECORD_TYPE,
25044           pjp1_i.PRG_LEVEL,
25045           pjp1_i.PROJECT_ID,
25046           pjp1_i.PROJECT_ORG_ID,
25047           pjp1_i.PROJECT_ORGANIZATION_ID,
25048           pjp1_i.PROJECT_ELEMENT_ID,
25049           pjp1_i.TIME_ID,
25050           pjp1_i.PERIOD_TYPE_ID,
25051           pjp1_i.CALENDAR_TYPE,
25052           pjp1_i.WBS_ROLLUP_FLAG,
25053           pjp1_i.PRG_ROLLUP_FLAG,
25054           pjp1_i.CURR_RECORD_TYPE_ID,
25055           pjp1_i.CURRENCY_CODE,
25056           pjp1_i.REVENUE,
25057           pjp1_i.INITIAL_FUNDING_AMOUNT,
25058           pjp1_i.INITIAL_FUNDING_COUNT,
25059           pjp1_i.ADDITIONAL_FUNDING_AMOUNT,
25060           pjp1_i.ADDITIONAL_FUNDING_COUNT,
25061           pjp1_i.CANCELLED_FUNDING_AMOUNT,
25062           pjp1_i.CANCELLED_FUNDING_COUNT,
25063           pjp1_i.FUNDING_ADJUSTMENT_AMOUNT,
25064           pjp1_i.FUNDING_ADJUSTMENT_COUNT,
25065           pjp1_i.REVENUE_WRITEOFF,
25066           pjp1_i.AR_INVOICE_AMOUNT,
25067           pjp1_i.AR_INVOICE_COUNT,
25068           pjp1_i.AR_CASH_APPLIED_AMOUNT,
25069           pjp1_i.AR_INVOICE_WRITE_OFF_AMOUNT,
25070           pjp1_i.AR_INVOICE_WRITEOFF_COUNT,
25071           pjp1_i.AR_CREDIT_MEMO_AMOUNT,
25072           pjp1_i.AR_CREDIT_MEMO_COUNT,
25073           pjp1_i.UNBILLED_RECEIVABLES,
25074           pjp1_i.UNEARNED_REVENUE,
25075           pjp1_i.AR_UNAPPR_INVOICE_AMOUNT,
25076           pjp1_i.AR_UNAPPR_INVOICE_COUNT,
25077           pjp1_i.AR_APPR_INVOICE_AMOUNT,
25078           pjp1_i.AR_APPR_INVOICE_COUNT,
25079           pjp1_i.AR_AMOUNT_DUE,
25080           pjp1_i.AR_COUNT_DUE,
25081           pjp1_i.AR_AMOUNT_OVERDUE,
25082           pjp1_i.AR_COUNT_OVERDUE,
25083           pjp1_i.CUSTOM1,
25084           pjp1_i.CUSTOM2,
25085           pjp1_i.CUSTOM3,
25086           pjp1_i.CUSTOM4,
25087           pjp1_i.CUSTOM5,
25088           pjp1_i.CUSTOM6,
25089           pjp1_i.CUSTOM7,
25090           pjp1_i.CUSTOM8,
25091           pjp1_i.CUSTOM9,
25092           pjp1_i.CUSTOM10,
25093           pjp1_i.CUSTOM11,
25094           pjp1_i.CUSTOM12,
25095           pjp1_i.CUSTOM13,
25096           pjp1_i.CUSTOM14,
25097           pjp1_i.CUSTOM15
25098         from
25099           (
25100         select
25101           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25102                  pjp.INSERT_FLAG, 'Y')             INSERT_FLAG,
25103           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25104                  null, prg.SUP_ID)                 SUP_ID,
25105           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25106                  null, prg.SUP_EMT_ID)             SUP_EMT_ID,
25107           p_worker_id                              WORKER_ID,
25108           'W'                                      RECORD_TYPE,
25109           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25110                  l_level, prg.SUP_LEVEL)           PRG_LEVEL,
25111           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25112                  pjp.PROJECT_ID,
25113                  prg.SUP_PROJECT_ID)               PROJECT_ID,
25114           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25115                  pjp.PROJECT_ORG_ID,
25116                  prg.SUP_PROJECT_ORG_ID)           PROJECT_ORG_ID,
25117           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25118                  pjp.PROJECT_ORGANIZATION_ID,
25119                  prg.SUP_PROJECT_ORGANIZATION_ID)  PROJECT_ORGANIZATION_ID,
25120           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25121                  pjp.PROJECT_ELEMENT_ID,
25122                  prg.SUB_ROLLUP_ID)                PROJECT_ELEMENT_ID,
25123           pjp.TIME_ID,
25124           pjp.PERIOD_TYPE_ID,
25125           pjp.CALENDAR_TYPE,
25126           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25127                  pjp.WBS_ROLLUP_FLAG, 'N')         WBS_ROLLUP_FLAG,
25128           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25129                  pjp.PRG_ROLLUP_FLAG, 'Y')         PRG_ROLLUP_FLAG,
25130           pjp.CURR_RECORD_TYPE_ID,
25131           pjp.CURRENCY_CODE,
25132           sum(pjp.REVENUE)                         REVENUE,
25133           sum(pjp.INITIAL_FUNDING_AMOUNT)          INITIAL_FUNDING_AMOUNT,
25134           sum(pjp.INITIAL_FUNDING_COUNT)           INITIAL_FUNDING_COUNT,
25135           sum(pjp.ADDITIONAL_FUNDING_AMOUNT)       ADDITIONAL_FUNDING_AMOUNT,
25136           sum(pjp.ADDITIONAL_FUNDING_COUNT)        ADDITIONAL_FUNDING_COUNT,
25137           sum(pjp.CANCELLED_FUNDING_AMOUNT)        CANCELLED_FUNDING_AMOUNT,
25138           sum(pjp.CANCELLED_FUNDING_COUNT)         CANCELLED_FUNDING_COUNT,
25139           sum(pjp.FUNDING_ADJUSTMENT_AMOUNT)       FUNDING_ADJUSTMENT_AMOUNT,
25140           sum(pjp.FUNDING_ADJUSTMENT_COUNT)        FUNDING_ADJUSTMENT_COUNT,
25141           sum(pjp.REVENUE_WRITEOFF)                REVENUE_WRITEOFF,
25142           sum(pjp.AR_INVOICE_AMOUNT)               AR_INVOICE_AMOUNT,
25143           sum(pjp.AR_INVOICE_COUNT)                AR_INVOICE_COUNT,
25144           sum(pjp.AR_CASH_APPLIED_AMOUNT)          AR_CASH_APPLIED_AMOUNT,
25145           sum(pjp.AR_INVOICE_WRITE_OFF_AMOUNT)     AR_INVOICE_WRITE_OFF_AMOUNT,
25146           sum(pjp.AR_INVOICE_WRITEOFF_COUNT)       AR_INVOICE_WRITEOFF_COUNT,
25147           sum(pjp.AR_CREDIT_MEMO_AMOUNT)           AR_CREDIT_MEMO_AMOUNT,
25148           sum(pjp.AR_CREDIT_MEMO_COUNT)            AR_CREDIT_MEMO_COUNT,
25149           sum(pjp.UNBILLED_RECEIVABLES)            UNBILLED_RECEIVABLES,
25150           sum(pjp.UNEARNED_REVENUE)                UNEARNED_REVENUE,
25151           sum(pjp.AR_UNAPPR_INVOICE_AMOUNT)        AR_UNAPPR_INVOICE_AMOUNT,
25152           sum(pjp.AR_UNAPPR_INVOICE_COUNT)         AR_UNAPPR_INVOICE_COUNT,
25153           sum(pjp.AR_APPR_INVOICE_AMOUNT)          AR_APPR_INVOICE_AMOUNT,
25154           sum(pjp.AR_APPR_INVOICE_COUNT)           AR_APPR_INVOICE_COUNT,
25155           sum(pjp.AR_AMOUNT_DUE)                   AR_AMOUNT_DUE,
25156           sum(pjp.AR_COUNT_DUE)                    AR_COUNT_DUE,
25157           sum(pjp.AR_AMOUNT_OVERDUE)               AR_AMOUNT_OVERDUE,
25158           sum(pjp.AR_COUNT_OVERDUE)                AR_COUNT_OVERDUE,
25159           sum(pjp.CUSTOM1)                         CUSTOM1,
25160           sum(pjp.CUSTOM2)                         CUSTOM2,
25161           sum(pjp.CUSTOM3)                         CUSTOM3,
25162           sum(pjp.CUSTOM4)                         CUSTOM4,
25163           sum(pjp.CUSTOM5)                         CUSTOM5,
25164           sum(pjp.CUSTOM6)                         CUSTOM6,
25165           sum(pjp.CUSTOM7)                         CUSTOM7,
25166           sum(pjp.CUSTOM8)                         CUSTOM8,
25167           sum(pjp.CUSTOM9)                         CUSTOM9,
25168           sum(pjp.CUSTOM10)                        CUSTOM10,
25169           sum(pjp.CUSTOM11)                        CUSTOM11,
25170           sum(pjp.CUSTOM12)                        CUSTOM12,
25171           sum(pjp.CUSTOM13)                        CUSTOM13,
25172           sum(pjp.CUSTOM14)                        CUSTOM14,
25173           sum(pjp.CUSTOM15)                        CUSTOM15
25174         from
25175           (
25176           select /*+ ordered index(wbs PA_XBS_DENORM_N2) parallel(pjp1) */    -- changed for bug 5927368
25177                  -- get incremental task level amounts from source and
25178                  -- program rollup amounts from interim
25179             wbs_hdr.WBS_VERSION_ID,
25180             'LF'                                      RELATIONSHIP_TYPE,
25181             decode(top_slice.INVERT_ID,
25182                    'PRJ', 'Y',
25183                           decode(wbs.SUB_LEVEL,
25184                                  1, 'Y', 'N'))        PUSHUP_FLAG,
25185             'Y'                                       INSERT_FLAG,
25186             pjp1.PROJECT_ID,
25187             pjp1.PROJECT_ORG_ID,
25188             pjp1.PROJECT_ORGANIZATION_ID,
25189             decode(top_slice.INVERT_ID,
25190                    'PRJ', prg.SUP_EMT_ID,
25191                           decode(wbs.SUB_LEVEL,
25192                                  1, prg.SUP_EMT_ID,
25193                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
25194             pjp1.TIME_ID,
25195             pjp1.PERIOD_TYPE_ID,
25196             pjp1.CALENDAR_TYPE,
25197             'Y'                                       WBS_ROLLUP_FLAG,
25198             pjp1.PRG_ROLLUP_FLAG,
25199             pjp1.CURR_RECORD_TYPE_ID,
25200             pjp1.CURRENCY_CODE,
25201             pjp1.REVENUE,
25202             pjp1.INITIAL_FUNDING_AMOUNT,
25203             pjp1.INITIAL_FUNDING_COUNT,
25204             pjp1.ADDITIONAL_FUNDING_AMOUNT,
25205             pjp1.ADDITIONAL_FUNDING_COUNT,
25206             pjp1.CANCELLED_FUNDING_AMOUNT,
25207             pjp1.CANCELLED_FUNDING_COUNT,
25208             pjp1.FUNDING_ADJUSTMENT_AMOUNT,
25209             pjp1.FUNDING_ADJUSTMENT_COUNT,
25210             pjp1.REVENUE_WRITEOFF,
25211             pjp1.AR_INVOICE_AMOUNT,
25212             pjp1.AR_INVOICE_COUNT,
25213             pjp1.AR_CASH_APPLIED_AMOUNT,
25214             pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
25215             pjp1.AR_INVOICE_WRITEOFF_COUNT,
25216             pjp1.AR_CREDIT_MEMO_AMOUNT,
25217             pjp1.AR_CREDIT_MEMO_COUNT,
25218             pjp1.UNBILLED_RECEIVABLES,
25219             pjp1.UNEARNED_REVENUE,
25220             pjp1.AR_UNAPPR_INVOICE_AMOUNT,
25221             pjp1.AR_UNAPPR_INVOICE_COUNT,
25222             pjp1.AR_APPR_INVOICE_AMOUNT,
25223             pjp1.AR_APPR_INVOICE_COUNT,
25224             pjp1.AR_AMOUNT_DUE,
25225             pjp1.AR_COUNT_DUE,
25226             pjp1.AR_AMOUNT_OVERDUE,
25227             pjp1.AR_COUNT_OVERDUE,
25228             pjp1.CUSTOM1,
25229             pjp1.CUSTOM2,
25230             pjp1.CUSTOM3,
25231             pjp1.CUSTOM4,
25232             pjp1.CUSTOM5,
25233             pjp1.CUSTOM6,
25234             pjp1.CUSTOM7,
25235             pjp1.CUSTOM8,
25236             pjp1.CUSTOM9,
25237             pjp1.CUSTOM10,
25238             pjp1.CUSTOM11,
25239             pjp1.CUSTOM12,
25240             pjp1.CUSTOM13,
25241             pjp1.CUSTOM14,
25242             pjp1.CUSTOM15
25243           from
25244             PJI_AC_AGGR_PJP1   pjp1,
25245             PJI_PJP_WBS_HEADER wbs_hdr,
25246             PA_XBS_DENORM      wbs,
25247             PJI_XBS_DENORM     prg,
25248             (
25249               select 1     WBS_SUP_LEVEL,
25250                      1     WBS_SUB_LEVEL,
25251                      'PRJ' INVERT_ID
25252               from   DUAL
25253               union all
25254               select 1     WBS_SUP_LEVEL,
25255                      1     WBS_SUB_LEVEL,
25256                      'WBS' INVERT_ID
25257               from   DUAL
25258             ) top_slice
25259           where
25260             prg.STRUCT_TYPE         =  'PRG'                       and
25261             prg.SUP_LEVEL           =  l_level                     and
25262             prg.SUB_LEVEL           =  l_level                     and
25263             wbs.STRUCT_TYPE         =  'WBS'                       and
25264             ((wbs.SUP_LEVEL = 1 and
25265               wbs.SUB_LEVEL = 1) or
25266              (wbs.SUP_LEVEL <> wbs.SUB_LEVEL))                     and
25267             wbs.STRUCT_VERSION_ID   =  prg.SUP_ID                  and
25268             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
25269             pjp1.WORKER_ID          =  p_worker_id                 and
25270             pjp1.PRG_LEVEL          in (0, l_level)                and
25271             pjp1.WBS_ROLLUP_FLAG    =  'N'                         and
25272             pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                  and
25273             wbs_hdr.PLAN_VERSION_ID =  -1                          and
25274             pjp1.PROJECT_ID         =  wbs_hdr.PROJECT_ID          and
25275             wbs.STRUCT_VERSION_ID   =  wbs_hdr.WBS_VERSION_ID      and
25276             pjp1.PROJECT_ELEMENT_ID =  wbs.SUB_EMT_ID              and
25277             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
25278             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+)
25279           union all
25280           select /*+ ordered parallel(pjp1) */           -- changed for bug 5927368
25281                  -- get incremental project level amounts from source
25282             wbs_hdr.WBS_VERSION_ID,
25283             'LF'                                   RELATIONSHIP_TYPE,
25284             'Y'                                    PUSHUP_FLAG,
25285             'N'                                    INSERT_FLAG,
25286             pjp1.PROJECT_ID,
25287             pjp1.PROJECT_ORG_ID,
25288             pjp1.PROJECT_ORGANIZATION_ID,
25289             pjp1.PROJECT_ELEMENT_ID,
25290             pjp1.TIME_ID,
25291             pjp1.PERIOD_TYPE_ID,
25292             pjp1.CALENDAR_TYPE,
25293             'Y'                                    WBS_ROLLUP_FLAG,
25294             pjp1.PRG_ROLLUP_FLAG,
25295             pjp1.CURR_RECORD_TYPE_ID,
25296             pjp1.CURRENCY_CODE,
25297             pjp1.REVENUE,
25298             pjp1.INITIAL_FUNDING_AMOUNT,
25299             pjp1.INITIAL_FUNDING_COUNT,
25300             pjp1.ADDITIONAL_FUNDING_AMOUNT,
25301             pjp1.ADDITIONAL_FUNDING_COUNT,
25302             pjp1.CANCELLED_FUNDING_AMOUNT,
25303             pjp1.CANCELLED_FUNDING_COUNT,
25304             pjp1.FUNDING_ADJUSTMENT_AMOUNT,
25305             pjp1.FUNDING_ADJUSTMENT_COUNT,
25306             pjp1.REVENUE_WRITEOFF,
25307             pjp1.AR_INVOICE_AMOUNT,
25308             pjp1.AR_INVOICE_COUNT,
25309             pjp1.AR_CASH_APPLIED_AMOUNT,
25310             pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
25311             pjp1.AR_INVOICE_WRITEOFF_COUNT,
25312             pjp1.AR_CREDIT_MEMO_AMOUNT,
25313             pjp1.AR_CREDIT_MEMO_COUNT,
25314             pjp1.UNBILLED_RECEIVABLES,
25315             pjp1.UNEARNED_REVENUE,
25316             pjp1.AR_UNAPPR_INVOICE_AMOUNT,
25317             pjp1.AR_UNAPPR_INVOICE_COUNT,
25318             pjp1.AR_APPR_INVOICE_AMOUNT,
25319             pjp1.AR_APPR_INVOICE_COUNT,
25320             pjp1.AR_AMOUNT_DUE,
25321             pjp1.AR_COUNT_DUE,
25322             pjp1.AR_AMOUNT_OVERDUE,
25323             pjp1.AR_COUNT_OVERDUE,
25324             pjp1.CUSTOM1,
25325             pjp1.CUSTOM2,
25326             pjp1.CUSTOM3,
25327             pjp1.CUSTOM4,
25328             pjp1.CUSTOM5,
25329             pjp1.CUSTOM6,
25330             pjp1.CUSTOM7,
25331             pjp1.CUSTOM8,
25332             pjp1.CUSTOM9,
25333             pjp1.CUSTOM10,
25334             pjp1.CUSTOM11,
25335             pjp1.CUSTOM12,
25336             pjp1.CUSTOM13,
25337             pjp1.CUSTOM14,
25338             pjp1.CUSTOM15
25339           from
25340             PJI_AC_AGGR_PJP1   pjp1,
25341             PJI_PJP_WBS_HEADER wbs_hdr,
25342             PJI_XBS_DENORM     prg
25343           where
25344             prg.STRUCT_TYPE         = 'PRG'                              and
25345             prg.SUP_LEVEL           = l_level                            and
25346             prg.SUB_LEVEL           = l_level                            and
25347             pjp1.WORKER_ID          = p_worker_id                        and
25348             pjp1.PROJECT_ID         = prg.SUP_PROJECT_ID                 and
25349             pjp1.PROJECT_ELEMENT_ID = prg.SUP_EMT_ID                     and
25350             pjp1.PRG_LEVEL          = 0                                  and
25351             pjp1.WBS_ROLLUP_FLAG    = 'N'                                and
25352             pjp1.PRG_ROLLUP_FLAG    = 'N'                                and
25353             wbs_hdr.PROJECT_ID      = pjp1.PROJECT_ID                    and
25354             wbs_hdr.PLAN_VERSION_ID = -1                                 and
25355             wbs_hdr.WBS_VERSION_ID  = prg.SUP_ID
25356           union all
25357           select /*+ ordered
25358                      index(fpr PJI_AC_XBR_ACCUM_F_N1) */
25359                  -- get delta task level amounts from Reporting Lines
25360             wbs_hdr.WBS_VERSION_ID,
25361             'LF'                                   RELATIONSHIP_TYPE,
25362             decode(log.EVENT_TYPE,
25363                    'WBS_CHANGE', 'Y',
25364                    'WBS_PUBLISH', 'N')             PUSHUP_FLAG,
25365             'Y'                                    INSERT_FLAG,
25366             acr.PROJECT_ID,
25367             acr.PROJECT_ORG_ID,
25368             acr.PROJECT_ORGANIZATION_ID,
25369             decode(top_slice.INVERT_ID,
25370                    'PRJ', prg.SUP_EMT_ID,
25371                           decode(wbs.SUB_LEVEL,
25372                                  1, prg.SUP_EMT_ID,
25373                                     wbs.SUP_EMT_ID))
25374                                                    PROJECT_ELEMENT_ID,
25375             acr.TIME_ID,
25376             acr.PERIOD_TYPE_ID,
25377             acr.CALENDAR_TYPE,
25378             'Y'                                    WBS_ROLLUP_FLAG,
25379             acr.PRG_ROLLUP_FLAG,
25380             acr.CURR_RECORD_TYPE_ID,
25381             acr.CURRENCY_CODE,
25382             wbs.SIGN * acr.REVENUE                 REVENUE,
25383             wbs.SIGN * acr.INITIAL_FUNDING_AMOUNT  INITIAL_FUNDING_AMOUNT,
25384             wbs.SIGN * acr.INITIAL_FUNDING_COUNT   INITIAL_FUNDING_COUNT,
25385             wbs.SIGN * acr.ADDITIONAL_FUNDING_AMOUNT
25386                                                    ADDITIONAL_FUNDING_AMOUNT,
25387             wbs.SIGN * acr.ADDITIONAL_FUNDING_COUNT
25388                                                    ADDITIONAL_FUNDING_COUNT,
25389             wbs.SIGN * acr.CANCELLED_FUNDING_AMOUNT
25390                                                    CANCELLED_FUNDING_AMOUNT,
25391             wbs.SIGN * acr.CANCELLED_FUNDING_COUNT CANCELLED_FUNDING_COUNT,
25392             wbs.SIGN * acr.FUNDING_ADJUSTMENT_AMOUNT
25393                                                    FUNDING_ADJUSTMENT_AMOUNT,
25394             wbs.SIGN * acr.FUNDING_ADJUSTMENT_COUNT
25395                                                    FUNDING_ADJUSTMENT_COUNT,
25396             wbs.SIGN * acr.REVENUE_WRITEOFF        REVENUE_WRITEOFF,
25397             wbs.SIGN * acr.AR_INVOICE_AMOUNT       AR_INVOICE_AMOUNT,
25398             wbs.SIGN * acr.AR_INVOICE_COUNT        AR_INVOICE_COUNT,
25399             wbs.SIGN * acr.AR_CASH_APPLIED_AMOUNT  AR_CASH_APPLIED_AMOUNT,
25400             wbs.SIGN * acr.AR_INVOICE_WRITE_OFF_AMOUNT
25401                                                    AR_INVOICE_WRITE_OFF_AMOUNT,
25402             wbs.SIGN * acr.AR_INVOICE_WRITEOFF_COUNT
25403                                                    AR_INVOICE_WRITEOFF_COUNT,
25404             wbs.SIGN * acr.AR_CREDIT_MEMO_AMOUNT   AR_CREDIT_MEMO_AMOUNT,
25405             wbs.SIGN * acr.AR_CREDIT_MEMO_COUNT    AR_CREDIT_MEMO_COUNT,
25406             wbs.SIGN * acr.UNBILLED_RECEIVABLES    UNBILLED_RECEIVABLES,
25407             wbs.SIGN * acr.UNEARNED_REVENUE        UNEARNED_REVENUE,
25408             wbs.SIGN * acr.AR_UNAPPR_INVOICE_AMOUNT
25409                                                    AR_UNAPPR_INVOICE_AMOUNT,
25410             wbs.SIGN * acr.AR_UNAPPR_INVOICE_COUNT AR_UNAPPR_INVOICE_COUNT,
25411             wbs.SIGN * acr.AR_APPR_INVOICE_AMOUNT  AR_APPR_INVOICE_AMOUNT,
25412             wbs.SIGN * acr.AR_APPR_INVOICE_COUNT   AR_APPR_INVOICE_COUNT,
25413             wbs.SIGN * acr.AR_AMOUNT_DUE           AR_AMOUNT_DUE,
25414             wbs.SIGN * acr.AR_COUNT_DUE            AR_COUNT_DUE,
25415             wbs.SIGN * acr.AR_AMOUNT_OVERDUE       AR_AMOUNT_OVERDUE,
25416             wbs.SIGN * acr.AR_COUNT_OVERDUE        AR_COUNT_OVERDUE,
25417             wbs.SIGN * acr.CUSTOM1                 CUSTOM1,
25418             wbs.SIGN * acr.CUSTOM2                 CUSTOM2,
25419             wbs.SIGN * acr.CUSTOM3                 CUSTOM3,
25420             wbs.SIGN * acr.CUSTOM4                 CUSTOM4,
25421             wbs.SIGN * acr.CUSTOM5                 CUSTOM5,
25422             wbs.SIGN * acr.CUSTOM6                 CUSTOM6,
25423             wbs.SIGN * acr.CUSTOM7                 CUSTOM7,
25424             wbs.SIGN * acr.CUSTOM8                 CUSTOM8,
25425             wbs.SIGN * acr.CUSTOM9                 CUSTOM9,
25426             wbs.SIGN * acr.CUSTOM10                CUSTOM10,
25427             wbs.SIGN * acr.CUSTOM11                CUSTOM11,
25428             wbs.SIGN * acr.CUSTOM12                CUSTOM12,
25429             wbs.SIGN * acr.CUSTOM13                CUSTOM13,
25430             wbs.SIGN * acr.CUSTOM14                CUSTOM14,
25431             wbs.SIGN * acr.CUSTOM15                CUSTOM15
25432           from
25433             PJI_PA_PROJ_EVENTS_LOG log,
25434             PJI_PJP_WBS_HEADER     wbs_hdr,
25435             PJI_XBS_DENORM_DELTA   wbs,
25436             PJI_XBS_DENORM         prg,
25437             PJI_AC_XBS_ACCUM_F     acr,
25438             (
25439               select 1     WBS_SUP_LEVEL,
25440                      1     WBS_SUB_LEVEL,
25441                      'PRJ' INVERT_ID
25442               from   DUAL
25443               union all
25444               select 1     WBS_SUP_LEVEL,
25445                      1     WBS_SUB_LEVEL,
25446                      'WBS' INVERT_ID
25447               from   DUAL
25448             ) top_slice
25449           where
25450             prg.STRUCT_TYPE         =  'PRG'                       and
25451             prg.SUP_LEVEL           =  l_level                     and
25452             prg.SUB_LEVEL           =  l_level                     and
25453             wbs.WORKER_ID           =  p_worker_id                 and
25454             wbs.STRUCT_TYPE         =  'WBS'                       and
25455             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
25456             log.WORKER_ID           =  p_worker_id                 and
25457             log.EVENT_ID            =  wbs.EVENT_ID                and
25458             log.EVENT_TYPE          in ('WBS_CHANGE',
25459                                         'WBS_PUBLISH')             and
25460             wbs_hdr.PROJECT_ID      =  log.ATTRIBUTE1              and
25461             wbs_hdr.PLAN_VERSION_ID =  log.ATTRIBUTE3              and
25462             wbs_hdr.PLAN_VERSION_ID =  -1                          and
25463             wbs_hdr.WBS_VERSION_ID  =  wbs.STRUCT_VERSION_ID       and
25464             wbs_hdr.PROJECT_ID      =  prg.SUP_PROJECT_ID          and
25465             wbs_hdr.WBS_VERSION_ID  =  prg.SUP_ID                  and
25466             acr.WBS_ROLLUP_FLAG     =  'N'                         and
25467             acr.PRG_ROLLUP_FLAG     =  'N'                         and
25468             acr.PROJECT_ID          =  wbs.SUP_PROJECT_ID          and
25469             acr.PROJECT_ELEMENT_ID  =  wbs.SUB_EMT_ID              and
25470             acr.PROJECT_ID          =  wbs_hdr.PROJECT_ID          and
25471             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
25472             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+) and
25473             (wbs.SUP_LEVEL <> wbs.SUB_LEVEL or
25474              (wbs.SUP_LEVEL = 1 and
25475               wbs.SUB_LEVEL = 1))
25476           ) pjp,
25477           (
25478           select /*+ ordered */
25479             prg.SUP_PROJECT_ID,
25480             map.PROJECT_ORG_ID               SUP_PROJECT_ORG_ID,
25481             map.PROJECT_ORGANIZATION_ID      SUP_PROJECT_ORGANIZATION_ID,
25482             prg.SUP_ID,
25483             prg.SUP_EMT_ID,
25484             prg.SUP_LEVEL,
25485             prg.SUB_ID,
25486             prg.SUB_EMT_ID,
25487             prg.SUB_ROLLUP_ID,
25488             prg.RELATIONSHIP_TYPE            RELATIONSHIP_TYPE,
25489             'Y'                              PUSHUP_FLAG
25490           from
25491             PJI_PJP_PROJ_BATCH_MAP map,
25492             PJI_XBS_DENORM         prg,
25493             PJI_XBS_DENORM_DELTA   prg_delta
25494           where
25495             prg.STRUCT_TYPE          = 'PRG'                           and
25496             prg.RELATIONSHIP_TYPE    = 'LF'                            and
25497             prg.SUB_ROLLUP_ID        is not null                       and
25498             prg.SUB_LEVEL            = l_level                         and
25499             map.WORKER_ID            = p_worker_id                     and
25500             map.PROJECT_ID           = prg.SUP_PROJECT_ID              and
25501             p_worker_id              = prg_delta.WORKER_ID         (+) and
25502             prg.STRUCT_TYPE          = prg_delta.STRUCT_TYPE       (+) and
25503             prg.SUP_PROJECT_ID       = prg_delta.SUP_PROJECT_ID    (+) and
25504             prg.SUP_LEVEL            = prg_delta.SUP_LEVEL         (+) and
25505             prg.SUP_ID               = prg_delta.SUP_ID            (+) and
25506             prg.SUB_LEVEL            = prg_delta.SUB_LEVEL         (+) and
25507             prg.SUB_ID               = prg_delta.SUB_ID            (+) and
25508             prg.RELATIONSHIP_TYPE    = prg_delta.RELATIONSHIP_TYPE (+) and
25509             -1                       = prg_delta.SIGN              (+) and
25510             prg_delta.SUP_PROJECT_ID is null
25511           ) prg
25512         where
25513           pjp.WBS_VERSION_ID    = prg.SUB_ID            (+) and
25514           pjp.RELATIONSHIP_TYPE = prg.RELATIONSHIP_TYPE (+) and
25515           pjp.PUSHUP_FLAG       = prg.PUSHUP_FLAG       (+)
25516         group by
25517           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25518                  pjp.INSERT_FLAG, 'Y'),
25519           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25520                  null, prg.SUP_ID),
25521           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25522                  null, prg.SUP_EMT_ID),
25523           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25524                  l_level, prg.SUP_LEVEL),
25525           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25526                  pjp.PROJECT_ID,
25527                  prg.SUP_PROJECT_ID),
25528           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25529                  pjp.PROJECT_ORG_ID,
25530                  prg.SUP_PROJECT_ORG_ID),
25531           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25532                  pjp.PROJECT_ORGANIZATION_ID,
25533                  prg.SUP_PROJECT_ORGANIZATION_ID),
25534           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25535                  pjp.PROJECT_ELEMENT_ID,
25536                  prg.SUB_ROLLUP_ID),
25537           pjp.TIME_ID,
25538           pjp.PERIOD_TYPE_ID,
25539           pjp.CALENDAR_TYPE,
25540           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25541                  pjp.WBS_ROLLUP_FLAG, 'N'),
25542           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25543                  pjp.PRG_ROLLUP_FLAG, 'Y'),
25544           pjp.CURR_RECORD_TYPE_ID,
25545           pjp.CURRENCY_CODE
25546           )                          pjp1_i,
25547           PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
25548           PA_PROJ_WORKPLAN_ATTR      sup_wpa
25549         where
25550           pjp1_i.INSERT_FLAG  = 'Y'                                and
25551           pjp1_i.PROJECT_ID   = sup_fin_ver.PROJECT_ID         (+) and
25552           pjp1_i.SUP_ID       = sup_fin_ver.ELEMENT_VERSION_ID (+) and
25553           'STRUCTURE_WORKING' = sup_fin_ver.STATUS_CODE        (+) and
25554           pjp1_i.SUP_EMT_ID   = sup_wpa.PROJ_ELEMENT_ID        (+) and
25555           'N'                 = sup_wpa.WP_ENABLE_VERSION_FLAG (+) and
25556           (pjp1_i.SUP_ID is null or
25557            (pjp1_i.SUP_ID is not null and
25558             (sup_fin_ver.PROJECT_ID is not null or
25559              sup_wpa.PROJ_ELEMENT_ID is not null)));
25560     elsif (p_worker_id =9) then
25561       -- Query for Partition 9
25562 
25563         insert /*+ parallel(PJI_AC_AGGR_PJP1) */
25564                    into PJI_AC_AGGR_PJP1 partition(P9)
25565         (
25566           WORKER_ID,
25567           RECORD_TYPE,
25568           PRG_LEVEL,
25569           PROJECT_ID,
25570           PROJECT_ORG_ID,
25571           PROJECT_ORGANIZATION_ID,
25572           PROJECT_ELEMENT_ID,
25573           TIME_ID,
25574           PERIOD_TYPE_ID,
25575           CALENDAR_TYPE,
25576           WBS_ROLLUP_FLAG,
25577           PRG_ROLLUP_FLAG,
25578           CURR_RECORD_TYPE_ID,
25579           CURRENCY_CODE,
25580           REVENUE,
25581           INITIAL_FUNDING_AMOUNT,
25582           INITIAL_FUNDING_COUNT,
25583           ADDITIONAL_FUNDING_AMOUNT,
25584           ADDITIONAL_FUNDING_COUNT,
25585           CANCELLED_FUNDING_AMOUNT,
25586           CANCELLED_FUNDING_COUNT,
25587           FUNDING_ADJUSTMENT_AMOUNT,
25588           FUNDING_ADJUSTMENT_COUNT,
25589           REVENUE_WRITEOFF,
25590           AR_INVOICE_AMOUNT,
25591           AR_INVOICE_COUNT,
25592           AR_CASH_APPLIED_AMOUNT,
25593           AR_INVOICE_WRITE_OFF_AMOUNT,
25594           AR_INVOICE_WRITEOFF_COUNT,
25595           AR_CREDIT_MEMO_AMOUNT,
25596           AR_CREDIT_MEMO_COUNT,
25597           UNBILLED_RECEIVABLES,
25598           UNEARNED_REVENUE,
25599           AR_UNAPPR_INVOICE_AMOUNT,
25600           AR_UNAPPR_INVOICE_COUNT,
25601           AR_APPR_INVOICE_AMOUNT,
25602           AR_APPR_INVOICE_COUNT,
25603           AR_AMOUNT_DUE,
25604           AR_COUNT_DUE,
25605           AR_AMOUNT_OVERDUE,
25606           AR_COUNT_OVERDUE,
25607           CUSTOM1,
25608           CUSTOM2,
25609           CUSTOM3,
25610           CUSTOM4,
25611           CUSTOM5,
25612           CUSTOM6,
25613           CUSTOM7,
25614           CUSTOM8,
25615           CUSTOM9,
25616           CUSTOM10,
25617           CUSTOM11,
25618           CUSTOM12,
25619           CUSTOM13,
25620           CUSTOM14,
25621           CUSTOM15
25622         )
25623         select
25624           pjp1_i.WORKER_ID,
25625           pjp1_i.RECORD_TYPE,
25626           pjp1_i.PRG_LEVEL,
25627           pjp1_i.PROJECT_ID,
25628           pjp1_i.PROJECT_ORG_ID,
25629           pjp1_i.PROJECT_ORGANIZATION_ID,
25630           pjp1_i.PROJECT_ELEMENT_ID,
25631           pjp1_i.TIME_ID,
25632           pjp1_i.PERIOD_TYPE_ID,
25633           pjp1_i.CALENDAR_TYPE,
25634           pjp1_i.WBS_ROLLUP_FLAG,
25635           pjp1_i.PRG_ROLLUP_FLAG,
25636           pjp1_i.CURR_RECORD_TYPE_ID,
25637           pjp1_i.CURRENCY_CODE,
25638           pjp1_i.REVENUE,
25639           pjp1_i.INITIAL_FUNDING_AMOUNT,
25640           pjp1_i.INITIAL_FUNDING_COUNT,
25641           pjp1_i.ADDITIONAL_FUNDING_AMOUNT,
25642           pjp1_i.ADDITIONAL_FUNDING_COUNT,
25643           pjp1_i.CANCELLED_FUNDING_AMOUNT,
25644           pjp1_i.CANCELLED_FUNDING_COUNT,
25645           pjp1_i.FUNDING_ADJUSTMENT_AMOUNT,
25646           pjp1_i.FUNDING_ADJUSTMENT_COUNT,
25647           pjp1_i.REVENUE_WRITEOFF,
25648           pjp1_i.AR_INVOICE_AMOUNT,
25649           pjp1_i.AR_INVOICE_COUNT,
25650           pjp1_i.AR_CASH_APPLIED_AMOUNT,
25651           pjp1_i.AR_INVOICE_WRITE_OFF_AMOUNT,
25652           pjp1_i.AR_INVOICE_WRITEOFF_COUNT,
25653           pjp1_i.AR_CREDIT_MEMO_AMOUNT,
25654           pjp1_i.AR_CREDIT_MEMO_COUNT,
25655           pjp1_i.UNBILLED_RECEIVABLES,
25656           pjp1_i.UNEARNED_REVENUE,
25657           pjp1_i.AR_UNAPPR_INVOICE_AMOUNT,
25658           pjp1_i.AR_UNAPPR_INVOICE_COUNT,
25659           pjp1_i.AR_APPR_INVOICE_AMOUNT,
25660           pjp1_i.AR_APPR_INVOICE_COUNT,
25661           pjp1_i.AR_AMOUNT_DUE,
25662           pjp1_i.AR_COUNT_DUE,
25663           pjp1_i.AR_AMOUNT_OVERDUE,
25664           pjp1_i.AR_COUNT_OVERDUE,
25665           pjp1_i.CUSTOM1,
25666           pjp1_i.CUSTOM2,
25667           pjp1_i.CUSTOM3,
25668           pjp1_i.CUSTOM4,
25669           pjp1_i.CUSTOM5,
25670           pjp1_i.CUSTOM6,
25671           pjp1_i.CUSTOM7,
25672           pjp1_i.CUSTOM8,
25673           pjp1_i.CUSTOM9,
25674           pjp1_i.CUSTOM10,
25675           pjp1_i.CUSTOM11,
25676           pjp1_i.CUSTOM12,
25677           pjp1_i.CUSTOM13,
25678           pjp1_i.CUSTOM14,
25679           pjp1_i.CUSTOM15
25680         from
25681           (
25682         select
25683           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25684                  pjp.INSERT_FLAG, 'Y')             INSERT_FLAG,
25685           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25686                  null, prg.SUP_ID)                 SUP_ID,
25687           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25688                  null, prg.SUP_EMT_ID)             SUP_EMT_ID,
25689           p_worker_id                              WORKER_ID,
25690           'W'                                      RECORD_TYPE,
25691           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25692                  l_level, prg.SUP_LEVEL)           PRG_LEVEL,
25693           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25694                  pjp.PROJECT_ID,
25695                  prg.SUP_PROJECT_ID)               PROJECT_ID,
25696           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25697                  pjp.PROJECT_ORG_ID,
25698                  prg.SUP_PROJECT_ORG_ID)           PROJECT_ORG_ID,
25699           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25700                  pjp.PROJECT_ORGANIZATION_ID,
25701                  prg.SUP_PROJECT_ORGANIZATION_ID)  PROJECT_ORGANIZATION_ID,
25702           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25703                  pjp.PROJECT_ELEMENT_ID,
25704                  prg.SUB_ROLLUP_ID)                PROJECT_ELEMENT_ID,
25705           pjp.TIME_ID,
25706           pjp.PERIOD_TYPE_ID,
25707           pjp.CALENDAR_TYPE,
25708           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25709                  pjp.WBS_ROLLUP_FLAG, 'N')         WBS_ROLLUP_FLAG,
25710           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
25711                  pjp.PRG_ROLLUP_FLAG, 'Y')         PRG_ROLLUP_FLAG,
25712           pjp.CURR_RECORD_TYPE_ID,
25713           pjp.CURRENCY_CODE,
25714           sum(pjp.REVENUE)                         REVENUE,
25715           sum(pjp.INITIAL_FUNDING_AMOUNT)          INITIAL_FUNDING_AMOUNT,
25716           sum(pjp.INITIAL_FUNDING_COUNT)           INITIAL_FUNDING_COUNT,
25717           sum(pjp.ADDITIONAL_FUNDING_AMOUNT)       ADDITIONAL_FUNDING_AMOUNT,
25718           sum(pjp.ADDITIONAL_FUNDING_COUNT)        ADDITIONAL_FUNDING_COUNT,
25719           sum(pjp.CANCELLED_FUNDING_AMOUNT)        CANCELLED_FUNDING_AMOUNT,
25720           sum(pjp.CANCELLED_FUNDING_COUNT)         CANCELLED_FUNDING_COUNT,
25721           sum(pjp.FUNDING_ADJUSTMENT_AMOUNT)       FUNDING_ADJUSTMENT_AMOUNT,
25722           sum(pjp.FUNDING_ADJUSTMENT_COUNT)        FUNDING_ADJUSTMENT_COUNT,
25723           sum(pjp.REVENUE_WRITEOFF)                REVENUE_WRITEOFF,
25724           sum(pjp.AR_INVOICE_AMOUNT)               AR_INVOICE_AMOUNT,
25725           sum(pjp.AR_INVOICE_COUNT)                AR_INVOICE_COUNT,
25726           sum(pjp.AR_CASH_APPLIED_AMOUNT)          AR_CASH_APPLIED_AMOUNT,
25727           sum(pjp.AR_INVOICE_WRITE_OFF_AMOUNT)     AR_INVOICE_WRITE_OFF_AMOUNT,
25728           sum(pjp.AR_INVOICE_WRITEOFF_COUNT)       AR_INVOICE_WRITEOFF_COUNT,
25729           sum(pjp.AR_CREDIT_MEMO_AMOUNT)           AR_CREDIT_MEMO_AMOUNT,
25730           sum(pjp.AR_CREDIT_MEMO_COUNT)            AR_CREDIT_MEMO_COUNT,
25731           sum(pjp.UNBILLED_RECEIVABLES)            UNBILLED_RECEIVABLES,
25732           sum(pjp.UNEARNED_REVENUE)                UNEARNED_REVENUE,
25733           sum(pjp.AR_UNAPPR_INVOICE_AMOUNT)        AR_UNAPPR_INVOICE_AMOUNT,
25734           sum(pjp.AR_UNAPPR_INVOICE_COUNT)         AR_UNAPPR_INVOICE_COUNT,
25735           sum(pjp.AR_APPR_INVOICE_AMOUNT)          AR_APPR_INVOICE_AMOUNT,
25736           sum(pjp.AR_APPR_INVOICE_COUNT)           AR_APPR_INVOICE_COUNT,
25737           sum(pjp.AR_AMOUNT_DUE)                   AR_AMOUNT_DUE,
25738           sum(pjp.AR_COUNT_DUE)                    AR_COUNT_DUE,
25739           sum(pjp.AR_AMOUNT_OVERDUE)               AR_AMOUNT_OVERDUE,
25740           sum(pjp.AR_COUNT_OVERDUE)                AR_COUNT_OVERDUE,
25741           sum(pjp.CUSTOM1)                         CUSTOM1,
25742           sum(pjp.CUSTOM2)                         CUSTOM2,
25743           sum(pjp.CUSTOM3)                         CUSTOM3,
25744           sum(pjp.CUSTOM4)                         CUSTOM4,
25745           sum(pjp.CUSTOM5)                         CUSTOM5,
25746           sum(pjp.CUSTOM6)                         CUSTOM6,
25747           sum(pjp.CUSTOM7)                         CUSTOM7,
25748           sum(pjp.CUSTOM8)                         CUSTOM8,
25749           sum(pjp.CUSTOM9)                         CUSTOM9,
25750           sum(pjp.CUSTOM10)                        CUSTOM10,
25751           sum(pjp.CUSTOM11)                        CUSTOM11,
25752           sum(pjp.CUSTOM12)                        CUSTOM12,
25753           sum(pjp.CUSTOM13)                        CUSTOM13,
25754           sum(pjp.CUSTOM14)                        CUSTOM14,
25755           sum(pjp.CUSTOM15)                        CUSTOM15
25756         from
25757           (
25758           select /*+ ordered index(wbs PA_XBS_DENORM_N2) parallel(pjp1) */    -- changed for bug 5927368
25759                  -- get incremental task level amounts from source and
25760                  -- program rollup amounts from interim
25761             wbs_hdr.WBS_VERSION_ID,
25762             'LF'                                      RELATIONSHIP_TYPE,
25763             decode(top_slice.INVERT_ID,
25764                    'PRJ', 'Y',
25765                           decode(wbs.SUB_LEVEL,
25766                                  1, 'Y', 'N'))        PUSHUP_FLAG,
25767             'Y'                                       INSERT_FLAG,
25768             pjp1.PROJECT_ID,
25769             pjp1.PROJECT_ORG_ID,
25770             pjp1.PROJECT_ORGANIZATION_ID,
25771             decode(top_slice.INVERT_ID,
25772                    'PRJ', prg.SUP_EMT_ID,
25773                           decode(wbs.SUB_LEVEL,
25774                                  1, prg.SUP_EMT_ID,
25775                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
25776             pjp1.TIME_ID,
25777             pjp1.PERIOD_TYPE_ID,
25778             pjp1.CALENDAR_TYPE,
25779             'Y'                                       WBS_ROLLUP_FLAG,
25780             pjp1.PRG_ROLLUP_FLAG,
25781             pjp1.CURR_RECORD_TYPE_ID,
25782             pjp1.CURRENCY_CODE,
25783             pjp1.REVENUE,
25784             pjp1.INITIAL_FUNDING_AMOUNT,
25785             pjp1.INITIAL_FUNDING_COUNT,
25786             pjp1.ADDITIONAL_FUNDING_AMOUNT,
25787             pjp1.ADDITIONAL_FUNDING_COUNT,
25788             pjp1.CANCELLED_FUNDING_AMOUNT,
25789             pjp1.CANCELLED_FUNDING_COUNT,
25790             pjp1.FUNDING_ADJUSTMENT_AMOUNT,
25791             pjp1.FUNDING_ADJUSTMENT_COUNT,
25792             pjp1.REVENUE_WRITEOFF,
25793             pjp1.AR_INVOICE_AMOUNT,
25794             pjp1.AR_INVOICE_COUNT,
25795             pjp1.AR_CASH_APPLIED_AMOUNT,
25796             pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
25797             pjp1.AR_INVOICE_WRITEOFF_COUNT,
25798             pjp1.AR_CREDIT_MEMO_AMOUNT,
25799             pjp1.AR_CREDIT_MEMO_COUNT,
25800             pjp1.UNBILLED_RECEIVABLES,
25801             pjp1.UNEARNED_REVENUE,
25802             pjp1.AR_UNAPPR_INVOICE_AMOUNT,
25803             pjp1.AR_UNAPPR_INVOICE_COUNT,
25804             pjp1.AR_APPR_INVOICE_AMOUNT,
25805             pjp1.AR_APPR_INVOICE_COUNT,
25806             pjp1.AR_AMOUNT_DUE,
25807             pjp1.AR_COUNT_DUE,
25808             pjp1.AR_AMOUNT_OVERDUE,
25809             pjp1.AR_COUNT_OVERDUE,
25810             pjp1.CUSTOM1,
25811             pjp1.CUSTOM2,
25812             pjp1.CUSTOM3,
25813             pjp1.CUSTOM4,
25814             pjp1.CUSTOM5,
25815             pjp1.CUSTOM6,
25816             pjp1.CUSTOM7,
25817             pjp1.CUSTOM8,
25818             pjp1.CUSTOM9,
25819             pjp1.CUSTOM10,
25820             pjp1.CUSTOM11,
25821             pjp1.CUSTOM12,
25822             pjp1.CUSTOM13,
25823             pjp1.CUSTOM14,
25824             pjp1.CUSTOM15
25825           from
25826             PJI_AC_AGGR_PJP1   pjp1,
25827             PJI_PJP_WBS_HEADER wbs_hdr,
25828             PA_XBS_DENORM      wbs,
25829             PJI_XBS_DENORM     prg,
25830             (
25831               select 1     WBS_SUP_LEVEL,
25832                      1     WBS_SUB_LEVEL,
25833                      'PRJ' INVERT_ID
25834               from   DUAL
25835               union all
25836               select 1     WBS_SUP_LEVEL,
25837                      1     WBS_SUB_LEVEL,
25838                      'WBS' INVERT_ID
25839               from   DUAL
25840             ) top_slice
25841           where
25842             prg.STRUCT_TYPE         =  'PRG'                       and
25843             prg.SUP_LEVEL           =  l_level                     and
25844             prg.SUB_LEVEL           =  l_level                     and
25845             wbs.STRUCT_TYPE         =  'WBS'                       and
25846             ((wbs.SUP_LEVEL = 1 and
25847               wbs.SUB_LEVEL = 1) or
25848              (wbs.SUP_LEVEL <> wbs.SUB_LEVEL))                     and
25849             wbs.STRUCT_VERSION_ID   =  prg.SUP_ID                  and
25850             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
25851             pjp1.WORKER_ID          =  p_worker_id                 and
25852             pjp1.PRG_LEVEL          in (0, l_level)                and
25853             pjp1.WBS_ROLLUP_FLAG    =  'N'                         and
25854             pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                  and
25855             wbs_hdr.PLAN_VERSION_ID =  -1                          and
25856             pjp1.PROJECT_ID         =  wbs_hdr.PROJECT_ID          and
25857             wbs.STRUCT_VERSION_ID   =  wbs_hdr.WBS_VERSION_ID      and
25858             pjp1.PROJECT_ELEMENT_ID =  wbs.SUB_EMT_ID              and
25859             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
25860             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+)
25861           union all
25862           select /*+ ordered parallel(pjp1) */           -- changed for bug 5927368
25863                  -- get incremental project level amounts from source
25864             wbs_hdr.WBS_VERSION_ID,
25865             'LF'                                   RELATIONSHIP_TYPE,
25866             'Y'                                    PUSHUP_FLAG,
25867             'N'                                    INSERT_FLAG,
25868             pjp1.PROJECT_ID,
25869             pjp1.PROJECT_ORG_ID,
25870             pjp1.PROJECT_ORGANIZATION_ID,
25871             pjp1.PROJECT_ELEMENT_ID,
25872             pjp1.TIME_ID,
25873             pjp1.PERIOD_TYPE_ID,
25874             pjp1.CALENDAR_TYPE,
25875             'Y'                                    WBS_ROLLUP_FLAG,
25876             pjp1.PRG_ROLLUP_FLAG,
25877             pjp1.CURR_RECORD_TYPE_ID,
25878             pjp1.CURRENCY_CODE,
25879             pjp1.REVENUE,
25880             pjp1.INITIAL_FUNDING_AMOUNT,
25881             pjp1.INITIAL_FUNDING_COUNT,
25882             pjp1.ADDITIONAL_FUNDING_AMOUNT,
25883             pjp1.ADDITIONAL_FUNDING_COUNT,
25884             pjp1.CANCELLED_FUNDING_AMOUNT,
25885             pjp1.CANCELLED_FUNDING_COUNT,
25886             pjp1.FUNDING_ADJUSTMENT_AMOUNT,
25887             pjp1.FUNDING_ADJUSTMENT_COUNT,
25888             pjp1.REVENUE_WRITEOFF,
25889             pjp1.AR_INVOICE_AMOUNT,
25890             pjp1.AR_INVOICE_COUNT,
25891             pjp1.AR_CASH_APPLIED_AMOUNT,
25892             pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
25893             pjp1.AR_INVOICE_WRITEOFF_COUNT,
25894             pjp1.AR_CREDIT_MEMO_AMOUNT,
25895             pjp1.AR_CREDIT_MEMO_COUNT,
25896             pjp1.UNBILLED_RECEIVABLES,
25897             pjp1.UNEARNED_REVENUE,
25898             pjp1.AR_UNAPPR_INVOICE_AMOUNT,
25899             pjp1.AR_UNAPPR_INVOICE_COUNT,
25900             pjp1.AR_APPR_INVOICE_AMOUNT,
25901             pjp1.AR_APPR_INVOICE_COUNT,
25902             pjp1.AR_AMOUNT_DUE,
25903             pjp1.AR_COUNT_DUE,
25904             pjp1.AR_AMOUNT_OVERDUE,
25905             pjp1.AR_COUNT_OVERDUE,
25906             pjp1.CUSTOM1,
25907             pjp1.CUSTOM2,
25908             pjp1.CUSTOM3,
25909             pjp1.CUSTOM4,
25910             pjp1.CUSTOM5,
25911             pjp1.CUSTOM6,
25912             pjp1.CUSTOM7,
25913             pjp1.CUSTOM8,
25914             pjp1.CUSTOM9,
25915             pjp1.CUSTOM10,
25916             pjp1.CUSTOM11,
25917             pjp1.CUSTOM12,
25918             pjp1.CUSTOM13,
25919             pjp1.CUSTOM14,
25920             pjp1.CUSTOM15
25921           from
25922             PJI_AC_AGGR_PJP1   pjp1,
25923             PJI_PJP_WBS_HEADER wbs_hdr,
25924             PJI_XBS_DENORM     prg
25925           where
25926             prg.STRUCT_TYPE         = 'PRG'                              and
25927             prg.SUP_LEVEL           = l_level                            and
25928             prg.SUB_LEVEL           = l_level                            and
25929             pjp1.WORKER_ID          = p_worker_id                        and
25930             pjp1.PROJECT_ID         = prg.SUP_PROJECT_ID                 and
25931             pjp1.PROJECT_ELEMENT_ID = prg.SUP_EMT_ID                     and
25932             pjp1.PRG_LEVEL          = 0                                  and
25933             pjp1.WBS_ROLLUP_FLAG    = 'N'                                and
25934             pjp1.PRG_ROLLUP_FLAG    = 'N'                                and
25935             wbs_hdr.PROJECT_ID      = pjp1.PROJECT_ID                    and
25936             wbs_hdr.PLAN_VERSION_ID = -1                                 and
25937             wbs_hdr.WBS_VERSION_ID  = prg.SUP_ID
25938           union all
25939           select /*+ ordered
25940                      index(fpr PJI_AC_XBR_ACCUM_F_N1) */
25941                  -- get delta task level amounts from Reporting Lines
25942             wbs_hdr.WBS_VERSION_ID,
25943             'LF'                                   RELATIONSHIP_TYPE,
25944             decode(log.EVENT_TYPE,
25945                    'WBS_CHANGE', 'Y',
25946                    'WBS_PUBLISH', 'N')             PUSHUP_FLAG,
25947             'Y'                                    INSERT_FLAG,
25948             acr.PROJECT_ID,
25949             acr.PROJECT_ORG_ID,
25950             acr.PROJECT_ORGANIZATION_ID,
25951             decode(top_slice.INVERT_ID,
25952                    'PRJ', prg.SUP_EMT_ID,
25953                           decode(wbs.SUB_LEVEL,
25954                                  1, prg.SUP_EMT_ID,
25955                                     wbs.SUP_EMT_ID))
25956                                                    PROJECT_ELEMENT_ID,
25957             acr.TIME_ID,
25958             acr.PERIOD_TYPE_ID,
25959             acr.CALENDAR_TYPE,
25960             'Y'                                    WBS_ROLLUP_FLAG,
25961             acr.PRG_ROLLUP_FLAG,
25962             acr.CURR_RECORD_TYPE_ID,
25963             acr.CURRENCY_CODE,
25964             wbs.SIGN * acr.REVENUE                 REVENUE,
25965             wbs.SIGN * acr.INITIAL_FUNDING_AMOUNT  INITIAL_FUNDING_AMOUNT,
25966             wbs.SIGN * acr.INITIAL_FUNDING_COUNT   INITIAL_FUNDING_COUNT,
25967             wbs.SIGN * acr.ADDITIONAL_FUNDING_AMOUNT
25968                                                    ADDITIONAL_FUNDING_AMOUNT,
25969             wbs.SIGN * acr.ADDITIONAL_FUNDING_COUNT
25970                                                    ADDITIONAL_FUNDING_COUNT,
25971             wbs.SIGN * acr.CANCELLED_FUNDING_AMOUNT
25972                                                    CANCELLED_FUNDING_AMOUNT,
25973             wbs.SIGN * acr.CANCELLED_FUNDING_COUNT CANCELLED_FUNDING_COUNT,
25974             wbs.SIGN * acr.FUNDING_ADJUSTMENT_AMOUNT
25975                                                    FUNDING_ADJUSTMENT_AMOUNT,
25976             wbs.SIGN * acr.FUNDING_ADJUSTMENT_COUNT
25977                                                    FUNDING_ADJUSTMENT_COUNT,
25978             wbs.SIGN * acr.REVENUE_WRITEOFF        REVENUE_WRITEOFF,
25979             wbs.SIGN * acr.AR_INVOICE_AMOUNT       AR_INVOICE_AMOUNT,
25980             wbs.SIGN * acr.AR_INVOICE_COUNT        AR_INVOICE_COUNT,
25981             wbs.SIGN * acr.AR_CASH_APPLIED_AMOUNT  AR_CASH_APPLIED_AMOUNT,
25982             wbs.SIGN * acr.AR_INVOICE_WRITE_OFF_AMOUNT
25983                                                    AR_INVOICE_WRITE_OFF_AMOUNT,
25984             wbs.SIGN * acr.AR_INVOICE_WRITEOFF_COUNT
25985                                                    AR_INVOICE_WRITEOFF_COUNT,
25986             wbs.SIGN * acr.AR_CREDIT_MEMO_AMOUNT   AR_CREDIT_MEMO_AMOUNT,
25987             wbs.SIGN * acr.AR_CREDIT_MEMO_COUNT    AR_CREDIT_MEMO_COUNT,
25988             wbs.SIGN * acr.UNBILLED_RECEIVABLES    UNBILLED_RECEIVABLES,
25989             wbs.SIGN * acr.UNEARNED_REVENUE        UNEARNED_REVENUE,
25990             wbs.SIGN * acr.AR_UNAPPR_INVOICE_AMOUNT
25991                                                    AR_UNAPPR_INVOICE_AMOUNT,
25992             wbs.SIGN * acr.AR_UNAPPR_INVOICE_COUNT AR_UNAPPR_INVOICE_COUNT,
25993             wbs.SIGN * acr.AR_APPR_INVOICE_AMOUNT  AR_APPR_INVOICE_AMOUNT,
25994             wbs.SIGN * acr.AR_APPR_INVOICE_COUNT   AR_APPR_INVOICE_COUNT,
25995             wbs.SIGN * acr.AR_AMOUNT_DUE           AR_AMOUNT_DUE,
25996             wbs.SIGN * acr.AR_COUNT_DUE            AR_COUNT_DUE,
25997             wbs.SIGN * acr.AR_AMOUNT_OVERDUE       AR_AMOUNT_OVERDUE,
25998             wbs.SIGN * acr.AR_COUNT_OVERDUE        AR_COUNT_OVERDUE,
25999             wbs.SIGN * acr.CUSTOM1                 CUSTOM1,
26000             wbs.SIGN * acr.CUSTOM2                 CUSTOM2,
26001             wbs.SIGN * acr.CUSTOM3                 CUSTOM3,
26002             wbs.SIGN * acr.CUSTOM4                 CUSTOM4,
26003             wbs.SIGN * acr.CUSTOM5                 CUSTOM5,
26004             wbs.SIGN * acr.CUSTOM6                 CUSTOM6,
26005             wbs.SIGN * acr.CUSTOM7                 CUSTOM7,
26006             wbs.SIGN * acr.CUSTOM8                 CUSTOM8,
26007             wbs.SIGN * acr.CUSTOM9                 CUSTOM9,
26008             wbs.SIGN * acr.CUSTOM10                CUSTOM10,
26009             wbs.SIGN * acr.CUSTOM11                CUSTOM11,
26010             wbs.SIGN * acr.CUSTOM12                CUSTOM12,
26011             wbs.SIGN * acr.CUSTOM13                CUSTOM13,
26012             wbs.SIGN * acr.CUSTOM14                CUSTOM14,
26013             wbs.SIGN * acr.CUSTOM15                CUSTOM15
26014           from
26015             PJI_PA_PROJ_EVENTS_LOG log,
26016             PJI_PJP_WBS_HEADER     wbs_hdr,
26017             PJI_XBS_DENORM_DELTA   wbs,
26018             PJI_XBS_DENORM         prg,
26019             PJI_AC_XBS_ACCUM_F     acr,
26020             (
26021               select 1     WBS_SUP_LEVEL,
26022                      1     WBS_SUB_LEVEL,
26023                      'PRJ' INVERT_ID
26024               from   DUAL
26025               union all
26026               select 1     WBS_SUP_LEVEL,
26027                      1     WBS_SUB_LEVEL,
26028                      'WBS' INVERT_ID
26029               from   DUAL
26030             ) top_slice
26031           where
26032             prg.STRUCT_TYPE         =  'PRG'                       and
26033             prg.SUP_LEVEL           =  l_level                     and
26034             prg.SUB_LEVEL           =  l_level                     and
26035             wbs.WORKER_ID           =  p_worker_id                 and
26036             wbs.STRUCT_TYPE         =  'WBS'                       and
26037             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
26038             log.WORKER_ID           =  p_worker_id                 and
26039             log.EVENT_ID            =  wbs.EVENT_ID                and
26040             log.EVENT_TYPE          in ('WBS_CHANGE',
26041                                         'WBS_PUBLISH')             and
26042             wbs_hdr.PROJECT_ID      =  log.ATTRIBUTE1              and
26043             wbs_hdr.PLAN_VERSION_ID =  log.ATTRIBUTE3              and
26044             wbs_hdr.PLAN_VERSION_ID =  -1                          and
26045             wbs_hdr.WBS_VERSION_ID  =  wbs.STRUCT_VERSION_ID       and
26046             wbs_hdr.PROJECT_ID      =  prg.SUP_PROJECT_ID          and
26047             wbs_hdr.WBS_VERSION_ID  =  prg.SUP_ID                  and
26048             acr.WBS_ROLLUP_FLAG     =  'N'                         and
26049             acr.PRG_ROLLUP_FLAG     =  'N'                         and
26050             acr.PROJECT_ID          =  wbs.SUP_PROJECT_ID          and
26051             acr.PROJECT_ELEMENT_ID  =  wbs.SUB_EMT_ID              and
26052             acr.PROJECT_ID          =  wbs_hdr.PROJECT_ID          and
26053             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
26054             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+) and
26055             (wbs.SUP_LEVEL <> wbs.SUB_LEVEL or
26056              (wbs.SUP_LEVEL = 1 and
26057               wbs.SUB_LEVEL = 1))
26058           ) pjp,
26059           (
26060           select /*+ ordered */
26061             prg.SUP_PROJECT_ID,
26062             map.PROJECT_ORG_ID               SUP_PROJECT_ORG_ID,
26063             map.PROJECT_ORGANIZATION_ID      SUP_PROJECT_ORGANIZATION_ID,
26064             prg.SUP_ID,
26065             prg.SUP_EMT_ID,
26066             prg.SUP_LEVEL,
26067             prg.SUB_ID,
26068             prg.SUB_EMT_ID,
26069             prg.SUB_ROLLUP_ID,
26070             prg.RELATIONSHIP_TYPE            RELATIONSHIP_TYPE,
26071             'Y'                              PUSHUP_FLAG
26072           from
26073             PJI_PJP_PROJ_BATCH_MAP map,
26074             PJI_XBS_DENORM         prg,
26075             PJI_XBS_DENORM_DELTA   prg_delta
26076           where
26077             prg.STRUCT_TYPE          = 'PRG'                           and
26078             prg.RELATIONSHIP_TYPE    = 'LF'                            and
26079             prg.SUB_ROLLUP_ID        is not null                       and
26080             prg.SUB_LEVEL            = l_level                         and
26081             map.WORKER_ID            = p_worker_id                     and
26082             map.PROJECT_ID           = prg.SUP_PROJECT_ID              and
26083             p_worker_id              = prg_delta.WORKER_ID         (+) and
26084             prg.STRUCT_TYPE          = prg_delta.STRUCT_TYPE       (+) and
26085             prg.SUP_PROJECT_ID       = prg_delta.SUP_PROJECT_ID    (+) and
26086             prg.SUP_LEVEL            = prg_delta.SUP_LEVEL         (+) and
26087             prg.SUP_ID               = prg_delta.SUP_ID            (+) and
26088             prg.SUB_LEVEL            = prg_delta.SUB_LEVEL         (+) and
26089             prg.SUB_ID               = prg_delta.SUB_ID            (+) and
26090             prg.RELATIONSHIP_TYPE    = prg_delta.RELATIONSHIP_TYPE (+) and
26091             -1                       = prg_delta.SIGN              (+) and
26092             prg_delta.SUP_PROJECT_ID is null
26093           ) prg
26094         where
26095           pjp.WBS_VERSION_ID    = prg.SUB_ID            (+) and
26096           pjp.RELATIONSHIP_TYPE = prg.RELATIONSHIP_TYPE (+) and
26097           pjp.PUSHUP_FLAG       = prg.PUSHUP_FLAG       (+)
26098         group by
26099           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26100                  pjp.INSERT_FLAG, 'Y'),
26101           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26102                  null, prg.SUP_ID),
26103           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26104                  null, prg.SUP_EMT_ID),
26105           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26106                  l_level, prg.SUP_LEVEL),
26107           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26108                  pjp.PROJECT_ID,
26109                  prg.SUP_PROJECT_ID),
26110           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26111                  pjp.PROJECT_ORG_ID,
26112                  prg.SUP_PROJECT_ORG_ID),
26113           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26114                  pjp.PROJECT_ORGANIZATION_ID,
26115                  prg.SUP_PROJECT_ORGANIZATION_ID),
26116           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26117                  pjp.PROJECT_ELEMENT_ID,
26118                  prg.SUB_ROLLUP_ID),
26119           pjp.TIME_ID,
26120           pjp.PERIOD_TYPE_ID,
26121           pjp.CALENDAR_TYPE,
26122           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26123                  pjp.WBS_ROLLUP_FLAG, 'N'),
26124           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26125                  pjp.PRG_ROLLUP_FLAG, 'Y'),
26126           pjp.CURR_RECORD_TYPE_ID,
26127           pjp.CURRENCY_CODE
26128           )                          pjp1_i,
26129           PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
26130           PA_PROJ_WORKPLAN_ATTR      sup_wpa
26131         where
26132           pjp1_i.INSERT_FLAG  = 'Y'                                and
26133           pjp1_i.PROJECT_ID   = sup_fin_ver.PROJECT_ID         (+) and
26134           pjp1_i.SUP_ID       = sup_fin_ver.ELEMENT_VERSION_ID (+) and
26135           'STRUCTURE_WORKING' = sup_fin_ver.STATUS_CODE        (+) and
26136           pjp1_i.SUP_EMT_ID   = sup_wpa.PROJ_ELEMENT_ID        (+) and
26137           'N'                 = sup_wpa.WP_ENABLE_VERSION_FLAG (+) and
26138           (pjp1_i.SUP_ID is null or
26139            (pjp1_i.SUP_ID is not null and
26140             (sup_fin_ver.PROJECT_ID is not null or
26141              sup_wpa.PROJ_ELEMENT_ID is not null)));
26142     elsif (p_worker_id =10) then
26143       -- Query for Partition 10
26144 
26145         insert /*+ parallel(PJI_AC_AGGR_PJP1) */
26146                    into PJI_AC_AGGR_PJP1 partition(P10)
26147         (
26148           WORKER_ID,
26149           RECORD_TYPE,
26150           PRG_LEVEL,
26151           PROJECT_ID,
26152           PROJECT_ORG_ID,
26153           PROJECT_ORGANIZATION_ID,
26154           PROJECT_ELEMENT_ID,
26155           TIME_ID,
26156           PERIOD_TYPE_ID,
26157           CALENDAR_TYPE,
26158           WBS_ROLLUP_FLAG,
26159           PRG_ROLLUP_FLAG,
26160           CURR_RECORD_TYPE_ID,
26161           CURRENCY_CODE,
26162           REVENUE,
26163           INITIAL_FUNDING_AMOUNT,
26164           INITIAL_FUNDING_COUNT,
26165           ADDITIONAL_FUNDING_AMOUNT,
26166           ADDITIONAL_FUNDING_COUNT,
26167           CANCELLED_FUNDING_AMOUNT,
26168           CANCELLED_FUNDING_COUNT,
26169           FUNDING_ADJUSTMENT_AMOUNT,
26170           FUNDING_ADJUSTMENT_COUNT,
26171           REVENUE_WRITEOFF,
26172           AR_INVOICE_AMOUNT,
26173           AR_INVOICE_COUNT,
26174           AR_CASH_APPLIED_AMOUNT,
26175           AR_INVOICE_WRITE_OFF_AMOUNT,
26176           AR_INVOICE_WRITEOFF_COUNT,
26177           AR_CREDIT_MEMO_AMOUNT,
26178           AR_CREDIT_MEMO_COUNT,
26179           UNBILLED_RECEIVABLES,
26180           UNEARNED_REVENUE,
26181           AR_UNAPPR_INVOICE_AMOUNT,
26182           AR_UNAPPR_INVOICE_COUNT,
26183           AR_APPR_INVOICE_AMOUNT,
26184           AR_APPR_INVOICE_COUNT,
26185           AR_AMOUNT_DUE,
26186           AR_COUNT_DUE,
26187           AR_AMOUNT_OVERDUE,
26188           AR_COUNT_OVERDUE,
26189           CUSTOM1,
26190           CUSTOM2,
26191           CUSTOM3,
26192           CUSTOM4,
26193           CUSTOM5,
26194           CUSTOM6,
26195           CUSTOM7,
26196           CUSTOM8,
26197           CUSTOM9,
26198           CUSTOM10,
26199           CUSTOM11,
26200           CUSTOM12,
26201           CUSTOM13,
26202           CUSTOM14,
26203           CUSTOM15
26204         )
26205         select
26206           pjp1_i.WORKER_ID,
26207           pjp1_i.RECORD_TYPE,
26208           pjp1_i.PRG_LEVEL,
26209           pjp1_i.PROJECT_ID,
26210           pjp1_i.PROJECT_ORG_ID,
26211           pjp1_i.PROJECT_ORGANIZATION_ID,
26212           pjp1_i.PROJECT_ELEMENT_ID,
26213           pjp1_i.TIME_ID,
26214           pjp1_i.PERIOD_TYPE_ID,
26215           pjp1_i.CALENDAR_TYPE,
26216           pjp1_i.WBS_ROLLUP_FLAG,
26217           pjp1_i.PRG_ROLLUP_FLAG,
26218           pjp1_i.CURR_RECORD_TYPE_ID,
26219           pjp1_i.CURRENCY_CODE,
26220           pjp1_i.REVENUE,
26221           pjp1_i.INITIAL_FUNDING_AMOUNT,
26222           pjp1_i.INITIAL_FUNDING_COUNT,
26223           pjp1_i.ADDITIONAL_FUNDING_AMOUNT,
26224           pjp1_i.ADDITIONAL_FUNDING_COUNT,
26225           pjp1_i.CANCELLED_FUNDING_AMOUNT,
26226           pjp1_i.CANCELLED_FUNDING_COUNT,
26227           pjp1_i.FUNDING_ADJUSTMENT_AMOUNT,
26228           pjp1_i.FUNDING_ADJUSTMENT_COUNT,
26229           pjp1_i.REVENUE_WRITEOFF,
26230           pjp1_i.AR_INVOICE_AMOUNT,
26231           pjp1_i.AR_INVOICE_COUNT,
26232           pjp1_i.AR_CASH_APPLIED_AMOUNT,
26233           pjp1_i.AR_INVOICE_WRITE_OFF_AMOUNT,
26234           pjp1_i.AR_INVOICE_WRITEOFF_COUNT,
26235           pjp1_i.AR_CREDIT_MEMO_AMOUNT,
26236           pjp1_i.AR_CREDIT_MEMO_COUNT,
26237           pjp1_i.UNBILLED_RECEIVABLES,
26238           pjp1_i.UNEARNED_REVENUE,
26239           pjp1_i.AR_UNAPPR_INVOICE_AMOUNT,
26240           pjp1_i.AR_UNAPPR_INVOICE_COUNT,
26241           pjp1_i.AR_APPR_INVOICE_AMOUNT,
26242           pjp1_i.AR_APPR_INVOICE_COUNT,
26243           pjp1_i.AR_AMOUNT_DUE,
26244           pjp1_i.AR_COUNT_DUE,
26245           pjp1_i.AR_AMOUNT_OVERDUE,
26246           pjp1_i.AR_COUNT_OVERDUE,
26247           pjp1_i.CUSTOM1,
26248           pjp1_i.CUSTOM2,
26249           pjp1_i.CUSTOM3,
26250           pjp1_i.CUSTOM4,
26251           pjp1_i.CUSTOM5,
26252           pjp1_i.CUSTOM6,
26253           pjp1_i.CUSTOM7,
26254           pjp1_i.CUSTOM8,
26255           pjp1_i.CUSTOM9,
26256           pjp1_i.CUSTOM10,
26257           pjp1_i.CUSTOM11,
26258           pjp1_i.CUSTOM12,
26259           pjp1_i.CUSTOM13,
26260           pjp1_i.CUSTOM14,
26261           pjp1_i.CUSTOM15
26262         from
26263           (
26264         select
26265           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26266                  pjp.INSERT_FLAG, 'Y')             INSERT_FLAG,
26267           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26268                  null, prg.SUP_ID)                 SUP_ID,
26269           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26270                  null, prg.SUP_EMT_ID)             SUP_EMT_ID,
26271           p_worker_id                              WORKER_ID,
26272           'W'                                      RECORD_TYPE,
26273           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26274                  l_level, prg.SUP_LEVEL)           PRG_LEVEL,
26275           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26276                  pjp.PROJECT_ID,
26277                  prg.SUP_PROJECT_ID)               PROJECT_ID,
26278           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26279                  pjp.PROJECT_ORG_ID,
26280                  prg.SUP_PROJECT_ORG_ID)           PROJECT_ORG_ID,
26281           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26282                  pjp.PROJECT_ORGANIZATION_ID,
26283                  prg.SUP_PROJECT_ORGANIZATION_ID)  PROJECT_ORGANIZATION_ID,
26284           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26285                  pjp.PROJECT_ELEMENT_ID,
26286                  prg.SUB_ROLLUP_ID)                PROJECT_ELEMENT_ID,
26287           pjp.TIME_ID,
26288           pjp.PERIOD_TYPE_ID,
26289           pjp.CALENDAR_TYPE,
26290           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26291                  pjp.WBS_ROLLUP_FLAG, 'N')         WBS_ROLLUP_FLAG,
26292           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26293                  pjp.PRG_ROLLUP_FLAG, 'Y')         PRG_ROLLUP_FLAG,
26294           pjp.CURR_RECORD_TYPE_ID,
26295           pjp.CURRENCY_CODE,
26296           sum(pjp.REVENUE)                         REVENUE,
26297           sum(pjp.INITIAL_FUNDING_AMOUNT)          INITIAL_FUNDING_AMOUNT,
26298           sum(pjp.INITIAL_FUNDING_COUNT)           INITIAL_FUNDING_COUNT,
26299           sum(pjp.ADDITIONAL_FUNDING_AMOUNT)       ADDITIONAL_FUNDING_AMOUNT,
26300           sum(pjp.ADDITIONAL_FUNDING_COUNT)        ADDITIONAL_FUNDING_COUNT,
26301           sum(pjp.CANCELLED_FUNDING_AMOUNT)        CANCELLED_FUNDING_AMOUNT,
26302           sum(pjp.CANCELLED_FUNDING_COUNT)         CANCELLED_FUNDING_COUNT,
26303           sum(pjp.FUNDING_ADJUSTMENT_AMOUNT)       FUNDING_ADJUSTMENT_AMOUNT,
26304           sum(pjp.FUNDING_ADJUSTMENT_COUNT)        FUNDING_ADJUSTMENT_COUNT,
26305           sum(pjp.REVENUE_WRITEOFF)                REVENUE_WRITEOFF,
26306           sum(pjp.AR_INVOICE_AMOUNT)               AR_INVOICE_AMOUNT,
26307           sum(pjp.AR_INVOICE_COUNT)                AR_INVOICE_COUNT,
26308           sum(pjp.AR_CASH_APPLIED_AMOUNT)          AR_CASH_APPLIED_AMOUNT,
26309           sum(pjp.AR_INVOICE_WRITE_OFF_AMOUNT)     AR_INVOICE_WRITE_OFF_AMOUNT,
26310           sum(pjp.AR_INVOICE_WRITEOFF_COUNT)       AR_INVOICE_WRITEOFF_COUNT,
26311           sum(pjp.AR_CREDIT_MEMO_AMOUNT)           AR_CREDIT_MEMO_AMOUNT,
26312           sum(pjp.AR_CREDIT_MEMO_COUNT)            AR_CREDIT_MEMO_COUNT,
26313           sum(pjp.UNBILLED_RECEIVABLES)            UNBILLED_RECEIVABLES,
26314           sum(pjp.UNEARNED_REVENUE)                UNEARNED_REVENUE,
26315           sum(pjp.AR_UNAPPR_INVOICE_AMOUNT)        AR_UNAPPR_INVOICE_AMOUNT,
26316           sum(pjp.AR_UNAPPR_INVOICE_COUNT)         AR_UNAPPR_INVOICE_COUNT,
26317           sum(pjp.AR_APPR_INVOICE_AMOUNT)          AR_APPR_INVOICE_AMOUNT,
26318           sum(pjp.AR_APPR_INVOICE_COUNT)           AR_APPR_INVOICE_COUNT,
26319           sum(pjp.AR_AMOUNT_DUE)                   AR_AMOUNT_DUE,
26320           sum(pjp.AR_COUNT_DUE)                    AR_COUNT_DUE,
26321           sum(pjp.AR_AMOUNT_OVERDUE)               AR_AMOUNT_OVERDUE,
26322           sum(pjp.AR_COUNT_OVERDUE)                AR_COUNT_OVERDUE,
26323           sum(pjp.CUSTOM1)                         CUSTOM1,
26324           sum(pjp.CUSTOM2)                         CUSTOM2,
26325           sum(pjp.CUSTOM3)                         CUSTOM3,
26326           sum(pjp.CUSTOM4)                         CUSTOM4,
26327           sum(pjp.CUSTOM5)                         CUSTOM5,
26328           sum(pjp.CUSTOM6)                         CUSTOM6,
26329           sum(pjp.CUSTOM7)                         CUSTOM7,
26330           sum(pjp.CUSTOM8)                         CUSTOM8,
26331           sum(pjp.CUSTOM9)                         CUSTOM9,
26332           sum(pjp.CUSTOM10)                        CUSTOM10,
26333           sum(pjp.CUSTOM11)                        CUSTOM11,
26334           sum(pjp.CUSTOM12)                        CUSTOM12,
26335           sum(pjp.CUSTOM13)                        CUSTOM13,
26336           sum(pjp.CUSTOM14)                        CUSTOM14,
26337           sum(pjp.CUSTOM15)                        CUSTOM15
26338         from
26339           (
26340           select /*+ ordered index(wbs PA_XBS_DENORM_N2) parallel(pjp1) */    -- changed for bug 5927368
26341                  -- get incremental task level amounts from source and
26342                  -- program rollup amounts from interim
26343             wbs_hdr.WBS_VERSION_ID,
26344             'LF'                                      RELATIONSHIP_TYPE,
26345             decode(top_slice.INVERT_ID,
26346                    'PRJ', 'Y',
26347                           decode(wbs.SUB_LEVEL,
26348                                  1, 'Y', 'N'))        PUSHUP_FLAG,
26349             'Y'                                       INSERT_FLAG,
26350             pjp1.PROJECT_ID,
26351             pjp1.PROJECT_ORG_ID,
26352             pjp1.PROJECT_ORGANIZATION_ID,
26353             decode(top_slice.INVERT_ID,
26354                    'PRJ', prg.SUP_EMT_ID,
26355                           decode(wbs.SUB_LEVEL,
26356                                  1, prg.SUP_EMT_ID,
26357                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
26358             pjp1.TIME_ID,
26359             pjp1.PERIOD_TYPE_ID,
26360             pjp1.CALENDAR_TYPE,
26361             'Y'                                       WBS_ROLLUP_FLAG,
26362             pjp1.PRG_ROLLUP_FLAG,
26363             pjp1.CURR_RECORD_TYPE_ID,
26364             pjp1.CURRENCY_CODE,
26365             pjp1.REVENUE,
26366             pjp1.INITIAL_FUNDING_AMOUNT,
26367             pjp1.INITIAL_FUNDING_COUNT,
26368             pjp1.ADDITIONAL_FUNDING_AMOUNT,
26369             pjp1.ADDITIONAL_FUNDING_COUNT,
26370             pjp1.CANCELLED_FUNDING_AMOUNT,
26371             pjp1.CANCELLED_FUNDING_COUNT,
26372             pjp1.FUNDING_ADJUSTMENT_AMOUNT,
26373             pjp1.FUNDING_ADJUSTMENT_COUNT,
26374             pjp1.REVENUE_WRITEOFF,
26375             pjp1.AR_INVOICE_AMOUNT,
26376             pjp1.AR_INVOICE_COUNT,
26377             pjp1.AR_CASH_APPLIED_AMOUNT,
26378             pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
26379             pjp1.AR_INVOICE_WRITEOFF_COUNT,
26380             pjp1.AR_CREDIT_MEMO_AMOUNT,
26381             pjp1.AR_CREDIT_MEMO_COUNT,
26382             pjp1.UNBILLED_RECEIVABLES,
26383             pjp1.UNEARNED_REVENUE,
26384             pjp1.AR_UNAPPR_INVOICE_AMOUNT,
26385             pjp1.AR_UNAPPR_INVOICE_COUNT,
26386             pjp1.AR_APPR_INVOICE_AMOUNT,
26387             pjp1.AR_APPR_INVOICE_COUNT,
26388             pjp1.AR_AMOUNT_DUE,
26389             pjp1.AR_COUNT_DUE,
26390             pjp1.AR_AMOUNT_OVERDUE,
26391             pjp1.AR_COUNT_OVERDUE,
26392             pjp1.CUSTOM1,
26393             pjp1.CUSTOM2,
26394             pjp1.CUSTOM3,
26395             pjp1.CUSTOM4,
26396             pjp1.CUSTOM5,
26397             pjp1.CUSTOM6,
26398             pjp1.CUSTOM7,
26399             pjp1.CUSTOM8,
26400             pjp1.CUSTOM9,
26401             pjp1.CUSTOM10,
26402             pjp1.CUSTOM11,
26403             pjp1.CUSTOM12,
26404             pjp1.CUSTOM13,
26405             pjp1.CUSTOM14,
26406             pjp1.CUSTOM15
26407           from
26408             PJI_AC_AGGR_PJP1   pjp1,
26409             PJI_PJP_WBS_HEADER wbs_hdr,
26410             PA_XBS_DENORM      wbs,
26411             PJI_XBS_DENORM     prg,
26412             (
26413               select 1     WBS_SUP_LEVEL,
26414                      1     WBS_SUB_LEVEL,
26415                      'PRJ' INVERT_ID
26416               from   DUAL
26417               union all
26418               select 1     WBS_SUP_LEVEL,
26419                      1     WBS_SUB_LEVEL,
26420                      'WBS' INVERT_ID
26421               from   DUAL
26422             ) top_slice
26423           where
26424             prg.STRUCT_TYPE         =  'PRG'                       and
26425             prg.SUP_LEVEL           =  l_level                     and
26426             prg.SUB_LEVEL           =  l_level                     and
26427             wbs.STRUCT_TYPE         =  'WBS'                       and
26428             ((wbs.SUP_LEVEL = 1 and
26429               wbs.SUB_LEVEL = 1) or
26430              (wbs.SUP_LEVEL <> wbs.SUB_LEVEL))                     and
26431             wbs.STRUCT_VERSION_ID   =  prg.SUP_ID                  and
26432             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
26433             pjp1.WORKER_ID          =  p_worker_id                 and
26434             pjp1.PRG_LEVEL          in (0, l_level)                and
26435             pjp1.WBS_ROLLUP_FLAG    =  'N'                         and
26436             pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                  and
26437             wbs_hdr.PLAN_VERSION_ID =  -1                          and
26438             pjp1.PROJECT_ID         =  wbs_hdr.PROJECT_ID          and
26439             wbs.STRUCT_VERSION_ID   =  wbs_hdr.WBS_VERSION_ID      and
26440             pjp1.PROJECT_ELEMENT_ID =  wbs.SUB_EMT_ID              and
26441             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
26442             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+)
26443           union all
26444           select /*+ ordered parallel(pjp1) */           -- changed for bug 5927368
26445                  -- get incremental project level amounts from source
26446             wbs_hdr.WBS_VERSION_ID,
26447             'LF'                                   RELATIONSHIP_TYPE,
26448             'Y'                                    PUSHUP_FLAG,
26449             'N'                                    INSERT_FLAG,
26450             pjp1.PROJECT_ID,
26451             pjp1.PROJECT_ORG_ID,
26452             pjp1.PROJECT_ORGANIZATION_ID,
26453             pjp1.PROJECT_ELEMENT_ID,
26454             pjp1.TIME_ID,
26455             pjp1.PERIOD_TYPE_ID,
26456             pjp1.CALENDAR_TYPE,
26457             'Y'                                    WBS_ROLLUP_FLAG,
26458             pjp1.PRG_ROLLUP_FLAG,
26459             pjp1.CURR_RECORD_TYPE_ID,
26460             pjp1.CURRENCY_CODE,
26461             pjp1.REVENUE,
26462             pjp1.INITIAL_FUNDING_AMOUNT,
26463             pjp1.INITIAL_FUNDING_COUNT,
26464             pjp1.ADDITIONAL_FUNDING_AMOUNT,
26465             pjp1.ADDITIONAL_FUNDING_COUNT,
26466             pjp1.CANCELLED_FUNDING_AMOUNT,
26467             pjp1.CANCELLED_FUNDING_COUNT,
26468             pjp1.FUNDING_ADJUSTMENT_AMOUNT,
26469             pjp1.FUNDING_ADJUSTMENT_COUNT,
26470             pjp1.REVENUE_WRITEOFF,
26471             pjp1.AR_INVOICE_AMOUNT,
26472             pjp1.AR_INVOICE_COUNT,
26473             pjp1.AR_CASH_APPLIED_AMOUNT,
26474             pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
26475             pjp1.AR_INVOICE_WRITEOFF_COUNT,
26476             pjp1.AR_CREDIT_MEMO_AMOUNT,
26477             pjp1.AR_CREDIT_MEMO_COUNT,
26478             pjp1.UNBILLED_RECEIVABLES,
26479             pjp1.UNEARNED_REVENUE,
26480             pjp1.AR_UNAPPR_INVOICE_AMOUNT,
26481             pjp1.AR_UNAPPR_INVOICE_COUNT,
26482             pjp1.AR_APPR_INVOICE_AMOUNT,
26483             pjp1.AR_APPR_INVOICE_COUNT,
26484             pjp1.AR_AMOUNT_DUE,
26485             pjp1.AR_COUNT_DUE,
26486             pjp1.AR_AMOUNT_OVERDUE,
26487             pjp1.AR_COUNT_OVERDUE,
26488             pjp1.CUSTOM1,
26489             pjp1.CUSTOM2,
26490             pjp1.CUSTOM3,
26491             pjp1.CUSTOM4,
26492             pjp1.CUSTOM5,
26493             pjp1.CUSTOM6,
26494             pjp1.CUSTOM7,
26495             pjp1.CUSTOM8,
26496             pjp1.CUSTOM9,
26497             pjp1.CUSTOM10,
26498             pjp1.CUSTOM11,
26499             pjp1.CUSTOM12,
26500             pjp1.CUSTOM13,
26501             pjp1.CUSTOM14,
26502             pjp1.CUSTOM15
26503           from
26504             PJI_AC_AGGR_PJP1   pjp1,
26505             PJI_PJP_WBS_HEADER wbs_hdr,
26506             PJI_XBS_DENORM     prg
26507           where
26508             prg.STRUCT_TYPE         = 'PRG'                              and
26509             prg.SUP_LEVEL           = l_level                            and
26510             prg.SUB_LEVEL           = l_level                            and
26511             pjp1.WORKER_ID          = p_worker_id                        and
26512             pjp1.PROJECT_ID         = prg.SUP_PROJECT_ID                 and
26513             pjp1.PROJECT_ELEMENT_ID = prg.SUP_EMT_ID                     and
26514             pjp1.PRG_LEVEL          = 0                                  and
26515             pjp1.WBS_ROLLUP_FLAG    = 'N'                                and
26516             pjp1.PRG_ROLLUP_FLAG    = 'N'                                and
26517             wbs_hdr.PROJECT_ID      = pjp1.PROJECT_ID                    and
26518             wbs_hdr.PLAN_VERSION_ID = -1                                 and
26519             wbs_hdr.WBS_VERSION_ID  = prg.SUP_ID
26520           union all
26521           select /*+ ordered
26522                      index(fpr PJI_AC_XBR_ACCUM_F_N1) */
26523                  -- get delta task level amounts from Reporting Lines
26524             wbs_hdr.WBS_VERSION_ID,
26525             'LF'                                   RELATIONSHIP_TYPE,
26526             decode(log.EVENT_TYPE,
26527                    'WBS_CHANGE', 'Y',
26528                    'WBS_PUBLISH', 'N')             PUSHUP_FLAG,
26529             'Y'                                    INSERT_FLAG,
26530             acr.PROJECT_ID,
26531             acr.PROJECT_ORG_ID,
26532             acr.PROJECT_ORGANIZATION_ID,
26533             decode(top_slice.INVERT_ID,
26534                    'PRJ', prg.SUP_EMT_ID,
26535                           decode(wbs.SUB_LEVEL,
26536                                  1, prg.SUP_EMT_ID,
26537                                     wbs.SUP_EMT_ID))
26538                                                    PROJECT_ELEMENT_ID,
26539             acr.TIME_ID,
26540             acr.PERIOD_TYPE_ID,
26541             acr.CALENDAR_TYPE,
26542             'Y'                                    WBS_ROLLUP_FLAG,
26543             acr.PRG_ROLLUP_FLAG,
26544             acr.CURR_RECORD_TYPE_ID,
26545             acr.CURRENCY_CODE,
26546             wbs.SIGN * acr.REVENUE                 REVENUE,
26547             wbs.SIGN * acr.INITIAL_FUNDING_AMOUNT  INITIAL_FUNDING_AMOUNT,
26548             wbs.SIGN * acr.INITIAL_FUNDING_COUNT   INITIAL_FUNDING_COUNT,
26549             wbs.SIGN * acr.ADDITIONAL_FUNDING_AMOUNT
26550                                                    ADDITIONAL_FUNDING_AMOUNT,
26551             wbs.SIGN * acr.ADDITIONAL_FUNDING_COUNT
26552                                                    ADDITIONAL_FUNDING_COUNT,
26553             wbs.SIGN * acr.CANCELLED_FUNDING_AMOUNT
26554                                                    CANCELLED_FUNDING_AMOUNT,
26555             wbs.SIGN * acr.CANCELLED_FUNDING_COUNT CANCELLED_FUNDING_COUNT,
26556             wbs.SIGN * acr.FUNDING_ADJUSTMENT_AMOUNT
26557                                                    FUNDING_ADJUSTMENT_AMOUNT,
26558             wbs.SIGN * acr.FUNDING_ADJUSTMENT_COUNT
26559                                                    FUNDING_ADJUSTMENT_COUNT,
26560             wbs.SIGN * acr.REVENUE_WRITEOFF        REVENUE_WRITEOFF,
26561             wbs.SIGN * acr.AR_INVOICE_AMOUNT       AR_INVOICE_AMOUNT,
26562             wbs.SIGN * acr.AR_INVOICE_COUNT        AR_INVOICE_COUNT,
26563             wbs.SIGN * acr.AR_CASH_APPLIED_AMOUNT  AR_CASH_APPLIED_AMOUNT,
26564             wbs.SIGN * acr.AR_INVOICE_WRITE_OFF_AMOUNT
26565                                                    AR_INVOICE_WRITE_OFF_AMOUNT,
26566             wbs.SIGN * acr.AR_INVOICE_WRITEOFF_COUNT
26567                                                    AR_INVOICE_WRITEOFF_COUNT,
26568             wbs.SIGN * acr.AR_CREDIT_MEMO_AMOUNT   AR_CREDIT_MEMO_AMOUNT,
26569             wbs.SIGN * acr.AR_CREDIT_MEMO_COUNT    AR_CREDIT_MEMO_COUNT,
26570             wbs.SIGN * acr.UNBILLED_RECEIVABLES    UNBILLED_RECEIVABLES,
26571             wbs.SIGN * acr.UNEARNED_REVENUE        UNEARNED_REVENUE,
26572             wbs.SIGN * acr.AR_UNAPPR_INVOICE_AMOUNT
26573                                                    AR_UNAPPR_INVOICE_AMOUNT,
26574             wbs.SIGN * acr.AR_UNAPPR_INVOICE_COUNT AR_UNAPPR_INVOICE_COUNT,
26575             wbs.SIGN * acr.AR_APPR_INVOICE_AMOUNT  AR_APPR_INVOICE_AMOUNT,
26576             wbs.SIGN * acr.AR_APPR_INVOICE_COUNT   AR_APPR_INVOICE_COUNT,
26577             wbs.SIGN * acr.AR_AMOUNT_DUE           AR_AMOUNT_DUE,
26578             wbs.SIGN * acr.AR_COUNT_DUE            AR_COUNT_DUE,
26579             wbs.SIGN * acr.AR_AMOUNT_OVERDUE       AR_AMOUNT_OVERDUE,
26580             wbs.SIGN * acr.AR_COUNT_OVERDUE        AR_COUNT_OVERDUE,
26581             wbs.SIGN * acr.CUSTOM1                 CUSTOM1,
26582             wbs.SIGN * acr.CUSTOM2                 CUSTOM2,
26583             wbs.SIGN * acr.CUSTOM3                 CUSTOM3,
26584             wbs.SIGN * acr.CUSTOM4                 CUSTOM4,
26585             wbs.SIGN * acr.CUSTOM5                 CUSTOM5,
26586             wbs.SIGN * acr.CUSTOM6                 CUSTOM6,
26587             wbs.SIGN * acr.CUSTOM7                 CUSTOM7,
26588             wbs.SIGN * acr.CUSTOM8                 CUSTOM8,
26589             wbs.SIGN * acr.CUSTOM9                 CUSTOM9,
26590             wbs.SIGN * acr.CUSTOM10                CUSTOM10,
26591             wbs.SIGN * acr.CUSTOM11                CUSTOM11,
26592             wbs.SIGN * acr.CUSTOM12                CUSTOM12,
26593             wbs.SIGN * acr.CUSTOM13                CUSTOM13,
26594             wbs.SIGN * acr.CUSTOM14                CUSTOM14,
26595             wbs.SIGN * acr.CUSTOM15                CUSTOM15
26596           from
26597             PJI_PA_PROJ_EVENTS_LOG log,
26598             PJI_PJP_WBS_HEADER     wbs_hdr,
26599             PJI_XBS_DENORM_DELTA   wbs,
26600             PJI_XBS_DENORM         prg,
26601             PJI_AC_XBS_ACCUM_F     acr,
26602             (
26603               select 1     WBS_SUP_LEVEL,
26604                      1     WBS_SUB_LEVEL,
26605                      'PRJ' INVERT_ID
26606               from   DUAL
26607               union all
26608               select 1     WBS_SUP_LEVEL,
26609                      1     WBS_SUB_LEVEL,
26610                      'WBS' INVERT_ID
26611               from   DUAL
26612             ) top_slice
26613           where
26614             prg.STRUCT_TYPE         =  'PRG'                       and
26615             prg.SUP_LEVEL           =  l_level                     and
26616             prg.SUB_LEVEL           =  l_level                     and
26617             wbs.WORKER_ID           =  p_worker_id                 and
26618             wbs.STRUCT_TYPE         =  'WBS'                       and
26619             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
26620             log.WORKER_ID           =  p_worker_id                 and
26621             log.EVENT_ID            =  wbs.EVENT_ID                and
26622             log.EVENT_TYPE          in ('WBS_CHANGE',
26623                                         'WBS_PUBLISH')             and
26624             wbs_hdr.PROJECT_ID      =  log.ATTRIBUTE1              and
26625             wbs_hdr.PLAN_VERSION_ID =  log.ATTRIBUTE3              and
26626             wbs_hdr.PLAN_VERSION_ID =  -1                          and
26627             wbs_hdr.WBS_VERSION_ID  =  wbs.STRUCT_VERSION_ID       and
26628             wbs_hdr.PROJECT_ID      =  prg.SUP_PROJECT_ID          and
26629             wbs_hdr.WBS_VERSION_ID  =  prg.SUP_ID                  and
26630             acr.WBS_ROLLUP_FLAG     =  'N'                         and
26631             acr.PRG_ROLLUP_FLAG     =  'N'                         and
26632             acr.PROJECT_ID          =  wbs.SUP_PROJECT_ID          and
26633             acr.PROJECT_ELEMENT_ID  =  wbs.SUB_EMT_ID              and
26634             acr.PROJECT_ID          =  wbs_hdr.PROJECT_ID          and
26635             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
26636             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+) and
26637             (wbs.SUP_LEVEL <> wbs.SUB_LEVEL or
26638              (wbs.SUP_LEVEL = 1 and
26639               wbs.SUB_LEVEL = 1))
26640           ) pjp,
26641           (
26642           select /*+ ordered */
26643             prg.SUP_PROJECT_ID,
26644             map.PROJECT_ORG_ID               SUP_PROJECT_ORG_ID,
26645             map.PROJECT_ORGANIZATION_ID      SUP_PROJECT_ORGANIZATION_ID,
26646             prg.SUP_ID,
26647             prg.SUP_EMT_ID,
26648             prg.SUP_LEVEL,
26649             prg.SUB_ID,
26650             prg.SUB_EMT_ID,
26651             prg.SUB_ROLLUP_ID,
26652             prg.RELATIONSHIP_TYPE            RELATIONSHIP_TYPE,
26653             'Y'                              PUSHUP_FLAG
26654           from
26655             PJI_PJP_PROJ_BATCH_MAP map,
26656             PJI_XBS_DENORM         prg,
26657             PJI_XBS_DENORM_DELTA   prg_delta
26658           where
26659             prg.STRUCT_TYPE          = 'PRG'                           and
26660             prg.RELATIONSHIP_TYPE    = 'LF'                            and
26661             prg.SUB_ROLLUP_ID        is not null                       and
26662             prg.SUB_LEVEL            = l_level                         and
26663             map.WORKER_ID            = p_worker_id                     and
26664             map.PROJECT_ID           = prg.SUP_PROJECT_ID              and
26665             p_worker_id              = prg_delta.WORKER_ID         (+) and
26666             prg.STRUCT_TYPE          = prg_delta.STRUCT_TYPE       (+) and
26667             prg.SUP_PROJECT_ID       = prg_delta.SUP_PROJECT_ID    (+) and
26668             prg.SUP_LEVEL            = prg_delta.SUP_LEVEL         (+) and
26669             prg.SUP_ID               = prg_delta.SUP_ID            (+) and
26670             prg.SUB_LEVEL            = prg_delta.SUB_LEVEL         (+) and
26671             prg.SUB_ID               = prg_delta.SUB_ID            (+) and
26672             prg.RELATIONSHIP_TYPE    = prg_delta.RELATIONSHIP_TYPE (+) and
26673             -1                       = prg_delta.SIGN              (+) and
26674             prg_delta.SUP_PROJECT_ID is null
26675           ) prg
26676         where
26677           pjp.WBS_VERSION_ID    = prg.SUB_ID            (+) and
26678           pjp.RELATIONSHIP_TYPE = prg.RELATIONSHIP_TYPE (+) and
26679           pjp.PUSHUP_FLAG       = prg.PUSHUP_FLAG       (+)
26680         group by
26681           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26682                  pjp.INSERT_FLAG, 'Y'),
26683           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26684                  null, prg.SUP_ID),
26685           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26686                  null, prg.SUP_EMT_ID),
26687           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26688                  l_level, prg.SUP_LEVEL),
26689           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26690                  pjp.PROJECT_ID,
26691                  prg.SUP_PROJECT_ID),
26692           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26693                  pjp.PROJECT_ORG_ID,
26694                  prg.SUP_PROJECT_ORG_ID),
26695           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26696                  pjp.PROJECT_ORGANIZATION_ID,
26697                  prg.SUP_PROJECT_ORGANIZATION_ID),
26698           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26699                  pjp.PROJECT_ELEMENT_ID,
26700                  prg.SUB_ROLLUP_ID),
26701           pjp.TIME_ID,
26702           pjp.PERIOD_TYPE_ID,
26703           pjp.CALENDAR_TYPE,
26704           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26705                  pjp.WBS_ROLLUP_FLAG, 'N'),
26706           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
26707                  pjp.PRG_ROLLUP_FLAG, 'Y'),
26708           pjp.CURR_RECORD_TYPE_ID,
26709           pjp.CURRENCY_CODE
26710           )                          pjp1_i,
26711           PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
26712           PA_PROJ_WORKPLAN_ATTR      sup_wpa
26713         where
26714           pjp1_i.INSERT_FLAG  = 'Y'                                and
26715           pjp1_i.PROJECT_ID   = sup_fin_ver.PROJECT_ID         (+) and
26716           pjp1_i.SUP_ID       = sup_fin_ver.ELEMENT_VERSION_ID (+) and
26717           'STRUCTURE_WORKING' = sup_fin_ver.STATUS_CODE        (+) and
26718           pjp1_i.SUP_EMT_ID   = sup_wpa.PROJ_ELEMENT_ID        (+) and
26719           'N'                 = sup_wpa.WP_ENABLE_VERSION_FLAG (+) and
26720           (pjp1_i.SUP_ID is null or
26721            (pjp1_i.SUP_ID is not null and
26722             (sup_fin_ver.PROJECT_ID is not null or
26723              sup_wpa.PROJ_ELEMENT_ID is not null)));
26724     else
26725         return;
26726     end if;
26727 
26728   end EXECUTE_ROLLUP_ACR_WBS;
26729 
26730 /* Procedure EXECUTE_ROLLUP_FPR_PRG added for Bug 7551819 */
26731   -- ----------------------------------------------------------
26732   -- procedure EXECUTE_ROLLUP_FPR_PRG
26733   --
26734   -- This is the same query as in ROLLUP_FPR_PRG
26735   -- To implement the worker logic, we are implementing this procedure.
26736   -- Because partition can't be a bind variable like table names.
26737   -- Any fix done in one if condition to be done in all 10 if conditions.
26738   -- ----------------------------------------------------------
26739   procedure EXECUTE_ROLLUP_FPR_PRG (p_worker_id in number default null,
26740                                     p_level in number default null) is
26741 
26742   l_level           number;
26743   begin
26744     l_level := p_level;
26745 
26746     if (p_worker_id =1) then
26747     -- Query for Partition 1
26748 
26749         insert /*+ parallel(PJI_FP_AGGR_PJP1) */
26750                    into PJI_FP_AGGR_PJP1 partition(P1)
26751       (
26752         WORKER_ID,
26753         RECORD_TYPE,
26754         PRG_LEVEL,
26755         LINE_TYPE,
26756         PROJECT_ID,
26757         PROJECT_ORG_ID,
26758         PROJECT_ORGANIZATION_ID,
26759         PROJECT_ELEMENT_ID,
26760         TIME_ID,
26761         PERIOD_TYPE_ID,
26762         CALENDAR_TYPE,
26763         RBS_AGGR_LEVEL,
26764         WBS_ROLLUP_FLAG,
26765         PRG_ROLLUP_FLAG,
26766         CURR_RECORD_TYPE_ID,
26767         CURRENCY_CODE,
26768         RBS_ELEMENT_ID,
26769         RBS_VERSION_ID,
26770         PLAN_VERSION_ID,
26771         PLAN_TYPE_ID,
26772         PLAN_TYPE_CODE,
26773         RAW_COST,
26774         BRDN_COST,
26775         REVENUE,
26776         BILL_RAW_COST,
26777         BILL_BRDN_COST,
26778         BILL_LABOR_RAW_COST,
26779         BILL_LABOR_BRDN_COST,
26780         BILL_LABOR_HRS,
26781         EQUIPMENT_RAW_COST,
26782         EQUIPMENT_BRDN_COST,
26783         CAPITALIZABLE_RAW_COST,
26784         CAPITALIZABLE_BRDN_COST,
26785         LABOR_RAW_COST,
26786         LABOR_BRDN_COST,
26787         LABOR_HRS,
26788         LABOR_REVENUE,
26789         EQUIPMENT_HOURS,
26790         BILLABLE_EQUIPMENT_HOURS,
26791         SUP_INV_COMMITTED_COST,
26792         PO_COMMITTED_COST,
26793         PR_COMMITTED_COST,
26794         OTH_COMMITTED_COST,
26795         ACT_LABOR_HRS,
26796         ACT_EQUIP_HRS,
26797         ACT_LABOR_BRDN_COST,
26798         ACT_EQUIP_BRDN_COST,
26799         ACT_BRDN_COST,
26800         ACT_RAW_COST,
26801         ACT_REVENUE,
26802         ACT_LABOR_RAW_COST,
26803         ACT_EQUIP_RAW_COST,
26804         ETC_LABOR_HRS,
26805         ETC_EQUIP_HRS,
26806         ETC_LABOR_BRDN_COST,
26807         ETC_EQUIP_BRDN_COST,
26808         ETC_BRDN_COST,
26809         ETC_RAW_COST,
26810         ETC_LABOR_RAW_COST,
26811         ETC_EQUIP_RAW_COST,
26812         CUSTOM1,
26813         CUSTOM2,
26814         CUSTOM3,
26815         CUSTOM4,
26816         CUSTOM5,
26817         CUSTOM6,
26818         CUSTOM7,
26819         CUSTOM8,
26820         CUSTOM9,
26821         CUSTOM10,
26822         CUSTOM11,
26823         CUSTOM12,
26824         CUSTOM13,
26825         CUSTOM14,
26826         CUSTOM15
26827       )
26828       select /*+ no_merge(pjp) */
26829         p_worker_id                                   WORKER_ID,
26830         'P'                                           RECORD_TYPE,
26831         l_level                                       PRG_LEVEL,
26832         pjp.LINE_TYPE,
26833         pjp.SUP_PROJECT_ID                            PROJECT_ID,
26834         map.PROJECT_ORG_ID,
26835         map.PROJECT_ORGANIZATION_ID,
26836         decode(pjp.STRUCT_TYPE,
26837                'DO_NOT_ROLLUP', pjp.SUB_ROLLUP_ID,
26838                                 decode(top_slice.INVERT_ID,
26839                                        'PRJ', pjp.SUP_EMT_ID, wbs.SUP_EMT_ID)
26840               )                                       PROJECT_ELEMENT_ID,
26841         pjp.TIME_ID,
26842         pjp.PERIOD_TYPE_ID,
26843         pjp.CALENDAR_TYPE,
26844         pjp.RBS_AGGR_LEVEL,
26845         decode(pjp.STRUCT_TYPE,
26846                'DO_NOT_ROLLUP', 'N',
26847                                 decode(top_slice.INVERT_ID,
26848                                        'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
26849                                                           wbs.SUP_EMT_ID,
26850                                                           'N', 'Y'))
26851               )                                       WBS_ROLLUP_FLAG,
26852         'Y'                                           PRG_ROLLUP_FLAG,
26853         pjp.CURR_RECORD_TYPE_ID,
26854         pjp.CURRENCY_CODE,
26855         pjp.RBS_ELEMENT_ID,
26856         pjp.RBS_VERSION_ID,
26857         pjp.PLAN_VERSION_ID,
26858         pjp.PLAN_TYPE_ID,
26859         pjp.PLAN_TYPE_CODE,
26860         sum(pjp.RAW_COST)                             RAW_COST,
26861         sum(pjp.BRDN_COST)                            BRDN_COST,
26862         sum(pjp.REVENUE)                              REVENUE,
26863         sum(pjp.BILL_RAW_COST)                        BILL_RAW_COST,
26864         sum(pjp.BILL_BRDN_COST)                       BILL_BRDN_COST,
26865         sum(pjp.BILL_LABOR_RAW_COST)                  BILL_LABOR_RAW_COST,
26866         sum(pjp.BILL_LABOR_BRDN_COST)                 BILL_LABOR_BRDN_COST,
26867         sum(pjp.BILL_LABOR_HRS)                       BILL_LABOR_HRS,
26868         sum(pjp.EQUIPMENT_RAW_COST)                   EQUIPMENT_RAW_COST,
26869         sum(pjp.EQUIPMENT_BRDN_COST)                  EQUIPMENT_BRDN_COST,
26870         sum(pjp.CAPITALIZABLE_RAW_COST)               CAPITALIZABLE_RAW_COST,
26871         sum(pjp.CAPITALIZABLE_BRDN_COST)              CAPITALIZABLE_BRDN_COST,
26872         sum(pjp.LABOR_RAW_COST)                       LABOR_RAW_COST,
26873         sum(pjp.LABOR_BRDN_COST)                      LABOR_BRDN_COST,
26874         sum(pjp.LABOR_HRS)                            LABOR_HRS,
26875         sum(pjp.LABOR_REVENUE)                        LABOR_REVENUE,
26876         sum(pjp.EQUIPMENT_HOURS)                      EQUIPMENT_HOURS,
26877         sum(pjp.BILLABLE_EQUIPMENT_HOURS)             BILLABLE_EQUIPMENT_HOURS,
26878         sum(pjp.SUP_INV_COMMITTED_COST)               SUP_INV_COMMITTED_COST,
26879         sum(pjp.PO_COMMITTED_COST)                    PO_COMMITTED_COST,
26880         sum(pjp.PR_COMMITTED_COST)                    PR_COMMITTED_COST,
26881         sum(pjp.OTH_COMMITTED_COST)                   OTH_COMMITTED_COST,
26882         sum(pjp.ACT_LABOR_HRS)                        ACT_LABOR_HRS,
26883         sum(pjp.ACT_EQUIP_HRS)                        ACT_EQUIP_HRS,
26884         sum(pjp.ACT_LABOR_BRDN_COST)                  ACT_LABOR_BRDN_COST,
26885         sum(pjp.ACT_EQUIP_BRDN_COST)                  ACT_EQUIP_BRDN_COST,
26886         sum(pjp.ACT_BRDN_COST)                        ACT_BRDN_COST,
26887         sum(pjp.ACT_RAW_COST)                         ACT_RAW_COST,
26888         sum(pjp.ACT_REVENUE)                          ACT_REVENUE,
26889         sum(pjp.ACT_LABOR_RAW_COST)                   ACT_LABOR_RAW_COST,
26890         sum(pjp.ACT_EQUIP_RAW_COST)                   ACT_EQUIP_RAW_COST,
26891         sum(pjp.ETC_LABOR_HRS)                        ETC_LABOR_HRS,
26892         sum(pjp.ETC_EQUIP_HRS)                        ETC_EQUIP_HRS,
26893         sum(pjp.ETC_LABOR_BRDN_COST)                  ETC_LABOR_BRDN_COST,
26894         sum(pjp.ETC_EQUIP_BRDN_COST)                  ETC_EQUIP_BRDN_COST,
26895         sum(pjp.ETC_BRDN_COST)                        ETC_BRDN_COST,
26896         sum(pjp.ETC_RAW_COST)                         ETC_RAW_COST,
26897         sum(pjp.ETC_LABOR_RAW_COST)                   ETC_LABOR_RAW_COST,
26898         sum(pjp.ETC_EQUIP_RAW_COST)                   ETC_EQUIP_RAW_COST,
26899         sum(pjp.CUSTOM1)                              CUSTOM1,
26900         sum(pjp.CUSTOM2)                              CUSTOM2,
26901         sum(pjp.CUSTOM3)                              CUSTOM3,
26902         sum(pjp.CUSTOM4)                              CUSTOM4,
26903         sum(pjp.CUSTOM5)                              CUSTOM5,
26904         sum(pjp.CUSTOM6)                              CUSTOM6,
26905         sum(pjp.CUSTOM7)                              CUSTOM7,
26906         sum(pjp.CUSTOM8)                              CUSTOM8,
26907         sum(pjp.CUSTOM9)                              CUSTOM9,
26908         sum(pjp.CUSTOM10)                             CUSTOM10,
26909         sum(pjp.CUSTOM11)                             CUSTOM11,
26910         sum(pjp.CUSTOM12)                             CUSTOM12,
26911         sum(pjp.CUSTOM13)                             CUSTOM13,
26912         sum(pjp.CUSTOM14)                             CUSTOM14,
26913         sum(pjp.CUSTOM15)                             CUSTOM15
26914       from
26915         (
26916         select /*+ ordered index(fpr PJI_FP_XBS_ACCUM_F_N1) */
26917                -- get structure level amounts from Reporting Lines
26918           decode(fpr.RBS_AGGR_LEVEL,
26919                  'L', 'DO_NOT_ROLLUP',
26920                       'WBS')                          STRUCT_TYPE,
26921           to_char(null)                               LINE_TYPE,
26922           prg.SUP_PROJECT_ID,
26923           prg.SUP_ID,
26924           prg.SUP_EMT_ID,
26925           prg.SUB_EMT_ID,
26926           prg.SUB_ROLLUP_ID,
26927           'FPR'                                       LINE_SOURCE,
26928           decode(fpr.PLAN_VERSION_ID,
26929                  -1, prg.SUB_ID,
26930                  -3, prg.SUB_ID,
26931                  -4, prg.SUB_ID,
26932                      decode(fin_plan.PLAN_VERSION_ID,
26933                             null, null,
26934                                   prg.SUB_ID))        SUB_ID,
26935           decode(fpr.PLAN_VERSION_ID,
26936                  -1, 'N',
26937                  -3, 'N',
26938                  -4, 'N',
26939                      decode(fin_plan.PLAN_VERSION_ID,
26940                             null, null,
26941                                   'N'))               SUP_WP_FLAG,
26942           decode(fpr.PLAN_VERSION_ID,
26943                  -1, fpr.PLAN_VERSION_ID,
26944                  -3, fpr.PLAN_VERSION_ID,
26945                  -4, fpr.PLAN_VERSION_ID,
26946                      decode(fin_plan.PLAN_VERSION_ID,
26947                             null, null,
26948                                   fin_plan.PLAN_VERSION_ID)
26949                 )                                     SUB_PLAN_VERSION_ID,
26950           decode(fpr.PLAN_VERSION_ID,
26951                  -1, fpr.PLAN_TYPE_ID,
26952                  -3, fpr.PLAN_TYPE_ID,
26953                  -4, fpr.PLAN_TYPE_ID,
26954                      decode(fin_plan.PLAN_VERSION_ID,
26955                             null, null,
26956                                   fpr.PLAN_TYPE_ID))  SUB_PLAN_TYPE_ID,
26957           fpr.TIME_ID,
26958           fpr.PERIOD_TYPE_ID,
26959           fpr.CALENDAR_TYPE,
26960           fpr.RBS_AGGR_LEVEL,
26961           fpr.CURR_RECORD_TYPE_ID,
26962           fpr.CURRENCY_CODE,
26963           fpr.RBS_ELEMENT_ID,
26964           fpr.RBS_VERSION_ID,
26965           decode(wbs_hdr.WP_FLAG,
26966                  'N', decode(wbs_hdr.PLAN_VERSION_ID,
26967                              -1, fpr.PLAN_VERSION_ID,
26968                                  fin_plan.PLAN_VERSION_ID),
26969                       sup_wbs_hdr.PLAN_VERSION_ID)    PLAN_VERSION_ID,
26970           decode(wbs_hdr.WP_FLAG,
26971                  'N', fpr.PLAN_TYPE_ID,
26972                       sup_wbs_hdr.PLAN_TYPE_ID)       PLAN_TYPE_ID,
26973           fpr.PLAN_TYPE_CODE,
26974           decode(wbs_hdr.WP_FLAG
26975                    || '_' || sup_wbs_hdr.WP_FLAG
26976                    || '_' || sub_ver.STATUS_CODE
26977                    || '_' || sup_ver.STATUS_CODE,
26978                  'Y_Y__', to_number(null),
26979                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
26980                  prg.SIGN * fpr.RAW_COST)             RAW_COST,
26981           decode(wbs_hdr.WP_FLAG
26982                    || '_' || sup_wbs_hdr.WP_FLAG
26983                    || '_' || sub_ver.STATUS_CODE
26984                    || '_' || sup_ver.STATUS_CODE,
26985                  'Y_Y__', to_number(null),
26986                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
26987                  prg.SIGN * fpr.BRDN_COST)            BRDN_COST,
26988           decode(wbs_hdr.WP_FLAG
26989                    || '_' || sup_wbs_hdr.WP_FLAG
26990                    || '_' || sub_ver.STATUS_CODE
26991                    || '_' || sup_ver.STATUS_CODE,
26992                  'Y_Y__', to_number(null),
26993                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
26994                  prg.SIGN * fpr.REVENUE)              REVENUE,
26995           decode(wbs_hdr.WP_FLAG
26996                    || '_' || sup_wbs_hdr.WP_FLAG
26997                    || '_' || sub_ver.STATUS_CODE
26998                    || '_' || sup_ver.STATUS_CODE,
26999                  'Y_Y__', to_number(null),
27000                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27001                  prg.SIGN * fpr.BILL_RAW_COST)        BILL_RAW_COST,
27002           decode(wbs_hdr.WP_FLAG
27003                    || '_' || sup_wbs_hdr.WP_FLAG
27004                    || '_' || sub_ver.STATUS_CODE
27005                    || '_' || sup_ver.STATUS_CODE,
27006                  'Y_Y__', to_number(null),
27007                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27008                  prg.SIGN * fpr.BILL_BRDN_COST)       BILL_BRDN_COST,
27009           decode(wbs_hdr.WP_FLAG
27010                    || '_' || sup_wbs_hdr.WP_FLAG
27011                    || '_' || sub_ver.STATUS_CODE
27012                    || '_' || sup_ver.STATUS_CODE,
27013                  'Y_Y__', to_number(null),
27014                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27015                  prg.SIGN * fpr.BILL_LABOR_RAW_COST)  BILL_LABOR_RAW_COST,
27016           decode(wbs_hdr.WP_FLAG
27017                    || '_' || sup_wbs_hdr.WP_FLAG
27018                    || '_' || sub_ver.STATUS_CODE
27019                    || '_' || sup_ver.STATUS_CODE,
27020                  'Y_Y__', to_number(null),
27021                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27022                  prg.SIGN * fpr.BILL_LABOR_BRDN_COST) BILL_LABOR_BRDN_COST,
27023           decode(wbs_hdr.WP_FLAG
27024                    || '_' || sup_wbs_hdr.WP_FLAG
27025                    || '_' || sub_ver.STATUS_CODE
27026                    || '_' || sup_ver.STATUS_CODE,
27027                  'Y_Y__', to_number(null),
27028                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27029                  prg.SIGN * fpr.BILL_LABOR_HRS)       BILL_LABOR_HRS,
27030           decode(wbs_hdr.WP_FLAG
27031                    || '_' || sup_wbs_hdr.WP_FLAG
27032                    || '_' || sub_ver.STATUS_CODE
27033                    || '_' || sup_ver.STATUS_CODE,
27034                  'Y_Y__', to_number(null),
27035                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27036                  prg.SIGN * fpr.EQUIPMENT_RAW_COST)   EQUIPMENT_RAW_COST,
27037           decode(wbs_hdr.WP_FLAG
27038                    || '_' || sup_wbs_hdr.WP_FLAG
27039                    || '_' || sub_ver.STATUS_CODE
27040                    || '_' || sup_ver.STATUS_CODE,
27041                  'Y_Y__', to_number(null),
27042                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27043                  prg.SIGN * fpr.EQUIPMENT_BRDN_COST)  EQUIPMENT_BRDN_COST,
27044           decode(wbs_hdr.WP_FLAG
27045                    || '_' || sup_wbs_hdr.WP_FLAG
27046                    || '_' || sub_ver.STATUS_CODE
27047                    || '_' || sup_ver.STATUS_CODE,
27048                  'Y_Y__', to_number(null),
27049                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27050                  prg.SIGN * fpr.CAPITALIZABLE_RAW_COST)
27051                                                       CAPITALIZABLE_RAW_COST,
27052           decode(wbs_hdr.WP_FLAG
27053                    || '_' || sup_wbs_hdr.WP_FLAG
27054                    || '_' || sub_ver.STATUS_CODE
27055                    || '_' || sup_ver.STATUS_CODE,
27056                  'Y_Y__', to_number(null),
27057                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27058                  prg.SIGN * fpr.CAPITALIZABLE_BRDN_COST)
27059                                                       CAPITALIZABLE_BRDN_COST,
27060           decode(wbs_hdr.WP_FLAG
27061                    || '_' || sup_wbs_hdr.WP_FLAG
27062                    || '_' || sub_ver.STATUS_CODE
27063                    || '_' || sup_ver.STATUS_CODE,
27064                  'Y_Y__', to_number(null),
27065                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27066                  prg.SIGN * fpr.LABOR_RAW_COST)       LABOR_RAW_COST,
27067           decode(wbs_hdr.WP_FLAG
27068                    || '_' || sup_wbs_hdr.WP_FLAG
27069                    || '_' || sub_ver.STATUS_CODE
27070                    || '_' || sup_ver.STATUS_CODE,
27071                  'Y_Y__', to_number(null),
27072                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27073                  prg.SIGN * fpr.LABOR_BRDN_COST)      LABOR_BRDN_COST,
27074           decode(wbs_hdr.WP_FLAG
27075                    || '_' || sup_wbs_hdr.WP_FLAG
27076                    || '_' || sub_ver.STATUS_CODE
27077                    || '_' || sup_ver.STATUS_CODE,
27078                  'Y_Y__', to_number(null),
27079                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27080                  prg.SIGN * fpr.LABOR_HRS)            LABOR_HRS,
27081           decode(wbs_hdr.WP_FLAG
27082                    || '_' || sup_wbs_hdr.WP_FLAG
27083                    || '_' || sub_ver.STATUS_CODE
27084                    || '_' || sup_ver.STATUS_CODE,
27085                  'Y_Y__', to_number(null),
27086                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27087                  prg.SIGN * fpr.LABOR_REVENUE)        LABOR_REVENUE,
27088           decode(wbs_hdr.WP_FLAG
27089                    || '_' || sup_wbs_hdr.WP_FLAG
27090                    || '_' || sub_ver.STATUS_CODE
27091                    || '_' || sup_ver.STATUS_CODE,
27092                  'Y_Y__', to_number(null),
27093                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27094                  prg.SIGN * fpr.EQUIPMENT_HOURS)      EQUIPMENT_HOURS,
27095           decode(wbs_hdr.WP_FLAG
27096                    || '_' || sup_wbs_hdr.WP_FLAG
27097                    || '_' || sub_ver.STATUS_CODE
27098                    || '_' || sup_ver.STATUS_CODE,
27099                  'Y_Y__', to_number(null),
27100                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27101                  prg.SIGN * fpr.BILLABLE_EQUIPMENT_HOURS)
27102                                                       BILLABLE_EQUIPMENT_HOURS,
27103           decode(wbs_hdr.WP_FLAG
27104                    || '_' || sup_wbs_hdr.WP_FLAG
27105                    || '_' || sub_ver.STATUS_CODE
27106                    || '_' || sup_ver.STATUS_CODE,
27107                  'Y_Y__', to_number(null),
27108                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27109                  prg.SIGN * fpr.SUP_INV_COMMITTED_COST)
27110                                                       SUP_INV_COMMITTED_COST,
27111           decode(wbs_hdr.WP_FLAG
27112                    || '_' || sup_wbs_hdr.WP_FLAG
27113                    || '_' || sub_ver.STATUS_CODE
27114                    || '_' || sup_ver.STATUS_CODE,
27115                  'Y_Y__', to_number(null),
27116                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27117                  prg.SIGN * fpr.PO_COMMITTED_COST)    PO_COMMITTED_COST,
27118           decode(wbs_hdr.WP_FLAG
27119                    || '_' || sup_wbs_hdr.WP_FLAG
27120                    || '_' || sub_ver.STATUS_CODE
27121                    || '_' || sup_ver.STATUS_CODE,
27122                  'Y_Y__', to_number(null),
27123                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27124                  prg.SIGN * fpr.PR_COMMITTED_COST)    PR_COMMITTED_COST,
27125           decode(wbs_hdr.WP_FLAG
27126                    || '_' || sup_wbs_hdr.WP_FLAG
27127                    || '_' || sub_ver.STATUS_CODE
27128                    || '_' || sup_ver.STATUS_CODE,
27129                  'Y_Y__', to_number(null),
27130                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27131                  prg.SIGN * fpr.OTH_COMMITTED_COST)   OTH_COMMITTED_COST,
27132           decode(wbs_hdr.WP_FLAG
27133                    || '_' || sup_wbs_hdr.WP_FLAG
27134                    || '_' || sup_ver.STATUS_CODE,
27135                  'Y_Y_', to_number(null),
27136                  prg.SIGN * fpr.ACT_LABOR_HRS)        ACT_LABOR_HRS,
27137           decode(wbs_hdr.WP_FLAG
27138                    || '_' || sup_wbs_hdr.WP_FLAG
27139                    || '_' || sup_ver.STATUS_CODE,
27140                  'Y_Y_', to_number(null),
27141                  prg.SIGN * fpr.ACT_EQUIP_HRS)        ACT_EQUIP_HRS,
27142           decode(wbs_hdr.WP_FLAG
27143                    || '_' || sup_wbs_hdr.WP_FLAG
27144                    || '_' || sup_ver.STATUS_CODE,
27145                  'Y_Y_', to_number(null),
27146                  prg.SIGN * fpr.ACT_LABOR_BRDN_COST)  ACT_LABOR_BRDN_COST,
27147           decode(wbs_hdr.WP_FLAG
27148                    || '_' || sup_wbs_hdr.WP_FLAG
27149                    || '_' || sup_ver.STATUS_CODE,
27150                  'Y_Y_', to_number(null),
27151                  prg.SIGN * fpr.ACT_EQUIP_BRDN_COST)  ACT_EQUIP_BRDN_COST,
27152           decode(wbs_hdr.WP_FLAG
27153                    || '_' || sup_wbs_hdr.WP_FLAG
27154                    || '_' || sup_ver.STATUS_CODE,
27155                  'Y_Y_', to_number(null),
27156                  prg.SIGN * fpr.ACT_BRDN_COST)        ACT_BRDN_COST,
27157           decode(wbs_hdr.WP_FLAG
27158                    || '_' || sup_wbs_hdr.WP_FLAG
27159                    || '_' || sup_ver.STATUS_CODE,
27160                  'Y_Y_', to_number(null),
27161                  prg.SIGN * fpr.ACT_RAW_COST)         ACT_RAW_COST,
27162           decode(wbs_hdr.WP_FLAG
27163                    || '_' || sup_wbs_hdr.WP_FLAG
27164                    || '_' || sup_ver.STATUS_CODE,
27165                  'Y_Y_', to_number(null),
27166                  prg.SIGN * fpr.ACT_REVENUE)          ACT_REVENUE,
27167           decode(wbs_hdr.WP_FLAG
27168                    || '_' || sup_wbs_hdr.WP_FLAG
27169                    || '_' || sup_ver.STATUS_CODE,
27170                  'Y_Y_', to_number(null),
27171                  prg.SIGN * fpr.ACT_LABOR_RAW_COST)   ACT_LABOR_RAW_COST,
27172           decode(wbs_hdr.WP_FLAG
27173                    || '_' || sup_wbs_hdr.WP_FLAG
27174                    || '_' || sup_ver.STATUS_CODE,
27175                  'Y_Y_', to_number(null),
27176                  prg.SIGN * fpr.ACT_EQUIP_RAW_COST)   ACT_EQUIP_RAW_COST,
27177           decode(wbs_hdr.WP_FLAG
27178                    || '_' || sup_wbs_hdr.WP_FLAG
27179                    || '_' || sup_ver.STATUS_CODE,
27180                  'Y_Y_', to_number(null),
27181                  prg.SIGN * fpr.ETC_LABOR_HRS)        ETC_LABOR_HRS,
27182           decode(wbs_hdr.WP_FLAG
27183                    || '_' || sup_wbs_hdr.WP_FLAG
27184                    || '_' || sup_ver.STATUS_CODE,
27185                  'Y_Y_', to_number(null),
27186                  prg.SIGN * fpr.ETC_EQUIP_HRS)        ETC_EQUIP_HRS,
27187           decode(wbs_hdr.WP_FLAG
27188                    || '_' || sup_wbs_hdr.WP_FLAG
27189                    || '_' || sup_ver.STATUS_CODE,
27190                  'Y_Y_', to_number(null),
27191                  prg.SIGN * fpr.ETC_LABOR_BRDN_COST)  ETC_LABOR_BRDN_COST,
27192           decode(wbs_hdr.WP_FLAG
27193                    || '_' || sup_wbs_hdr.WP_FLAG
27194                    || '_' || sup_ver.STATUS_CODE,
27195                  'Y_Y_', to_number(null),
27196                  prg.SIGN * fpr.ETC_EQUIP_BRDN_COST)  ETC_EQUIP_BRDN_COST,
27197           decode(wbs_hdr.WP_FLAG
27198                    || '_' || sup_wbs_hdr.WP_FLAG
27199                    || '_' || sup_ver.STATUS_CODE,
27200                  'Y_Y_', to_number(null),
27201                  prg.SIGN * fpr.ETC_BRDN_COST)        ETC_BRDN_COST,
27202           decode(wbs_hdr.WP_FLAG
27203                    || '_' || sup_wbs_hdr.WP_FLAG
27204                    || '_' || sup_ver.STATUS_CODE,
27205                  'Y_Y_', to_number(null),
27206                  prg.SIGN * fpr.ETC_RAW_COST)         ETC_RAW_COST,
27207           decode(wbs_hdr.WP_FLAG
27208                    || '_' || sup_wbs_hdr.WP_FLAG
27209                    || '_' || sup_ver.STATUS_CODE,
27210                  'Y_Y_', to_number(null),
27211                  prg.SIGN * fpr.ETC_LABOR_RAW_COST)   ETC_LABOR_RAW_COST,
27212           decode(wbs_hdr.WP_FLAG
27213                    || '_' || sup_wbs_hdr.WP_FLAG
27214                    || '_' || sup_ver.STATUS_CODE,
27215                  'Y_Y_', to_number(null),
27216                  prg.SIGN * fpr.ETC_EQUIP_RAW_COST)   ETC_EQUIP_RAW_COST,
27217           prg.SIGN * fpr.CUSTOM1                      CUSTOM1,
27218           prg.SIGN * fpr.CUSTOM2                      CUSTOM2,
27219           prg.SIGN * fpr.CUSTOM3                      CUSTOM3,
27220           prg.SIGN * fpr.CUSTOM4                      CUSTOM4,
27221           prg.SIGN * fpr.CUSTOM5                      CUSTOM5,
27222           prg.SIGN * fpr.CUSTOM6                      CUSTOM6,
27223           prg.SIGN * fpr.CUSTOM7                      CUSTOM7,
27224           prg.SIGN * fpr.CUSTOM8                      CUSTOM8,
27225           prg.SIGN * fpr.CUSTOM9                      CUSTOM9,
27226           prg.SIGN * fpr.CUSTOM10                     CUSTOM10,
27227           prg.SIGN * fpr.CUSTOM11                     CUSTOM11,
27228           prg.SIGN * fpr.CUSTOM12                     CUSTOM12,
27229           prg.SIGN * fpr.CUSTOM13                     CUSTOM13,
27230           prg.SIGN * fpr.CUSTOM14                     CUSTOM14,
27231           prg.SIGN * fpr.CUSTOM15                     CUSTOM15
27232         from
27233           PJI_XBS_DENORM_DELTA       prg,
27234           PA_PROJ_ELEMENTS           prj_emt,
27235           PJI_PJP_WBS_HEADER         wbs_hdr,
27236           PJI_FP_XBS_ACCUM_F         fpr,
27237           PJI_PJP_WBS_HEADER         sup_wbs_hdr,
27238           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
27239           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
27240           (
27241             select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID
27242             from DUAL union all
27243             select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID
27244             from DUAL union all
27245             select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID
27246             from DUAL union all
27247             select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID
27248             from DUAL
27249           ) fin_plan
27250         where
27251           prg.WORKER_ID              =  p_worker_id                    and
27252           prg.STRUCT_TYPE            =  'PRG'                          and
27253           prg.SUP_LEVEL              =  l_level                        and
27254           nvl(prg.SUB_ROLLUP_ID,
27255               prg.SUP_EMT_ID)        <> prg.SUP_EMT_ID                 and
27256           fpr.PROJECT_ID             =  prj_emt.PROJECT_ID             and
27257           (((fpr.RBS_AGGR_LEVEL,
27258              fpr.WBS_ROLLUP_FLAG,
27259              fpr.PRG_ROLLUP_FLAG) in (('T', 'Y', 'Y'),
27260                                       ('T', 'Y', 'N'),
27261                                       ('T', 'N', 'Y'),
27262                                       ('T', 'N', 'N'),
27263                                       ('L', 'N', 'N')) and
27264              fpr.PROJECT_ELEMENT_ID = prg.SUB_EMT_ID) or
27265            ((fpr.RBS_AGGR_LEVEL,
27266              fpr.WBS_ROLLUP_FLAG,
27267              fpr.PRG_ROLLUP_FLAG) in (('L', 'N', 'Y'),
27268                                       ('L', 'N', 'N')) and
27269              fpr.PROJECT_ELEMENT_ID <> prg.SUB_EMT_ID))                and
27270           decode(fpr.PLAN_VERSION_ID,
27271                  -1, 'LF',
27272                  -2, 'LF',
27273                  -3, 'LF',
27274                  -4, 'LF',
27275                      decode(wbs_hdr.WP_FLAG,
27276                             'N', 'LF',
27277                               'LW')) =  prg.RELATIONSHIP_TYPE          and
27278           prj_emt.PROJ_ELEMENT_ID    =  prg.SUB_EMT_ID                 and
27279           wbs_hdr.PROJECT_ID         =  prj_emt.PROJECT_ID             and
27280           decode(wbs_hdr.WP_FLAG,
27281                  'Y', wbs_hdr.WBS_VERSION_ID,
27282                       -1)            = decode(wbs_hdr.WP_FLAG,
27283                                               'Y', prg.SUB_ID,
27284                                                    -1)                 and
27285           wbs_hdr.PLAN_VERSION_ID    =  fpr.PLAN_VERSION_ID            and
27286           wbs_hdr.PLAN_TYPE_CODE     =  fpr.PLAN_TYPE_CODE             and
27287           decode(fpr.PLAN_VERSION_ID,
27288                  -3, fpr.PLAN_TYPE_ID,
27289                  -4, fpr.PLAN_TYPE_ID,
27290                      -1)             =  decode(fpr.PLAN_VERSION_ID,
27291                                                -3, wbs_hdr.PLAN_TYPE_ID,
27292                                                -4, wbs_hdr.PLAN_TYPE_ID,
27293                                                    -1)                 and
27294           decode(wbs_hdr.WP_FLAG,
27295                  'N', decode(fpr.PLAN_VERSION_ID,
27296                              -1, 'Y',
27297                              -2, 'Y',
27298                              -3, 'Y',
27299                              -4, 'Y',
27300                                  decode(fpr.RBS_AGGR_LEVEL
27301                                           || '_' || wbs_hdr.CB_FLAG
27302                                           || '_' || wbs_hdr.CO_FLAG,
27303                                         'L_Y_Y', 'Y',
27304                                         'L_N_Y', 'Y',
27305                                         'L_Y_N', 'Y',
27306                                                  'N')),
27307                       'Y')           =  'Y'                            and
27308           prg.SUP_PROJECT_ID         =  sup_wbs_hdr.PROJECT_ID     (+) and
27309           prg.SUP_ID                 =  sup_wbs_hdr.WBS_VERSION_ID (+) and
27310           'Y'                        =  sup_wbs_hdr.WP_FLAG        (+) and
27311           wbs_hdr.PROJECT_ID         =  sub_ver.PROJECT_ID         (+) and
27312           wbs_hdr.WBS_VERSION_ID     =  sub_ver.ELEMENT_VERSION_ID (+) and
27313           'STRUCTURE_PUBLISHED'      =  sub_ver.STATUS_CODE        (+) and
27314           sup_wbs_hdr.PROJECT_ID     =  sup_ver.PROJECT_ID         (+) and
27315           sup_wbs_hdr.WBS_VERSION_ID =  sup_ver.ELEMENT_VERSION_ID (+) and
27316           'STRUCTURE_PUBLISHED'      =  sup_ver.STATUS_CODE        (+) and
27317           wbs_hdr.CB_FLAG            =  fin_plan.CB                (+) and
27318           wbs_hdr.CO_FLAG            =  fin_plan.CO                (+)
27319         union all
27320         select /*+ ordered parallel(pjp1) */                   -- changed for bug 5927368
27321                -- get structure level amounts from interim
27322           decode(pjp1.RBS_AGGR_LEVEL,
27323                  'L', 'DO_NOT_ROLLUP',
27324                       'WBS')                          STRUCT_TYPE,
27325           to_char(null)                               LINE_TYPE,
27326           prg.SUP_PROJECT_ID,
27327           prg.SUP_ID,
27328           prg.SUP_EMT_ID,
27329           prg.SUB_EMT_ID,
27330           prg.SUB_ROLLUP_ID,
27331           'PJP1'                                      LINE_SOURCE,
27332           decode(pjp1.PLAN_VERSION_ID,
27333                  -1, prg.SUB_ID,
27334                  -3, prg.SUB_ID,
27335                  -4, prg.SUB_ID,
27336                      decode(fin_plan.PLAN_VERSION_ID,
27337                             null, null,
27338                                   prg.SUB_ID))        SUB_ID,
27339           decode(pjp1.PLAN_VERSION_ID,
27340                  -1, 'N',
27341                  -3, 'N',
27342                  -4, 'N',
27343                      decode(fin_plan.PLAN_VERSION_ID,
27344                             null, null,
27345                                   'N'))               SUP_WP_FLAG,
27346           decode(pjp1.PLAN_VERSION_ID,
27347                  -1, pjp1.PLAN_VERSION_ID,
27348                  -3, pjp1.PLAN_VERSION_ID,
27349                  -4, pjp1.PLAN_VERSION_ID,
27350                      decode(fin_plan.PLAN_VERSION_ID,
27351                             null, null,
27352                                   fin_plan.PLAN_VERSION_ID)
27353                 )                                     SUB_PLAN_VERSION_ID,
27354           decode(pjp1.PLAN_VERSION_ID,
27355                  -1, pjp1.PLAN_TYPE_ID,
27356                  -3, pjp1.PLAN_TYPE_ID,
27357                  -4, pjp1.PLAN_TYPE_ID,
27358                      decode(fin_plan.PLAN_VERSION_ID,
27359                             null, null,
27360                                   pjp1.PLAN_TYPE_ID)) SUB_PLAN_TYPE_ID,
27361           pjp1.TIME_ID,
27362           pjp1.PERIOD_TYPE_ID,
27363           pjp1.CALENDAR_TYPE,
27364           pjp1.RBS_AGGR_LEVEL,
27365           pjp1.CURR_RECORD_TYPE_ID,
27366           pjp1.CURRENCY_CODE,
27367           pjp1.RBS_ELEMENT_ID,
27368           pjp1.RBS_VERSION_ID,
27369           decode(wbs_hdr.WP_FLAG,
27370                  'N', decode(wbs_hdr.PLAN_VERSION_ID,
27371                              -1, pjp1.PLAN_VERSION_ID,
27372                                  fin_plan.PLAN_VERSION_ID),
27373                       sup_wbs_hdr.PLAN_VERSION_ID)    PLAN_VERSION_ID,
27374           decode(wbs_hdr.WP_FLAG,
27375                  'N', pjp1.PLAN_TYPE_ID,
27376                       sup_wbs_hdr.PLAN_TYPE_ID)       PLAN_TYPE_ID,
27377           pjp1.PLAN_TYPE_CODE,
27378           decode(wbs_hdr.WP_FLAG
27379                    || '_' || sup_wbs_hdr.WP_FLAG
27380                    || '_' || sub_ver.STATUS_CODE
27381                    || '_' || sup_ver.STATUS_CODE,
27382                  'Y_Y__', to_number(null),
27383                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27384                  pjp1.RAW_COST)                       RAW_COST,
27385           decode(wbs_hdr.WP_FLAG
27386                    || '_' || sup_wbs_hdr.WP_FLAG
27387                    || '_' || sub_ver.STATUS_CODE
27388                    || '_' || sup_ver.STATUS_CODE,
27389                  'Y_Y__', to_number(null),
27390                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27391                  pjp1.BRDN_COST)                      BRDN_COST,
27392           decode(wbs_hdr.WP_FLAG
27393                    || '_' || sup_wbs_hdr.WP_FLAG
27394                    || '_' || sub_ver.STATUS_CODE
27395                    || '_' || sup_ver.STATUS_CODE,
27396                  'Y_Y__', to_number(null),
27397                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27398                  pjp1.REVENUE)                        REVENUE,
27399           decode(wbs_hdr.WP_FLAG
27400                    || '_' || sup_wbs_hdr.WP_FLAG
27401                    || '_' || sub_ver.STATUS_CODE
27402                    || '_' || sup_ver.STATUS_CODE,
27403                  'Y_Y__', to_number(null),
27404                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27405                  pjp1.BILL_RAW_COST)                  BILL_RAW_COST,
27406           decode(wbs_hdr.WP_FLAG
27407                    || '_' || sup_wbs_hdr.WP_FLAG
27408                    || '_' || sub_ver.STATUS_CODE
27409                    || '_' || sup_ver.STATUS_CODE,
27410                  'Y_Y__', to_number(null),
27411                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27412                  pjp1.BILL_BRDN_COST)                 BILL_BRDN_COST,
27413           decode(wbs_hdr.WP_FLAG
27414                    || '_' || sup_wbs_hdr.WP_FLAG
27415                    || '_' || sub_ver.STATUS_CODE
27416                    || '_' || sup_ver.STATUS_CODE,
27417                  'Y_Y__', to_number(null),
27418                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27419                  pjp1.BILL_LABOR_RAW_COST)            BILL_LABOR_RAW_COST,
27420           decode(wbs_hdr.WP_FLAG
27421                    || '_' || sup_wbs_hdr.WP_FLAG
27422                    || '_' || sub_ver.STATUS_CODE
27423                    || '_' || sup_ver.STATUS_CODE,
27424                  'Y_Y__', to_number(null),
27425                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27426                  pjp1.BILL_LABOR_BRDN_COST)           BILL_LABOR_BRDN_COST,
27427           decode(wbs_hdr.WP_FLAG
27428                    || '_' || sup_wbs_hdr.WP_FLAG
27429                    || '_' || sub_ver.STATUS_CODE
27430                    || '_' || sup_ver.STATUS_CODE,
27431                  'Y_Y__', to_number(null),
27432                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27433                  pjp1.BILL_LABOR_HRS)                 BILL_LABOR_HRS,
27434           decode(wbs_hdr.WP_FLAG
27435                    || '_' || sup_wbs_hdr.WP_FLAG
27436                    || '_' || sub_ver.STATUS_CODE
27437                    || '_' || sup_ver.STATUS_CODE,
27438                  'Y_Y__', to_number(null),
27439                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27440                  pjp1.EQUIPMENT_RAW_COST)             EQUIPMENT_RAW_COST,
27441           decode(wbs_hdr.WP_FLAG
27442                    || '_' || sup_wbs_hdr.WP_FLAG
27443                    || '_' || sub_ver.STATUS_CODE
27444                    || '_' || sup_ver.STATUS_CODE,
27445                  'Y_Y__', to_number(null),
27446                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27447                  pjp1.EQUIPMENT_BRDN_COST)            EQUIPMENT_BRDN_COST,
27448           decode(wbs_hdr.WP_FLAG
27449                    || '_' || sup_wbs_hdr.WP_FLAG
27450                    || '_' || sub_ver.STATUS_CODE
27451                    || '_' || sup_ver.STATUS_CODE,
27452                  'Y_Y__', to_number(null),
27453                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27454                  pjp1.CAPITALIZABLE_RAW_COST)         CAPITALIZABLE_RAW_COST,
27455           decode(wbs_hdr.WP_FLAG
27456                    || '_' || sup_wbs_hdr.WP_FLAG
27457                    || '_' || sub_ver.STATUS_CODE
27458                    || '_' || sup_ver.STATUS_CODE,
27459                  'Y_Y__', to_number(null),
27460                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27461                  pjp1.CAPITALIZABLE_BRDN_COST)        CAPITALIZABLE_BRDN_COST,
27462           decode(wbs_hdr.WP_FLAG
27463                    || '_' || sup_wbs_hdr.WP_FLAG
27464                    || '_' || sub_ver.STATUS_CODE
27465                    || '_' || sup_ver.STATUS_CODE,
27466                  'Y_Y__', to_number(null),
27467                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27468                  pjp1.LABOR_RAW_COST)                 LABOR_RAW_COST,
27469           decode(wbs_hdr.WP_FLAG
27470                    || '_' || sup_wbs_hdr.WP_FLAG
27471                    || '_' || sub_ver.STATUS_CODE
27472                    || '_' || sup_ver.STATUS_CODE,
27473                  'Y_Y__', to_number(null),
27474                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27475                  pjp1.LABOR_BRDN_COST)                LABOR_BRDN_COST,
27476           decode(wbs_hdr.WP_FLAG
27477                    || '_' || sup_wbs_hdr.WP_FLAG
27478                    || '_' || sub_ver.STATUS_CODE
27479                    || '_' || sup_ver.STATUS_CODE,
27480                  'Y_Y__', to_number(null),
27481                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27482                  pjp1.LABOR_HRS)                      LABOR_HRS,
27483           decode(wbs_hdr.WP_FLAG
27484                    || '_' || sup_wbs_hdr.WP_FLAG
27485                    || '_' || sub_ver.STATUS_CODE
27486                    || '_' || sup_ver.STATUS_CODE,
27487                  'Y_Y__', to_number(null),
27488                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27489                  pjp1.LABOR_REVENUE)                  LABOR_REVENUE,
27490           decode(wbs_hdr.WP_FLAG
27491                    || '_' || sup_wbs_hdr.WP_FLAG
27492                    || '_' || sub_ver.STATUS_CODE
27493                    || '_' || sup_ver.STATUS_CODE,
27494                  'Y_Y__', to_number(null),
27495                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27496                  pjp1.EQUIPMENT_HOURS)                EQUIPMENT_HOURS,
27497           decode(wbs_hdr.WP_FLAG
27498                    || '_' || sup_wbs_hdr.WP_FLAG
27499                    || '_' || sub_ver.STATUS_CODE
27500                    || '_' || sup_ver.STATUS_CODE,
27501                  'Y_Y__', to_number(null),
27502                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27503                  pjp1.BILLABLE_EQUIPMENT_HOURS)       BILLABLE_EQUIPMENT_HOURS,
27504           decode(wbs_hdr.WP_FLAG
27505                    || '_' || sup_wbs_hdr.WP_FLAG
27506                    || '_' || sub_ver.STATUS_CODE
27507                    || '_' || sup_ver.STATUS_CODE,
27508                  'Y_Y__', to_number(null),
27509                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27510                  pjp1.SUP_INV_COMMITTED_COST)         SUP_INV_COMMITTED_COST,
27511           decode(wbs_hdr.WP_FLAG
27512                    || '_' || sup_wbs_hdr.WP_FLAG
27513                    || '_' || sub_ver.STATUS_CODE
27514                    || '_' || sup_ver.STATUS_CODE,
27515                  'Y_Y__', to_number(null),
27516                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27517                  pjp1.PO_COMMITTED_COST)              PO_COMMITTED_COST,
27518           decode(wbs_hdr.WP_FLAG
27519                    || '_' || sup_wbs_hdr.WP_FLAG
27520                    || '_' || sub_ver.STATUS_CODE
27521                    || '_' || sup_ver.STATUS_CODE,
27522                  'Y_Y__', to_number(null),
27523                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27524                  pjp1.PR_COMMITTED_COST)              PR_COMMITTED_COST,
27525           decode(wbs_hdr.WP_FLAG
27526                    || '_' || sup_wbs_hdr.WP_FLAG
27527                    || '_' || sub_ver.STATUS_CODE
27528                    || '_' || sup_ver.STATUS_CODE,
27529                  'Y_Y__', to_number(null),
27530                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
27531                  pjp1.OTH_COMMITTED_COST)             OTH_COMMITTED_COST,
27532           decode(wbs_hdr.WP_FLAG
27533                    || '_' || sup_wbs_hdr.WP_FLAG
27534                    || '_' || sup_ver.STATUS_CODE,
27535                  'Y_Y_', to_number(null),
27536                  pjp1.ACT_LABOR_HRS)                  ACT_LABOR_HRS,
27537           decode(wbs_hdr.WP_FLAG
27538                    || '_' || sup_wbs_hdr.WP_FLAG
27539                    || '_' || sup_ver.STATUS_CODE,
27540                  'Y_Y_', to_number(null),
27541                  pjp1.ACT_EQUIP_HRS)                  ACT_EQUIP_HRS,
27542           decode(wbs_hdr.WP_FLAG
27543                    || '_' || sup_wbs_hdr.WP_FLAG
27544                    || '_' || sup_ver.STATUS_CODE,
27545                  'Y_Y_', to_number(null),
27546                  pjp1.ACT_LABOR_BRDN_COST)            ACT_LABOR_BRDN_COST,
27547           decode(wbs_hdr.WP_FLAG
27548                    || '_' || sup_wbs_hdr.WP_FLAG
27549                    || '_' || sup_ver.STATUS_CODE,
27550                  'Y_Y_', to_number(null),
27551                  pjp1.ACT_EQUIP_BRDN_COST)            ACT_EQUIP_BRDN_COST,
27552           decode(wbs_hdr.WP_FLAG
27553                    || '_' || sup_wbs_hdr.WP_FLAG
27554                    || '_' || sup_ver.STATUS_CODE,
27555                  'Y_Y_', to_number(null),
27556                  pjp1.ACT_BRDN_COST)                  ACT_BRDN_COST,
27557           decode(wbs_hdr.WP_FLAG
27558                    || '_' || sup_wbs_hdr.WP_FLAG
27559                    || '_' || sup_ver.STATUS_CODE,
27560                  'Y_Y_', to_number(null),
27561                  pjp1.ACT_RAW_COST)                   ACT_RAW_COST,
27562           decode(wbs_hdr.WP_FLAG
27563                    || '_' || sup_wbs_hdr.WP_FLAG
27564                    || '_' || sup_ver.STATUS_CODE,
27565                  'Y_Y_', to_number(null),
27566                  pjp1.ACT_REVENUE)                    ACT_REVENUE,
27567           decode(wbs_hdr.WP_FLAG
27568                    || '_' || sup_wbs_hdr.WP_FLAG
27569                    || '_' || sup_ver.STATUS_CODE,
27570                  'Y_Y_', to_number(null),
27571                  pjp1.ACT_LABOR_RAW_COST)             ACT_LABOR_RAW_COST,
27572           decode(wbs_hdr.WP_FLAG
27573                    || '_' || sup_wbs_hdr.WP_FLAG
27574                    || '_' || sup_ver.STATUS_CODE,
27575                  'Y_Y_', to_number(null),
27576                  pjp1.ACT_EQUIP_RAW_COST)             ACT_EQUIP_RAW_COST,
27577           decode(wbs_hdr.WP_FLAG
27578                    || '_' || sup_wbs_hdr.WP_FLAG
27579                    || '_' || sup_ver.STATUS_CODE,
27580                  'Y_Y_', to_number(null),
27581                  pjp1.ETC_LABOR_HRS)                  ETC_LABOR_HRS,
27582           decode(wbs_hdr.WP_FLAG
27583                    || '_' || sup_wbs_hdr.WP_FLAG
27584                    || '_' || sup_ver.STATUS_CODE,
27585                  'Y_Y_', to_number(null),
27586                  pjp1.ETC_EQUIP_HRS)                  ETC_EQUIP_HRS,
27587           decode(wbs_hdr.WP_FLAG
27588                    || '_' || sup_wbs_hdr.WP_FLAG
27589                    || '_' || sup_ver.STATUS_CODE,
27590                  'Y_Y_', to_number(null),
27591                  pjp1.ETC_LABOR_BRDN_COST)            ETC_LABOR_BRDN_COST,
27592           decode(wbs_hdr.WP_FLAG
27593                    || '_' || sup_wbs_hdr.WP_FLAG
27594                    || '_' || sup_ver.STATUS_CODE,
27595                  'Y_Y_', to_number(null),
27596                  pjp1.ETC_EQUIP_BRDN_COST)            ETC_EQUIP_BRDN_COST,
27597           decode(wbs_hdr.WP_FLAG
27598                    || '_' || sup_wbs_hdr.WP_FLAG
27599                    || '_' || sup_ver.STATUS_CODE,
27600                  'Y_Y_', to_number(null),
27601                  pjp1.ETC_BRDN_COST)                  ETC_BRDN_COST,
27602           decode(wbs_hdr.WP_FLAG
27603                    || '_' || sup_wbs_hdr.WP_FLAG
27604                    || '_' || sup_ver.STATUS_CODE,
27605                  'Y_Y_', to_number(null),
27606                  pjp1.ETC_RAW_COST)                   ETC_RAW_COST,
27607           decode(wbs_hdr.WP_FLAG
27608                    || '_' || sup_wbs_hdr.WP_FLAG
27609                    || '_' || sup_ver.STATUS_CODE,
27610                  'Y_Y_', to_number(null),
27611                  pjp1.ETC_LABOR_RAW_COST)             ETC_LABOR_RAW_COST,
27612           decode(wbs_hdr.WP_FLAG
27613                    || '_' || sup_wbs_hdr.WP_FLAG
27614                    || '_' || sup_ver.STATUS_CODE,
27615                  'Y_Y_', to_number(null),
27616                  pjp1.ETC_EQUIP_RAW_COST)             ETC_EQUIP_RAW_COST,
27617           pjp1.CUSTOM1,
27618           pjp1.CUSTOM2,
27619           pjp1.CUSTOM3,
27620           pjp1.CUSTOM4,
27621           pjp1.CUSTOM5,
27622           pjp1.CUSTOM6,
27623           pjp1.CUSTOM7,
27624           pjp1.CUSTOM8,
27625           pjp1.CUSTOM9,
27626           pjp1.CUSTOM10,
27627           pjp1.CUSTOM11,
27628           pjp1.CUSTOM12,
27629           pjp1.CUSTOM13,
27630           pjp1.CUSTOM14,
27631           pjp1.CUSTOM15
27632         from
27633           PJI_FP_AGGR_PJP1           pjp1,
27634           PJI_PJP_WBS_HEADER         wbs_hdr,
27635           PA_PROJ_ELEMENTS           prj_emt,
27636           PA_XBS_DENORM              prg,
27637           PJI_XBS_DENORM_DELTA       prg_delta,
27638           PJI_PJP_WBS_HEADER         sup_wbs_hdr,
27639           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
27640           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
27641           (
27642             select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID
27643             from DUAL union all
27644             select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID
27645             from DUAL union all
27646             select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID
27647             from DUAL union all
27648             select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID
27649             from DUAL
27650           ) fin_plan
27651         where
27652           prg.STRUCT_TYPE            =  'PRG'                           and
27653           prg.SUP_LEVEL              =  l_level                         and
27654           nvl(prg.SUB_ROLLUP_ID,
27655               prg.SUP_EMT_ID)        <> prg.SUP_EMT_ID                  and
27656           p_worker_id                =  prg_delta.WORKER_ID         (+) and
27657           prg.STRUCT_TYPE            =  prg_delta.STRUCT_TYPE       (+) and
27658           prg.SUP_PROJECT_ID         =  prg_delta.SUP_PROJECT_ID    (+) and
27659           prg.SUP_LEVEL              =  prg_delta.SUP_LEVEL         (+) and
27660           prg.SUP_ID                 =  prg_delta.SUP_ID            (+) and
27661           prg.SUB_LEVEL              =  prg_delta.SUB_LEVEL         (+) and
27662           prg.SUB_ID                 =  prg_delta.SUB_ID            (+) and
27663           prg.RELATIONSHIP_TYPE      =  prg_delta.RELATIONSHIP_TYPE (+) and
27664           1                          =  prg_delta.SIGN              (+) and
27665           (prg_delta.SUP_PROJECT_ID is not null or
27666            (prg_delta.SUP_PROJECT_ID is null and
27667             pjp1.RECORD_TYPE = 'P'))                                    and
27668           pjp1.WORKER_ID             =  p_worker_id                     and
27669           pjp1.PRG_LEVEL             in (0, prg.SUB_LEVEL)              and
27670           pjp1.PROJECT_ID            =  prj_emt.PROJECT_ID              and
27671           (((pjp1.RBS_AGGR_LEVEL,
27672              pjp1.WBS_ROLLUP_FLAG,
27673              pjp1.PRG_ROLLUP_FLAG) in (('T', 'Y', 'Y'),
27674                                        ('T', 'Y', 'N'),
27675                                        ('T', 'N', 'Y'),
27676                                        ('T', 'N', 'N'),
27677                                        ('L', 'N', 'N')) and
27678              pjp1.PROJECT_ELEMENT_ID = prg.SUB_EMT_ID) or
27679            ((pjp1.RBS_AGGR_LEVEL,
27680              pjp1.WBS_ROLLUP_FLAG,
27681              pjp1.PRG_ROLLUP_FLAG) in (('L', 'N', 'Y'),
27682                                        ('L', 'N', 'N')) and
27683              pjp1.PROJECT_ELEMENT_ID <> prg.SUB_EMT_ID))                and
27684           decode(pjp1.PLAN_VERSION_ID,
27685                  -1, 'LF',
27686                  -2, 'LF',
27687                  -3, 'LF',
27688                  -4, 'LF',
27689                      decode(wbs_hdr.WP_FLAG,
27690                             'N', 'LF',
27691                               'LW')) =  prg.RELATIONSHIP_TYPE           and
27692           prg.STRUCT_VERSION_ID      is null                            and
27693           prj_emt.OBJECT_TYPE        =  'PA_STRUCTURES'                 and
27694           prj_emt.PROJ_ELEMENT_ID    =  prg.SUB_EMT_ID                  and
27695           wbs_hdr.PROJECT_ID         =  prj_emt.PROJECT_ID              and
27696           wbs_hdr.WBS_VERSION_ID     =  prg.SUB_ID                      and
27697           wbs_hdr.PROJECT_ID         =  pjp1.PROJECT_ID                 and
27698           wbs_hdr.PLAN_VERSION_ID    =  pjp1.PLAN_VERSION_ID            and
27699           wbs_hdr.PLAN_TYPE_CODE     =  pjp1.PLAN_TYPE_CODE             and
27700           decode(pjp1.PLAN_VERSION_ID,
27701                  -3, pjp1.PLAN_TYPE_ID,
27702                  -4, pjp1.PLAN_TYPE_ID,
27703                      -1)             =  decode(pjp1.PLAN_VERSION_ID,
27704                                                -3, wbs_hdr.PLAN_TYPE_ID,
27705                                                -4, wbs_hdr.PLAN_TYPE_ID,
27706                                                    -1)                  and
27707           decode(wbs_hdr.WP_FLAG,
27708                  'N', decode(pjp1.PLAN_VERSION_ID,
27709                              -1, 'Y',
27710                              -2, 'Y',
27711                              -3, 'Y',
27712                              -4, 'Y',
27713                                  decode(pjp1.RBS_AGGR_LEVEL
27714                                           || '_' || wbs_hdr.CB_FLAG
27715                                           || '_' || wbs_hdr.CO_FLAG,
27716                                         'L_Y_Y', 'Y',
27717                                         'L_N_Y', 'Y',
27718                                         'L_Y_N', 'Y',
27719                                                  'N')),
27720                       'Y')           =  'Y'                             and
27721           prg.SUP_PROJECT_ID         =  sup_wbs_hdr.PROJECT_ID      (+) and
27722           prg.SUP_ID                 =  sup_wbs_hdr.WBS_VERSION_ID  (+) and
27723           'Y'                        =  sup_wbs_hdr.WP_FLAG         (+) and
27724           wbs_hdr.PROJECT_ID         =  sub_ver.PROJECT_ID          (+) and
27725           wbs_hdr.WBS_VERSION_ID     =  sub_ver.ELEMENT_VERSION_ID  (+) and
27726           'STRUCTURE_PUBLISHED'      =  sub_ver.STATUS_CODE         (+) and
27727           sup_wbs_hdr.PROJECT_ID     =  sup_ver.PROJECT_ID          (+) and
27728           sup_wbs_hdr.WBS_VERSION_ID =  sup_ver.ELEMENT_VERSION_ID  (+) and
27729           'STRUCTURE_PUBLISHED'      =  sup_ver.STATUS_CODE         (+) and
27730           wbs_hdr.CB_FLAG            =  fin_plan.CB                 (+) and
27731           wbs_hdr.CO_FLAG            =  fin_plan.CO                 (+)
27732         )                          pjp,
27733         PJI_PJP_PROJ_BATCH_MAP     map,
27734         PA_PROJ_WORKPLAN_ATTR      sup_wpa,
27735         PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
27736         PA_XBS_DENORM              wbs,
27737         (
27738           select 1     WBS_SUP_LEVEL,
27739                  'PRJ' INVERT_ID
27740           from   DUAL
27741           union all
27742           select 1     WBS_SUP_LEVEL,
27743                  'WBS' INVERT_ID
27744           from   DUAL
27745         ) top_slice
27746       where
27747         map.WORKER_ID           = p_worker_id                         and
27748         map.PROJECT_ID          = pjp.SUP_PROJECT_ID                  and
27749         pjp.SUP_EMT_ID          = sup_wpa.PROJ_ELEMENT_ID             and
27750         pjp.SUP_PROJECT_ID      = sup_fin_ver.PROJECT_ID          (+) and
27751         pjp.SUP_ID              = sup_fin_ver.ELEMENT_VERSION_ID  (+) and
27752         'STRUCTURE_WORKING'     = sup_fin_ver.STATUS_CODE         (+) and
27753         (pjp.SUP_WP_FLAG is null or
27754          (pjp.SUP_WP_FLAG is not null and
27755           (sup_fin_ver.PROJECT_ID is not null or
27756            sup_wpa.WP_ENABLE_VERSION_FLAG = 'N')))                    and
27757         'WBS'                   = wbs.STRUCT_TYPE                 (+) and
27758         pjp.STRUCT_TYPE         = wbs.STRUCT_TYPE                 (+) and
27759         pjp.SUP_PROJECT_ID      = wbs.SUP_PROJECT_ID              (+) and
27760         pjp.SUP_ID              = wbs.STRUCT_VERSION_ID           (+) and
27761         pjp.SUB_ROLLUP_ID       = wbs.SUB_EMT_ID                  (+) and
27762         wbs.SUP_LEVEL           = top_slice.WBS_SUP_LEVEL         (+)
27763       group by
27764         pjp.LINE_TYPE,
27765         pjp.SUP_PROJECT_ID,
27766         map.PROJECT_ORG_ID,
27767         map.PROJECT_ORGANIZATION_ID,
27768         decode(pjp.STRUCT_TYPE,
27769                'DO_NOT_ROLLUP', pjp.SUB_ROLLUP_ID,
27770                                 decode(top_slice.INVERT_ID,
27771                                        'PRJ', pjp.SUP_EMT_ID, wbs.SUP_EMT_ID)
27772               ),
27773         pjp.TIME_ID,
27774         pjp.PERIOD_TYPE_ID,
27775         pjp.CALENDAR_TYPE,
27776         pjp.RBS_AGGR_LEVEL,
27777         decode(pjp.STRUCT_TYPE,
27778                'DO_NOT_ROLLUP', 'N',
27779                                 decode(top_slice.INVERT_ID,
27780                                        'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
27781                                                           wbs.SUP_EMT_ID,
27782                                                           'N', 'Y'))
27783               ),
27784         pjp.CURR_RECORD_TYPE_ID,
27785         pjp.CURRENCY_CODE,
27786         pjp.RBS_ELEMENT_ID,
27787         pjp.RBS_VERSION_ID,
27788         pjp.PLAN_VERSION_ID,
27789         pjp.PLAN_TYPE_ID,
27790         pjp.PLAN_TYPE_CODE;
27791      elsif (p_worker_id =2) then
27792       -- Query for Partition 2
27793 
27794         insert /*+ parallel(PJI_FP_AGGR_PJP1) */
27795                    into PJI_FP_AGGR_PJP1 partition(P2)
27796       (
27797         WORKER_ID,
27798         RECORD_TYPE,
27799         PRG_LEVEL,
27800         LINE_TYPE,
27801         PROJECT_ID,
27802         PROJECT_ORG_ID,
27803         PROJECT_ORGANIZATION_ID,
27804         PROJECT_ELEMENT_ID,
27805         TIME_ID,
27806         PERIOD_TYPE_ID,
27807         CALENDAR_TYPE,
27808         RBS_AGGR_LEVEL,
27809         WBS_ROLLUP_FLAG,
27810         PRG_ROLLUP_FLAG,
27811         CURR_RECORD_TYPE_ID,
27812         CURRENCY_CODE,
27813         RBS_ELEMENT_ID,
27814         RBS_VERSION_ID,
27815         PLAN_VERSION_ID,
27816         PLAN_TYPE_ID,
27817         PLAN_TYPE_CODE,
27818         RAW_COST,
27819         BRDN_COST,
27820         REVENUE,
27821         BILL_RAW_COST,
27822         BILL_BRDN_COST,
27823         BILL_LABOR_RAW_COST,
27824         BILL_LABOR_BRDN_COST,
27825         BILL_LABOR_HRS,
27826         EQUIPMENT_RAW_COST,
27827         EQUIPMENT_BRDN_COST,
27828         CAPITALIZABLE_RAW_COST,
27829         CAPITALIZABLE_BRDN_COST,
27830         LABOR_RAW_COST,
27831         LABOR_BRDN_COST,
27832         LABOR_HRS,
27833         LABOR_REVENUE,
27834         EQUIPMENT_HOURS,
27835         BILLABLE_EQUIPMENT_HOURS,
27836         SUP_INV_COMMITTED_COST,
27837         PO_COMMITTED_COST,
27838         PR_COMMITTED_COST,
27839         OTH_COMMITTED_COST,
27840         ACT_LABOR_HRS,
27841         ACT_EQUIP_HRS,
27842         ACT_LABOR_BRDN_COST,
27843         ACT_EQUIP_BRDN_COST,
27844         ACT_BRDN_COST,
27845         ACT_RAW_COST,
27846         ACT_REVENUE,
27847         ACT_LABOR_RAW_COST,
27848         ACT_EQUIP_RAW_COST,
27849         ETC_LABOR_HRS,
27850         ETC_EQUIP_HRS,
27851         ETC_LABOR_BRDN_COST,
27852         ETC_EQUIP_BRDN_COST,
27853         ETC_BRDN_COST,
27854         ETC_RAW_COST,
27855         ETC_LABOR_RAW_COST,
27856         ETC_EQUIP_RAW_COST,
27857         CUSTOM1,
27858         CUSTOM2,
27859         CUSTOM3,
27860         CUSTOM4,
27861         CUSTOM5,
27862         CUSTOM6,
27863         CUSTOM7,
27864         CUSTOM8,
27865         CUSTOM9,
27866         CUSTOM10,
27867         CUSTOM11,
27868         CUSTOM12,
27869         CUSTOM13,
27870         CUSTOM14,
27871         CUSTOM15
27872       )
27873       select /*+ no_merge(pjp) */
27874         p_worker_id                                   WORKER_ID,
27875         'P'                                           RECORD_TYPE,
27876         l_level                                       PRG_LEVEL,
27877         pjp.LINE_TYPE,
27878         pjp.SUP_PROJECT_ID                            PROJECT_ID,
27879         map.PROJECT_ORG_ID,
27880         map.PROJECT_ORGANIZATION_ID,
27881         decode(pjp.STRUCT_TYPE,
27882                'DO_NOT_ROLLUP', pjp.SUB_ROLLUP_ID,
27883                                 decode(top_slice.INVERT_ID,
27884                                        'PRJ', pjp.SUP_EMT_ID, wbs.SUP_EMT_ID)
27885               )                                       PROJECT_ELEMENT_ID,
27886         pjp.TIME_ID,
27887         pjp.PERIOD_TYPE_ID,
27888         pjp.CALENDAR_TYPE,
27889         pjp.RBS_AGGR_LEVEL,
27890         decode(pjp.STRUCT_TYPE,
27891                'DO_NOT_ROLLUP', 'N',
27892                                 decode(top_slice.INVERT_ID,
27893                                        'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
27894                                                           wbs.SUP_EMT_ID,
27895                                                           'N', 'Y'))
27896               )                                       WBS_ROLLUP_FLAG,
27897         'Y'                                           PRG_ROLLUP_FLAG,
27898         pjp.CURR_RECORD_TYPE_ID,
27899         pjp.CURRENCY_CODE,
27900         pjp.RBS_ELEMENT_ID,
27901         pjp.RBS_VERSION_ID,
27902         pjp.PLAN_VERSION_ID,
27903         pjp.PLAN_TYPE_ID,
27904         pjp.PLAN_TYPE_CODE,
27905         sum(pjp.RAW_COST)                             RAW_COST,
27906         sum(pjp.BRDN_COST)                            BRDN_COST,
27907         sum(pjp.REVENUE)                              REVENUE,
27908         sum(pjp.BILL_RAW_COST)                        BILL_RAW_COST,
27909         sum(pjp.BILL_BRDN_COST)                       BILL_BRDN_COST,
27910         sum(pjp.BILL_LABOR_RAW_COST)                  BILL_LABOR_RAW_COST,
27911         sum(pjp.BILL_LABOR_BRDN_COST)                 BILL_LABOR_BRDN_COST,
27912         sum(pjp.BILL_LABOR_HRS)                       BILL_LABOR_HRS,
27913         sum(pjp.EQUIPMENT_RAW_COST)                   EQUIPMENT_RAW_COST,
27914         sum(pjp.EQUIPMENT_BRDN_COST)                  EQUIPMENT_BRDN_COST,
27915         sum(pjp.CAPITALIZABLE_RAW_COST)               CAPITALIZABLE_RAW_COST,
27916         sum(pjp.CAPITALIZABLE_BRDN_COST)              CAPITALIZABLE_BRDN_COST,
27917         sum(pjp.LABOR_RAW_COST)                       LABOR_RAW_COST,
27918         sum(pjp.LABOR_BRDN_COST)                      LABOR_BRDN_COST,
27919         sum(pjp.LABOR_HRS)                            LABOR_HRS,
27920         sum(pjp.LABOR_REVENUE)                        LABOR_REVENUE,
27921         sum(pjp.EQUIPMENT_HOURS)                      EQUIPMENT_HOURS,
27922         sum(pjp.BILLABLE_EQUIPMENT_HOURS)             BILLABLE_EQUIPMENT_HOURS,
27923         sum(pjp.SUP_INV_COMMITTED_COST)               SUP_INV_COMMITTED_COST,
27924         sum(pjp.PO_COMMITTED_COST)                    PO_COMMITTED_COST,
27925         sum(pjp.PR_COMMITTED_COST)                    PR_COMMITTED_COST,
27926         sum(pjp.OTH_COMMITTED_COST)                   OTH_COMMITTED_COST,
27927         sum(pjp.ACT_LABOR_HRS)                        ACT_LABOR_HRS,
27928         sum(pjp.ACT_EQUIP_HRS)                        ACT_EQUIP_HRS,
27929         sum(pjp.ACT_LABOR_BRDN_COST)                  ACT_LABOR_BRDN_COST,
27930         sum(pjp.ACT_EQUIP_BRDN_COST)                  ACT_EQUIP_BRDN_COST,
27931         sum(pjp.ACT_BRDN_COST)                        ACT_BRDN_COST,
27932         sum(pjp.ACT_RAW_COST)                         ACT_RAW_COST,
27933         sum(pjp.ACT_REVENUE)                          ACT_REVENUE,
27934         sum(pjp.ACT_LABOR_RAW_COST)                   ACT_LABOR_RAW_COST,
27935         sum(pjp.ACT_EQUIP_RAW_COST)                   ACT_EQUIP_RAW_COST,
27936         sum(pjp.ETC_LABOR_HRS)                        ETC_LABOR_HRS,
27937         sum(pjp.ETC_EQUIP_HRS)                        ETC_EQUIP_HRS,
27938         sum(pjp.ETC_LABOR_BRDN_COST)                  ETC_LABOR_BRDN_COST,
27939         sum(pjp.ETC_EQUIP_BRDN_COST)                  ETC_EQUIP_BRDN_COST,
27940         sum(pjp.ETC_BRDN_COST)                        ETC_BRDN_COST,
27941         sum(pjp.ETC_RAW_COST)                         ETC_RAW_COST,
27942         sum(pjp.ETC_LABOR_RAW_COST)                   ETC_LABOR_RAW_COST,
27943         sum(pjp.ETC_EQUIP_RAW_COST)                   ETC_EQUIP_RAW_COST,
27944         sum(pjp.CUSTOM1)                              CUSTOM1,
27945         sum(pjp.CUSTOM2)                              CUSTOM2,
27946         sum(pjp.CUSTOM3)                              CUSTOM3,
27947         sum(pjp.CUSTOM4)                              CUSTOM4,
27948         sum(pjp.CUSTOM5)                              CUSTOM5,
27949         sum(pjp.CUSTOM6)                              CUSTOM6,
27950         sum(pjp.CUSTOM7)                              CUSTOM7,
27951         sum(pjp.CUSTOM8)                              CUSTOM8,
27952         sum(pjp.CUSTOM9)                              CUSTOM9,
27953         sum(pjp.CUSTOM10)                             CUSTOM10,
27954         sum(pjp.CUSTOM11)                             CUSTOM11,
27955         sum(pjp.CUSTOM12)                             CUSTOM12,
27956         sum(pjp.CUSTOM13)                             CUSTOM13,
27957         sum(pjp.CUSTOM14)                             CUSTOM14,
27958         sum(pjp.CUSTOM15)                             CUSTOM15
27959       from
27960         (
27961         select /*+ ordered index(fpr PJI_FP_XBS_ACCUM_F_N1) */
27962                -- get structure level amounts from Reporting Lines
27963           decode(fpr.RBS_AGGR_LEVEL,
27964                  'L', 'DO_NOT_ROLLUP',
27965                       'WBS')                          STRUCT_TYPE,
27966           to_char(null)                               LINE_TYPE,
27967           prg.SUP_PROJECT_ID,
27968           prg.SUP_ID,
27969           prg.SUP_EMT_ID,
27970           prg.SUB_EMT_ID,
27971           prg.SUB_ROLLUP_ID,
27972           'FPR'                                       LINE_SOURCE,
27973           decode(fpr.PLAN_VERSION_ID,
27974                  -1, prg.SUB_ID,
27975                  -3, prg.SUB_ID,
27976                  -4, prg.SUB_ID,
27977                      decode(fin_plan.PLAN_VERSION_ID,
27978                             null, null,
27979                                   prg.SUB_ID))        SUB_ID,
27980           decode(fpr.PLAN_VERSION_ID,
27981                  -1, 'N',
27982                  -3, 'N',
27983                  -4, 'N',
27984                      decode(fin_plan.PLAN_VERSION_ID,
27985                             null, null,
27986                                   'N'))               SUP_WP_FLAG,
27987           decode(fpr.PLAN_VERSION_ID,
27988                  -1, fpr.PLAN_VERSION_ID,
27989                  -3, fpr.PLAN_VERSION_ID,
27990                  -4, fpr.PLAN_VERSION_ID,
27991                      decode(fin_plan.PLAN_VERSION_ID,
27992                             null, null,
27993                                   fin_plan.PLAN_VERSION_ID)
27994                 )                                     SUB_PLAN_VERSION_ID,
27995           decode(fpr.PLAN_VERSION_ID,
27996                  -1, fpr.PLAN_TYPE_ID,
27997                  -3, fpr.PLAN_TYPE_ID,
27998                  -4, fpr.PLAN_TYPE_ID,
27999                      decode(fin_plan.PLAN_VERSION_ID,
28000                             null, null,
28001                                   fpr.PLAN_TYPE_ID))  SUB_PLAN_TYPE_ID,
28002           fpr.TIME_ID,
28003           fpr.PERIOD_TYPE_ID,
28004           fpr.CALENDAR_TYPE,
28005           fpr.RBS_AGGR_LEVEL,
28006           fpr.CURR_RECORD_TYPE_ID,
28007           fpr.CURRENCY_CODE,
28008           fpr.RBS_ELEMENT_ID,
28009           fpr.RBS_VERSION_ID,
28010           decode(wbs_hdr.WP_FLAG,
28011                  'N', decode(wbs_hdr.PLAN_VERSION_ID,
28012                              -1, fpr.PLAN_VERSION_ID,
28013                                  fin_plan.PLAN_VERSION_ID),
28014                       sup_wbs_hdr.PLAN_VERSION_ID)    PLAN_VERSION_ID,
28015           decode(wbs_hdr.WP_FLAG,
28016                  'N', fpr.PLAN_TYPE_ID,
28017                       sup_wbs_hdr.PLAN_TYPE_ID)       PLAN_TYPE_ID,
28018           fpr.PLAN_TYPE_CODE,
28019           decode(wbs_hdr.WP_FLAG
28020                    || '_' || sup_wbs_hdr.WP_FLAG
28021                    || '_' || sub_ver.STATUS_CODE
28022                    || '_' || sup_ver.STATUS_CODE,
28023                  'Y_Y__', to_number(null),
28024                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28025                  prg.SIGN * fpr.RAW_COST)             RAW_COST,
28026           decode(wbs_hdr.WP_FLAG
28027                    || '_' || sup_wbs_hdr.WP_FLAG
28028                    || '_' || sub_ver.STATUS_CODE
28029                    || '_' || sup_ver.STATUS_CODE,
28030                  'Y_Y__', to_number(null),
28031                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28032                  prg.SIGN * fpr.BRDN_COST)            BRDN_COST,
28033           decode(wbs_hdr.WP_FLAG
28034                    || '_' || sup_wbs_hdr.WP_FLAG
28035                    || '_' || sub_ver.STATUS_CODE
28036                    || '_' || sup_ver.STATUS_CODE,
28037                  'Y_Y__', to_number(null),
28038                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28039                  prg.SIGN * fpr.REVENUE)              REVENUE,
28040           decode(wbs_hdr.WP_FLAG
28041                    || '_' || sup_wbs_hdr.WP_FLAG
28042                    || '_' || sub_ver.STATUS_CODE
28043                    || '_' || sup_ver.STATUS_CODE,
28044                  'Y_Y__', to_number(null),
28045                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28046                  prg.SIGN * fpr.BILL_RAW_COST)        BILL_RAW_COST,
28047           decode(wbs_hdr.WP_FLAG
28048                    || '_' || sup_wbs_hdr.WP_FLAG
28049                    || '_' || sub_ver.STATUS_CODE
28050                    || '_' || sup_ver.STATUS_CODE,
28051                  'Y_Y__', to_number(null),
28052                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28053                  prg.SIGN * fpr.BILL_BRDN_COST)       BILL_BRDN_COST,
28054           decode(wbs_hdr.WP_FLAG
28055                    || '_' || sup_wbs_hdr.WP_FLAG
28056                    || '_' || sub_ver.STATUS_CODE
28057                    || '_' || sup_ver.STATUS_CODE,
28058                  'Y_Y__', to_number(null),
28059                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28060                  prg.SIGN * fpr.BILL_LABOR_RAW_COST)  BILL_LABOR_RAW_COST,
28061           decode(wbs_hdr.WP_FLAG
28062                    || '_' || sup_wbs_hdr.WP_FLAG
28063                    || '_' || sub_ver.STATUS_CODE
28064                    || '_' || sup_ver.STATUS_CODE,
28065                  'Y_Y__', to_number(null),
28066                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28067                  prg.SIGN * fpr.BILL_LABOR_BRDN_COST) BILL_LABOR_BRDN_COST,
28068           decode(wbs_hdr.WP_FLAG
28069                    || '_' || sup_wbs_hdr.WP_FLAG
28070                    || '_' || sub_ver.STATUS_CODE
28071                    || '_' || sup_ver.STATUS_CODE,
28072                  'Y_Y__', to_number(null),
28073                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28074                  prg.SIGN * fpr.BILL_LABOR_HRS)       BILL_LABOR_HRS,
28075           decode(wbs_hdr.WP_FLAG
28076                    || '_' || sup_wbs_hdr.WP_FLAG
28077                    || '_' || sub_ver.STATUS_CODE
28078                    || '_' || sup_ver.STATUS_CODE,
28079                  'Y_Y__', to_number(null),
28080                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28081                  prg.SIGN * fpr.EQUIPMENT_RAW_COST)   EQUIPMENT_RAW_COST,
28082           decode(wbs_hdr.WP_FLAG
28083                    || '_' || sup_wbs_hdr.WP_FLAG
28084                    || '_' || sub_ver.STATUS_CODE
28085                    || '_' || sup_ver.STATUS_CODE,
28086                  'Y_Y__', to_number(null),
28087                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28088                  prg.SIGN * fpr.EQUIPMENT_BRDN_COST)  EQUIPMENT_BRDN_COST,
28089           decode(wbs_hdr.WP_FLAG
28090                    || '_' || sup_wbs_hdr.WP_FLAG
28091                    || '_' || sub_ver.STATUS_CODE
28092                    || '_' || sup_ver.STATUS_CODE,
28093                  'Y_Y__', to_number(null),
28094                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28095                  prg.SIGN * fpr.CAPITALIZABLE_RAW_COST)
28096                                                       CAPITALIZABLE_RAW_COST,
28097           decode(wbs_hdr.WP_FLAG
28098                    || '_' || sup_wbs_hdr.WP_FLAG
28099                    || '_' || sub_ver.STATUS_CODE
28100                    || '_' || sup_ver.STATUS_CODE,
28101                  'Y_Y__', to_number(null),
28102                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28103                  prg.SIGN * fpr.CAPITALIZABLE_BRDN_COST)
28104                                                       CAPITALIZABLE_BRDN_COST,
28105           decode(wbs_hdr.WP_FLAG
28106                    || '_' || sup_wbs_hdr.WP_FLAG
28107                    || '_' || sub_ver.STATUS_CODE
28108                    || '_' || sup_ver.STATUS_CODE,
28109                  'Y_Y__', to_number(null),
28110                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28111                  prg.SIGN * fpr.LABOR_RAW_COST)       LABOR_RAW_COST,
28112           decode(wbs_hdr.WP_FLAG
28113                    || '_' || sup_wbs_hdr.WP_FLAG
28114                    || '_' || sub_ver.STATUS_CODE
28115                    || '_' || sup_ver.STATUS_CODE,
28116                  'Y_Y__', to_number(null),
28117                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28118                  prg.SIGN * fpr.LABOR_BRDN_COST)      LABOR_BRDN_COST,
28119           decode(wbs_hdr.WP_FLAG
28120                    || '_' || sup_wbs_hdr.WP_FLAG
28121                    || '_' || sub_ver.STATUS_CODE
28122                    || '_' || sup_ver.STATUS_CODE,
28123                  'Y_Y__', to_number(null),
28124                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28125                  prg.SIGN * fpr.LABOR_HRS)            LABOR_HRS,
28126           decode(wbs_hdr.WP_FLAG
28127                    || '_' || sup_wbs_hdr.WP_FLAG
28128                    || '_' || sub_ver.STATUS_CODE
28129                    || '_' || sup_ver.STATUS_CODE,
28130                  'Y_Y__', to_number(null),
28131                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28132                  prg.SIGN * fpr.LABOR_REVENUE)        LABOR_REVENUE,
28133           decode(wbs_hdr.WP_FLAG
28134                    || '_' || sup_wbs_hdr.WP_FLAG
28135                    || '_' || sub_ver.STATUS_CODE
28136                    || '_' || sup_ver.STATUS_CODE,
28137                  'Y_Y__', to_number(null),
28138                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28139                  prg.SIGN * fpr.EQUIPMENT_HOURS)      EQUIPMENT_HOURS,
28140           decode(wbs_hdr.WP_FLAG
28141                    || '_' || sup_wbs_hdr.WP_FLAG
28142                    || '_' || sub_ver.STATUS_CODE
28143                    || '_' || sup_ver.STATUS_CODE,
28144                  'Y_Y__', to_number(null),
28145                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28146                  prg.SIGN * fpr.BILLABLE_EQUIPMENT_HOURS)
28147                                                       BILLABLE_EQUIPMENT_HOURS,
28148           decode(wbs_hdr.WP_FLAG
28149                    || '_' || sup_wbs_hdr.WP_FLAG
28150                    || '_' || sub_ver.STATUS_CODE
28151                    || '_' || sup_ver.STATUS_CODE,
28152                  'Y_Y__', to_number(null),
28153                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28154                  prg.SIGN * fpr.SUP_INV_COMMITTED_COST)
28155                                                       SUP_INV_COMMITTED_COST,
28156           decode(wbs_hdr.WP_FLAG
28157                    || '_' || sup_wbs_hdr.WP_FLAG
28158                    || '_' || sub_ver.STATUS_CODE
28159                    || '_' || sup_ver.STATUS_CODE,
28160                  'Y_Y__', to_number(null),
28161                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28162                  prg.SIGN * fpr.PO_COMMITTED_COST)    PO_COMMITTED_COST,
28163           decode(wbs_hdr.WP_FLAG
28164                    || '_' || sup_wbs_hdr.WP_FLAG
28165                    || '_' || sub_ver.STATUS_CODE
28166                    || '_' || sup_ver.STATUS_CODE,
28167                  'Y_Y__', to_number(null),
28168                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28169                  prg.SIGN * fpr.PR_COMMITTED_COST)    PR_COMMITTED_COST,
28170           decode(wbs_hdr.WP_FLAG
28171                    || '_' || sup_wbs_hdr.WP_FLAG
28172                    || '_' || sub_ver.STATUS_CODE
28173                    || '_' || sup_ver.STATUS_CODE,
28174                  'Y_Y__', to_number(null),
28175                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28176                  prg.SIGN * fpr.OTH_COMMITTED_COST)   OTH_COMMITTED_COST,
28177           decode(wbs_hdr.WP_FLAG
28178                    || '_' || sup_wbs_hdr.WP_FLAG
28179                    || '_' || sup_ver.STATUS_CODE,
28180                  'Y_Y_', to_number(null),
28181                  prg.SIGN * fpr.ACT_LABOR_HRS)        ACT_LABOR_HRS,
28182           decode(wbs_hdr.WP_FLAG
28183                    || '_' || sup_wbs_hdr.WP_FLAG
28184                    || '_' || sup_ver.STATUS_CODE,
28185                  'Y_Y_', to_number(null),
28186                  prg.SIGN * fpr.ACT_EQUIP_HRS)        ACT_EQUIP_HRS,
28187           decode(wbs_hdr.WP_FLAG
28188                    || '_' || sup_wbs_hdr.WP_FLAG
28189                    || '_' || sup_ver.STATUS_CODE,
28190                  'Y_Y_', to_number(null),
28191                  prg.SIGN * fpr.ACT_LABOR_BRDN_COST)  ACT_LABOR_BRDN_COST,
28192           decode(wbs_hdr.WP_FLAG
28193                    || '_' || sup_wbs_hdr.WP_FLAG
28194                    || '_' || sup_ver.STATUS_CODE,
28195                  'Y_Y_', to_number(null),
28196                  prg.SIGN * fpr.ACT_EQUIP_BRDN_COST)  ACT_EQUIP_BRDN_COST,
28197           decode(wbs_hdr.WP_FLAG
28198                    || '_' || sup_wbs_hdr.WP_FLAG
28199                    || '_' || sup_ver.STATUS_CODE,
28200                  'Y_Y_', to_number(null),
28201                  prg.SIGN * fpr.ACT_BRDN_COST)        ACT_BRDN_COST,
28202           decode(wbs_hdr.WP_FLAG
28203                    || '_' || sup_wbs_hdr.WP_FLAG
28204                    || '_' || sup_ver.STATUS_CODE,
28205                  'Y_Y_', to_number(null),
28206                  prg.SIGN * fpr.ACT_RAW_COST)         ACT_RAW_COST,
28207           decode(wbs_hdr.WP_FLAG
28208                    || '_' || sup_wbs_hdr.WP_FLAG
28209                    || '_' || sup_ver.STATUS_CODE,
28210                  'Y_Y_', to_number(null),
28211                  prg.SIGN * fpr.ACT_REVENUE)          ACT_REVENUE,
28212           decode(wbs_hdr.WP_FLAG
28213                    || '_' || sup_wbs_hdr.WP_FLAG
28214                    || '_' || sup_ver.STATUS_CODE,
28215                  'Y_Y_', to_number(null),
28216                  prg.SIGN * fpr.ACT_LABOR_RAW_COST)   ACT_LABOR_RAW_COST,
28217           decode(wbs_hdr.WP_FLAG
28218                    || '_' || sup_wbs_hdr.WP_FLAG
28219                    || '_' || sup_ver.STATUS_CODE,
28220                  'Y_Y_', to_number(null),
28221                  prg.SIGN * fpr.ACT_EQUIP_RAW_COST)   ACT_EQUIP_RAW_COST,
28222           decode(wbs_hdr.WP_FLAG
28223                    || '_' || sup_wbs_hdr.WP_FLAG
28224                    || '_' || sup_ver.STATUS_CODE,
28225                  'Y_Y_', to_number(null),
28226                  prg.SIGN * fpr.ETC_LABOR_HRS)        ETC_LABOR_HRS,
28227           decode(wbs_hdr.WP_FLAG
28228                    || '_' || sup_wbs_hdr.WP_FLAG
28229                    || '_' || sup_ver.STATUS_CODE,
28230                  'Y_Y_', to_number(null),
28231                  prg.SIGN * fpr.ETC_EQUIP_HRS)        ETC_EQUIP_HRS,
28232           decode(wbs_hdr.WP_FLAG
28233                    || '_' || sup_wbs_hdr.WP_FLAG
28234                    || '_' || sup_ver.STATUS_CODE,
28235                  'Y_Y_', to_number(null),
28236                  prg.SIGN * fpr.ETC_LABOR_BRDN_COST)  ETC_LABOR_BRDN_COST,
28237           decode(wbs_hdr.WP_FLAG
28238                    || '_' || sup_wbs_hdr.WP_FLAG
28239                    || '_' || sup_ver.STATUS_CODE,
28240                  'Y_Y_', to_number(null),
28241                  prg.SIGN * fpr.ETC_EQUIP_BRDN_COST)  ETC_EQUIP_BRDN_COST,
28242           decode(wbs_hdr.WP_FLAG
28243                    || '_' || sup_wbs_hdr.WP_FLAG
28244                    || '_' || sup_ver.STATUS_CODE,
28245                  'Y_Y_', to_number(null),
28246                  prg.SIGN * fpr.ETC_BRDN_COST)        ETC_BRDN_COST,
28247           decode(wbs_hdr.WP_FLAG
28248                    || '_' || sup_wbs_hdr.WP_FLAG
28249                    || '_' || sup_ver.STATUS_CODE,
28250                  'Y_Y_', to_number(null),
28251                  prg.SIGN * fpr.ETC_RAW_COST)         ETC_RAW_COST,
28252           decode(wbs_hdr.WP_FLAG
28253                    || '_' || sup_wbs_hdr.WP_FLAG
28254                    || '_' || sup_ver.STATUS_CODE,
28255                  'Y_Y_', to_number(null),
28256                  prg.SIGN * fpr.ETC_LABOR_RAW_COST)   ETC_LABOR_RAW_COST,
28257           decode(wbs_hdr.WP_FLAG
28258                    || '_' || sup_wbs_hdr.WP_FLAG
28259                    || '_' || sup_ver.STATUS_CODE,
28260                  'Y_Y_', to_number(null),
28261                  prg.SIGN * fpr.ETC_EQUIP_RAW_COST)   ETC_EQUIP_RAW_COST,
28262           prg.SIGN * fpr.CUSTOM1                      CUSTOM1,
28263           prg.SIGN * fpr.CUSTOM2                      CUSTOM2,
28264           prg.SIGN * fpr.CUSTOM3                      CUSTOM3,
28265           prg.SIGN * fpr.CUSTOM4                      CUSTOM4,
28266           prg.SIGN * fpr.CUSTOM5                      CUSTOM5,
28267           prg.SIGN * fpr.CUSTOM6                      CUSTOM6,
28268           prg.SIGN * fpr.CUSTOM7                      CUSTOM7,
28269           prg.SIGN * fpr.CUSTOM8                      CUSTOM8,
28270           prg.SIGN * fpr.CUSTOM9                      CUSTOM9,
28271           prg.SIGN * fpr.CUSTOM10                     CUSTOM10,
28272           prg.SIGN * fpr.CUSTOM11                     CUSTOM11,
28273           prg.SIGN * fpr.CUSTOM12                     CUSTOM12,
28274           prg.SIGN * fpr.CUSTOM13                     CUSTOM13,
28275           prg.SIGN * fpr.CUSTOM14                     CUSTOM14,
28276           prg.SIGN * fpr.CUSTOM15                     CUSTOM15
28277         from
28278           PJI_XBS_DENORM_DELTA       prg,
28279           PA_PROJ_ELEMENTS           prj_emt,
28280           PJI_PJP_WBS_HEADER         wbs_hdr,
28281           PJI_FP_XBS_ACCUM_F         fpr,
28282           PJI_PJP_WBS_HEADER         sup_wbs_hdr,
28283           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
28284           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
28285           (
28286             select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID
28287             from DUAL union all
28288             select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID
28289             from DUAL union all
28290             select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID
28291             from DUAL union all
28292             select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID
28293             from DUAL
28294           ) fin_plan
28295         where
28296           prg.WORKER_ID              =  p_worker_id                    and
28297           prg.STRUCT_TYPE            =  'PRG'                          and
28298           prg.SUP_LEVEL              =  l_level                        and
28299           nvl(prg.SUB_ROLLUP_ID,
28300               prg.SUP_EMT_ID)        <> prg.SUP_EMT_ID                 and
28301           fpr.PROJECT_ID             =  prj_emt.PROJECT_ID             and
28302           (((fpr.RBS_AGGR_LEVEL,
28303              fpr.WBS_ROLLUP_FLAG,
28304              fpr.PRG_ROLLUP_FLAG) in (('T', 'Y', 'Y'),
28305                                       ('T', 'Y', 'N'),
28306                                       ('T', 'N', 'Y'),
28307                                       ('T', 'N', 'N'),
28308                                       ('L', 'N', 'N')) and
28309              fpr.PROJECT_ELEMENT_ID = prg.SUB_EMT_ID) or
28310            ((fpr.RBS_AGGR_LEVEL,
28311              fpr.WBS_ROLLUP_FLAG,
28312              fpr.PRG_ROLLUP_FLAG) in (('L', 'N', 'Y'),
28313                                       ('L', 'N', 'N')) and
28314              fpr.PROJECT_ELEMENT_ID <> prg.SUB_EMT_ID))                and
28315           decode(fpr.PLAN_VERSION_ID,
28316                  -1, 'LF',
28317                  -2, 'LF',
28318                  -3, 'LF',
28319                  -4, 'LF',
28320                      decode(wbs_hdr.WP_FLAG,
28321                             'N', 'LF',
28322                               'LW')) =  prg.RELATIONSHIP_TYPE          and
28323           prj_emt.PROJ_ELEMENT_ID    =  prg.SUB_EMT_ID                 and
28324           wbs_hdr.PROJECT_ID         =  prj_emt.PROJECT_ID             and
28325           decode(wbs_hdr.WP_FLAG,
28326                  'Y', wbs_hdr.WBS_VERSION_ID,
28327                       -1)            = decode(wbs_hdr.WP_FLAG,
28328                                               'Y', prg.SUB_ID,
28329                                                    -1)                 and
28330           wbs_hdr.PLAN_VERSION_ID    =  fpr.PLAN_VERSION_ID            and
28331           wbs_hdr.PLAN_TYPE_CODE     =  fpr.PLAN_TYPE_CODE             and
28332           decode(fpr.PLAN_VERSION_ID,
28333                  -3, fpr.PLAN_TYPE_ID,
28334                  -4, fpr.PLAN_TYPE_ID,
28335                      -1)             =  decode(fpr.PLAN_VERSION_ID,
28336                                                -3, wbs_hdr.PLAN_TYPE_ID,
28337                                                -4, wbs_hdr.PLAN_TYPE_ID,
28338                                                    -1)                 and
28339           decode(wbs_hdr.WP_FLAG,
28340                  'N', decode(fpr.PLAN_VERSION_ID,
28341                              -1, 'Y',
28342                              -2, 'Y',
28343                              -3, 'Y',
28344                              -4, 'Y',
28345                                  decode(fpr.RBS_AGGR_LEVEL
28346                                           || '_' || wbs_hdr.CB_FLAG
28347                                           || '_' || wbs_hdr.CO_FLAG,
28348                                         'L_Y_Y', 'Y',
28349                                         'L_N_Y', 'Y',
28350                                         'L_Y_N', 'Y',
28351                                                  'N')),
28352                       'Y')           =  'Y'                            and
28353           prg.SUP_PROJECT_ID         =  sup_wbs_hdr.PROJECT_ID     (+) and
28354           prg.SUP_ID                 =  sup_wbs_hdr.WBS_VERSION_ID (+) and
28355           'Y'                        =  sup_wbs_hdr.WP_FLAG        (+) and
28356           wbs_hdr.PROJECT_ID         =  sub_ver.PROJECT_ID         (+) and
28357           wbs_hdr.WBS_VERSION_ID     =  sub_ver.ELEMENT_VERSION_ID (+) and
28358           'STRUCTURE_PUBLISHED'      =  sub_ver.STATUS_CODE        (+) and
28359           sup_wbs_hdr.PROJECT_ID     =  sup_ver.PROJECT_ID         (+) and
28360           sup_wbs_hdr.WBS_VERSION_ID =  sup_ver.ELEMENT_VERSION_ID (+) and
28361           'STRUCTURE_PUBLISHED'      =  sup_ver.STATUS_CODE        (+) and
28362           wbs_hdr.CB_FLAG            =  fin_plan.CB                (+) and
28363           wbs_hdr.CO_FLAG            =  fin_plan.CO                (+)
28364         union all
28365         select /*+ ordered parallel(pjp1) */                   -- changed for bug 5927368
28366                -- get structure level amounts from interim
28367           decode(pjp1.RBS_AGGR_LEVEL,
28368                  'L', 'DO_NOT_ROLLUP',
28369                       'WBS')                          STRUCT_TYPE,
28370           to_char(null)                               LINE_TYPE,
28371           prg.SUP_PROJECT_ID,
28372           prg.SUP_ID,
28373           prg.SUP_EMT_ID,
28374           prg.SUB_EMT_ID,
28375           prg.SUB_ROLLUP_ID,
28376           'PJP1'                                      LINE_SOURCE,
28377           decode(pjp1.PLAN_VERSION_ID,
28378                  -1, prg.SUB_ID,
28379                  -3, prg.SUB_ID,
28380                  -4, prg.SUB_ID,
28381                      decode(fin_plan.PLAN_VERSION_ID,
28382                             null, null,
28383                                   prg.SUB_ID))        SUB_ID,
28384           decode(pjp1.PLAN_VERSION_ID,
28385                  -1, 'N',
28386                  -3, 'N',
28387                  -4, 'N',
28388                      decode(fin_plan.PLAN_VERSION_ID,
28389                             null, null,
28390                                   'N'))               SUP_WP_FLAG,
28391           decode(pjp1.PLAN_VERSION_ID,
28392                  -1, pjp1.PLAN_VERSION_ID,
28393                  -3, pjp1.PLAN_VERSION_ID,
28394                  -4, pjp1.PLAN_VERSION_ID,
28395                      decode(fin_plan.PLAN_VERSION_ID,
28396                             null, null,
28397                                   fin_plan.PLAN_VERSION_ID)
28398                 )                                     SUB_PLAN_VERSION_ID,
28399           decode(pjp1.PLAN_VERSION_ID,
28400                  -1, pjp1.PLAN_TYPE_ID,
28401                  -3, pjp1.PLAN_TYPE_ID,
28402                  -4, pjp1.PLAN_TYPE_ID,
28403                      decode(fin_plan.PLAN_VERSION_ID,
28404                             null, null,
28405                                   pjp1.PLAN_TYPE_ID)) SUB_PLAN_TYPE_ID,
28406           pjp1.TIME_ID,
28407           pjp1.PERIOD_TYPE_ID,
28408           pjp1.CALENDAR_TYPE,
28409           pjp1.RBS_AGGR_LEVEL,
28410           pjp1.CURR_RECORD_TYPE_ID,
28411           pjp1.CURRENCY_CODE,
28412           pjp1.RBS_ELEMENT_ID,
28413           pjp1.RBS_VERSION_ID,
28414           decode(wbs_hdr.WP_FLAG,
28415                  'N', decode(wbs_hdr.PLAN_VERSION_ID,
28416                              -1, pjp1.PLAN_VERSION_ID,
28417                                  fin_plan.PLAN_VERSION_ID),
28418                       sup_wbs_hdr.PLAN_VERSION_ID)    PLAN_VERSION_ID,
28419           decode(wbs_hdr.WP_FLAG,
28420                  'N', pjp1.PLAN_TYPE_ID,
28421                       sup_wbs_hdr.PLAN_TYPE_ID)       PLAN_TYPE_ID,
28422           pjp1.PLAN_TYPE_CODE,
28423           decode(wbs_hdr.WP_FLAG
28424                    || '_' || sup_wbs_hdr.WP_FLAG
28425                    || '_' || sub_ver.STATUS_CODE
28426                    || '_' || sup_ver.STATUS_CODE,
28427                  'Y_Y__', to_number(null),
28428                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28429                  pjp1.RAW_COST)                       RAW_COST,
28430           decode(wbs_hdr.WP_FLAG
28431                    || '_' || sup_wbs_hdr.WP_FLAG
28432                    || '_' || sub_ver.STATUS_CODE
28433                    || '_' || sup_ver.STATUS_CODE,
28434                  'Y_Y__', to_number(null),
28435                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28436                  pjp1.BRDN_COST)                      BRDN_COST,
28437           decode(wbs_hdr.WP_FLAG
28438                    || '_' || sup_wbs_hdr.WP_FLAG
28439                    || '_' || sub_ver.STATUS_CODE
28440                    || '_' || sup_ver.STATUS_CODE,
28441                  'Y_Y__', to_number(null),
28442                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28443                  pjp1.REVENUE)                        REVENUE,
28444           decode(wbs_hdr.WP_FLAG
28445                    || '_' || sup_wbs_hdr.WP_FLAG
28446                    || '_' || sub_ver.STATUS_CODE
28447                    || '_' || sup_ver.STATUS_CODE,
28448                  'Y_Y__', to_number(null),
28449                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28450                  pjp1.BILL_RAW_COST)                  BILL_RAW_COST,
28451           decode(wbs_hdr.WP_FLAG
28452                    || '_' || sup_wbs_hdr.WP_FLAG
28453                    || '_' || sub_ver.STATUS_CODE
28454                    || '_' || sup_ver.STATUS_CODE,
28455                  'Y_Y__', to_number(null),
28456                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28457                  pjp1.BILL_BRDN_COST)                 BILL_BRDN_COST,
28458           decode(wbs_hdr.WP_FLAG
28459                    || '_' || sup_wbs_hdr.WP_FLAG
28460                    || '_' || sub_ver.STATUS_CODE
28461                    || '_' || sup_ver.STATUS_CODE,
28462                  'Y_Y__', to_number(null),
28463                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28464                  pjp1.BILL_LABOR_RAW_COST)            BILL_LABOR_RAW_COST,
28465           decode(wbs_hdr.WP_FLAG
28466                    || '_' || sup_wbs_hdr.WP_FLAG
28467                    || '_' || sub_ver.STATUS_CODE
28468                    || '_' || sup_ver.STATUS_CODE,
28469                  'Y_Y__', to_number(null),
28470                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28471                  pjp1.BILL_LABOR_BRDN_COST)           BILL_LABOR_BRDN_COST,
28472           decode(wbs_hdr.WP_FLAG
28473                    || '_' || sup_wbs_hdr.WP_FLAG
28474                    || '_' || sub_ver.STATUS_CODE
28475                    || '_' || sup_ver.STATUS_CODE,
28476                  'Y_Y__', to_number(null),
28477                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28478                  pjp1.BILL_LABOR_HRS)                 BILL_LABOR_HRS,
28479           decode(wbs_hdr.WP_FLAG
28480                    || '_' || sup_wbs_hdr.WP_FLAG
28481                    || '_' || sub_ver.STATUS_CODE
28482                    || '_' || sup_ver.STATUS_CODE,
28483                  'Y_Y__', to_number(null),
28484                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28485                  pjp1.EQUIPMENT_RAW_COST)             EQUIPMENT_RAW_COST,
28486           decode(wbs_hdr.WP_FLAG
28487                    || '_' || sup_wbs_hdr.WP_FLAG
28488                    || '_' || sub_ver.STATUS_CODE
28489                    || '_' || sup_ver.STATUS_CODE,
28490                  'Y_Y__', to_number(null),
28491                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28492                  pjp1.EQUIPMENT_BRDN_COST)            EQUIPMENT_BRDN_COST,
28493           decode(wbs_hdr.WP_FLAG
28494                    || '_' || sup_wbs_hdr.WP_FLAG
28495                    || '_' || sub_ver.STATUS_CODE
28496                    || '_' || sup_ver.STATUS_CODE,
28497                  'Y_Y__', to_number(null),
28498                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28499                  pjp1.CAPITALIZABLE_RAW_COST)         CAPITALIZABLE_RAW_COST,
28500           decode(wbs_hdr.WP_FLAG
28501                    || '_' || sup_wbs_hdr.WP_FLAG
28502                    || '_' || sub_ver.STATUS_CODE
28503                    || '_' || sup_ver.STATUS_CODE,
28504                  'Y_Y__', to_number(null),
28505                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28506                  pjp1.CAPITALIZABLE_BRDN_COST)        CAPITALIZABLE_BRDN_COST,
28507           decode(wbs_hdr.WP_FLAG
28508                    || '_' || sup_wbs_hdr.WP_FLAG
28509                    || '_' || sub_ver.STATUS_CODE
28510                    || '_' || sup_ver.STATUS_CODE,
28511                  'Y_Y__', to_number(null),
28512                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28513                  pjp1.LABOR_RAW_COST)                 LABOR_RAW_COST,
28514           decode(wbs_hdr.WP_FLAG
28515                    || '_' || sup_wbs_hdr.WP_FLAG
28516                    || '_' || sub_ver.STATUS_CODE
28517                    || '_' || sup_ver.STATUS_CODE,
28518                  'Y_Y__', to_number(null),
28519                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28520                  pjp1.LABOR_BRDN_COST)                LABOR_BRDN_COST,
28521           decode(wbs_hdr.WP_FLAG
28522                    || '_' || sup_wbs_hdr.WP_FLAG
28523                    || '_' || sub_ver.STATUS_CODE
28524                    || '_' || sup_ver.STATUS_CODE,
28525                  'Y_Y__', to_number(null),
28526                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28527                  pjp1.LABOR_HRS)                      LABOR_HRS,
28528           decode(wbs_hdr.WP_FLAG
28529                    || '_' || sup_wbs_hdr.WP_FLAG
28530                    || '_' || sub_ver.STATUS_CODE
28531                    || '_' || sup_ver.STATUS_CODE,
28532                  'Y_Y__', to_number(null),
28533                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28534                  pjp1.LABOR_REVENUE)                  LABOR_REVENUE,
28535           decode(wbs_hdr.WP_FLAG
28536                    || '_' || sup_wbs_hdr.WP_FLAG
28537                    || '_' || sub_ver.STATUS_CODE
28538                    || '_' || sup_ver.STATUS_CODE,
28539                  'Y_Y__', to_number(null),
28540                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28541                  pjp1.EQUIPMENT_HOURS)                EQUIPMENT_HOURS,
28542           decode(wbs_hdr.WP_FLAG
28543                    || '_' || sup_wbs_hdr.WP_FLAG
28544                    || '_' || sub_ver.STATUS_CODE
28545                    || '_' || sup_ver.STATUS_CODE,
28546                  'Y_Y__', to_number(null),
28547                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28548                  pjp1.BILLABLE_EQUIPMENT_HOURS)       BILLABLE_EQUIPMENT_HOURS,
28549           decode(wbs_hdr.WP_FLAG
28550                    || '_' || sup_wbs_hdr.WP_FLAG
28551                    || '_' || sub_ver.STATUS_CODE
28552                    || '_' || sup_ver.STATUS_CODE,
28553                  'Y_Y__', to_number(null),
28554                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28555                  pjp1.SUP_INV_COMMITTED_COST)         SUP_INV_COMMITTED_COST,
28556           decode(wbs_hdr.WP_FLAG
28557                    || '_' || sup_wbs_hdr.WP_FLAG
28558                    || '_' || sub_ver.STATUS_CODE
28559                    || '_' || sup_ver.STATUS_CODE,
28560                  'Y_Y__', to_number(null),
28561                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28562                  pjp1.PO_COMMITTED_COST)              PO_COMMITTED_COST,
28563           decode(wbs_hdr.WP_FLAG
28564                    || '_' || sup_wbs_hdr.WP_FLAG
28565                    || '_' || sub_ver.STATUS_CODE
28566                    || '_' || sup_ver.STATUS_CODE,
28567                  'Y_Y__', to_number(null),
28568                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28569                  pjp1.PR_COMMITTED_COST)              PR_COMMITTED_COST,
28570           decode(wbs_hdr.WP_FLAG
28571                    || '_' || sup_wbs_hdr.WP_FLAG
28572                    || '_' || sub_ver.STATUS_CODE
28573                    || '_' || sup_ver.STATUS_CODE,
28574                  'Y_Y__', to_number(null),
28575                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
28576                  pjp1.OTH_COMMITTED_COST)             OTH_COMMITTED_COST,
28577           decode(wbs_hdr.WP_FLAG
28578                    || '_' || sup_wbs_hdr.WP_FLAG
28579                    || '_' || sup_ver.STATUS_CODE,
28580                  'Y_Y_', to_number(null),
28581                  pjp1.ACT_LABOR_HRS)                  ACT_LABOR_HRS,
28582           decode(wbs_hdr.WP_FLAG
28583                    || '_' || sup_wbs_hdr.WP_FLAG
28584                    || '_' || sup_ver.STATUS_CODE,
28585                  'Y_Y_', to_number(null),
28586                  pjp1.ACT_EQUIP_HRS)                  ACT_EQUIP_HRS,
28587           decode(wbs_hdr.WP_FLAG
28588                    || '_' || sup_wbs_hdr.WP_FLAG
28589                    || '_' || sup_ver.STATUS_CODE,
28590                  'Y_Y_', to_number(null),
28591                  pjp1.ACT_LABOR_BRDN_COST)            ACT_LABOR_BRDN_COST,
28592           decode(wbs_hdr.WP_FLAG
28593                    || '_' || sup_wbs_hdr.WP_FLAG
28594                    || '_' || sup_ver.STATUS_CODE,
28595                  'Y_Y_', to_number(null),
28596                  pjp1.ACT_EQUIP_BRDN_COST)            ACT_EQUIP_BRDN_COST,
28597           decode(wbs_hdr.WP_FLAG
28598                    || '_' || sup_wbs_hdr.WP_FLAG
28599                    || '_' || sup_ver.STATUS_CODE,
28600                  'Y_Y_', to_number(null),
28601                  pjp1.ACT_BRDN_COST)                  ACT_BRDN_COST,
28602           decode(wbs_hdr.WP_FLAG
28603                    || '_' || sup_wbs_hdr.WP_FLAG
28604                    || '_' || sup_ver.STATUS_CODE,
28605                  'Y_Y_', to_number(null),
28606                  pjp1.ACT_RAW_COST)                   ACT_RAW_COST,
28607           decode(wbs_hdr.WP_FLAG
28608                    || '_' || sup_wbs_hdr.WP_FLAG
28609                    || '_' || sup_ver.STATUS_CODE,
28610                  'Y_Y_', to_number(null),
28611                  pjp1.ACT_REVENUE)                    ACT_REVENUE,
28612           decode(wbs_hdr.WP_FLAG
28613                    || '_' || sup_wbs_hdr.WP_FLAG
28614                    || '_' || sup_ver.STATUS_CODE,
28615                  'Y_Y_', to_number(null),
28616                  pjp1.ACT_LABOR_RAW_COST)             ACT_LABOR_RAW_COST,
28617           decode(wbs_hdr.WP_FLAG
28618                    || '_' || sup_wbs_hdr.WP_FLAG
28619                    || '_' || sup_ver.STATUS_CODE,
28620                  'Y_Y_', to_number(null),
28621                  pjp1.ACT_EQUIP_RAW_COST)             ACT_EQUIP_RAW_COST,
28622           decode(wbs_hdr.WP_FLAG
28623                    || '_' || sup_wbs_hdr.WP_FLAG
28624                    || '_' || sup_ver.STATUS_CODE,
28625                  'Y_Y_', to_number(null),
28626                  pjp1.ETC_LABOR_HRS)                  ETC_LABOR_HRS,
28627           decode(wbs_hdr.WP_FLAG
28628                    || '_' || sup_wbs_hdr.WP_FLAG
28629                    || '_' || sup_ver.STATUS_CODE,
28630                  'Y_Y_', to_number(null),
28631                  pjp1.ETC_EQUIP_HRS)                  ETC_EQUIP_HRS,
28632           decode(wbs_hdr.WP_FLAG
28633                    || '_' || sup_wbs_hdr.WP_FLAG
28634                    || '_' || sup_ver.STATUS_CODE,
28635                  'Y_Y_', to_number(null),
28636                  pjp1.ETC_LABOR_BRDN_COST)            ETC_LABOR_BRDN_COST,
28637           decode(wbs_hdr.WP_FLAG
28638                    || '_' || sup_wbs_hdr.WP_FLAG
28639                    || '_' || sup_ver.STATUS_CODE,
28640                  'Y_Y_', to_number(null),
28641                  pjp1.ETC_EQUIP_BRDN_COST)            ETC_EQUIP_BRDN_COST,
28642           decode(wbs_hdr.WP_FLAG
28643                    || '_' || sup_wbs_hdr.WP_FLAG
28644                    || '_' || sup_ver.STATUS_CODE,
28645                  'Y_Y_', to_number(null),
28646                  pjp1.ETC_BRDN_COST)                  ETC_BRDN_COST,
28647           decode(wbs_hdr.WP_FLAG
28648                    || '_' || sup_wbs_hdr.WP_FLAG
28649                    || '_' || sup_ver.STATUS_CODE,
28650                  'Y_Y_', to_number(null),
28651                  pjp1.ETC_RAW_COST)                   ETC_RAW_COST,
28652           decode(wbs_hdr.WP_FLAG
28653                    || '_' || sup_wbs_hdr.WP_FLAG
28654                    || '_' || sup_ver.STATUS_CODE,
28655                  'Y_Y_', to_number(null),
28656                  pjp1.ETC_LABOR_RAW_COST)             ETC_LABOR_RAW_COST,
28657           decode(wbs_hdr.WP_FLAG
28658                    || '_' || sup_wbs_hdr.WP_FLAG
28659                    || '_' || sup_ver.STATUS_CODE,
28660                  'Y_Y_', to_number(null),
28661                  pjp1.ETC_EQUIP_RAW_COST)             ETC_EQUIP_RAW_COST,
28662           pjp1.CUSTOM1,
28663           pjp1.CUSTOM2,
28664           pjp1.CUSTOM3,
28665           pjp1.CUSTOM4,
28666           pjp1.CUSTOM5,
28667           pjp1.CUSTOM6,
28668           pjp1.CUSTOM7,
28669           pjp1.CUSTOM8,
28670           pjp1.CUSTOM9,
28671           pjp1.CUSTOM10,
28672           pjp1.CUSTOM11,
28673           pjp1.CUSTOM12,
28674           pjp1.CUSTOM13,
28675           pjp1.CUSTOM14,
28676           pjp1.CUSTOM15
28677         from
28678           PJI_FP_AGGR_PJP1           pjp1,
28679           PJI_PJP_WBS_HEADER         wbs_hdr,
28680           PA_PROJ_ELEMENTS           prj_emt,
28681           PA_XBS_DENORM              prg,
28682           PJI_XBS_DENORM_DELTA       prg_delta,
28683           PJI_PJP_WBS_HEADER         sup_wbs_hdr,
28684           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
28685           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
28686           (
28687             select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID
28688             from DUAL union all
28689             select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID
28690             from DUAL union all
28691             select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID
28692             from DUAL union all
28693             select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID
28694             from DUAL
28695           ) fin_plan
28696         where
28697           prg.STRUCT_TYPE            =  'PRG'                           and
28698           prg.SUP_LEVEL              =  l_level                         and
28699           nvl(prg.SUB_ROLLUP_ID,
28700               prg.SUP_EMT_ID)        <> prg.SUP_EMT_ID                  and
28701           p_worker_id                =  prg_delta.WORKER_ID         (+) and
28702           prg.STRUCT_TYPE            =  prg_delta.STRUCT_TYPE       (+) and
28703           prg.SUP_PROJECT_ID         =  prg_delta.SUP_PROJECT_ID    (+) and
28704           prg.SUP_LEVEL              =  prg_delta.SUP_LEVEL         (+) and
28705           prg.SUP_ID                 =  prg_delta.SUP_ID            (+) and
28706           prg.SUB_LEVEL              =  prg_delta.SUB_LEVEL         (+) and
28707           prg.SUB_ID                 =  prg_delta.SUB_ID            (+) and
28708           prg.RELATIONSHIP_TYPE      =  prg_delta.RELATIONSHIP_TYPE (+) and
28709           1                          =  prg_delta.SIGN              (+) and
28710           (prg_delta.SUP_PROJECT_ID is not null or
28711            (prg_delta.SUP_PROJECT_ID is null and
28712             pjp1.RECORD_TYPE = 'P'))                                    and
28713           pjp1.WORKER_ID             =  p_worker_id                     and
28714           pjp1.PRG_LEVEL             in (0, prg.SUB_LEVEL)              and
28715           pjp1.PROJECT_ID            =  prj_emt.PROJECT_ID              and
28716           (((pjp1.RBS_AGGR_LEVEL,
28717              pjp1.WBS_ROLLUP_FLAG,
28718              pjp1.PRG_ROLLUP_FLAG) in (('T', 'Y', 'Y'),
28719                                        ('T', 'Y', 'N'),
28720                                        ('T', 'N', 'Y'),
28721                                        ('T', 'N', 'N'),
28722                                        ('L', 'N', 'N')) and
28723              pjp1.PROJECT_ELEMENT_ID = prg.SUB_EMT_ID) or
28724            ((pjp1.RBS_AGGR_LEVEL,
28725              pjp1.WBS_ROLLUP_FLAG,
28726              pjp1.PRG_ROLLUP_FLAG) in (('L', 'N', 'Y'),
28727                                        ('L', 'N', 'N')) and
28728              pjp1.PROJECT_ELEMENT_ID <> prg.SUB_EMT_ID))                and
28729           decode(pjp1.PLAN_VERSION_ID,
28730                  -1, 'LF',
28731                  -2, 'LF',
28732                  -3, 'LF',
28733                  -4, 'LF',
28734                      decode(wbs_hdr.WP_FLAG,
28735                             'N', 'LF',
28736                               'LW')) =  prg.RELATIONSHIP_TYPE           and
28737           prg.STRUCT_VERSION_ID      is null                            and
28738           prj_emt.OBJECT_TYPE        =  'PA_STRUCTURES'                 and
28739           prj_emt.PROJ_ELEMENT_ID    =  prg.SUB_EMT_ID                  and
28740           wbs_hdr.PROJECT_ID         =  prj_emt.PROJECT_ID              and
28741           wbs_hdr.WBS_VERSION_ID     =  prg.SUB_ID                      and
28742           wbs_hdr.PROJECT_ID         =  pjp1.PROJECT_ID                 and
28743           wbs_hdr.PLAN_VERSION_ID    =  pjp1.PLAN_VERSION_ID            and
28744           wbs_hdr.PLAN_TYPE_CODE     =  pjp1.PLAN_TYPE_CODE             and
28745           decode(pjp1.PLAN_VERSION_ID,
28746                  -3, pjp1.PLAN_TYPE_ID,
28747                  -4, pjp1.PLAN_TYPE_ID,
28748                      -1)             =  decode(pjp1.PLAN_VERSION_ID,
28749                                                -3, wbs_hdr.PLAN_TYPE_ID,
28750                                                -4, wbs_hdr.PLAN_TYPE_ID,
28751                                                    -1)                  and
28752           decode(wbs_hdr.WP_FLAG,
28753                  'N', decode(pjp1.PLAN_VERSION_ID,
28754                              -1, 'Y',
28755                              -2, 'Y',
28756                              -3, 'Y',
28757                              -4, 'Y',
28758                                  decode(pjp1.RBS_AGGR_LEVEL
28759                                           || '_' || wbs_hdr.CB_FLAG
28760                                           || '_' || wbs_hdr.CO_FLAG,
28761                                         'L_Y_Y', 'Y',
28762                                         'L_N_Y', 'Y',
28763                                         'L_Y_N', 'Y',
28764                                                  'N')),
28765                       'Y')           =  'Y'                             and
28766           prg.SUP_PROJECT_ID         =  sup_wbs_hdr.PROJECT_ID      (+) and
28767           prg.SUP_ID                 =  sup_wbs_hdr.WBS_VERSION_ID  (+) and
28768           'Y'                        =  sup_wbs_hdr.WP_FLAG         (+) and
28769           wbs_hdr.PROJECT_ID         =  sub_ver.PROJECT_ID          (+) and
28770           wbs_hdr.WBS_VERSION_ID     =  sub_ver.ELEMENT_VERSION_ID  (+) and
28771           'STRUCTURE_PUBLISHED'      =  sub_ver.STATUS_CODE         (+) and
28772           sup_wbs_hdr.PROJECT_ID     =  sup_ver.PROJECT_ID          (+) and
28773           sup_wbs_hdr.WBS_VERSION_ID =  sup_ver.ELEMENT_VERSION_ID  (+) and
28774           'STRUCTURE_PUBLISHED'      =  sup_ver.STATUS_CODE         (+) and
28775           wbs_hdr.CB_FLAG            =  fin_plan.CB                 (+) and
28776           wbs_hdr.CO_FLAG            =  fin_plan.CO                 (+)
28777         )                          pjp,
28778         PJI_PJP_PROJ_BATCH_MAP     map,
28779         PA_PROJ_WORKPLAN_ATTR      sup_wpa,
28780         PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
28781         PA_XBS_DENORM              wbs,
28782         (
28783           select 1     WBS_SUP_LEVEL,
28784                  'PRJ' INVERT_ID
28785           from   DUAL
28786           union all
28787           select 1     WBS_SUP_LEVEL,
28788                  'WBS' INVERT_ID
28789           from   DUAL
28790         ) top_slice
28791       where
28792         map.WORKER_ID           = p_worker_id                         and
28793         map.PROJECT_ID          = pjp.SUP_PROJECT_ID                  and
28794         pjp.SUP_EMT_ID          = sup_wpa.PROJ_ELEMENT_ID             and
28795         pjp.SUP_PROJECT_ID      = sup_fin_ver.PROJECT_ID          (+) and
28796         pjp.SUP_ID              = sup_fin_ver.ELEMENT_VERSION_ID  (+) and
28797         'STRUCTURE_WORKING'     = sup_fin_ver.STATUS_CODE         (+) and
28798         (pjp.SUP_WP_FLAG is null or
28799          (pjp.SUP_WP_FLAG is not null and
28800           (sup_fin_ver.PROJECT_ID is not null or
28801            sup_wpa.WP_ENABLE_VERSION_FLAG = 'N')))                    and
28802         'WBS'                   = wbs.STRUCT_TYPE                 (+) and
28803         pjp.STRUCT_TYPE         = wbs.STRUCT_TYPE                 (+) and
28804         pjp.SUP_PROJECT_ID      = wbs.SUP_PROJECT_ID              (+) and
28805         pjp.SUP_ID              = wbs.STRUCT_VERSION_ID           (+) and
28806         pjp.SUB_ROLLUP_ID       = wbs.SUB_EMT_ID                  (+) and
28807         wbs.SUP_LEVEL           = top_slice.WBS_SUP_LEVEL         (+)
28808       group by
28809         pjp.LINE_TYPE,
28810         pjp.SUP_PROJECT_ID,
28811         map.PROJECT_ORG_ID,
28812         map.PROJECT_ORGANIZATION_ID,
28813         decode(pjp.STRUCT_TYPE,
28814                'DO_NOT_ROLLUP', pjp.SUB_ROLLUP_ID,
28815                                 decode(top_slice.INVERT_ID,
28816                                        'PRJ', pjp.SUP_EMT_ID, wbs.SUP_EMT_ID)
28817               ),
28818         pjp.TIME_ID,
28819         pjp.PERIOD_TYPE_ID,
28820         pjp.CALENDAR_TYPE,
28821         pjp.RBS_AGGR_LEVEL,
28822         decode(pjp.STRUCT_TYPE,
28823                'DO_NOT_ROLLUP', 'N',
28824                                 decode(top_slice.INVERT_ID,
28825                                        'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
28826                                                           wbs.SUP_EMT_ID,
28827                                                           'N', 'Y'))
28828               ),
28829         pjp.CURR_RECORD_TYPE_ID,
28830         pjp.CURRENCY_CODE,
28831         pjp.RBS_ELEMENT_ID,
28832         pjp.RBS_VERSION_ID,
28833         pjp.PLAN_VERSION_ID,
28834         pjp.PLAN_TYPE_ID,
28835         pjp.PLAN_TYPE_CODE;
28836     elsif (p_worker_id =3) then
28837       -- Query for Partition 3
28838 
28839         insert /*+ parallel(PJI_FP_AGGR_PJP1) */
28840                    into PJI_FP_AGGR_PJP1 partition(P3)
28841       (
28842         WORKER_ID,
28843         RECORD_TYPE,
28844         PRG_LEVEL,
28845         LINE_TYPE,
28846         PROJECT_ID,
28847         PROJECT_ORG_ID,
28848         PROJECT_ORGANIZATION_ID,
28849         PROJECT_ELEMENT_ID,
28850         TIME_ID,
28851         PERIOD_TYPE_ID,
28852         CALENDAR_TYPE,
28853         RBS_AGGR_LEVEL,
28854         WBS_ROLLUP_FLAG,
28855         PRG_ROLLUP_FLAG,
28856         CURR_RECORD_TYPE_ID,
28857         CURRENCY_CODE,
28858         RBS_ELEMENT_ID,
28859         RBS_VERSION_ID,
28860         PLAN_VERSION_ID,
28861         PLAN_TYPE_ID,
28862         PLAN_TYPE_CODE,
28863         RAW_COST,
28864         BRDN_COST,
28865         REVENUE,
28866         BILL_RAW_COST,
28867         BILL_BRDN_COST,
28868         BILL_LABOR_RAW_COST,
28869         BILL_LABOR_BRDN_COST,
28870         BILL_LABOR_HRS,
28871         EQUIPMENT_RAW_COST,
28872         EQUIPMENT_BRDN_COST,
28873         CAPITALIZABLE_RAW_COST,
28874         CAPITALIZABLE_BRDN_COST,
28875         LABOR_RAW_COST,
28876         LABOR_BRDN_COST,
28877         LABOR_HRS,
28878         LABOR_REVENUE,
28879         EQUIPMENT_HOURS,
28880         BILLABLE_EQUIPMENT_HOURS,
28881         SUP_INV_COMMITTED_COST,
28882         PO_COMMITTED_COST,
28883         PR_COMMITTED_COST,
28884         OTH_COMMITTED_COST,
28885         ACT_LABOR_HRS,
28886         ACT_EQUIP_HRS,
28887         ACT_LABOR_BRDN_COST,
28888         ACT_EQUIP_BRDN_COST,
28889         ACT_BRDN_COST,
28890         ACT_RAW_COST,
28891         ACT_REVENUE,
28892         ACT_LABOR_RAW_COST,
28893         ACT_EQUIP_RAW_COST,
28894         ETC_LABOR_HRS,
28895         ETC_EQUIP_HRS,
28896         ETC_LABOR_BRDN_COST,
28897         ETC_EQUIP_BRDN_COST,
28898         ETC_BRDN_COST,
28899         ETC_RAW_COST,
28900         ETC_LABOR_RAW_COST,
28901         ETC_EQUIP_RAW_COST,
28902         CUSTOM1,
28903         CUSTOM2,
28904         CUSTOM3,
28905         CUSTOM4,
28906         CUSTOM5,
28907         CUSTOM6,
28908         CUSTOM7,
28909         CUSTOM8,
28910         CUSTOM9,
28911         CUSTOM10,
28912         CUSTOM11,
28913         CUSTOM12,
28914         CUSTOM13,
28915         CUSTOM14,
28916         CUSTOM15
28917       )
28918       select /*+ no_merge(pjp) */
28919         p_worker_id                                   WORKER_ID,
28920         'P'                                           RECORD_TYPE,
28921         l_level                                       PRG_LEVEL,
28922         pjp.LINE_TYPE,
28923         pjp.SUP_PROJECT_ID                            PROJECT_ID,
28924         map.PROJECT_ORG_ID,
28925         map.PROJECT_ORGANIZATION_ID,
28926         decode(pjp.STRUCT_TYPE,
28927                'DO_NOT_ROLLUP', pjp.SUB_ROLLUP_ID,
28928                                 decode(top_slice.INVERT_ID,
28929                                        'PRJ', pjp.SUP_EMT_ID, wbs.SUP_EMT_ID)
28930               )                                       PROJECT_ELEMENT_ID,
28931         pjp.TIME_ID,
28932         pjp.PERIOD_TYPE_ID,
28933         pjp.CALENDAR_TYPE,
28934         pjp.RBS_AGGR_LEVEL,
28935         decode(pjp.STRUCT_TYPE,
28936                'DO_NOT_ROLLUP', 'N',
28937                                 decode(top_slice.INVERT_ID,
28938                                        'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
28939                                                           wbs.SUP_EMT_ID,
28940                                                           'N', 'Y'))
28941               )                                       WBS_ROLLUP_FLAG,
28942         'Y'                                           PRG_ROLLUP_FLAG,
28943         pjp.CURR_RECORD_TYPE_ID,
28944         pjp.CURRENCY_CODE,
28945         pjp.RBS_ELEMENT_ID,
28946         pjp.RBS_VERSION_ID,
28947         pjp.PLAN_VERSION_ID,
28948         pjp.PLAN_TYPE_ID,
28949         pjp.PLAN_TYPE_CODE,
28950         sum(pjp.RAW_COST)                             RAW_COST,
28951         sum(pjp.BRDN_COST)                            BRDN_COST,
28952         sum(pjp.REVENUE)                              REVENUE,
28953         sum(pjp.BILL_RAW_COST)                        BILL_RAW_COST,
28954         sum(pjp.BILL_BRDN_COST)                       BILL_BRDN_COST,
28955         sum(pjp.BILL_LABOR_RAW_COST)                  BILL_LABOR_RAW_COST,
28956         sum(pjp.BILL_LABOR_BRDN_COST)                 BILL_LABOR_BRDN_COST,
28957         sum(pjp.BILL_LABOR_HRS)                       BILL_LABOR_HRS,
28958         sum(pjp.EQUIPMENT_RAW_COST)                   EQUIPMENT_RAW_COST,
28959         sum(pjp.EQUIPMENT_BRDN_COST)                  EQUIPMENT_BRDN_COST,
28960         sum(pjp.CAPITALIZABLE_RAW_COST)               CAPITALIZABLE_RAW_COST,
28961         sum(pjp.CAPITALIZABLE_BRDN_COST)              CAPITALIZABLE_BRDN_COST,
28962         sum(pjp.LABOR_RAW_COST)                       LABOR_RAW_COST,
28963         sum(pjp.LABOR_BRDN_COST)                      LABOR_BRDN_COST,
28964         sum(pjp.LABOR_HRS)                            LABOR_HRS,
28965         sum(pjp.LABOR_REVENUE)                        LABOR_REVENUE,
28966         sum(pjp.EQUIPMENT_HOURS)                      EQUIPMENT_HOURS,
28967         sum(pjp.BILLABLE_EQUIPMENT_HOURS)             BILLABLE_EQUIPMENT_HOURS,
28968         sum(pjp.SUP_INV_COMMITTED_COST)               SUP_INV_COMMITTED_COST,
28969         sum(pjp.PO_COMMITTED_COST)                    PO_COMMITTED_COST,
28970         sum(pjp.PR_COMMITTED_COST)                    PR_COMMITTED_COST,
28971         sum(pjp.OTH_COMMITTED_COST)                   OTH_COMMITTED_COST,
28972         sum(pjp.ACT_LABOR_HRS)                        ACT_LABOR_HRS,
28973         sum(pjp.ACT_EQUIP_HRS)                        ACT_EQUIP_HRS,
28974         sum(pjp.ACT_LABOR_BRDN_COST)                  ACT_LABOR_BRDN_COST,
28975         sum(pjp.ACT_EQUIP_BRDN_COST)                  ACT_EQUIP_BRDN_COST,
28976         sum(pjp.ACT_BRDN_COST)                        ACT_BRDN_COST,
28977         sum(pjp.ACT_RAW_COST)                         ACT_RAW_COST,
28978         sum(pjp.ACT_REVENUE)                          ACT_REVENUE,
28979         sum(pjp.ACT_LABOR_RAW_COST)                   ACT_LABOR_RAW_COST,
28980         sum(pjp.ACT_EQUIP_RAW_COST)                   ACT_EQUIP_RAW_COST,
28981         sum(pjp.ETC_LABOR_HRS)                        ETC_LABOR_HRS,
28982         sum(pjp.ETC_EQUIP_HRS)                        ETC_EQUIP_HRS,
28983         sum(pjp.ETC_LABOR_BRDN_COST)                  ETC_LABOR_BRDN_COST,
28984         sum(pjp.ETC_EQUIP_BRDN_COST)                  ETC_EQUIP_BRDN_COST,
28985         sum(pjp.ETC_BRDN_COST)                        ETC_BRDN_COST,
28986         sum(pjp.ETC_RAW_COST)                         ETC_RAW_COST,
28987         sum(pjp.ETC_LABOR_RAW_COST)                   ETC_LABOR_RAW_COST,
28988         sum(pjp.ETC_EQUIP_RAW_COST)                   ETC_EQUIP_RAW_COST,
28989         sum(pjp.CUSTOM1)                              CUSTOM1,
28990         sum(pjp.CUSTOM2)                              CUSTOM2,
28991         sum(pjp.CUSTOM3)                              CUSTOM3,
28992         sum(pjp.CUSTOM4)                              CUSTOM4,
28993         sum(pjp.CUSTOM5)                              CUSTOM5,
28994         sum(pjp.CUSTOM6)                              CUSTOM6,
28995         sum(pjp.CUSTOM7)                              CUSTOM7,
28996         sum(pjp.CUSTOM8)                              CUSTOM8,
28997         sum(pjp.CUSTOM9)                              CUSTOM9,
28998         sum(pjp.CUSTOM10)                             CUSTOM10,
28999         sum(pjp.CUSTOM11)                             CUSTOM11,
29000         sum(pjp.CUSTOM12)                             CUSTOM12,
29001         sum(pjp.CUSTOM13)                             CUSTOM13,
29002         sum(pjp.CUSTOM14)                             CUSTOM14,
29003         sum(pjp.CUSTOM15)                             CUSTOM15
29004       from
29005         (
29006         select /*+ ordered index(fpr PJI_FP_XBS_ACCUM_F_N1) */
29007                -- get structure level amounts from Reporting Lines
29008           decode(fpr.RBS_AGGR_LEVEL,
29009                  'L', 'DO_NOT_ROLLUP',
29010                       'WBS')                          STRUCT_TYPE,
29011           to_char(null)                               LINE_TYPE,
29012           prg.SUP_PROJECT_ID,
29013           prg.SUP_ID,
29014           prg.SUP_EMT_ID,
29015           prg.SUB_EMT_ID,
29016           prg.SUB_ROLLUP_ID,
29017           'FPR'                                       LINE_SOURCE,
29018           decode(fpr.PLAN_VERSION_ID,
29019                  -1, prg.SUB_ID,
29020                  -3, prg.SUB_ID,
29021                  -4, prg.SUB_ID,
29022                      decode(fin_plan.PLAN_VERSION_ID,
29023                             null, null,
29024                                   prg.SUB_ID))        SUB_ID,
29025           decode(fpr.PLAN_VERSION_ID,
29026                  -1, 'N',
29027                  -3, 'N',
29028                  -4, 'N',
29029                      decode(fin_plan.PLAN_VERSION_ID,
29030                             null, null,
29031                                   'N'))               SUP_WP_FLAG,
29032           decode(fpr.PLAN_VERSION_ID,
29033                  -1, fpr.PLAN_VERSION_ID,
29034                  -3, fpr.PLAN_VERSION_ID,
29035                  -4, fpr.PLAN_VERSION_ID,
29036                      decode(fin_plan.PLAN_VERSION_ID,
29037                             null, null,
29038                                   fin_plan.PLAN_VERSION_ID)
29039                 )                                     SUB_PLAN_VERSION_ID,
29040           decode(fpr.PLAN_VERSION_ID,
29041                  -1, fpr.PLAN_TYPE_ID,
29042                  -3, fpr.PLAN_TYPE_ID,
29043                  -4, fpr.PLAN_TYPE_ID,
29044                      decode(fin_plan.PLAN_VERSION_ID,
29045                             null, null,
29046                                   fpr.PLAN_TYPE_ID))  SUB_PLAN_TYPE_ID,
29047           fpr.TIME_ID,
29048           fpr.PERIOD_TYPE_ID,
29049           fpr.CALENDAR_TYPE,
29050           fpr.RBS_AGGR_LEVEL,
29051           fpr.CURR_RECORD_TYPE_ID,
29052           fpr.CURRENCY_CODE,
29053           fpr.RBS_ELEMENT_ID,
29054           fpr.RBS_VERSION_ID,
29055           decode(wbs_hdr.WP_FLAG,
29056                  'N', decode(wbs_hdr.PLAN_VERSION_ID,
29057                              -1, fpr.PLAN_VERSION_ID,
29058                                  fin_plan.PLAN_VERSION_ID),
29059                       sup_wbs_hdr.PLAN_VERSION_ID)    PLAN_VERSION_ID,
29060           decode(wbs_hdr.WP_FLAG,
29061                  'N', fpr.PLAN_TYPE_ID,
29062                       sup_wbs_hdr.PLAN_TYPE_ID)       PLAN_TYPE_ID,
29063           fpr.PLAN_TYPE_CODE,
29064           decode(wbs_hdr.WP_FLAG
29065                    || '_' || sup_wbs_hdr.WP_FLAG
29066                    || '_' || sub_ver.STATUS_CODE
29067                    || '_' || sup_ver.STATUS_CODE,
29068                  'Y_Y__', to_number(null),
29069                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29070                  prg.SIGN * fpr.RAW_COST)             RAW_COST,
29071           decode(wbs_hdr.WP_FLAG
29072                    || '_' || sup_wbs_hdr.WP_FLAG
29073                    || '_' || sub_ver.STATUS_CODE
29074                    || '_' || sup_ver.STATUS_CODE,
29075                  'Y_Y__', to_number(null),
29076                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29077                  prg.SIGN * fpr.BRDN_COST)            BRDN_COST,
29078           decode(wbs_hdr.WP_FLAG
29079                    || '_' || sup_wbs_hdr.WP_FLAG
29080                    || '_' || sub_ver.STATUS_CODE
29081                    || '_' || sup_ver.STATUS_CODE,
29082                  'Y_Y__', to_number(null),
29083                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29084                  prg.SIGN * fpr.REVENUE)              REVENUE,
29085           decode(wbs_hdr.WP_FLAG
29086                    || '_' || sup_wbs_hdr.WP_FLAG
29087                    || '_' || sub_ver.STATUS_CODE
29088                    || '_' || sup_ver.STATUS_CODE,
29089                  'Y_Y__', to_number(null),
29090                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29091                  prg.SIGN * fpr.BILL_RAW_COST)        BILL_RAW_COST,
29092           decode(wbs_hdr.WP_FLAG
29093                    || '_' || sup_wbs_hdr.WP_FLAG
29094                    || '_' || sub_ver.STATUS_CODE
29095                    || '_' || sup_ver.STATUS_CODE,
29096                  'Y_Y__', to_number(null),
29097                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29098                  prg.SIGN * fpr.BILL_BRDN_COST)       BILL_BRDN_COST,
29099           decode(wbs_hdr.WP_FLAG
29100                    || '_' || sup_wbs_hdr.WP_FLAG
29101                    || '_' || sub_ver.STATUS_CODE
29102                    || '_' || sup_ver.STATUS_CODE,
29103                  'Y_Y__', to_number(null),
29104                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29105                  prg.SIGN * fpr.BILL_LABOR_RAW_COST)  BILL_LABOR_RAW_COST,
29106           decode(wbs_hdr.WP_FLAG
29107                    || '_' || sup_wbs_hdr.WP_FLAG
29108                    || '_' || sub_ver.STATUS_CODE
29109                    || '_' || sup_ver.STATUS_CODE,
29110                  'Y_Y__', to_number(null),
29111                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29112                  prg.SIGN * fpr.BILL_LABOR_BRDN_COST) BILL_LABOR_BRDN_COST,
29113           decode(wbs_hdr.WP_FLAG
29114                    || '_' || sup_wbs_hdr.WP_FLAG
29115                    || '_' || sub_ver.STATUS_CODE
29116                    || '_' || sup_ver.STATUS_CODE,
29117                  'Y_Y__', to_number(null),
29118                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29119                  prg.SIGN * fpr.BILL_LABOR_HRS)       BILL_LABOR_HRS,
29120           decode(wbs_hdr.WP_FLAG
29121                    || '_' || sup_wbs_hdr.WP_FLAG
29122                    || '_' || sub_ver.STATUS_CODE
29123                    || '_' || sup_ver.STATUS_CODE,
29124                  'Y_Y__', to_number(null),
29125                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29126                  prg.SIGN * fpr.EQUIPMENT_RAW_COST)   EQUIPMENT_RAW_COST,
29127           decode(wbs_hdr.WP_FLAG
29128                    || '_' || sup_wbs_hdr.WP_FLAG
29129                    || '_' || sub_ver.STATUS_CODE
29130                    || '_' || sup_ver.STATUS_CODE,
29131                  'Y_Y__', to_number(null),
29132                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29133                  prg.SIGN * fpr.EQUIPMENT_BRDN_COST)  EQUIPMENT_BRDN_COST,
29134           decode(wbs_hdr.WP_FLAG
29135                    || '_' || sup_wbs_hdr.WP_FLAG
29136                    || '_' || sub_ver.STATUS_CODE
29137                    || '_' || sup_ver.STATUS_CODE,
29138                  'Y_Y__', to_number(null),
29139                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29140                  prg.SIGN * fpr.CAPITALIZABLE_RAW_COST)
29141                                                       CAPITALIZABLE_RAW_COST,
29142           decode(wbs_hdr.WP_FLAG
29143                    || '_' || sup_wbs_hdr.WP_FLAG
29144                    || '_' || sub_ver.STATUS_CODE
29145                    || '_' || sup_ver.STATUS_CODE,
29146                  'Y_Y__', to_number(null),
29147                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29148                  prg.SIGN * fpr.CAPITALIZABLE_BRDN_COST)
29149                                                       CAPITALIZABLE_BRDN_COST,
29150           decode(wbs_hdr.WP_FLAG
29151                    || '_' || sup_wbs_hdr.WP_FLAG
29152                    || '_' || sub_ver.STATUS_CODE
29153                    || '_' || sup_ver.STATUS_CODE,
29154                  'Y_Y__', to_number(null),
29155                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29156                  prg.SIGN * fpr.LABOR_RAW_COST)       LABOR_RAW_COST,
29157           decode(wbs_hdr.WP_FLAG
29158                    || '_' || sup_wbs_hdr.WP_FLAG
29159                    || '_' || sub_ver.STATUS_CODE
29160                    || '_' || sup_ver.STATUS_CODE,
29161                  'Y_Y__', to_number(null),
29162                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29163                  prg.SIGN * fpr.LABOR_BRDN_COST)      LABOR_BRDN_COST,
29164           decode(wbs_hdr.WP_FLAG
29165                    || '_' || sup_wbs_hdr.WP_FLAG
29166                    || '_' || sub_ver.STATUS_CODE
29167                    || '_' || sup_ver.STATUS_CODE,
29168                  'Y_Y__', to_number(null),
29169                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29170                  prg.SIGN * fpr.LABOR_HRS)            LABOR_HRS,
29171           decode(wbs_hdr.WP_FLAG
29172                    || '_' || sup_wbs_hdr.WP_FLAG
29173                    || '_' || sub_ver.STATUS_CODE
29174                    || '_' || sup_ver.STATUS_CODE,
29175                  'Y_Y__', to_number(null),
29176                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29177                  prg.SIGN * fpr.LABOR_REVENUE)        LABOR_REVENUE,
29178           decode(wbs_hdr.WP_FLAG
29179                    || '_' || sup_wbs_hdr.WP_FLAG
29180                    || '_' || sub_ver.STATUS_CODE
29181                    || '_' || sup_ver.STATUS_CODE,
29182                  'Y_Y__', to_number(null),
29183                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29184                  prg.SIGN * fpr.EQUIPMENT_HOURS)      EQUIPMENT_HOURS,
29185           decode(wbs_hdr.WP_FLAG
29186                    || '_' || sup_wbs_hdr.WP_FLAG
29187                    || '_' || sub_ver.STATUS_CODE
29188                    || '_' || sup_ver.STATUS_CODE,
29189                  'Y_Y__', to_number(null),
29190                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29191                  prg.SIGN * fpr.BILLABLE_EQUIPMENT_HOURS)
29192                                                       BILLABLE_EQUIPMENT_HOURS,
29193           decode(wbs_hdr.WP_FLAG
29194                    || '_' || sup_wbs_hdr.WP_FLAG
29195                    || '_' || sub_ver.STATUS_CODE
29196                    || '_' || sup_ver.STATUS_CODE,
29197                  'Y_Y__', to_number(null),
29198                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29199                  prg.SIGN * fpr.SUP_INV_COMMITTED_COST)
29200                                                       SUP_INV_COMMITTED_COST,
29201           decode(wbs_hdr.WP_FLAG
29202                    || '_' || sup_wbs_hdr.WP_FLAG
29203                    || '_' || sub_ver.STATUS_CODE
29204                    || '_' || sup_ver.STATUS_CODE,
29205                  'Y_Y__', to_number(null),
29206                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29207                  prg.SIGN * fpr.PO_COMMITTED_COST)    PO_COMMITTED_COST,
29208           decode(wbs_hdr.WP_FLAG
29209                    || '_' || sup_wbs_hdr.WP_FLAG
29210                    || '_' || sub_ver.STATUS_CODE
29211                    || '_' || sup_ver.STATUS_CODE,
29212                  'Y_Y__', to_number(null),
29213                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29214                  prg.SIGN * fpr.PR_COMMITTED_COST)    PR_COMMITTED_COST,
29215           decode(wbs_hdr.WP_FLAG
29216                    || '_' || sup_wbs_hdr.WP_FLAG
29217                    || '_' || sub_ver.STATUS_CODE
29218                    || '_' || sup_ver.STATUS_CODE,
29219                  'Y_Y__', to_number(null),
29220                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29221                  prg.SIGN * fpr.OTH_COMMITTED_COST)   OTH_COMMITTED_COST,
29222           decode(wbs_hdr.WP_FLAG
29223                    || '_' || sup_wbs_hdr.WP_FLAG
29224                    || '_' || sup_ver.STATUS_CODE,
29225                  'Y_Y_', to_number(null),
29226                  prg.SIGN * fpr.ACT_LABOR_HRS)        ACT_LABOR_HRS,
29227           decode(wbs_hdr.WP_FLAG
29228                    || '_' || sup_wbs_hdr.WP_FLAG
29229                    || '_' || sup_ver.STATUS_CODE,
29230                  'Y_Y_', to_number(null),
29231                  prg.SIGN * fpr.ACT_EQUIP_HRS)        ACT_EQUIP_HRS,
29232           decode(wbs_hdr.WP_FLAG
29233                    || '_' || sup_wbs_hdr.WP_FLAG
29234                    || '_' || sup_ver.STATUS_CODE,
29235                  'Y_Y_', to_number(null),
29236                  prg.SIGN * fpr.ACT_LABOR_BRDN_COST)  ACT_LABOR_BRDN_COST,
29237           decode(wbs_hdr.WP_FLAG
29238                    || '_' || sup_wbs_hdr.WP_FLAG
29239                    || '_' || sup_ver.STATUS_CODE,
29240                  'Y_Y_', to_number(null),
29241                  prg.SIGN * fpr.ACT_EQUIP_BRDN_COST)  ACT_EQUIP_BRDN_COST,
29242           decode(wbs_hdr.WP_FLAG
29243                    || '_' || sup_wbs_hdr.WP_FLAG
29244                    || '_' || sup_ver.STATUS_CODE,
29245                  'Y_Y_', to_number(null),
29246                  prg.SIGN * fpr.ACT_BRDN_COST)        ACT_BRDN_COST,
29247           decode(wbs_hdr.WP_FLAG
29248                    || '_' || sup_wbs_hdr.WP_FLAG
29249                    || '_' || sup_ver.STATUS_CODE,
29250                  'Y_Y_', to_number(null),
29251                  prg.SIGN * fpr.ACT_RAW_COST)         ACT_RAW_COST,
29252           decode(wbs_hdr.WP_FLAG
29253                    || '_' || sup_wbs_hdr.WP_FLAG
29254                    || '_' || sup_ver.STATUS_CODE,
29255                  'Y_Y_', to_number(null),
29256                  prg.SIGN * fpr.ACT_REVENUE)          ACT_REVENUE,
29257           decode(wbs_hdr.WP_FLAG
29258                    || '_' || sup_wbs_hdr.WP_FLAG
29259                    || '_' || sup_ver.STATUS_CODE,
29260                  'Y_Y_', to_number(null),
29261                  prg.SIGN * fpr.ACT_LABOR_RAW_COST)   ACT_LABOR_RAW_COST,
29262           decode(wbs_hdr.WP_FLAG
29263                    || '_' || sup_wbs_hdr.WP_FLAG
29264                    || '_' || sup_ver.STATUS_CODE,
29265                  'Y_Y_', to_number(null),
29266                  prg.SIGN * fpr.ACT_EQUIP_RAW_COST)   ACT_EQUIP_RAW_COST,
29267           decode(wbs_hdr.WP_FLAG
29268                    || '_' || sup_wbs_hdr.WP_FLAG
29269                    || '_' || sup_ver.STATUS_CODE,
29270                  'Y_Y_', to_number(null),
29271                  prg.SIGN * fpr.ETC_LABOR_HRS)        ETC_LABOR_HRS,
29272           decode(wbs_hdr.WP_FLAG
29273                    || '_' || sup_wbs_hdr.WP_FLAG
29274                    || '_' || sup_ver.STATUS_CODE,
29275                  'Y_Y_', to_number(null),
29276                  prg.SIGN * fpr.ETC_EQUIP_HRS)        ETC_EQUIP_HRS,
29277           decode(wbs_hdr.WP_FLAG
29278                    || '_' || sup_wbs_hdr.WP_FLAG
29279                    || '_' || sup_ver.STATUS_CODE,
29280                  'Y_Y_', to_number(null),
29281                  prg.SIGN * fpr.ETC_LABOR_BRDN_COST)  ETC_LABOR_BRDN_COST,
29282           decode(wbs_hdr.WP_FLAG
29283                    || '_' || sup_wbs_hdr.WP_FLAG
29284                    || '_' || sup_ver.STATUS_CODE,
29285                  'Y_Y_', to_number(null),
29286                  prg.SIGN * fpr.ETC_EQUIP_BRDN_COST)  ETC_EQUIP_BRDN_COST,
29287           decode(wbs_hdr.WP_FLAG
29288                    || '_' || sup_wbs_hdr.WP_FLAG
29289                    || '_' || sup_ver.STATUS_CODE,
29290                  'Y_Y_', to_number(null),
29291                  prg.SIGN * fpr.ETC_BRDN_COST)        ETC_BRDN_COST,
29292           decode(wbs_hdr.WP_FLAG
29293                    || '_' || sup_wbs_hdr.WP_FLAG
29294                    || '_' || sup_ver.STATUS_CODE,
29295                  'Y_Y_', to_number(null),
29296                  prg.SIGN * fpr.ETC_RAW_COST)         ETC_RAW_COST,
29297           decode(wbs_hdr.WP_FLAG
29298                    || '_' || sup_wbs_hdr.WP_FLAG
29299                    || '_' || sup_ver.STATUS_CODE,
29300                  'Y_Y_', to_number(null),
29301                  prg.SIGN * fpr.ETC_LABOR_RAW_COST)   ETC_LABOR_RAW_COST,
29302           decode(wbs_hdr.WP_FLAG
29303                    || '_' || sup_wbs_hdr.WP_FLAG
29304                    || '_' || sup_ver.STATUS_CODE,
29305                  'Y_Y_', to_number(null),
29306                  prg.SIGN * fpr.ETC_EQUIP_RAW_COST)   ETC_EQUIP_RAW_COST,
29307           prg.SIGN * fpr.CUSTOM1                      CUSTOM1,
29308           prg.SIGN * fpr.CUSTOM2                      CUSTOM2,
29309           prg.SIGN * fpr.CUSTOM3                      CUSTOM3,
29310           prg.SIGN * fpr.CUSTOM4                      CUSTOM4,
29311           prg.SIGN * fpr.CUSTOM5                      CUSTOM5,
29312           prg.SIGN * fpr.CUSTOM6                      CUSTOM6,
29313           prg.SIGN * fpr.CUSTOM7                      CUSTOM7,
29314           prg.SIGN * fpr.CUSTOM8                      CUSTOM8,
29315           prg.SIGN * fpr.CUSTOM9                      CUSTOM9,
29316           prg.SIGN * fpr.CUSTOM10                     CUSTOM10,
29317           prg.SIGN * fpr.CUSTOM11                     CUSTOM11,
29318           prg.SIGN * fpr.CUSTOM12                     CUSTOM12,
29319           prg.SIGN * fpr.CUSTOM13                     CUSTOM13,
29320           prg.SIGN * fpr.CUSTOM14                     CUSTOM14,
29321           prg.SIGN * fpr.CUSTOM15                     CUSTOM15
29322         from
29323           PJI_XBS_DENORM_DELTA       prg,
29324           PA_PROJ_ELEMENTS           prj_emt,
29325           PJI_PJP_WBS_HEADER         wbs_hdr,
29326           PJI_FP_XBS_ACCUM_F         fpr,
29327           PJI_PJP_WBS_HEADER         sup_wbs_hdr,
29328           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
29329           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
29330           (
29331             select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID
29332             from DUAL union all
29333             select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID
29334             from DUAL union all
29335             select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID
29336             from DUAL union all
29337             select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID
29338             from DUAL
29339           ) fin_plan
29340         where
29341           prg.WORKER_ID              =  p_worker_id                    and
29342           prg.STRUCT_TYPE            =  'PRG'                          and
29343           prg.SUP_LEVEL              =  l_level                        and
29344           nvl(prg.SUB_ROLLUP_ID,
29345               prg.SUP_EMT_ID)        <> prg.SUP_EMT_ID                 and
29346           fpr.PROJECT_ID             =  prj_emt.PROJECT_ID             and
29347           (((fpr.RBS_AGGR_LEVEL,
29348              fpr.WBS_ROLLUP_FLAG,
29349              fpr.PRG_ROLLUP_FLAG) in (('T', 'Y', 'Y'),
29350                                       ('T', 'Y', 'N'),
29351                                       ('T', 'N', 'Y'),
29352                                       ('T', 'N', 'N'),
29353                                       ('L', 'N', 'N')) and
29354              fpr.PROJECT_ELEMENT_ID = prg.SUB_EMT_ID) or
29355            ((fpr.RBS_AGGR_LEVEL,
29356              fpr.WBS_ROLLUP_FLAG,
29357              fpr.PRG_ROLLUP_FLAG) in (('L', 'N', 'Y'),
29358                                       ('L', 'N', 'N')) and
29359              fpr.PROJECT_ELEMENT_ID <> prg.SUB_EMT_ID))                and
29360           decode(fpr.PLAN_VERSION_ID,
29361                  -1, 'LF',
29362                  -2, 'LF',
29363                  -3, 'LF',
29364                  -4, 'LF',
29365                      decode(wbs_hdr.WP_FLAG,
29366                             'N', 'LF',
29367                               'LW')) =  prg.RELATIONSHIP_TYPE          and
29368           prj_emt.PROJ_ELEMENT_ID    =  prg.SUB_EMT_ID                 and
29369           wbs_hdr.PROJECT_ID         =  prj_emt.PROJECT_ID             and
29370           decode(wbs_hdr.WP_FLAG,
29371                  'Y', wbs_hdr.WBS_VERSION_ID,
29372                       -1)            = decode(wbs_hdr.WP_FLAG,
29373                                               'Y', prg.SUB_ID,
29374                                                    -1)                 and
29375           wbs_hdr.PLAN_VERSION_ID    =  fpr.PLAN_VERSION_ID            and
29376           wbs_hdr.PLAN_TYPE_CODE     =  fpr.PLAN_TYPE_CODE             and
29377           decode(fpr.PLAN_VERSION_ID,
29378                  -3, fpr.PLAN_TYPE_ID,
29379                  -4, fpr.PLAN_TYPE_ID,
29380                      -1)             =  decode(fpr.PLAN_VERSION_ID,
29381                                                -3, wbs_hdr.PLAN_TYPE_ID,
29382                                                -4, wbs_hdr.PLAN_TYPE_ID,
29383                                                    -1)                 and
29384           decode(wbs_hdr.WP_FLAG,
29385                  'N', decode(fpr.PLAN_VERSION_ID,
29386                              -1, 'Y',
29387                              -2, 'Y',
29388                              -3, 'Y',
29389                              -4, 'Y',
29390                                  decode(fpr.RBS_AGGR_LEVEL
29391                                           || '_' || wbs_hdr.CB_FLAG
29392                                           || '_' || wbs_hdr.CO_FLAG,
29393                                         'L_Y_Y', 'Y',
29394                                         'L_N_Y', 'Y',
29395                                         'L_Y_N', 'Y',
29396                                                  'N')),
29397                       'Y')           =  'Y'                            and
29398           prg.SUP_PROJECT_ID         =  sup_wbs_hdr.PROJECT_ID     (+) and
29399           prg.SUP_ID                 =  sup_wbs_hdr.WBS_VERSION_ID (+) and
29400           'Y'                        =  sup_wbs_hdr.WP_FLAG        (+) and
29401           wbs_hdr.PROJECT_ID         =  sub_ver.PROJECT_ID         (+) and
29402           wbs_hdr.WBS_VERSION_ID     =  sub_ver.ELEMENT_VERSION_ID (+) and
29403           'STRUCTURE_PUBLISHED'      =  sub_ver.STATUS_CODE        (+) and
29404           sup_wbs_hdr.PROJECT_ID     =  sup_ver.PROJECT_ID         (+) and
29405           sup_wbs_hdr.WBS_VERSION_ID =  sup_ver.ELEMENT_VERSION_ID (+) and
29406           'STRUCTURE_PUBLISHED'      =  sup_ver.STATUS_CODE        (+) and
29407           wbs_hdr.CB_FLAG            =  fin_plan.CB                (+) and
29408           wbs_hdr.CO_FLAG            =  fin_plan.CO                (+)
29409         union all
29410         select /*+ ordered parallel(pjp1) */                   -- changed for bug 5927368
29411                -- get structure level amounts from interim
29412           decode(pjp1.RBS_AGGR_LEVEL,
29413                  'L', 'DO_NOT_ROLLUP',
29414                       'WBS')                          STRUCT_TYPE,
29415           to_char(null)                               LINE_TYPE,
29416           prg.SUP_PROJECT_ID,
29417           prg.SUP_ID,
29418           prg.SUP_EMT_ID,
29419           prg.SUB_EMT_ID,
29420           prg.SUB_ROLLUP_ID,
29421           'PJP1'                                      LINE_SOURCE,
29422           decode(pjp1.PLAN_VERSION_ID,
29423                  -1, prg.SUB_ID,
29424                  -3, prg.SUB_ID,
29425                  -4, prg.SUB_ID,
29426                      decode(fin_plan.PLAN_VERSION_ID,
29427                             null, null,
29428                                   prg.SUB_ID))        SUB_ID,
29429           decode(pjp1.PLAN_VERSION_ID,
29430                  -1, 'N',
29431                  -3, 'N',
29432                  -4, 'N',
29433                      decode(fin_plan.PLAN_VERSION_ID,
29434                             null, null,
29435                                   'N'))               SUP_WP_FLAG,
29436           decode(pjp1.PLAN_VERSION_ID,
29437                  -1, pjp1.PLAN_VERSION_ID,
29438                  -3, pjp1.PLAN_VERSION_ID,
29439                  -4, pjp1.PLAN_VERSION_ID,
29440                      decode(fin_plan.PLAN_VERSION_ID,
29441                             null, null,
29442                                   fin_plan.PLAN_VERSION_ID)
29443                 )                                     SUB_PLAN_VERSION_ID,
29444           decode(pjp1.PLAN_VERSION_ID,
29445                  -1, pjp1.PLAN_TYPE_ID,
29446                  -3, pjp1.PLAN_TYPE_ID,
29447                  -4, pjp1.PLAN_TYPE_ID,
29448                      decode(fin_plan.PLAN_VERSION_ID,
29449                             null, null,
29450                                   pjp1.PLAN_TYPE_ID)) SUB_PLAN_TYPE_ID,
29451           pjp1.TIME_ID,
29452           pjp1.PERIOD_TYPE_ID,
29453           pjp1.CALENDAR_TYPE,
29454           pjp1.RBS_AGGR_LEVEL,
29455           pjp1.CURR_RECORD_TYPE_ID,
29456           pjp1.CURRENCY_CODE,
29457           pjp1.RBS_ELEMENT_ID,
29458           pjp1.RBS_VERSION_ID,
29459           decode(wbs_hdr.WP_FLAG,
29460                  'N', decode(wbs_hdr.PLAN_VERSION_ID,
29461                              -1, pjp1.PLAN_VERSION_ID,
29462                                  fin_plan.PLAN_VERSION_ID),
29463                       sup_wbs_hdr.PLAN_VERSION_ID)    PLAN_VERSION_ID,
29464           decode(wbs_hdr.WP_FLAG,
29465                  'N', pjp1.PLAN_TYPE_ID,
29466                       sup_wbs_hdr.PLAN_TYPE_ID)       PLAN_TYPE_ID,
29467           pjp1.PLAN_TYPE_CODE,
29468           decode(wbs_hdr.WP_FLAG
29469                    || '_' || sup_wbs_hdr.WP_FLAG
29470                    || '_' || sub_ver.STATUS_CODE
29471                    || '_' || sup_ver.STATUS_CODE,
29472                  'Y_Y__', to_number(null),
29473                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29474                  pjp1.RAW_COST)                       RAW_COST,
29475           decode(wbs_hdr.WP_FLAG
29476                    || '_' || sup_wbs_hdr.WP_FLAG
29477                    || '_' || sub_ver.STATUS_CODE
29478                    || '_' || sup_ver.STATUS_CODE,
29479                  'Y_Y__', to_number(null),
29480                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29481                  pjp1.BRDN_COST)                      BRDN_COST,
29482           decode(wbs_hdr.WP_FLAG
29483                    || '_' || sup_wbs_hdr.WP_FLAG
29484                    || '_' || sub_ver.STATUS_CODE
29485                    || '_' || sup_ver.STATUS_CODE,
29486                  'Y_Y__', to_number(null),
29487                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29488                  pjp1.REVENUE)                        REVENUE,
29489           decode(wbs_hdr.WP_FLAG
29490                    || '_' || sup_wbs_hdr.WP_FLAG
29491                    || '_' || sub_ver.STATUS_CODE
29492                    || '_' || sup_ver.STATUS_CODE,
29493                  'Y_Y__', to_number(null),
29494                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29495                  pjp1.BILL_RAW_COST)                  BILL_RAW_COST,
29496           decode(wbs_hdr.WP_FLAG
29497                    || '_' || sup_wbs_hdr.WP_FLAG
29498                    || '_' || sub_ver.STATUS_CODE
29499                    || '_' || sup_ver.STATUS_CODE,
29500                  'Y_Y__', to_number(null),
29501                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29502                  pjp1.BILL_BRDN_COST)                 BILL_BRDN_COST,
29503           decode(wbs_hdr.WP_FLAG
29504                    || '_' || sup_wbs_hdr.WP_FLAG
29505                    || '_' || sub_ver.STATUS_CODE
29506                    || '_' || sup_ver.STATUS_CODE,
29507                  'Y_Y__', to_number(null),
29508                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29509                  pjp1.BILL_LABOR_RAW_COST)            BILL_LABOR_RAW_COST,
29510           decode(wbs_hdr.WP_FLAG
29511                    || '_' || sup_wbs_hdr.WP_FLAG
29512                    || '_' || sub_ver.STATUS_CODE
29513                    || '_' || sup_ver.STATUS_CODE,
29514                  'Y_Y__', to_number(null),
29515                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29516                  pjp1.BILL_LABOR_BRDN_COST)           BILL_LABOR_BRDN_COST,
29517           decode(wbs_hdr.WP_FLAG
29518                    || '_' || sup_wbs_hdr.WP_FLAG
29519                    || '_' || sub_ver.STATUS_CODE
29520                    || '_' || sup_ver.STATUS_CODE,
29521                  'Y_Y__', to_number(null),
29522                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29523                  pjp1.BILL_LABOR_HRS)                 BILL_LABOR_HRS,
29524           decode(wbs_hdr.WP_FLAG
29525                    || '_' || sup_wbs_hdr.WP_FLAG
29526                    || '_' || sub_ver.STATUS_CODE
29527                    || '_' || sup_ver.STATUS_CODE,
29528                  'Y_Y__', to_number(null),
29529                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29530                  pjp1.EQUIPMENT_RAW_COST)             EQUIPMENT_RAW_COST,
29531           decode(wbs_hdr.WP_FLAG
29532                    || '_' || sup_wbs_hdr.WP_FLAG
29533                    || '_' || sub_ver.STATUS_CODE
29534                    || '_' || sup_ver.STATUS_CODE,
29535                  'Y_Y__', to_number(null),
29536                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29537                  pjp1.EQUIPMENT_BRDN_COST)            EQUIPMENT_BRDN_COST,
29538           decode(wbs_hdr.WP_FLAG
29539                    || '_' || sup_wbs_hdr.WP_FLAG
29540                    || '_' || sub_ver.STATUS_CODE
29541                    || '_' || sup_ver.STATUS_CODE,
29542                  'Y_Y__', to_number(null),
29543                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29544                  pjp1.CAPITALIZABLE_RAW_COST)         CAPITALIZABLE_RAW_COST,
29545           decode(wbs_hdr.WP_FLAG
29546                    || '_' || sup_wbs_hdr.WP_FLAG
29547                    || '_' || sub_ver.STATUS_CODE
29548                    || '_' || sup_ver.STATUS_CODE,
29549                  'Y_Y__', to_number(null),
29550                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29551                  pjp1.CAPITALIZABLE_BRDN_COST)        CAPITALIZABLE_BRDN_COST,
29552           decode(wbs_hdr.WP_FLAG
29553                    || '_' || sup_wbs_hdr.WP_FLAG
29554                    || '_' || sub_ver.STATUS_CODE
29555                    || '_' || sup_ver.STATUS_CODE,
29556                  'Y_Y__', to_number(null),
29557                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29558                  pjp1.LABOR_RAW_COST)                 LABOR_RAW_COST,
29559           decode(wbs_hdr.WP_FLAG
29560                    || '_' || sup_wbs_hdr.WP_FLAG
29561                    || '_' || sub_ver.STATUS_CODE
29562                    || '_' || sup_ver.STATUS_CODE,
29563                  'Y_Y__', to_number(null),
29564                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29565                  pjp1.LABOR_BRDN_COST)                LABOR_BRDN_COST,
29566           decode(wbs_hdr.WP_FLAG
29567                    || '_' || sup_wbs_hdr.WP_FLAG
29568                    || '_' || sub_ver.STATUS_CODE
29569                    || '_' || sup_ver.STATUS_CODE,
29570                  'Y_Y__', to_number(null),
29571                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29572                  pjp1.LABOR_HRS)                      LABOR_HRS,
29573           decode(wbs_hdr.WP_FLAG
29574                    || '_' || sup_wbs_hdr.WP_FLAG
29575                    || '_' || sub_ver.STATUS_CODE
29576                    || '_' || sup_ver.STATUS_CODE,
29577                  'Y_Y__', to_number(null),
29578                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29579                  pjp1.LABOR_REVENUE)                  LABOR_REVENUE,
29580           decode(wbs_hdr.WP_FLAG
29581                    || '_' || sup_wbs_hdr.WP_FLAG
29582                    || '_' || sub_ver.STATUS_CODE
29583                    || '_' || sup_ver.STATUS_CODE,
29584                  'Y_Y__', to_number(null),
29585                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29586                  pjp1.EQUIPMENT_HOURS)                EQUIPMENT_HOURS,
29587           decode(wbs_hdr.WP_FLAG
29588                    || '_' || sup_wbs_hdr.WP_FLAG
29589                    || '_' || sub_ver.STATUS_CODE
29590                    || '_' || sup_ver.STATUS_CODE,
29591                  'Y_Y__', to_number(null),
29592                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29593                  pjp1.BILLABLE_EQUIPMENT_HOURS)       BILLABLE_EQUIPMENT_HOURS,
29594           decode(wbs_hdr.WP_FLAG
29595                    || '_' || sup_wbs_hdr.WP_FLAG
29596                    || '_' || sub_ver.STATUS_CODE
29597                    || '_' || sup_ver.STATUS_CODE,
29598                  'Y_Y__', to_number(null),
29599                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29600                  pjp1.SUP_INV_COMMITTED_COST)         SUP_INV_COMMITTED_COST,
29601           decode(wbs_hdr.WP_FLAG
29602                    || '_' || sup_wbs_hdr.WP_FLAG
29603                    || '_' || sub_ver.STATUS_CODE
29604                    || '_' || sup_ver.STATUS_CODE,
29605                  'Y_Y__', to_number(null),
29606                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29607                  pjp1.PO_COMMITTED_COST)              PO_COMMITTED_COST,
29608           decode(wbs_hdr.WP_FLAG
29609                    || '_' || sup_wbs_hdr.WP_FLAG
29610                    || '_' || sub_ver.STATUS_CODE
29611                    || '_' || sup_ver.STATUS_CODE,
29612                  'Y_Y__', to_number(null),
29613                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29614                  pjp1.PR_COMMITTED_COST)              PR_COMMITTED_COST,
29615           decode(wbs_hdr.WP_FLAG
29616                    || '_' || sup_wbs_hdr.WP_FLAG
29617                    || '_' || sub_ver.STATUS_CODE
29618                    || '_' || sup_ver.STATUS_CODE,
29619                  'Y_Y__', to_number(null),
29620                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
29621                  pjp1.OTH_COMMITTED_COST)             OTH_COMMITTED_COST,
29622           decode(wbs_hdr.WP_FLAG
29623                    || '_' || sup_wbs_hdr.WP_FLAG
29624                    || '_' || sup_ver.STATUS_CODE,
29625                  'Y_Y_', to_number(null),
29626                  pjp1.ACT_LABOR_HRS)                  ACT_LABOR_HRS,
29627           decode(wbs_hdr.WP_FLAG
29628                    || '_' || sup_wbs_hdr.WP_FLAG
29629                    || '_' || sup_ver.STATUS_CODE,
29630                  'Y_Y_', to_number(null),
29631                  pjp1.ACT_EQUIP_HRS)                  ACT_EQUIP_HRS,
29632           decode(wbs_hdr.WP_FLAG
29633                    || '_' || sup_wbs_hdr.WP_FLAG
29634                    || '_' || sup_ver.STATUS_CODE,
29635                  'Y_Y_', to_number(null),
29636                  pjp1.ACT_LABOR_BRDN_COST)            ACT_LABOR_BRDN_COST,
29637           decode(wbs_hdr.WP_FLAG
29638                    || '_' || sup_wbs_hdr.WP_FLAG
29639                    || '_' || sup_ver.STATUS_CODE,
29640                  'Y_Y_', to_number(null),
29641                  pjp1.ACT_EQUIP_BRDN_COST)            ACT_EQUIP_BRDN_COST,
29642           decode(wbs_hdr.WP_FLAG
29643                    || '_' || sup_wbs_hdr.WP_FLAG
29644                    || '_' || sup_ver.STATUS_CODE,
29645                  'Y_Y_', to_number(null),
29646                  pjp1.ACT_BRDN_COST)                  ACT_BRDN_COST,
29647           decode(wbs_hdr.WP_FLAG
29648                    || '_' || sup_wbs_hdr.WP_FLAG
29649                    || '_' || sup_ver.STATUS_CODE,
29650                  'Y_Y_', to_number(null),
29651                  pjp1.ACT_RAW_COST)                   ACT_RAW_COST,
29652           decode(wbs_hdr.WP_FLAG
29653                    || '_' || sup_wbs_hdr.WP_FLAG
29654                    || '_' || sup_ver.STATUS_CODE,
29655                  'Y_Y_', to_number(null),
29656                  pjp1.ACT_REVENUE)                    ACT_REVENUE,
29657           decode(wbs_hdr.WP_FLAG
29658                    || '_' || sup_wbs_hdr.WP_FLAG
29659                    || '_' || sup_ver.STATUS_CODE,
29660                  'Y_Y_', to_number(null),
29661                  pjp1.ACT_LABOR_RAW_COST)             ACT_LABOR_RAW_COST,
29662           decode(wbs_hdr.WP_FLAG
29663                    || '_' || sup_wbs_hdr.WP_FLAG
29664                    || '_' || sup_ver.STATUS_CODE,
29665                  'Y_Y_', to_number(null),
29666                  pjp1.ACT_EQUIP_RAW_COST)             ACT_EQUIP_RAW_COST,
29667           decode(wbs_hdr.WP_FLAG
29668                    || '_' || sup_wbs_hdr.WP_FLAG
29669                    || '_' || sup_ver.STATUS_CODE,
29670                  'Y_Y_', to_number(null),
29671                  pjp1.ETC_LABOR_HRS)                  ETC_LABOR_HRS,
29672           decode(wbs_hdr.WP_FLAG
29673                    || '_' || sup_wbs_hdr.WP_FLAG
29674                    || '_' || sup_ver.STATUS_CODE,
29675                  'Y_Y_', to_number(null),
29676                  pjp1.ETC_EQUIP_HRS)                  ETC_EQUIP_HRS,
29677           decode(wbs_hdr.WP_FLAG
29678                    || '_' || sup_wbs_hdr.WP_FLAG
29679                    || '_' || sup_ver.STATUS_CODE,
29680                  'Y_Y_', to_number(null),
29681                  pjp1.ETC_LABOR_BRDN_COST)            ETC_LABOR_BRDN_COST,
29682           decode(wbs_hdr.WP_FLAG
29683                    || '_' || sup_wbs_hdr.WP_FLAG
29684                    || '_' || sup_ver.STATUS_CODE,
29685                  'Y_Y_', to_number(null),
29686                  pjp1.ETC_EQUIP_BRDN_COST)            ETC_EQUIP_BRDN_COST,
29687           decode(wbs_hdr.WP_FLAG
29688                    || '_' || sup_wbs_hdr.WP_FLAG
29689                    || '_' || sup_ver.STATUS_CODE,
29690                  'Y_Y_', to_number(null),
29691                  pjp1.ETC_BRDN_COST)                  ETC_BRDN_COST,
29692           decode(wbs_hdr.WP_FLAG
29693                    || '_' || sup_wbs_hdr.WP_FLAG
29694                    || '_' || sup_ver.STATUS_CODE,
29695                  'Y_Y_', to_number(null),
29696                  pjp1.ETC_RAW_COST)                   ETC_RAW_COST,
29697           decode(wbs_hdr.WP_FLAG
29698                    || '_' || sup_wbs_hdr.WP_FLAG
29699                    || '_' || sup_ver.STATUS_CODE,
29700                  'Y_Y_', to_number(null),
29701                  pjp1.ETC_LABOR_RAW_COST)             ETC_LABOR_RAW_COST,
29702           decode(wbs_hdr.WP_FLAG
29703                    || '_' || sup_wbs_hdr.WP_FLAG
29704                    || '_' || sup_ver.STATUS_CODE,
29705                  'Y_Y_', to_number(null),
29706                  pjp1.ETC_EQUIP_RAW_COST)             ETC_EQUIP_RAW_COST,
29707           pjp1.CUSTOM1,
29708           pjp1.CUSTOM2,
29709           pjp1.CUSTOM3,
29710           pjp1.CUSTOM4,
29711           pjp1.CUSTOM5,
29712           pjp1.CUSTOM6,
29713           pjp1.CUSTOM7,
29714           pjp1.CUSTOM8,
29715           pjp1.CUSTOM9,
29716           pjp1.CUSTOM10,
29717           pjp1.CUSTOM11,
29718           pjp1.CUSTOM12,
29719           pjp1.CUSTOM13,
29720           pjp1.CUSTOM14,
29721           pjp1.CUSTOM15
29722         from
29723           PJI_FP_AGGR_PJP1           pjp1,
29724           PJI_PJP_WBS_HEADER         wbs_hdr,
29725           PA_PROJ_ELEMENTS           prj_emt,
29726           PA_XBS_DENORM              prg,
29727           PJI_XBS_DENORM_DELTA       prg_delta,
29728           PJI_PJP_WBS_HEADER         sup_wbs_hdr,
29729           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
29730           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
29731           (
29732             select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID
29733             from DUAL union all
29734             select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID
29735             from DUAL union all
29736             select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID
29737             from DUAL union all
29738             select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID
29739             from DUAL
29740           ) fin_plan
29741         where
29742           prg.STRUCT_TYPE            =  'PRG'                           and
29743           prg.SUP_LEVEL              =  l_level                         and
29744           nvl(prg.SUB_ROLLUP_ID,
29745               prg.SUP_EMT_ID)        <> prg.SUP_EMT_ID                  and
29746           p_worker_id                =  prg_delta.WORKER_ID         (+) and
29747           prg.STRUCT_TYPE            =  prg_delta.STRUCT_TYPE       (+) and
29748           prg.SUP_PROJECT_ID         =  prg_delta.SUP_PROJECT_ID    (+) and
29749           prg.SUP_LEVEL              =  prg_delta.SUP_LEVEL         (+) and
29750           prg.SUP_ID                 =  prg_delta.SUP_ID            (+) and
29751           prg.SUB_LEVEL              =  prg_delta.SUB_LEVEL         (+) and
29752           prg.SUB_ID                 =  prg_delta.SUB_ID            (+) and
29753           prg.RELATIONSHIP_TYPE      =  prg_delta.RELATIONSHIP_TYPE (+) and
29754           1                          =  prg_delta.SIGN              (+) and
29755           (prg_delta.SUP_PROJECT_ID is not null or
29756            (prg_delta.SUP_PROJECT_ID is null and
29757             pjp1.RECORD_TYPE = 'P'))                                    and
29758           pjp1.WORKER_ID             =  p_worker_id                     and
29759           pjp1.PRG_LEVEL             in (0, prg.SUB_LEVEL)              and
29760           pjp1.PROJECT_ID            =  prj_emt.PROJECT_ID              and
29761           (((pjp1.RBS_AGGR_LEVEL,
29762              pjp1.WBS_ROLLUP_FLAG,
29763              pjp1.PRG_ROLLUP_FLAG) in (('T', 'Y', 'Y'),
29764                                        ('T', 'Y', 'N'),
29765                                        ('T', 'N', 'Y'),
29766                                        ('T', 'N', 'N'),
29767                                        ('L', 'N', 'N')) and
29768              pjp1.PROJECT_ELEMENT_ID = prg.SUB_EMT_ID) or
29769            ((pjp1.RBS_AGGR_LEVEL,
29770              pjp1.WBS_ROLLUP_FLAG,
29771              pjp1.PRG_ROLLUP_FLAG) in (('L', 'N', 'Y'),
29772                                        ('L', 'N', 'N')) and
29773              pjp1.PROJECT_ELEMENT_ID <> prg.SUB_EMT_ID))                and
29774           decode(pjp1.PLAN_VERSION_ID,
29775                  -1, 'LF',
29776                  -2, 'LF',
29777                  -3, 'LF',
29778                  -4, 'LF',
29779                      decode(wbs_hdr.WP_FLAG,
29780                             'N', 'LF',
29781                               'LW')) =  prg.RELATIONSHIP_TYPE           and
29782           prg.STRUCT_VERSION_ID      is null                            and
29783           prj_emt.OBJECT_TYPE        =  'PA_STRUCTURES'                 and
29784           prj_emt.PROJ_ELEMENT_ID    =  prg.SUB_EMT_ID                  and
29785           wbs_hdr.PROJECT_ID         =  prj_emt.PROJECT_ID              and
29786           wbs_hdr.WBS_VERSION_ID     =  prg.SUB_ID                      and
29787           wbs_hdr.PROJECT_ID         =  pjp1.PROJECT_ID                 and
29788           wbs_hdr.PLAN_VERSION_ID    =  pjp1.PLAN_VERSION_ID            and
29789           wbs_hdr.PLAN_TYPE_CODE     =  pjp1.PLAN_TYPE_CODE             and
29790           decode(pjp1.PLAN_VERSION_ID,
29791                  -3, pjp1.PLAN_TYPE_ID,
29792                  -4, pjp1.PLAN_TYPE_ID,
29793                      -1)             =  decode(pjp1.PLAN_VERSION_ID,
29794                                                -3, wbs_hdr.PLAN_TYPE_ID,
29795                                                -4, wbs_hdr.PLAN_TYPE_ID,
29796                                                    -1)                  and
29797           decode(wbs_hdr.WP_FLAG,
29798                  'N', decode(pjp1.PLAN_VERSION_ID,
29799                              -1, 'Y',
29800                              -2, 'Y',
29801                              -3, 'Y',
29802                              -4, 'Y',
29803                                  decode(pjp1.RBS_AGGR_LEVEL
29804                                           || '_' || wbs_hdr.CB_FLAG
29805                                           || '_' || wbs_hdr.CO_FLAG,
29806                                         'L_Y_Y', 'Y',
29807                                         'L_N_Y', 'Y',
29808                                         'L_Y_N', 'Y',
29809                                                  'N')),
29810                       'Y')           =  'Y'                             and
29811           prg.SUP_PROJECT_ID         =  sup_wbs_hdr.PROJECT_ID      (+) and
29812           prg.SUP_ID                 =  sup_wbs_hdr.WBS_VERSION_ID  (+) and
29813           'Y'                        =  sup_wbs_hdr.WP_FLAG         (+) and
29814           wbs_hdr.PROJECT_ID         =  sub_ver.PROJECT_ID          (+) and
29815           wbs_hdr.WBS_VERSION_ID     =  sub_ver.ELEMENT_VERSION_ID  (+) and
29816           'STRUCTURE_PUBLISHED'      =  sub_ver.STATUS_CODE         (+) and
29817           sup_wbs_hdr.PROJECT_ID     =  sup_ver.PROJECT_ID          (+) and
29818           sup_wbs_hdr.WBS_VERSION_ID =  sup_ver.ELEMENT_VERSION_ID  (+) and
29819           'STRUCTURE_PUBLISHED'      =  sup_ver.STATUS_CODE         (+) and
29820           wbs_hdr.CB_FLAG            =  fin_plan.CB                 (+) and
29821           wbs_hdr.CO_FLAG            =  fin_plan.CO                 (+)
29822         )                          pjp,
29823         PJI_PJP_PROJ_BATCH_MAP     map,
29824         PA_PROJ_WORKPLAN_ATTR      sup_wpa,
29825         PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
29826         PA_XBS_DENORM              wbs,
29827         (
29828           select 1     WBS_SUP_LEVEL,
29829                  'PRJ' INVERT_ID
29830           from   DUAL
29831           union all
29832           select 1     WBS_SUP_LEVEL,
29833                  'WBS' INVERT_ID
29834           from   DUAL
29835         ) top_slice
29836       where
29837         map.WORKER_ID           = p_worker_id                         and
29838         map.PROJECT_ID          = pjp.SUP_PROJECT_ID                  and
29839         pjp.SUP_EMT_ID          = sup_wpa.PROJ_ELEMENT_ID             and
29840         pjp.SUP_PROJECT_ID      = sup_fin_ver.PROJECT_ID          (+) and
29841         pjp.SUP_ID              = sup_fin_ver.ELEMENT_VERSION_ID  (+) and
29842         'STRUCTURE_WORKING'     = sup_fin_ver.STATUS_CODE         (+) and
29843         (pjp.SUP_WP_FLAG is null or
29844          (pjp.SUP_WP_FLAG is not null and
29845           (sup_fin_ver.PROJECT_ID is not null or
29846            sup_wpa.WP_ENABLE_VERSION_FLAG = 'N')))                    and
29847         'WBS'                   = wbs.STRUCT_TYPE                 (+) and
29848         pjp.STRUCT_TYPE         = wbs.STRUCT_TYPE                 (+) and
29849         pjp.SUP_PROJECT_ID      = wbs.SUP_PROJECT_ID              (+) and
29850         pjp.SUP_ID              = wbs.STRUCT_VERSION_ID           (+) and
29851         pjp.SUB_ROLLUP_ID       = wbs.SUB_EMT_ID                  (+) and
29852         wbs.SUP_LEVEL           = top_slice.WBS_SUP_LEVEL         (+)
29853       group by
29854         pjp.LINE_TYPE,
29855         pjp.SUP_PROJECT_ID,
29856         map.PROJECT_ORG_ID,
29857         map.PROJECT_ORGANIZATION_ID,
29858         decode(pjp.STRUCT_TYPE,
29859                'DO_NOT_ROLLUP', pjp.SUB_ROLLUP_ID,
29860                                 decode(top_slice.INVERT_ID,
29861                                        'PRJ', pjp.SUP_EMT_ID, wbs.SUP_EMT_ID)
29862               ),
29863         pjp.TIME_ID,
29864         pjp.PERIOD_TYPE_ID,
29865         pjp.CALENDAR_TYPE,
29866         pjp.RBS_AGGR_LEVEL,
29867         decode(pjp.STRUCT_TYPE,
29868                'DO_NOT_ROLLUP', 'N',
29869                                 decode(top_slice.INVERT_ID,
29870                                        'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
29871                                                           wbs.SUP_EMT_ID,
29872                                                           'N', 'Y'))
29873               ),
29874         pjp.CURR_RECORD_TYPE_ID,
29875         pjp.CURRENCY_CODE,
29876         pjp.RBS_ELEMENT_ID,
29877         pjp.RBS_VERSION_ID,
29878         pjp.PLAN_VERSION_ID,
29879         pjp.PLAN_TYPE_ID,
29880         pjp.PLAN_TYPE_CODE;
29881     elsif (p_worker_id =4) then
29882       -- Query for Partition 4
29883 
29884         insert /*+ parallel(PJI_FP_AGGR_PJP1) */
29885                    into PJI_FP_AGGR_PJP1 partition(P4)
29886       (
29887         WORKER_ID,
29888         RECORD_TYPE,
29889         PRG_LEVEL,
29890         LINE_TYPE,
29891         PROJECT_ID,
29892         PROJECT_ORG_ID,
29893         PROJECT_ORGANIZATION_ID,
29894         PROJECT_ELEMENT_ID,
29895         TIME_ID,
29896         PERIOD_TYPE_ID,
29897         CALENDAR_TYPE,
29898         RBS_AGGR_LEVEL,
29899         WBS_ROLLUP_FLAG,
29900         PRG_ROLLUP_FLAG,
29901         CURR_RECORD_TYPE_ID,
29902         CURRENCY_CODE,
29903         RBS_ELEMENT_ID,
29904         RBS_VERSION_ID,
29905         PLAN_VERSION_ID,
29906         PLAN_TYPE_ID,
29907         PLAN_TYPE_CODE,
29908         RAW_COST,
29909         BRDN_COST,
29910         REVENUE,
29911         BILL_RAW_COST,
29912         BILL_BRDN_COST,
29913         BILL_LABOR_RAW_COST,
29914         BILL_LABOR_BRDN_COST,
29915         BILL_LABOR_HRS,
29916         EQUIPMENT_RAW_COST,
29917         EQUIPMENT_BRDN_COST,
29918         CAPITALIZABLE_RAW_COST,
29919         CAPITALIZABLE_BRDN_COST,
29920         LABOR_RAW_COST,
29921         LABOR_BRDN_COST,
29922         LABOR_HRS,
29923         LABOR_REVENUE,
29924         EQUIPMENT_HOURS,
29925         BILLABLE_EQUIPMENT_HOURS,
29926         SUP_INV_COMMITTED_COST,
29927         PO_COMMITTED_COST,
29928         PR_COMMITTED_COST,
29929         OTH_COMMITTED_COST,
29930         ACT_LABOR_HRS,
29931         ACT_EQUIP_HRS,
29932         ACT_LABOR_BRDN_COST,
29933         ACT_EQUIP_BRDN_COST,
29934         ACT_BRDN_COST,
29935         ACT_RAW_COST,
29936         ACT_REVENUE,
29937         ACT_LABOR_RAW_COST,
29938         ACT_EQUIP_RAW_COST,
29939         ETC_LABOR_HRS,
29940         ETC_EQUIP_HRS,
29941         ETC_LABOR_BRDN_COST,
29942         ETC_EQUIP_BRDN_COST,
29943         ETC_BRDN_COST,
29944         ETC_RAW_COST,
29945         ETC_LABOR_RAW_COST,
29946         ETC_EQUIP_RAW_COST,
29947         CUSTOM1,
29948         CUSTOM2,
29949         CUSTOM3,
29950         CUSTOM4,
29951         CUSTOM5,
29952         CUSTOM6,
29953         CUSTOM7,
29954         CUSTOM8,
29955         CUSTOM9,
29956         CUSTOM10,
29957         CUSTOM11,
29958         CUSTOM12,
29959         CUSTOM13,
29960         CUSTOM14,
29961         CUSTOM15
29962       )
29963       select /*+ no_merge(pjp) */
29964         p_worker_id                                   WORKER_ID,
29965         'P'                                           RECORD_TYPE,
29966         l_level                                       PRG_LEVEL,
29967         pjp.LINE_TYPE,
29968         pjp.SUP_PROJECT_ID                            PROJECT_ID,
29969         map.PROJECT_ORG_ID,
29970         map.PROJECT_ORGANIZATION_ID,
29971         decode(pjp.STRUCT_TYPE,
29972                'DO_NOT_ROLLUP', pjp.SUB_ROLLUP_ID,
29973                                 decode(top_slice.INVERT_ID,
29974                                        'PRJ', pjp.SUP_EMT_ID, wbs.SUP_EMT_ID)
29975               )                                       PROJECT_ELEMENT_ID,
29976         pjp.TIME_ID,
29977         pjp.PERIOD_TYPE_ID,
29978         pjp.CALENDAR_TYPE,
29979         pjp.RBS_AGGR_LEVEL,
29980         decode(pjp.STRUCT_TYPE,
29981                'DO_NOT_ROLLUP', 'N',
29982                                 decode(top_slice.INVERT_ID,
29983                                        'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
29984                                                           wbs.SUP_EMT_ID,
29985                                                           'N', 'Y'))
29986               )                                       WBS_ROLLUP_FLAG,
29987         'Y'                                           PRG_ROLLUP_FLAG,
29988         pjp.CURR_RECORD_TYPE_ID,
29989         pjp.CURRENCY_CODE,
29990         pjp.RBS_ELEMENT_ID,
29991         pjp.RBS_VERSION_ID,
29992         pjp.PLAN_VERSION_ID,
29993         pjp.PLAN_TYPE_ID,
29994         pjp.PLAN_TYPE_CODE,
29995         sum(pjp.RAW_COST)                             RAW_COST,
29996         sum(pjp.BRDN_COST)                            BRDN_COST,
29997         sum(pjp.REVENUE)                              REVENUE,
29998         sum(pjp.BILL_RAW_COST)                        BILL_RAW_COST,
29999         sum(pjp.BILL_BRDN_COST)                       BILL_BRDN_COST,
30000         sum(pjp.BILL_LABOR_RAW_COST)                  BILL_LABOR_RAW_COST,
30001         sum(pjp.BILL_LABOR_BRDN_COST)                 BILL_LABOR_BRDN_COST,
30002         sum(pjp.BILL_LABOR_HRS)                       BILL_LABOR_HRS,
30003         sum(pjp.EQUIPMENT_RAW_COST)                   EQUIPMENT_RAW_COST,
30004         sum(pjp.EQUIPMENT_BRDN_COST)                  EQUIPMENT_BRDN_COST,
30005         sum(pjp.CAPITALIZABLE_RAW_COST)               CAPITALIZABLE_RAW_COST,
30006         sum(pjp.CAPITALIZABLE_BRDN_COST)              CAPITALIZABLE_BRDN_COST,
30007         sum(pjp.LABOR_RAW_COST)                       LABOR_RAW_COST,
30008         sum(pjp.LABOR_BRDN_COST)                      LABOR_BRDN_COST,
30009         sum(pjp.LABOR_HRS)                            LABOR_HRS,
30010         sum(pjp.LABOR_REVENUE)                        LABOR_REVENUE,
30011         sum(pjp.EQUIPMENT_HOURS)                      EQUIPMENT_HOURS,
30012         sum(pjp.BILLABLE_EQUIPMENT_HOURS)             BILLABLE_EQUIPMENT_HOURS,
30013         sum(pjp.SUP_INV_COMMITTED_COST)               SUP_INV_COMMITTED_COST,
30014         sum(pjp.PO_COMMITTED_COST)                    PO_COMMITTED_COST,
30015         sum(pjp.PR_COMMITTED_COST)                    PR_COMMITTED_COST,
30016         sum(pjp.OTH_COMMITTED_COST)                   OTH_COMMITTED_COST,
30017         sum(pjp.ACT_LABOR_HRS)                        ACT_LABOR_HRS,
30018         sum(pjp.ACT_EQUIP_HRS)                        ACT_EQUIP_HRS,
30019         sum(pjp.ACT_LABOR_BRDN_COST)                  ACT_LABOR_BRDN_COST,
30020         sum(pjp.ACT_EQUIP_BRDN_COST)                  ACT_EQUIP_BRDN_COST,
30021         sum(pjp.ACT_BRDN_COST)                        ACT_BRDN_COST,
30022         sum(pjp.ACT_RAW_COST)                         ACT_RAW_COST,
30023         sum(pjp.ACT_REVENUE)                          ACT_REVENUE,
30024         sum(pjp.ACT_LABOR_RAW_COST)                   ACT_LABOR_RAW_COST,
30025         sum(pjp.ACT_EQUIP_RAW_COST)                   ACT_EQUIP_RAW_COST,
30026         sum(pjp.ETC_LABOR_HRS)                        ETC_LABOR_HRS,
30027         sum(pjp.ETC_EQUIP_HRS)                        ETC_EQUIP_HRS,
30028         sum(pjp.ETC_LABOR_BRDN_COST)                  ETC_LABOR_BRDN_COST,
30029         sum(pjp.ETC_EQUIP_BRDN_COST)                  ETC_EQUIP_BRDN_COST,
30030         sum(pjp.ETC_BRDN_COST)                        ETC_BRDN_COST,
30031         sum(pjp.ETC_RAW_COST)                         ETC_RAW_COST,
30032         sum(pjp.ETC_LABOR_RAW_COST)                   ETC_LABOR_RAW_COST,
30033         sum(pjp.ETC_EQUIP_RAW_COST)                   ETC_EQUIP_RAW_COST,
30034         sum(pjp.CUSTOM1)                              CUSTOM1,
30035         sum(pjp.CUSTOM2)                              CUSTOM2,
30036         sum(pjp.CUSTOM3)                              CUSTOM3,
30037         sum(pjp.CUSTOM4)                              CUSTOM4,
30038         sum(pjp.CUSTOM5)                              CUSTOM5,
30039         sum(pjp.CUSTOM6)                              CUSTOM6,
30040         sum(pjp.CUSTOM7)                              CUSTOM7,
30041         sum(pjp.CUSTOM8)                              CUSTOM8,
30042         sum(pjp.CUSTOM9)                              CUSTOM9,
30043         sum(pjp.CUSTOM10)                             CUSTOM10,
30044         sum(pjp.CUSTOM11)                             CUSTOM11,
30045         sum(pjp.CUSTOM12)                             CUSTOM12,
30046         sum(pjp.CUSTOM13)                             CUSTOM13,
30047         sum(pjp.CUSTOM14)                             CUSTOM14,
30048         sum(pjp.CUSTOM15)                             CUSTOM15
30049       from
30050         (
30051         select /*+ ordered index(fpr PJI_FP_XBS_ACCUM_F_N1) */
30052                -- get structure level amounts from Reporting Lines
30053           decode(fpr.RBS_AGGR_LEVEL,
30054                  'L', 'DO_NOT_ROLLUP',
30055                       'WBS')                          STRUCT_TYPE,
30056           to_char(null)                               LINE_TYPE,
30057           prg.SUP_PROJECT_ID,
30058           prg.SUP_ID,
30059           prg.SUP_EMT_ID,
30060           prg.SUB_EMT_ID,
30061           prg.SUB_ROLLUP_ID,
30062           'FPR'                                       LINE_SOURCE,
30063           decode(fpr.PLAN_VERSION_ID,
30064                  -1, prg.SUB_ID,
30065                  -3, prg.SUB_ID,
30066                  -4, prg.SUB_ID,
30067                      decode(fin_plan.PLAN_VERSION_ID,
30068                             null, null,
30069                                   prg.SUB_ID))        SUB_ID,
30070           decode(fpr.PLAN_VERSION_ID,
30071                  -1, 'N',
30072                  -3, 'N',
30073                  -4, 'N',
30074                      decode(fin_plan.PLAN_VERSION_ID,
30075                             null, null,
30076                                   'N'))               SUP_WP_FLAG,
30077           decode(fpr.PLAN_VERSION_ID,
30078                  -1, fpr.PLAN_VERSION_ID,
30079                  -3, fpr.PLAN_VERSION_ID,
30080                  -4, fpr.PLAN_VERSION_ID,
30081                      decode(fin_plan.PLAN_VERSION_ID,
30082                             null, null,
30083                                   fin_plan.PLAN_VERSION_ID)
30084                 )                                     SUB_PLAN_VERSION_ID,
30085           decode(fpr.PLAN_VERSION_ID,
30086                  -1, fpr.PLAN_TYPE_ID,
30087                  -3, fpr.PLAN_TYPE_ID,
30088                  -4, fpr.PLAN_TYPE_ID,
30089                      decode(fin_plan.PLAN_VERSION_ID,
30090                             null, null,
30091                                   fpr.PLAN_TYPE_ID))  SUB_PLAN_TYPE_ID,
30092           fpr.TIME_ID,
30093           fpr.PERIOD_TYPE_ID,
30094           fpr.CALENDAR_TYPE,
30095           fpr.RBS_AGGR_LEVEL,
30096           fpr.CURR_RECORD_TYPE_ID,
30097           fpr.CURRENCY_CODE,
30098           fpr.RBS_ELEMENT_ID,
30099           fpr.RBS_VERSION_ID,
30100           decode(wbs_hdr.WP_FLAG,
30101                  'N', decode(wbs_hdr.PLAN_VERSION_ID,
30102                              -1, fpr.PLAN_VERSION_ID,
30103                                  fin_plan.PLAN_VERSION_ID),
30104                       sup_wbs_hdr.PLAN_VERSION_ID)    PLAN_VERSION_ID,
30105           decode(wbs_hdr.WP_FLAG,
30106                  'N', fpr.PLAN_TYPE_ID,
30107                       sup_wbs_hdr.PLAN_TYPE_ID)       PLAN_TYPE_ID,
30108           fpr.PLAN_TYPE_CODE,
30109           decode(wbs_hdr.WP_FLAG
30110                    || '_' || sup_wbs_hdr.WP_FLAG
30111                    || '_' || sub_ver.STATUS_CODE
30112                    || '_' || sup_ver.STATUS_CODE,
30113                  'Y_Y__', to_number(null),
30114                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30115                  prg.SIGN * fpr.RAW_COST)             RAW_COST,
30116           decode(wbs_hdr.WP_FLAG
30117                    || '_' || sup_wbs_hdr.WP_FLAG
30118                    || '_' || sub_ver.STATUS_CODE
30119                    || '_' || sup_ver.STATUS_CODE,
30120                  'Y_Y__', to_number(null),
30121                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30122                  prg.SIGN * fpr.BRDN_COST)            BRDN_COST,
30123           decode(wbs_hdr.WP_FLAG
30124                    || '_' || sup_wbs_hdr.WP_FLAG
30125                    || '_' || sub_ver.STATUS_CODE
30126                    || '_' || sup_ver.STATUS_CODE,
30127                  'Y_Y__', to_number(null),
30128                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30129                  prg.SIGN * fpr.REVENUE)              REVENUE,
30130           decode(wbs_hdr.WP_FLAG
30131                    || '_' || sup_wbs_hdr.WP_FLAG
30132                    || '_' || sub_ver.STATUS_CODE
30133                    || '_' || sup_ver.STATUS_CODE,
30134                  'Y_Y__', to_number(null),
30135                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30136                  prg.SIGN * fpr.BILL_RAW_COST)        BILL_RAW_COST,
30137           decode(wbs_hdr.WP_FLAG
30138                    || '_' || sup_wbs_hdr.WP_FLAG
30139                    || '_' || sub_ver.STATUS_CODE
30140                    || '_' || sup_ver.STATUS_CODE,
30141                  'Y_Y__', to_number(null),
30142                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30143                  prg.SIGN * fpr.BILL_BRDN_COST)       BILL_BRDN_COST,
30144           decode(wbs_hdr.WP_FLAG
30145                    || '_' || sup_wbs_hdr.WP_FLAG
30146                    || '_' || sub_ver.STATUS_CODE
30147                    || '_' || sup_ver.STATUS_CODE,
30148                  'Y_Y__', to_number(null),
30149                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30150                  prg.SIGN * fpr.BILL_LABOR_RAW_COST)  BILL_LABOR_RAW_COST,
30151           decode(wbs_hdr.WP_FLAG
30152                    || '_' || sup_wbs_hdr.WP_FLAG
30153                    || '_' || sub_ver.STATUS_CODE
30154                    || '_' || sup_ver.STATUS_CODE,
30155                  'Y_Y__', to_number(null),
30156                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30157                  prg.SIGN * fpr.BILL_LABOR_BRDN_COST) BILL_LABOR_BRDN_COST,
30158           decode(wbs_hdr.WP_FLAG
30159                    || '_' || sup_wbs_hdr.WP_FLAG
30160                    || '_' || sub_ver.STATUS_CODE
30161                    || '_' || sup_ver.STATUS_CODE,
30162                  'Y_Y__', to_number(null),
30163                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30164                  prg.SIGN * fpr.BILL_LABOR_HRS)       BILL_LABOR_HRS,
30165           decode(wbs_hdr.WP_FLAG
30166                    || '_' || sup_wbs_hdr.WP_FLAG
30167                    || '_' || sub_ver.STATUS_CODE
30168                    || '_' || sup_ver.STATUS_CODE,
30169                  'Y_Y__', to_number(null),
30170                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30171                  prg.SIGN * fpr.EQUIPMENT_RAW_COST)   EQUIPMENT_RAW_COST,
30172           decode(wbs_hdr.WP_FLAG
30173                    || '_' || sup_wbs_hdr.WP_FLAG
30174                    || '_' || sub_ver.STATUS_CODE
30175                    || '_' || sup_ver.STATUS_CODE,
30176                  'Y_Y__', to_number(null),
30177                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30178                  prg.SIGN * fpr.EQUIPMENT_BRDN_COST)  EQUIPMENT_BRDN_COST,
30179           decode(wbs_hdr.WP_FLAG
30180                    || '_' || sup_wbs_hdr.WP_FLAG
30181                    || '_' || sub_ver.STATUS_CODE
30182                    || '_' || sup_ver.STATUS_CODE,
30183                  'Y_Y__', to_number(null),
30184                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30185                  prg.SIGN * fpr.CAPITALIZABLE_RAW_COST)
30186                                                       CAPITALIZABLE_RAW_COST,
30187           decode(wbs_hdr.WP_FLAG
30188                    || '_' || sup_wbs_hdr.WP_FLAG
30189                    || '_' || sub_ver.STATUS_CODE
30190                    || '_' || sup_ver.STATUS_CODE,
30191                  'Y_Y__', to_number(null),
30192                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30193                  prg.SIGN * fpr.CAPITALIZABLE_BRDN_COST)
30194                                                       CAPITALIZABLE_BRDN_COST,
30195           decode(wbs_hdr.WP_FLAG
30196                    || '_' || sup_wbs_hdr.WP_FLAG
30197                    || '_' || sub_ver.STATUS_CODE
30198                    || '_' || sup_ver.STATUS_CODE,
30199                  'Y_Y__', to_number(null),
30200                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30201                  prg.SIGN * fpr.LABOR_RAW_COST)       LABOR_RAW_COST,
30202           decode(wbs_hdr.WP_FLAG
30203                    || '_' || sup_wbs_hdr.WP_FLAG
30204                    || '_' || sub_ver.STATUS_CODE
30205                    || '_' || sup_ver.STATUS_CODE,
30206                  'Y_Y__', to_number(null),
30207                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30208                  prg.SIGN * fpr.LABOR_BRDN_COST)      LABOR_BRDN_COST,
30209           decode(wbs_hdr.WP_FLAG
30210                    || '_' || sup_wbs_hdr.WP_FLAG
30211                    || '_' || sub_ver.STATUS_CODE
30212                    || '_' || sup_ver.STATUS_CODE,
30213                  'Y_Y__', to_number(null),
30214                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30215                  prg.SIGN * fpr.LABOR_HRS)            LABOR_HRS,
30216           decode(wbs_hdr.WP_FLAG
30217                    || '_' || sup_wbs_hdr.WP_FLAG
30218                    || '_' || sub_ver.STATUS_CODE
30219                    || '_' || sup_ver.STATUS_CODE,
30220                  'Y_Y__', to_number(null),
30221                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30222                  prg.SIGN * fpr.LABOR_REVENUE)        LABOR_REVENUE,
30223           decode(wbs_hdr.WP_FLAG
30224                    || '_' || sup_wbs_hdr.WP_FLAG
30225                    || '_' || sub_ver.STATUS_CODE
30226                    || '_' || sup_ver.STATUS_CODE,
30227                  'Y_Y__', to_number(null),
30228                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30229                  prg.SIGN * fpr.EQUIPMENT_HOURS)      EQUIPMENT_HOURS,
30230           decode(wbs_hdr.WP_FLAG
30231                    || '_' || sup_wbs_hdr.WP_FLAG
30232                    || '_' || sub_ver.STATUS_CODE
30233                    || '_' || sup_ver.STATUS_CODE,
30234                  'Y_Y__', to_number(null),
30235                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30236                  prg.SIGN * fpr.BILLABLE_EQUIPMENT_HOURS)
30237                                                       BILLABLE_EQUIPMENT_HOURS,
30238           decode(wbs_hdr.WP_FLAG
30239                    || '_' || sup_wbs_hdr.WP_FLAG
30240                    || '_' || sub_ver.STATUS_CODE
30241                    || '_' || sup_ver.STATUS_CODE,
30242                  'Y_Y__', to_number(null),
30243                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30244                  prg.SIGN * fpr.SUP_INV_COMMITTED_COST)
30245                                                       SUP_INV_COMMITTED_COST,
30246           decode(wbs_hdr.WP_FLAG
30247                    || '_' || sup_wbs_hdr.WP_FLAG
30248                    || '_' || sub_ver.STATUS_CODE
30249                    || '_' || sup_ver.STATUS_CODE,
30250                  'Y_Y__', to_number(null),
30251                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30252                  prg.SIGN * fpr.PO_COMMITTED_COST)    PO_COMMITTED_COST,
30253           decode(wbs_hdr.WP_FLAG
30254                    || '_' || sup_wbs_hdr.WP_FLAG
30255                    || '_' || sub_ver.STATUS_CODE
30256                    || '_' || sup_ver.STATUS_CODE,
30257                  'Y_Y__', to_number(null),
30258                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30259                  prg.SIGN * fpr.PR_COMMITTED_COST)    PR_COMMITTED_COST,
30260           decode(wbs_hdr.WP_FLAG
30261                    || '_' || sup_wbs_hdr.WP_FLAG
30262                    || '_' || sub_ver.STATUS_CODE
30263                    || '_' || sup_ver.STATUS_CODE,
30264                  'Y_Y__', to_number(null),
30265                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30266                  prg.SIGN * fpr.OTH_COMMITTED_COST)   OTH_COMMITTED_COST,
30267           decode(wbs_hdr.WP_FLAG
30268                    || '_' || sup_wbs_hdr.WP_FLAG
30269                    || '_' || sup_ver.STATUS_CODE,
30270                  'Y_Y_', to_number(null),
30271                  prg.SIGN * fpr.ACT_LABOR_HRS)        ACT_LABOR_HRS,
30272           decode(wbs_hdr.WP_FLAG
30273                    || '_' || sup_wbs_hdr.WP_FLAG
30274                    || '_' || sup_ver.STATUS_CODE,
30275                  'Y_Y_', to_number(null),
30276                  prg.SIGN * fpr.ACT_EQUIP_HRS)        ACT_EQUIP_HRS,
30277           decode(wbs_hdr.WP_FLAG
30278                    || '_' || sup_wbs_hdr.WP_FLAG
30279                    || '_' || sup_ver.STATUS_CODE,
30280                  'Y_Y_', to_number(null),
30281                  prg.SIGN * fpr.ACT_LABOR_BRDN_COST)  ACT_LABOR_BRDN_COST,
30282           decode(wbs_hdr.WP_FLAG
30283                    || '_' || sup_wbs_hdr.WP_FLAG
30284                    || '_' || sup_ver.STATUS_CODE,
30285                  'Y_Y_', to_number(null),
30286                  prg.SIGN * fpr.ACT_EQUIP_BRDN_COST)  ACT_EQUIP_BRDN_COST,
30287           decode(wbs_hdr.WP_FLAG
30288                    || '_' || sup_wbs_hdr.WP_FLAG
30289                    || '_' || sup_ver.STATUS_CODE,
30290                  'Y_Y_', to_number(null),
30291                  prg.SIGN * fpr.ACT_BRDN_COST)        ACT_BRDN_COST,
30292           decode(wbs_hdr.WP_FLAG
30293                    || '_' || sup_wbs_hdr.WP_FLAG
30294                    || '_' || sup_ver.STATUS_CODE,
30295                  'Y_Y_', to_number(null),
30296                  prg.SIGN * fpr.ACT_RAW_COST)         ACT_RAW_COST,
30297           decode(wbs_hdr.WP_FLAG
30298                    || '_' || sup_wbs_hdr.WP_FLAG
30299                    || '_' || sup_ver.STATUS_CODE,
30300                  'Y_Y_', to_number(null),
30301                  prg.SIGN * fpr.ACT_REVENUE)          ACT_REVENUE,
30302           decode(wbs_hdr.WP_FLAG
30303                    || '_' || sup_wbs_hdr.WP_FLAG
30304                    || '_' || sup_ver.STATUS_CODE,
30305                  'Y_Y_', to_number(null),
30306                  prg.SIGN * fpr.ACT_LABOR_RAW_COST)   ACT_LABOR_RAW_COST,
30307           decode(wbs_hdr.WP_FLAG
30308                    || '_' || sup_wbs_hdr.WP_FLAG
30309                    || '_' || sup_ver.STATUS_CODE,
30310                  'Y_Y_', to_number(null),
30311                  prg.SIGN * fpr.ACT_EQUIP_RAW_COST)   ACT_EQUIP_RAW_COST,
30312           decode(wbs_hdr.WP_FLAG
30313                    || '_' || sup_wbs_hdr.WP_FLAG
30314                    || '_' || sup_ver.STATUS_CODE,
30315                  'Y_Y_', to_number(null),
30316                  prg.SIGN * fpr.ETC_LABOR_HRS)        ETC_LABOR_HRS,
30317           decode(wbs_hdr.WP_FLAG
30318                    || '_' || sup_wbs_hdr.WP_FLAG
30319                    || '_' || sup_ver.STATUS_CODE,
30320                  'Y_Y_', to_number(null),
30321                  prg.SIGN * fpr.ETC_EQUIP_HRS)        ETC_EQUIP_HRS,
30322           decode(wbs_hdr.WP_FLAG
30323                    || '_' || sup_wbs_hdr.WP_FLAG
30324                    || '_' || sup_ver.STATUS_CODE,
30325                  'Y_Y_', to_number(null),
30326                  prg.SIGN * fpr.ETC_LABOR_BRDN_COST)  ETC_LABOR_BRDN_COST,
30327           decode(wbs_hdr.WP_FLAG
30328                    || '_' || sup_wbs_hdr.WP_FLAG
30329                    || '_' || sup_ver.STATUS_CODE,
30330                  'Y_Y_', to_number(null),
30331                  prg.SIGN * fpr.ETC_EQUIP_BRDN_COST)  ETC_EQUIP_BRDN_COST,
30332           decode(wbs_hdr.WP_FLAG
30333                    || '_' || sup_wbs_hdr.WP_FLAG
30334                    || '_' || sup_ver.STATUS_CODE,
30335                  'Y_Y_', to_number(null),
30336                  prg.SIGN * fpr.ETC_BRDN_COST)        ETC_BRDN_COST,
30337           decode(wbs_hdr.WP_FLAG
30338                    || '_' || sup_wbs_hdr.WP_FLAG
30339                    || '_' || sup_ver.STATUS_CODE,
30340                  'Y_Y_', to_number(null),
30341                  prg.SIGN * fpr.ETC_RAW_COST)         ETC_RAW_COST,
30342           decode(wbs_hdr.WP_FLAG
30343                    || '_' || sup_wbs_hdr.WP_FLAG
30344                    || '_' || sup_ver.STATUS_CODE,
30345                  'Y_Y_', to_number(null),
30346                  prg.SIGN * fpr.ETC_LABOR_RAW_COST)   ETC_LABOR_RAW_COST,
30347           decode(wbs_hdr.WP_FLAG
30348                    || '_' || sup_wbs_hdr.WP_FLAG
30349                    || '_' || sup_ver.STATUS_CODE,
30350                  'Y_Y_', to_number(null),
30351                  prg.SIGN * fpr.ETC_EQUIP_RAW_COST)   ETC_EQUIP_RAW_COST,
30352           prg.SIGN * fpr.CUSTOM1                      CUSTOM1,
30353           prg.SIGN * fpr.CUSTOM2                      CUSTOM2,
30354           prg.SIGN * fpr.CUSTOM3                      CUSTOM3,
30355           prg.SIGN * fpr.CUSTOM4                      CUSTOM4,
30356           prg.SIGN * fpr.CUSTOM5                      CUSTOM5,
30357           prg.SIGN * fpr.CUSTOM6                      CUSTOM6,
30358           prg.SIGN * fpr.CUSTOM7                      CUSTOM7,
30359           prg.SIGN * fpr.CUSTOM8                      CUSTOM8,
30360           prg.SIGN * fpr.CUSTOM9                      CUSTOM9,
30361           prg.SIGN * fpr.CUSTOM10                     CUSTOM10,
30362           prg.SIGN * fpr.CUSTOM11                     CUSTOM11,
30363           prg.SIGN * fpr.CUSTOM12                     CUSTOM12,
30364           prg.SIGN * fpr.CUSTOM13                     CUSTOM13,
30365           prg.SIGN * fpr.CUSTOM14                     CUSTOM14,
30366           prg.SIGN * fpr.CUSTOM15                     CUSTOM15
30367         from
30368           PJI_XBS_DENORM_DELTA       prg,
30369           PA_PROJ_ELEMENTS           prj_emt,
30370           PJI_PJP_WBS_HEADER         wbs_hdr,
30371           PJI_FP_XBS_ACCUM_F         fpr,
30372           PJI_PJP_WBS_HEADER         sup_wbs_hdr,
30373           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
30374           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
30375           (
30376             select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID
30377             from DUAL union all
30378             select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID
30379             from DUAL union all
30380             select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID
30381             from DUAL union all
30382             select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID
30383             from DUAL
30384           ) fin_plan
30385         where
30386           prg.WORKER_ID              =  p_worker_id                    and
30387           prg.STRUCT_TYPE            =  'PRG'                          and
30388           prg.SUP_LEVEL              =  l_level                        and
30389           nvl(prg.SUB_ROLLUP_ID,
30390               prg.SUP_EMT_ID)        <> prg.SUP_EMT_ID                 and
30391           fpr.PROJECT_ID             =  prj_emt.PROJECT_ID             and
30392           (((fpr.RBS_AGGR_LEVEL,
30393              fpr.WBS_ROLLUP_FLAG,
30394              fpr.PRG_ROLLUP_FLAG) in (('T', 'Y', 'Y'),
30395                                       ('T', 'Y', 'N'),
30396                                       ('T', 'N', 'Y'),
30397                                       ('T', 'N', 'N'),
30398                                       ('L', 'N', 'N')) and
30399              fpr.PROJECT_ELEMENT_ID = prg.SUB_EMT_ID) or
30400            ((fpr.RBS_AGGR_LEVEL,
30401              fpr.WBS_ROLLUP_FLAG,
30402              fpr.PRG_ROLLUP_FLAG) in (('L', 'N', 'Y'),
30403                                       ('L', 'N', 'N')) and
30404              fpr.PROJECT_ELEMENT_ID <> prg.SUB_EMT_ID))                and
30405           decode(fpr.PLAN_VERSION_ID,
30406                  -1, 'LF',
30407                  -2, 'LF',
30408                  -3, 'LF',
30409                  -4, 'LF',
30410                      decode(wbs_hdr.WP_FLAG,
30411                             'N', 'LF',
30412                               'LW')) =  prg.RELATIONSHIP_TYPE          and
30413           prj_emt.PROJ_ELEMENT_ID    =  prg.SUB_EMT_ID                 and
30414           wbs_hdr.PROJECT_ID         =  prj_emt.PROJECT_ID             and
30415           decode(wbs_hdr.WP_FLAG,
30416                  'Y', wbs_hdr.WBS_VERSION_ID,
30417                       -1)            = decode(wbs_hdr.WP_FLAG,
30418                                               'Y', prg.SUB_ID,
30419                                                    -1)                 and
30420           wbs_hdr.PLAN_VERSION_ID    =  fpr.PLAN_VERSION_ID            and
30421           wbs_hdr.PLAN_TYPE_CODE     =  fpr.PLAN_TYPE_CODE             and
30422           decode(fpr.PLAN_VERSION_ID,
30423                  -3, fpr.PLAN_TYPE_ID,
30424                  -4, fpr.PLAN_TYPE_ID,
30425                      -1)             =  decode(fpr.PLAN_VERSION_ID,
30426                                                -3, wbs_hdr.PLAN_TYPE_ID,
30427                                                -4, wbs_hdr.PLAN_TYPE_ID,
30428                                                    -1)                 and
30429           decode(wbs_hdr.WP_FLAG,
30430                  'N', decode(fpr.PLAN_VERSION_ID,
30431                              -1, 'Y',
30432                              -2, 'Y',
30433                              -3, 'Y',
30434                              -4, 'Y',
30435                                  decode(fpr.RBS_AGGR_LEVEL
30436                                           || '_' || wbs_hdr.CB_FLAG
30437                                           || '_' || wbs_hdr.CO_FLAG,
30438                                         'L_Y_Y', 'Y',
30439                                         'L_N_Y', 'Y',
30440                                         'L_Y_N', 'Y',
30441                                                  'N')),
30442                       'Y')           =  'Y'                            and
30443           prg.SUP_PROJECT_ID         =  sup_wbs_hdr.PROJECT_ID     (+) and
30444           prg.SUP_ID                 =  sup_wbs_hdr.WBS_VERSION_ID (+) and
30445           'Y'                        =  sup_wbs_hdr.WP_FLAG        (+) and
30446           wbs_hdr.PROJECT_ID         =  sub_ver.PROJECT_ID         (+) and
30447           wbs_hdr.WBS_VERSION_ID     =  sub_ver.ELEMENT_VERSION_ID (+) and
30448           'STRUCTURE_PUBLISHED'      =  sub_ver.STATUS_CODE        (+) and
30449           sup_wbs_hdr.PROJECT_ID     =  sup_ver.PROJECT_ID         (+) and
30450           sup_wbs_hdr.WBS_VERSION_ID =  sup_ver.ELEMENT_VERSION_ID (+) and
30451           'STRUCTURE_PUBLISHED'      =  sup_ver.STATUS_CODE        (+) and
30452           wbs_hdr.CB_FLAG            =  fin_plan.CB                (+) and
30453           wbs_hdr.CO_FLAG            =  fin_plan.CO                (+)
30454         union all
30455         select /*+ ordered parallel(pjp1) */                   -- changed for bug 5927368
30456                -- get structure level amounts from interim
30457           decode(pjp1.RBS_AGGR_LEVEL,
30458                  'L', 'DO_NOT_ROLLUP',
30459                       'WBS')                          STRUCT_TYPE,
30460           to_char(null)                               LINE_TYPE,
30461           prg.SUP_PROJECT_ID,
30462           prg.SUP_ID,
30463           prg.SUP_EMT_ID,
30464           prg.SUB_EMT_ID,
30465           prg.SUB_ROLLUP_ID,
30466           'PJP1'                                      LINE_SOURCE,
30467           decode(pjp1.PLAN_VERSION_ID,
30468                  -1, prg.SUB_ID,
30469                  -3, prg.SUB_ID,
30470                  -4, prg.SUB_ID,
30471                      decode(fin_plan.PLAN_VERSION_ID,
30472                             null, null,
30473                                   prg.SUB_ID))        SUB_ID,
30474           decode(pjp1.PLAN_VERSION_ID,
30475                  -1, 'N',
30476                  -3, 'N',
30477                  -4, 'N',
30478                      decode(fin_plan.PLAN_VERSION_ID,
30479                             null, null,
30480                                   'N'))               SUP_WP_FLAG,
30481           decode(pjp1.PLAN_VERSION_ID,
30482                  -1, pjp1.PLAN_VERSION_ID,
30483                  -3, pjp1.PLAN_VERSION_ID,
30484                  -4, pjp1.PLAN_VERSION_ID,
30485                      decode(fin_plan.PLAN_VERSION_ID,
30486                             null, null,
30487                                   fin_plan.PLAN_VERSION_ID)
30488                 )                                     SUB_PLAN_VERSION_ID,
30489           decode(pjp1.PLAN_VERSION_ID,
30490                  -1, pjp1.PLAN_TYPE_ID,
30491                  -3, pjp1.PLAN_TYPE_ID,
30492                  -4, pjp1.PLAN_TYPE_ID,
30493                      decode(fin_plan.PLAN_VERSION_ID,
30494                             null, null,
30495                                   pjp1.PLAN_TYPE_ID)) SUB_PLAN_TYPE_ID,
30496           pjp1.TIME_ID,
30497           pjp1.PERIOD_TYPE_ID,
30498           pjp1.CALENDAR_TYPE,
30499           pjp1.RBS_AGGR_LEVEL,
30500           pjp1.CURR_RECORD_TYPE_ID,
30501           pjp1.CURRENCY_CODE,
30502           pjp1.RBS_ELEMENT_ID,
30503           pjp1.RBS_VERSION_ID,
30504           decode(wbs_hdr.WP_FLAG,
30505                  'N', decode(wbs_hdr.PLAN_VERSION_ID,
30506                              -1, pjp1.PLAN_VERSION_ID,
30507                                  fin_plan.PLAN_VERSION_ID),
30508                       sup_wbs_hdr.PLAN_VERSION_ID)    PLAN_VERSION_ID,
30509           decode(wbs_hdr.WP_FLAG,
30510                  'N', pjp1.PLAN_TYPE_ID,
30511                       sup_wbs_hdr.PLAN_TYPE_ID)       PLAN_TYPE_ID,
30512           pjp1.PLAN_TYPE_CODE,
30513           decode(wbs_hdr.WP_FLAG
30514                    || '_' || sup_wbs_hdr.WP_FLAG
30515                    || '_' || sub_ver.STATUS_CODE
30516                    || '_' || sup_ver.STATUS_CODE,
30517                  'Y_Y__', to_number(null),
30518                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30519                  pjp1.RAW_COST)                       RAW_COST,
30520           decode(wbs_hdr.WP_FLAG
30521                    || '_' || sup_wbs_hdr.WP_FLAG
30522                    || '_' || sub_ver.STATUS_CODE
30523                    || '_' || sup_ver.STATUS_CODE,
30524                  'Y_Y__', to_number(null),
30525                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30526                  pjp1.BRDN_COST)                      BRDN_COST,
30527           decode(wbs_hdr.WP_FLAG
30528                    || '_' || sup_wbs_hdr.WP_FLAG
30529                    || '_' || sub_ver.STATUS_CODE
30530                    || '_' || sup_ver.STATUS_CODE,
30531                  'Y_Y__', to_number(null),
30532                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30533                  pjp1.REVENUE)                        REVENUE,
30534           decode(wbs_hdr.WP_FLAG
30535                    || '_' || sup_wbs_hdr.WP_FLAG
30536                    || '_' || sub_ver.STATUS_CODE
30537                    || '_' || sup_ver.STATUS_CODE,
30538                  'Y_Y__', to_number(null),
30539                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30540                  pjp1.BILL_RAW_COST)                  BILL_RAW_COST,
30541           decode(wbs_hdr.WP_FLAG
30542                    || '_' || sup_wbs_hdr.WP_FLAG
30543                    || '_' || sub_ver.STATUS_CODE
30544                    || '_' || sup_ver.STATUS_CODE,
30545                  'Y_Y__', to_number(null),
30546                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30547                  pjp1.BILL_BRDN_COST)                 BILL_BRDN_COST,
30548           decode(wbs_hdr.WP_FLAG
30549                    || '_' || sup_wbs_hdr.WP_FLAG
30550                    || '_' || sub_ver.STATUS_CODE
30551                    || '_' || sup_ver.STATUS_CODE,
30552                  'Y_Y__', to_number(null),
30553                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30554                  pjp1.BILL_LABOR_RAW_COST)            BILL_LABOR_RAW_COST,
30555           decode(wbs_hdr.WP_FLAG
30556                    || '_' || sup_wbs_hdr.WP_FLAG
30557                    || '_' || sub_ver.STATUS_CODE
30558                    || '_' || sup_ver.STATUS_CODE,
30559                  'Y_Y__', to_number(null),
30560                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30561                  pjp1.BILL_LABOR_BRDN_COST)           BILL_LABOR_BRDN_COST,
30562           decode(wbs_hdr.WP_FLAG
30563                    || '_' || sup_wbs_hdr.WP_FLAG
30564                    || '_' || sub_ver.STATUS_CODE
30565                    || '_' || sup_ver.STATUS_CODE,
30566                  'Y_Y__', to_number(null),
30567                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30568                  pjp1.BILL_LABOR_HRS)                 BILL_LABOR_HRS,
30569           decode(wbs_hdr.WP_FLAG
30570                    || '_' || sup_wbs_hdr.WP_FLAG
30571                    || '_' || sub_ver.STATUS_CODE
30572                    || '_' || sup_ver.STATUS_CODE,
30573                  'Y_Y__', to_number(null),
30574                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30575                  pjp1.EQUIPMENT_RAW_COST)             EQUIPMENT_RAW_COST,
30576           decode(wbs_hdr.WP_FLAG
30577                    || '_' || sup_wbs_hdr.WP_FLAG
30578                    || '_' || sub_ver.STATUS_CODE
30579                    || '_' || sup_ver.STATUS_CODE,
30580                  'Y_Y__', to_number(null),
30581                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30582                  pjp1.EQUIPMENT_BRDN_COST)            EQUIPMENT_BRDN_COST,
30583           decode(wbs_hdr.WP_FLAG
30584                    || '_' || sup_wbs_hdr.WP_FLAG
30585                    || '_' || sub_ver.STATUS_CODE
30586                    || '_' || sup_ver.STATUS_CODE,
30587                  'Y_Y__', to_number(null),
30588                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30589                  pjp1.CAPITALIZABLE_RAW_COST)         CAPITALIZABLE_RAW_COST,
30590           decode(wbs_hdr.WP_FLAG
30591                    || '_' || sup_wbs_hdr.WP_FLAG
30592                    || '_' || sub_ver.STATUS_CODE
30593                    || '_' || sup_ver.STATUS_CODE,
30594                  'Y_Y__', to_number(null),
30595                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30596                  pjp1.CAPITALIZABLE_BRDN_COST)        CAPITALIZABLE_BRDN_COST,
30597           decode(wbs_hdr.WP_FLAG
30598                    || '_' || sup_wbs_hdr.WP_FLAG
30599                    || '_' || sub_ver.STATUS_CODE
30600                    || '_' || sup_ver.STATUS_CODE,
30601                  'Y_Y__', to_number(null),
30602                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30603                  pjp1.LABOR_RAW_COST)                 LABOR_RAW_COST,
30604           decode(wbs_hdr.WP_FLAG
30605                    || '_' || sup_wbs_hdr.WP_FLAG
30606                    || '_' || sub_ver.STATUS_CODE
30607                    || '_' || sup_ver.STATUS_CODE,
30608                  'Y_Y__', to_number(null),
30609                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30610                  pjp1.LABOR_BRDN_COST)                LABOR_BRDN_COST,
30611           decode(wbs_hdr.WP_FLAG
30612                    || '_' || sup_wbs_hdr.WP_FLAG
30613                    || '_' || sub_ver.STATUS_CODE
30614                    || '_' || sup_ver.STATUS_CODE,
30615                  'Y_Y__', to_number(null),
30616                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30617                  pjp1.LABOR_HRS)                      LABOR_HRS,
30618           decode(wbs_hdr.WP_FLAG
30619                    || '_' || sup_wbs_hdr.WP_FLAG
30620                    || '_' || sub_ver.STATUS_CODE
30621                    || '_' || sup_ver.STATUS_CODE,
30622                  'Y_Y__', to_number(null),
30623                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30624                  pjp1.LABOR_REVENUE)                  LABOR_REVENUE,
30625           decode(wbs_hdr.WP_FLAG
30626                    || '_' || sup_wbs_hdr.WP_FLAG
30627                    || '_' || sub_ver.STATUS_CODE
30628                    || '_' || sup_ver.STATUS_CODE,
30629                  'Y_Y__', to_number(null),
30630                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30631                  pjp1.EQUIPMENT_HOURS)                EQUIPMENT_HOURS,
30632           decode(wbs_hdr.WP_FLAG
30633                    || '_' || sup_wbs_hdr.WP_FLAG
30634                    || '_' || sub_ver.STATUS_CODE
30635                    || '_' || sup_ver.STATUS_CODE,
30636                  'Y_Y__', to_number(null),
30637                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30638                  pjp1.BILLABLE_EQUIPMENT_HOURS)       BILLABLE_EQUIPMENT_HOURS,
30639           decode(wbs_hdr.WP_FLAG
30640                    || '_' || sup_wbs_hdr.WP_FLAG
30641                    || '_' || sub_ver.STATUS_CODE
30642                    || '_' || sup_ver.STATUS_CODE,
30643                  'Y_Y__', to_number(null),
30644                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30645                  pjp1.SUP_INV_COMMITTED_COST)         SUP_INV_COMMITTED_COST,
30646           decode(wbs_hdr.WP_FLAG
30647                    || '_' || sup_wbs_hdr.WP_FLAG
30648                    || '_' || sub_ver.STATUS_CODE
30649                    || '_' || sup_ver.STATUS_CODE,
30650                  'Y_Y__', to_number(null),
30651                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30652                  pjp1.PO_COMMITTED_COST)              PO_COMMITTED_COST,
30653           decode(wbs_hdr.WP_FLAG
30654                    || '_' || sup_wbs_hdr.WP_FLAG
30655                    || '_' || sub_ver.STATUS_CODE
30656                    || '_' || sup_ver.STATUS_CODE,
30657                  'Y_Y__', to_number(null),
30658                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30659                  pjp1.PR_COMMITTED_COST)              PR_COMMITTED_COST,
30660           decode(wbs_hdr.WP_FLAG
30661                    || '_' || sup_wbs_hdr.WP_FLAG
30662                    || '_' || sub_ver.STATUS_CODE
30663                    || '_' || sup_ver.STATUS_CODE,
30664                  'Y_Y__', to_number(null),
30665                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
30666                  pjp1.OTH_COMMITTED_COST)             OTH_COMMITTED_COST,
30667           decode(wbs_hdr.WP_FLAG
30668                    || '_' || sup_wbs_hdr.WP_FLAG
30669                    || '_' || sup_ver.STATUS_CODE,
30670                  'Y_Y_', to_number(null),
30671                  pjp1.ACT_LABOR_HRS)                  ACT_LABOR_HRS,
30672           decode(wbs_hdr.WP_FLAG
30673                    || '_' || sup_wbs_hdr.WP_FLAG
30674                    || '_' || sup_ver.STATUS_CODE,
30675                  'Y_Y_', to_number(null),
30676                  pjp1.ACT_EQUIP_HRS)                  ACT_EQUIP_HRS,
30677           decode(wbs_hdr.WP_FLAG
30678                    || '_' || sup_wbs_hdr.WP_FLAG
30679                    || '_' || sup_ver.STATUS_CODE,
30680                  'Y_Y_', to_number(null),
30681                  pjp1.ACT_LABOR_BRDN_COST)            ACT_LABOR_BRDN_COST,
30682           decode(wbs_hdr.WP_FLAG
30683                    || '_' || sup_wbs_hdr.WP_FLAG
30684                    || '_' || sup_ver.STATUS_CODE,
30685                  'Y_Y_', to_number(null),
30686                  pjp1.ACT_EQUIP_BRDN_COST)            ACT_EQUIP_BRDN_COST,
30687           decode(wbs_hdr.WP_FLAG
30688                    || '_' || sup_wbs_hdr.WP_FLAG
30689                    || '_' || sup_ver.STATUS_CODE,
30690                  'Y_Y_', to_number(null),
30691                  pjp1.ACT_BRDN_COST)                  ACT_BRDN_COST,
30692           decode(wbs_hdr.WP_FLAG
30693                    || '_' || sup_wbs_hdr.WP_FLAG
30694                    || '_' || sup_ver.STATUS_CODE,
30695                  'Y_Y_', to_number(null),
30696                  pjp1.ACT_RAW_COST)                   ACT_RAW_COST,
30697           decode(wbs_hdr.WP_FLAG
30698                    || '_' || sup_wbs_hdr.WP_FLAG
30699                    || '_' || sup_ver.STATUS_CODE,
30700                  'Y_Y_', to_number(null),
30701                  pjp1.ACT_REVENUE)                    ACT_REVENUE,
30702           decode(wbs_hdr.WP_FLAG
30703                    || '_' || sup_wbs_hdr.WP_FLAG
30704                    || '_' || sup_ver.STATUS_CODE,
30705                  'Y_Y_', to_number(null),
30706                  pjp1.ACT_LABOR_RAW_COST)             ACT_LABOR_RAW_COST,
30707           decode(wbs_hdr.WP_FLAG
30708                    || '_' || sup_wbs_hdr.WP_FLAG
30709                    || '_' || sup_ver.STATUS_CODE,
30710                  'Y_Y_', to_number(null),
30711                  pjp1.ACT_EQUIP_RAW_COST)             ACT_EQUIP_RAW_COST,
30712           decode(wbs_hdr.WP_FLAG
30713                    || '_' || sup_wbs_hdr.WP_FLAG
30714                    || '_' || sup_ver.STATUS_CODE,
30715                  'Y_Y_', to_number(null),
30716                  pjp1.ETC_LABOR_HRS)                  ETC_LABOR_HRS,
30717           decode(wbs_hdr.WP_FLAG
30718                    || '_' || sup_wbs_hdr.WP_FLAG
30719                    || '_' || sup_ver.STATUS_CODE,
30720                  'Y_Y_', to_number(null),
30721                  pjp1.ETC_EQUIP_HRS)                  ETC_EQUIP_HRS,
30722           decode(wbs_hdr.WP_FLAG
30723                    || '_' || sup_wbs_hdr.WP_FLAG
30724                    || '_' || sup_ver.STATUS_CODE,
30725                  'Y_Y_', to_number(null),
30726                  pjp1.ETC_LABOR_BRDN_COST)            ETC_LABOR_BRDN_COST,
30727           decode(wbs_hdr.WP_FLAG
30728                    || '_' || sup_wbs_hdr.WP_FLAG
30729                    || '_' || sup_ver.STATUS_CODE,
30730                  'Y_Y_', to_number(null),
30731                  pjp1.ETC_EQUIP_BRDN_COST)            ETC_EQUIP_BRDN_COST,
30732           decode(wbs_hdr.WP_FLAG
30733                    || '_' || sup_wbs_hdr.WP_FLAG
30734                    || '_' || sup_ver.STATUS_CODE,
30735                  'Y_Y_', to_number(null),
30736                  pjp1.ETC_BRDN_COST)                  ETC_BRDN_COST,
30737           decode(wbs_hdr.WP_FLAG
30738                    || '_' || sup_wbs_hdr.WP_FLAG
30739                    || '_' || sup_ver.STATUS_CODE,
30740                  'Y_Y_', to_number(null),
30741                  pjp1.ETC_RAW_COST)                   ETC_RAW_COST,
30742           decode(wbs_hdr.WP_FLAG
30743                    || '_' || sup_wbs_hdr.WP_FLAG
30744                    || '_' || sup_ver.STATUS_CODE,
30745                  'Y_Y_', to_number(null),
30746                  pjp1.ETC_LABOR_RAW_COST)             ETC_LABOR_RAW_COST,
30747           decode(wbs_hdr.WP_FLAG
30748                    || '_' || sup_wbs_hdr.WP_FLAG
30749                    || '_' || sup_ver.STATUS_CODE,
30750                  'Y_Y_', to_number(null),
30751                  pjp1.ETC_EQUIP_RAW_COST)             ETC_EQUIP_RAW_COST,
30752           pjp1.CUSTOM1,
30753           pjp1.CUSTOM2,
30754           pjp1.CUSTOM3,
30755           pjp1.CUSTOM4,
30756           pjp1.CUSTOM5,
30757           pjp1.CUSTOM6,
30758           pjp1.CUSTOM7,
30759           pjp1.CUSTOM8,
30760           pjp1.CUSTOM9,
30761           pjp1.CUSTOM10,
30762           pjp1.CUSTOM11,
30763           pjp1.CUSTOM12,
30764           pjp1.CUSTOM13,
30765           pjp1.CUSTOM14,
30766           pjp1.CUSTOM15
30767         from
30768           PJI_FP_AGGR_PJP1           pjp1,
30769           PJI_PJP_WBS_HEADER         wbs_hdr,
30770           PA_PROJ_ELEMENTS           prj_emt,
30771           PA_XBS_DENORM              prg,
30772           PJI_XBS_DENORM_DELTA       prg_delta,
30773           PJI_PJP_WBS_HEADER         sup_wbs_hdr,
30774           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
30775           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
30776           (
30777             select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID
30778             from DUAL union all
30779             select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID
30780             from DUAL union all
30781             select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID
30782             from DUAL union all
30783             select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID
30784             from DUAL
30785           ) fin_plan
30786         where
30787           prg.STRUCT_TYPE            =  'PRG'                           and
30788           prg.SUP_LEVEL              =  l_level                         and
30789           nvl(prg.SUB_ROLLUP_ID,
30790               prg.SUP_EMT_ID)        <> prg.SUP_EMT_ID                  and
30791           p_worker_id                =  prg_delta.WORKER_ID         (+) and
30792           prg.STRUCT_TYPE            =  prg_delta.STRUCT_TYPE       (+) and
30793           prg.SUP_PROJECT_ID         =  prg_delta.SUP_PROJECT_ID    (+) and
30794           prg.SUP_LEVEL              =  prg_delta.SUP_LEVEL         (+) and
30795           prg.SUP_ID                 =  prg_delta.SUP_ID            (+) and
30796           prg.SUB_LEVEL              =  prg_delta.SUB_LEVEL         (+) and
30797           prg.SUB_ID                 =  prg_delta.SUB_ID            (+) and
30798           prg.RELATIONSHIP_TYPE      =  prg_delta.RELATIONSHIP_TYPE (+) and
30799           1                          =  prg_delta.SIGN              (+) and
30800           (prg_delta.SUP_PROJECT_ID is not null or
30801            (prg_delta.SUP_PROJECT_ID is null and
30802             pjp1.RECORD_TYPE = 'P'))                                    and
30803           pjp1.WORKER_ID             =  p_worker_id                     and
30804           pjp1.PRG_LEVEL             in (0, prg.SUB_LEVEL)              and
30805           pjp1.PROJECT_ID            =  prj_emt.PROJECT_ID              and
30806           (((pjp1.RBS_AGGR_LEVEL,
30807              pjp1.WBS_ROLLUP_FLAG,
30808              pjp1.PRG_ROLLUP_FLAG) in (('T', 'Y', 'Y'),
30809                                        ('T', 'Y', 'N'),
30810                                        ('T', 'N', 'Y'),
30811                                        ('T', 'N', 'N'),
30812                                        ('L', 'N', 'N')) and
30813              pjp1.PROJECT_ELEMENT_ID = prg.SUB_EMT_ID) or
30814            ((pjp1.RBS_AGGR_LEVEL,
30815              pjp1.WBS_ROLLUP_FLAG,
30816              pjp1.PRG_ROLLUP_FLAG) in (('L', 'N', 'Y'),
30817                                        ('L', 'N', 'N')) and
30818              pjp1.PROJECT_ELEMENT_ID <> prg.SUB_EMT_ID))                and
30819           decode(pjp1.PLAN_VERSION_ID,
30820                  -1, 'LF',
30821                  -2, 'LF',
30822                  -3, 'LF',
30823                  -4, 'LF',
30824                      decode(wbs_hdr.WP_FLAG,
30825                             'N', 'LF',
30826                               'LW')) =  prg.RELATIONSHIP_TYPE           and
30827           prg.STRUCT_VERSION_ID      is null                            and
30828           prj_emt.OBJECT_TYPE        =  'PA_STRUCTURES'                 and
30829           prj_emt.PROJ_ELEMENT_ID    =  prg.SUB_EMT_ID                  and
30830           wbs_hdr.PROJECT_ID         =  prj_emt.PROJECT_ID              and
30831           wbs_hdr.WBS_VERSION_ID     =  prg.SUB_ID                      and
30832           wbs_hdr.PROJECT_ID         =  pjp1.PROJECT_ID                 and
30833           wbs_hdr.PLAN_VERSION_ID    =  pjp1.PLAN_VERSION_ID            and
30834           wbs_hdr.PLAN_TYPE_CODE     =  pjp1.PLAN_TYPE_CODE             and
30835           decode(pjp1.PLAN_VERSION_ID,
30836                  -3, pjp1.PLAN_TYPE_ID,
30837                  -4, pjp1.PLAN_TYPE_ID,
30838                      -1)             =  decode(pjp1.PLAN_VERSION_ID,
30839                                                -3, wbs_hdr.PLAN_TYPE_ID,
30840                                                -4, wbs_hdr.PLAN_TYPE_ID,
30841                                                    -1)                  and
30842           decode(wbs_hdr.WP_FLAG,
30843                  'N', decode(pjp1.PLAN_VERSION_ID,
30844                              -1, 'Y',
30845                              -2, 'Y',
30846                              -3, 'Y',
30847                              -4, 'Y',
30848                                  decode(pjp1.RBS_AGGR_LEVEL
30849                                           || '_' || wbs_hdr.CB_FLAG
30850                                           || '_' || wbs_hdr.CO_FLAG,
30851                                         'L_Y_Y', 'Y',
30852                                         'L_N_Y', 'Y',
30853                                         'L_Y_N', 'Y',
30854                                                  'N')),
30855                       'Y')           =  'Y'                             and
30856           prg.SUP_PROJECT_ID         =  sup_wbs_hdr.PROJECT_ID      (+) and
30857           prg.SUP_ID                 =  sup_wbs_hdr.WBS_VERSION_ID  (+) and
30858           'Y'                        =  sup_wbs_hdr.WP_FLAG         (+) and
30859           wbs_hdr.PROJECT_ID         =  sub_ver.PROJECT_ID          (+) and
30860           wbs_hdr.WBS_VERSION_ID     =  sub_ver.ELEMENT_VERSION_ID  (+) and
30861           'STRUCTURE_PUBLISHED'      =  sub_ver.STATUS_CODE         (+) and
30862           sup_wbs_hdr.PROJECT_ID     =  sup_ver.PROJECT_ID          (+) and
30863           sup_wbs_hdr.WBS_VERSION_ID =  sup_ver.ELEMENT_VERSION_ID  (+) and
30864           'STRUCTURE_PUBLISHED'      =  sup_ver.STATUS_CODE         (+) and
30865           wbs_hdr.CB_FLAG            =  fin_plan.CB                 (+) and
30866           wbs_hdr.CO_FLAG            =  fin_plan.CO                 (+)
30867         )                          pjp,
30868         PJI_PJP_PROJ_BATCH_MAP     map,
30869         PA_PROJ_WORKPLAN_ATTR      sup_wpa,
30870         PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
30871         PA_XBS_DENORM              wbs,
30872         (
30873           select 1     WBS_SUP_LEVEL,
30874                  'PRJ' INVERT_ID
30875           from   DUAL
30876           union all
30877           select 1     WBS_SUP_LEVEL,
30878                  'WBS' INVERT_ID
30879           from   DUAL
30880         ) top_slice
30881       where
30882         map.WORKER_ID           = p_worker_id                         and
30883         map.PROJECT_ID          = pjp.SUP_PROJECT_ID                  and
30884         pjp.SUP_EMT_ID          = sup_wpa.PROJ_ELEMENT_ID             and
30885         pjp.SUP_PROJECT_ID      = sup_fin_ver.PROJECT_ID          (+) and
30886         pjp.SUP_ID              = sup_fin_ver.ELEMENT_VERSION_ID  (+) and
30887         'STRUCTURE_WORKING'     = sup_fin_ver.STATUS_CODE         (+) and
30888         (pjp.SUP_WP_FLAG is null or
30889          (pjp.SUP_WP_FLAG is not null and
30890           (sup_fin_ver.PROJECT_ID is not null or
30891            sup_wpa.WP_ENABLE_VERSION_FLAG = 'N')))                    and
30892         'WBS'                   = wbs.STRUCT_TYPE                 (+) and
30893         pjp.STRUCT_TYPE         = wbs.STRUCT_TYPE                 (+) and
30894         pjp.SUP_PROJECT_ID      = wbs.SUP_PROJECT_ID              (+) and
30895         pjp.SUP_ID              = wbs.STRUCT_VERSION_ID           (+) and
30896         pjp.SUB_ROLLUP_ID       = wbs.SUB_EMT_ID                  (+) and
30897         wbs.SUP_LEVEL           = top_slice.WBS_SUP_LEVEL         (+)
30898       group by
30899         pjp.LINE_TYPE,
30900         pjp.SUP_PROJECT_ID,
30901         map.PROJECT_ORG_ID,
30902         map.PROJECT_ORGANIZATION_ID,
30903         decode(pjp.STRUCT_TYPE,
30904                'DO_NOT_ROLLUP', pjp.SUB_ROLLUP_ID,
30905                                 decode(top_slice.INVERT_ID,
30906                                        'PRJ', pjp.SUP_EMT_ID, wbs.SUP_EMT_ID)
30907               ),
30908         pjp.TIME_ID,
30909         pjp.PERIOD_TYPE_ID,
30910         pjp.CALENDAR_TYPE,
30911         pjp.RBS_AGGR_LEVEL,
30912         decode(pjp.STRUCT_TYPE,
30913                'DO_NOT_ROLLUP', 'N',
30914                                 decode(top_slice.INVERT_ID,
30915                                        'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
30916                                                           wbs.SUP_EMT_ID,
30917                                                           'N', 'Y'))
30918               ),
30919         pjp.CURR_RECORD_TYPE_ID,
30920         pjp.CURRENCY_CODE,
30921         pjp.RBS_ELEMENT_ID,
30922         pjp.RBS_VERSION_ID,
30923         pjp.PLAN_VERSION_ID,
30924         pjp.PLAN_TYPE_ID,
30925         pjp.PLAN_TYPE_CODE;
30926     elsif (p_worker_id =5) then
30927       -- Query for Partition 5
30928 
30929         insert /*+ parallel(PJI_FP_AGGR_PJP1) */
30930                    into PJI_FP_AGGR_PJP1 partition(P5)
30931       (
30932         WORKER_ID,
30933         RECORD_TYPE,
30934         PRG_LEVEL,
30935         LINE_TYPE,
30936         PROJECT_ID,
30937         PROJECT_ORG_ID,
30938         PROJECT_ORGANIZATION_ID,
30939         PROJECT_ELEMENT_ID,
30940         TIME_ID,
30941         PERIOD_TYPE_ID,
30942         CALENDAR_TYPE,
30943         RBS_AGGR_LEVEL,
30944         WBS_ROLLUP_FLAG,
30945         PRG_ROLLUP_FLAG,
30946         CURR_RECORD_TYPE_ID,
30947         CURRENCY_CODE,
30948         RBS_ELEMENT_ID,
30949         RBS_VERSION_ID,
30950         PLAN_VERSION_ID,
30951         PLAN_TYPE_ID,
30952         PLAN_TYPE_CODE,
30953         RAW_COST,
30954         BRDN_COST,
30955         REVENUE,
30956         BILL_RAW_COST,
30957         BILL_BRDN_COST,
30958         BILL_LABOR_RAW_COST,
30959         BILL_LABOR_BRDN_COST,
30960         BILL_LABOR_HRS,
30961         EQUIPMENT_RAW_COST,
30962         EQUIPMENT_BRDN_COST,
30963         CAPITALIZABLE_RAW_COST,
30964         CAPITALIZABLE_BRDN_COST,
30965         LABOR_RAW_COST,
30966         LABOR_BRDN_COST,
30967         LABOR_HRS,
30968         LABOR_REVENUE,
30969         EQUIPMENT_HOURS,
30970         BILLABLE_EQUIPMENT_HOURS,
30971         SUP_INV_COMMITTED_COST,
30972         PO_COMMITTED_COST,
30973         PR_COMMITTED_COST,
30974         OTH_COMMITTED_COST,
30975         ACT_LABOR_HRS,
30976         ACT_EQUIP_HRS,
30977         ACT_LABOR_BRDN_COST,
30978         ACT_EQUIP_BRDN_COST,
30979         ACT_BRDN_COST,
30980         ACT_RAW_COST,
30981         ACT_REVENUE,
30982         ACT_LABOR_RAW_COST,
30983         ACT_EQUIP_RAW_COST,
30984         ETC_LABOR_HRS,
30985         ETC_EQUIP_HRS,
30986         ETC_LABOR_BRDN_COST,
30987         ETC_EQUIP_BRDN_COST,
30988         ETC_BRDN_COST,
30989         ETC_RAW_COST,
30990         ETC_LABOR_RAW_COST,
30991         ETC_EQUIP_RAW_COST,
30992         CUSTOM1,
30993         CUSTOM2,
30994         CUSTOM3,
30995         CUSTOM4,
30996         CUSTOM5,
30997         CUSTOM6,
30998         CUSTOM7,
30999         CUSTOM8,
31000         CUSTOM9,
31001         CUSTOM10,
31002         CUSTOM11,
31003         CUSTOM12,
31004         CUSTOM13,
31005         CUSTOM14,
31006         CUSTOM15
31007       )
31008       select /*+ no_merge(pjp) */
31009         p_worker_id                                   WORKER_ID,
31010         'P'                                           RECORD_TYPE,
31011         l_level                                       PRG_LEVEL,
31012         pjp.LINE_TYPE,
31013         pjp.SUP_PROJECT_ID                            PROJECT_ID,
31014         map.PROJECT_ORG_ID,
31015         map.PROJECT_ORGANIZATION_ID,
31016         decode(pjp.STRUCT_TYPE,
31017                'DO_NOT_ROLLUP', pjp.SUB_ROLLUP_ID,
31018                                 decode(top_slice.INVERT_ID,
31019                                        'PRJ', pjp.SUP_EMT_ID, wbs.SUP_EMT_ID)
31020               )                                       PROJECT_ELEMENT_ID,
31021         pjp.TIME_ID,
31022         pjp.PERIOD_TYPE_ID,
31023         pjp.CALENDAR_TYPE,
31024         pjp.RBS_AGGR_LEVEL,
31025         decode(pjp.STRUCT_TYPE,
31026                'DO_NOT_ROLLUP', 'N',
31027                                 decode(top_slice.INVERT_ID,
31028                                        'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
31029                                                           wbs.SUP_EMT_ID,
31030                                                           'N', 'Y'))
31031               )                                       WBS_ROLLUP_FLAG,
31032         'Y'                                           PRG_ROLLUP_FLAG,
31033         pjp.CURR_RECORD_TYPE_ID,
31034         pjp.CURRENCY_CODE,
31035         pjp.RBS_ELEMENT_ID,
31036         pjp.RBS_VERSION_ID,
31037         pjp.PLAN_VERSION_ID,
31038         pjp.PLAN_TYPE_ID,
31039         pjp.PLAN_TYPE_CODE,
31040         sum(pjp.RAW_COST)                             RAW_COST,
31041         sum(pjp.BRDN_COST)                            BRDN_COST,
31042         sum(pjp.REVENUE)                              REVENUE,
31043         sum(pjp.BILL_RAW_COST)                        BILL_RAW_COST,
31044         sum(pjp.BILL_BRDN_COST)                       BILL_BRDN_COST,
31045         sum(pjp.BILL_LABOR_RAW_COST)                  BILL_LABOR_RAW_COST,
31046         sum(pjp.BILL_LABOR_BRDN_COST)                 BILL_LABOR_BRDN_COST,
31047         sum(pjp.BILL_LABOR_HRS)                       BILL_LABOR_HRS,
31048         sum(pjp.EQUIPMENT_RAW_COST)                   EQUIPMENT_RAW_COST,
31049         sum(pjp.EQUIPMENT_BRDN_COST)                  EQUIPMENT_BRDN_COST,
31050         sum(pjp.CAPITALIZABLE_RAW_COST)               CAPITALIZABLE_RAW_COST,
31051         sum(pjp.CAPITALIZABLE_BRDN_COST)              CAPITALIZABLE_BRDN_COST,
31052         sum(pjp.LABOR_RAW_COST)                       LABOR_RAW_COST,
31053         sum(pjp.LABOR_BRDN_COST)                      LABOR_BRDN_COST,
31054         sum(pjp.LABOR_HRS)                            LABOR_HRS,
31055         sum(pjp.LABOR_REVENUE)                        LABOR_REVENUE,
31056         sum(pjp.EQUIPMENT_HOURS)                      EQUIPMENT_HOURS,
31057         sum(pjp.BILLABLE_EQUIPMENT_HOURS)             BILLABLE_EQUIPMENT_HOURS,
31058         sum(pjp.SUP_INV_COMMITTED_COST)               SUP_INV_COMMITTED_COST,
31059         sum(pjp.PO_COMMITTED_COST)                    PO_COMMITTED_COST,
31060         sum(pjp.PR_COMMITTED_COST)                    PR_COMMITTED_COST,
31061         sum(pjp.OTH_COMMITTED_COST)                   OTH_COMMITTED_COST,
31062         sum(pjp.ACT_LABOR_HRS)                        ACT_LABOR_HRS,
31063         sum(pjp.ACT_EQUIP_HRS)                        ACT_EQUIP_HRS,
31064         sum(pjp.ACT_LABOR_BRDN_COST)                  ACT_LABOR_BRDN_COST,
31065         sum(pjp.ACT_EQUIP_BRDN_COST)                  ACT_EQUIP_BRDN_COST,
31066         sum(pjp.ACT_BRDN_COST)                        ACT_BRDN_COST,
31067         sum(pjp.ACT_RAW_COST)                         ACT_RAW_COST,
31068         sum(pjp.ACT_REVENUE)                          ACT_REVENUE,
31069         sum(pjp.ACT_LABOR_RAW_COST)                   ACT_LABOR_RAW_COST,
31070         sum(pjp.ACT_EQUIP_RAW_COST)                   ACT_EQUIP_RAW_COST,
31071         sum(pjp.ETC_LABOR_HRS)                        ETC_LABOR_HRS,
31072         sum(pjp.ETC_EQUIP_HRS)                        ETC_EQUIP_HRS,
31073         sum(pjp.ETC_LABOR_BRDN_COST)                  ETC_LABOR_BRDN_COST,
31074         sum(pjp.ETC_EQUIP_BRDN_COST)                  ETC_EQUIP_BRDN_COST,
31075         sum(pjp.ETC_BRDN_COST)                        ETC_BRDN_COST,
31076         sum(pjp.ETC_RAW_COST)                         ETC_RAW_COST,
31077         sum(pjp.ETC_LABOR_RAW_COST)                   ETC_LABOR_RAW_COST,
31078         sum(pjp.ETC_EQUIP_RAW_COST)                   ETC_EQUIP_RAW_COST,
31079         sum(pjp.CUSTOM1)                              CUSTOM1,
31080         sum(pjp.CUSTOM2)                              CUSTOM2,
31081         sum(pjp.CUSTOM3)                              CUSTOM3,
31082         sum(pjp.CUSTOM4)                              CUSTOM4,
31083         sum(pjp.CUSTOM5)                              CUSTOM5,
31084         sum(pjp.CUSTOM6)                              CUSTOM6,
31085         sum(pjp.CUSTOM7)                              CUSTOM7,
31086         sum(pjp.CUSTOM8)                              CUSTOM8,
31087         sum(pjp.CUSTOM9)                              CUSTOM9,
31088         sum(pjp.CUSTOM10)                             CUSTOM10,
31089         sum(pjp.CUSTOM11)                             CUSTOM11,
31090         sum(pjp.CUSTOM12)                             CUSTOM12,
31091         sum(pjp.CUSTOM13)                             CUSTOM13,
31092         sum(pjp.CUSTOM14)                             CUSTOM14,
31093         sum(pjp.CUSTOM15)                             CUSTOM15
31094       from
31095         (
31096         select /*+ ordered index(fpr PJI_FP_XBS_ACCUM_F_N1) */
31097                -- get structure level amounts from Reporting Lines
31098           decode(fpr.RBS_AGGR_LEVEL,
31099                  'L', 'DO_NOT_ROLLUP',
31100                       'WBS')                          STRUCT_TYPE,
31101           to_char(null)                               LINE_TYPE,
31102           prg.SUP_PROJECT_ID,
31103           prg.SUP_ID,
31104           prg.SUP_EMT_ID,
31105           prg.SUB_EMT_ID,
31106           prg.SUB_ROLLUP_ID,
31107           'FPR'                                       LINE_SOURCE,
31108           decode(fpr.PLAN_VERSION_ID,
31109                  -1, prg.SUB_ID,
31110                  -3, prg.SUB_ID,
31111                  -4, prg.SUB_ID,
31112                      decode(fin_plan.PLAN_VERSION_ID,
31113                             null, null,
31114                                   prg.SUB_ID))        SUB_ID,
31115           decode(fpr.PLAN_VERSION_ID,
31116                  -1, 'N',
31117                  -3, 'N',
31118                  -4, 'N',
31119                      decode(fin_plan.PLAN_VERSION_ID,
31120                             null, null,
31121                                   'N'))               SUP_WP_FLAG,
31122           decode(fpr.PLAN_VERSION_ID,
31123                  -1, fpr.PLAN_VERSION_ID,
31124                  -3, fpr.PLAN_VERSION_ID,
31125                  -4, fpr.PLAN_VERSION_ID,
31126                      decode(fin_plan.PLAN_VERSION_ID,
31127                             null, null,
31128                                   fin_plan.PLAN_VERSION_ID)
31129                 )                                     SUB_PLAN_VERSION_ID,
31130           decode(fpr.PLAN_VERSION_ID,
31131                  -1, fpr.PLAN_TYPE_ID,
31132                  -3, fpr.PLAN_TYPE_ID,
31133                  -4, fpr.PLAN_TYPE_ID,
31134                      decode(fin_plan.PLAN_VERSION_ID,
31135                             null, null,
31136                                   fpr.PLAN_TYPE_ID))  SUB_PLAN_TYPE_ID,
31137           fpr.TIME_ID,
31138           fpr.PERIOD_TYPE_ID,
31139           fpr.CALENDAR_TYPE,
31140           fpr.RBS_AGGR_LEVEL,
31141           fpr.CURR_RECORD_TYPE_ID,
31142           fpr.CURRENCY_CODE,
31143           fpr.RBS_ELEMENT_ID,
31144           fpr.RBS_VERSION_ID,
31145           decode(wbs_hdr.WP_FLAG,
31146                  'N', decode(wbs_hdr.PLAN_VERSION_ID,
31147                              -1, fpr.PLAN_VERSION_ID,
31148                                  fin_plan.PLAN_VERSION_ID),
31149                       sup_wbs_hdr.PLAN_VERSION_ID)    PLAN_VERSION_ID,
31150           decode(wbs_hdr.WP_FLAG,
31151                  'N', fpr.PLAN_TYPE_ID,
31152                       sup_wbs_hdr.PLAN_TYPE_ID)       PLAN_TYPE_ID,
31153           fpr.PLAN_TYPE_CODE,
31154           decode(wbs_hdr.WP_FLAG
31155                    || '_' || sup_wbs_hdr.WP_FLAG
31156                    || '_' || sub_ver.STATUS_CODE
31157                    || '_' || sup_ver.STATUS_CODE,
31158                  'Y_Y__', to_number(null),
31159                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31160                  prg.SIGN * fpr.RAW_COST)             RAW_COST,
31161           decode(wbs_hdr.WP_FLAG
31162                    || '_' || sup_wbs_hdr.WP_FLAG
31163                    || '_' || sub_ver.STATUS_CODE
31164                    || '_' || sup_ver.STATUS_CODE,
31165                  'Y_Y__', to_number(null),
31166                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31167                  prg.SIGN * fpr.BRDN_COST)            BRDN_COST,
31168           decode(wbs_hdr.WP_FLAG
31169                    || '_' || sup_wbs_hdr.WP_FLAG
31170                    || '_' || sub_ver.STATUS_CODE
31171                    || '_' || sup_ver.STATUS_CODE,
31172                  'Y_Y__', to_number(null),
31173                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31174                  prg.SIGN * fpr.REVENUE)              REVENUE,
31175           decode(wbs_hdr.WP_FLAG
31176                    || '_' || sup_wbs_hdr.WP_FLAG
31177                    || '_' || sub_ver.STATUS_CODE
31178                    || '_' || sup_ver.STATUS_CODE,
31179                  'Y_Y__', to_number(null),
31180                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31181                  prg.SIGN * fpr.BILL_RAW_COST)        BILL_RAW_COST,
31182           decode(wbs_hdr.WP_FLAG
31183                    || '_' || sup_wbs_hdr.WP_FLAG
31184                    || '_' || sub_ver.STATUS_CODE
31185                    || '_' || sup_ver.STATUS_CODE,
31186                  'Y_Y__', to_number(null),
31187                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31188                  prg.SIGN * fpr.BILL_BRDN_COST)       BILL_BRDN_COST,
31189           decode(wbs_hdr.WP_FLAG
31190                    || '_' || sup_wbs_hdr.WP_FLAG
31191                    || '_' || sub_ver.STATUS_CODE
31192                    || '_' || sup_ver.STATUS_CODE,
31193                  'Y_Y__', to_number(null),
31194                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31195                  prg.SIGN * fpr.BILL_LABOR_RAW_COST)  BILL_LABOR_RAW_COST,
31196           decode(wbs_hdr.WP_FLAG
31197                    || '_' || sup_wbs_hdr.WP_FLAG
31198                    || '_' || sub_ver.STATUS_CODE
31199                    || '_' || sup_ver.STATUS_CODE,
31200                  'Y_Y__', to_number(null),
31201                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31202                  prg.SIGN * fpr.BILL_LABOR_BRDN_COST) BILL_LABOR_BRDN_COST,
31203           decode(wbs_hdr.WP_FLAG
31204                    || '_' || sup_wbs_hdr.WP_FLAG
31205                    || '_' || sub_ver.STATUS_CODE
31206                    || '_' || sup_ver.STATUS_CODE,
31207                  'Y_Y__', to_number(null),
31208                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31209                  prg.SIGN * fpr.BILL_LABOR_HRS)       BILL_LABOR_HRS,
31210           decode(wbs_hdr.WP_FLAG
31211                    || '_' || sup_wbs_hdr.WP_FLAG
31212                    || '_' || sub_ver.STATUS_CODE
31213                    || '_' || sup_ver.STATUS_CODE,
31214                  'Y_Y__', to_number(null),
31215                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31216                  prg.SIGN * fpr.EQUIPMENT_RAW_COST)   EQUIPMENT_RAW_COST,
31217           decode(wbs_hdr.WP_FLAG
31218                    || '_' || sup_wbs_hdr.WP_FLAG
31219                    || '_' || sub_ver.STATUS_CODE
31220                    || '_' || sup_ver.STATUS_CODE,
31221                  'Y_Y__', to_number(null),
31222                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31223                  prg.SIGN * fpr.EQUIPMENT_BRDN_COST)  EQUIPMENT_BRDN_COST,
31224           decode(wbs_hdr.WP_FLAG
31225                    || '_' || sup_wbs_hdr.WP_FLAG
31226                    || '_' || sub_ver.STATUS_CODE
31227                    || '_' || sup_ver.STATUS_CODE,
31228                  'Y_Y__', to_number(null),
31229                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31230                  prg.SIGN * fpr.CAPITALIZABLE_RAW_COST)
31231                                                       CAPITALIZABLE_RAW_COST,
31232           decode(wbs_hdr.WP_FLAG
31233                    || '_' || sup_wbs_hdr.WP_FLAG
31234                    || '_' || sub_ver.STATUS_CODE
31235                    || '_' || sup_ver.STATUS_CODE,
31236                  'Y_Y__', to_number(null),
31237                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31238                  prg.SIGN * fpr.CAPITALIZABLE_BRDN_COST)
31239                                                       CAPITALIZABLE_BRDN_COST,
31240           decode(wbs_hdr.WP_FLAG
31241                    || '_' || sup_wbs_hdr.WP_FLAG
31242                    || '_' || sub_ver.STATUS_CODE
31243                    || '_' || sup_ver.STATUS_CODE,
31244                  'Y_Y__', to_number(null),
31245                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31246                  prg.SIGN * fpr.LABOR_RAW_COST)       LABOR_RAW_COST,
31247           decode(wbs_hdr.WP_FLAG
31248                    || '_' || sup_wbs_hdr.WP_FLAG
31249                    || '_' || sub_ver.STATUS_CODE
31250                    || '_' || sup_ver.STATUS_CODE,
31251                  'Y_Y__', to_number(null),
31252                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31253                  prg.SIGN * fpr.LABOR_BRDN_COST)      LABOR_BRDN_COST,
31254           decode(wbs_hdr.WP_FLAG
31255                    || '_' || sup_wbs_hdr.WP_FLAG
31256                    || '_' || sub_ver.STATUS_CODE
31257                    || '_' || sup_ver.STATUS_CODE,
31258                  'Y_Y__', to_number(null),
31259                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31260                  prg.SIGN * fpr.LABOR_HRS)            LABOR_HRS,
31261           decode(wbs_hdr.WP_FLAG
31262                    || '_' || sup_wbs_hdr.WP_FLAG
31263                    || '_' || sub_ver.STATUS_CODE
31264                    || '_' || sup_ver.STATUS_CODE,
31265                  'Y_Y__', to_number(null),
31266                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31267                  prg.SIGN * fpr.LABOR_REVENUE)        LABOR_REVENUE,
31268           decode(wbs_hdr.WP_FLAG
31269                    || '_' || sup_wbs_hdr.WP_FLAG
31270                    || '_' || sub_ver.STATUS_CODE
31271                    || '_' || sup_ver.STATUS_CODE,
31272                  'Y_Y__', to_number(null),
31273                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31274                  prg.SIGN * fpr.EQUIPMENT_HOURS)      EQUIPMENT_HOURS,
31275           decode(wbs_hdr.WP_FLAG
31276                    || '_' || sup_wbs_hdr.WP_FLAG
31277                    || '_' || sub_ver.STATUS_CODE
31278                    || '_' || sup_ver.STATUS_CODE,
31279                  'Y_Y__', to_number(null),
31280                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31281                  prg.SIGN * fpr.BILLABLE_EQUIPMENT_HOURS)
31282                                                       BILLABLE_EQUIPMENT_HOURS,
31283           decode(wbs_hdr.WP_FLAG
31284                    || '_' || sup_wbs_hdr.WP_FLAG
31285                    || '_' || sub_ver.STATUS_CODE
31286                    || '_' || sup_ver.STATUS_CODE,
31287                  'Y_Y__', to_number(null),
31288                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31289                  prg.SIGN * fpr.SUP_INV_COMMITTED_COST)
31290                                                       SUP_INV_COMMITTED_COST,
31291           decode(wbs_hdr.WP_FLAG
31292                    || '_' || sup_wbs_hdr.WP_FLAG
31293                    || '_' || sub_ver.STATUS_CODE
31294                    || '_' || sup_ver.STATUS_CODE,
31295                  'Y_Y__', to_number(null),
31296                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31297                  prg.SIGN * fpr.PO_COMMITTED_COST)    PO_COMMITTED_COST,
31298           decode(wbs_hdr.WP_FLAG
31299                    || '_' || sup_wbs_hdr.WP_FLAG
31300                    || '_' || sub_ver.STATUS_CODE
31301                    || '_' || sup_ver.STATUS_CODE,
31302                  'Y_Y__', to_number(null),
31303                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31304                  prg.SIGN * fpr.PR_COMMITTED_COST)    PR_COMMITTED_COST,
31305           decode(wbs_hdr.WP_FLAG
31306                    || '_' || sup_wbs_hdr.WP_FLAG
31307                    || '_' || sub_ver.STATUS_CODE
31308                    || '_' || sup_ver.STATUS_CODE,
31309                  'Y_Y__', to_number(null),
31310                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31311                  prg.SIGN * fpr.OTH_COMMITTED_COST)   OTH_COMMITTED_COST,
31312           decode(wbs_hdr.WP_FLAG
31313                    || '_' || sup_wbs_hdr.WP_FLAG
31314                    || '_' || sup_ver.STATUS_CODE,
31315                  'Y_Y_', to_number(null),
31316                  prg.SIGN * fpr.ACT_LABOR_HRS)        ACT_LABOR_HRS,
31317           decode(wbs_hdr.WP_FLAG
31318                    || '_' || sup_wbs_hdr.WP_FLAG
31319                    || '_' || sup_ver.STATUS_CODE,
31320                  'Y_Y_', to_number(null),
31321                  prg.SIGN * fpr.ACT_EQUIP_HRS)        ACT_EQUIP_HRS,
31322           decode(wbs_hdr.WP_FLAG
31323                    || '_' || sup_wbs_hdr.WP_FLAG
31324                    || '_' || sup_ver.STATUS_CODE,
31325                  'Y_Y_', to_number(null),
31326                  prg.SIGN * fpr.ACT_LABOR_BRDN_COST)  ACT_LABOR_BRDN_COST,
31327           decode(wbs_hdr.WP_FLAG
31328                    || '_' || sup_wbs_hdr.WP_FLAG
31329                    || '_' || sup_ver.STATUS_CODE,
31330                  'Y_Y_', to_number(null),
31331                  prg.SIGN * fpr.ACT_EQUIP_BRDN_COST)  ACT_EQUIP_BRDN_COST,
31332           decode(wbs_hdr.WP_FLAG
31333                    || '_' || sup_wbs_hdr.WP_FLAG
31334                    || '_' || sup_ver.STATUS_CODE,
31335                  'Y_Y_', to_number(null),
31336                  prg.SIGN * fpr.ACT_BRDN_COST)        ACT_BRDN_COST,
31337           decode(wbs_hdr.WP_FLAG
31338                    || '_' || sup_wbs_hdr.WP_FLAG
31339                    || '_' || sup_ver.STATUS_CODE,
31340                  'Y_Y_', to_number(null),
31341                  prg.SIGN * fpr.ACT_RAW_COST)         ACT_RAW_COST,
31342           decode(wbs_hdr.WP_FLAG
31343                    || '_' || sup_wbs_hdr.WP_FLAG
31344                    || '_' || sup_ver.STATUS_CODE,
31345                  'Y_Y_', to_number(null),
31346                  prg.SIGN * fpr.ACT_REVENUE)          ACT_REVENUE,
31347           decode(wbs_hdr.WP_FLAG
31348                    || '_' || sup_wbs_hdr.WP_FLAG
31349                    || '_' || sup_ver.STATUS_CODE,
31350                  'Y_Y_', to_number(null),
31351                  prg.SIGN * fpr.ACT_LABOR_RAW_COST)   ACT_LABOR_RAW_COST,
31352           decode(wbs_hdr.WP_FLAG
31353                    || '_' || sup_wbs_hdr.WP_FLAG
31354                    || '_' || sup_ver.STATUS_CODE,
31355                  'Y_Y_', to_number(null),
31356                  prg.SIGN * fpr.ACT_EQUIP_RAW_COST)   ACT_EQUIP_RAW_COST,
31357           decode(wbs_hdr.WP_FLAG
31358                    || '_' || sup_wbs_hdr.WP_FLAG
31359                    || '_' || sup_ver.STATUS_CODE,
31360                  'Y_Y_', to_number(null),
31361                  prg.SIGN * fpr.ETC_LABOR_HRS)        ETC_LABOR_HRS,
31362           decode(wbs_hdr.WP_FLAG
31363                    || '_' || sup_wbs_hdr.WP_FLAG
31364                    || '_' || sup_ver.STATUS_CODE,
31365                  'Y_Y_', to_number(null),
31366                  prg.SIGN * fpr.ETC_EQUIP_HRS)        ETC_EQUIP_HRS,
31367           decode(wbs_hdr.WP_FLAG
31368                    || '_' || sup_wbs_hdr.WP_FLAG
31369                    || '_' || sup_ver.STATUS_CODE,
31370                  'Y_Y_', to_number(null),
31371                  prg.SIGN * fpr.ETC_LABOR_BRDN_COST)  ETC_LABOR_BRDN_COST,
31372           decode(wbs_hdr.WP_FLAG
31373                    || '_' || sup_wbs_hdr.WP_FLAG
31374                    || '_' || sup_ver.STATUS_CODE,
31375                  'Y_Y_', to_number(null),
31376                  prg.SIGN * fpr.ETC_EQUIP_BRDN_COST)  ETC_EQUIP_BRDN_COST,
31377           decode(wbs_hdr.WP_FLAG
31378                    || '_' || sup_wbs_hdr.WP_FLAG
31379                    || '_' || sup_ver.STATUS_CODE,
31380                  'Y_Y_', to_number(null),
31381                  prg.SIGN * fpr.ETC_BRDN_COST)        ETC_BRDN_COST,
31382           decode(wbs_hdr.WP_FLAG
31383                    || '_' || sup_wbs_hdr.WP_FLAG
31384                    || '_' || sup_ver.STATUS_CODE,
31385                  'Y_Y_', to_number(null),
31386                  prg.SIGN * fpr.ETC_RAW_COST)         ETC_RAW_COST,
31387           decode(wbs_hdr.WP_FLAG
31388                    || '_' || sup_wbs_hdr.WP_FLAG
31389                    || '_' || sup_ver.STATUS_CODE,
31390                  'Y_Y_', to_number(null),
31391                  prg.SIGN * fpr.ETC_LABOR_RAW_COST)   ETC_LABOR_RAW_COST,
31392           decode(wbs_hdr.WP_FLAG
31393                    || '_' || sup_wbs_hdr.WP_FLAG
31394                    || '_' || sup_ver.STATUS_CODE,
31395                  'Y_Y_', to_number(null),
31396                  prg.SIGN * fpr.ETC_EQUIP_RAW_COST)   ETC_EQUIP_RAW_COST,
31397           prg.SIGN * fpr.CUSTOM1                      CUSTOM1,
31398           prg.SIGN * fpr.CUSTOM2                      CUSTOM2,
31399           prg.SIGN * fpr.CUSTOM3                      CUSTOM3,
31400           prg.SIGN * fpr.CUSTOM4                      CUSTOM4,
31401           prg.SIGN * fpr.CUSTOM5                      CUSTOM5,
31402           prg.SIGN * fpr.CUSTOM6                      CUSTOM6,
31403           prg.SIGN * fpr.CUSTOM7                      CUSTOM7,
31404           prg.SIGN * fpr.CUSTOM8                      CUSTOM8,
31405           prg.SIGN * fpr.CUSTOM9                      CUSTOM9,
31406           prg.SIGN * fpr.CUSTOM10                     CUSTOM10,
31407           prg.SIGN * fpr.CUSTOM11                     CUSTOM11,
31408           prg.SIGN * fpr.CUSTOM12                     CUSTOM12,
31409           prg.SIGN * fpr.CUSTOM13                     CUSTOM13,
31410           prg.SIGN * fpr.CUSTOM14                     CUSTOM14,
31411           prg.SIGN * fpr.CUSTOM15                     CUSTOM15
31412         from
31413           PJI_XBS_DENORM_DELTA       prg,
31414           PA_PROJ_ELEMENTS           prj_emt,
31415           PJI_PJP_WBS_HEADER         wbs_hdr,
31416           PJI_FP_XBS_ACCUM_F         fpr,
31417           PJI_PJP_WBS_HEADER         sup_wbs_hdr,
31418           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
31419           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
31420           (
31421             select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID
31422             from DUAL union all
31423             select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID
31424             from DUAL union all
31425             select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID
31426             from DUAL union all
31427             select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID
31428             from DUAL
31429           ) fin_plan
31430         where
31431           prg.WORKER_ID              =  p_worker_id                    and
31432           prg.STRUCT_TYPE            =  'PRG'                          and
31433           prg.SUP_LEVEL              =  l_level                        and
31434           nvl(prg.SUB_ROLLUP_ID,
31435               prg.SUP_EMT_ID)        <> prg.SUP_EMT_ID                 and
31436           fpr.PROJECT_ID             =  prj_emt.PROJECT_ID             and
31437           (((fpr.RBS_AGGR_LEVEL,
31438              fpr.WBS_ROLLUP_FLAG,
31439              fpr.PRG_ROLLUP_FLAG) in (('T', 'Y', 'Y'),
31440                                       ('T', 'Y', 'N'),
31441                                       ('T', 'N', 'Y'),
31442                                       ('T', 'N', 'N'),
31443                                       ('L', 'N', 'N')) and
31444              fpr.PROJECT_ELEMENT_ID = prg.SUB_EMT_ID) or
31445            ((fpr.RBS_AGGR_LEVEL,
31446              fpr.WBS_ROLLUP_FLAG,
31447              fpr.PRG_ROLLUP_FLAG) in (('L', 'N', 'Y'),
31448                                       ('L', 'N', 'N')) and
31449              fpr.PROJECT_ELEMENT_ID <> prg.SUB_EMT_ID))                and
31450           decode(fpr.PLAN_VERSION_ID,
31451                  -1, 'LF',
31452                  -2, 'LF',
31453                  -3, 'LF',
31454                  -4, 'LF',
31455                      decode(wbs_hdr.WP_FLAG,
31456                             'N', 'LF',
31457                               'LW')) =  prg.RELATIONSHIP_TYPE          and
31458           prj_emt.PROJ_ELEMENT_ID    =  prg.SUB_EMT_ID                 and
31459           wbs_hdr.PROJECT_ID         =  prj_emt.PROJECT_ID             and
31460           decode(wbs_hdr.WP_FLAG,
31461                  'Y', wbs_hdr.WBS_VERSION_ID,
31462                       -1)            = decode(wbs_hdr.WP_FLAG,
31463                                               'Y', prg.SUB_ID,
31464                                                    -1)                 and
31465           wbs_hdr.PLAN_VERSION_ID    =  fpr.PLAN_VERSION_ID            and
31466           wbs_hdr.PLAN_TYPE_CODE     =  fpr.PLAN_TYPE_CODE             and
31467           decode(fpr.PLAN_VERSION_ID,
31468                  -3, fpr.PLAN_TYPE_ID,
31469                  -4, fpr.PLAN_TYPE_ID,
31470                      -1)             =  decode(fpr.PLAN_VERSION_ID,
31471                                                -3, wbs_hdr.PLAN_TYPE_ID,
31472                                                -4, wbs_hdr.PLAN_TYPE_ID,
31473                                                    -1)                 and
31474           decode(wbs_hdr.WP_FLAG,
31475                  'N', decode(fpr.PLAN_VERSION_ID,
31476                              -1, 'Y',
31477                              -2, 'Y',
31478                              -3, 'Y',
31479                              -4, 'Y',
31480                                  decode(fpr.RBS_AGGR_LEVEL
31481                                           || '_' || wbs_hdr.CB_FLAG
31482                                           || '_' || wbs_hdr.CO_FLAG,
31483                                         'L_Y_Y', 'Y',
31484                                         'L_N_Y', 'Y',
31485                                         'L_Y_N', 'Y',
31486                                                  'N')),
31487                       'Y')           =  'Y'                            and
31488           prg.SUP_PROJECT_ID         =  sup_wbs_hdr.PROJECT_ID     (+) and
31489           prg.SUP_ID                 =  sup_wbs_hdr.WBS_VERSION_ID (+) and
31490           'Y'                        =  sup_wbs_hdr.WP_FLAG        (+) and
31491           wbs_hdr.PROJECT_ID         =  sub_ver.PROJECT_ID         (+) and
31492           wbs_hdr.WBS_VERSION_ID     =  sub_ver.ELEMENT_VERSION_ID (+) and
31493           'STRUCTURE_PUBLISHED'      =  sub_ver.STATUS_CODE        (+) and
31494           sup_wbs_hdr.PROJECT_ID     =  sup_ver.PROJECT_ID         (+) and
31495           sup_wbs_hdr.WBS_VERSION_ID =  sup_ver.ELEMENT_VERSION_ID (+) and
31496           'STRUCTURE_PUBLISHED'      =  sup_ver.STATUS_CODE        (+) and
31497           wbs_hdr.CB_FLAG            =  fin_plan.CB                (+) and
31498           wbs_hdr.CO_FLAG            =  fin_plan.CO                (+)
31499         union all
31500         select /*+ ordered parallel(pjp1) */                   -- changed for bug 5927368
31501                -- get structure level amounts from interim
31502           decode(pjp1.RBS_AGGR_LEVEL,
31503                  'L', 'DO_NOT_ROLLUP',
31504                       'WBS')                          STRUCT_TYPE,
31505           to_char(null)                               LINE_TYPE,
31506           prg.SUP_PROJECT_ID,
31507           prg.SUP_ID,
31508           prg.SUP_EMT_ID,
31509           prg.SUB_EMT_ID,
31510           prg.SUB_ROLLUP_ID,
31511           'PJP1'                                      LINE_SOURCE,
31512           decode(pjp1.PLAN_VERSION_ID,
31513                  -1, prg.SUB_ID,
31514                  -3, prg.SUB_ID,
31515                  -4, prg.SUB_ID,
31516                      decode(fin_plan.PLAN_VERSION_ID,
31517                             null, null,
31518                                   prg.SUB_ID))        SUB_ID,
31519           decode(pjp1.PLAN_VERSION_ID,
31520                  -1, 'N',
31521                  -3, 'N',
31522                  -4, 'N',
31523                      decode(fin_plan.PLAN_VERSION_ID,
31524                             null, null,
31525                                   'N'))               SUP_WP_FLAG,
31526           decode(pjp1.PLAN_VERSION_ID,
31527                  -1, pjp1.PLAN_VERSION_ID,
31528                  -3, pjp1.PLAN_VERSION_ID,
31529                  -4, pjp1.PLAN_VERSION_ID,
31530                      decode(fin_plan.PLAN_VERSION_ID,
31531                             null, null,
31532                                   fin_plan.PLAN_VERSION_ID)
31533                 )                                     SUB_PLAN_VERSION_ID,
31534           decode(pjp1.PLAN_VERSION_ID,
31535                  -1, pjp1.PLAN_TYPE_ID,
31536                  -3, pjp1.PLAN_TYPE_ID,
31537                  -4, pjp1.PLAN_TYPE_ID,
31538                      decode(fin_plan.PLAN_VERSION_ID,
31539                             null, null,
31540                                   pjp1.PLAN_TYPE_ID)) SUB_PLAN_TYPE_ID,
31541           pjp1.TIME_ID,
31542           pjp1.PERIOD_TYPE_ID,
31543           pjp1.CALENDAR_TYPE,
31544           pjp1.RBS_AGGR_LEVEL,
31545           pjp1.CURR_RECORD_TYPE_ID,
31546           pjp1.CURRENCY_CODE,
31547           pjp1.RBS_ELEMENT_ID,
31548           pjp1.RBS_VERSION_ID,
31549           decode(wbs_hdr.WP_FLAG,
31550                  'N', decode(wbs_hdr.PLAN_VERSION_ID,
31551                              -1, pjp1.PLAN_VERSION_ID,
31552                                  fin_plan.PLAN_VERSION_ID),
31553                       sup_wbs_hdr.PLAN_VERSION_ID)    PLAN_VERSION_ID,
31554           decode(wbs_hdr.WP_FLAG,
31555                  'N', pjp1.PLAN_TYPE_ID,
31556                       sup_wbs_hdr.PLAN_TYPE_ID)       PLAN_TYPE_ID,
31557           pjp1.PLAN_TYPE_CODE,
31558           decode(wbs_hdr.WP_FLAG
31559                    || '_' || sup_wbs_hdr.WP_FLAG
31560                    || '_' || sub_ver.STATUS_CODE
31561                    || '_' || sup_ver.STATUS_CODE,
31562                  'Y_Y__', to_number(null),
31563                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31564                  pjp1.RAW_COST)                       RAW_COST,
31565           decode(wbs_hdr.WP_FLAG
31566                    || '_' || sup_wbs_hdr.WP_FLAG
31567                    || '_' || sub_ver.STATUS_CODE
31568                    || '_' || sup_ver.STATUS_CODE,
31569                  'Y_Y__', to_number(null),
31570                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31571                  pjp1.BRDN_COST)                      BRDN_COST,
31572           decode(wbs_hdr.WP_FLAG
31573                    || '_' || sup_wbs_hdr.WP_FLAG
31574                    || '_' || sub_ver.STATUS_CODE
31575                    || '_' || sup_ver.STATUS_CODE,
31576                  'Y_Y__', to_number(null),
31577                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31578                  pjp1.REVENUE)                        REVENUE,
31579           decode(wbs_hdr.WP_FLAG
31580                    || '_' || sup_wbs_hdr.WP_FLAG
31581                    || '_' || sub_ver.STATUS_CODE
31582                    || '_' || sup_ver.STATUS_CODE,
31583                  'Y_Y__', to_number(null),
31584                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31585                  pjp1.BILL_RAW_COST)                  BILL_RAW_COST,
31586           decode(wbs_hdr.WP_FLAG
31587                    || '_' || sup_wbs_hdr.WP_FLAG
31588                    || '_' || sub_ver.STATUS_CODE
31589                    || '_' || sup_ver.STATUS_CODE,
31590                  'Y_Y__', to_number(null),
31591                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31592                  pjp1.BILL_BRDN_COST)                 BILL_BRDN_COST,
31593           decode(wbs_hdr.WP_FLAG
31594                    || '_' || sup_wbs_hdr.WP_FLAG
31595                    || '_' || sub_ver.STATUS_CODE
31596                    || '_' || sup_ver.STATUS_CODE,
31597                  'Y_Y__', to_number(null),
31598                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31599                  pjp1.BILL_LABOR_RAW_COST)            BILL_LABOR_RAW_COST,
31600           decode(wbs_hdr.WP_FLAG
31601                    || '_' || sup_wbs_hdr.WP_FLAG
31602                    || '_' || sub_ver.STATUS_CODE
31603                    || '_' || sup_ver.STATUS_CODE,
31604                  'Y_Y__', to_number(null),
31605                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31606                  pjp1.BILL_LABOR_BRDN_COST)           BILL_LABOR_BRDN_COST,
31607           decode(wbs_hdr.WP_FLAG
31608                    || '_' || sup_wbs_hdr.WP_FLAG
31609                    || '_' || sub_ver.STATUS_CODE
31610                    || '_' || sup_ver.STATUS_CODE,
31611                  'Y_Y__', to_number(null),
31612                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31613                  pjp1.BILL_LABOR_HRS)                 BILL_LABOR_HRS,
31614           decode(wbs_hdr.WP_FLAG
31615                    || '_' || sup_wbs_hdr.WP_FLAG
31616                    || '_' || sub_ver.STATUS_CODE
31617                    || '_' || sup_ver.STATUS_CODE,
31618                  'Y_Y__', to_number(null),
31619                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31620                  pjp1.EQUIPMENT_RAW_COST)             EQUIPMENT_RAW_COST,
31621           decode(wbs_hdr.WP_FLAG
31622                    || '_' || sup_wbs_hdr.WP_FLAG
31623                    || '_' || sub_ver.STATUS_CODE
31624                    || '_' || sup_ver.STATUS_CODE,
31625                  'Y_Y__', to_number(null),
31626                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31627                  pjp1.EQUIPMENT_BRDN_COST)            EQUIPMENT_BRDN_COST,
31628           decode(wbs_hdr.WP_FLAG
31629                    || '_' || sup_wbs_hdr.WP_FLAG
31630                    || '_' || sub_ver.STATUS_CODE
31631                    || '_' || sup_ver.STATUS_CODE,
31632                  'Y_Y__', to_number(null),
31633                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31634                  pjp1.CAPITALIZABLE_RAW_COST)         CAPITALIZABLE_RAW_COST,
31635           decode(wbs_hdr.WP_FLAG
31636                    || '_' || sup_wbs_hdr.WP_FLAG
31637                    || '_' || sub_ver.STATUS_CODE
31638                    || '_' || sup_ver.STATUS_CODE,
31639                  'Y_Y__', to_number(null),
31640                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31641                  pjp1.CAPITALIZABLE_BRDN_COST)        CAPITALIZABLE_BRDN_COST,
31642           decode(wbs_hdr.WP_FLAG
31643                    || '_' || sup_wbs_hdr.WP_FLAG
31644                    || '_' || sub_ver.STATUS_CODE
31645                    || '_' || sup_ver.STATUS_CODE,
31646                  'Y_Y__', to_number(null),
31647                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31648                  pjp1.LABOR_RAW_COST)                 LABOR_RAW_COST,
31649           decode(wbs_hdr.WP_FLAG
31650                    || '_' || sup_wbs_hdr.WP_FLAG
31651                    || '_' || sub_ver.STATUS_CODE
31652                    || '_' || sup_ver.STATUS_CODE,
31653                  'Y_Y__', to_number(null),
31654                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31655                  pjp1.LABOR_BRDN_COST)                LABOR_BRDN_COST,
31656           decode(wbs_hdr.WP_FLAG
31657                    || '_' || sup_wbs_hdr.WP_FLAG
31658                    || '_' || sub_ver.STATUS_CODE
31659                    || '_' || sup_ver.STATUS_CODE,
31660                  'Y_Y__', to_number(null),
31661                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31662                  pjp1.LABOR_HRS)                      LABOR_HRS,
31663           decode(wbs_hdr.WP_FLAG
31664                    || '_' || sup_wbs_hdr.WP_FLAG
31665                    || '_' || sub_ver.STATUS_CODE
31666                    || '_' || sup_ver.STATUS_CODE,
31667                  'Y_Y__', to_number(null),
31668                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31669                  pjp1.LABOR_REVENUE)                  LABOR_REVENUE,
31670           decode(wbs_hdr.WP_FLAG
31671                    || '_' || sup_wbs_hdr.WP_FLAG
31672                    || '_' || sub_ver.STATUS_CODE
31673                    || '_' || sup_ver.STATUS_CODE,
31674                  'Y_Y__', to_number(null),
31675                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31676                  pjp1.EQUIPMENT_HOURS)                EQUIPMENT_HOURS,
31677           decode(wbs_hdr.WP_FLAG
31678                    || '_' || sup_wbs_hdr.WP_FLAG
31679                    || '_' || sub_ver.STATUS_CODE
31680                    || '_' || sup_ver.STATUS_CODE,
31681                  'Y_Y__', to_number(null),
31682                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31683                  pjp1.BILLABLE_EQUIPMENT_HOURS)       BILLABLE_EQUIPMENT_HOURS,
31684           decode(wbs_hdr.WP_FLAG
31685                    || '_' || sup_wbs_hdr.WP_FLAG
31686                    || '_' || sub_ver.STATUS_CODE
31687                    || '_' || sup_ver.STATUS_CODE,
31688                  'Y_Y__', to_number(null),
31689                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31690                  pjp1.SUP_INV_COMMITTED_COST)         SUP_INV_COMMITTED_COST,
31691           decode(wbs_hdr.WP_FLAG
31692                    || '_' || sup_wbs_hdr.WP_FLAG
31693                    || '_' || sub_ver.STATUS_CODE
31694                    || '_' || sup_ver.STATUS_CODE,
31695                  'Y_Y__', to_number(null),
31696                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31697                  pjp1.PO_COMMITTED_COST)              PO_COMMITTED_COST,
31698           decode(wbs_hdr.WP_FLAG
31699                    || '_' || sup_wbs_hdr.WP_FLAG
31700                    || '_' || sub_ver.STATUS_CODE
31701                    || '_' || sup_ver.STATUS_CODE,
31702                  'Y_Y__', to_number(null),
31703                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31704                  pjp1.PR_COMMITTED_COST)              PR_COMMITTED_COST,
31705           decode(wbs_hdr.WP_FLAG
31706                    || '_' || sup_wbs_hdr.WP_FLAG
31707                    || '_' || sub_ver.STATUS_CODE
31708                    || '_' || sup_ver.STATUS_CODE,
31709                  'Y_Y__', to_number(null),
31710                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
31711                  pjp1.OTH_COMMITTED_COST)             OTH_COMMITTED_COST,
31712           decode(wbs_hdr.WP_FLAG
31713                    || '_' || sup_wbs_hdr.WP_FLAG
31714                    || '_' || sup_ver.STATUS_CODE,
31715                  'Y_Y_', to_number(null),
31716                  pjp1.ACT_LABOR_HRS)                  ACT_LABOR_HRS,
31717           decode(wbs_hdr.WP_FLAG
31718                    || '_' || sup_wbs_hdr.WP_FLAG
31719                    || '_' || sup_ver.STATUS_CODE,
31720                  'Y_Y_', to_number(null),
31721                  pjp1.ACT_EQUIP_HRS)                  ACT_EQUIP_HRS,
31722           decode(wbs_hdr.WP_FLAG
31723                    || '_' || sup_wbs_hdr.WP_FLAG
31724                    || '_' || sup_ver.STATUS_CODE,
31725                  'Y_Y_', to_number(null),
31726                  pjp1.ACT_LABOR_BRDN_COST)            ACT_LABOR_BRDN_COST,
31727           decode(wbs_hdr.WP_FLAG
31728                    || '_' || sup_wbs_hdr.WP_FLAG
31729                    || '_' || sup_ver.STATUS_CODE,
31730                  'Y_Y_', to_number(null),
31731                  pjp1.ACT_EQUIP_BRDN_COST)            ACT_EQUIP_BRDN_COST,
31732           decode(wbs_hdr.WP_FLAG
31733                    || '_' || sup_wbs_hdr.WP_FLAG
31734                    || '_' || sup_ver.STATUS_CODE,
31735                  'Y_Y_', to_number(null),
31736                  pjp1.ACT_BRDN_COST)                  ACT_BRDN_COST,
31737           decode(wbs_hdr.WP_FLAG
31738                    || '_' || sup_wbs_hdr.WP_FLAG
31739                    || '_' || sup_ver.STATUS_CODE,
31740                  'Y_Y_', to_number(null),
31741                  pjp1.ACT_RAW_COST)                   ACT_RAW_COST,
31742           decode(wbs_hdr.WP_FLAG
31743                    || '_' || sup_wbs_hdr.WP_FLAG
31744                    || '_' || sup_ver.STATUS_CODE,
31745                  'Y_Y_', to_number(null),
31746                  pjp1.ACT_REVENUE)                    ACT_REVENUE,
31747           decode(wbs_hdr.WP_FLAG
31748                    || '_' || sup_wbs_hdr.WP_FLAG
31749                    || '_' || sup_ver.STATUS_CODE,
31750                  'Y_Y_', to_number(null),
31751                  pjp1.ACT_LABOR_RAW_COST)             ACT_LABOR_RAW_COST,
31752           decode(wbs_hdr.WP_FLAG
31753                    || '_' || sup_wbs_hdr.WP_FLAG
31754                    || '_' || sup_ver.STATUS_CODE,
31755                  'Y_Y_', to_number(null),
31756                  pjp1.ACT_EQUIP_RAW_COST)             ACT_EQUIP_RAW_COST,
31757           decode(wbs_hdr.WP_FLAG
31758                    || '_' || sup_wbs_hdr.WP_FLAG
31759                    || '_' || sup_ver.STATUS_CODE,
31760                  'Y_Y_', to_number(null),
31761                  pjp1.ETC_LABOR_HRS)                  ETC_LABOR_HRS,
31762           decode(wbs_hdr.WP_FLAG
31763                    || '_' || sup_wbs_hdr.WP_FLAG
31764                    || '_' || sup_ver.STATUS_CODE,
31765                  'Y_Y_', to_number(null),
31766                  pjp1.ETC_EQUIP_HRS)                  ETC_EQUIP_HRS,
31767           decode(wbs_hdr.WP_FLAG
31768                    || '_' || sup_wbs_hdr.WP_FLAG
31769                    || '_' || sup_ver.STATUS_CODE,
31770                  'Y_Y_', to_number(null),
31771                  pjp1.ETC_LABOR_BRDN_COST)            ETC_LABOR_BRDN_COST,
31772           decode(wbs_hdr.WP_FLAG
31773                    || '_' || sup_wbs_hdr.WP_FLAG
31774                    || '_' || sup_ver.STATUS_CODE,
31775                  'Y_Y_', to_number(null),
31776                  pjp1.ETC_EQUIP_BRDN_COST)            ETC_EQUIP_BRDN_COST,
31777           decode(wbs_hdr.WP_FLAG
31778                    || '_' || sup_wbs_hdr.WP_FLAG
31779                    || '_' || sup_ver.STATUS_CODE,
31780                  'Y_Y_', to_number(null),
31781                  pjp1.ETC_BRDN_COST)                  ETC_BRDN_COST,
31782           decode(wbs_hdr.WP_FLAG
31783                    || '_' || sup_wbs_hdr.WP_FLAG
31784                    || '_' || sup_ver.STATUS_CODE,
31785                  'Y_Y_', to_number(null),
31786                  pjp1.ETC_RAW_COST)                   ETC_RAW_COST,
31787           decode(wbs_hdr.WP_FLAG
31788                    || '_' || sup_wbs_hdr.WP_FLAG
31789                    || '_' || sup_ver.STATUS_CODE,
31790                  'Y_Y_', to_number(null),
31791                  pjp1.ETC_LABOR_RAW_COST)             ETC_LABOR_RAW_COST,
31792           decode(wbs_hdr.WP_FLAG
31793                    || '_' || sup_wbs_hdr.WP_FLAG
31794                    || '_' || sup_ver.STATUS_CODE,
31795                  'Y_Y_', to_number(null),
31796                  pjp1.ETC_EQUIP_RAW_COST)             ETC_EQUIP_RAW_COST,
31797           pjp1.CUSTOM1,
31798           pjp1.CUSTOM2,
31799           pjp1.CUSTOM3,
31800           pjp1.CUSTOM4,
31801           pjp1.CUSTOM5,
31802           pjp1.CUSTOM6,
31803           pjp1.CUSTOM7,
31804           pjp1.CUSTOM8,
31805           pjp1.CUSTOM9,
31806           pjp1.CUSTOM10,
31807           pjp1.CUSTOM11,
31808           pjp1.CUSTOM12,
31809           pjp1.CUSTOM13,
31810           pjp1.CUSTOM14,
31811           pjp1.CUSTOM15
31812         from
31813           PJI_FP_AGGR_PJP1           pjp1,
31814           PJI_PJP_WBS_HEADER         wbs_hdr,
31815           PA_PROJ_ELEMENTS           prj_emt,
31816           PA_XBS_DENORM              prg,
31817           PJI_XBS_DENORM_DELTA       prg_delta,
31818           PJI_PJP_WBS_HEADER         sup_wbs_hdr,
31819           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
31820           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
31821           (
31822             select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID
31823             from DUAL union all
31824             select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID
31825             from DUAL union all
31826             select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID
31827             from DUAL union all
31828             select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID
31829             from DUAL
31830           ) fin_plan
31831         where
31832           prg.STRUCT_TYPE            =  'PRG'                           and
31833           prg.SUP_LEVEL              =  l_level                         and
31834           nvl(prg.SUB_ROLLUP_ID,
31835               prg.SUP_EMT_ID)        <> prg.SUP_EMT_ID                  and
31836           p_worker_id                =  prg_delta.WORKER_ID         (+) and
31837           prg.STRUCT_TYPE            =  prg_delta.STRUCT_TYPE       (+) and
31838           prg.SUP_PROJECT_ID         =  prg_delta.SUP_PROJECT_ID    (+) and
31839           prg.SUP_LEVEL              =  prg_delta.SUP_LEVEL         (+) and
31840           prg.SUP_ID                 =  prg_delta.SUP_ID            (+) and
31841           prg.SUB_LEVEL              =  prg_delta.SUB_LEVEL         (+) and
31842           prg.SUB_ID                 =  prg_delta.SUB_ID            (+) and
31843           prg.RELATIONSHIP_TYPE      =  prg_delta.RELATIONSHIP_TYPE (+) and
31844           1                          =  prg_delta.SIGN              (+) and
31845           (prg_delta.SUP_PROJECT_ID is not null or
31846            (prg_delta.SUP_PROJECT_ID is null and
31847             pjp1.RECORD_TYPE = 'P'))                                    and
31848           pjp1.WORKER_ID             =  p_worker_id                     and
31849           pjp1.PRG_LEVEL             in (0, prg.SUB_LEVEL)              and
31850           pjp1.PROJECT_ID            =  prj_emt.PROJECT_ID              and
31851           (((pjp1.RBS_AGGR_LEVEL,
31852              pjp1.WBS_ROLLUP_FLAG,
31853              pjp1.PRG_ROLLUP_FLAG) in (('T', 'Y', 'Y'),
31854                                        ('T', 'Y', 'N'),
31855                                        ('T', 'N', 'Y'),
31856                                        ('T', 'N', 'N'),
31857                                        ('L', 'N', 'N')) and
31858              pjp1.PROJECT_ELEMENT_ID = prg.SUB_EMT_ID) or
31859            ((pjp1.RBS_AGGR_LEVEL,
31860              pjp1.WBS_ROLLUP_FLAG,
31861              pjp1.PRG_ROLLUP_FLAG) in (('L', 'N', 'Y'),
31862                                        ('L', 'N', 'N')) and
31863              pjp1.PROJECT_ELEMENT_ID <> prg.SUB_EMT_ID))                and
31864           decode(pjp1.PLAN_VERSION_ID,
31865                  -1, 'LF',
31866                  -2, 'LF',
31867                  -3, 'LF',
31868                  -4, 'LF',
31869                      decode(wbs_hdr.WP_FLAG,
31870                             'N', 'LF',
31871                               'LW')) =  prg.RELATIONSHIP_TYPE           and
31872           prg.STRUCT_VERSION_ID      is null                            and
31873           prj_emt.OBJECT_TYPE        =  'PA_STRUCTURES'                 and
31874           prj_emt.PROJ_ELEMENT_ID    =  prg.SUB_EMT_ID                  and
31875           wbs_hdr.PROJECT_ID         =  prj_emt.PROJECT_ID              and
31876           wbs_hdr.WBS_VERSION_ID     =  prg.SUB_ID                      and
31877           wbs_hdr.PROJECT_ID         =  pjp1.PROJECT_ID                 and
31878           wbs_hdr.PLAN_VERSION_ID    =  pjp1.PLAN_VERSION_ID            and
31879           wbs_hdr.PLAN_TYPE_CODE     =  pjp1.PLAN_TYPE_CODE             and
31880           decode(pjp1.PLAN_VERSION_ID,
31881                  -3, pjp1.PLAN_TYPE_ID,
31882                  -4, pjp1.PLAN_TYPE_ID,
31883                      -1)             =  decode(pjp1.PLAN_VERSION_ID,
31884                                                -3, wbs_hdr.PLAN_TYPE_ID,
31885                                                -4, wbs_hdr.PLAN_TYPE_ID,
31886                                                    -1)                  and
31887           decode(wbs_hdr.WP_FLAG,
31888                  'N', decode(pjp1.PLAN_VERSION_ID,
31889                              -1, 'Y',
31890                              -2, 'Y',
31891                              -3, 'Y',
31892                              -4, 'Y',
31893                                  decode(pjp1.RBS_AGGR_LEVEL
31894                                           || '_' || wbs_hdr.CB_FLAG
31895                                           || '_' || wbs_hdr.CO_FLAG,
31896                                         'L_Y_Y', 'Y',
31897                                         'L_N_Y', 'Y',
31898                                         'L_Y_N', 'Y',
31899                                                  'N')),
31900                       'Y')           =  'Y'                             and
31901           prg.SUP_PROJECT_ID         =  sup_wbs_hdr.PROJECT_ID      (+) and
31902           prg.SUP_ID                 =  sup_wbs_hdr.WBS_VERSION_ID  (+) and
31903           'Y'                        =  sup_wbs_hdr.WP_FLAG         (+) and
31904           wbs_hdr.PROJECT_ID         =  sub_ver.PROJECT_ID          (+) and
31905           wbs_hdr.WBS_VERSION_ID     =  sub_ver.ELEMENT_VERSION_ID  (+) and
31906           'STRUCTURE_PUBLISHED'      =  sub_ver.STATUS_CODE         (+) and
31907           sup_wbs_hdr.PROJECT_ID     =  sup_ver.PROJECT_ID          (+) and
31908           sup_wbs_hdr.WBS_VERSION_ID =  sup_ver.ELEMENT_VERSION_ID  (+) and
31909           'STRUCTURE_PUBLISHED'      =  sup_ver.STATUS_CODE         (+) and
31910           wbs_hdr.CB_FLAG            =  fin_plan.CB                 (+) and
31911           wbs_hdr.CO_FLAG            =  fin_plan.CO                 (+)
31912         )                          pjp,
31913         PJI_PJP_PROJ_BATCH_MAP     map,
31914         PA_PROJ_WORKPLAN_ATTR      sup_wpa,
31915         PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
31916         PA_XBS_DENORM              wbs,
31917         (
31918           select 1     WBS_SUP_LEVEL,
31919                  'PRJ' INVERT_ID
31920           from   DUAL
31921           union all
31922           select 1     WBS_SUP_LEVEL,
31923                  'WBS' INVERT_ID
31924           from   DUAL
31925         ) top_slice
31926       where
31927         map.WORKER_ID           = p_worker_id                         and
31928         map.PROJECT_ID          = pjp.SUP_PROJECT_ID                  and
31929         pjp.SUP_EMT_ID          = sup_wpa.PROJ_ELEMENT_ID             and
31930         pjp.SUP_PROJECT_ID      = sup_fin_ver.PROJECT_ID          (+) and
31931         pjp.SUP_ID              = sup_fin_ver.ELEMENT_VERSION_ID  (+) and
31932         'STRUCTURE_WORKING'     = sup_fin_ver.STATUS_CODE         (+) and
31933         (pjp.SUP_WP_FLAG is null or
31934          (pjp.SUP_WP_FLAG is not null and
31935           (sup_fin_ver.PROJECT_ID is not null or
31936            sup_wpa.WP_ENABLE_VERSION_FLAG = 'N')))                    and
31937         'WBS'                   = wbs.STRUCT_TYPE                 (+) and
31938         pjp.STRUCT_TYPE         = wbs.STRUCT_TYPE                 (+) and
31939         pjp.SUP_PROJECT_ID      = wbs.SUP_PROJECT_ID              (+) and
31940         pjp.SUP_ID              = wbs.STRUCT_VERSION_ID           (+) and
31941         pjp.SUB_ROLLUP_ID       = wbs.SUB_EMT_ID                  (+) and
31942         wbs.SUP_LEVEL           = top_slice.WBS_SUP_LEVEL         (+)
31943       group by
31944         pjp.LINE_TYPE,
31945         pjp.SUP_PROJECT_ID,
31946         map.PROJECT_ORG_ID,
31947         map.PROJECT_ORGANIZATION_ID,
31948         decode(pjp.STRUCT_TYPE,
31949                'DO_NOT_ROLLUP', pjp.SUB_ROLLUP_ID,
31950                                 decode(top_slice.INVERT_ID,
31951                                        'PRJ', pjp.SUP_EMT_ID, wbs.SUP_EMT_ID)
31952               ),
31953         pjp.TIME_ID,
31954         pjp.PERIOD_TYPE_ID,
31955         pjp.CALENDAR_TYPE,
31956         pjp.RBS_AGGR_LEVEL,
31957         decode(pjp.STRUCT_TYPE,
31958                'DO_NOT_ROLLUP', 'N',
31959                                 decode(top_slice.INVERT_ID,
31960                                        'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
31961                                                           wbs.SUP_EMT_ID,
31962                                                           'N', 'Y'))
31963               ),
31964         pjp.CURR_RECORD_TYPE_ID,
31965         pjp.CURRENCY_CODE,
31966         pjp.RBS_ELEMENT_ID,
31967         pjp.RBS_VERSION_ID,
31968         pjp.PLAN_VERSION_ID,
31969         pjp.PLAN_TYPE_ID,
31970         pjp.PLAN_TYPE_CODE;
31971     elsif (p_worker_id =6) then
31972       -- Query for Partition 6
31973 
31974         insert /*+ parallel(PJI_FP_AGGR_PJP1) */
31975                    into PJI_FP_AGGR_PJP1 partition(P6)
31976       (
31977         WORKER_ID,
31978         RECORD_TYPE,
31979         PRG_LEVEL,
31980         LINE_TYPE,
31981         PROJECT_ID,
31982         PROJECT_ORG_ID,
31983         PROJECT_ORGANIZATION_ID,
31984         PROJECT_ELEMENT_ID,
31985         TIME_ID,
31986         PERIOD_TYPE_ID,
31987         CALENDAR_TYPE,
31988         RBS_AGGR_LEVEL,
31989         WBS_ROLLUP_FLAG,
31990         PRG_ROLLUP_FLAG,
31991         CURR_RECORD_TYPE_ID,
31992         CURRENCY_CODE,
31993         RBS_ELEMENT_ID,
31994         RBS_VERSION_ID,
31995         PLAN_VERSION_ID,
31996         PLAN_TYPE_ID,
31997         PLAN_TYPE_CODE,
31998         RAW_COST,
31999         BRDN_COST,
32000         REVENUE,
32001         BILL_RAW_COST,
32002         BILL_BRDN_COST,
32003         BILL_LABOR_RAW_COST,
32004         BILL_LABOR_BRDN_COST,
32005         BILL_LABOR_HRS,
32006         EQUIPMENT_RAW_COST,
32007         EQUIPMENT_BRDN_COST,
32008         CAPITALIZABLE_RAW_COST,
32009         CAPITALIZABLE_BRDN_COST,
32010         LABOR_RAW_COST,
32011         LABOR_BRDN_COST,
32012         LABOR_HRS,
32013         LABOR_REVENUE,
32014         EQUIPMENT_HOURS,
32015         BILLABLE_EQUIPMENT_HOURS,
32016         SUP_INV_COMMITTED_COST,
32017         PO_COMMITTED_COST,
32018         PR_COMMITTED_COST,
32019         OTH_COMMITTED_COST,
32020         ACT_LABOR_HRS,
32021         ACT_EQUIP_HRS,
32022         ACT_LABOR_BRDN_COST,
32023         ACT_EQUIP_BRDN_COST,
32024         ACT_BRDN_COST,
32025         ACT_RAW_COST,
32026         ACT_REVENUE,
32027         ACT_LABOR_RAW_COST,
32028         ACT_EQUIP_RAW_COST,
32029         ETC_LABOR_HRS,
32030         ETC_EQUIP_HRS,
32031         ETC_LABOR_BRDN_COST,
32032         ETC_EQUIP_BRDN_COST,
32033         ETC_BRDN_COST,
32034         ETC_RAW_COST,
32035         ETC_LABOR_RAW_COST,
32036         ETC_EQUIP_RAW_COST,
32037         CUSTOM1,
32038         CUSTOM2,
32039         CUSTOM3,
32040         CUSTOM4,
32041         CUSTOM5,
32042         CUSTOM6,
32043         CUSTOM7,
32044         CUSTOM8,
32045         CUSTOM9,
32046         CUSTOM10,
32047         CUSTOM11,
32048         CUSTOM12,
32049         CUSTOM13,
32050         CUSTOM14,
32051         CUSTOM15
32052       )
32053       select /*+ no_merge(pjp) */
32054         p_worker_id                                   WORKER_ID,
32055         'P'                                           RECORD_TYPE,
32056         l_level                                       PRG_LEVEL,
32057         pjp.LINE_TYPE,
32058         pjp.SUP_PROJECT_ID                            PROJECT_ID,
32059         map.PROJECT_ORG_ID,
32060         map.PROJECT_ORGANIZATION_ID,
32061         decode(pjp.STRUCT_TYPE,
32062                'DO_NOT_ROLLUP', pjp.SUB_ROLLUP_ID,
32063                                 decode(top_slice.INVERT_ID,
32064                                        'PRJ', pjp.SUP_EMT_ID, wbs.SUP_EMT_ID)
32065               )                                       PROJECT_ELEMENT_ID,
32066         pjp.TIME_ID,
32067         pjp.PERIOD_TYPE_ID,
32068         pjp.CALENDAR_TYPE,
32069         pjp.RBS_AGGR_LEVEL,
32070         decode(pjp.STRUCT_TYPE,
32071                'DO_NOT_ROLLUP', 'N',
32072                                 decode(top_slice.INVERT_ID,
32073                                        'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
32074                                                           wbs.SUP_EMT_ID,
32075                                                           'N', 'Y'))
32076               )                                       WBS_ROLLUP_FLAG,
32077         'Y'                                           PRG_ROLLUP_FLAG,
32078         pjp.CURR_RECORD_TYPE_ID,
32079         pjp.CURRENCY_CODE,
32080         pjp.RBS_ELEMENT_ID,
32081         pjp.RBS_VERSION_ID,
32082         pjp.PLAN_VERSION_ID,
32083         pjp.PLAN_TYPE_ID,
32084         pjp.PLAN_TYPE_CODE,
32085         sum(pjp.RAW_COST)                             RAW_COST,
32086         sum(pjp.BRDN_COST)                            BRDN_COST,
32087         sum(pjp.REVENUE)                              REVENUE,
32088         sum(pjp.BILL_RAW_COST)                        BILL_RAW_COST,
32089         sum(pjp.BILL_BRDN_COST)                       BILL_BRDN_COST,
32090         sum(pjp.BILL_LABOR_RAW_COST)                  BILL_LABOR_RAW_COST,
32091         sum(pjp.BILL_LABOR_BRDN_COST)                 BILL_LABOR_BRDN_COST,
32092         sum(pjp.BILL_LABOR_HRS)                       BILL_LABOR_HRS,
32093         sum(pjp.EQUIPMENT_RAW_COST)                   EQUIPMENT_RAW_COST,
32094         sum(pjp.EQUIPMENT_BRDN_COST)                  EQUIPMENT_BRDN_COST,
32095         sum(pjp.CAPITALIZABLE_RAW_COST)               CAPITALIZABLE_RAW_COST,
32096         sum(pjp.CAPITALIZABLE_BRDN_COST)              CAPITALIZABLE_BRDN_COST,
32097         sum(pjp.LABOR_RAW_COST)                       LABOR_RAW_COST,
32098         sum(pjp.LABOR_BRDN_COST)                      LABOR_BRDN_COST,
32099         sum(pjp.LABOR_HRS)                            LABOR_HRS,
32100         sum(pjp.LABOR_REVENUE)                        LABOR_REVENUE,
32101         sum(pjp.EQUIPMENT_HOURS)                      EQUIPMENT_HOURS,
32102         sum(pjp.BILLABLE_EQUIPMENT_HOURS)             BILLABLE_EQUIPMENT_HOURS,
32103         sum(pjp.SUP_INV_COMMITTED_COST)               SUP_INV_COMMITTED_COST,
32104         sum(pjp.PO_COMMITTED_COST)                    PO_COMMITTED_COST,
32105         sum(pjp.PR_COMMITTED_COST)                    PR_COMMITTED_COST,
32106         sum(pjp.OTH_COMMITTED_COST)                   OTH_COMMITTED_COST,
32107         sum(pjp.ACT_LABOR_HRS)                        ACT_LABOR_HRS,
32108         sum(pjp.ACT_EQUIP_HRS)                        ACT_EQUIP_HRS,
32109         sum(pjp.ACT_LABOR_BRDN_COST)                  ACT_LABOR_BRDN_COST,
32110         sum(pjp.ACT_EQUIP_BRDN_COST)                  ACT_EQUIP_BRDN_COST,
32111         sum(pjp.ACT_BRDN_COST)                        ACT_BRDN_COST,
32112         sum(pjp.ACT_RAW_COST)                         ACT_RAW_COST,
32113         sum(pjp.ACT_REVENUE)                          ACT_REVENUE,
32114         sum(pjp.ACT_LABOR_RAW_COST)                   ACT_LABOR_RAW_COST,
32115         sum(pjp.ACT_EQUIP_RAW_COST)                   ACT_EQUIP_RAW_COST,
32116         sum(pjp.ETC_LABOR_HRS)                        ETC_LABOR_HRS,
32117         sum(pjp.ETC_EQUIP_HRS)                        ETC_EQUIP_HRS,
32118         sum(pjp.ETC_LABOR_BRDN_COST)                  ETC_LABOR_BRDN_COST,
32119         sum(pjp.ETC_EQUIP_BRDN_COST)                  ETC_EQUIP_BRDN_COST,
32120         sum(pjp.ETC_BRDN_COST)                        ETC_BRDN_COST,
32121         sum(pjp.ETC_RAW_COST)                         ETC_RAW_COST,
32122         sum(pjp.ETC_LABOR_RAW_COST)                   ETC_LABOR_RAW_COST,
32123         sum(pjp.ETC_EQUIP_RAW_COST)                   ETC_EQUIP_RAW_COST,
32124         sum(pjp.CUSTOM1)                              CUSTOM1,
32125         sum(pjp.CUSTOM2)                              CUSTOM2,
32126         sum(pjp.CUSTOM3)                              CUSTOM3,
32127         sum(pjp.CUSTOM4)                              CUSTOM4,
32128         sum(pjp.CUSTOM5)                              CUSTOM5,
32129         sum(pjp.CUSTOM6)                              CUSTOM6,
32130         sum(pjp.CUSTOM7)                              CUSTOM7,
32131         sum(pjp.CUSTOM8)                              CUSTOM8,
32132         sum(pjp.CUSTOM9)                              CUSTOM9,
32133         sum(pjp.CUSTOM10)                             CUSTOM10,
32134         sum(pjp.CUSTOM11)                             CUSTOM11,
32135         sum(pjp.CUSTOM12)                             CUSTOM12,
32136         sum(pjp.CUSTOM13)                             CUSTOM13,
32137         sum(pjp.CUSTOM14)                             CUSTOM14,
32138         sum(pjp.CUSTOM15)                             CUSTOM15
32139       from
32140         (
32141         select /*+ ordered index(fpr PJI_FP_XBS_ACCUM_F_N1) */
32142                -- get structure level amounts from Reporting Lines
32143           decode(fpr.RBS_AGGR_LEVEL,
32144                  'L', 'DO_NOT_ROLLUP',
32145                       'WBS')                          STRUCT_TYPE,
32146           to_char(null)                               LINE_TYPE,
32147           prg.SUP_PROJECT_ID,
32148           prg.SUP_ID,
32149           prg.SUP_EMT_ID,
32150           prg.SUB_EMT_ID,
32151           prg.SUB_ROLLUP_ID,
32152           'FPR'                                       LINE_SOURCE,
32153           decode(fpr.PLAN_VERSION_ID,
32154                  -1, prg.SUB_ID,
32155                  -3, prg.SUB_ID,
32156                  -4, prg.SUB_ID,
32157                      decode(fin_plan.PLAN_VERSION_ID,
32158                             null, null,
32159                                   prg.SUB_ID))        SUB_ID,
32160           decode(fpr.PLAN_VERSION_ID,
32161                  -1, 'N',
32162                  -3, 'N',
32163                  -4, 'N',
32164                      decode(fin_plan.PLAN_VERSION_ID,
32165                             null, null,
32166                                   'N'))               SUP_WP_FLAG,
32167           decode(fpr.PLAN_VERSION_ID,
32168                  -1, fpr.PLAN_VERSION_ID,
32169                  -3, fpr.PLAN_VERSION_ID,
32170                  -4, fpr.PLAN_VERSION_ID,
32171                      decode(fin_plan.PLAN_VERSION_ID,
32172                             null, null,
32173                                   fin_plan.PLAN_VERSION_ID)
32174                 )                                     SUB_PLAN_VERSION_ID,
32175           decode(fpr.PLAN_VERSION_ID,
32176                  -1, fpr.PLAN_TYPE_ID,
32177                  -3, fpr.PLAN_TYPE_ID,
32178                  -4, fpr.PLAN_TYPE_ID,
32179                      decode(fin_plan.PLAN_VERSION_ID,
32180                             null, null,
32181                                   fpr.PLAN_TYPE_ID))  SUB_PLAN_TYPE_ID,
32182           fpr.TIME_ID,
32183           fpr.PERIOD_TYPE_ID,
32184           fpr.CALENDAR_TYPE,
32185           fpr.RBS_AGGR_LEVEL,
32186           fpr.CURR_RECORD_TYPE_ID,
32187           fpr.CURRENCY_CODE,
32188           fpr.RBS_ELEMENT_ID,
32189           fpr.RBS_VERSION_ID,
32190           decode(wbs_hdr.WP_FLAG,
32191                  'N', decode(wbs_hdr.PLAN_VERSION_ID,
32192                              -1, fpr.PLAN_VERSION_ID,
32193                                  fin_plan.PLAN_VERSION_ID),
32194                       sup_wbs_hdr.PLAN_VERSION_ID)    PLAN_VERSION_ID,
32195           decode(wbs_hdr.WP_FLAG,
32196                  'N', fpr.PLAN_TYPE_ID,
32197                       sup_wbs_hdr.PLAN_TYPE_ID)       PLAN_TYPE_ID,
32198           fpr.PLAN_TYPE_CODE,
32199           decode(wbs_hdr.WP_FLAG
32200                    || '_' || sup_wbs_hdr.WP_FLAG
32201                    || '_' || sub_ver.STATUS_CODE
32202                    || '_' || sup_ver.STATUS_CODE,
32203                  'Y_Y__', to_number(null),
32204                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32205                  prg.SIGN * fpr.RAW_COST)             RAW_COST,
32206           decode(wbs_hdr.WP_FLAG
32207                    || '_' || sup_wbs_hdr.WP_FLAG
32208                    || '_' || sub_ver.STATUS_CODE
32209                    || '_' || sup_ver.STATUS_CODE,
32210                  'Y_Y__', to_number(null),
32211                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32212                  prg.SIGN * fpr.BRDN_COST)            BRDN_COST,
32213           decode(wbs_hdr.WP_FLAG
32214                    || '_' || sup_wbs_hdr.WP_FLAG
32215                    || '_' || sub_ver.STATUS_CODE
32216                    || '_' || sup_ver.STATUS_CODE,
32217                  'Y_Y__', to_number(null),
32218                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32219                  prg.SIGN * fpr.REVENUE)              REVENUE,
32220           decode(wbs_hdr.WP_FLAG
32221                    || '_' || sup_wbs_hdr.WP_FLAG
32222                    || '_' || sub_ver.STATUS_CODE
32223                    || '_' || sup_ver.STATUS_CODE,
32224                  'Y_Y__', to_number(null),
32225                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32226                  prg.SIGN * fpr.BILL_RAW_COST)        BILL_RAW_COST,
32227           decode(wbs_hdr.WP_FLAG
32228                    || '_' || sup_wbs_hdr.WP_FLAG
32229                    || '_' || sub_ver.STATUS_CODE
32230                    || '_' || sup_ver.STATUS_CODE,
32231                  'Y_Y__', to_number(null),
32232                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32233                  prg.SIGN * fpr.BILL_BRDN_COST)       BILL_BRDN_COST,
32234           decode(wbs_hdr.WP_FLAG
32235                    || '_' || sup_wbs_hdr.WP_FLAG
32236                    || '_' || sub_ver.STATUS_CODE
32237                    || '_' || sup_ver.STATUS_CODE,
32238                  'Y_Y__', to_number(null),
32239                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32240                  prg.SIGN * fpr.BILL_LABOR_RAW_COST)  BILL_LABOR_RAW_COST,
32241           decode(wbs_hdr.WP_FLAG
32242                    || '_' || sup_wbs_hdr.WP_FLAG
32243                    || '_' || sub_ver.STATUS_CODE
32244                    || '_' || sup_ver.STATUS_CODE,
32245                  'Y_Y__', to_number(null),
32246                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32247                  prg.SIGN * fpr.BILL_LABOR_BRDN_COST) BILL_LABOR_BRDN_COST,
32248           decode(wbs_hdr.WP_FLAG
32249                    || '_' || sup_wbs_hdr.WP_FLAG
32250                    || '_' || sub_ver.STATUS_CODE
32251                    || '_' || sup_ver.STATUS_CODE,
32252                  'Y_Y__', to_number(null),
32253                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32254                  prg.SIGN * fpr.BILL_LABOR_HRS)       BILL_LABOR_HRS,
32255           decode(wbs_hdr.WP_FLAG
32256                    || '_' || sup_wbs_hdr.WP_FLAG
32257                    || '_' || sub_ver.STATUS_CODE
32258                    || '_' || sup_ver.STATUS_CODE,
32259                  'Y_Y__', to_number(null),
32260                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32261                  prg.SIGN * fpr.EQUIPMENT_RAW_COST)   EQUIPMENT_RAW_COST,
32262           decode(wbs_hdr.WP_FLAG
32263                    || '_' || sup_wbs_hdr.WP_FLAG
32264                    || '_' || sub_ver.STATUS_CODE
32265                    || '_' || sup_ver.STATUS_CODE,
32266                  'Y_Y__', to_number(null),
32267                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32268                  prg.SIGN * fpr.EQUIPMENT_BRDN_COST)  EQUIPMENT_BRDN_COST,
32269           decode(wbs_hdr.WP_FLAG
32270                    || '_' || sup_wbs_hdr.WP_FLAG
32271                    || '_' || sub_ver.STATUS_CODE
32272                    || '_' || sup_ver.STATUS_CODE,
32273                  'Y_Y__', to_number(null),
32274                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32275                  prg.SIGN * fpr.CAPITALIZABLE_RAW_COST)
32276                                                       CAPITALIZABLE_RAW_COST,
32277           decode(wbs_hdr.WP_FLAG
32278                    || '_' || sup_wbs_hdr.WP_FLAG
32279                    || '_' || sub_ver.STATUS_CODE
32280                    || '_' || sup_ver.STATUS_CODE,
32281                  'Y_Y__', to_number(null),
32282                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32283                  prg.SIGN * fpr.CAPITALIZABLE_BRDN_COST)
32284                                                       CAPITALIZABLE_BRDN_COST,
32285           decode(wbs_hdr.WP_FLAG
32286                    || '_' || sup_wbs_hdr.WP_FLAG
32287                    || '_' || sub_ver.STATUS_CODE
32288                    || '_' || sup_ver.STATUS_CODE,
32289                  'Y_Y__', to_number(null),
32290                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32291                  prg.SIGN * fpr.LABOR_RAW_COST)       LABOR_RAW_COST,
32292           decode(wbs_hdr.WP_FLAG
32293                    || '_' || sup_wbs_hdr.WP_FLAG
32294                    || '_' || sub_ver.STATUS_CODE
32295                    || '_' || sup_ver.STATUS_CODE,
32296                  'Y_Y__', to_number(null),
32297                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32298                  prg.SIGN * fpr.LABOR_BRDN_COST)      LABOR_BRDN_COST,
32299           decode(wbs_hdr.WP_FLAG
32300                    || '_' || sup_wbs_hdr.WP_FLAG
32301                    || '_' || sub_ver.STATUS_CODE
32302                    || '_' || sup_ver.STATUS_CODE,
32303                  'Y_Y__', to_number(null),
32304                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32305                  prg.SIGN * fpr.LABOR_HRS)            LABOR_HRS,
32306           decode(wbs_hdr.WP_FLAG
32307                    || '_' || sup_wbs_hdr.WP_FLAG
32308                    || '_' || sub_ver.STATUS_CODE
32309                    || '_' || sup_ver.STATUS_CODE,
32310                  'Y_Y__', to_number(null),
32311                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32312                  prg.SIGN * fpr.LABOR_REVENUE)        LABOR_REVENUE,
32313           decode(wbs_hdr.WP_FLAG
32314                    || '_' || sup_wbs_hdr.WP_FLAG
32315                    || '_' || sub_ver.STATUS_CODE
32316                    || '_' || sup_ver.STATUS_CODE,
32317                  'Y_Y__', to_number(null),
32318                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32319                  prg.SIGN * fpr.EQUIPMENT_HOURS)      EQUIPMENT_HOURS,
32320           decode(wbs_hdr.WP_FLAG
32321                    || '_' || sup_wbs_hdr.WP_FLAG
32322                    || '_' || sub_ver.STATUS_CODE
32323                    || '_' || sup_ver.STATUS_CODE,
32324                  'Y_Y__', to_number(null),
32325                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32326                  prg.SIGN * fpr.BILLABLE_EQUIPMENT_HOURS)
32327                                                       BILLABLE_EQUIPMENT_HOURS,
32328           decode(wbs_hdr.WP_FLAG
32329                    || '_' || sup_wbs_hdr.WP_FLAG
32330                    || '_' || sub_ver.STATUS_CODE
32331                    || '_' || sup_ver.STATUS_CODE,
32332                  'Y_Y__', to_number(null),
32333                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32334                  prg.SIGN * fpr.SUP_INV_COMMITTED_COST)
32335                                                       SUP_INV_COMMITTED_COST,
32336           decode(wbs_hdr.WP_FLAG
32337                    || '_' || sup_wbs_hdr.WP_FLAG
32338                    || '_' || sub_ver.STATUS_CODE
32339                    || '_' || sup_ver.STATUS_CODE,
32340                  'Y_Y__', to_number(null),
32341                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32342                  prg.SIGN * fpr.PO_COMMITTED_COST)    PO_COMMITTED_COST,
32343           decode(wbs_hdr.WP_FLAG
32344                    || '_' || sup_wbs_hdr.WP_FLAG
32345                    || '_' || sub_ver.STATUS_CODE
32346                    || '_' || sup_ver.STATUS_CODE,
32347                  'Y_Y__', to_number(null),
32348                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32349                  prg.SIGN * fpr.PR_COMMITTED_COST)    PR_COMMITTED_COST,
32350           decode(wbs_hdr.WP_FLAG
32351                    || '_' || sup_wbs_hdr.WP_FLAG
32352                    || '_' || sub_ver.STATUS_CODE
32353                    || '_' || sup_ver.STATUS_CODE,
32354                  'Y_Y__', to_number(null),
32355                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32356                  prg.SIGN * fpr.OTH_COMMITTED_COST)   OTH_COMMITTED_COST,
32357           decode(wbs_hdr.WP_FLAG
32358                    || '_' || sup_wbs_hdr.WP_FLAG
32359                    || '_' || sup_ver.STATUS_CODE,
32360                  'Y_Y_', to_number(null),
32361                  prg.SIGN * fpr.ACT_LABOR_HRS)        ACT_LABOR_HRS,
32362           decode(wbs_hdr.WP_FLAG
32363                    || '_' || sup_wbs_hdr.WP_FLAG
32364                    || '_' || sup_ver.STATUS_CODE,
32365                  'Y_Y_', to_number(null),
32366                  prg.SIGN * fpr.ACT_EQUIP_HRS)        ACT_EQUIP_HRS,
32367           decode(wbs_hdr.WP_FLAG
32368                    || '_' || sup_wbs_hdr.WP_FLAG
32369                    || '_' || sup_ver.STATUS_CODE,
32370                  'Y_Y_', to_number(null),
32371                  prg.SIGN * fpr.ACT_LABOR_BRDN_COST)  ACT_LABOR_BRDN_COST,
32372           decode(wbs_hdr.WP_FLAG
32373                    || '_' || sup_wbs_hdr.WP_FLAG
32374                    || '_' || sup_ver.STATUS_CODE,
32375                  'Y_Y_', to_number(null),
32376                  prg.SIGN * fpr.ACT_EQUIP_BRDN_COST)  ACT_EQUIP_BRDN_COST,
32377           decode(wbs_hdr.WP_FLAG
32378                    || '_' || sup_wbs_hdr.WP_FLAG
32379                    || '_' || sup_ver.STATUS_CODE,
32380                  'Y_Y_', to_number(null),
32381                  prg.SIGN * fpr.ACT_BRDN_COST)        ACT_BRDN_COST,
32382           decode(wbs_hdr.WP_FLAG
32383                    || '_' || sup_wbs_hdr.WP_FLAG
32384                    || '_' || sup_ver.STATUS_CODE,
32385                  'Y_Y_', to_number(null),
32386                  prg.SIGN * fpr.ACT_RAW_COST)         ACT_RAW_COST,
32387           decode(wbs_hdr.WP_FLAG
32388                    || '_' || sup_wbs_hdr.WP_FLAG
32389                    || '_' || sup_ver.STATUS_CODE,
32390                  'Y_Y_', to_number(null),
32391                  prg.SIGN * fpr.ACT_REVENUE)          ACT_REVENUE,
32392           decode(wbs_hdr.WP_FLAG
32393                    || '_' || sup_wbs_hdr.WP_FLAG
32394                    || '_' || sup_ver.STATUS_CODE,
32395                  'Y_Y_', to_number(null),
32396                  prg.SIGN * fpr.ACT_LABOR_RAW_COST)   ACT_LABOR_RAW_COST,
32397           decode(wbs_hdr.WP_FLAG
32398                    || '_' || sup_wbs_hdr.WP_FLAG
32399                    || '_' || sup_ver.STATUS_CODE,
32400                  'Y_Y_', to_number(null),
32401                  prg.SIGN * fpr.ACT_EQUIP_RAW_COST)   ACT_EQUIP_RAW_COST,
32402           decode(wbs_hdr.WP_FLAG
32403                    || '_' || sup_wbs_hdr.WP_FLAG
32404                    || '_' || sup_ver.STATUS_CODE,
32405                  'Y_Y_', to_number(null),
32406                  prg.SIGN * fpr.ETC_LABOR_HRS)        ETC_LABOR_HRS,
32407           decode(wbs_hdr.WP_FLAG
32408                    || '_' || sup_wbs_hdr.WP_FLAG
32409                    || '_' || sup_ver.STATUS_CODE,
32410                  'Y_Y_', to_number(null),
32411                  prg.SIGN * fpr.ETC_EQUIP_HRS)        ETC_EQUIP_HRS,
32412           decode(wbs_hdr.WP_FLAG
32413                    || '_' || sup_wbs_hdr.WP_FLAG
32414                    || '_' || sup_ver.STATUS_CODE,
32415                  'Y_Y_', to_number(null),
32416                  prg.SIGN * fpr.ETC_LABOR_BRDN_COST)  ETC_LABOR_BRDN_COST,
32417           decode(wbs_hdr.WP_FLAG
32418                    || '_' || sup_wbs_hdr.WP_FLAG
32419                    || '_' || sup_ver.STATUS_CODE,
32420                  'Y_Y_', to_number(null),
32421                  prg.SIGN * fpr.ETC_EQUIP_BRDN_COST)  ETC_EQUIP_BRDN_COST,
32422           decode(wbs_hdr.WP_FLAG
32423                    || '_' || sup_wbs_hdr.WP_FLAG
32424                    || '_' || sup_ver.STATUS_CODE,
32425                  'Y_Y_', to_number(null),
32426                  prg.SIGN * fpr.ETC_BRDN_COST)        ETC_BRDN_COST,
32427           decode(wbs_hdr.WP_FLAG
32428                    || '_' || sup_wbs_hdr.WP_FLAG
32429                    || '_' || sup_ver.STATUS_CODE,
32430                  'Y_Y_', to_number(null),
32431                  prg.SIGN * fpr.ETC_RAW_COST)         ETC_RAW_COST,
32432           decode(wbs_hdr.WP_FLAG
32433                    || '_' || sup_wbs_hdr.WP_FLAG
32434                    || '_' || sup_ver.STATUS_CODE,
32435                  'Y_Y_', to_number(null),
32436                  prg.SIGN * fpr.ETC_LABOR_RAW_COST)   ETC_LABOR_RAW_COST,
32437           decode(wbs_hdr.WP_FLAG
32438                    || '_' || sup_wbs_hdr.WP_FLAG
32439                    || '_' || sup_ver.STATUS_CODE,
32440                  'Y_Y_', to_number(null),
32441                  prg.SIGN * fpr.ETC_EQUIP_RAW_COST)   ETC_EQUIP_RAW_COST,
32442           prg.SIGN * fpr.CUSTOM1                      CUSTOM1,
32443           prg.SIGN * fpr.CUSTOM2                      CUSTOM2,
32444           prg.SIGN * fpr.CUSTOM3                      CUSTOM3,
32445           prg.SIGN * fpr.CUSTOM4                      CUSTOM4,
32446           prg.SIGN * fpr.CUSTOM5                      CUSTOM5,
32447           prg.SIGN * fpr.CUSTOM6                      CUSTOM6,
32448           prg.SIGN * fpr.CUSTOM7                      CUSTOM7,
32449           prg.SIGN * fpr.CUSTOM8                      CUSTOM8,
32450           prg.SIGN * fpr.CUSTOM9                      CUSTOM9,
32451           prg.SIGN * fpr.CUSTOM10                     CUSTOM10,
32452           prg.SIGN * fpr.CUSTOM11                     CUSTOM11,
32453           prg.SIGN * fpr.CUSTOM12                     CUSTOM12,
32454           prg.SIGN * fpr.CUSTOM13                     CUSTOM13,
32455           prg.SIGN * fpr.CUSTOM14                     CUSTOM14,
32456           prg.SIGN * fpr.CUSTOM15                     CUSTOM15
32457         from
32458           PJI_XBS_DENORM_DELTA       prg,
32459           PA_PROJ_ELEMENTS           prj_emt,
32460           PJI_PJP_WBS_HEADER         wbs_hdr,
32461           PJI_FP_XBS_ACCUM_F         fpr,
32462           PJI_PJP_WBS_HEADER         sup_wbs_hdr,
32463           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
32464           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
32465           (
32466             select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID
32467             from DUAL union all
32468             select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID
32469             from DUAL union all
32470             select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID
32471             from DUAL union all
32472             select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID
32473             from DUAL
32474           ) fin_plan
32475         where
32476           prg.WORKER_ID              =  p_worker_id                    and
32477           prg.STRUCT_TYPE            =  'PRG'                          and
32478           prg.SUP_LEVEL              =  l_level                        and
32479           nvl(prg.SUB_ROLLUP_ID,
32480               prg.SUP_EMT_ID)        <> prg.SUP_EMT_ID                 and
32481           fpr.PROJECT_ID             =  prj_emt.PROJECT_ID             and
32482           (((fpr.RBS_AGGR_LEVEL,
32483              fpr.WBS_ROLLUP_FLAG,
32484              fpr.PRG_ROLLUP_FLAG) in (('T', 'Y', 'Y'),
32485                                       ('T', 'Y', 'N'),
32486                                       ('T', 'N', 'Y'),
32487                                       ('T', 'N', 'N'),
32488                                       ('L', 'N', 'N')) and
32489              fpr.PROJECT_ELEMENT_ID = prg.SUB_EMT_ID) or
32490            ((fpr.RBS_AGGR_LEVEL,
32491              fpr.WBS_ROLLUP_FLAG,
32492              fpr.PRG_ROLLUP_FLAG) in (('L', 'N', 'Y'),
32493                                       ('L', 'N', 'N')) and
32494              fpr.PROJECT_ELEMENT_ID <> prg.SUB_EMT_ID))                and
32495           decode(fpr.PLAN_VERSION_ID,
32496                  -1, 'LF',
32497                  -2, 'LF',
32498                  -3, 'LF',
32499                  -4, 'LF',
32500                      decode(wbs_hdr.WP_FLAG,
32501                             'N', 'LF',
32502                               'LW')) =  prg.RELATIONSHIP_TYPE          and
32503           prj_emt.PROJ_ELEMENT_ID    =  prg.SUB_EMT_ID                 and
32504           wbs_hdr.PROJECT_ID         =  prj_emt.PROJECT_ID             and
32505           decode(wbs_hdr.WP_FLAG,
32506                  'Y', wbs_hdr.WBS_VERSION_ID,
32507                       -1)            = decode(wbs_hdr.WP_FLAG,
32508                                               'Y', prg.SUB_ID,
32509                                                    -1)                 and
32510           wbs_hdr.PLAN_VERSION_ID    =  fpr.PLAN_VERSION_ID            and
32511           wbs_hdr.PLAN_TYPE_CODE     =  fpr.PLAN_TYPE_CODE             and
32512           decode(fpr.PLAN_VERSION_ID,
32513                  -3, fpr.PLAN_TYPE_ID,
32514                  -4, fpr.PLAN_TYPE_ID,
32515                      -1)             =  decode(fpr.PLAN_VERSION_ID,
32516                                                -3, wbs_hdr.PLAN_TYPE_ID,
32517                                                -4, wbs_hdr.PLAN_TYPE_ID,
32518                                                    -1)                 and
32519           decode(wbs_hdr.WP_FLAG,
32520                  'N', decode(fpr.PLAN_VERSION_ID,
32521                              -1, 'Y',
32522                              -2, 'Y',
32523                              -3, 'Y',
32524                              -4, 'Y',
32525                                  decode(fpr.RBS_AGGR_LEVEL
32526                                           || '_' || wbs_hdr.CB_FLAG
32527                                           || '_' || wbs_hdr.CO_FLAG,
32528                                         'L_Y_Y', 'Y',
32529                                         'L_N_Y', 'Y',
32530                                         'L_Y_N', 'Y',
32531                                                  'N')),
32532                       'Y')           =  'Y'                            and
32533           prg.SUP_PROJECT_ID         =  sup_wbs_hdr.PROJECT_ID     (+) and
32534           prg.SUP_ID                 =  sup_wbs_hdr.WBS_VERSION_ID (+) and
32535           'Y'                        =  sup_wbs_hdr.WP_FLAG        (+) and
32536           wbs_hdr.PROJECT_ID         =  sub_ver.PROJECT_ID         (+) and
32537           wbs_hdr.WBS_VERSION_ID     =  sub_ver.ELEMENT_VERSION_ID (+) and
32538           'STRUCTURE_PUBLISHED'      =  sub_ver.STATUS_CODE        (+) and
32539           sup_wbs_hdr.PROJECT_ID     =  sup_ver.PROJECT_ID         (+) and
32540           sup_wbs_hdr.WBS_VERSION_ID =  sup_ver.ELEMENT_VERSION_ID (+) and
32541           'STRUCTURE_PUBLISHED'      =  sup_ver.STATUS_CODE        (+) and
32542           wbs_hdr.CB_FLAG            =  fin_plan.CB                (+) and
32543           wbs_hdr.CO_FLAG            =  fin_plan.CO                (+)
32544         union all
32545         select /*+ ordered parallel(pjp1) */                   -- changed for bug 5927368
32546                -- get structure level amounts from interim
32547           decode(pjp1.RBS_AGGR_LEVEL,
32548                  'L', 'DO_NOT_ROLLUP',
32549                       'WBS')                          STRUCT_TYPE,
32550           to_char(null)                               LINE_TYPE,
32551           prg.SUP_PROJECT_ID,
32552           prg.SUP_ID,
32553           prg.SUP_EMT_ID,
32554           prg.SUB_EMT_ID,
32555           prg.SUB_ROLLUP_ID,
32556           'PJP1'                                      LINE_SOURCE,
32557           decode(pjp1.PLAN_VERSION_ID,
32558                  -1, prg.SUB_ID,
32559                  -3, prg.SUB_ID,
32560                  -4, prg.SUB_ID,
32561                      decode(fin_plan.PLAN_VERSION_ID,
32562                             null, null,
32563                                   prg.SUB_ID))        SUB_ID,
32564           decode(pjp1.PLAN_VERSION_ID,
32565                  -1, 'N',
32566                  -3, 'N',
32567                  -4, 'N',
32568                      decode(fin_plan.PLAN_VERSION_ID,
32569                             null, null,
32570                                   'N'))               SUP_WP_FLAG,
32571           decode(pjp1.PLAN_VERSION_ID,
32572                  -1, pjp1.PLAN_VERSION_ID,
32573                  -3, pjp1.PLAN_VERSION_ID,
32574                  -4, pjp1.PLAN_VERSION_ID,
32575                      decode(fin_plan.PLAN_VERSION_ID,
32576                             null, null,
32577                                   fin_plan.PLAN_VERSION_ID)
32578                 )                                     SUB_PLAN_VERSION_ID,
32579           decode(pjp1.PLAN_VERSION_ID,
32580                  -1, pjp1.PLAN_TYPE_ID,
32581                  -3, pjp1.PLAN_TYPE_ID,
32582                  -4, pjp1.PLAN_TYPE_ID,
32583                      decode(fin_plan.PLAN_VERSION_ID,
32584                             null, null,
32585                                   pjp1.PLAN_TYPE_ID)) SUB_PLAN_TYPE_ID,
32586           pjp1.TIME_ID,
32587           pjp1.PERIOD_TYPE_ID,
32588           pjp1.CALENDAR_TYPE,
32589           pjp1.RBS_AGGR_LEVEL,
32590           pjp1.CURR_RECORD_TYPE_ID,
32591           pjp1.CURRENCY_CODE,
32592           pjp1.RBS_ELEMENT_ID,
32593           pjp1.RBS_VERSION_ID,
32594           decode(wbs_hdr.WP_FLAG,
32595                  'N', decode(wbs_hdr.PLAN_VERSION_ID,
32596                              -1, pjp1.PLAN_VERSION_ID,
32597                                  fin_plan.PLAN_VERSION_ID),
32598                       sup_wbs_hdr.PLAN_VERSION_ID)    PLAN_VERSION_ID,
32599           decode(wbs_hdr.WP_FLAG,
32600                  'N', pjp1.PLAN_TYPE_ID,
32601                       sup_wbs_hdr.PLAN_TYPE_ID)       PLAN_TYPE_ID,
32602           pjp1.PLAN_TYPE_CODE,
32603           decode(wbs_hdr.WP_FLAG
32604                    || '_' || sup_wbs_hdr.WP_FLAG
32605                    || '_' || sub_ver.STATUS_CODE
32606                    || '_' || sup_ver.STATUS_CODE,
32607                  'Y_Y__', to_number(null),
32608                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32609                  pjp1.RAW_COST)                       RAW_COST,
32610           decode(wbs_hdr.WP_FLAG
32611                    || '_' || sup_wbs_hdr.WP_FLAG
32612                    || '_' || sub_ver.STATUS_CODE
32613                    || '_' || sup_ver.STATUS_CODE,
32614                  'Y_Y__', to_number(null),
32615                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32616                  pjp1.BRDN_COST)                      BRDN_COST,
32617           decode(wbs_hdr.WP_FLAG
32618                    || '_' || sup_wbs_hdr.WP_FLAG
32619                    || '_' || sub_ver.STATUS_CODE
32620                    || '_' || sup_ver.STATUS_CODE,
32621                  'Y_Y__', to_number(null),
32622                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32623                  pjp1.REVENUE)                        REVENUE,
32624           decode(wbs_hdr.WP_FLAG
32625                    || '_' || sup_wbs_hdr.WP_FLAG
32626                    || '_' || sub_ver.STATUS_CODE
32627                    || '_' || sup_ver.STATUS_CODE,
32628                  'Y_Y__', to_number(null),
32629                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32630                  pjp1.BILL_RAW_COST)                  BILL_RAW_COST,
32631           decode(wbs_hdr.WP_FLAG
32632                    || '_' || sup_wbs_hdr.WP_FLAG
32633                    || '_' || sub_ver.STATUS_CODE
32634                    || '_' || sup_ver.STATUS_CODE,
32635                  'Y_Y__', to_number(null),
32636                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32637                  pjp1.BILL_BRDN_COST)                 BILL_BRDN_COST,
32638           decode(wbs_hdr.WP_FLAG
32639                    || '_' || sup_wbs_hdr.WP_FLAG
32640                    || '_' || sub_ver.STATUS_CODE
32641                    || '_' || sup_ver.STATUS_CODE,
32642                  'Y_Y__', to_number(null),
32643                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32644                  pjp1.BILL_LABOR_RAW_COST)            BILL_LABOR_RAW_COST,
32645           decode(wbs_hdr.WP_FLAG
32646                    || '_' || sup_wbs_hdr.WP_FLAG
32647                    || '_' || sub_ver.STATUS_CODE
32648                    || '_' || sup_ver.STATUS_CODE,
32649                  'Y_Y__', to_number(null),
32650                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32651                  pjp1.BILL_LABOR_BRDN_COST)           BILL_LABOR_BRDN_COST,
32652           decode(wbs_hdr.WP_FLAG
32653                    || '_' || sup_wbs_hdr.WP_FLAG
32654                    || '_' || sub_ver.STATUS_CODE
32655                    || '_' || sup_ver.STATUS_CODE,
32656                  'Y_Y__', to_number(null),
32657                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32658                  pjp1.BILL_LABOR_HRS)                 BILL_LABOR_HRS,
32659           decode(wbs_hdr.WP_FLAG
32660                    || '_' || sup_wbs_hdr.WP_FLAG
32661                    || '_' || sub_ver.STATUS_CODE
32662                    || '_' || sup_ver.STATUS_CODE,
32663                  'Y_Y__', to_number(null),
32664                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32665                  pjp1.EQUIPMENT_RAW_COST)             EQUIPMENT_RAW_COST,
32666           decode(wbs_hdr.WP_FLAG
32667                    || '_' || sup_wbs_hdr.WP_FLAG
32668                    || '_' || sub_ver.STATUS_CODE
32669                    || '_' || sup_ver.STATUS_CODE,
32670                  'Y_Y__', to_number(null),
32671                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32672                  pjp1.EQUIPMENT_BRDN_COST)            EQUIPMENT_BRDN_COST,
32673           decode(wbs_hdr.WP_FLAG
32674                    || '_' || sup_wbs_hdr.WP_FLAG
32675                    || '_' || sub_ver.STATUS_CODE
32676                    || '_' || sup_ver.STATUS_CODE,
32677                  'Y_Y__', to_number(null),
32678                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32679                  pjp1.CAPITALIZABLE_RAW_COST)         CAPITALIZABLE_RAW_COST,
32680           decode(wbs_hdr.WP_FLAG
32681                    || '_' || sup_wbs_hdr.WP_FLAG
32682                    || '_' || sub_ver.STATUS_CODE
32683                    || '_' || sup_ver.STATUS_CODE,
32684                  'Y_Y__', to_number(null),
32685                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32686                  pjp1.CAPITALIZABLE_BRDN_COST)        CAPITALIZABLE_BRDN_COST,
32687           decode(wbs_hdr.WP_FLAG
32688                    || '_' || sup_wbs_hdr.WP_FLAG
32689                    || '_' || sub_ver.STATUS_CODE
32690                    || '_' || sup_ver.STATUS_CODE,
32691                  'Y_Y__', to_number(null),
32692                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32693                  pjp1.LABOR_RAW_COST)                 LABOR_RAW_COST,
32694           decode(wbs_hdr.WP_FLAG
32695                    || '_' || sup_wbs_hdr.WP_FLAG
32696                    || '_' || sub_ver.STATUS_CODE
32697                    || '_' || sup_ver.STATUS_CODE,
32698                  'Y_Y__', to_number(null),
32699                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32700                  pjp1.LABOR_BRDN_COST)                LABOR_BRDN_COST,
32701           decode(wbs_hdr.WP_FLAG
32702                    || '_' || sup_wbs_hdr.WP_FLAG
32703                    || '_' || sub_ver.STATUS_CODE
32704                    || '_' || sup_ver.STATUS_CODE,
32705                  'Y_Y__', to_number(null),
32706                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32707                  pjp1.LABOR_HRS)                      LABOR_HRS,
32708           decode(wbs_hdr.WP_FLAG
32709                    || '_' || sup_wbs_hdr.WP_FLAG
32710                    || '_' || sub_ver.STATUS_CODE
32711                    || '_' || sup_ver.STATUS_CODE,
32712                  'Y_Y__', to_number(null),
32713                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32714                  pjp1.LABOR_REVENUE)                  LABOR_REVENUE,
32715           decode(wbs_hdr.WP_FLAG
32716                    || '_' || sup_wbs_hdr.WP_FLAG
32717                    || '_' || sub_ver.STATUS_CODE
32718                    || '_' || sup_ver.STATUS_CODE,
32719                  'Y_Y__', to_number(null),
32720                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32721                  pjp1.EQUIPMENT_HOURS)                EQUIPMENT_HOURS,
32722           decode(wbs_hdr.WP_FLAG
32723                    || '_' || sup_wbs_hdr.WP_FLAG
32724                    || '_' || sub_ver.STATUS_CODE
32725                    || '_' || sup_ver.STATUS_CODE,
32726                  'Y_Y__', to_number(null),
32727                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32728                  pjp1.BILLABLE_EQUIPMENT_HOURS)       BILLABLE_EQUIPMENT_HOURS,
32729           decode(wbs_hdr.WP_FLAG
32730                    || '_' || sup_wbs_hdr.WP_FLAG
32731                    || '_' || sub_ver.STATUS_CODE
32732                    || '_' || sup_ver.STATUS_CODE,
32733                  'Y_Y__', to_number(null),
32734                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32735                  pjp1.SUP_INV_COMMITTED_COST)         SUP_INV_COMMITTED_COST,
32736           decode(wbs_hdr.WP_FLAG
32737                    || '_' || sup_wbs_hdr.WP_FLAG
32738                    || '_' || sub_ver.STATUS_CODE
32739                    || '_' || sup_ver.STATUS_CODE,
32740                  'Y_Y__', to_number(null),
32741                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32742                  pjp1.PO_COMMITTED_COST)              PO_COMMITTED_COST,
32743           decode(wbs_hdr.WP_FLAG
32744                    || '_' || sup_wbs_hdr.WP_FLAG
32745                    || '_' || sub_ver.STATUS_CODE
32746                    || '_' || sup_ver.STATUS_CODE,
32747                  'Y_Y__', to_number(null),
32748                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32749                  pjp1.PR_COMMITTED_COST)              PR_COMMITTED_COST,
32750           decode(wbs_hdr.WP_FLAG
32751                    || '_' || sup_wbs_hdr.WP_FLAG
32752                    || '_' || sub_ver.STATUS_CODE
32753                    || '_' || sup_ver.STATUS_CODE,
32754                  'Y_Y__', to_number(null),
32755                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
32756                  pjp1.OTH_COMMITTED_COST)             OTH_COMMITTED_COST,
32757           decode(wbs_hdr.WP_FLAG
32758                    || '_' || sup_wbs_hdr.WP_FLAG
32759                    || '_' || sup_ver.STATUS_CODE,
32760                  'Y_Y_', to_number(null),
32761                  pjp1.ACT_LABOR_HRS)                  ACT_LABOR_HRS,
32762           decode(wbs_hdr.WP_FLAG
32763                    || '_' || sup_wbs_hdr.WP_FLAG
32764                    || '_' || sup_ver.STATUS_CODE,
32765                  'Y_Y_', to_number(null),
32766                  pjp1.ACT_EQUIP_HRS)                  ACT_EQUIP_HRS,
32767           decode(wbs_hdr.WP_FLAG
32768                    || '_' || sup_wbs_hdr.WP_FLAG
32769                    || '_' || sup_ver.STATUS_CODE,
32770                  'Y_Y_', to_number(null),
32771                  pjp1.ACT_LABOR_BRDN_COST)            ACT_LABOR_BRDN_COST,
32772           decode(wbs_hdr.WP_FLAG
32773                    || '_' || sup_wbs_hdr.WP_FLAG
32774                    || '_' || sup_ver.STATUS_CODE,
32775                  'Y_Y_', to_number(null),
32776                  pjp1.ACT_EQUIP_BRDN_COST)            ACT_EQUIP_BRDN_COST,
32777           decode(wbs_hdr.WP_FLAG
32778                    || '_' || sup_wbs_hdr.WP_FLAG
32779                    || '_' || sup_ver.STATUS_CODE,
32780                  'Y_Y_', to_number(null),
32781                  pjp1.ACT_BRDN_COST)                  ACT_BRDN_COST,
32782           decode(wbs_hdr.WP_FLAG
32783                    || '_' || sup_wbs_hdr.WP_FLAG
32784                    || '_' || sup_ver.STATUS_CODE,
32785                  'Y_Y_', to_number(null),
32786                  pjp1.ACT_RAW_COST)                   ACT_RAW_COST,
32787           decode(wbs_hdr.WP_FLAG
32788                    || '_' || sup_wbs_hdr.WP_FLAG
32789                    || '_' || sup_ver.STATUS_CODE,
32790                  'Y_Y_', to_number(null),
32791                  pjp1.ACT_REVENUE)                    ACT_REVENUE,
32792           decode(wbs_hdr.WP_FLAG
32793                    || '_' || sup_wbs_hdr.WP_FLAG
32794                    || '_' || sup_ver.STATUS_CODE,
32795                  'Y_Y_', to_number(null),
32796                  pjp1.ACT_LABOR_RAW_COST)             ACT_LABOR_RAW_COST,
32797           decode(wbs_hdr.WP_FLAG
32798                    || '_' || sup_wbs_hdr.WP_FLAG
32799                    || '_' || sup_ver.STATUS_CODE,
32800                  'Y_Y_', to_number(null),
32801                  pjp1.ACT_EQUIP_RAW_COST)             ACT_EQUIP_RAW_COST,
32802           decode(wbs_hdr.WP_FLAG
32803                    || '_' || sup_wbs_hdr.WP_FLAG
32804                    || '_' || sup_ver.STATUS_CODE,
32805                  'Y_Y_', to_number(null),
32806                  pjp1.ETC_LABOR_HRS)                  ETC_LABOR_HRS,
32807           decode(wbs_hdr.WP_FLAG
32808                    || '_' || sup_wbs_hdr.WP_FLAG
32809                    || '_' || sup_ver.STATUS_CODE,
32810                  'Y_Y_', to_number(null),
32811                  pjp1.ETC_EQUIP_HRS)                  ETC_EQUIP_HRS,
32812           decode(wbs_hdr.WP_FLAG
32813                    || '_' || sup_wbs_hdr.WP_FLAG
32814                    || '_' || sup_ver.STATUS_CODE,
32815                  'Y_Y_', to_number(null),
32816                  pjp1.ETC_LABOR_BRDN_COST)            ETC_LABOR_BRDN_COST,
32817           decode(wbs_hdr.WP_FLAG
32818                    || '_' || sup_wbs_hdr.WP_FLAG
32819                    || '_' || sup_ver.STATUS_CODE,
32820                  'Y_Y_', to_number(null),
32821                  pjp1.ETC_EQUIP_BRDN_COST)            ETC_EQUIP_BRDN_COST,
32822           decode(wbs_hdr.WP_FLAG
32823                    || '_' || sup_wbs_hdr.WP_FLAG
32824                    || '_' || sup_ver.STATUS_CODE,
32825                  'Y_Y_', to_number(null),
32826                  pjp1.ETC_BRDN_COST)                  ETC_BRDN_COST,
32827           decode(wbs_hdr.WP_FLAG
32828                    || '_' || sup_wbs_hdr.WP_FLAG
32829                    || '_' || sup_ver.STATUS_CODE,
32830                  'Y_Y_', to_number(null),
32831                  pjp1.ETC_RAW_COST)                   ETC_RAW_COST,
32832           decode(wbs_hdr.WP_FLAG
32833                    || '_' || sup_wbs_hdr.WP_FLAG
32834                    || '_' || sup_ver.STATUS_CODE,
32835                  'Y_Y_', to_number(null),
32836                  pjp1.ETC_LABOR_RAW_COST)             ETC_LABOR_RAW_COST,
32837           decode(wbs_hdr.WP_FLAG
32838                    || '_' || sup_wbs_hdr.WP_FLAG
32839                    || '_' || sup_ver.STATUS_CODE,
32840                  'Y_Y_', to_number(null),
32841                  pjp1.ETC_EQUIP_RAW_COST)             ETC_EQUIP_RAW_COST,
32842           pjp1.CUSTOM1,
32843           pjp1.CUSTOM2,
32844           pjp1.CUSTOM3,
32845           pjp1.CUSTOM4,
32846           pjp1.CUSTOM5,
32847           pjp1.CUSTOM6,
32848           pjp1.CUSTOM7,
32849           pjp1.CUSTOM8,
32850           pjp1.CUSTOM9,
32851           pjp1.CUSTOM10,
32852           pjp1.CUSTOM11,
32853           pjp1.CUSTOM12,
32854           pjp1.CUSTOM13,
32855           pjp1.CUSTOM14,
32856           pjp1.CUSTOM15
32857         from
32858           PJI_FP_AGGR_PJP1           pjp1,
32859           PJI_PJP_WBS_HEADER         wbs_hdr,
32860           PA_PROJ_ELEMENTS           prj_emt,
32861           PA_XBS_DENORM              prg,
32862           PJI_XBS_DENORM_DELTA       prg_delta,
32863           PJI_PJP_WBS_HEADER         sup_wbs_hdr,
32864           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
32865           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
32866           (
32867             select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID
32868             from DUAL union all
32869             select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID
32870             from DUAL union all
32871             select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID
32872             from DUAL union all
32873             select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID
32874             from DUAL
32875           ) fin_plan
32876         where
32877           prg.STRUCT_TYPE            =  'PRG'                           and
32878           prg.SUP_LEVEL              =  l_level                         and
32879           nvl(prg.SUB_ROLLUP_ID,
32880               prg.SUP_EMT_ID)        <> prg.SUP_EMT_ID                  and
32881           p_worker_id                =  prg_delta.WORKER_ID         (+) and
32882           prg.STRUCT_TYPE            =  prg_delta.STRUCT_TYPE       (+) and
32883           prg.SUP_PROJECT_ID         =  prg_delta.SUP_PROJECT_ID    (+) and
32884           prg.SUP_LEVEL              =  prg_delta.SUP_LEVEL         (+) and
32885           prg.SUP_ID                 =  prg_delta.SUP_ID            (+) and
32886           prg.SUB_LEVEL              =  prg_delta.SUB_LEVEL         (+) and
32887           prg.SUB_ID                 =  prg_delta.SUB_ID            (+) and
32888           prg.RELATIONSHIP_TYPE      =  prg_delta.RELATIONSHIP_TYPE (+) and
32889           1                          =  prg_delta.SIGN              (+) and
32890           (prg_delta.SUP_PROJECT_ID is not null or
32891            (prg_delta.SUP_PROJECT_ID is null and
32892             pjp1.RECORD_TYPE = 'P'))                                    and
32893           pjp1.WORKER_ID             =  p_worker_id                     and
32894           pjp1.PRG_LEVEL             in (0, prg.SUB_LEVEL)              and
32895           pjp1.PROJECT_ID            =  prj_emt.PROJECT_ID              and
32896           (((pjp1.RBS_AGGR_LEVEL,
32897              pjp1.WBS_ROLLUP_FLAG,
32898              pjp1.PRG_ROLLUP_FLAG) in (('T', 'Y', 'Y'),
32899                                        ('T', 'Y', 'N'),
32900                                        ('T', 'N', 'Y'),
32901                                        ('T', 'N', 'N'),
32902                                        ('L', 'N', 'N')) and
32903              pjp1.PROJECT_ELEMENT_ID = prg.SUB_EMT_ID) or
32904            ((pjp1.RBS_AGGR_LEVEL,
32905              pjp1.WBS_ROLLUP_FLAG,
32906              pjp1.PRG_ROLLUP_FLAG) in (('L', 'N', 'Y'),
32907                                        ('L', 'N', 'N')) and
32908              pjp1.PROJECT_ELEMENT_ID <> prg.SUB_EMT_ID))                and
32909           decode(pjp1.PLAN_VERSION_ID,
32910                  -1, 'LF',
32911                  -2, 'LF',
32912                  -3, 'LF',
32913                  -4, 'LF',
32914                      decode(wbs_hdr.WP_FLAG,
32915                             'N', 'LF',
32916                               'LW')) =  prg.RELATIONSHIP_TYPE           and
32917           prg.STRUCT_VERSION_ID      is null                            and
32918           prj_emt.OBJECT_TYPE        =  'PA_STRUCTURES'                 and
32919           prj_emt.PROJ_ELEMENT_ID    =  prg.SUB_EMT_ID                  and
32920           wbs_hdr.PROJECT_ID         =  prj_emt.PROJECT_ID              and
32921           wbs_hdr.WBS_VERSION_ID     =  prg.SUB_ID                      and
32922           wbs_hdr.PROJECT_ID         =  pjp1.PROJECT_ID                 and
32923           wbs_hdr.PLAN_VERSION_ID    =  pjp1.PLAN_VERSION_ID            and
32924           wbs_hdr.PLAN_TYPE_CODE     =  pjp1.PLAN_TYPE_CODE             and
32925           decode(pjp1.PLAN_VERSION_ID,
32926                  -3, pjp1.PLAN_TYPE_ID,
32927                  -4, pjp1.PLAN_TYPE_ID,
32928                      -1)             =  decode(pjp1.PLAN_VERSION_ID,
32929                                                -3, wbs_hdr.PLAN_TYPE_ID,
32930                                                -4, wbs_hdr.PLAN_TYPE_ID,
32931                                                    -1)                  and
32932           decode(wbs_hdr.WP_FLAG,
32933                  'N', decode(pjp1.PLAN_VERSION_ID,
32934                              -1, 'Y',
32935                              -2, 'Y',
32936                              -3, 'Y',
32937                              -4, 'Y',
32938                                  decode(pjp1.RBS_AGGR_LEVEL
32939                                           || '_' || wbs_hdr.CB_FLAG
32940                                           || '_' || wbs_hdr.CO_FLAG,
32941                                         'L_Y_Y', 'Y',
32942                                         'L_N_Y', 'Y',
32943                                         'L_Y_N', 'Y',
32944                                                  'N')),
32945                       'Y')           =  'Y'                             and
32946           prg.SUP_PROJECT_ID         =  sup_wbs_hdr.PROJECT_ID      (+) and
32947           prg.SUP_ID                 =  sup_wbs_hdr.WBS_VERSION_ID  (+) and
32948           'Y'                        =  sup_wbs_hdr.WP_FLAG         (+) and
32949           wbs_hdr.PROJECT_ID         =  sub_ver.PROJECT_ID          (+) and
32950           wbs_hdr.WBS_VERSION_ID     =  sub_ver.ELEMENT_VERSION_ID  (+) and
32951           'STRUCTURE_PUBLISHED'      =  sub_ver.STATUS_CODE         (+) and
32952           sup_wbs_hdr.PROJECT_ID     =  sup_ver.PROJECT_ID          (+) and
32953           sup_wbs_hdr.WBS_VERSION_ID =  sup_ver.ELEMENT_VERSION_ID  (+) and
32954           'STRUCTURE_PUBLISHED'      =  sup_ver.STATUS_CODE         (+) and
32955           wbs_hdr.CB_FLAG            =  fin_plan.CB                 (+) and
32956           wbs_hdr.CO_FLAG            =  fin_plan.CO                 (+)
32957         )                          pjp,
32958         PJI_PJP_PROJ_BATCH_MAP     map,
32959         PA_PROJ_WORKPLAN_ATTR      sup_wpa,
32960         PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
32961         PA_XBS_DENORM              wbs,
32962         (
32963           select 1     WBS_SUP_LEVEL,
32964                  'PRJ' INVERT_ID
32965           from   DUAL
32966           union all
32967           select 1     WBS_SUP_LEVEL,
32968                  'WBS' INVERT_ID
32969           from   DUAL
32970         ) top_slice
32971       where
32972         map.WORKER_ID           = p_worker_id                         and
32973         map.PROJECT_ID          = pjp.SUP_PROJECT_ID                  and
32974         pjp.SUP_EMT_ID          = sup_wpa.PROJ_ELEMENT_ID             and
32975         pjp.SUP_PROJECT_ID      = sup_fin_ver.PROJECT_ID          (+) and
32976         pjp.SUP_ID              = sup_fin_ver.ELEMENT_VERSION_ID  (+) and
32977         'STRUCTURE_WORKING'     = sup_fin_ver.STATUS_CODE         (+) and
32978         (pjp.SUP_WP_FLAG is null or
32979          (pjp.SUP_WP_FLAG is not null and
32980           (sup_fin_ver.PROJECT_ID is not null or
32981            sup_wpa.WP_ENABLE_VERSION_FLAG = 'N')))                    and
32982         'WBS'                   = wbs.STRUCT_TYPE                 (+) and
32983         pjp.STRUCT_TYPE         = wbs.STRUCT_TYPE                 (+) and
32984         pjp.SUP_PROJECT_ID      = wbs.SUP_PROJECT_ID              (+) and
32985         pjp.SUP_ID              = wbs.STRUCT_VERSION_ID           (+) and
32986         pjp.SUB_ROLLUP_ID       = wbs.SUB_EMT_ID                  (+) and
32987         wbs.SUP_LEVEL           = top_slice.WBS_SUP_LEVEL         (+)
32988       group by
32989         pjp.LINE_TYPE,
32990         pjp.SUP_PROJECT_ID,
32991         map.PROJECT_ORG_ID,
32992         map.PROJECT_ORGANIZATION_ID,
32993         decode(pjp.STRUCT_TYPE,
32994                'DO_NOT_ROLLUP', pjp.SUB_ROLLUP_ID,
32995                                 decode(top_slice.INVERT_ID,
32996                                        'PRJ', pjp.SUP_EMT_ID, wbs.SUP_EMT_ID)
32997               ),
32998         pjp.TIME_ID,
32999         pjp.PERIOD_TYPE_ID,
33000         pjp.CALENDAR_TYPE,
33001         pjp.RBS_AGGR_LEVEL,
33002         decode(pjp.STRUCT_TYPE,
33003                'DO_NOT_ROLLUP', 'N',
33004                                 decode(top_slice.INVERT_ID,
33005                                        'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
33006                                                           wbs.SUP_EMT_ID,
33007                                                           'N', 'Y'))
33008               ),
33009         pjp.CURR_RECORD_TYPE_ID,
33010         pjp.CURRENCY_CODE,
33011         pjp.RBS_ELEMENT_ID,
33012         pjp.RBS_VERSION_ID,
33013         pjp.PLAN_VERSION_ID,
33014         pjp.PLAN_TYPE_ID,
33015         pjp.PLAN_TYPE_CODE;
33016     elsif (p_worker_id =7) then
33017       -- Query for Partition 7
33018 
33019         insert /*+ parallel(PJI_FP_AGGR_PJP1) */
33020                    into PJI_FP_AGGR_PJP1 partition(P7)
33021       (
33022         WORKER_ID,
33023         RECORD_TYPE,
33024         PRG_LEVEL,
33025         LINE_TYPE,
33026         PROJECT_ID,
33027         PROJECT_ORG_ID,
33028         PROJECT_ORGANIZATION_ID,
33029         PROJECT_ELEMENT_ID,
33030         TIME_ID,
33031         PERIOD_TYPE_ID,
33032         CALENDAR_TYPE,
33033         RBS_AGGR_LEVEL,
33034         WBS_ROLLUP_FLAG,
33035         PRG_ROLLUP_FLAG,
33036         CURR_RECORD_TYPE_ID,
33037         CURRENCY_CODE,
33038         RBS_ELEMENT_ID,
33039         RBS_VERSION_ID,
33040         PLAN_VERSION_ID,
33041         PLAN_TYPE_ID,
33042         PLAN_TYPE_CODE,
33043         RAW_COST,
33044         BRDN_COST,
33045         REVENUE,
33046         BILL_RAW_COST,
33047         BILL_BRDN_COST,
33048         BILL_LABOR_RAW_COST,
33049         BILL_LABOR_BRDN_COST,
33050         BILL_LABOR_HRS,
33051         EQUIPMENT_RAW_COST,
33052         EQUIPMENT_BRDN_COST,
33053         CAPITALIZABLE_RAW_COST,
33054         CAPITALIZABLE_BRDN_COST,
33055         LABOR_RAW_COST,
33056         LABOR_BRDN_COST,
33057         LABOR_HRS,
33058         LABOR_REVENUE,
33059         EQUIPMENT_HOURS,
33060         BILLABLE_EQUIPMENT_HOURS,
33061         SUP_INV_COMMITTED_COST,
33062         PO_COMMITTED_COST,
33063         PR_COMMITTED_COST,
33064         OTH_COMMITTED_COST,
33065         ACT_LABOR_HRS,
33066         ACT_EQUIP_HRS,
33067         ACT_LABOR_BRDN_COST,
33068         ACT_EQUIP_BRDN_COST,
33069         ACT_BRDN_COST,
33070         ACT_RAW_COST,
33071         ACT_REVENUE,
33072         ACT_LABOR_RAW_COST,
33073         ACT_EQUIP_RAW_COST,
33074         ETC_LABOR_HRS,
33075         ETC_EQUIP_HRS,
33076         ETC_LABOR_BRDN_COST,
33077         ETC_EQUIP_BRDN_COST,
33078         ETC_BRDN_COST,
33079         ETC_RAW_COST,
33080         ETC_LABOR_RAW_COST,
33081         ETC_EQUIP_RAW_COST,
33082         CUSTOM1,
33083         CUSTOM2,
33084         CUSTOM3,
33085         CUSTOM4,
33086         CUSTOM5,
33087         CUSTOM6,
33088         CUSTOM7,
33089         CUSTOM8,
33090         CUSTOM9,
33091         CUSTOM10,
33092         CUSTOM11,
33093         CUSTOM12,
33094         CUSTOM13,
33095         CUSTOM14,
33096         CUSTOM15
33097       )
33098       select /*+ no_merge(pjp) */
33099         p_worker_id                                   WORKER_ID,
33100         'P'                                           RECORD_TYPE,
33101         l_level                                       PRG_LEVEL,
33102         pjp.LINE_TYPE,
33103         pjp.SUP_PROJECT_ID                            PROJECT_ID,
33104         map.PROJECT_ORG_ID,
33105         map.PROJECT_ORGANIZATION_ID,
33106         decode(pjp.STRUCT_TYPE,
33107                'DO_NOT_ROLLUP', pjp.SUB_ROLLUP_ID,
33108                                 decode(top_slice.INVERT_ID,
33109                                        'PRJ', pjp.SUP_EMT_ID, wbs.SUP_EMT_ID)
33110               )                                       PROJECT_ELEMENT_ID,
33111         pjp.TIME_ID,
33112         pjp.PERIOD_TYPE_ID,
33113         pjp.CALENDAR_TYPE,
33114         pjp.RBS_AGGR_LEVEL,
33115         decode(pjp.STRUCT_TYPE,
33116                'DO_NOT_ROLLUP', 'N',
33117                                 decode(top_slice.INVERT_ID,
33118                                        'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
33119                                                           wbs.SUP_EMT_ID,
33120                                                           'N', 'Y'))
33121               )                                       WBS_ROLLUP_FLAG,
33122         'Y'                                           PRG_ROLLUP_FLAG,
33123         pjp.CURR_RECORD_TYPE_ID,
33124         pjp.CURRENCY_CODE,
33125         pjp.RBS_ELEMENT_ID,
33126         pjp.RBS_VERSION_ID,
33127         pjp.PLAN_VERSION_ID,
33128         pjp.PLAN_TYPE_ID,
33129         pjp.PLAN_TYPE_CODE,
33130         sum(pjp.RAW_COST)                             RAW_COST,
33131         sum(pjp.BRDN_COST)                            BRDN_COST,
33132         sum(pjp.REVENUE)                              REVENUE,
33133         sum(pjp.BILL_RAW_COST)                        BILL_RAW_COST,
33134         sum(pjp.BILL_BRDN_COST)                       BILL_BRDN_COST,
33135         sum(pjp.BILL_LABOR_RAW_COST)                  BILL_LABOR_RAW_COST,
33136         sum(pjp.BILL_LABOR_BRDN_COST)                 BILL_LABOR_BRDN_COST,
33137         sum(pjp.BILL_LABOR_HRS)                       BILL_LABOR_HRS,
33138         sum(pjp.EQUIPMENT_RAW_COST)                   EQUIPMENT_RAW_COST,
33139         sum(pjp.EQUIPMENT_BRDN_COST)                  EQUIPMENT_BRDN_COST,
33140         sum(pjp.CAPITALIZABLE_RAW_COST)               CAPITALIZABLE_RAW_COST,
33141         sum(pjp.CAPITALIZABLE_BRDN_COST)              CAPITALIZABLE_BRDN_COST,
33142         sum(pjp.LABOR_RAW_COST)                       LABOR_RAW_COST,
33143         sum(pjp.LABOR_BRDN_COST)                      LABOR_BRDN_COST,
33144         sum(pjp.LABOR_HRS)                            LABOR_HRS,
33145         sum(pjp.LABOR_REVENUE)                        LABOR_REVENUE,
33146         sum(pjp.EQUIPMENT_HOURS)                      EQUIPMENT_HOURS,
33147         sum(pjp.BILLABLE_EQUIPMENT_HOURS)             BILLABLE_EQUIPMENT_HOURS,
33148         sum(pjp.SUP_INV_COMMITTED_COST)               SUP_INV_COMMITTED_COST,
33149         sum(pjp.PO_COMMITTED_COST)                    PO_COMMITTED_COST,
33150         sum(pjp.PR_COMMITTED_COST)                    PR_COMMITTED_COST,
33151         sum(pjp.OTH_COMMITTED_COST)                   OTH_COMMITTED_COST,
33152         sum(pjp.ACT_LABOR_HRS)                        ACT_LABOR_HRS,
33153         sum(pjp.ACT_EQUIP_HRS)                        ACT_EQUIP_HRS,
33154         sum(pjp.ACT_LABOR_BRDN_COST)                  ACT_LABOR_BRDN_COST,
33155         sum(pjp.ACT_EQUIP_BRDN_COST)                  ACT_EQUIP_BRDN_COST,
33156         sum(pjp.ACT_BRDN_COST)                        ACT_BRDN_COST,
33157         sum(pjp.ACT_RAW_COST)                         ACT_RAW_COST,
33158         sum(pjp.ACT_REVENUE)                          ACT_REVENUE,
33159         sum(pjp.ACT_LABOR_RAW_COST)                   ACT_LABOR_RAW_COST,
33160         sum(pjp.ACT_EQUIP_RAW_COST)                   ACT_EQUIP_RAW_COST,
33161         sum(pjp.ETC_LABOR_HRS)                        ETC_LABOR_HRS,
33162         sum(pjp.ETC_EQUIP_HRS)                        ETC_EQUIP_HRS,
33163         sum(pjp.ETC_LABOR_BRDN_COST)                  ETC_LABOR_BRDN_COST,
33164         sum(pjp.ETC_EQUIP_BRDN_COST)                  ETC_EQUIP_BRDN_COST,
33165         sum(pjp.ETC_BRDN_COST)                        ETC_BRDN_COST,
33166         sum(pjp.ETC_RAW_COST)                         ETC_RAW_COST,
33167         sum(pjp.ETC_LABOR_RAW_COST)                   ETC_LABOR_RAW_COST,
33168         sum(pjp.ETC_EQUIP_RAW_COST)                   ETC_EQUIP_RAW_COST,
33169         sum(pjp.CUSTOM1)                              CUSTOM1,
33170         sum(pjp.CUSTOM2)                              CUSTOM2,
33171         sum(pjp.CUSTOM3)                              CUSTOM3,
33172         sum(pjp.CUSTOM4)                              CUSTOM4,
33173         sum(pjp.CUSTOM5)                              CUSTOM5,
33174         sum(pjp.CUSTOM6)                              CUSTOM6,
33175         sum(pjp.CUSTOM7)                              CUSTOM7,
33176         sum(pjp.CUSTOM8)                              CUSTOM8,
33177         sum(pjp.CUSTOM9)                              CUSTOM9,
33178         sum(pjp.CUSTOM10)                             CUSTOM10,
33179         sum(pjp.CUSTOM11)                             CUSTOM11,
33180         sum(pjp.CUSTOM12)                             CUSTOM12,
33181         sum(pjp.CUSTOM13)                             CUSTOM13,
33182         sum(pjp.CUSTOM14)                             CUSTOM14,
33183         sum(pjp.CUSTOM15)                             CUSTOM15
33184       from
33185         (
33186         select /*+ ordered index(fpr PJI_FP_XBS_ACCUM_F_N1) */
33187                -- get structure level amounts from Reporting Lines
33188           decode(fpr.RBS_AGGR_LEVEL,
33189                  'L', 'DO_NOT_ROLLUP',
33190                       'WBS')                          STRUCT_TYPE,
33191           to_char(null)                               LINE_TYPE,
33192           prg.SUP_PROJECT_ID,
33193           prg.SUP_ID,
33194           prg.SUP_EMT_ID,
33195           prg.SUB_EMT_ID,
33196           prg.SUB_ROLLUP_ID,
33197           'FPR'                                       LINE_SOURCE,
33198           decode(fpr.PLAN_VERSION_ID,
33199                  -1, prg.SUB_ID,
33200                  -3, prg.SUB_ID,
33201                  -4, prg.SUB_ID,
33202                      decode(fin_plan.PLAN_VERSION_ID,
33203                             null, null,
33204                                   prg.SUB_ID))        SUB_ID,
33205           decode(fpr.PLAN_VERSION_ID,
33206                  -1, 'N',
33207                  -3, 'N',
33208                  -4, 'N',
33209                      decode(fin_plan.PLAN_VERSION_ID,
33210                             null, null,
33211                                   'N'))               SUP_WP_FLAG,
33212           decode(fpr.PLAN_VERSION_ID,
33213                  -1, fpr.PLAN_VERSION_ID,
33214                  -3, fpr.PLAN_VERSION_ID,
33215                  -4, fpr.PLAN_VERSION_ID,
33216                      decode(fin_plan.PLAN_VERSION_ID,
33217                             null, null,
33218                                   fin_plan.PLAN_VERSION_ID)
33219                 )                                     SUB_PLAN_VERSION_ID,
33220           decode(fpr.PLAN_VERSION_ID,
33221                  -1, fpr.PLAN_TYPE_ID,
33222                  -3, fpr.PLAN_TYPE_ID,
33223                  -4, fpr.PLAN_TYPE_ID,
33224                      decode(fin_plan.PLAN_VERSION_ID,
33225                             null, null,
33226                                   fpr.PLAN_TYPE_ID))  SUB_PLAN_TYPE_ID,
33227           fpr.TIME_ID,
33228           fpr.PERIOD_TYPE_ID,
33229           fpr.CALENDAR_TYPE,
33230           fpr.RBS_AGGR_LEVEL,
33231           fpr.CURR_RECORD_TYPE_ID,
33232           fpr.CURRENCY_CODE,
33233           fpr.RBS_ELEMENT_ID,
33234           fpr.RBS_VERSION_ID,
33235           decode(wbs_hdr.WP_FLAG,
33236                  'N', decode(wbs_hdr.PLAN_VERSION_ID,
33237                              -1, fpr.PLAN_VERSION_ID,
33238                                  fin_plan.PLAN_VERSION_ID),
33239                       sup_wbs_hdr.PLAN_VERSION_ID)    PLAN_VERSION_ID,
33240           decode(wbs_hdr.WP_FLAG,
33241                  'N', fpr.PLAN_TYPE_ID,
33242                       sup_wbs_hdr.PLAN_TYPE_ID)       PLAN_TYPE_ID,
33243           fpr.PLAN_TYPE_CODE,
33244           decode(wbs_hdr.WP_FLAG
33245                    || '_' || sup_wbs_hdr.WP_FLAG
33246                    || '_' || sub_ver.STATUS_CODE
33247                    || '_' || sup_ver.STATUS_CODE,
33248                  'Y_Y__', to_number(null),
33249                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33250                  prg.SIGN * fpr.RAW_COST)             RAW_COST,
33251           decode(wbs_hdr.WP_FLAG
33252                    || '_' || sup_wbs_hdr.WP_FLAG
33253                    || '_' || sub_ver.STATUS_CODE
33254                    || '_' || sup_ver.STATUS_CODE,
33255                  'Y_Y__', to_number(null),
33256                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33257                  prg.SIGN * fpr.BRDN_COST)            BRDN_COST,
33258           decode(wbs_hdr.WP_FLAG
33259                    || '_' || sup_wbs_hdr.WP_FLAG
33260                    || '_' || sub_ver.STATUS_CODE
33261                    || '_' || sup_ver.STATUS_CODE,
33262                  'Y_Y__', to_number(null),
33263                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33264                  prg.SIGN * fpr.REVENUE)              REVENUE,
33265           decode(wbs_hdr.WP_FLAG
33266                    || '_' || sup_wbs_hdr.WP_FLAG
33267                    || '_' || sub_ver.STATUS_CODE
33268                    || '_' || sup_ver.STATUS_CODE,
33269                  'Y_Y__', to_number(null),
33270                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33271                  prg.SIGN * fpr.BILL_RAW_COST)        BILL_RAW_COST,
33272           decode(wbs_hdr.WP_FLAG
33273                    || '_' || sup_wbs_hdr.WP_FLAG
33274                    || '_' || sub_ver.STATUS_CODE
33275                    || '_' || sup_ver.STATUS_CODE,
33276                  'Y_Y__', to_number(null),
33277                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33278                  prg.SIGN * fpr.BILL_BRDN_COST)       BILL_BRDN_COST,
33279           decode(wbs_hdr.WP_FLAG
33280                    || '_' || sup_wbs_hdr.WP_FLAG
33281                    || '_' || sub_ver.STATUS_CODE
33282                    || '_' || sup_ver.STATUS_CODE,
33283                  'Y_Y__', to_number(null),
33284                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33285                  prg.SIGN * fpr.BILL_LABOR_RAW_COST)  BILL_LABOR_RAW_COST,
33286           decode(wbs_hdr.WP_FLAG
33287                    || '_' || sup_wbs_hdr.WP_FLAG
33288                    || '_' || sub_ver.STATUS_CODE
33289                    || '_' || sup_ver.STATUS_CODE,
33290                  'Y_Y__', to_number(null),
33291                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33292                  prg.SIGN * fpr.BILL_LABOR_BRDN_COST) BILL_LABOR_BRDN_COST,
33293           decode(wbs_hdr.WP_FLAG
33294                    || '_' || sup_wbs_hdr.WP_FLAG
33295                    || '_' || sub_ver.STATUS_CODE
33296                    || '_' || sup_ver.STATUS_CODE,
33297                  'Y_Y__', to_number(null),
33298                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33299                  prg.SIGN * fpr.BILL_LABOR_HRS)       BILL_LABOR_HRS,
33300           decode(wbs_hdr.WP_FLAG
33301                    || '_' || sup_wbs_hdr.WP_FLAG
33302                    || '_' || sub_ver.STATUS_CODE
33303                    || '_' || sup_ver.STATUS_CODE,
33304                  'Y_Y__', to_number(null),
33305                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33306                  prg.SIGN * fpr.EQUIPMENT_RAW_COST)   EQUIPMENT_RAW_COST,
33307           decode(wbs_hdr.WP_FLAG
33308                    || '_' || sup_wbs_hdr.WP_FLAG
33309                    || '_' || sub_ver.STATUS_CODE
33310                    || '_' || sup_ver.STATUS_CODE,
33311                  'Y_Y__', to_number(null),
33312                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33313                  prg.SIGN * fpr.EQUIPMENT_BRDN_COST)  EQUIPMENT_BRDN_COST,
33314           decode(wbs_hdr.WP_FLAG
33315                    || '_' || sup_wbs_hdr.WP_FLAG
33316                    || '_' || sub_ver.STATUS_CODE
33317                    || '_' || sup_ver.STATUS_CODE,
33318                  'Y_Y__', to_number(null),
33319                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33320                  prg.SIGN * fpr.CAPITALIZABLE_RAW_COST)
33321                                                       CAPITALIZABLE_RAW_COST,
33322           decode(wbs_hdr.WP_FLAG
33323                    || '_' || sup_wbs_hdr.WP_FLAG
33324                    || '_' || sub_ver.STATUS_CODE
33325                    || '_' || sup_ver.STATUS_CODE,
33326                  'Y_Y__', to_number(null),
33327                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33328                  prg.SIGN * fpr.CAPITALIZABLE_BRDN_COST)
33329                                                       CAPITALIZABLE_BRDN_COST,
33330           decode(wbs_hdr.WP_FLAG
33331                    || '_' || sup_wbs_hdr.WP_FLAG
33332                    || '_' || sub_ver.STATUS_CODE
33333                    || '_' || sup_ver.STATUS_CODE,
33334                  'Y_Y__', to_number(null),
33335                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33336                  prg.SIGN * fpr.LABOR_RAW_COST)       LABOR_RAW_COST,
33337           decode(wbs_hdr.WP_FLAG
33338                    || '_' || sup_wbs_hdr.WP_FLAG
33339                    || '_' || sub_ver.STATUS_CODE
33340                    || '_' || sup_ver.STATUS_CODE,
33341                  'Y_Y__', to_number(null),
33342                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33343                  prg.SIGN * fpr.LABOR_BRDN_COST)      LABOR_BRDN_COST,
33344           decode(wbs_hdr.WP_FLAG
33345                    || '_' || sup_wbs_hdr.WP_FLAG
33346                    || '_' || sub_ver.STATUS_CODE
33347                    || '_' || sup_ver.STATUS_CODE,
33348                  'Y_Y__', to_number(null),
33349                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33350                  prg.SIGN * fpr.LABOR_HRS)            LABOR_HRS,
33351           decode(wbs_hdr.WP_FLAG
33352                    || '_' || sup_wbs_hdr.WP_FLAG
33353                    || '_' || sub_ver.STATUS_CODE
33354                    || '_' || sup_ver.STATUS_CODE,
33355                  'Y_Y__', to_number(null),
33356                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33357                  prg.SIGN * fpr.LABOR_REVENUE)        LABOR_REVENUE,
33358           decode(wbs_hdr.WP_FLAG
33359                    || '_' || sup_wbs_hdr.WP_FLAG
33360                    || '_' || sub_ver.STATUS_CODE
33361                    || '_' || sup_ver.STATUS_CODE,
33362                  'Y_Y__', to_number(null),
33363                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33364                  prg.SIGN * fpr.EQUIPMENT_HOURS)      EQUIPMENT_HOURS,
33365           decode(wbs_hdr.WP_FLAG
33366                    || '_' || sup_wbs_hdr.WP_FLAG
33367                    || '_' || sub_ver.STATUS_CODE
33368                    || '_' || sup_ver.STATUS_CODE,
33369                  'Y_Y__', to_number(null),
33370                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33371                  prg.SIGN * fpr.BILLABLE_EQUIPMENT_HOURS)
33372                                                       BILLABLE_EQUIPMENT_HOURS,
33373           decode(wbs_hdr.WP_FLAG
33374                    || '_' || sup_wbs_hdr.WP_FLAG
33375                    || '_' || sub_ver.STATUS_CODE
33376                    || '_' || sup_ver.STATUS_CODE,
33377                  'Y_Y__', to_number(null),
33378                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33379                  prg.SIGN * fpr.SUP_INV_COMMITTED_COST)
33380                                                       SUP_INV_COMMITTED_COST,
33381           decode(wbs_hdr.WP_FLAG
33382                    || '_' || sup_wbs_hdr.WP_FLAG
33383                    || '_' || sub_ver.STATUS_CODE
33384                    || '_' || sup_ver.STATUS_CODE,
33385                  'Y_Y__', to_number(null),
33386                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33387                  prg.SIGN * fpr.PO_COMMITTED_COST)    PO_COMMITTED_COST,
33388           decode(wbs_hdr.WP_FLAG
33389                    || '_' || sup_wbs_hdr.WP_FLAG
33390                    || '_' || sub_ver.STATUS_CODE
33391                    || '_' || sup_ver.STATUS_CODE,
33392                  'Y_Y__', to_number(null),
33393                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33394                  prg.SIGN * fpr.PR_COMMITTED_COST)    PR_COMMITTED_COST,
33395           decode(wbs_hdr.WP_FLAG
33396                    || '_' || sup_wbs_hdr.WP_FLAG
33397                    || '_' || sub_ver.STATUS_CODE
33398                    || '_' || sup_ver.STATUS_CODE,
33399                  'Y_Y__', to_number(null),
33400                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33401                  prg.SIGN * fpr.OTH_COMMITTED_COST)   OTH_COMMITTED_COST,
33402           decode(wbs_hdr.WP_FLAG
33403                    || '_' || sup_wbs_hdr.WP_FLAG
33404                    || '_' || sup_ver.STATUS_CODE,
33405                  'Y_Y_', to_number(null),
33406                  prg.SIGN * fpr.ACT_LABOR_HRS)        ACT_LABOR_HRS,
33407           decode(wbs_hdr.WP_FLAG
33408                    || '_' || sup_wbs_hdr.WP_FLAG
33409                    || '_' || sup_ver.STATUS_CODE,
33410                  'Y_Y_', to_number(null),
33411                  prg.SIGN * fpr.ACT_EQUIP_HRS)        ACT_EQUIP_HRS,
33412           decode(wbs_hdr.WP_FLAG
33413                    || '_' || sup_wbs_hdr.WP_FLAG
33414                    || '_' || sup_ver.STATUS_CODE,
33415                  'Y_Y_', to_number(null),
33416                  prg.SIGN * fpr.ACT_LABOR_BRDN_COST)  ACT_LABOR_BRDN_COST,
33417           decode(wbs_hdr.WP_FLAG
33418                    || '_' || sup_wbs_hdr.WP_FLAG
33419                    || '_' || sup_ver.STATUS_CODE,
33420                  'Y_Y_', to_number(null),
33421                  prg.SIGN * fpr.ACT_EQUIP_BRDN_COST)  ACT_EQUIP_BRDN_COST,
33422           decode(wbs_hdr.WP_FLAG
33423                    || '_' || sup_wbs_hdr.WP_FLAG
33424                    || '_' || sup_ver.STATUS_CODE,
33425                  'Y_Y_', to_number(null),
33426                  prg.SIGN * fpr.ACT_BRDN_COST)        ACT_BRDN_COST,
33427           decode(wbs_hdr.WP_FLAG
33428                    || '_' || sup_wbs_hdr.WP_FLAG
33429                    || '_' || sup_ver.STATUS_CODE,
33430                  'Y_Y_', to_number(null),
33431                  prg.SIGN * fpr.ACT_RAW_COST)         ACT_RAW_COST,
33432           decode(wbs_hdr.WP_FLAG
33433                    || '_' || sup_wbs_hdr.WP_FLAG
33434                    || '_' || sup_ver.STATUS_CODE,
33435                  'Y_Y_', to_number(null),
33436                  prg.SIGN * fpr.ACT_REVENUE)          ACT_REVENUE,
33437           decode(wbs_hdr.WP_FLAG
33438                    || '_' || sup_wbs_hdr.WP_FLAG
33439                    || '_' || sup_ver.STATUS_CODE,
33440                  'Y_Y_', to_number(null),
33441                  prg.SIGN * fpr.ACT_LABOR_RAW_COST)   ACT_LABOR_RAW_COST,
33442           decode(wbs_hdr.WP_FLAG
33443                    || '_' || sup_wbs_hdr.WP_FLAG
33444                    || '_' || sup_ver.STATUS_CODE,
33445                  'Y_Y_', to_number(null),
33446                  prg.SIGN * fpr.ACT_EQUIP_RAW_COST)   ACT_EQUIP_RAW_COST,
33447           decode(wbs_hdr.WP_FLAG
33448                    || '_' || sup_wbs_hdr.WP_FLAG
33449                    || '_' || sup_ver.STATUS_CODE,
33450                  'Y_Y_', to_number(null),
33451                  prg.SIGN * fpr.ETC_LABOR_HRS)        ETC_LABOR_HRS,
33452           decode(wbs_hdr.WP_FLAG
33453                    || '_' || sup_wbs_hdr.WP_FLAG
33454                    || '_' || sup_ver.STATUS_CODE,
33455                  'Y_Y_', to_number(null),
33456                  prg.SIGN * fpr.ETC_EQUIP_HRS)        ETC_EQUIP_HRS,
33457           decode(wbs_hdr.WP_FLAG
33458                    || '_' || sup_wbs_hdr.WP_FLAG
33459                    || '_' || sup_ver.STATUS_CODE,
33460                  'Y_Y_', to_number(null),
33461                  prg.SIGN * fpr.ETC_LABOR_BRDN_COST)  ETC_LABOR_BRDN_COST,
33462           decode(wbs_hdr.WP_FLAG
33463                    || '_' || sup_wbs_hdr.WP_FLAG
33464                    || '_' || sup_ver.STATUS_CODE,
33465                  'Y_Y_', to_number(null),
33466                  prg.SIGN * fpr.ETC_EQUIP_BRDN_COST)  ETC_EQUIP_BRDN_COST,
33467           decode(wbs_hdr.WP_FLAG
33468                    || '_' || sup_wbs_hdr.WP_FLAG
33469                    || '_' || sup_ver.STATUS_CODE,
33470                  'Y_Y_', to_number(null),
33471                  prg.SIGN * fpr.ETC_BRDN_COST)        ETC_BRDN_COST,
33472           decode(wbs_hdr.WP_FLAG
33473                    || '_' || sup_wbs_hdr.WP_FLAG
33474                    || '_' || sup_ver.STATUS_CODE,
33475                  'Y_Y_', to_number(null),
33476                  prg.SIGN * fpr.ETC_RAW_COST)         ETC_RAW_COST,
33477           decode(wbs_hdr.WP_FLAG
33478                    || '_' || sup_wbs_hdr.WP_FLAG
33479                    || '_' || sup_ver.STATUS_CODE,
33480                  'Y_Y_', to_number(null),
33481                  prg.SIGN * fpr.ETC_LABOR_RAW_COST)   ETC_LABOR_RAW_COST,
33482           decode(wbs_hdr.WP_FLAG
33483                    || '_' || sup_wbs_hdr.WP_FLAG
33484                    || '_' || sup_ver.STATUS_CODE,
33485                  'Y_Y_', to_number(null),
33486                  prg.SIGN * fpr.ETC_EQUIP_RAW_COST)   ETC_EQUIP_RAW_COST,
33487           prg.SIGN * fpr.CUSTOM1                      CUSTOM1,
33488           prg.SIGN * fpr.CUSTOM2                      CUSTOM2,
33489           prg.SIGN * fpr.CUSTOM3                      CUSTOM3,
33490           prg.SIGN * fpr.CUSTOM4                      CUSTOM4,
33491           prg.SIGN * fpr.CUSTOM5                      CUSTOM5,
33492           prg.SIGN * fpr.CUSTOM6                      CUSTOM6,
33493           prg.SIGN * fpr.CUSTOM7                      CUSTOM7,
33494           prg.SIGN * fpr.CUSTOM8                      CUSTOM8,
33495           prg.SIGN * fpr.CUSTOM9                      CUSTOM9,
33496           prg.SIGN * fpr.CUSTOM10                     CUSTOM10,
33497           prg.SIGN * fpr.CUSTOM11                     CUSTOM11,
33498           prg.SIGN * fpr.CUSTOM12                     CUSTOM12,
33499           prg.SIGN * fpr.CUSTOM13                     CUSTOM13,
33500           prg.SIGN * fpr.CUSTOM14                     CUSTOM14,
33501           prg.SIGN * fpr.CUSTOM15                     CUSTOM15
33502         from
33503           PJI_XBS_DENORM_DELTA       prg,
33504           PA_PROJ_ELEMENTS           prj_emt,
33505           PJI_PJP_WBS_HEADER         wbs_hdr,
33506           PJI_FP_XBS_ACCUM_F         fpr,
33507           PJI_PJP_WBS_HEADER         sup_wbs_hdr,
33508           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
33509           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
33510           (
33511             select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID
33512             from DUAL union all
33513             select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID
33514             from DUAL union all
33515             select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID
33516             from DUAL union all
33517             select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID
33518             from DUAL
33519           ) fin_plan
33520         where
33521           prg.WORKER_ID              =  p_worker_id                    and
33522           prg.STRUCT_TYPE            =  'PRG'                          and
33523           prg.SUP_LEVEL              =  l_level                        and
33524           nvl(prg.SUB_ROLLUP_ID,
33525               prg.SUP_EMT_ID)        <> prg.SUP_EMT_ID                 and
33526           fpr.PROJECT_ID             =  prj_emt.PROJECT_ID             and
33527           (((fpr.RBS_AGGR_LEVEL,
33528              fpr.WBS_ROLLUP_FLAG,
33529              fpr.PRG_ROLLUP_FLAG) in (('T', 'Y', 'Y'),
33530                                       ('T', 'Y', 'N'),
33531                                       ('T', 'N', 'Y'),
33532                                       ('T', 'N', 'N'),
33533                                       ('L', 'N', 'N')) and
33534              fpr.PROJECT_ELEMENT_ID = prg.SUB_EMT_ID) or
33535            ((fpr.RBS_AGGR_LEVEL,
33536              fpr.WBS_ROLLUP_FLAG,
33537              fpr.PRG_ROLLUP_FLAG) in (('L', 'N', 'Y'),
33538                                       ('L', 'N', 'N')) and
33539              fpr.PROJECT_ELEMENT_ID <> prg.SUB_EMT_ID))                and
33540           decode(fpr.PLAN_VERSION_ID,
33541                  -1, 'LF',
33542                  -2, 'LF',
33543                  -3, 'LF',
33544                  -4, 'LF',
33545                      decode(wbs_hdr.WP_FLAG,
33546                             'N', 'LF',
33547                               'LW')) =  prg.RELATIONSHIP_TYPE          and
33548           prj_emt.PROJ_ELEMENT_ID    =  prg.SUB_EMT_ID                 and
33549           wbs_hdr.PROJECT_ID         =  prj_emt.PROJECT_ID             and
33550           decode(wbs_hdr.WP_FLAG,
33551                  'Y', wbs_hdr.WBS_VERSION_ID,
33552                       -1)            = decode(wbs_hdr.WP_FLAG,
33553                                               'Y', prg.SUB_ID,
33554                                                    -1)                 and
33555           wbs_hdr.PLAN_VERSION_ID    =  fpr.PLAN_VERSION_ID            and
33556           wbs_hdr.PLAN_TYPE_CODE     =  fpr.PLAN_TYPE_CODE             and
33557           decode(fpr.PLAN_VERSION_ID,
33558                  -3, fpr.PLAN_TYPE_ID,
33559                  -4, fpr.PLAN_TYPE_ID,
33560                      -1)             =  decode(fpr.PLAN_VERSION_ID,
33561                                                -3, wbs_hdr.PLAN_TYPE_ID,
33562                                                -4, wbs_hdr.PLAN_TYPE_ID,
33563                                                    -1)                 and
33564           decode(wbs_hdr.WP_FLAG,
33565                  'N', decode(fpr.PLAN_VERSION_ID,
33566                              -1, 'Y',
33567                              -2, 'Y',
33568                              -3, 'Y',
33569                              -4, 'Y',
33570                                  decode(fpr.RBS_AGGR_LEVEL
33571                                           || '_' || wbs_hdr.CB_FLAG
33572                                           || '_' || wbs_hdr.CO_FLAG,
33573                                         'L_Y_Y', 'Y',
33574                                         'L_N_Y', 'Y',
33575                                         'L_Y_N', 'Y',
33576                                                  'N')),
33577                       'Y')           =  'Y'                            and
33578           prg.SUP_PROJECT_ID         =  sup_wbs_hdr.PROJECT_ID     (+) and
33579           prg.SUP_ID                 =  sup_wbs_hdr.WBS_VERSION_ID (+) and
33580           'Y'                        =  sup_wbs_hdr.WP_FLAG        (+) and
33581           wbs_hdr.PROJECT_ID         =  sub_ver.PROJECT_ID         (+) and
33582           wbs_hdr.WBS_VERSION_ID     =  sub_ver.ELEMENT_VERSION_ID (+) and
33583           'STRUCTURE_PUBLISHED'      =  sub_ver.STATUS_CODE        (+) and
33584           sup_wbs_hdr.PROJECT_ID     =  sup_ver.PROJECT_ID         (+) and
33585           sup_wbs_hdr.WBS_VERSION_ID =  sup_ver.ELEMENT_VERSION_ID (+) and
33586           'STRUCTURE_PUBLISHED'      =  sup_ver.STATUS_CODE        (+) and
33587           wbs_hdr.CB_FLAG            =  fin_plan.CB                (+) and
33588           wbs_hdr.CO_FLAG            =  fin_plan.CO                (+)
33589         union all
33590         select /*+ ordered parallel(pjp1) */                   -- changed for bug 5927368
33591                -- get structure level amounts from interim
33592           decode(pjp1.RBS_AGGR_LEVEL,
33593                  'L', 'DO_NOT_ROLLUP',
33594                       'WBS')                          STRUCT_TYPE,
33595           to_char(null)                               LINE_TYPE,
33596           prg.SUP_PROJECT_ID,
33597           prg.SUP_ID,
33598           prg.SUP_EMT_ID,
33599           prg.SUB_EMT_ID,
33600           prg.SUB_ROLLUP_ID,
33601           'PJP1'                                      LINE_SOURCE,
33602           decode(pjp1.PLAN_VERSION_ID,
33603                  -1, prg.SUB_ID,
33604                  -3, prg.SUB_ID,
33605                  -4, prg.SUB_ID,
33606                      decode(fin_plan.PLAN_VERSION_ID,
33607                             null, null,
33608                                   prg.SUB_ID))        SUB_ID,
33609           decode(pjp1.PLAN_VERSION_ID,
33610                  -1, 'N',
33611                  -3, 'N',
33612                  -4, 'N',
33613                      decode(fin_plan.PLAN_VERSION_ID,
33614                             null, null,
33615                                   'N'))               SUP_WP_FLAG,
33616           decode(pjp1.PLAN_VERSION_ID,
33617                  -1, pjp1.PLAN_VERSION_ID,
33618                  -3, pjp1.PLAN_VERSION_ID,
33619                  -4, pjp1.PLAN_VERSION_ID,
33620                      decode(fin_plan.PLAN_VERSION_ID,
33621                             null, null,
33622                                   fin_plan.PLAN_VERSION_ID)
33623                 )                                     SUB_PLAN_VERSION_ID,
33624           decode(pjp1.PLAN_VERSION_ID,
33625                  -1, pjp1.PLAN_TYPE_ID,
33626                  -3, pjp1.PLAN_TYPE_ID,
33627                  -4, pjp1.PLAN_TYPE_ID,
33628                      decode(fin_plan.PLAN_VERSION_ID,
33629                             null, null,
33630                                   pjp1.PLAN_TYPE_ID)) SUB_PLAN_TYPE_ID,
33631           pjp1.TIME_ID,
33632           pjp1.PERIOD_TYPE_ID,
33633           pjp1.CALENDAR_TYPE,
33634           pjp1.RBS_AGGR_LEVEL,
33635           pjp1.CURR_RECORD_TYPE_ID,
33636           pjp1.CURRENCY_CODE,
33637           pjp1.RBS_ELEMENT_ID,
33638           pjp1.RBS_VERSION_ID,
33639           decode(wbs_hdr.WP_FLAG,
33640                  'N', decode(wbs_hdr.PLAN_VERSION_ID,
33641                              -1, pjp1.PLAN_VERSION_ID,
33642                                  fin_plan.PLAN_VERSION_ID),
33643                       sup_wbs_hdr.PLAN_VERSION_ID)    PLAN_VERSION_ID,
33644           decode(wbs_hdr.WP_FLAG,
33645                  'N', pjp1.PLAN_TYPE_ID,
33646                       sup_wbs_hdr.PLAN_TYPE_ID)       PLAN_TYPE_ID,
33647           pjp1.PLAN_TYPE_CODE,
33648           decode(wbs_hdr.WP_FLAG
33649                    || '_' || sup_wbs_hdr.WP_FLAG
33650                    || '_' || sub_ver.STATUS_CODE
33651                    || '_' || sup_ver.STATUS_CODE,
33652                  'Y_Y__', to_number(null),
33653                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33654                  pjp1.RAW_COST)                       RAW_COST,
33655           decode(wbs_hdr.WP_FLAG
33656                    || '_' || sup_wbs_hdr.WP_FLAG
33657                    || '_' || sub_ver.STATUS_CODE
33658                    || '_' || sup_ver.STATUS_CODE,
33659                  'Y_Y__', to_number(null),
33660                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33661                  pjp1.BRDN_COST)                      BRDN_COST,
33662           decode(wbs_hdr.WP_FLAG
33663                    || '_' || sup_wbs_hdr.WP_FLAG
33664                    || '_' || sub_ver.STATUS_CODE
33665                    || '_' || sup_ver.STATUS_CODE,
33666                  'Y_Y__', to_number(null),
33667                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33668                  pjp1.REVENUE)                        REVENUE,
33669           decode(wbs_hdr.WP_FLAG
33670                    || '_' || sup_wbs_hdr.WP_FLAG
33671                    || '_' || sub_ver.STATUS_CODE
33672                    || '_' || sup_ver.STATUS_CODE,
33673                  'Y_Y__', to_number(null),
33674                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33675                  pjp1.BILL_RAW_COST)                  BILL_RAW_COST,
33676           decode(wbs_hdr.WP_FLAG
33677                    || '_' || sup_wbs_hdr.WP_FLAG
33678                    || '_' || sub_ver.STATUS_CODE
33679                    || '_' || sup_ver.STATUS_CODE,
33680                  'Y_Y__', to_number(null),
33681                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33682                  pjp1.BILL_BRDN_COST)                 BILL_BRDN_COST,
33683           decode(wbs_hdr.WP_FLAG
33684                    || '_' || sup_wbs_hdr.WP_FLAG
33685                    || '_' || sub_ver.STATUS_CODE
33686                    || '_' || sup_ver.STATUS_CODE,
33687                  'Y_Y__', to_number(null),
33688                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33689                  pjp1.BILL_LABOR_RAW_COST)            BILL_LABOR_RAW_COST,
33690           decode(wbs_hdr.WP_FLAG
33691                    || '_' || sup_wbs_hdr.WP_FLAG
33692                    || '_' || sub_ver.STATUS_CODE
33693                    || '_' || sup_ver.STATUS_CODE,
33694                  'Y_Y__', to_number(null),
33695                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33696                  pjp1.BILL_LABOR_BRDN_COST)           BILL_LABOR_BRDN_COST,
33697           decode(wbs_hdr.WP_FLAG
33698                    || '_' || sup_wbs_hdr.WP_FLAG
33699                    || '_' || sub_ver.STATUS_CODE
33700                    || '_' || sup_ver.STATUS_CODE,
33701                  'Y_Y__', to_number(null),
33702                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33703                  pjp1.BILL_LABOR_HRS)                 BILL_LABOR_HRS,
33704           decode(wbs_hdr.WP_FLAG
33705                    || '_' || sup_wbs_hdr.WP_FLAG
33706                    || '_' || sub_ver.STATUS_CODE
33707                    || '_' || sup_ver.STATUS_CODE,
33708                  'Y_Y__', to_number(null),
33709                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33710                  pjp1.EQUIPMENT_RAW_COST)             EQUIPMENT_RAW_COST,
33711           decode(wbs_hdr.WP_FLAG
33712                    || '_' || sup_wbs_hdr.WP_FLAG
33713                    || '_' || sub_ver.STATUS_CODE
33714                    || '_' || sup_ver.STATUS_CODE,
33715                  'Y_Y__', to_number(null),
33716                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33717                  pjp1.EQUIPMENT_BRDN_COST)            EQUIPMENT_BRDN_COST,
33718           decode(wbs_hdr.WP_FLAG
33719                    || '_' || sup_wbs_hdr.WP_FLAG
33720                    || '_' || sub_ver.STATUS_CODE
33721                    || '_' || sup_ver.STATUS_CODE,
33722                  'Y_Y__', to_number(null),
33723                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33724                  pjp1.CAPITALIZABLE_RAW_COST)         CAPITALIZABLE_RAW_COST,
33725           decode(wbs_hdr.WP_FLAG
33726                    || '_' || sup_wbs_hdr.WP_FLAG
33727                    || '_' || sub_ver.STATUS_CODE
33728                    || '_' || sup_ver.STATUS_CODE,
33729                  'Y_Y__', to_number(null),
33730                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33731                  pjp1.CAPITALIZABLE_BRDN_COST)        CAPITALIZABLE_BRDN_COST,
33732           decode(wbs_hdr.WP_FLAG
33733                    || '_' || sup_wbs_hdr.WP_FLAG
33734                    || '_' || sub_ver.STATUS_CODE
33735                    || '_' || sup_ver.STATUS_CODE,
33736                  'Y_Y__', to_number(null),
33737                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33738                  pjp1.LABOR_RAW_COST)                 LABOR_RAW_COST,
33739           decode(wbs_hdr.WP_FLAG
33740                    || '_' || sup_wbs_hdr.WP_FLAG
33741                    || '_' || sub_ver.STATUS_CODE
33742                    || '_' || sup_ver.STATUS_CODE,
33743                  'Y_Y__', to_number(null),
33744                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33745                  pjp1.LABOR_BRDN_COST)                LABOR_BRDN_COST,
33746           decode(wbs_hdr.WP_FLAG
33747                    || '_' || sup_wbs_hdr.WP_FLAG
33748                    || '_' || sub_ver.STATUS_CODE
33749                    || '_' || sup_ver.STATUS_CODE,
33750                  'Y_Y__', to_number(null),
33751                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33752                  pjp1.LABOR_HRS)                      LABOR_HRS,
33753           decode(wbs_hdr.WP_FLAG
33754                    || '_' || sup_wbs_hdr.WP_FLAG
33755                    || '_' || sub_ver.STATUS_CODE
33756                    || '_' || sup_ver.STATUS_CODE,
33757                  'Y_Y__', to_number(null),
33758                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33759                  pjp1.LABOR_REVENUE)                  LABOR_REVENUE,
33760           decode(wbs_hdr.WP_FLAG
33761                    || '_' || sup_wbs_hdr.WP_FLAG
33762                    || '_' || sub_ver.STATUS_CODE
33763                    || '_' || sup_ver.STATUS_CODE,
33764                  'Y_Y__', to_number(null),
33765                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33766                  pjp1.EQUIPMENT_HOURS)                EQUIPMENT_HOURS,
33767           decode(wbs_hdr.WP_FLAG
33768                    || '_' || sup_wbs_hdr.WP_FLAG
33769                    || '_' || sub_ver.STATUS_CODE
33770                    || '_' || sup_ver.STATUS_CODE,
33771                  'Y_Y__', to_number(null),
33772                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33773                  pjp1.BILLABLE_EQUIPMENT_HOURS)       BILLABLE_EQUIPMENT_HOURS,
33774           decode(wbs_hdr.WP_FLAG
33775                    || '_' || sup_wbs_hdr.WP_FLAG
33776                    || '_' || sub_ver.STATUS_CODE
33777                    || '_' || sup_ver.STATUS_CODE,
33778                  'Y_Y__', to_number(null),
33779                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33780                  pjp1.SUP_INV_COMMITTED_COST)         SUP_INV_COMMITTED_COST,
33781           decode(wbs_hdr.WP_FLAG
33782                    || '_' || sup_wbs_hdr.WP_FLAG
33783                    || '_' || sub_ver.STATUS_CODE
33784                    || '_' || sup_ver.STATUS_CODE,
33785                  'Y_Y__', to_number(null),
33786                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33787                  pjp1.PO_COMMITTED_COST)              PO_COMMITTED_COST,
33788           decode(wbs_hdr.WP_FLAG
33789                    || '_' || sup_wbs_hdr.WP_FLAG
33790                    || '_' || sub_ver.STATUS_CODE
33791                    || '_' || sup_ver.STATUS_CODE,
33792                  'Y_Y__', to_number(null),
33793                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33794                  pjp1.PR_COMMITTED_COST)              PR_COMMITTED_COST,
33795           decode(wbs_hdr.WP_FLAG
33796                    || '_' || sup_wbs_hdr.WP_FLAG
33797                    || '_' || sub_ver.STATUS_CODE
33798                    || '_' || sup_ver.STATUS_CODE,
33799                  'Y_Y__', to_number(null),
33800                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
33801                  pjp1.OTH_COMMITTED_COST)             OTH_COMMITTED_COST,
33802           decode(wbs_hdr.WP_FLAG
33803                    || '_' || sup_wbs_hdr.WP_FLAG
33804                    || '_' || sup_ver.STATUS_CODE,
33805                  'Y_Y_', to_number(null),
33806                  pjp1.ACT_LABOR_HRS)                  ACT_LABOR_HRS,
33807           decode(wbs_hdr.WP_FLAG
33808                    || '_' || sup_wbs_hdr.WP_FLAG
33809                    || '_' || sup_ver.STATUS_CODE,
33810                  'Y_Y_', to_number(null),
33811                  pjp1.ACT_EQUIP_HRS)                  ACT_EQUIP_HRS,
33812           decode(wbs_hdr.WP_FLAG
33813                    || '_' || sup_wbs_hdr.WP_FLAG
33814                    || '_' || sup_ver.STATUS_CODE,
33815                  'Y_Y_', to_number(null),
33816                  pjp1.ACT_LABOR_BRDN_COST)            ACT_LABOR_BRDN_COST,
33817           decode(wbs_hdr.WP_FLAG
33818                    || '_' || sup_wbs_hdr.WP_FLAG
33819                    || '_' || sup_ver.STATUS_CODE,
33820                  'Y_Y_', to_number(null),
33821                  pjp1.ACT_EQUIP_BRDN_COST)            ACT_EQUIP_BRDN_COST,
33822           decode(wbs_hdr.WP_FLAG
33823                    || '_' || sup_wbs_hdr.WP_FLAG
33824                    || '_' || sup_ver.STATUS_CODE,
33825                  'Y_Y_', to_number(null),
33826                  pjp1.ACT_BRDN_COST)                  ACT_BRDN_COST,
33827           decode(wbs_hdr.WP_FLAG
33828                    || '_' || sup_wbs_hdr.WP_FLAG
33829                    || '_' || sup_ver.STATUS_CODE,
33830                  'Y_Y_', to_number(null),
33831                  pjp1.ACT_RAW_COST)                   ACT_RAW_COST,
33832           decode(wbs_hdr.WP_FLAG
33833                    || '_' || sup_wbs_hdr.WP_FLAG
33834                    || '_' || sup_ver.STATUS_CODE,
33835                  'Y_Y_', to_number(null),
33836                  pjp1.ACT_REVENUE)                    ACT_REVENUE,
33837           decode(wbs_hdr.WP_FLAG
33838                    || '_' || sup_wbs_hdr.WP_FLAG
33839                    || '_' || sup_ver.STATUS_CODE,
33840                  'Y_Y_', to_number(null),
33841                  pjp1.ACT_LABOR_RAW_COST)             ACT_LABOR_RAW_COST,
33842           decode(wbs_hdr.WP_FLAG
33843                    || '_' || sup_wbs_hdr.WP_FLAG
33844                    || '_' || sup_ver.STATUS_CODE,
33845                  'Y_Y_', to_number(null),
33846                  pjp1.ACT_EQUIP_RAW_COST)             ACT_EQUIP_RAW_COST,
33847           decode(wbs_hdr.WP_FLAG
33848                    || '_' || sup_wbs_hdr.WP_FLAG
33849                    || '_' || sup_ver.STATUS_CODE,
33850                  'Y_Y_', to_number(null),
33851                  pjp1.ETC_LABOR_HRS)                  ETC_LABOR_HRS,
33852           decode(wbs_hdr.WP_FLAG
33853                    || '_' || sup_wbs_hdr.WP_FLAG
33854                    || '_' || sup_ver.STATUS_CODE,
33855                  'Y_Y_', to_number(null),
33856                  pjp1.ETC_EQUIP_HRS)                  ETC_EQUIP_HRS,
33857           decode(wbs_hdr.WP_FLAG
33858                    || '_' || sup_wbs_hdr.WP_FLAG
33859                    || '_' || sup_ver.STATUS_CODE,
33860                  'Y_Y_', to_number(null),
33861                  pjp1.ETC_LABOR_BRDN_COST)            ETC_LABOR_BRDN_COST,
33862           decode(wbs_hdr.WP_FLAG
33863                    || '_' || sup_wbs_hdr.WP_FLAG
33864                    || '_' || sup_ver.STATUS_CODE,
33865                  'Y_Y_', to_number(null),
33866                  pjp1.ETC_EQUIP_BRDN_COST)            ETC_EQUIP_BRDN_COST,
33867           decode(wbs_hdr.WP_FLAG
33868                    || '_' || sup_wbs_hdr.WP_FLAG
33869                    || '_' || sup_ver.STATUS_CODE,
33870                  'Y_Y_', to_number(null),
33871                  pjp1.ETC_BRDN_COST)                  ETC_BRDN_COST,
33872           decode(wbs_hdr.WP_FLAG
33873                    || '_' || sup_wbs_hdr.WP_FLAG
33874                    || '_' || sup_ver.STATUS_CODE,
33875                  'Y_Y_', to_number(null),
33876                  pjp1.ETC_RAW_COST)                   ETC_RAW_COST,
33877           decode(wbs_hdr.WP_FLAG
33878                    || '_' || sup_wbs_hdr.WP_FLAG
33879                    || '_' || sup_ver.STATUS_CODE,
33880                  'Y_Y_', to_number(null),
33881                  pjp1.ETC_LABOR_RAW_COST)             ETC_LABOR_RAW_COST,
33882           decode(wbs_hdr.WP_FLAG
33883                    || '_' || sup_wbs_hdr.WP_FLAG
33884                    || '_' || sup_ver.STATUS_CODE,
33885                  'Y_Y_', to_number(null),
33886                  pjp1.ETC_EQUIP_RAW_COST)             ETC_EQUIP_RAW_COST,
33887           pjp1.CUSTOM1,
33888           pjp1.CUSTOM2,
33889           pjp1.CUSTOM3,
33890           pjp1.CUSTOM4,
33891           pjp1.CUSTOM5,
33892           pjp1.CUSTOM6,
33893           pjp1.CUSTOM7,
33894           pjp1.CUSTOM8,
33895           pjp1.CUSTOM9,
33896           pjp1.CUSTOM10,
33897           pjp1.CUSTOM11,
33898           pjp1.CUSTOM12,
33899           pjp1.CUSTOM13,
33900           pjp1.CUSTOM14,
33901           pjp1.CUSTOM15
33902         from
33903           PJI_FP_AGGR_PJP1           pjp1,
33904           PJI_PJP_WBS_HEADER         wbs_hdr,
33905           PA_PROJ_ELEMENTS           prj_emt,
33906           PA_XBS_DENORM              prg,
33907           PJI_XBS_DENORM_DELTA       prg_delta,
33908           PJI_PJP_WBS_HEADER         sup_wbs_hdr,
33909           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
33910           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
33911           (
33912             select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID
33913             from DUAL union all
33914             select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID
33915             from DUAL union all
33916             select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID
33917             from DUAL union all
33918             select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID
33919             from DUAL
33920           ) fin_plan
33921         where
33922           prg.STRUCT_TYPE            =  'PRG'                           and
33923           prg.SUP_LEVEL              =  l_level                         and
33924           nvl(prg.SUB_ROLLUP_ID,
33925               prg.SUP_EMT_ID)        <> prg.SUP_EMT_ID                  and
33926           p_worker_id                =  prg_delta.WORKER_ID         (+) and
33927           prg.STRUCT_TYPE            =  prg_delta.STRUCT_TYPE       (+) and
33928           prg.SUP_PROJECT_ID         =  prg_delta.SUP_PROJECT_ID    (+) and
33929           prg.SUP_LEVEL              =  prg_delta.SUP_LEVEL         (+) and
33930           prg.SUP_ID                 =  prg_delta.SUP_ID            (+) and
33931           prg.SUB_LEVEL              =  prg_delta.SUB_LEVEL         (+) and
33932           prg.SUB_ID                 =  prg_delta.SUB_ID            (+) and
33933           prg.RELATIONSHIP_TYPE      =  prg_delta.RELATIONSHIP_TYPE (+) and
33934           1                          =  prg_delta.SIGN              (+) and
33935           (prg_delta.SUP_PROJECT_ID is not null or
33936            (prg_delta.SUP_PROJECT_ID is null and
33937             pjp1.RECORD_TYPE = 'P'))                                    and
33938           pjp1.WORKER_ID             =  p_worker_id                     and
33939           pjp1.PRG_LEVEL             in (0, prg.SUB_LEVEL)              and
33940           pjp1.PROJECT_ID            =  prj_emt.PROJECT_ID              and
33941           (((pjp1.RBS_AGGR_LEVEL,
33942              pjp1.WBS_ROLLUP_FLAG,
33943              pjp1.PRG_ROLLUP_FLAG) in (('T', 'Y', 'Y'),
33944                                        ('T', 'Y', 'N'),
33945                                        ('T', 'N', 'Y'),
33946                                        ('T', 'N', 'N'),
33947                                        ('L', 'N', 'N')) and
33948              pjp1.PROJECT_ELEMENT_ID = prg.SUB_EMT_ID) or
33949            ((pjp1.RBS_AGGR_LEVEL,
33950              pjp1.WBS_ROLLUP_FLAG,
33951              pjp1.PRG_ROLLUP_FLAG) in (('L', 'N', 'Y'),
33952                                        ('L', 'N', 'N')) and
33953              pjp1.PROJECT_ELEMENT_ID <> prg.SUB_EMT_ID))                and
33954           decode(pjp1.PLAN_VERSION_ID,
33955                  -1, 'LF',
33956                  -2, 'LF',
33957                  -3, 'LF',
33958                  -4, 'LF',
33959                      decode(wbs_hdr.WP_FLAG,
33960                             'N', 'LF',
33961                               'LW')) =  prg.RELATIONSHIP_TYPE           and
33962           prg.STRUCT_VERSION_ID      is null                            and
33963           prj_emt.OBJECT_TYPE        =  'PA_STRUCTURES'                 and
33964           prj_emt.PROJ_ELEMENT_ID    =  prg.SUB_EMT_ID                  and
33965           wbs_hdr.PROJECT_ID         =  prj_emt.PROJECT_ID              and
33966           wbs_hdr.WBS_VERSION_ID     =  prg.SUB_ID                      and
33967           wbs_hdr.PROJECT_ID         =  pjp1.PROJECT_ID                 and
33968           wbs_hdr.PLAN_VERSION_ID    =  pjp1.PLAN_VERSION_ID            and
33969           wbs_hdr.PLAN_TYPE_CODE     =  pjp1.PLAN_TYPE_CODE             and
33970           decode(pjp1.PLAN_VERSION_ID,
33971                  -3, pjp1.PLAN_TYPE_ID,
33972                  -4, pjp1.PLAN_TYPE_ID,
33973                      -1)             =  decode(pjp1.PLAN_VERSION_ID,
33974                                                -3, wbs_hdr.PLAN_TYPE_ID,
33975                                                -4, wbs_hdr.PLAN_TYPE_ID,
33976                                                    -1)                  and
33977           decode(wbs_hdr.WP_FLAG,
33978                  'N', decode(pjp1.PLAN_VERSION_ID,
33979                              -1, 'Y',
33980                              -2, 'Y',
33981                              -3, 'Y',
33982                              -4, 'Y',
33983                                  decode(pjp1.RBS_AGGR_LEVEL
33984                                           || '_' || wbs_hdr.CB_FLAG
33985                                           || '_' || wbs_hdr.CO_FLAG,
33986                                         'L_Y_Y', 'Y',
33987                                         'L_N_Y', 'Y',
33988                                         'L_Y_N', 'Y',
33989                                                  'N')),
33990                       'Y')           =  'Y'                             and
33991           prg.SUP_PROJECT_ID         =  sup_wbs_hdr.PROJECT_ID      (+) and
33992           prg.SUP_ID                 =  sup_wbs_hdr.WBS_VERSION_ID  (+) and
33993           'Y'                        =  sup_wbs_hdr.WP_FLAG         (+) and
33994           wbs_hdr.PROJECT_ID         =  sub_ver.PROJECT_ID          (+) and
33995           wbs_hdr.WBS_VERSION_ID     =  sub_ver.ELEMENT_VERSION_ID  (+) and
33996           'STRUCTURE_PUBLISHED'      =  sub_ver.STATUS_CODE         (+) and
33997           sup_wbs_hdr.PROJECT_ID     =  sup_ver.PROJECT_ID          (+) and
33998           sup_wbs_hdr.WBS_VERSION_ID =  sup_ver.ELEMENT_VERSION_ID  (+) and
33999           'STRUCTURE_PUBLISHED'      =  sup_ver.STATUS_CODE         (+) and
34000           wbs_hdr.CB_FLAG            =  fin_plan.CB                 (+) and
34001           wbs_hdr.CO_FLAG            =  fin_plan.CO                 (+)
34002         )                          pjp,
34003         PJI_PJP_PROJ_BATCH_MAP     map,
34004         PA_PROJ_WORKPLAN_ATTR      sup_wpa,
34005         PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
34006         PA_XBS_DENORM              wbs,
34007         (
34008           select 1     WBS_SUP_LEVEL,
34009                  'PRJ' INVERT_ID
34010           from   DUAL
34011           union all
34012           select 1     WBS_SUP_LEVEL,
34013                  'WBS' INVERT_ID
34014           from   DUAL
34015         ) top_slice
34016       where
34017         map.WORKER_ID           = p_worker_id                         and
34018         map.PROJECT_ID          = pjp.SUP_PROJECT_ID                  and
34019         pjp.SUP_EMT_ID          = sup_wpa.PROJ_ELEMENT_ID             and
34020         pjp.SUP_PROJECT_ID      = sup_fin_ver.PROJECT_ID          (+) and
34021         pjp.SUP_ID              = sup_fin_ver.ELEMENT_VERSION_ID  (+) and
34022         'STRUCTURE_WORKING'     = sup_fin_ver.STATUS_CODE         (+) and
34023         (pjp.SUP_WP_FLAG is null or
34024          (pjp.SUP_WP_FLAG is not null and
34025           (sup_fin_ver.PROJECT_ID is not null or
34026            sup_wpa.WP_ENABLE_VERSION_FLAG = 'N')))                    and
34027         'WBS'                   = wbs.STRUCT_TYPE                 (+) and
34028         pjp.STRUCT_TYPE         = wbs.STRUCT_TYPE                 (+) and
34029         pjp.SUP_PROJECT_ID      = wbs.SUP_PROJECT_ID              (+) and
34030         pjp.SUP_ID              = wbs.STRUCT_VERSION_ID           (+) and
34031         pjp.SUB_ROLLUP_ID       = wbs.SUB_EMT_ID                  (+) and
34032         wbs.SUP_LEVEL           = top_slice.WBS_SUP_LEVEL         (+)
34033       group by
34034         pjp.LINE_TYPE,
34035         pjp.SUP_PROJECT_ID,
34036         map.PROJECT_ORG_ID,
34037         map.PROJECT_ORGANIZATION_ID,
34038         decode(pjp.STRUCT_TYPE,
34039                'DO_NOT_ROLLUP', pjp.SUB_ROLLUP_ID,
34040                                 decode(top_slice.INVERT_ID,
34041                                        'PRJ', pjp.SUP_EMT_ID, wbs.SUP_EMT_ID)
34042               ),
34043         pjp.TIME_ID,
34044         pjp.PERIOD_TYPE_ID,
34045         pjp.CALENDAR_TYPE,
34046         pjp.RBS_AGGR_LEVEL,
34047         decode(pjp.STRUCT_TYPE,
34048                'DO_NOT_ROLLUP', 'N',
34049                                 decode(top_slice.INVERT_ID,
34050                                        'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
34051                                                           wbs.SUP_EMT_ID,
34052                                                           'N', 'Y'))
34053               ),
34054         pjp.CURR_RECORD_TYPE_ID,
34055         pjp.CURRENCY_CODE,
34056         pjp.RBS_ELEMENT_ID,
34057         pjp.RBS_VERSION_ID,
34058         pjp.PLAN_VERSION_ID,
34059         pjp.PLAN_TYPE_ID,
34060         pjp.PLAN_TYPE_CODE;
34061     elsif (p_worker_id =8) then
34062       -- Query for Partition 8
34063 
34064         insert /*+ parallel(PJI_FP_AGGR_PJP1) */
34065                    into PJI_FP_AGGR_PJP1 partition(P8)
34066       (
34067         WORKER_ID,
34068         RECORD_TYPE,
34069         PRG_LEVEL,
34070         LINE_TYPE,
34071         PROJECT_ID,
34072         PROJECT_ORG_ID,
34073         PROJECT_ORGANIZATION_ID,
34074         PROJECT_ELEMENT_ID,
34075         TIME_ID,
34076         PERIOD_TYPE_ID,
34077         CALENDAR_TYPE,
34078         RBS_AGGR_LEVEL,
34079         WBS_ROLLUP_FLAG,
34080         PRG_ROLLUP_FLAG,
34081         CURR_RECORD_TYPE_ID,
34082         CURRENCY_CODE,
34083         RBS_ELEMENT_ID,
34084         RBS_VERSION_ID,
34085         PLAN_VERSION_ID,
34086         PLAN_TYPE_ID,
34087         PLAN_TYPE_CODE,
34088         RAW_COST,
34089         BRDN_COST,
34090         REVENUE,
34091         BILL_RAW_COST,
34092         BILL_BRDN_COST,
34093         BILL_LABOR_RAW_COST,
34094         BILL_LABOR_BRDN_COST,
34095         BILL_LABOR_HRS,
34096         EQUIPMENT_RAW_COST,
34097         EQUIPMENT_BRDN_COST,
34098         CAPITALIZABLE_RAW_COST,
34099         CAPITALIZABLE_BRDN_COST,
34100         LABOR_RAW_COST,
34101         LABOR_BRDN_COST,
34102         LABOR_HRS,
34103         LABOR_REVENUE,
34104         EQUIPMENT_HOURS,
34105         BILLABLE_EQUIPMENT_HOURS,
34106         SUP_INV_COMMITTED_COST,
34107         PO_COMMITTED_COST,
34108         PR_COMMITTED_COST,
34109         OTH_COMMITTED_COST,
34110         ACT_LABOR_HRS,
34111         ACT_EQUIP_HRS,
34112         ACT_LABOR_BRDN_COST,
34113         ACT_EQUIP_BRDN_COST,
34114         ACT_BRDN_COST,
34115         ACT_RAW_COST,
34116         ACT_REVENUE,
34117         ACT_LABOR_RAW_COST,
34118         ACT_EQUIP_RAW_COST,
34119         ETC_LABOR_HRS,
34120         ETC_EQUIP_HRS,
34121         ETC_LABOR_BRDN_COST,
34122         ETC_EQUIP_BRDN_COST,
34123         ETC_BRDN_COST,
34124         ETC_RAW_COST,
34125         ETC_LABOR_RAW_COST,
34126         ETC_EQUIP_RAW_COST,
34127         CUSTOM1,
34128         CUSTOM2,
34129         CUSTOM3,
34130         CUSTOM4,
34131         CUSTOM5,
34132         CUSTOM6,
34133         CUSTOM7,
34134         CUSTOM8,
34135         CUSTOM9,
34136         CUSTOM10,
34137         CUSTOM11,
34138         CUSTOM12,
34139         CUSTOM13,
34140         CUSTOM14,
34141         CUSTOM15
34142       )
34143       select /*+ no_merge(pjp) */
34144         p_worker_id                                   WORKER_ID,
34145         'P'                                           RECORD_TYPE,
34146         l_level                                       PRG_LEVEL,
34147         pjp.LINE_TYPE,
34148         pjp.SUP_PROJECT_ID                            PROJECT_ID,
34149         map.PROJECT_ORG_ID,
34150         map.PROJECT_ORGANIZATION_ID,
34151         decode(pjp.STRUCT_TYPE,
34152                'DO_NOT_ROLLUP', pjp.SUB_ROLLUP_ID,
34153                                 decode(top_slice.INVERT_ID,
34154                                        'PRJ', pjp.SUP_EMT_ID, wbs.SUP_EMT_ID)
34155               )                                       PROJECT_ELEMENT_ID,
34156         pjp.TIME_ID,
34157         pjp.PERIOD_TYPE_ID,
34158         pjp.CALENDAR_TYPE,
34159         pjp.RBS_AGGR_LEVEL,
34160         decode(pjp.STRUCT_TYPE,
34161                'DO_NOT_ROLLUP', 'N',
34162                                 decode(top_slice.INVERT_ID,
34163                                        'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
34164                                                           wbs.SUP_EMT_ID,
34165                                                           'N', 'Y'))
34166               )                                       WBS_ROLLUP_FLAG,
34167         'Y'                                           PRG_ROLLUP_FLAG,
34168         pjp.CURR_RECORD_TYPE_ID,
34169         pjp.CURRENCY_CODE,
34170         pjp.RBS_ELEMENT_ID,
34171         pjp.RBS_VERSION_ID,
34172         pjp.PLAN_VERSION_ID,
34173         pjp.PLAN_TYPE_ID,
34174         pjp.PLAN_TYPE_CODE,
34175         sum(pjp.RAW_COST)                             RAW_COST,
34176         sum(pjp.BRDN_COST)                            BRDN_COST,
34177         sum(pjp.REVENUE)                              REVENUE,
34178         sum(pjp.BILL_RAW_COST)                        BILL_RAW_COST,
34179         sum(pjp.BILL_BRDN_COST)                       BILL_BRDN_COST,
34180         sum(pjp.BILL_LABOR_RAW_COST)                  BILL_LABOR_RAW_COST,
34181         sum(pjp.BILL_LABOR_BRDN_COST)                 BILL_LABOR_BRDN_COST,
34182         sum(pjp.BILL_LABOR_HRS)                       BILL_LABOR_HRS,
34183         sum(pjp.EQUIPMENT_RAW_COST)                   EQUIPMENT_RAW_COST,
34184         sum(pjp.EQUIPMENT_BRDN_COST)                  EQUIPMENT_BRDN_COST,
34185         sum(pjp.CAPITALIZABLE_RAW_COST)               CAPITALIZABLE_RAW_COST,
34186         sum(pjp.CAPITALIZABLE_BRDN_COST)              CAPITALIZABLE_BRDN_COST,
34187         sum(pjp.LABOR_RAW_COST)                       LABOR_RAW_COST,
34188         sum(pjp.LABOR_BRDN_COST)                      LABOR_BRDN_COST,
34189         sum(pjp.LABOR_HRS)                            LABOR_HRS,
34190         sum(pjp.LABOR_REVENUE)                        LABOR_REVENUE,
34191         sum(pjp.EQUIPMENT_HOURS)                      EQUIPMENT_HOURS,
34192         sum(pjp.BILLABLE_EQUIPMENT_HOURS)             BILLABLE_EQUIPMENT_HOURS,
34193         sum(pjp.SUP_INV_COMMITTED_COST)               SUP_INV_COMMITTED_COST,
34194         sum(pjp.PO_COMMITTED_COST)                    PO_COMMITTED_COST,
34195         sum(pjp.PR_COMMITTED_COST)                    PR_COMMITTED_COST,
34196         sum(pjp.OTH_COMMITTED_COST)                   OTH_COMMITTED_COST,
34197         sum(pjp.ACT_LABOR_HRS)                        ACT_LABOR_HRS,
34198         sum(pjp.ACT_EQUIP_HRS)                        ACT_EQUIP_HRS,
34199         sum(pjp.ACT_LABOR_BRDN_COST)                  ACT_LABOR_BRDN_COST,
34200         sum(pjp.ACT_EQUIP_BRDN_COST)                  ACT_EQUIP_BRDN_COST,
34201         sum(pjp.ACT_BRDN_COST)                        ACT_BRDN_COST,
34202         sum(pjp.ACT_RAW_COST)                         ACT_RAW_COST,
34203         sum(pjp.ACT_REVENUE)                          ACT_REVENUE,
34204         sum(pjp.ACT_LABOR_RAW_COST)                   ACT_LABOR_RAW_COST,
34205         sum(pjp.ACT_EQUIP_RAW_COST)                   ACT_EQUIP_RAW_COST,
34206         sum(pjp.ETC_LABOR_HRS)                        ETC_LABOR_HRS,
34207         sum(pjp.ETC_EQUIP_HRS)                        ETC_EQUIP_HRS,
34208         sum(pjp.ETC_LABOR_BRDN_COST)                  ETC_LABOR_BRDN_COST,
34209         sum(pjp.ETC_EQUIP_BRDN_COST)                  ETC_EQUIP_BRDN_COST,
34210         sum(pjp.ETC_BRDN_COST)                        ETC_BRDN_COST,
34211         sum(pjp.ETC_RAW_COST)                         ETC_RAW_COST,
34212         sum(pjp.ETC_LABOR_RAW_COST)                   ETC_LABOR_RAW_COST,
34213         sum(pjp.ETC_EQUIP_RAW_COST)                   ETC_EQUIP_RAW_COST,
34214         sum(pjp.CUSTOM1)                              CUSTOM1,
34215         sum(pjp.CUSTOM2)                              CUSTOM2,
34216         sum(pjp.CUSTOM3)                              CUSTOM3,
34217         sum(pjp.CUSTOM4)                              CUSTOM4,
34218         sum(pjp.CUSTOM5)                              CUSTOM5,
34219         sum(pjp.CUSTOM6)                              CUSTOM6,
34220         sum(pjp.CUSTOM7)                              CUSTOM7,
34221         sum(pjp.CUSTOM8)                              CUSTOM8,
34222         sum(pjp.CUSTOM9)                              CUSTOM9,
34223         sum(pjp.CUSTOM10)                             CUSTOM10,
34224         sum(pjp.CUSTOM11)                             CUSTOM11,
34225         sum(pjp.CUSTOM12)                             CUSTOM12,
34226         sum(pjp.CUSTOM13)                             CUSTOM13,
34227         sum(pjp.CUSTOM14)                             CUSTOM14,
34228         sum(pjp.CUSTOM15)                             CUSTOM15
34229       from
34230         (
34231         select /*+ ordered index(fpr PJI_FP_XBS_ACCUM_F_N1) */
34232                -- get structure level amounts from Reporting Lines
34233           decode(fpr.RBS_AGGR_LEVEL,
34234                  'L', 'DO_NOT_ROLLUP',
34235                       'WBS')                          STRUCT_TYPE,
34236           to_char(null)                               LINE_TYPE,
34237           prg.SUP_PROJECT_ID,
34238           prg.SUP_ID,
34239           prg.SUP_EMT_ID,
34240           prg.SUB_EMT_ID,
34241           prg.SUB_ROLLUP_ID,
34242           'FPR'                                       LINE_SOURCE,
34243           decode(fpr.PLAN_VERSION_ID,
34244                  -1, prg.SUB_ID,
34245                  -3, prg.SUB_ID,
34246                  -4, prg.SUB_ID,
34247                      decode(fin_plan.PLAN_VERSION_ID,
34248                             null, null,
34249                                   prg.SUB_ID))        SUB_ID,
34250           decode(fpr.PLAN_VERSION_ID,
34251                  -1, 'N',
34252                  -3, 'N',
34253                  -4, 'N',
34254                      decode(fin_plan.PLAN_VERSION_ID,
34255                             null, null,
34256                                   'N'))               SUP_WP_FLAG,
34257           decode(fpr.PLAN_VERSION_ID,
34258                  -1, fpr.PLAN_VERSION_ID,
34259                  -3, fpr.PLAN_VERSION_ID,
34260                  -4, fpr.PLAN_VERSION_ID,
34261                      decode(fin_plan.PLAN_VERSION_ID,
34262                             null, null,
34263                                   fin_plan.PLAN_VERSION_ID)
34264                 )                                     SUB_PLAN_VERSION_ID,
34265           decode(fpr.PLAN_VERSION_ID,
34266                  -1, fpr.PLAN_TYPE_ID,
34267                  -3, fpr.PLAN_TYPE_ID,
34268                  -4, fpr.PLAN_TYPE_ID,
34269                      decode(fin_plan.PLAN_VERSION_ID,
34270                             null, null,
34271                                   fpr.PLAN_TYPE_ID))  SUB_PLAN_TYPE_ID,
34272           fpr.TIME_ID,
34273           fpr.PERIOD_TYPE_ID,
34274           fpr.CALENDAR_TYPE,
34275           fpr.RBS_AGGR_LEVEL,
34276           fpr.CURR_RECORD_TYPE_ID,
34277           fpr.CURRENCY_CODE,
34278           fpr.RBS_ELEMENT_ID,
34279           fpr.RBS_VERSION_ID,
34280           decode(wbs_hdr.WP_FLAG,
34281                  'N', decode(wbs_hdr.PLAN_VERSION_ID,
34282                              -1, fpr.PLAN_VERSION_ID,
34283                                  fin_plan.PLAN_VERSION_ID),
34284                       sup_wbs_hdr.PLAN_VERSION_ID)    PLAN_VERSION_ID,
34285           decode(wbs_hdr.WP_FLAG,
34286                  'N', fpr.PLAN_TYPE_ID,
34287                       sup_wbs_hdr.PLAN_TYPE_ID)       PLAN_TYPE_ID,
34288           fpr.PLAN_TYPE_CODE,
34289           decode(wbs_hdr.WP_FLAG
34290                    || '_' || sup_wbs_hdr.WP_FLAG
34291                    || '_' || sub_ver.STATUS_CODE
34292                    || '_' || sup_ver.STATUS_CODE,
34293                  'Y_Y__', to_number(null),
34294                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34295                  prg.SIGN * fpr.RAW_COST)             RAW_COST,
34296           decode(wbs_hdr.WP_FLAG
34297                    || '_' || sup_wbs_hdr.WP_FLAG
34298                    || '_' || sub_ver.STATUS_CODE
34299                    || '_' || sup_ver.STATUS_CODE,
34300                  'Y_Y__', to_number(null),
34301                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34302                  prg.SIGN * fpr.BRDN_COST)            BRDN_COST,
34303           decode(wbs_hdr.WP_FLAG
34304                    || '_' || sup_wbs_hdr.WP_FLAG
34305                    || '_' || sub_ver.STATUS_CODE
34306                    || '_' || sup_ver.STATUS_CODE,
34307                  'Y_Y__', to_number(null),
34308                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34309                  prg.SIGN * fpr.REVENUE)              REVENUE,
34310           decode(wbs_hdr.WP_FLAG
34311                    || '_' || sup_wbs_hdr.WP_FLAG
34312                    || '_' || sub_ver.STATUS_CODE
34313                    || '_' || sup_ver.STATUS_CODE,
34314                  'Y_Y__', to_number(null),
34315                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34316                  prg.SIGN * fpr.BILL_RAW_COST)        BILL_RAW_COST,
34317           decode(wbs_hdr.WP_FLAG
34318                    || '_' || sup_wbs_hdr.WP_FLAG
34319                    || '_' || sub_ver.STATUS_CODE
34320                    || '_' || sup_ver.STATUS_CODE,
34321                  'Y_Y__', to_number(null),
34322                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34323                  prg.SIGN * fpr.BILL_BRDN_COST)       BILL_BRDN_COST,
34324           decode(wbs_hdr.WP_FLAG
34325                    || '_' || sup_wbs_hdr.WP_FLAG
34326                    || '_' || sub_ver.STATUS_CODE
34327                    || '_' || sup_ver.STATUS_CODE,
34328                  'Y_Y__', to_number(null),
34329                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34330                  prg.SIGN * fpr.BILL_LABOR_RAW_COST)  BILL_LABOR_RAW_COST,
34331           decode(wbs_hdr.WP_FLAG
34332                    || '_' || sup_wbs_hdr.WP_FLAG
34333                    || '_' || sub_ver.STATUS_CODE
34334                    || '_' || sup_ver.STATUS_CODE,
34335                  'Y_Y__', to_number(null),
34336                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34337                  prg.SIGN * fpr.BILL_LABOR_BRDN_COST) BILL_LABOR_BRDN_COST,
34338           decode(wbs_hdr.WP_FLAG
34339                    || '_' || sup_wbs_hdr.WP_FLAG
34340                    || '_' || sub_ver.STATUS_CODE
34341                    || '_' || sup_ver.STATUS_CODE,
34342                  'Y_Y__', to_number(null),
34343                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34344                  prg.SIGN * fpr.BILL_LABOR_HRS)       BILL_LABOR_HRS,
34345           decode(wbs_hdr.WP_FLAG
34346                    || '_' || sup_wbs_hdr.WP_FLAG
34347                    || '_' || sub_ver.STATUS_CODE
34348                    || '_' || sup_ver.STATUS_CODE,
34349                  'Y_Y__', to_number(null),
34350                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34351                  prg.SIGN * fpr.EQUIPMENT_RAW_COST)   EQUIPMENT_RAW_COST,
34352           decode(wbs_hdr.WP_FLAG
34353                    || '_' || sup_wbs_hdr.WP_FLAG
34354                    || '_' || sub_ver.STATUS_CODE
34355                    || '_' || sup_ver.STATUS_CODE,
34356                  'Y_Y__', to_number(null),
34357                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34358                  prg.SIGN * fpr.EQUIPMENT_BRDN_COST)  EQUIPMENT_BRDN_COST,
34359           decode(wbs_hdr.WP_FLAG
34360                    || '_' || sup_wbs_hdr.WP_FLAG
34361                    || '_' || sub_ver.STATUS_CODE
34362                    || '_' || sup_ver.STATUS_CODE,
34363                  'Y_Y__', to_number(null),
34364                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34365                  prg.SIGN * fpr.CAPITALIZABLE_RAW_COST)
34366                                                       CAPITALIZABLE_RAW_COST,
34367           decode(wbs_hdr.WP_FLAG
34368                    || '_' || sup_wbs_hdr.WP_FLAG
34369                    || '_' || sub_ver.STATUS_CODE
34370                    || '_' || sup_ver.STATUS_CODE,
34371                  'Y_Y__', to_number(null),
34372                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34373                  prg.SIGN * fpr.CAPITALIZABLE_BRDN_COST)
34374                                                       CAPITALIZABLE_BRDN_COST,
34375           decode(wbs_hdr.WP_FLAG
34376                    || '_' || sup_wbs_hdr.WP_FLAG
34377                    || '_' || sub_ver.STATUS_CODE
34378                    || '_' || sup_ver.STATUS_CODE,
34379                  'Y_Y__', to_number(null),
34380                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34381                  prg.SIGN * fpr.LABOR_RAW_COST)       LABOR_RAW_COST,
34382           decode(wbs_hdr.WP_FLAG
34383                    || '_' || sup_wbs_hdr.WP_FLAG
34384                    || '_' || sub_ver.STATUS_CODE
34385                    || '_' || sup_ver.STATUS_CODE,
34386                  'Y_Y__', to_number(null),
34387                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34388                  prg.SIGN * fpr.LABOR_BRDN_COST)      LABOR_BRDN_COST,
34389           decode(wbs_hdr.WP_FLAG
34390                    || '_' || sup_wbs_hdr.WP_FLAG
34391                    || '_' || sub_ver.STATUS_CODE
34392                    || '_' || sup_ver.STATUS_CODE,
34393                  'Y_Y__', to_number(null),
34394                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34395                  prg.SIGN * fpr.LABOR_HRS)            LABOR_HRS,
34396           decode(wbs_hdr.WP_FLAG
34397                    || '_' || sup_wbs_hdr.WP_FLAG
34398                    || '_' || sub_ver.STATUS_CODE
34399                    || '_' || sup_ver.STATUS_CODE,
34400                  'Y_Y__', to_number(null),
34401                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34402                  prg.SIGN * fpr.LABOR_REVENUE)        LABOR_REVENUE,
34403           decode(wbs_hdr.WP_FLAG
34404                    || '_' || sup_wbs_hdr.WP_FLAG
34405                    || '_' || sub_ver.STATUS_CODE
34406                    || '_' || sup_ver.STATUS_CODE,
34407                  'Y_Y__', to_number(null),
34408                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34409                  prg.SIGN * fpr.EQUIPMENT_HOURS)      EQUIPMENT_HOURS,
34410           decode(wbs_hdr.WP_FLAG
34411                    || '_' || sup_wbs_hdr.WP_FLAG
34412                    || '_' || sub_ver.STATUS_CODE
34413                    || '_' || sup_ver.STATUS_CODE,
34414                  'Y_Y__', to_number(null),
34415                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34416                  prg.SIGN * fpr.BILLABLE_EQUIPMENT_HOURS)
34417                                                       BILLABLE_EQUIPMENT_HOURS,
34418           decode(wbs_hdr.WP_FLAG
34419                    || '_' || sup_wbs_hdr.WP_FLAG
34420                    || '_' || sub_ver.STATUS_CODE
34421                    || '_' || sup_ver.STATUS_CODE,
34422                  'Y_Y__', to_number(null),
34423                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34424                  prg.SIGN * fpr.SUP_INV_COMMITTED_COST)
34425                                                       SUP_INV_COMMITTED_COST,
34426           decode(wbs_hdr.WP_FLAG
34427                    || '_' || sup_wbs_hdr.WP_FLAG
34428                    || '_' || sub_ver.STATUS_CODE
34429                    || '_' || sup_ver.STATUS_CODE,
34430                  'Y_Y__', to_number(null),
34431                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34432                  prg.SIGN * fpr.PO_COMMITTED_COST)    PO_COMMITTED_COST,
34433           decode(wbs_hdr.WP_FLAG
34434                    || '_' || sup_wbs_hdr.WP_FLAG
34435                    || '_' || sub_ver.STATUS_CODE
34436                    || '_' || sup_ver.STATUS_CODE,
34437                  'Y_Y__', to_number(null),
34438                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34439                  prg.SIGN * fpr.PR_COMMITTED_COST)    PR_COMMITTED_COST,
34440           decode(wbs_hdr.WP_FLAG
34441                    || '_' || sup_wbs_hdr.WP_FLAG
34442                    || '_' || sub_ver.STATUS_CODE
34443                    || '_' || sup_ver.STATUS_CODE,
34444                  'Y_Y__', to_number(null),
34445                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34446                  prg.SIGN * fpr.OTH_COMMITTED_COST)   OTH_COMMITTED_COST,
34447           decode(wbs_hdr.WP_FLAG
34448                    || '_' || sup_wbs_hdr.WP_FLAG
34449                    || '_' || sup_ver.STATUS_CODE,
34450                  'Y_Y_', to_number(null),
34451                  prg.SIGN * fpr.ACT_LABOR_HRS)        ACT_LABOR_HRS,
34452           decode(wbs_hdr.WP_FLAG
34453                    || '_' || sup_wbs_hdr.WP_FLAG
34454                    || '_' || sup_ver.STATUS_CODE,
34455                  'Y_Y_', to_number(null),
34456                  prg.SIGN * fpr.ACT_EQUIP_HRS)        ACT_EQUIP_HRS,
34457           decode(wbs_hdr.WP_FLAG
34458                    || '_' || sup_wbs_hdr.WP_FLAG
34459                    || '_' || sup_ver.STATUS_CODE,
34460                  'Y_Y_', to_number(null),
34461                  prg.SIGN * fpr.ACT_LABOR_BRDN_COST)  ACT_LABOR_BRDN_COST,
34462           decode(wbs_hdr.WP_FLAG
34463                    || '_' || sup_wbs_hdr.WP_FLAG
34464                    || '_' || sup_ver.STATUS_CODE,
34465                  'Y_Y_', to_number(null),
34466                  prg.SIGN * fpr.ACT_EQUIP_BRDN_COST)  ACT_EQUIP_BRDN_COST,
34467           decode(wbs_hdr.WP_FLAG
34468                    || '_' || sup_wbs_hdr.WP_FLAG
34469                    || '_' || sup_ver.STATUS_CODE,
34470                  'Y_Y_', to_number(null),
34471                  prg.SIGN * fpr.ACT_BRDN_COST)        ACT_BRDN_COST,
34472           decode(wbs_hdr.WP_FLAG
34473                    || '_' || sup_wbs_hdr.WP_FLAG
34474                    || '_' || sup_ver.STATUS_CODE,
34475                  'Y_Y_', to_number(null),
34476                  prg.SIGN * fpr.ACT_RAW_COST)         ACT_RAW_COST,
34477           decode(wbs_hdr.WP_FLAG
34478                    || '_' || sup_wbs_hdr.WP_FLAG
34479                    || '_' || sup_ver.STATUS_CODE,
34480                  'Y_Y_', to_number(null),
34481                  prg.SIGN * fpr.ACT_REVENUE)          ACT_REVENUE,
34482           decode(wbs_hdr.WP_FLAG
34483                    || '_' || sup_wbs_hdr.WP_FLAG
34484                    || '_' || sup_ver.STATUS_CODE,
34485                  'Y_Y_', to_number(null),
34486                  prg.SIGN * fpr.ACT_LABOR_RAW_COST)   ACT_LABOR_RAW_COST,
34487           decode(wbs_hdr.WP_FLAG
34488                    || '_' || sup_wbs_hdr.WP_FLAG
34489                    || '_' || sup_ver.STATUS_CODE,
34490                  'Y_Y_', to_number(null),
34491                  prg.SIGN * fpr.ACT_EQUIP_RAW_COST)   ACT_EQUIP_RAW_COST,
34492           decode(wbs_hdr.WP_FLAG
34493                    || '_' || sup_wbs_hdr.WP_FLAG
34494                    || '_' || sup_ver.STATUS_CODE,
34495                  'Y_Y_', to_number(null),
34496                  prg.SIGN * fpr.ETC_LABOR_HRS)        ETC_LABOR_HRS,
34497           decode(wbs_hdr.WP_FLAG
34498                    || '_' || sup_wbs_hdr.WP_FLAG
34499                    || '_' || sup_ver.STATUS_CODE,
34500                  'Y_Y_', to_number(null),
34501                  prg.SIGN * fpr.ETC_EQUIP_HRS)        ETC_EQUIP_HRS,
34502           decode(wbs_hdr.WP_FLAG
34503                    || '_' || sup_wbs_hdr.WP_FLAG
34504                    || '_' || sup_ver.STATUS_CODE,
34505                  'Y_Y_', to_number(null),
34506                  prg.SIGN * fpr.ETC_LABOR_BRDN_COST)  ETC_LABOR_BRDN_COST,
34507           decode(wbs_hdr.WP_FLAG
34508                    || '_' || sup_wbs_hdr.WP_FLAG
34509                    || '_' || sup_ver.STATUS_CODE,
34510                  'Y_Y_', to_number(null),
34511                  prg.SIGN * fpr.ETC_EQUIP_BRDN_COST)  ETC_EQUIP_BRDN_COST,
34512           decode(wbs_hdr.WP_FLAG
34513                    || '_' || sup_wbs_hdr.WP_FLAG
34514                    || '_' || sup_ver.STATUS_CODE,
34515                  'Y_Y_', to_number(null),
34516                  prg.SIGN * fpr.ETC_BRDN_COST)        ETC_BRDN_COST,
34517           decode(wbs_hdr.WP_FLAG
34518                    || '_' || sup_wbs_hdr.WP_FLAG
34519                    || '_' || sup_ver.STATUS_CODE,
34520                  'Y_Y_', to_number(null),
34521                  prg.SIGN * fpr.ETC_RAW_COST)         ETC_RAW_COST,
34522           decode(wbs_hdr.WP_FLAG
34523                    || '_' || sup_wbs_hdr.WP_FLAG
34524                    || '_' || sup_ver.STATUS_CODE,
34525                  'Y_Y_', to_number(null),
34526                  prg.SIGN * fpr.ETC_LABOR_RAW_COST)   ETC_LABOR_RAW_COST,
34527           decode(wbs_hdr.WP_FLAG
34528                    || '_' || sup_wbs_hdr.WP_FLAG
34529                    || '_' || sup_ver.STATUS_CODE,
34530                  'Y_Y_', to_number(null),
34531                  prg.SIGN * fpr.ETC_EQUIP_RAW_COST)   ETC_EQUIP_RAW_COST,
34532           prg.SIGN * fpr.CUSTOM1                      CUSTOM1,
34533           prg.SIGN * fpr.CUSTOM2                      CUSTOM2,
34534           prg.SIGN * fpr.CUSTOM3                      CUSTOM3,
34535           prg.SIGN * fpr.CUSTOM4                      CUSTOM4,
34536           prg.SIGN * fpr.CUSTOM5                      CUSTOM5,
34537           prg.SIGN * fpr.CUSTOM6                      CUSTOM6,
34538           prg.SIGN * fpr.CUSTOM7                      CUSTOM7,
34539           prg.SIGN * fpr.CUSTOM8                      CUSTOM8,
34540           prg.SIGN * fpr.CUSTOM9                      CUSTOM9,
34541           prg.SIGN * fpr.CUSTOM10                     CUSTOM10,
34542           prg.SIGN * fpr.CUSTOM11                     CUSTOM11,
34543           prg.SIGN * fpr.CUSTOM12                     CUSTOM12,
34544           prg.SIGN * fpr.CUSTOM13                     CUSTOM13,
34545           prg.SIGN * fpr.CUSTOM14                     CUSTOM14,
34546           prg.SIGN * fpr.CUSTOM15                     CUSTOM15
34547         from
34548           PJI_XBS_DENORM_DELTA       prg,
34549           PA_PROJ_ELEMENTS           prj_emt,
34550           PJI_PJP_WBS_HEADER         wbs_hdr,
34551           PJI_FP_XBS_ACCUM_F         fpr,
34552           PJI_PJP_WBS_HEADER         sup_wbs_hdr,
34553           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
34554           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
34555           (
34556             select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID
34557             from DUAL union all
34558             select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID
34559             from DUAL union all
34560             select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID
34561             from DUAL union all
34562             select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID
34563             from DUAL
34564           ) fin_plan
34565         where
34566           prg.WORKER_ID              =  p_worker_id                    and
34567           prg.STRUCT_TYPE            =  'PRG'                          and
34568           prg.SUP_LEVEL              =  l_level                        and
34569           nvl(prg.SUB_ROLLUP_ID,
34570               prg.SUP_EMT_ID)        <> prg.SUP_EMT_ID                 and
34571           fpr.PROJECT_ID             =  prj_emt.PROJECT_ID             and
34572           (((fpr.RBS_AGGR_LEVEL,
34573              fpr.WBS_ROLLUP_FLAG,
34574              fpr.PRG_ROLLUP_FLAG) in (('T', 'Y', 'Y'),
34575                                       ('T', 'Y', 'N'),
34576                                       ('T', 'N', 'Y'),
34577                                       ('T', 'N', 'N'),
34578                                       ('L', 'N', 'N')) and
34579              fpr.PROJECT_ELEMENT_ID = prg.SUB_EMT_ID) or
34580            ((fpr.RBS_AGGR_LEVEL,
34581              fpr.WBS_ROLLUP_FLAG,
34582              fpr.PRG_ROLLUP_FLAG) in (('L', 'N', 'Y'),
34583                                       ('L', 'N', 'N')) and
34584              fpr.PROJECT_ELEMENT_ID <> prg.SUB_EMT_ID))                and
34585           decode(fpr.PLAN_VERSION_ID,
34586                  -1, 'LF',
34587                  -2, 'LF',
34588                  -3, 'LF',
34589                  -4, 'LF',
34590                      decode(wbs_hdr.WP_FLAG,
34591                             'N', 'LF',
34592                               'LW')) =  prg.RELATIONSHIP_TYPE          and
34593           prj_emt.PROJ_ELEMENT_ID    =  prg.SUB_EMT_ID                 and
34594           wbs_hdr.PROJECT_ID         =  prj_emt.PROJECT_ID             and
34595           decode(wbs_hdr.WP_FLAG,
34596                  'Y', wbs_hdr.WBS_VERSION_ID,
34597                       -1)            = decode(wbs_hdr.WP_FLAG,
34598                                               'Y', prg.SUB_ID,
34599                                                    -1)                 and
34600           wbs_hdr.PLAN_VERSION_ID    =  fpr.PLAN_VERSION_ID            and
34601           wbs_hdr.PLAN_TYPE_CODE     =  fpr.PLAN_TYPE_CODE             and
34602           decode(fpr.PLAN_VERSION_ID,
34603                  -3, fpr.PLAN_TYPE_ID,
34604                  -4, fpr.PLAN_TYPE_ID,
34605                      -1)             =  decode(fpr.PLAN_VERSION_ID,
34606                                                -3, wbs_hdr.PLAN_TYPE_ID,
34607                                                -4, wbs_hdr.PLAN_TYPE_ID,
34608                                                    -1)                 and
34609           decode(wbs_hdr.WP_FLAG,
34610                  'N', decode(fpr.PLAN_VERSION_ID,
34611                              -1, 'Y',
34612                              -2, 'Y',
34613                              -3, 'Y',
34614                              -4, 'Y',
34615                                  decode(fpr.RBS_AGGR_LEVEL
34616                                           || '_' || wbs_hdr.CB_FLAG
34617                                           || '_' || wbs_hdr.CO_FLAG,
34618                                         'L_Y_Y', 'Y',
34619                                         'L_N_Y', 'Y',
34620                                         'L_Y_N', 'Y',
34621                                                  'N')),
34622                       'Y')           =  'Y'                            and
34623           prg.SUP_PROJECT_ID         =  sup_wbs_hdr.PROJECT_ID     (+) and
34624           prg.SUP_ID                 =  sup_wbs_hdr.WBS_VERSION_ID (+) and
34625           'Y'                        =  sup_wbs_hdr.WP_FLAG        (+) and
34626           wbs_hdr.PROJECT_ID         =  sub_ver.PROJECT_ID         (+) and
34627           wbs_hdr.WBS_VERSION_ID     =  sub_ver.ELEMENT_VERSION_ID (+) and
34628           'STRUCTURE_PUBLISHED'      =  sub_ver.STATUS_CODE        (+) and
34629           sup_wbs_hdr.PROJECT_ID     =  sup_ver.PROJECT_ID         (+) and
34630           sup_wbs_hdr.WBS_VERSION_ID =  sup_ver.ELEMENT_VERSION_ID (+) and
34631           'STRUCTURE_PUBLISHED'      =  sup_ver.STATUS_CODE        (+) and
34632           wbs_hdr.CB_FLAG            =  fin_plan.CB                (+) and
34633           wbs_hdr.CO_FLAG            =  fin_plan.CO                (+)
34634         union all
34635         select /*+ ordered parallel(pjp1) */                   -- changed for bug 5927368
34636                -- get structure level amounts from interim
34637           decode(pjp1.RBS_AGGR_LEVEL,
34638                  'L', 'DO_NOT_ROLLUP',
34639                       'WBS')                          STRUCT_TYPE,
34640           to_char(null)                               LINE_TYPE,
34641           prg.SUP_PROJECT_ID,
34642           prg.SUP_ID,
34643           prg.SUP_EMT_ID,
34644           prg.SUB_EMT_ID,
34645           prg.SUB_ROLLUP_ID,
34646           'PJP1'                                      LINE_SOURCE,
34647           decode(pjp1.PLAN_VERSION_ID,
34648                  -1, prg.SUB_ID,
34649                  -3, prg.SUB_ID,
34650                  -4, prg.SUB_ID,
34651                      decode(fin_plan.PLAN_VERSION_ID,
34652                             null, null,
34653                                   prg.SUB_ID))        SUB_ID,
34654           decode(pjp1.PLAN_VERSION_ID,
34655                  -1, 'N',
34656                  -3, 'N',
34657                  -4, 'N',
34658                      decode(fin_plan.PLAN_VERSION_ID,
34659                             null, null,
34660                                   'N'))               SUP_WP_FLAG,
34661           decode(pjp1.PLAN_VERSION_ID,
34662                  -1, pjp1.PLAN_VERSION_ID,
34663                  -3, pjp1.PLAN_VERSION_ID,
34664                  -4, pjp1.PLAN_VERSION_ID,
34665                      decode(fin_plan.PLAN_VERSION_ID,
34666                             null, null,
34667                                   fin_plan.PLAN_VERSION_ID)
34668                 )                                     SUB_PLAN_VERSION_ID,
34669           decode(pjp1.PLAN_VERSION_ID,
34670                  -1, pjp1.PLAN_TYPE_ID,
34671                  -3, pjp1.PLAN_TYPE_ID,
34672                  -4, pjp1.PLAN_TYPE_ID,
34673                      decode(fin_plan.PLAN_VERSION_ID,
34674                             null, null,
34675                                   pjp1.PLAN_TYPE_ID)) SUB_PLAN_TYPE_ID,
34676           pjp1.TIME_ID,
34677           pjp1.PERIOD_TYPE_ID,
34678           pjp1.CALENDAR_TYPE,
34679           pjp1.RBS_AGGR_LEVEL,
34680           pjp1.CURR_RECORD_TYPE_ID,
34681           pjp1.CURRENCY_CODE,
34682           pjp1.RBS_ELEMENT_ID,
34683           pjp1.RBS_VERSION_ID,
34684           decode(wbs_hdr.WP_FLAG,
34685                  'N', decode(wbs_hdr.PLAN_VERSION_ID,
34686                              -1, pjp1.PLAN_VERSION_ID,
34687                                  fin_plan.PLAN_VERSION_ID),
34688                       sup_wbs_hdr.PLAN_VERSION_ID)    PLAN_VERSION_ID,
34689           decode(wbs_hdr.WP_FLAG,
34690                  'N', pjp1.PLAN_TYPE_ID,
34691                       sup_wbs_hdr.PLAN_TYPE_ID)       PLAN_TYPE_ID,
34692           pjp1.PLAN_TYPE_CODE,
34693           decode(wbs_hdr.WP_FLAG
34694                    || '_' || sup_wbs_hdr.WP_FLAG
34695                    || '_' || sub_ver.STATUS_CODE
34696                    || '_' || sup_ver.STATUS_CODE,
34697                  'Y_Y__', to_number(null),
34698                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34699                  pjp1.RAW_COST)                       RAW_COST,
34700           decode(wbs_hdr.WP_FLAG
34701                    || '_' || sup_wbs_hdr.WP_FLAG
34702                    || '_' || sub_ver.STATUS_CODE
34703                    || '_' || sup_ver.STATUS_CODE,
34704                  'Y_Y__', to_number(null),
34705                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34706                  pjp1.BRDN_COST)                      BRDN_COST,
34707           decode(wbs_hdr.WP_FLAG
34708                    || '_' || sup_wbs_hdr.WP_FLAG
34709                    || '_' || sub_ver.STATUS_CODE
34710                    || '_' || sup_ver.STATUS_CODE,
34711                  'Y_Y__', to_number(null),
34712                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34713                  pjp1.REVENUE)                        REVENUE,
34714           decode(wbs_hdr.WP_FLAG
34715                    || '_' || sup_wbs_hdr.WP_FLAG
34716                    || '_' || sub_ver.STATUS_CODE
34717                    || '_' || sup_ver.STATUS_CODE,
34718                  'Y_Y__', to_number(null),
34719                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34720                  pjp1.BILL_RAW_COST)                  BILL_RAW_COST,
34721           decode(wbs_hdr.WP_FLAG
34722                    || '_' || sup_wbs_hdr.WP_FLAG
34723                    || '_' || sub_ver.STATUS_CODE
34724                    || '_' || sup_ver.STATUS_CODE,
34725                  'Y_Y__', to_number(null),
34726                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34727                  pjp1.BILL_BRDN_COST)                 BILL_BRDN_COST,
34728           decode(wbs_hdr.WP_FLAG
34729                    || '_' || sup_wbs_hdr.WP_FLAG
34730                    || '_' || sub_ver.STATUS_CODE
34731                    || '_' || sup_ver.STATUS_CODE,
34732                  'Y_Y__', to_number(null),
34733                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34734                  pjp1.BILL_LABOR_RAW_COST)            BILL_LABOR_RAW_COST,
34735           decode(wbs_hdr.WP_FLAG
34736                    || '_' || sup_wbs_hdr.WP_FLAG
34737                    || '_' || sub_ver.STATUS_CODE
34738                    || '_' || sup_ver.STATUS_CODE,
34739                  'Y_Y__', to_number(null),
34740                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34741                  pjp1.BILL_LABOR_BRDN_COST)           BILL_LABOR_BRDN_COST,
34742           decode(wbs_hdr.WP_FLAG
34743                    || '_' || sup_wbs_hdr.WP_FLAG
34744                    || '_' || sub_ver.STATUS_CODE
34745                    || '_' || sup_ver.STATUS_CODE,
34746                  'Y_Y__', to_number(null),
34747                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34748                  pjp1.BILL_LABOR_HRS)                 BILL_LABOR_HRS,
34749           decode(wbs_hdr.WP_FLAG
34750                    || '_' || sup_wbs_hdr.WP_FLAG
34751                    || '_' || sub_ver.STATUS_CODE
34752                    || '_' || sup_ver.STATUS_CODE,
34753                  'Y_Y__', to_number(null),
34754                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34755                  pjp1.EQUIPMENT_RAW_COST)             EQUIPMENT_RAW_COST,
34756           decode(wbs_hdr.WP_FLAG
34757                    || '_' || sup_wbs_hdr.WP_FLAG
34758                    || '_' || sub_ver.STATUS_CODE
34759                    || '_' || sup_ver.STATUS_CODE,
34760                  'Y_Y__', to_number(null),
34761                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34762                  pjp1.EQUIPMENT_BRDN_COST)            EQUIPMENT_BRDN_COST,
34763           decode(wbs_hdr.WP_FLAG
34764                    || '_' || sup_wbs_hdr.WP_FLAG
34765                    || '_' || sub_ver.STATUS_CODE
34766                    || '_' || sup_ver.STATUS_CODE,
34767                  'Y_Y__', to_number(null),
34768                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34769                  pjp1.CAPITALIZABLE_RAW_COST)         CAPITALIZABLE_RAW_COST,
34770           decode(wbs_hdr.WP_FLAG
34771                    || '_' || sup_wbs_hdr.WP_FLAG
34772                    || '_' || sub_ver.STATUS_CODE
34773                    || '_' || sup_ver.STATUS_CODE,
34774                  'Y_Y__', to_number(null),
34775                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34776                  pjp1.CAPITALIZABLE_BRDN_COST)        CAPITALIZABLE_BRDN_COST,
34777           decode(wbs_hdr.WP_FLAG
34778                    || '_' || sup_wbs_hdr.WP_FLAG
34779                    || '_' || sub_ver.STATUS_CODE
34780                    || '_' || sup_ver.STATUS_CODE,
34781                  'Y_Y__', to_number(null),
34782                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34783                  pjp1.LABOR_RAW_COST)                 LABOR_RAW_COST,
34784           decode(wbs_hdr.WP_FLAG
34785                    || '_' || sup_wbs_hdr.WP_FLAG
34786                    || '_' || sub_ver.STATUS_CODE
34787                    || '_' || sup_ver.STATUS_CODE,
34788                  'Y_Y__', to_number(null),
34789                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34790                  pjp1.LABOR_BRDN_COST)                LABOR_BRDN_COST,
34791           decode(wbs_hdr.WP_FLAG
34792                    || '_' || sup_wbs_hdr.WP_FLAG
34793                    || '_' || sub_ver.STATUS_CODE
34794                    || '_' || sup_ver.STATUS_CODE,
34795                  'Y_Y__', to_number(null),
34796                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34797                  pjp1.LABOR_HRS)                      LABOR_HRS,
34798           decode(wbs_hdr.WP_FLAG
34799                    || '_' || sup_wbs_hdr.WP_FLAG
34800                    || '_' || sub_ver.STATUS_CODE
34801                    || '_' || sup_ver.STATUS_CODE,
34802                  'Y_Y__', to_number(null),
34803                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34804                  pjp1.LABOR_REVENUE)                  LABOR_REVENUE,
34805           decode(wbs_hdr.WP_FLAG
34806                    || '_' || sup_wbs_hdr.WP_FLAG
34807                    || '_' || sub_ver.STATUS_CODE
34808                    || '_' || sup_ver.STATUS_CODE,
34809                  'Y_Y__', to_number(null),
34810                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34811                  pjp1.EQUIPMENT_HOURS)                EQUIPMENT_HOURS,
34812           decode(wbs_hdr.WP_FLAG
34813                    || '_' || sup_wbs_hdr.WP_FLAG
34814                    || '_' || sub_ver.STATUS_CODE
34815                    || '_' || sup_ver.STATUS_CODE,
34816                  'Y_Y__', to_number(null),
34817                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34818                  pjp1.BILLABLE_EQUIPMENT_HOURS)       BILLABLE_EQUIPMENT_HOURS,
34819           decode(wbs_hdr.WP_FLAG
34820                    || '_' || sup_wbs_hdr.WP_FLAG
34821                    || '_' || sub_ver.STATUS_CODE
34822                    || '_' || sup_ver.STATUS_CODE,
34823                  'Y_Y__', to_number(null),
34824                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34825                  pjp1.SUP_INV_COMMITTED_COST)         SUP_INV_COMMITTED_COST,
34826           decode(wbs_hdr.WP_FLAG
34827                    || '_' || sup_wbs_hdr.WP_FLAG
34828                    || '_' || sub_ver.STATUS_CODE
34829                    || '_' || sup_ver.STATUS_CODE,
34830                  'Y_Y__', to_number(null),
34831                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34832                  pjp1.PO_COMMITTED_COST)              PO_COMMITTED_COST,
34833           decode(wbs_hdr.WP_FLAG
34834                    || '_' || sup_wbs_hdr.WP_FLAG
34835                    || '_' || sub_ver.STATUS_CODE
34836                    || '_' || sup_ver.STATUS_CODE,
34837                  'Y_Y__', to_number(null),
34838                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34839                  pjp1.PR_COMMITTED_COST)              PR_COMMITTED_COST,
34840           decode(wbs_hdr.WP_FLAG
34841                    || '_' || sup_wbs_hdr.WP_FLAG
34842                    || '_' || sub_ver.STATUS_CODE
34843                    || '_' || sup_ver.STATUS_CODE,
34844                  'Y_Y__', to_number(null),
34845                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
34846                  pjp1.OTH_COMMITTED_COST)             OTH_COMMITTED_COST,
34847           decode(wbs_hdr.WP_FLAG
34848                    || '_' || sup_wbs_hdr.WP_FLAG
34849                    || '_' || sup_ver.STATUS_CODE,
34850                  'Y_Y_', to_number(null),
34851                  pjp1.ACT_LABOR_HRS)                  ACT_LABOR_HRS,
34852           decode(wbs_hdr.WP_FLAG
34853                    || '_' || sup_wbs_hdr.WP_FLAG
34854                    || '_' || sup_ver.STATUS_CODE,
34855                  'Y_Y_', to_number(null),
34856                  pjp1.ACT_EQUIP_HRS)                  ACT_EQUIP_HRS,
34857           decode(wbs_hdr.WP_FLAG
34858                    || '_' || sup_wbs_hdr.WP_FLAG
34859                    || '_' || sup_ver.STATUS_CODE,
34860                  'Y_Y_', to_number(null),
34861                  pjp1.ACT_LABOR_BRDN_COST)            ACT_LABOR_BRDN_COST,
34862           decode(wbs_hdr.WP_FLAG
34863                    || '_' || sup_wbs_hdr.WP_FLAG
34864                    || '_' || sup_ver.STATUS_CODE,
34865                  'Y_Y_', to_number(null),
34866                  pjp1.ACT_EQUIP_BRDN_COST)            ACT_EQUIP_BRDN_COST,
34867           decode(wbs_hdr.WP_FLAG
34868                    || '_' || sup_wbs_hdr.WP_FLAG
34869                    || '_' || sup_ver.STATUS_CODE,
34870                  'Y_Y_', to_number(null),
34871                  pjp1.ACT_BRDN_COST)                  ACT_BRDN_COST,
34872           decode(wbs_hdr.WP_FLAG
34873                    || '_' || sup_wbs_hdr.WP_FLAG
34874                    || '_' || sup_ver.STATUS_CODE,
34875                  'Y_Y_', to_number(null),
34876                  pjp1.ACT_RAW_COST)                   ACT_RAW_COST,
34877           decode(wbs_hdr.WP_FLAG
34878                    || '_' || sup_wbs_hdr.WP_FLAG
34879                    || '_' || sup_ver.STATUS_CODE,
34880                  'Y_Y_', to_number(null),
34881                  pjp1.ACT_REVENUE)                    ACT_REVENUE,
34882           decode(wbs_hdr.WP_FLAG
34883                    || '_' || sup_wbs_hdr.WP_FLAG
34884                    || '_' || sup_ver.STATUS_CODE,
34885                  'Y_Y_', to_number(null),
34886                  pjp1.ACT_LABOR_RAW_COST)             ACT_LABOR_RAW_COST,
34887           decode(wbs_hdr.WP_FLAG
34888                    || '_' || sup_wbs_hdr.WP_FLAG
34889                    || '_' || sup_ver.STATUS_CODE,
34890                  'Y_Y_', to_number(null),
34891                  pjp1.ACT_EQUIP_RAW_COST)             ACT_EQUIP_RAW_COST,
34892           decode(wbs_hdr.WP_FLAG
34893                    || '_' || sup_wbs_hdr.WP_FLAG
34894                    || '_' || sup_ver.STATUS_CODE,
34895                  'Y_Y_', to_number(null),
34896                  pjp1.ETC_LABOR_HRS)                  ETC_LABOR_HRS,
34897           decode(wbs_hdr.WP_FLAG
34898                    || '_' || sup_wbs_hdr.WP_FLAG
34899                    || '_' || sup_ver.STATUS_CODE,
34900                  'Y_Y_', to_number(null),
34901                  pjp1.ETC_EQUIP_HRS)                  ETC_EQUIP_HRS,
34902           decode(wbs_hdr.WP_FLAG
34903                    || '_' || sup_wbs_hdr.WP_FLAG
34904                    || '_' || sup_ver.STATUS_CODE,
34905                  'Y_Y_', to_number(null),
34906                  pjp1.ETC_LABOR_BRDN_COST)            ETC_LABOR_BRDN_COST,
34907           decode(wbs_hdr.WP_FLAG
34908                    || '_' || sup_wbs_hdr.WP_FLAG
34909                    || '_' || sup_ver.STATUS_CODE,
34910                  'Y_Y_', to_number(null),
34911                  pjp1.ETC_EQUIP_BRDN_COST)            ETC_EQUIP_BRDN_COST,
34912           decode(wbs_hdr.WP_FLAG
34913                    || '_' || sup_wbs_hdr.WP_FLAG
34914                    || '_' || sup_ver.STATUS_CODE,
34915                  'Y_Y_', to_number(null),
34916                  pjp1.ETC_BRDN_COST)                  ETC_BRDN_COST,
34917           decode(wbs_hdr.WP_FLAG
34918                    || '_' || sup_wbs_hdr.WP_FLAG
34919                    || '_' || sup_ver.STATUS_CODE,
34920                  'Y_Y_', to_number(null),
34921                  pjp1.ETC_RAW_COST)                   ETC_RAW_COST,
34922           decode(wbs_hdr.WP_FLAG
34923                    || '_' || sup_wbs_hdr.WP_FLAG
34924                    || '_' || sup_ver.STATUS_CODE,
34925                  'Y_Y_', to_number(null),
34926                  pjp1.ETC_LABOR_RAW_COST)             ETC_LABOR_RAW_COST,
34927           decode(wbs_hdr.WP_FLAG
34928                    || '_' || sup_wbs_hdr.WP_FLAG
34929                    || '_' || sup_ver.STATUS_CODE,
34930                  'Y_Y_', to_number(null),
34931                  pjp1.ETC_EQUIP_RAW_COST)             ETC_EQUIP_RAW_COST,
34932           pjp1.CUSTOM1,
34933           pjp1.CUSTOM2,
34934           pjp1.CUSTOM3,
34935           pjp1.CUSTOM4,
34936           pjp1.CUSTOM5,
34937           pjp1.CUSTOM6,
34938           pjp1.CUSTOM7,
34939           pjp1.CUSTOM8,
34940           pjp1.CUSTOM9,
34941           pjp1.CUSTOM10,
34942           pjp1.CUSTOM11,
34943           pjp1.CUSTOM12,
34944           pjp1.CUSTOM13,
34945           pjp1.CUSTOM14,
34946           pjp1.CUSTOM15
34947         from
34948           PJI_FP_AGGR_PJP1           pjp1,
34949           PJI_PJP_WBS_HEADER         wbs_hdr,
34950           PA_PROJ_ELEMENTS           prj_emt,
34951           PA_XBS_DENORM              prg,
34952           PJI_XBS_DENORM_DELTA       prg_delta,
34953           PJI_PJP_WBS_HEADER         sup_wbs_hdr,
34954           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
34955           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
34956           (
34957             select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID
34958             from DUAL union all
34959             select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID
34960             from DUAL union all
34961             select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID
34962             from DUAL union all
34963             select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID
34964             from DUAL
34965           ) fin_plan
34966         where
34967           prg.STRUCT_TYPE            =  'PRG'                           and
34968           prg.SUP_LEVEL              =  l_level                         and
34969           nvl(prg.SUB_ROLLUP_ID,
34970               prg.SUP_EMT_ID)        <> prg.SUP_EMT_ID                  and
34971           p_worker_id                =  prg_delta.WORKER_ID         (+) and
34972           prg.STRUCT_TYPE            =  prg_delta.STRUCT_TYPE       (+) and
34973           prg.SUP_PROJECT_ID         =  prg_delta.SUP_PROJECT_ID    (+) and
34974           prg.SUP_LEVEL              =  prg_delta.SUP_LEVEL         (+) and
34975           prg.SUP_ID                 =  prg_delta.SUP_ID            (+) and
34976           prg.SUB_LEVEL              =  prg_delta.SUB_LEVEL         (+) and
34977           prg.SUB_ID                 =  prg_delta.SUB_ID            (+) and
34978           prg.RELATIONSHIP_TYPE      =  prg_delta.RELATIONSHIP_TYPE (+) and
34979           1                          =  prg_delta.SIGN              (+) and
34980           (prg_delta.SUP_PROJECT_ID is not null or
34981            (prg_delta.SUP_PROJECT_ID is null and
34982             pjp1.RECORD_TYPE = 'P'))                                    and
34983           pjp1.WORKER_ID             =  p_worker_id                     and
34984           pjp1.PRG_LEVEL             in (0, prg.SUB_LEVEL)              and
34985           pjp1.PROJECT_ID            =  prj_emt.PROJECT_ID              and
34986           (((pjp1.RBS_AGGR_LEVEL,
34987              pjp1.WBS_ROLLUP_FLAG,
34988              pjp1.PRG_ROLLUP_FLAG) in (('T', 'Y', 'Y'),
34989                                        ('T', 'Y', 'N'),
34990                                        ('T', 'N', 'Y'),
34991                                        ('T', 'N', 'N'),
34992                                        ('L', 'N', 'N')) and
34993              pjp1.PROJECT_ELEMENT_ID = prg.SUB_EMT_ID) or
34994            ((pjp1.RBS_AGGR_LEVEL,
34995              pjp1.WBS_ROLLUP_FLAG,
34996              pjp1.PRG_ROLLUP_FLAG) in (('L', 'N', 'Y'),
34997                                        ('L', 'N', 'N')) and
34998              pjp1.PROJECT_ELEMENT_ID <> prg.SUB_EMT_ID))                and
34999           decode(pjp1.PLAN_VERSION_ID,
35000                  -1, 'LF',
35001                  -2, 'LF',
35002                  -3, 'LF',
35003                  -4, 'LF',
35004                      decode(wbs_hdr.WP_FLAG,
35005                             'N', 'LF',
35006                               'LW')) =  prg.RELATIONSHIP_TYPE           and
35007           prg.STRUCT_VERSION_ID      is null                            and
35008           prj_emt.OBJECT_TYPE        =  'PA_STRUCTURES'                 and
35009           prj_emt.PROJ_ELEMENT_ID    =  prg.SUB_EMT_ID                  and
35010           wbs_hdr.PROJECT_ID         =  prj_emt.PROJECT_ID              and
35011           wbs_hdr.WBS_VERSION_ID     =  prg.SUB_ID                      and
35012           wbs_hdr.PROJECT_ID         =  pjp1.PROJECT_ID                 and
35013           wbs_hdr.PLAN_VERSION_ID    =  pjp1.PLAN_VERSION_ID            and
35014           wbs_hdr.PLAN_TYPE_CODE     =  pjp1.PLAN_TYPE_CODE             and
35015           decode(pjp1.PLAN_VERSION_ID,
35016                  -3, pjp1.PLAN_TYPE_ID,
35017                  -4, pjp1.PLAN_TYPE_ID,
35018                      -1)             =  decode(pjp1.PLAN_VERSION_ID,
35019                                                -3, wbs_hdr.PLAN_TYPE_ID,
35020                                                -4, wbs_hdr.PLAN_TYPE_ID,
35021                                                    -1)                  and
35022           decode(wbs_hdr.WP_FLAG,
35023                  'N', decode(pjp1.PLAN_VERSION_ID,
35024                              -1, 'Y',
35025                              -2, 'Y',
35026                              -3, 'Y',
35027                              -4, 'Y',
35028                                  decode(pjp1.RBS_AGGR_LEVEL
35029                                           || '_' || wbs_hdr.CB_FLAG
35030                                           || '_' || wbs_hdr.CO_FLAG,
35031                                         'L_Y_Y', 'Y',
35032                                         'L_N_Y', 'Y',
35033                                         'L_Y_N', 'Y',
35034                                                  'N')),
35035                       'Y')           =  'Y'                             and
35036           prg.SUP_PROJECT_ID         =  sup_wbs_hdr.PROJECT_ID      (+) and
35037           prg.SUP_ID                 =  sup_wbs_hdr.WBS_VERSION_ID  (+) and
35038           'Y'                        =  sup_wbs_hdr.WP_FLAG         (+) and
35039           wbs_hdr.PROJECT_ID         =  sub_ver.PROJECT_ID          (+) and
35040           wbs_hdr.WBS_VERSION_ID     =  sub_ver.ELEMENT_VERSION_ID  (+) and
35041           'STRUCTURE_PUBLISHED'      =  sub_ver.STATUS_CODE         (+) and
35042           sup_wbs_hdr.PROJECT_ID     =  sup_ver.PROJECT_ID          (+) and
35043           sup_wbs_hdr.WBS_VERSION_ID =  sup_ver.ELEMENT_VERSION_ID  (+) and
35044           'STRUCTURE_PUBLISHED'      =  sup_ver.STATUS_CODE         (+) and
35045           wbs_hdr.CB_FLAG            =  fin_plan.CB                 (+) and
35046           wbs_hdr.CO_FLAG            =  fin_plan.CO                 (+)
35047         )                          pjp,
35048         PJI_PJP_PROJ_BATCH_MAP     map,
35049         PA_PROJ_WORKPLAN_ATTR      sup_wpa,
35050         PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
35051         PA_XBS_DENORM              wbs,
35052         (
35053           select 1     WBS_SUP_LEVEL,
35054                  'PRJ' INVERT_ID
35055           from   DUAL
35056           union all
35057           select 1     WBS_SUP_LEVEL,
35058                  'WBS' INVERT_ID
35059           from   DUAL
35060         ) top_slice
35061       where
35062         map.WORKER_ID           = p_worker_id                         and
35063         map.PROJECT_ID          = pjp.SUP_PROJECT_ID                  and
35064         pjp.SUP_EMT_ID          = sup_wpa.PROJ_ELEMENT_ID             and
35065         pjp.SUP_PROJECT_ID      = sup_fin_ver.PROJECT_ID          (+) and
35066         pjp.SUP_ID              = sup_fin_ver.ELEMENT_VERSION_ID  (+) and
35067         'STRUCTURE_WORKING'     = sup_fin_ver.STATUS_CODE         (+) and
35068         (pjp.SUP_WP_FLAG is null or
35069          (pjp.SUP_WP_FLAG is not null and
35070           (sup_fin_ver.PROJECT_ID is not null or
35071            sup_wpa.WP_ENABLE_VERSION_FLAG = 'N')))                    and
35072         'WBS'                   = wbs.STRUCT_TYPE                 (+) and
35073         pjp.STRUCT_TYPE         = wbs.STRUCT_TYPE                 (+) and
35074         pjp.SUP_PROJECT_ID      = wbs.SUP_PROJECT_ID              (+) and
35075         pjp.SUP_ID              = wbs.STRUCT_VERSION_ID           (+) and
35076         pjp.SUB_ROLLUP_ID       = wbs.SUB_EMT_ID                  (+) and
35077         wbs.SUP_LEVEL           = top_slice.WBS_SUP_LEVEL         (+)
35078       group by
35079         pjp.LINE_TYPE,
35080         pjp.SUP_PROJECT_ID,
35081         map.PROJECT_ORG_ID,
35082         map.PROJECT_ORGANIZATION_ID,
35083         decode(pjp.STRUCT_TYPE,
35084                'DO_NOT_ROLLUP', pjp.SUB_ROLLUP_ID,
35085                                 decode(top_slice.INVERT_ID,
35086                                        'PRJ', pjp.SUP_EMT_ID, wbs.SUP_EMT_ID)
35087               ),
35088         pjp.TIME_ID,
35089         pjp.PERIOD_TYPE_ID,
35090         pjp.CALENDAR_TYPE,
35091         pjp.RBS_AGGR_LEVEL,
35092         decode(pjp.STRUCT_TYPE,
35093                'DO_NOT_ROLLUP', 'N',
35094                                 decode(top_slice.INVERT_ID,
35095                                        'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
35096                                                           wbs.SUP_EMT_ID,
35097                                                           'N', 'Y'))
35098               ),
35099         pjp.CURR_RECORD_TYPE_ID,
35100         pjp.CURRENCY_CODE,
35101         pjp.RBS_ELEMENT_ID,
35102         pjp.RBS_VERSION_ID,
35103         pjp.PLAN_VERSION_ID,
35104         pjp.PLAN_TYPE_ID,
35105         pjp.PLAN_TYPE_CODE;
35106     elsif (p_worker_id =9) then
35107       -- Query for Partition 9
35108 
35109         insert /*+ parallel(PJI_FP_AGGR_PJP1) */
35110                    into PJI_FP_AGGR_PJP1 partition(P9)
35111       (
35112         WORKER_ID,
35113         RECORD_TYPE,
35114         PRG_LEVEL,
35115         LINE_TYPE,
35116         PROJECT_ID,
35117         PROJECT_ORG_ID,
35118         PROJECT_ORGANIZATION_ID,
35119         PROJECT_ELEMENT_ID,
35120         TIME_ID,
35121         PERIOD_TYPE_ID,
35122         CALENDAR_TYPE,
35123         RBS_AGGR_LEVEL,
35124         WBS_ROLLUP_FLAG,
35125         PRG_ROLLUP_FLAG,
35126         CURR_RECORD_TYPE_ID,
35127         CURRENCY_CODE,
35128         RBS_ELEMENT_ID,
35129         RBS_VERSION_ID,
35130         PLAN_VERSION_ID,
35131         PLAN_TYPE_ID,
35132         PLAN_TYPE_CODE,
35133         RAW_COST,
35134         BRDN_COST,
35135         REVENUE,
35136         BILL_RAW_COST,
35137         BILL_BRDN_COST,
35138         BILL_LABOR_RAW_COST,
35139         BILL_LABOR_BRDN_COST,
35140         BILL_LABOR_HRS,
35141         EQUIPMENT_RAW_COST,
35142         EQUIPMENT_BRDN_COST,
35143         CAPITALIZABLE_RAW_COST,
35144         CAPITALIZABLE_BRDN_COST,
35145         LABOR_RAW_COST,
35146         LABOR_BRDN_COST,
35147         LABOR_HRS,
35148         LABOR_REVENUE,
35149         EQUIPMENT_HOURS,
35150         BILLABLE_EQUIPMENT_HOURS,
35151         SUP_INV_COMMITTED_COST,
35152         PO_COMMITTED_COST,
35153         PR_COMMITTED_COST,
35154         OTH_COMMITTED_COST,
35155         ACT_LABOR_HRS,
35156         ACT_EQUIP_HRS,
35157         ACT_LABOR_BRDN_COST,
35158         ACT_EQUIP_BRDN_COST,
35159         ACT_BRDN_COST,
35160         ACT_RAW_COST,
35161         ACT_REVENUE,
35162         ACT_LABOR_RAW_COST,
35163         ACT_EQUIP_RAW_COST,
35164         ETC_LABOR_HRS,
35165         ETC_EQUIP_HRS,
35166         ETC_LABOR_BRDN_COST,
35167         ETC_EQUIP_BRDN_COST,
35168         ETC_BRDN_COST,
35169         ETC_RAW_COST,
35170         ETC_LABOR_RAW_COST,
35171         ETC_EQUIP_RAW_COST,
35172         CUSTOM1,
35173         CUSTOM2,
35174         CUSTOM3,
35175         CUSTOM4,
35176         CUSTOM5,
35177         CUSTOM6,
35178         CUSTOM7,
35179         CUSTOM8,
35180         CUSTOM9,
35181         CUSTOM10,
35182         CUSTOM11,
35183         CUSTOM12,
35184         CUSTOM13,
35185         CUSTOM14,
35186         CUSTOM15
35187       )
35188       select /*+ no_merge(pjp) */
35189         p_worker_id                                   WORKER_ID,
35190         'P'                                           RECORD_TYPE,
35191         l_level                                       PRG_LEVEL,
35192         pjp.LINE_TYPE,
35193         pjp.SUP_PROJECT_ID                            PROJECT_ID,
35194         map.PROJECT_ORG_ID,
35195         map.PROJECT_ORGANIZATION_ID,
35196         decode(pjp.STRUCT_TYPE,
35197                'DO_NOT_ROLLUP', pjp.SUB_ROLLUP_ID,
35198                                 decode(top_slice.INVERT_ID,
35199                                        'PRJ', pjp.SUP_EMT_ID, wbs.SUP_EMT_ID)
35200               )                                       PROJECT_ELEMENT_ID,
35201         pjp.TIME_ID,
35202         pjp.PERIOD_TYPE_ID,
35203         pjp.CALENDAR_TYPE,
35204         pjp.RBS_AGGR_LEVEL,
35205         decode(pjp.STRUCT_TYPE,
35206                'DO_NOT_ROLLUP', 'N',
35207                                 decode(top_slice.INVERT_ID,
35208                                        'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
35209                                                           wbs.SUP_EMT_ID,
35210                                                           'N', 'Y'))
35211               )                                       WBS_ROLLUP_FLAG,
35212         'Y'                                           PRG_ROLLUP_FLAG,
35213         pjp.CURR_RECORD_TYPE_ID,
35214         pjp.CURRENCY_CODE,
35215         pjp.RBS_ELEMENT_ID,
35216         pjp.RBS_VERSION_ID,
35217         pjp.PLAN_VERSION_ID,
35218         pjp.PLAN_TYPE_ID,
35219         pjp.PLAN_TYPE_CODE,
35220         sum(pjp.RAW_COST)                             RAW_COST,
35221         sum(pjp.BRDN_COST)                            BRDN_COST,
35222         sum(pjp.REVENUE)                              REVENUE,
35223         sum(pjp.BILL_RAW_COST)                        BILL_RAW_COST,
35224         sum(pjp.BILL_BRDN_COST)                       BILL_BRDN_COST,
35225         sum(pjp.BILL_LABOR_RAW_COST)                  BILL_LABOR_RAW_COST,
35226         sum(pjp.BILL_LABOR_BRDN_COST)                 BILL_LABOR_BRDN_COST,
35227         sum(pjp.BILL_LABOR_HRS)                       BILL_LABOR_HRS,
35228         sum(pjp.EQUIPMENT_RAW_COST)                   EQUIPMENT_RAW_COST,
35229         sum(pjp.EQUIPMENT_BRDN_COST)                  EQUIPMENT_BRDN_COST,
35230         sum(pjp.CAPITALIZABLE_RAW_COST)               CAPITALIZABLE_RAW_COST,
35231         sum(pjp.CAPITALIZABLE_BRDN_COST)              CAPITALIZABLE_BRDN_COST,
35232         sum(pjp.LABOR_RAW_COST)                       LABOR_RAW_COST,
35233         sum(pjp.LABOR_BRDN_COST)                      LABOR_BRDN_COST,
35234         sum(pjp.LABOR_HRS)                            LABOR_HRS,
35235         sum(pjp.LABOR_REVENUE)                        LABOR_REVENUE,
35236         sum(pjp.EQUIPMENT_HOURS)                      EQUIPMENT_HOURS,
35237         sum(pjp.BILLABLE_EQUIPMENT_HOURS)             BILLABLE_EQUIPMENT_HOURS,
35238         sum(pjp.SUP_INV_COMMITTED_COST)               SUP_INV_COMMITTED_COST,
35239         sum(pjp.PO_COMMITTED_COST)                    PO_COMMITTED_COST,
35240         sum(pjp.PR_COMMITTED_COST)                    PR_COMMITTED_COST,
35241         sum(pjp.OTH_COMMITTED_COST)                   OTH_COMMITTED_COST,
35242         sum(pjp.ACT_LABOR_HRS)                        ACT_LABOR_HRS,
35243         sum(pjp.ACT_EQUIP_HRS)                        ACT_EQUIP_HRS,
35244         sum(pjp.ACT_LABOR_BRDN_COST)                  ACT_LABOR_BRDN_COST,
35245         sum(pjp.ACT_EQUIP_BRDN_COST)                  ACT_EQUIP_BRDN_COST,
35246         sum(pjp.ACT_BRDN_COST)                        ACT_BRDN_COST,
35247         sum(pjp.ACT_RAW_COST)                         ACT_RAW_COST,
35248         sum(pjp.ACT_REVENUE)                          ACT_REVENUE,
35249         sum(pjp.ACT_LABOR_RAW_COST)                   ACT_LABOR_RAW_COST,
35250         sum(pjp.ACT_EQUIP_RAW_COST)                   ACT_EQUIP_RAW_COST,
35251         sum(pjp.ETC_LABOR_HRS)                        ETC_LABOR_HRS,
35252         sum(pjp.ETC_EQUIP_HRS)                        ETC_EQUIP_HRS,
35253         sum(pjp.ETC_LABOR_BRDN_COST)                  ETC_LABOR_BRDN_COST,
35254         sum(pjp.ETC_EQUIP_BRDN_COST)                  ETC_EQUIP_BRDN_COST,
35255         sum(pjp.ETC_BRDN_COST)                        ETC_BRDN_COST,
35256         sum(pjp.ETC_RAW_COST)                         ETC_RAW_COST,
35257         sum(pjp.ETC_LABOR_RAW_COST)                   ETC_LABOR_RAW_COST,
35258         sum(pjp.ETC_EQUIP_RAW_COST)                   ETC_EQUIP_RAW_COST,
35259         sum(pjp.CUSTOM1)                              CUSTOM1,
35260         sum(pjp.CUSTOM2)                              CUSTOM2,
35261         sum(pjp.CUSTOM3)                              CUSTOM3,
35262         sum(pjp.CUSTOM4)                              CUSTOM4,
35263         sum(pjp.CUSTOM5)                              CUSTOM5,
35264         sum(pjp.CUSTOM6)                              CUSTOM6,
35265         sum(pjp.CUSTOM7)                              CUSTOM7,
35266         sum(pjp.CUSTOM8)                              CUSTOM8,
35267         sum(pjp.CUSTOM9)                              CUSTOM9,
35268         sum(pjp.CUSTOM10)                             CUSTOM10,
35269         sum(pjp.CUSTOM11)                             CUSTOM11,
35270         sum(pjp.CUSTOM12)                             CUSTOM12,
35271         sum(pjp.CUSTOM13)                             CUSTOM13,
35272         sum(pjp.CUSTOM14)                             CUSTOM14,
35273         sum(pjp.CUSTOM15)                             CUSTOM15
35274       from
35275         (
35276         select /*+ ordered index(fpr PJI_FP_XBS_ACCUM_F_N1) */
35277                -- get structure level amounts from Reporting Lines
35278           decode(fpr.RBS_AGGR_LEVEL,
35279                  'L', 'DO_NOT_ROLLUP',
35280                       'WBS')                          STRUCT_TYPE,
35281           to_char(null)                               LINE_TYPE,
35282           prg.SUP_PROJECT_ID,
35283           prg.SUP_ID,
35284           prg.SUP_EMT_ID,
35285           prg.SUB_EMT_ID,
35286           prg.SUB_ROLLUP_ID,
35287           'FPR'                                       LINE_SOURCE,
35288           decode(fpr.PLAN_VERSION_ID,
35289                  -1, prg.SUB_ID,
35290                  -3, prg.SUB_ID,
35291                  -4, prg.SUB_ID,
35292                      decode(fin_plan.PLAN_VERSION_ID,
35293                             null, null,
35294                                   prg.SUB_ID))        SUB_ID,
35295           decode(fpr.PLAN_VERSION_ID,
35296                  -1, 'N',
35297                  -3, 'N',
35298                  -4, 'N',
35299                      decode(fin_plan.PLAN_VERSION_ID,
35300                             null, null,
35301                                   'N'))               SUP_WP_FLAG,
35302           decode(fpr.PLAN_VERSION_ID,
35303                  -1, fpr.PLAN_VERSION_ID,
35304                  -3, fpr.PLAN_VERSION_ID,
35305                  -4, fpr.PLAN_VERSION_ID,
35306                      decode(fin_plan.PLAN_VERSION_ID,
35307                             null, null,
35308                                   fin_plan.PLAN_VERSION_ID)
35309                 )                                     SUB_PLAN_VERSION_ID,
35310           decode(fpr.PLAN_VERSION_ID,
35311                  -1, fpr.PLAN_TYPE_ID,
35312                  -3, fpr.PLAN_TYPE_ID,
35313                  -4, fpr.PLAN_TYPE_ID,
35314                      decode(fin_plan.PLAN_VERSION_ID,
35315                             null, null,
35316                                   fpr.PLAN_TYPE_ID))  SUB_PLAN_TYPE_ID,
35317           fpr.TIME_ID,
35318           fpr.PERIOD_TYPE_ID,
35319           fpr.CALENDAR_TYPE,
35320           fpr.RBS_AGGR_LEVEL,
35321           fpr.CURR_RECORD_TYPE_ID,
35322           fpr.CURRENCY_CODE,
35323           fpr.RBS_ELEMENT_ID,
35324           fpr.RBS_VERSION_ID,
35325           decode(wbs_hdr.WP_FLAG,
35326                  'N', decode(wbs_hdr.PLAN_VERSION_ID,
35327                              -1, fpr.PLAN_VERSION_ID,
35328                                  fin_plan.PLAN_VERSION_ID),
35329                       sup_wbs_hdr.PLAN_VERSION_ID)    PLAN_VERSION_ID,
35330           decode(wbs_hdr.WP_FLAG,
35331                  'N', fpr.PLAN_TYPE_ID,
35332                       sup_wbs_hdr.PLAN_TYPE_ID)       PLAN_TYPE_ID,
35333           fpr.PLAN_TYPE_CODE,
35334           decode(wbs_hdr.WP_FLAG
35335                    || '_' || sup_wbs_hdr.WP_FLAG
35336                    || '_' || sub_ver.STATUS_CODE
35337                    || '_' || sup_ver.STATUS_CODE,
35338                  'Y_Y__', to_number(null),
35339                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35340                  prg.SIGN * fpr.RAW_COST)             RAW_COST,
35341           decode(wbs_hdr.WP_FLAG
35342                    || '_' || sup_wbs_hdr.WP_FLAG
35343                    || '_' || sub_ver.STATUS_CODE
35344                    || '_' || sup_ver.STATUS_CODE,
35345                  'Y_Y__', to_number(null),
35346                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35347                  prg.SIGN * fpr.BRDN_COST)            BRDN_COST,
35348           decode(wbs_hdr.WP_FLAG
35349                    || '_' || sup_wbs_hdr.WP_FLAG
35350                    || '_' || sub_ver.STATUS_CODE
35351                    || '_' || sup_ver.STATUS_CODE,
35352                  'Y_Y__', to_number(null),
35353                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35354                  prg.SIGN * fpr.REVENUE)              REVENUE,
35355           decode(wbs_hdr.WP_FLAG
35356                    || '_' || sup_wbs_hdr.WP_FLAG
35357                    || '_' || sub_ver.STATUS_CODE
35358                    || '_' || sup_ver.STATUS_CODE,
35359                  'Y_Y__', to_number(null),
35360                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35361                  prg.SIGN * fpr.BILL_RAW_COST)        BILL_RAW_COST,
35362           decode(wbs_hdr.WP_FLAG
35363                    || '_' || sup_wbs_hdr.WP_FLAG
35364                    || '_' || sub_ver.STATUS_CODE
35365                    || '_' || sup_ver.STATUS_CODE,
35366                  'Y_Y__', to_number(null),
35367                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35368                  prg.SIGN * fpr.BILL_BRDN_COST)       BILL_BRDN_COST,
35369           decode(wbs_hdr.WP_FLAG
35370                    || '_' || sup_wbs_hdr.WP_FLAG
35371                    || '_' || sub_ver.STATUS_CODE
35372                    || '_' || sup_ver.STATUS_CODE,
35373                  'Y_Y__', to_number(null),
35374                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35375                  prg.SIGN * fpr.BILL_LABOR_RAW_COST)  BILL_LABOR_RAW_COST,
35376           decode(wbs_hdr.WP_FLAG
35377                    || '_' || sup_wbs_hdr.WP_FLAG
35378                    || '_' || sub_ver.STATUS_CODE
35379                    || '_' || sup_ver.STATUS_CODE,
35380                  'Y_Y__', to_number(null),
35381                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35382                  prg.SIGN * fpr.BILL_LABOR_BRDN_COST) BILL_LABOR_BRDN_COST,
35383           decode(wbs_hdr.WP_FLAG
35384                    || '_' || sup_wbs_hdr.WP_FLAG
35385                    || '_' || sub_ver.STATUS_CODE
35386                    || '_' || sup_ver.STATUS_CODE,
35387                  'Y_Y__', to_number(null),
35388                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35389                  prg.SIGN * fpr.BILL_LABOR_HRS)       BILL_LABOR_HRS,
35390           decode(wbs_hdr.WP_FLAG
35391                    || '_' || sup_wbs_hdr.WP_FLAG
35392                    || '_' || sub_ver.STATUS_CODE
35393                    || '_' || sup_ver.STATUS_CODE,
35394                  'Y_Y__', to_number(null),
35395                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35396                  prg.SIGN * fpr.EQUIPMENT_RAW_COST)   EQUIPMENT_RAW_COST,
35397           decode(wbs_hdr.WP_FLAG
35398                    || '_' || sup_wbs_hdr.WP_FLAG
35399                    || '_' || sub_ver.STATUS_CODE
35400                    || '_' || sup_ver.STATUS_CODE,
35401                  'Y_Y__', to_number(null),
35402                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35403                  prg.SIGN * fpr.EQUIPMENT_BRDN_COST)  EQUIPMENT_BRDN_COST,
35404           decode(wbs_hdr.WP_FLAG
35405                    || '_' || sup_wbs_hdr.WP_FLAG
35406                    || '_' || sub_ver.STATUS_CODE
35407                    || '_' || sup_ver.STATUS_CODE,
35408                  'Y_Y__', to_number(null),
35409                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35410                  prg.SIGN * fpr.CAPITALIZABLE_RAW_COST)
35411                                                       CAPITALIZABLE_RAW_COST,
35412           decode(wbs_hdr.WP_FLAG
35413                    || '_' || sup_wbs_hdr.WP_FLAG
35414                    || '_' || sub_ver.STATUS_CODE
35415                    || '_' || sup_ver.STATUS_CODE,
35416                  'Y_Y__', to_number(null),
35417                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35418                  prg.SIGN * fpr.CAPITALIZABLE_BRDN_COST)
35419                                                       CAPITALIZABLE_BRDN_COST,
35420           decode(wbs_hdr.WP_FLAG
35421                    || '_' || sup_wbs_hdr.WP_FLAG
35422                    || '_' || sub_ver.STATUS_CODE
35423                    || '_' || sup_ver.STATUS_CODE,
35424                  'Y_Y__', to_number(null),
35425                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35426                  prg.SIGN * fpr.LABOR_RAW_COST)       LABOR_RAW_COST,
35427           decode(wbs_hdr.WP_FLAG
35428                    || '_' || sup_wbs_hdr.WP_FLAG
35429                    || '_' || sub_ver.STATUS_CODE
35430                    || '_' || sup_ver.STATUS_CODE,
35431                  'Y_Y__', to_number(null),
35432                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35433                  prg.SIGN * fpr.LABOR_BRDN_COST)      LABOR_BRDN_COST,
35434           decode(wbs_hdr.WP_FLAG
35435                    || '_' || sup_wbs_hdr.WP_FLAG
35436                    || '_' || sub_ver.STATUS_CODE
35437                    || '_' || sup_ver.STATUS_CODE,
35438                  'Y_Y__', to_number(null),
35439                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35440                  prg.SIGN * fpr.LABOR_HRS)            LABOR_HRS,
35441           decode(wbs_hdr.WP_FLAG
35442                    || '_' || sup_wbs_hdr.WP_FLAG
35443                    || '_' || sub_ver.STATUS_CODE
35444                    || '_' || sup_ver.STATUS_CODE,
35445                  'Y_Y__', to_number(null),
35446                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35447                  prg.SIGN * fpr.LABOR_REVENUE)        LABOR_REVENUE,
35448           decode(wbs_hdr.WP_FLAG
35449                    || '_' || sup_wbs_hdr.WP_FLAG
35450                    || '_' || sub_ver.STATUS_CODE
35451                    || '_' || sup_ver.STATUS_CODE,
35452                  'Y_Y__', to_number(null),
35453                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35454                  prg.SIGN * fpr.EQUIPMENT_HOURS)      EQUIPMENT_HOURS,
35455           decode(wbs_hdr.WP_FLAG
35456                    || '_' || sup_wbs_hdr.WP_FLAG
35457                    || '_' || sub_ver.STATUS_CODE
35458                    || '_' || sup_ver.STATUS_CODE,
35459                  'Y_Y__', to_number(null),
35460                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35461                  prg.SIGN * fpr.BILLABLE_EQUIPMENT_HOURS)
35462                                                       BILLABLE_EQUIPMENT_HOURS,
35463           decode(wbs_hdr.WP_FLAG
35464                    || '_' || sup_wbs_hdr.WP_FLAG
35465                    || '_' || sub_ver.STATUS_CODE
35466                    || '_' || sup_ver.STATUS_CODE,
35467                  'Y_Y__', to_number(null),
35468                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35469                  prg.SIGN * fpr.SUP_INV_COMMITTED_COST)
35470                                                       SUP_INV_COMMITTED_COST,
35471           decode(wbs_hdr.WP_FLAG
35472                    || '_' || sup_wbs_hdr.WP_FLAG
35473                    || '_' || sub_ver.STATUS_CODE
35474                    || '_' || sup_ver.STATUS_CODE,
35475                  'Y_Y__', to_number(null),
35476                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35477                  prg.SIGN * fpr.PO_COMMITTED_COST)    PO_COMMITTED_COST,
35478           decode(wbs_hdr.WP_FLAG
35479                    || '_' || sup_wbs_hdr.WP_FLAG
35480                    || '_' || sub_ver.STATUS_CODE
35481                    || '_' || sup_ver.STATUS_CODE,
35482                  'Y_Y__', to_number(null),
35483                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35484                  prg.SIGN * fpr.PR_COMMITTED_COST)    PR_COMMITTED_COST,
35485           decode(wbs_hdr.WP_FLAG
35486                    || '_' || sup_wbs_hdr.WP_FLAG
35487                    || '_' || sub_ver.STATUS_CODE
35488                    || '_' || sup_ver.STATUS_CODE,
35489                  'Y_Y__', to_number(null),
35490                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35491                  prg.SIGN * fpr.OTH_COMMITTED_COST)   OTH_COMMITTED_COST,
35492           decode(wbs_hdr.WP_FLAG
35493                    || '_' || sup_wbs_hdr.WP_FLAG
35494                    || '_' || sup_ver.STATUS_CODE,
35495                  'Y_Y_', to_number(null),
35496                  prg.SIGN * fpr.ACT_LABOR_HRS)        ACT_LABOR_HRS,
35497           decode(wbs_hdr.WP_FLAG
35498                    || '_' || sup_wbs_hdr.WP_FLAG
35499                    || '_' || sup_ver.STATUS_CODE,
35500                  'Y_Y_', to_number(null),
35501                  prg.SIGN * fpr.ACT_EQUIP_HRS)        ACT_EQUIP_HRS,
35502           decode(wbs_hdr.WP_FLAG
35503                    || '_' || sup_wbs_hdr.WP_FLAG
35504                    || '_' || sup_ver.STATUS_CODE,
35505                  'Y_Y_', to_number(null),
35506                  prg.SIGN * fpr.ACT_LABOR_BRDN_COST)  ACT_LABOR_BRDN_COST,
35507           decode(wbs_hdr.WP_FLAG
35508                    || '_' || sup_wbs_hdr.WP_FLAG
35509                    || '_' || sup_ver.STATUS_CODE,
35510                  'Y_Y_', to_number(null),
35511                  prg.SIGN * fpr.ACT_EQUIP_BRDN_COST)  ACT_EQUIP_BRDN_COST,
35512           decode(wbs_hdr.WP_FLAG
35513                    || '_' || sup_wbs_hdr.WP_FLAG
35514                    || '_' || sup_ver.STATUS_CODE,
35515                  'Y_Y_', to_number(null),
35516                  prg.SIGN * fpr.ACT_BRDN_COST)        ACT_BRDN_COST,
35517           decode(wbs_hdr.WP_FLAG
35518                    || '_' || sup_wbs_hdr.WP_FLAG
35519                    || '_' || sup_ver.STATUS_CODE,
35520                  'Y_Y_', to_number(null),
35521                  prg.SIGN * fpr.ACT_RAW_COST)         ACT_RAW_COST,
35522           decode(wbs_hdr.WP_FLAG
35523                    || '_' || sup_wbs_hdr.WP_FLAG
35524                    || '_' || sup_ver.STATUS_CODE,
35525                  'Y_Y_', to_number(null),
35526                  prg.SIGN * fpr.ACT_REVENUE)          ACT_REVENUE,
35527           decode(wbs_hdr.WP_FLAG
35528                    || '_' || sup_wbs_hdr.WP_FLAG
35529                    || '_' || sup_ver.STATUS_CODE,
35530                  'Y_Y_', to_number(null),
35531                  prg.SIGN * fpr.ACT_LABOR_RAW_COST)   ACT_LABOR_RAW_COST,
35532           decode(wbs_hdr.WP_FLAG
35533                    || '_' || sup_wbs_hdr.WP_FLAG
35534                    || '_' || sup_ver.STATUS_CODE,
35535                  'Y_Y_', to_number(null),
35536                  prg.SIGN * fpr.ACT_EQUIP_RAW_COST)   ACT_EQUIP_RAW_COST,
35537           decode(wbs_hdr.WP_FLAG
35538                    || '_' || sup_wbs_hdr.WP_FLAG
35539                    || '_' || sup_ver.STATUS_CODE,
35540                  'Y_Y_', to_number(null),
35541                  prg.SIGN * fpr.ETC_LABOR_HRS)        ETC_LABOR_HRS,
35542           decode(wbs_hdr.WP_FLAG
35543                    || '_' || sup_wbs_hdr.WP_FLAG
35544                    || '_' || sup_ver.STATUS_CODE,
35545                  'Y_Y_', to_number(null),
35546                  prg.SIGN * fpr.ETC_EQUIP_HRS)        ETC_EQUIP_HRS,
35547           decode(wbs_hdr.WP_FLAG
35548                    || '_' || sup_wbs_hdr.WP_FLAG
35549                    || '_' || sup_ver.STATUS_CODE,
35550                  'Y_Y_', to_number(null),
35551                  prg.SIGN * fpr.ETC_LABOR_BRDN_COST)  ETC_LABOR_BRDN_COST,
35552           decode(wbs_hdr.WP_FLAG
35553                    || '_' || sup_wbs_hdr.WP_FLAG
35554                    || '_' || sup_ver.STATUS_CODE,
35555                  'Y_Y_', to_number(null),
35556                  prg.SIGN * fpr.ETC_EQUIP_BRDN_COST)  ETC_EQUIP_BRDN_COST,
35557           decode(wbs_hdr.WP_FLAG
35558                    || '_' || sup_wbs_hdr.WP_FLAG
35559                    || '_' || sup_ver.STATUS_CODE,
35560                  'Y_Y_', to_number(null),
35561                  prg.SIGN * fpr.ETC_BRDN_COST)        ETC_BRDN_COST,
35562           decode(wbs_hdr.WP_FLAG
35563                    || '_' || sup_wbs_hdr.WP_FLAG
35564                    || '_' || sup_ver.STATUS_CODE,
35565                  'Y_Y_', to_number(null),
35566                  prg.SIGN * fpr.ETC_RAW_COST)         ETC_RAW_COST,
35567           decode(wbs_hdr.WP_FLAG
35568                    || '_' || sup_wbs_hdr.WP_FLAG
35569                    || '_' || sup_ver.STATUS_CODE,
35570                  'Y_Y_', to_number(null),
35571                  prg.SIGN * fpr.ETC_LABOR_RAW_COST)   ETC_LABOR_RAW_COST,
35572           decode(wbs_hdr.WP_FLAG
35573                    || '_' || sup_wbs_hdr.WP_FLAG
35574                    || '_' || sup_ver.STATUS_CODE,
35575                  'Y_Y_', to_number(null),
35576                  prg.SIGN * fpr.ETC_EQUIP_RAW_COST)   ETC_EQUIP_RAW_COST,
35577           prg.SIGN * fpr.CUSTOM1                      CUSTOM1,
35578           prg.SIGN * fpr.CUSTOM2                      CUSTOM2,
35579           prg.SIGN * fpr.CUSTOM3                      CUSTOM3,
35580           prg.SIGN * fpr.CUSTOM4                      CUSTOM4,
35581           prg.SIGN * fpr.CUSTOM5                      CUSTOM5,
35582           prg.SIGN * fpr.CUSTOM6                      CUSTOM6,
35583           prg.SIGN * fpr.CUSTOM7                      CUSTOM7,
35584           prg.SIGN * fpr.CUSTOM8                      CUSTOM8,
35585           prg.SIGN * fpr.CUSTOM9                      CUSTOM9,
35586           prg.SIGN * fpr.CUSTOM10                     CUSTOM10,
35587           prg.SIGN * fpr.CUSTOM11                     CUSTOM11,
35588           prg.SIGN * fpr.CUSTOM12                     CUSTOM12,
35589           prg.SIGN * fpr.CUSTOM13                     CUSTOM13,
35590           prg.SIGN * fpr.CUSTOM14                     CUSTOM14,
35591           prg.SIGN * fpr.CUSTOM15                     CUSTOM15
35592         from
35593           PJI_XBS_DENORM_DELTA       prg,
35594           PA_PROJ_ELEMENTS           prj_emt,
35595           PJI_PJP_WBS_HEADER         wbs_hdr,
35596           PJI_FP_XBS_ACCUM_F         fpr,
35597           PJI_PJP_WBS_HEADER         sup_wbs_hdr,
35598           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
35599           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
35600           (
35601             select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID
35602             from DUAL union all
35603             select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID
35604             from DUAL union all
35605             select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID
35606             from DUAL union all
35607             select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID
35608             from DUAL
35609           ) fin_plan
35610         where
35611           prg.WORKER_ID              =  p_worker_id                    and
35612           prg.STRUCT_TYPE            =  'PRG'                          and
35613           prg.SUP_LEVEL              =  l_level                        and
35614           nvl(prg.SUB_ROLLUP_ID,
35615               prg.SUP_EMT_ID)        <> prg.SUP_EMT_ID                 and
35616           fpr.PROJECT_ID             =  prj_emt.PROJECT_ID             and
35617           (((fpr.RBS_AGGR_LEVEL,
35618              fpr.WBS_ROLLUP_FLAG,
35619              fpr.PRG_ROLLUP_FLAG) in (('T', 'Y', 'Y'),
35620                                       ('T', 'Y', 'N'),
35621                                       ('T', 'N', 'Y'),
35622                                       ('T', 'N', 'N'),
35623                                       ('L', 'N', 'N')) and
35624              fpr.PROJECT_ELEMENT_ID = prg.SUB_EMT_ID) or
35625            ((fpr.RBS_AGGR_LEVEL,
35626              fpr.WBS_ROLLUP_FLAG,
35627              fpr.PRG_ROLLUP_FLAG) in (('L', 'N', 'Y'),
35628                                       ('L', 'N', 'N')) and
35629              fpr.PROJECT_ELEMENT_ID <> prg.SUB_EMT_ID))                and
35630           decode(fpr.PLAN_VERSION_ID,
35631                  -1, 'LF',
35632                  -2, 'LF',
35633                  -3, 'LF',
35634                  -4, 'LF',
35635                      decode(wbs_hdr.WP_FLAG,
35636                             'N', 'LF',
35637                               'LW')) =  prg.RELATIONSHIP_TYPE          and
35638           prj_emt.PROJ_ELEMENT_ID    =  prg.SUB_EMT_ID                 and
35639           wbs_hdr.PROJECT_ID         =  prj_emt.PROJECT_ID             and
35640           decode(wbs_hdr.WP_FLAG,
35641                  'Y', wbs_hdr.WBS_VERSION_ID,
35642                       -1)            = decode(wbs_hdr.WP_FLAG,
35643                                               'Y', prg.SUB_ID,
35644                                                    -1)                 and
35645           wbs_hdr.PLAN_VERSION_ID    =  fpr.PLAN_VERSION_ID            and
35646           wbs_hdr.PLAN_TYPE_CODE     =  fpr.PLAN_TYPE_CODE             and
35647           decode(fpr.PLAN_VERSION_ID,
35648                  -3, fpr.PLAN_TYPE_ID,
35649                  -4, fpr.PLAN_TYPE_ID,
35650                      -1)             =  decode(fpr.PLAN_VERSION_ID,
35651                                                -3, wbs_hdr.PLAN_TYPE_ID,
35652                                                -4, wbs_hdr.PLAN_TYPE_ID,
35653                                                    -1)                 and
35654           decode(wbs_hdr.WP_FLAG,
35655                  'N', decode(fpr.PLAN_VERSION_ID,
35656                              -1, 'Y',
35657                              -2, 'Y',
35658                              -3, 'Y',
35659                              -4, 'Y',
35660                                  decode(fpr.RBS_AGGR_LEVEL
35661                                           || '_' || wbs_hdr.CB_FLAG
35662                                           || '_' || wbs_hdr.CO_FLAG,
35663                                         'L_Y_Y', 'Y',
35664                                         'L_N_Y', 'Y',
35665                                         'L_Y_N', 'Y',
35666                                                  'N')),
35667                       'Y')           =  'Y'                            and
35668           prg.SUP_PROJECT_ID         =  sup_wbs_hdr.PROJECT_ID     (+) and
35669           prg.SUP_ID                 =  sup_wbs_hdr.WBS_VERSION_ID (+) and
35670           'Y'                        =  sup_wbs_hdr.WP_FLAG        (+) and
35671           wbs_hdr.PROJECT_ID         =  sub_ver.PROJECT_ID         (+) and
35672           wbs_hdr.WBS_VERSION_ID     =  sub_ver.ELEMENT_VERSION_ID (+) and
35673           'STRUCTURE_PUBLISHED'      =  sub_ver.STATUS_CODE        (+) and
35674           sup_wbs_hdr.PROJECT_ID     =  sup_ver.PROJECT_ID         (+) and
35675           sup_wbs_hdr.WBS_VERSION_ID =  sup_ver.ELEMENT_VERSION_ID (+) and
35676           'STRUCTURE_PUBLISHED'      =  sup_ver.STATUS_CODE        (+) and
35677           wbs_hdr.CB_FLAG            =  fin_plan.CB                (+) and
35678           wbs_hdr.CO_FLAG            =  fin_plan.CO                (+)
35679         union all
35680         select /*+ ordered parallel(pjp1) */                   -- changed for bug 5927368
35681                -- get structure level amounts from interim
35682           decode(pjp1.RBS_AGGR_LEVEL,
35683                  'L', 'DO_NOT_ROLLUP',
35684                       'WBS')                          STRUCT_TYPE,
35685           to_char(null)                               LINE_TYPE,
35686           prg.SUP_PROJECT_ID,
35687           prg.SUP_ID,
35688           prg.SUP_EMT_ID,
35689           prg.SUB_EMT_ID,
35690           prg.SUB_ROLLUP_ID,
35691           'PJP1'                                      LINE_SOURCE,
35692           decode(pjp1.PLAN_VERSION_ID,
35693                  -1, prg.SUB_ID,
35694                  -3, prg.SUB_ID,
35695                  -4, prg.SUB_ID,
35696                      decode(fin_plan.PLAN_VERSION_ID,
35697                             null, null,
35698                                   prg.SUB_ID))        SUB_ID,
35699           decode(pjp1.PLAN_VERSION_ID,
35700                  -1, 'N',
35701                  -3, 'N',
35702                  -4, 'N',
35703                      decode(fin_plan.PLAN_VERSION_ID,
35704                             null, null,
35705                                   'N'))               SUP_WP_FLAG,
35706           decode(pjp1.PLAN_VERSION_ID,
35707                  -1, pjp1.PLAN_VERSION_ID,
35708                  -3, pjp1.PLAN_VERSION_ID,
35709                  -4, pjp1.PLAN_VERSION_ID,
35710                      decode(fin_plan.PLAN_VERSION_ID,
35711                             null, null,
35712                                   fin_plan.PLAN_VERSION_ID)
35713                 )                                     SUB_PLAN_VERSION_ID,
35714           decode(pjp1.PLAN_VERSION_ID,
35715                  -1, pjp1.PLAN_TYPE_ID,
35716                  -3, pjp1.PLAN_TYPE_ID,
35717                  -4, pjp1.PLAN_TYPE_ID,
35718                      decode(fin_plan.PLAN_VERSION_ID,
35719                             null, null,
35720                                   pjp1.PLAN_TYPE_ID)) SUB_PLAN_TYPE_ID,
35721           pjp1.TIME_ID,
35722           pjp1.PERIOD_TYPE_ID,
35723           pjp1.CALENDAR_TYPE,
35724           pjp1.RBS_AGGR_LEVEL,
35725           pjp1.CURR_RECORD_TYPE_ID,
35726           pjp1.CURRENCY_CODE,
35727           pjp1.RBS_ELEMENT_ID,
35728           pjp1.RBS_VERSION_ID,
35729           decode(wbs_hdr.WP_FLAG,
35730                  'N', decode(wbs_hdr.PLAN_VERSION_ID,
35731                              -1, pjp1.PLAN_VERSION_ID,
35732                                  fin_plan.PLAN_VERSION_ID),
35733                       sup_wbs_hdr.PLAN_VERSION_ID)    PLAN_VERSION_ID,
35734           decode(wbs_hdr.WP_FLAG,
35735                  'N', pjp1.PLAN_TYPE_ID,
35736                       sup_wbs_hdr.PLAN_TYPE_ID)       PLAN_TYPE_ID,
35737           pjp1.PLAN_TYPE_CODE,
35738           decode(wbs_hdr.WP_FLAG
35739                    || '_' || sup_wbs_hdr.WP_FLAG
35740                    || '_' || sub_ver.STATUS_CODE
35741                    || '_' || sup_ver.STATUS_CODE,
35742                  'Y_Y__', to_number(null),
35743                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35744                  pjp1.RAW_COST)                       RAW_COST,
35745           decode(wbs_hdr.WP_FLAG
35746                    || '_' || sup_wbs_hdr.WP_FLAG
35747                    || '_' || sub_ver.STATUS_CODE
35748                    || '_' || sup_ver.STATUS_CODE,
35749                  'Y_Y__', to_number(null),
35750                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35751                  pjp1.BRDN_COST)                      BRDN_COST,
35752           decode(wbs_hdr.WP_FLAG
35753                    || '_' || sup_wbs_hdr.WP_FLAG
35754                    || '_' || sub_ver.STATUS_CODE
35755                    || '_' || sup_ver.STATUS_CODE,
35756                  'Y_Y__', to_number(null),
35757                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35758                  pjp1.REVENUE)                        REVENUE,
35759           decode(wbs_hdr.WP_FLAG
35760                    || '_' || sup_wbs_hdr.WP_FLAG
35761                    || '_' || sub_ver.STATUS_CODE
35762                    || '_' || sup_ver.STATUS_CODE,
35763                  'Y_Y__', to_number(null),
35764                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35765                  pjp1.BILL_RAW_COST)                  BILL_RAW_COST,
35766           decode(wbs_hdr.WP_FLAG
35767                    || '_' || sup_wbs_hdr.WP_FLAG
35768                    || '_' || sub_ver.STATUS_CODE
35769                    || '_' || sup_ver.STATUS_CODE,
35770                  'Y_Y__', to_number(null),
35771                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35772                  pjp1.BILL_BRDN_COST)                 BILL_BRDN_COST,
35773           decode(wbs_hdr.WP_FLAG
35774                    || '_' || sup_wbs_hdr.WP_FLAG
35775                    || '_' || sub_ver.STATUS_CODE
35776                    || '_' || sup_ver.STATUS_CODE,
35777                  'Y_Y__', to_number(null),
35778                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35779                  pjp1.BILL_LABOR_RAW_COST)            BILL_LABOR_RAW_COST,
35780           decode(wbs_hdr.WP_FLAG
35781                    || '_' || sup_wbs_hdr.WP_FLAG
35782                    || '_' || sub_ver.STATUS_CODE
35783                    || '_' || sup_ver.STATUS_CODE,
35784                  'Y_Y__', to_number(null),
35785                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35786                  pjp1.BILL_LABOR_BRDN_COST)           BILL_LABOR_BRDN_COST,
35787           decode(wbs_hdr.WP_FLAG
35788                    || '_' || sup_wbs_hdr.WP_FLAG
35789                    || '_' || sub_ver.STATUS_CODE
35790                    || '_' || sup_ver.STATUS_CODE,
35791                  'Y_Y__', to_number(null),
35792                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35793                  pjp1.BILL_LABOR_HRS)                 BILL_LABOR_HRS,
35794           decode(wbs_hdr.WP_FLAG
35795                    || '_' || sup_wbs_hdr.WP_FLAG
35796                    || '_' || sub_ver.STATUS_CODE
35797                    || '_' || sup_ver.STATUS_CODE,
35798                  'Y_Y__', to_number(null),
35799                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35800                  pjp1.EQUIPMENT_RAW_COST)             EQUIPMENT_RAW_COST,
35801           decode(wbs_hdr.WP_FLAG
35802                    || '_' || sup_wbs_hdr.WP_FLAG
35803                    || '_' || sub_ver.STATUS_CODE
35804                    || '_' || sup_ver.STATUS_CODE,
35805                  'Y_Y__', to_number(null),
35806                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35807                  pjp1.EQUIPMENT_BRDN_COST)            EQUIPMENT_BRDN_COST,
35808           decode(wbs_hdr.WP_FLAG
35809                    || '_' || sup_wbs_hdr.WP_FLAG
35810                    || '_' || sub_ver.STATUS_CODE
35811                    || '_' || sup_ver.STATUS_CODE,
35812                  'Y_Y__', to_number(null),
35813                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35814                  pjp1.CAPITALIZABLE_RAW_COST)         CAPITALIZABLE_RAW_COST,
35815           decode(wbs_hdr.WP_FLAG
35816                    || '_' || sup_wbs_hdr.WP_FLAG
35817                    || '_' || sub_ver.STATUS_CODE
35818                    || '_' || sup_ver.STATUS_CODE,
35819                  'Y_Y__', to_number(null),
35820                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35821                  pjp1.CAPITALIZABLE_BRDN_COST)        CAPITALIZABLE_BRDN_COST,
35822           decode(wbs_hdr.WP_FLAG
35823                    || '_' || sup_wbs_hdr.WP_FLAG
35824                    || '_' || sub_ver.STATUS_CODE
35825                    || '_' || sup_ver.STATUS_CODE,
35826                  'Y_Y__', to_number(null),
35827                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35828                  pjp1.LABOR_RAW_COST)                 LABOR_RAW_COST,
35829           decode(wbs_hdr.WP_FLAG
35830                    || '_' || sup_wbs_hdr.WP_FLAG
35831                    || '_' || sub_ver.STATUS_CODE
35832                    || '_' || sup_ver.STATUS_CODE,
35833                  'Y_Y__', to_number(null),
35834                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35835                  pjp1.LABOR_BRDN_COST)                LABOR_BRDN_COST,
35836           decode(wbs_hdr.WP_FLAG
35837                    || '_' || sup_wbs_hdr.WP_FLAG
35838                    || '_' || sub_ver.STATUS_CODE
35839                    || '_' || sup_ver.STATUS_CODE,
35840                  'Y_Y__', to_number(null),
35841                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35842                  pjp1.LABOR_HRS)                      LABOR_HRS,
35843           decode(wbs_hdr.WP_FLAG
35844                    || '_' || sup_wbs_hdr.WP_FLAG
35845                    || '_' || sub_ver.STATUS_CODE
35846                    || '_' || sup_ver.STATUS_CODE,
35847                  'Y_Y__', to_number(null),
35848                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35849                  pjp1.LABOR_REVENUE)                  LABOR_REVENUE,
35850           decode(wbs_hdr.WP_FLAG
35851                    || '_' || sup_wbs_hdr.WP_FLAG
35852                    || '_' || sub_ver.STATUS_CODE
35853                    || '_' || sup_ver.STATUS_CODE,
35854                  'Y_Y__', to_number(null),
35855                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35856                  pjp1.EQUIPMENT_HOURS)                EQUIPMENT_HOURS,
35857           decode(wbs_hdr.WP_FLAG
35858                    || '_' || sup_wbs_hdr.WP_FLAG
35859                    || '_' || sub_ver.STATUS_CODE
35860                    || '_' || sup_ver.STATUS_CODE,
35861                  'Y_Y__', to_number(null),
35862                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35863                  pjp1.BILLABLE_EQUIPMENT_HOURS)       BILLABLE_EQUIPMENT_HOURS,
35864           decode(wbs_hdr.WP_FLAG
35865                    || '_' || sup_wbs_hdr.WP_FLAG
35866                    || '_' || sub_ver.STATUS_CODE
35867                    || '_' || sup_ver.STATUS_CODE,
35868                  'Y_Y__', to_number(null),
35869                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35870                  pjp1.SUP_INV_COMMITTED_COST)         SUP_INV_COMMITTED_COST,
35871           decode(wbs_hdr.WP_FLAG
35872                    || '_' || sup_wbs_hdr.WP_FLAG
35873                    || '_' || sub_ver.STATUS_CODE
35874                    || '_' || sup_ver.STATUS_CODE,
35875                  'Y_Y__', to_number(null),
35876                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35877                  pjp1.PO_COMMITTED_COST)              PO_COMMITTED_COST,
35878           decode(wbs_hdr.WP_FLAG
35879                    || '_' || sup_wbs_hdr.WP_FLAG
35880                    || '_' || sub_ver.STATUS_CODE
35881                    || '_' || sup_ver.STATUS_CODE,
35882                  'Y_Y__', to_number(null),
35883                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35884                  pjp1.PR_COMMITTED_COST)              PR_COMMITTED_COST,
35885           decode(wbs_hdr.WP_FLAG
35886                    || '_' || sup_wbs_hdr.WP_FLAG
35887                    || '_' || sub_ver.STATUS_CODE
35888                    || '_' || sup_ver.STATUS_CODE,
35889                  'Y_Y__', to_number(null),
35890                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
35891                  pjp1.OTH_COMMITTED_COST)             OTH_COMMITTED_COST,
35892           decode(wbs_hdr.WP_FLAG
35893                    || '_' || sup_wbs_hdr.WP_FLAG
35894                    || '_' || sup_ver.STATUS_CODE,
35895                  'Y_Y_', to_number(null),
35896                  pjp1.ACT_LABOR_HRS)                  ACT_LABOR_HRS,
35897           decode(wbs_hdr.WP_FLAG
35898                    || '_' || sup_wbs_hdr.WP_FLAG
35899                    || '_' || sup_ver.STATUS_CODE,
35900                  'Y_Y_', to_number(null),
35901                  pjp1.ACT_EQUIP_HRS)                  ACT_EQUIP_HRS,
35902           decode(wbs_hdr.WP_FLAG
35903                    || '_' || sup_wbs_hdr.WP_FLAG
35904                    || '_' || sup_ver.STATUS_CODE,
35905                  'Y_Y_', to_number(null),
35906                  pjp1.ACT_LABOR_BRDN_COST)            ACT_LABOR_BRDN_COST,
35907           decode(wbs_hdr.WP_FLAG
35908                    || '_' || sup_wbs_hdr.WP_FLAG
35909                    || '_' || sup_ver.STATUS_CODE,
35910                  'Y_Y_', to_number(null),
35911                  pjp1.ACT_EQUIP_BRDN_COST)            ACT_EQUIP_BRDN_COST,
35912           decode(wbs_hdr.WP_FLAG
35913                    || '_' || sup_wbs_hdr.WP_FLAG
35914                    || '_' || sup_ver.STATUS_CODE,
35915                  'Y_Y_', to_number(null),
35916                  pjp1.ACT_BRDN_COST)                  ACT_BRDN_COST,
35917           decode(wbs_hdr.WP_FLAG
35918                    || '_' || sup_wbs_hdr.WP_FLAG
35919                    || '_' || sup_ver.STATUS_CODE,
35920                  'Y_Y_', to_number(null),
35921                  pjp1.ACT_RAW_COST)                   ACT_RAW_COST,
35922           decode(wbs_hdr.WP_FLAG
35923                    || '_' || sup_wbs_hdr.WP_FLAG
35924                    || '_' || sup_ver.STATUS_CODE,
35925                  'Y_Y_', to_number(null),
35926                  pjp1.ACT_REVENUE)                    ACT_REVENUE,
35927           decode(wbs_hdr.WP_FLAG
35928                    || '_' || sup_wbs_hdr.WP_FLAG
35929                    || '_' || sup_ver.STATUS_CODE,
35930                  'Y_Y_', to_number(null),
35931                  pjp1.ACT_LABOR_RAW_COST)             ACT_LABOR_RAW_COST,
35932           decode(wbs_hdr.WP_FLAG
35933                    || '_' || sup_wbs_hdr.WP_FLAG
35934                    || '_' || sup_ver.STATUS_CODE,
35935                  'Y_Y_', to_number(null),
35936                  pjp1.ACT_EQUIP_RAW_COST)             ACT_EQUIP_RAW_COST,
35937           decode(wbs_hdr.WP_FLAG
35938                    || '_' || sup_wbs_hdr.WP_FLAG
35939                    || '_' || sup_ver.STATUS_CODE,
35940                  'Y_Y_', to_number(null),
35941                  pjp1.ETC_LABOR_HRS)                  ETC_LABOR_HRS,
35942           decode(wbs_hdr.WP_FLAG
35943                    || '_' || sup_wbs_hdr.WP_FLAG
35944                    || '_' || sup_ver.STATUS_CODE,
35945                  'Y_Y_', to_number(null),
35946                  pjp1.ETC_EQUIP_HRS)                  ETC_EQUIP_HRS,
35947           decode(wbs_hdr.WP_FLAG
35948                    || '_' || sup_wbs_hdr.WP_FLAG
35949                    || '_' || sup_ver.STATUS_CODE,
35950                  'Y_Y_', to_number(null),
35951                  pjp1.ETC_LABOR_BRDN_COST)            ETC_LABOR_BRDN_COST,
35952           decode(wbs_hdr.WP_FLAG
35953                    || '_' || sup_wbs_hdr.WP_FLAG
35954                    || '_' || sup_ver.STATUS_CODE,
35955                  'Y_Y_', to_number(null),
35956                  pjp1.ETC_EQUIP_BRDN_COST)            ETC_EQUIP_BRDN_COST,
35957           decode(wbs_hdr.WP_FLAG
35958                    || '_' || sup_wbs_hdr.WP_FLAG
35959                    || '_' || sup_ver.STATUS_CODE,
35960                  'Y_Y_', to_number(null),
35961                  pjp1.ETC_BRDN_COST)                  ETC_BRDN_COST,
35962           decode(wbs_hdr.WP_FLAG
35963                    || '_' || sup_wbs_hdr.WP_FLAG
35964                    || '_' || sup_ver.STATUS_CODE,
35965                  'Y_Y_', to_number(null),
35966                  pjp1.ETC_RAW_COST)                   ETC_RAW_COST,
35967           decode(wbs_hdr.WP_FLAG
35968                    || '_' || sup_wbs_hdr.WP_FLAG
35969                    || '_' || sup_ver.STATUS_CODE,
35970                  'Y_Y_', to_number(null),
35971                  pjp1.ETC_LABOR_RAW_COST)             ETC_LABOR_RAW_COST,
35972           decode(wbs_hdr.WP_FLAG
35973                    || '_' || sup_wbs_hdr.WP_FLAG
35974                    || '_' || sup_ver.STATUS_CODE,
35975                  'Y_Y_', to_number(null),
35976                  pjp1.ETC_EQUIP_RAW_COST)             ETC_EQUIP_RAW_COST,
35977           pjp1.CUSTOM1,
35978           pjp1.CUSTOM2,
35979           pjp1.CUSTOM3,
35980           pjp1.CUSTOM4,
35981           pjp1.CUSTOM5,
35982           pjp1.CUSTOM6,
35983           pjp1.CUSTOM7,
35984           pjp1.CUSTOM8,
35985           pjp1.CUSTOM9,
35986           pjp1.CUSTOM10,
35987           pjp1.CUSTOM11,
35988           pjp1.CUSTOM12,
35989           pjp1.CUSTOM13,
35990           pjp1.CUSTOM14,
35991           pjp1.CUSTOM15
35992         from
35993           PJI_FP_AGGR_PJP1           pjp1,
35994           PJI_PJP_WBS_HEADER         wbs_hdr,
35995           PA_PROJ_ELEMENTS           prj_emt,
35996           PA_XBS_DENORM              prg,
35997           PJI_XBS_DENORM_DELTA       prg_delta,
35998           PJI_PJP_WBS_HEADER         sup_wbs_hdr,
35999           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
36000           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
36001           (
36002             select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID
36003             from DUAL union all
36004             select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID
36005             from DUAL union all
36006             select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID
36007             from DUAL union all
36008             select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID
36009             from DUAL
36010           ) fin_plan
36011         where
36012           prg.STRUCT_TYPE            =  'PRG'                           and
36013           prg.SUP_LEVEL              =  l_level                         and
36014           nvl(prg.SUB_ROLLUP_ID,
36015               prg.SUP_EMT_ID)        <> prg.SUP_EMT_ID                  and
36016           p_worker_id                =  prg_delta.WORKER_ID         (+) and
36017           prg.STRUCT_TYPE            =  prg_delta.STRUCT_TYPE       (+) and
36018           prg.SUP_PROJECT_ID         =  prg_delta.SUP_PROJECT_ID    (+) and
36019           prg.SUP_LEVEL              =  prg_delta.SUP_LEVEL         (+) and
36020           prg.SUP_ID                 =  prg_delta.SUP_ID            (+) and
36021           prg.SUB_LEVEL              =  prg_delta.SUB_LEVEL         (+) and
36022           prg.SUB_ID                 =  prg_delta.SUB_ID            (+) and
36023           prg.RELATIONSHIP_TYPE      =  prg_delta.RELATIONSHIP_TYPE (+) and
36024           1                          =  prg_delta.SIGN              (+) and
36025           (prg_delta.SUP_PROJECT_ID is not null or
36026            (prg_delta.SUP_PROJECT_ID is null and
36027             pjp1.RECORD_TYPE = 'P'))                                    and
36028           pjp1.WORKER_ID             =  p_worker_id                     and
36029           pjp1.PRG_LEVEL             in (0, prg.SUB_LEVEL)              and
36030           pjp1.PROJECT_ID            =  prj_emt.PROJECT_ID              and
36031           (((pjp1.RBS_AGGR_LEVEL,
36032              pjp1.WBS_ROLLUP_FLAG,
36033              pjp1.PRG_ROLLUP_FLAG) in (('T', 'Y', 'Y'),
36034                                        ('T', 'Y', 'N'),
36035                                        ('T', 'N', 'Y'),
36036                                        ('T', 'N', 'N'),
36037                                        ('L', 'N', 'N')) and
36038              pjp1.PROJECT_ELEMENT_ID = prg.SUB_EMT_ID) or
36039            ((pjp1.RBS_AGGR_LEVEL,
36040              pjp1.WBS_ROLLUP_FLAG,
36041              pjp1.PRG_ROLLUP_FLAG) in (('L', 'N', 'Y'),
36042                                        ('L', 'N', 'N')) and
36043              pjp1.PROJECT_ELEMENT_ID <> prg.SUB_EMT_ID))                and
36044           decode(pjp1.PLAN_VERSION_ID,
36045                  -1, 'LF',
36046                  -2, 'LF',
36047                  -3, 'LF',
36048                  -4, 'LF',
36049                      decode(wbs_hdr.WP_FLAG,
36050                             'N', 'LF',
36051                               'LW')) =  prg.RELATIONSHIP_TYPE           and
36052           prg.STRUCT_VERSION_ID      is null                            and
36053           prj_emt.OBJECT_TYPE        =  'PA_STRUCTURES'                 and
36054           prj_emt.PROJ_ELEMENT_ID    =  prg.SUB_EMT_ID                  and
36055           wbs_hdr.PROJECT_ID         =  prj_emt.PROJECT_ID              and
36056           wbs_hdr.WBS_VERSION_ID     =  prg.SUB_ID                      and
36057           wbs_hdr.PROJECT_ID         =  pjp1.PROJECT_ID                 and
36058           wbs_hdr.PLAN_VERSION_ID    =  pjp1.PLAN_VERSION_ID            and
36059           wbs_hdr.PLAN_TYPE_CODE     =  pjp1.PLAN_TYPE_CODE             and
36060           decode(pjp1.PLAN_VERSION_ID,
36061                  -3, pjp1.PLAN_TYPE_ID,
36062                  -4, pjp1.PLAN_TYPE_ID,
36063                      -1)             =  decode(pjp1.PLAN_VERSION_ID,
36064                                                -3, wbs_hdr.PLAN_TYPE_ID,
36065                                                -4, wbs_hdr.PLAN_TYPE_ID,
36066                                                    -1)                  and
36067           decode(wbs_hdr.WP_FLAG,
36068                  'N', decode(pjp1.PLAN_VERSION_ID,
36069                              -1, 'Y',
36070                              -2, 'Y',
36071                              -3, 'Y',
36072                              -4, 'Y',
36073                                  decode(pjp1.RBS_AGGR_LEVEL
36074                                           || '_' || wbs_hdr.CB_FLAG
36075                                           || '_' || wbs_hdr.CO_FLAG,
36076                                         'L_Y_Y', 'Y',
36077                                         'L_N_Y', 'Y',
36078                                         'L_Y_N', 'Y',
36079                                                  'N')),
36080                       'Y')           =  'Y'                             and
36081           prg.SUP_PROJECT_ID         =  sup_wbs_hdr.PROJECT_ID      (+) and
36082           prg.SUP_ID                 =  sup_wbs_hdr.WBS_VERSION_ID  (+) and
36083           'Y'                        =  sup_wbs_hdr.WP_FLAG         (+) and
36084           wbs_hdr.PROJECT_ID         =  sub_ver.PROJECT_ID          (+) and
36085           wbs_hdr.WBS_VERSION_ID     =  sub_ver.ELEMENT_VERSION_ID  (+) and
36086           'STRUCTURE_PUBLISHED'      =  sub_ver.STATUS_CODE         (+) and
36087           sup_wbs_hdr.PROJECT_ID     =  sup_ver.PROJECT_ID          (+) and
36088           sup_wbs_hdr.WBS_VERSION_ID =  sup_ver.ELEMENT_VERSION_ID  (+) and
36089           'STRUCTURE_PUBLISHED'      =  sup_ver.STATUS_CODE         (+) and
36090           wbs_hdr.CB_FLAG            =  fin_plan.CB                 (+) and
36091           wbs_hdr.CO_FLAG            =  fin_plan.CO                 (+)
36092         )                          pjp,
36093         PJI_PJP_PROJ_BATCH_MAP     map,
36094         PA_PROJ_WORKPLAN_ATTR      sup_wpa,
36095         PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
36096         PA_XBS_DENORM              wbs,
36097         (
36098           select 1     WBS_SUP_LEVEL,
36099                  'PRJ' INVERT_ID
36100           from   DUAL
36101           union all
36102           select 1     WBS_SUP_LEVEL,
36103                  'WBS' INVERT_ID
36104           from   DUAL
36105         ) top_slice
36106       where
36107         map.WORKER_ID           = p_worker_id                         and
36108         map.PROJECT_ID          = pjp.SUP_PROJECT_ID                  and
36109         pjp.SUP_EMT_ID          = sup_wpa.PROJ_ELEMENT_ID             and
36110         pjp.SUP_PROJECT_ID      = sup_fin_ver.PROJECT_ID          (+) and
36111         pjp.SUP_ID              = sup_fin_ver.ELEMENT_VERSION_ID  (+) and
36112         'STRUCTURE_WORKING'     = sup_fin_ver.STATUS_CODE         (+) and
36113         (pjp.SUP_WP_FLAG is null or
36114          (pjp.SUP_WP_FLAG is not null and
36115           (sup_fin_ver.PROJECT_ID is not null or
36116            sup_wpa.WP_ENABLE_VERSION_FLAG = 'N')))                    and
36117         'WBS'                   = wbs.STRUCT_TYPE                 (+) and
36118         pjp.STRUCT_TYPE         = wbs.STRUCT_TYPE                 (+) and
36119         pjp.SUP_PROJECT_ID      = wbs.SUP_PROJECT_ID              (+) and
36120         pjp.SUP_ID              = wbs.STRUCT_VERSION_ID           (+) and
36121         pjp.SUB_ROLLUP_ID       = wbs.SUB_EMT_ID                  (+) and
36122         wbs.SUP_LEVEL           = top_slice.WBS_SUP_LEVEL         (+)
36123       group by
36124         pjp.LINE_TYPE,
36125         pjp.SUP_PROJECT_ID,
36126         map.PROJECT_ORG_ID,
36127         map.PROJECT_ORGANIZATION_ID,
36128         decode(pjp.STRUCT_TYPE,
36129                'DO_NOT_ROLLUP', pjp.SUB_ROLLUP_ID,
36130                                 decode(top_slice.INVERT_ID,
36131                                        'PRJ', pjp.SUP_EMT_ID, wbs.SUP_EMT_ID)
36132               ),
36133         pjp.TIME_ID,
36134         pjp.PERIOD_TYPE_ID,
36135         pjp.CALENDAR_TYPE,
36136         pjp.RBS_AGGR_LEVEL,
36137         decode(pjp.STRUCT_TYPE,
36138                'DO_NOT_ROLLUP', 'N',
36139                                 decode(top_slice.INVERT_ID,
36140                                        'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
36141                                                           wbs.SUP_EMT_ID,
36142                                                           'N', 'Y'))
36143               ),
36144         pjp.CURR_RECORD_TYPE_ID,
36145         pjp.CURRENCY_CODE,
36146         pjp.RBS_ELEMENT_ID,
36147         pjp.RBS_VERSION_ID,
36148         pjp.PLAN_VERSION_ID,
36149         pjp.PLAN_TYPE_ID,
36150         pjp.PLAN_TYPE_CODE;
36151     elsif (p_worker_id =10) then
36152       -- Query for Partition 10
36153 
36154         insert /*+ parallel(PJI_FP_AGGR_PJP1) */
36155                    into PJI_FP_AGGR_PJP1 partition(P10)
36156       (
36157         WORKER_ID,
36158         RECORD_TYPE,
36159         PRG_LEVEL,
36160         LINE_TYPE,
36161         PROJECT_ID,
36162         PROJECT_ORG_ID,
36163         PROJECT_ORGANIZATION_ID,
36164         PROJECT_ELEMENT_ID,
36165         TIME_ID,
36166         PERIOD_TYPE_ID,
36167         CALENDAR_TYPE,
36168         RBS_AGGR_LEVEL,
36169         WBS_ROLLUP_FLAG,
36170         PRG_ROLLUP_FLAG,
36171         CURR_RECORD_TYPE_ID,
36172         CURRENCY_CODE,
36173         RBS_ELEMENT_ID,
36174         RBS_VERSION_ID,
36175         PLAN_VERSION_ID,
36176         PLAN_TYPE_ID,
36177         PLAN_TYPE_CODE,
36178         RAW_COST,
36179         BRDN_COST,
36180         REVENUE,
36181         BILL_RAW_COST,
36182         BILL_BRDN_COST,
36183         BILL_LABOR_RAW_COST,
36184         BILL_LABOR_BRDN_COST,
36185         BILL_LABOR_HRS,
36186         EQUIPMENT_RAW_COST,
36187         EQUIPMENT_BRDN_COST,
36188         CAPITALIZABLE_RAW_COST,
36189         CAPITALIZABLE_BRDN_COST,
36190         LABOR_RAW_COST,
36191         LABOR_BRDN_COST,
36192         LABOR_HRS,
36193         LABOR_REVENUE,
36194         EQUIPMENT_HOURS,
36195         BILLABLE_EQUIPMENT_HOURS,
36196         SUP_INV_COMMITTED_COST,
36197         PO_COMMITTED_COST,
36198         PR_COMMITTED_COST,
36199         OTH_COMMITTED_COST,
36200         ACT_LABOR_HRS,
36201         ACT_EQUIP_HRS,
36202         ACT_LABOR_BRDN_COST,
36203         ACT_EQUIP_BRDN_COST,
36204         ACT_BRDN_COST,
36205         ACT_RAW_COST,
36206         ACT_REVENUE,
36207         ACT_LABOR_RAW_COST,
36208         ACT_EQUIP_RAW_COST,
36209         ETC_LABOR_HRS,
36210         ETC_EQUIP_HRS,
36211         ETC_LABOR_BRDN_COST,
36212         ETC_EQUIP_BRDN_COST,
36213         ETC_BRDN_COST,
36214         ETC_RAW_COST,
36215         ETC_LABOR_RAW_COST,
36216         ETC_EQUIP_RAW_COST,
36217         CUSTOM1,
36218         CUSTOM2,
36219         CUSTOM3,
36220         CUSTOM4,
36221         CUSTOM5,
36222         CUSTOM6,
36223         CUSTOM7,
36224         CUSTOM8,
36225         CUSTOM9,
36226         CUSTOM10,
36227         CUSTOM11,
36228         CUSTOM12,
36229         CUSTOM13,
36230         CUSTOM14,
36231         CUSTOM15
36232       )
36233       select /*+ no_merge(pjp) */
36234         p_worker_id                                   WORKER_ID,
36235         'P'                                           RECORD_TYPE,
36236         l_level                                       PRG_LEVEL,
36237         pjp.LINE_TYPE,
36238         pjp.SUP_PROJECT_ID                            PROJECT_ID,
36239         map.PROJECT_ORG_ID,
36240         map.PROJECT_ORGANIZATION_ID,
36241         decode(pjp.STRUCT_TYPE,
36242                'DO_NOT_ROLLUP', pjp.SUB_ROLLUP_ID,
36243                                 decode(top_slice.INVERT_ID,
36244                                        'PRJ', pjp.SUP_EMT_ID, wbs.SUP_EMT_ID)
36245               )                                       PROJECT_ELEMENT_ID,
36246         pjp.TIME_ID,
36247         pjp.PERIOD_TYPE_ID,
36248         pjp.CALENDAR_TYPE,
36249         pjp.RBS_AGGR_LEVEL,
36250         decode(pjp.STRUCT_TYPE,
36251                'DO_NOT_ROLLUP', 'N',
36252                                 decode(top_slice.INVERT_ID,
36253                                        'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
36254                                                           wbs.SUP_EMT_ID,
36255                                                           'N', 'Y'))
36256               )                                       WBS_ROLLUP_FLAG,
36257         'Y'                                           PRG_ROLLUP_FLAG,
36258         pjp.CURR_RECORD_TYPE_ID,
36259         pjp.CURRENCY_CODE,
36260         pjp.RBS_ELEMENT_ID,
36261         pjp.RBS_VERSION_ID,
36262         pjp.PLAN_VERSION_ID,
36263         pjp.PLAN_TYPE_ID,
36264         pjp.PLAN_TYPE_CODE,
36265         sum(pjp.RAW_COST)                             RAW_COST,
36266         sum(pjp.BRDN_COST)                            BRDN_COST,
36267         sum(pjp.REVENUE)                              REVENUE,
36268         sum(pjp.BILL_RAW_COST)                        BILL_RAW_COST,
36269         sum(pjp.BILL_BRDN_COST)                       BILL_BRDN_COST,
36270         sum(pjp.BILL_LABOR_RAW_COST)                  BILL_LABOR_RAW_COST,
36271         sum(pjp.BILL_LABOR_BRDN_COST)                 BILL_LABOR_BRDN_COST,
36272         sum(pjp.BILL_LABOR_HRS)                       BILL_LABOR_HRS,
36273         sum(pjp.EQUIPMENT_RAW_COST)                   EQUIPMENT_RAW_COST,
36274         sum(pjp.EQUIPMENT_BRDN_COST)                  EQUIPMENT_BRDN_COST,
36275         sum(pjp.CAPITALIZABLE_RAW_COST)               CAPITALIZABLE_RAW_COST,
36276         sum(pjp.CAPITALIZABLE_BRDN_COST)              CAPITALIZABLE_BRDN_COST,
36277         sum(pjp.LABOR_RAW_COST)                       LABOR_RAW_COST,
36278         sum(pjp.LABOR_BRDN_COST)                      LABOR_BRDN_COST,
36279         sum(pjp.LABOR_HRS)                            LABOR_HRS,
36280         sum(pjp.LABOR_REVENUE)                        LABOR_REVENUE,
36281         sum(pjp.EQUIPMENT_HOURS)                      EQUIPMENT_HOURS,
36282         sum(pjp.BILLABLE_EQUIPMENT_HOURS)             BILLABLE_EQUIPMENT_HOURS,
36283         sum(pjp.SUP_INV_COMMITTED_COST)               SUP_INV_COMMITTED_COST,
36284         sum(pjp.PO_COMMITTED_COST)                    PO_COMMITTED_COST,
36285         sum(pjp.PR_COMMITTED_COST)                    PR_COMMITTED_COST,
36286         sum(pjp.OTH_COMMITTED_COST)                   OTH_COMMITTED_COST,
36287         sum(pjp.ACT_LABOR_HRS)                        ACT_LABOR_HRS,
36288         sum(pjp.ACT_EQUIP_HRS)                        ACT_EQUIP_HRS,
36289         sum(pjp.ACT_LABOR_BRDN_COST)                  ACT_LABOR_BRDN_COST,
36290         sum(pjp.ACT_EQUIP_BRDN_COST)                  ACT_EQUIP_BRDN_COST,
36291         sum(pjp.ACT_BRDN_COST)                        ACT_BRDN_COST,
36292         sum(pjp.ACT_RAW_COST)                         ACT_RAW_COST,
36293         sum(pjp.ACT_REVENUE)                          ACT_REVENUE,
36294         sum(pjp.ACT_LABOR_RAW_COST)                   ACT_LABOR_RAW_COST,
36295         sum(pjp.ACT_EQUIP_RAW_COST)                   ACT_EQUIP_RAW_COST,
36296         sum(pjp.ETC_LABOR_HRS)                        ETC_LABOR_HRS,
36297         sum(pjp.ETC_EQUIP_HRS)                        ETC_EQUIP_HRS,
36298         sum(pjp.ETC_LABOR_BRDN_COST)                  ETC_LABOR_BRDN_COST,
36299         sum(pjp.ETC_EQUIP_BRDN_COST)                  ETC_EQUIP_BRDN_COST,
36300         sum(pjp.ETC_BRDN_COST)                        ETC_BRDN_COST,
36301         sum(pjp.ETC_RAW_COST)                         ETC_RAW_COST,
36302         sum(pjp.ETC_LABOR_RAW_COST)                   ETC_LABOR_RAW_COST,
36303         sum(pjp.ETC_EQUIP_RAW_COST)                   ETC_EQUIP_RAW_COST,
36304         sum(pjp.CUSTOM1)                              CUSTOM1,
36305         sum(pjp.CUSTOM2)                              CUSTOM2,
36306         sum(pjp.CUSTOM3)                              CUSTOM3,
36307         sum(pjp.CUSTOM4)                              CUSTOM4,
36308         sum(pjp.CUSTOM5)                              CUSTOM5,
36309         sum(pjp.CUSTOM6)                              CUSTOM6,
36310         sum(pjp.CUSTOM7)                              CUSTOM7,
36311         sum(pjp.CUSTOM8)                              CUSTOM8,
36312         sum(pjp.CUSTOM9)                              CUSTOM9,
36313         sum(pjp.CUSTOM10)                             CUSTOM10,
36314         sum(pjp.CUSTOM11)                             CUSTOM11,
36315         sum(pjp.CUSTOM12)                             CUSTOM12,
36316         sum(pjp.CUSTOM13)                             CUSTOM13,
36317         sum(pjp.CUSTOM14)                             CUSTOM14,
36318         sum(pjp.CUSTOM15)                             CUSTOM15
36319       from
36320         (
36321         select /*+ ordered index(fpr PJI_FP_XBS_ACCUM_F_N1) */
36322                -- get structure level amounts from Reporting Lines
36323           decode(fpr.RBS_AGGR_LEVEL,
36324                  'L', 'DO_NOT_ROLLUP',
36325                       'WBS')                          STRUCT_TYPE,
36326           to_char(null)                               LINE_TYPE,
36327           prg.SUP_PROJECT_ID,
36328           prg.SUP_ID,
36329           prg.SUP_EMT_ID,
36330           prg.SUB_EMT_ID,
36331           prg.SUB_ROLLUP_ID,
36332           'FPR'                                       LINE_SOURCE,
36333           decode(fpr.PLAN_VERSION_ID,
36334                  -1, prg.SUB_ID,
36335                  -3, prg.SUB_ID,
36336                  -4, prg.SUB_ID,
36337                      decode(fin_plan.PLAN_VERSION_ID,
36338                             null, null,
36339                                   prg.SUB_ID))        SUB_ID,
36340           decode(fpr.PLAN_VERSION_ID,
36341                  -1, 'N',
36342                  -3, 'N',
36343                  -4, 'N',
36344                      decode(fin_plan.PLAN_VERSION_ID,
36345                             null, null,
36346                                   'N'))               SUP_WP_FLAG,
36347           decode(fpr.PLAN_VERSION_ID,
36348                  -1, fpr.PLAN_VERSION_ID,
36349                  -3, fpr.PLAN_VERSION_ID,
36350                  -4, fpr.PLAN_VERSION_ID,
36351                      decode(fin_plan.PLAN_VERSION_ID,
36352                             null, null,
36353                                   fin_plan.PLAN_VERSION_ID)
36354                 )                                     SUB_PLAN_VERSION_ID,
36355           decode(fpr.PLAN_VERSION_ID,
36356                  -1, fpr.PLAN_TYPE_ID,
36357                  -3, fpr.PLAN_TYPE_ID,
36358                  -4, fpr.PLAN_TYPE_ID,
36359                      decode(fin_plan.PLAN_VERSION_ID,
36360                             null, null,
36361                                   fpr.PLAN_TYPE_ID))  SUB_PLAN_TYPE_ID,
36362           fpr.TIME_ID,
36363           fpr.PERIOD_TYPE_ID,
36364           fpr.CALENDAR_TYPE,
36365           fpr.RBS_AGGR_LEVEL,
36366           fpr.CURR_RECORD_TYPE_ID,
36367           fpr.CURRENCY_CODE,
36368           fpr.RBS_ELEMENT_ID,
36369           fpr.RBS_VERSION_ID,
36370           decode(wbs_hdr.WP_FLAG,
36371                  'N', decode(wbs_hdr.PLAN_VERSION_ID,
36372                              -1, fpr.PLAN_VERSION_ID,
36373                                  fin_plan.PLAN_VERSION_ID),
36374                       sup_wbs_hdr.PLAN_VERSION_ID)    PLAN_VERSION_ID,
36375           decode(wbs_hdr.WP_FLAG,
36376                  'N', fpr.PLAN_TYPE_ID,
36377                       sup_wbs_hdr.PLAN_TYPE_ID)       PLAN_TYPE_ID,
36378           fpr.PLAN_TYPE_CODE,
36379           decode(wbs_hdr.WP_FLAG
36380                    || '_' || sup_wbs_hdr.WP_FLAG
36381                    || '_' || sub_ver.STATUS_CODE
36382                    || '_' || sup_ver.STATUS_CODE,
36383                  'Y_Y__', to_number(null),
36384                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36385                  prg.SIGN * fpr.RAW_COST)             RAW_COST,
36386           decode(wbs_hdr.WP_FLAG
36387                    || '_' || sup_wbs_hdr.WP_FLAG
36388                    || '_' || sub_ver.STATUS_CODE
36389                    || '_' || sup_ver.STATUS_CODE,
36390                  'Y_Y__', to_number(null),
36391                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36392                  prg.SIGN * fpr.BRDN_COST)            BRDN_COST,
36393           decode(wbs_hdr.WP_FLAG
36394                    || '_' || sup_wbs_hdr.WP_FLAG
36395                    || '_' || sub_ver.STATUS_CODE
36396                    || '_' || sup_ver.STATUS_CODE,
36397                  'Y_Y__', to_number(null),
36398                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36399                  prg.SIGN * fpr.REVENUE)              REVENUE,
36400           decode(wbs_hdr.WP_FLAG
36401                    || '_' || sup_wbs_hdr.WP_FLAG
36402                    || '_' || sub_ver.STATUS_CODE
36403                    || '_' || sup_ver.STATUS_CODE,
36404                  'Y_Y__', to_number(null),
36405                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36406                  prg.SIGN * fpr.BILL_RAW_COST)        BILL_RAW_COST,
36407           decode(wbs_hdr.WP_FLAG
36408                    || '_' || sup_wbs_hdr.WP_FLAG
36409                    || '_' || sub_ver.STATUS_CODE
36410                    || '_' || sup_ver.STATUS_CODE,
36411                  'Y_Y__', to_number(null),
36412                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36413                  prg.SIGN * fpr.BILL_BRDN_COST)       BILL_BRDN_COST,
36414           decode(wbs_hdr.WP_FLAG
36415                    || '_' || sup_wbs_hdr.WP_FLAG
36416                    || '_' || sub_ver.STATUS_CODE
36417                    || '_' || sup_ver.STATUS_CODE,
36418                  'Y_Y__', to_number(null),
36419                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36420                  prg.SIGN * fpr.BILL_LABOR_RAW_COST)  BILL_LABOR_RAW_COST,
36421           decode(wbs_hdr.WP_FLAG
36422                    || '_' || sup_wbs_hdr.WP_FLAG
36423                    || '_' || sub_ver.STATUS_CODE
36424                    || '_' || sup_ver.STATUS_CODE,
36425                  'Y_Y__', to_number(null),
36426                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36427                  prg.SIGN * fpr.BILL_LABOR_BRDN_COST) BILL_LABOR_BRDN_COST,
36428           decode(wbs_hdr.WP_FLAG
36429                    || '_' || sup_wbs_hdr.WP_FLAG
36430                    || '_' || sub_ver.STATUS_CODE
36431                    || '_' || sup_ver.STATUS_CODE,
36432                  'Y_Y__', to_number(null),
36433                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36434                  prg.SIGN * fpr.BILL_LABOR_HRS)       BILL_LABOR_HRS,
36435           decode(wbs_hdr.WP_FLAG
36436                    || '_' || sup_wbs_hdr.WP_FLAG
36437                    || '_' || sub_ver.STATUS_CODE
36438                    || '_' || sup_ver.STATUS_CODE,
36439                  'Y_Y__', to_number(null),
36440                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36441                  prg.SIGN * fpr.EQUIPMENT_RAW_COST)   EQUIPMENT_RAW_COST,
36442           decode(wbs_hdr.WP_FLAG
36443                    || '_' || sup_wbs_hdr.WP_FLAG
36444                    || '_' || sub_ver.STATUS_CODE
36445                    || '_' || sup_ver.STATUS_CODE,
36446                  'Y_Y__', to_number(null),
36447                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36448                  prg.SIGN * fpr.EQUIPMENT_BRDN_COST)  EQUIPMENT_BRDN_COST,
36449           decode(wbs_hdr.WP_FLAG
36450                    || '_' || sup_wbs_hdr.WP_FLAG
36451                    || '_' || sub_ver.STATUS_CODE
36452                    || '_' || sup_ver.STATUS_CODE,
36453                  'Y_Y__', to_number(null),
36454                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36455                  prg.SIGN * fpr.CAPITALIZABLE_RAW_COST)
36456                                                       CAPITALIZABLE_RAW_COST,
36457           decode(wbs_hdr.WP_FLAG
36458                    || '_' || sup_wbs_hdr.WP_FLAG
36459                    || '_' || sub_ver.STATUS_CODE
36460                    || '_' || sup_ver.STATUS_CODE,
36461                  'Y_Y__', to_number(null),
36462                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36463                  prg.SIGN * fpr.CAPITALIZABLE_BRDN_COST)
36464                                                       CAPITALIZABLE_BRDN_COST,
36465           decode(wbs_hdr.WP_FLAG
36466                    || '_' || sup_wbs_hdr.WP_FLAG
36467                    || '_' || sub_ver.STATUS_CODE
36468                    || '_' || sup_ver.STATUS_CODE,
36469                  'Y_Y__', to_number(null),
36470                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36471                  prg.SIGN * fpr.LABOR_RAW_COST)       LABOR_RAW_COST,
36472           decode(wbs_hdr.WP_FLAG
36473                    || '_' || sup_wbs_hdr.WP_FLAG
36474                    || '_' || sub_ver.STATUS_CODE
36475                    || '_' || sup_ver.STATUS_CODE,
36476                  'Y_Y__', to_number(null),
36477                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36478                  prg.SIGN * fpr.LABOR_BRDN_COST)      LABOR_BRDN_COST,
36479           decode(wbs_hdr.WP_FLAG
36480                    || '_' || sup_wbs_hdr.WP_FLAG
36481                    || '_' || sub_ver.STATUS_CODE
36482                    || '_' || sup_ver.STATUS_CODE,
36483                  'Y_Y__', to_number(null),
36484                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36485                  prg.SIGN * fpr.LABOR_HRS)            LABOR_HRS,
36486           decode(wbs_hdr.WP_FLAG
36487                    || '_' || sup_wbs_hdr.WP_FLAG
36488                    || '_' || sub_ver.STATUS_CODE
36489                    || '_' || sup_ver.STATUS_CODE,
36490                  'Y_Y__', to_number(null),
36491                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36492                  prg.SIGN * fpr.LABOR_REVENUE)        LABOR_REVENUE,
36493           decode(wbs_hdr.WP_FLAG
36494                    || '_' || sup_wbs_hdr.WP_FLAG
36495                    || '_' || sub_ver.STATUS_CODE
36496                    || '_' || sup_ver.STATUS_CODE,
36497                  'Y_Y__', to_number(null),
36498                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36499                  prg.SIGN * fpr.EQUIPMENT_HOURS)      EQUIPMENT_HOURS,
36500           decode(wbs_hdr.WP_FLAG
36501                    || '_' || sup_wbs_hdr.WP_FLAG
36502                    || '_' || sub_ver.STATUS_CODE
36503                    || '_' || sup_ver.STATUS_CODE,
36504                  'Y_Y__', to_number(null),
36505                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36506                  prg.SIGN * fpr.BILLABLE_EQUIPMENT_HOURS)
36507                                                       BILLABLE_EQUIPMENT_HOURS,
36508           decode(wbs_hdr.WP_FLAG
36509                    || '_' || sup_wbs_hdr.WP_FLAG
36510                    || '_' || sub_ver.STATUS_CODE
36511                    || '_' || sup_ver.STATUS_CODE,
36512                  'Y_Y__', to_number(null),
36513                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36514                  prg.SIGN * fpr.SUP_INV_COMMITTED_COST)
36515                                                       SUP_INV_COMMITTED_COST,
36516           decode(wbs_hdr.WP_FLAG
36517                    || '_' || sup_wbs_hdr.WP_FLAG
36518                    || '_' || sub_ver.STATUS_CODE
36519                    || '_' || sup_ver.STATUS_CODE,
36520                  'Y_Y__', to_number(null),
36521                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36522                  prg.SIGN * fpr.PO_COMMITTED_COST)    PO_COMMITTED_COST,
36523           decode(wbs_hdr.WP_FLAG
36524                    || '_' || sup_wbs_hdr.WP_FLAG
36525                    || '_' || sub_ver.STATUS_CODE
36526                    || '_' || sup_ver.STATUS_CODE,
36527                  'Y_Y__', to_number(null),
36528                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36529                  prg.SIGN * fpr.PR_COMMITTED_COST)    PR_COMMITTED_COST,
36530           decode(wbs_hdr.WP_FLAG
36531                    || '_' || sup_wbs_hdr.WP_FLAG
36532                    || '_' || sub_ver.STATUS_CODE
36533                    || '_' || sup_ver.STATUS_CODE,
36534                  'Y_Y__', to_number(null),
36535                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36536                  prg.SIGN * fpr.OTH_COMMITTED_COST)   OTH_COMMITTED_COST,
36537           decode(wbs_hdr.WP_FLAG
36538                    || '_' || sup_wbs_hdr.WP_FLAG
36539                    || '_' || sup_ver.STATUS_CODE,
36540                  'Y_Y_', to_number(null),
36541                  prg.SIGN * fpr.ACT_LABOR_HRS)        ACT_LABOR_HRS,
36542           decode(wbs_hdr.WP_FLAG
36543                    || '_' || sup_wbs_hdr.WP_FLAG
36544                    || '_' || sup_ver.STATUS_CODE,
36545                  'Y_Y_', to_number(null),
36546                  prg.SIGN * fpr.ACT_EQUIP_HRS)        ACT_EQUIP_HRS,
36547           decode(wbs_hdr.WP_FLAG
36548                    || '_' || sup_wbs_hdr.WP_FLAG
36549                    || '_' || sup_ver.STATUS_CODE,
36550                  'Y_Y_', to_number(null),
36551                  prg.SIGN * fpr.ACT_LABOR_BRDN_COST)  ACT_LABOR_BRDN_COST,
36552           decode(wbs_hdr.WP_FLAG
36553                    || '_' || sup_wbs_hdr.WP_FLAG
36554                    || '_' || sup_ver.STATUS_CODE,
36555                  'Y_Y_', to_number(null),
36556                  prg.SIGN * fpr.ACT_EQUIP_BRDN_COST)  ACT_EQUIP_BRDN_COST,
36557           decode(wbs_hdr.WP_FLAG
36558                    || '_' || sup_wbs_hdr.WP_FLAG
36559                    || '_' || sup_ver.STATUS_CODE,
36560                  'Y_Y_', to_number(null),
36561                  prg.SIGN * fpr.ACT_BRDN_COST)        ACT_BRDN_COST,
36562           decode(wbs_hdr.WP_FLAG
36563                    || '_' || sup_wbs_hdr.WP_FLAG
36564                    || '_' || sup_ver.STATUS_CODE,
36565                  'Y_Y_', to_number(null),
36566                  prg.SIGN * fpr.ACT_RAW_COST)         ACT_RAW_COST,
36567           decode(wbs_hdr.WP_FLAG
36568                    || '_' || sup_wbs_hdr.WP_FLAG
36569                    || '_' || sup_ver.STATUS_CODE,
36570                  'Y_Y_', to_number(null),
36571                  prg.SIGN * fpr.ACT_REVENUE)          ACT_REVENUE,
36572           decode(wbs_hdr.WP_FLAG
36573                    || '_' || sup_wbs_hdr.WP_FLAG
36574                    || '_' || sup_ver.STATUS_CODE,
36575                  'Y_Y_', to_number(null),
36576                  prg.SIGN * fpr.ACT_LABOR_RAW_COST)   ACT_LABOR_RAW_COST,
36577           decode(wbs_hdr.WP_FLAG
36578                    || '_' || sup_wbs_hdr.WP_FLAG
36579                    || '_' || sup_ver.STATUS_CODE,
36580                  'Y_Y_', to_number(null),
36581                  prg.SIGN * fpr.ACT_EQUIP_RAW_COST)   ACT_EQUIP_RAW_COST,
36582           decode(wbs_hdr.WP_FLAG
36583                    || '_' || sup_wbs_hdr.WP_FLAG
36584                    || '_' || sup_ver.STATUS_CODE,
36585                  'Y_Y_', to_number(null),
36586                  prg.SIGN * fpr.ETC_LABOR_HRS)        ETC_LABOR_HRS,
36587           decode(wbs_hdr.WP_FLAG
36588                    || '_' || sup_wbs_hdr.WP_FLAG
36589                    || '_' || sup_ver.STATUS_CODE,
36590                  'Y_Y_', to_number(null),
36591                  prg.SIGN * fpr.ETC_EQUIP_HRS)        ETC_EQUIP_HRS,
36592           decode(wbs_hdr.WP_FLAG
36593                    || '_' || sup_wbs_hdr.WP_FLAG
36594                    || '_' || sup_ver.STATUS_CODE,
36595                  'Y_Y_', to_number(null),
36596                  prg.SIGN * fpr.ETC_LABOR_BRDN_COST)  ETC_LABOR_BRDN_COST,
36597           decode(wbs_hdr.WP_FLAG
36598                    || '_' || sup_wbs_hdr.WP_FLAG
36599                    || '_' || sup_ver.STATUS_CODE,
36600                  'Y_Y_', to_number(null),
36601                  prg.SIGN * fpr.ETC_EQUIP_BRDN_COST)  ETC_EQUIP_BRDN_COST,
36602           decode(wbs_hdr.WP_FLAG
36603                    || '_' || sup_wbs_hdr.WP_FLAG
36604                    || '_' || sup_ver.STATUS_CODE,
36605                  'Y_Y_', to_number(null),
36606                  prg.SIGN * fpr.ETC_BRDN_COST)        ETC_BRDN_COST,
36607           decode(wbs_hdr.WP_FLAG
36608                    || '_' || sup_wbs_hdr.WP_FLAG
36609                    || '_' || sup_ver.STATUS_CODE,
36610                  'Y_Y_', to_number(null),
36611                  prg.SIGN * fpr.ETC_RAW_COST)         ETC_RAW_COST,
36612           decode(wbs_hdr.WP_FLAG
36613                    || '_' || sup_wbs_hdr.WP_FLAG
36614                    || '_' || sup_ver.STATUS_CODE,
36615                  'Y_Y_', to_number(null),
36616                  prg.SIGN * fpr.ETC_LABOR_RAW_COST)   ETC_LABOR_RAW_COST,
36617           decode(wbs_hdr.WP_FLAG
36618                    || '_' || sup_wbs_hdr.WP_FLAG
36619                    || '_' || sup_ver.STATUS_CODE,
36620                  'Y_Y_', to_number(null),
36621                  prg.SIGN * fpr.ETC_EQUIP_RAW_COST)   ETC_EQUIP_RAW_COST,
36622           prg.SIGN * fpr.CUSTOM1                      CUSTOM1,
36623           prg.SIGN * fpr.CUSTOM2                      CUSTOM2,
36624           prg.SIGN * fpr.CUSTOM3                      CUSTOM3,
36625           prg.SIGN * fpr.CUSTOM4                      CUSTOM4,
36626           prg.SIGN * fpr.CUSTOM5                      CUSTOM5,
36627           prg.SIGN * fpr.CUSTOM6                      CUSTOM6,
36628           prg.SIGN * fpr.CUSTOM7                      CUSTOM7,
36629           prg.SIGN * fpr.CUSTOM8                      CUSTOM8,
36630           prg.SIGN * fpr.CUSTOM9                      CUSTOM9,
36631           prg.SIGN * fpr.CUSTOM10                     CUSTOM10,
36632           prg.SIGN * fpr.CUSTOM11                     CUSTOM11,
36633           prg.SIGN * fpr.CUSTOM12                     CUSTOM12,
36634           prg.SIGN * fpr.CUSTOM13                     CUSTOM13,
36635           prg.SIGN * fpr.CUSTOM14                     CUSTOM14,
36636           prg.SIGN * fpr.CUSTOM15                     CUSTOM15
36637         from
36638           PJI_XBS_DENORM_DELTA       prg,
36639           PA_PROJ_ELEMENTS           prj_emt,
36640           PJI_PJP_WBS_HEADER         wbs_hdr,
36641           PJI_FP_XBS_ACCUM_F         fpr,
36642           PJI_PJP_WBS_HEADER         sup_wbs_hdr,
36643           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
36644           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
36645           (
36646             select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID
36647             from DUAL union all
36648             select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID
36649             from DUAL union all
36650             select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID
36651             from DUAL union all
36652             select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID
36653             from DUAL
36654           ) fin_plan
36655         where
36656           prg.WORKER_ID              =  p_worker_id                    and
36657           prg.STRUCT_TYPE            =  'PRG'                          and
36658           prg.SUP_LEVEL              =  l_level                        and
36659           nvl(prg.SUB_ROLLUP_ID,
36660               prg.SUP_EMT_ID)        <> prg.SUP_EMT_ID                 and
36661           fpr.PROJECT_ID             =  prj_emt.PROJECT_ID             and
36662           (((fpr.RBS_AGGR_LEVEL,
36663              fpr.WBS_ROLLUP_FLAG,
36664              fpr.PRG_ROLLUP_FLAG) in (('T', 'Y', 'Y'),
36665                                       ('T', 'Y', 'N'),
36666                                       ('T', 'N', 'Y'),
36667                                       ('T', 'N', 'N'),
36668                                       ('L', 'N', 'N')) and
36669              fpr.PROJECT_ELEMENT_ID = prg.SUB_EMT_ID) or
36670            ((fpr.RBS_AGGR_LEVEL,
36671              fpr.WBS_ROLLUP_FLAG,
36672              fpr.PRG_ROLLUP_FLAG) in (('L', 'N', 'Y'),
36673                                       ('L', 'N', 'N')) and
36674              fpr.PROJECT_ELEMENT_ID <> prg.SUB_EMT_ID))                and
36675           decode(fpr.PLAN_VERSION_ID,
36676                  -1, 'LF',
36677                  -2, 'LF',
36678                  -3, 'LF',
36679                  -4, 'LF',
36680                      decode(wbs_hdr.WP_FLAG,
36681                             'N', 'LF',
36682                               'LW')) =  prg.RELATIONSHIP_TYPE          and
36683           prj_emt.PROJ_ELEMENT_ID    =  prg.SUB_EMT_ID                 and
36684           wbs_hdr.PROJECT_ID         =  prj_emt.PROJECT_ID             and
36685           decode(wbs_hdr.WP_FLAG,
36686                  'Y', wbs_hdr.WBS_VERSION_ID,
36687                       -1)            = decode(wbs_hdr.WP_FLAG,
36688                                               'Y', prg.SUB_ID,
36689                                                    -1)                 and
36690           wbs_hdr.PLAN_VERSION_ID    =  fpr.PLAN_VERSION_ID            and
36691           wbs_hdr.PLAN_TYPE_CODE     =  fpr.PLAN_TYPE_CODE             and
36692           decode(fpr.PLAN_VERSION_ID,
36693                  -3, fpr.PLAN_TYPE_ID,
36694                  -4, fpr.PLAN_TYPE_ID,
36695                      -1)             =  decode(fpr.PLAN_VERSION_ID,
36696                                                -3, wbs_hdr.PLAN_TYPE_ID,
36697                                                -4, wbs_hdr.PLAN_TYPE_ID,
36698                                                    -1)                 and
36699           decode(wbs_hdr.WP_FLAG,
36700                  'N', decode(fpr.PLAN_VERSION_ID,
36701                              -1, 'Y',
36702                              -2, 'Y',
36703                              -3, 'Y',
36704                              -4, 'Y',
36705                                  decode(fpr.RBS_AGGR_LEVEL
36706                                           || '_' || wbs_hdr.CB_FLAG
36707                                           || '_' || wbs_hdr.CO_FLAG,
36708                                         'L_Y_Y', 'Y',
36709                                         'L_N_Y', 'Y',
36710                                         'L_Y_N', 'Y',
36711                                                  'N')),
36712                       'Y')           =  'Y'                            and
36713           prg.SUP_PROJECT_ID         =  sup_wbs_hdr.PROJECT_ID     (+) and
36714           prg.SUP_ID                 =  sup_wbs_hdr.WBS_VERSION_ID (+) and
36715           'Y'                        =  sup_wbs_hdr.WP_FLAG        (+) and
36716           wbs_hdr.PROJECT_ID         =  sub_ver.PROJECT_ID         (+) and
36717           wbs_hdr.WBS_VERSION_ID     =  sub_ver.ELEMENT_VERSION_ID (+) and
36718           'STRUCTURE_PUBLISHED'      =  sub_ver.STATUS_CODE        (+) and
36719           sup_wbs_hdr.PROJECT_ID     =  sup_ver.PROJECT_ID         (+) and
36720           sup_wbs_hdr.WBS_VERSION_ID =  sup_ver.ELEMENT_VERSION_ID (+) and
36721           'STRUCTURE_PUBLISHED'      =  sup_ver.STATUS_CODE        (+) and
36722           wbs_hdr.CB_FLAG            =  fin_plan.CB                (+) and
36723           wbs_hdr.CO_FLAG            =  fin_plan.CO                (+)
36724         union all
36725         select /*+ ordered parallel(pjp1) */                   -- changed for bug 5927368
36726                -- get structure level amounts from interim
36727           decode(pjp1.RBS_AGGR_LEVEL,
36728                  'L', 'DO_NOT_ROLLUP',
36729                       'WBS')                          STRUCT_TYPE,
36730           to_char(null)                               LINE_TYPE,
36731           prg.SUP_PROJECT_ID,
36732           prg.SUP_ID,
36733           prg.SUP_EMT_ID,
36734           prg.SUB_EMT_ID,
36735           prg.SUB_ROLLUP_ID,
36736           'PJP1'                                      LINE_SOURCE,
36737           decode(pjp1.PLAN_VERSION_ID,
36738                  -1, prg.SUB_ID,
36739                  -3, prg.SUB_ID,
36740                  -4, prg.SUB_ID,
36741                      decode(fin_plan.PLAN_VERSION_ID,
36742                             null, null,
36743                                   prg.SUB_ID))        SUB_ID,
36744           decode(pjp1.PLAN_VERSION_ID,
36745                  -1, 'N',
36746                  -3, 'N',
36747                  -4, 'N',
36748                      decode(fin_plan.PLAN_VERSION_ID,
36749                             null, null,
36750                                   'N'))               SUP_WP_FLAG,
36751           decode(pjp1.PLAN_VERSION_ID,
36752                  -1, pjp1.PLAN_VERSION_ID,
36753                  -3, pjp1.PLAN_VERSION_ID,
36754                  -4, pjp1.PLAN_VERSION_ID,
36755                      decode(fin_plan.PLAN_VERSION_ID,
36756                             null, null,
36757                                   fin_plan.PLAN_VERSION_ID)
36758                 )                                     SUB_PLAN_VERSION_ID,
36759           decode(pjp1.PLAN_VERSION_ID,
36760                  -1, pjp1.PLAN_TYPE_ID,
36761                  -3, pjp1.PLAN_TYPE_ID,
36762                  -4, pjp1.PLAN_TYPE_ID,
36763                      decode(fin_plan.PLAN_VERSION_ID,
36764                             null, null,
36765                                   pjp1.PLAN_TYPE_ID)) SUB_PLAN_TYPE_ID,
36766           pjp1.TIME_ID,
36767           pjp1.PERIOD_TYPE_ID,
36768           pjp1.CALENDAR_TYPE,
36769           pjp1.RBS_AGGR_LEVEL,
36770           pjp1.CURR_RECORD_TYPE_ID,
36771           pjp1.CURRENCY_CODE,
36772           pjp1.RBS_ELEMENT_ID,
36773           pjp1.RBS_VERSION_ID,
36774           decode(wbs_hdr.WP_FLAG,
36775                  'N', decode(wbs_hdr.PLAN_VERSION_ID,
36776                              -1, pjp1.PLAN_VERSION_ID,
36777                                  fin_plan.PLAN_VERSION_ID),
36778                       sup_wbs_hdr.PLAN_VERSION_ID)    PLAN_VERSION_ID,
36779           decode(wbs_hdr.WP_FLAG,
36780                  'N', pjp1.PLAN_TYPE_ID,
36781                       sup_wbs_hdr.PLAN_TYPE_ID)       PLAN_TYPE_ID,
36782           pjp1.PLAN_TYPE_CODE,
36783           decode(wbs_hdr.WP_FLAG
36784                    || '_' || sup_wbs_hdr.WP_FLAG
36785                    || '_' || sub_ver.STATUS_CODE
36786                    || '_' || sup_ver.STATUS_CODE,
36787                  'Y_Y__', to_number(null),
36788                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36789                  pjp1.RAW_COST)                       RAW_COST,
36790           decode(wbs_hdr.WP_FLAG
36791                    || '_' || sup_wbs_hdr.WP_FLAG
36792                    || '_' || sub_ver.STATUS_CODE
36793                    || '_' || sup_ver.STATUS_CODE,
36794                  'Y_Y__', to_number(null),
36795                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36796                  pjp1.BRDN_COST)                      BRDN_COST,
36797           decode(wbs_hdr.WP_FLAG
36798                    || '_' || sup_wbs_hdr.WP_FLAG
36799                    || '_' || sub_ver.STATUS_CODE
36800                    || '_' || sup_ver.STATUS_CODE,
36801                  'Y_Y__', to_number(null),
36802                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36803                  pjp1.REVENUE)                        REVENUE,
36804           decode(wbs_hdr.WP_FLAG
36805                    || '_' || sup_wbs_hdr.WP_FLAG
36806                    || '_' || sub_ver.STATUS_CODE
36807                    || '_' || sup_ver.STATUS_CODE,
36808                  'Y_Y__', to_number(null),
36809                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36810                  pjp1.BILL_RAW_COST)                  BILL_RAW_COST,
36811           decode(wbs_hdr.WP_FLAG
36812                    || '_' || sup_wbs_hdr.WP_FLAG
36813                    || '_' || sub_ver.STATUS_CODE
36814                    || '_' || sup_ver.STATUS_CODE,
36815                  'Y_Y__', to_number(null),
36816                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36817                  pjp1.BILL_BRDN_COST)                 BILL_BRDN_COST,
36818           decode(wbs_hdr.WP_FLAG
36819                    || '_' || sup_wbs_hdr.WP_FLAG
36820                    || '_' || sub_ver.STATUS_CODE
36821                    || '_' || sup_ver.STATUS_CODE,
36822                  'Y_Y__', to_number(null),
36823                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36824                  pjp1.BILL_LABOR_RAW_COST)            BILL_LABOR_RAW_COST,
36825           decode(wbs_hdr.WP_FLAG
36826                    || '_' || sup_wbs_hdr.WP_FLAG
36827                    || '_' || sub_ver.STATUS_CODE
36828                    || '_' || sup_ver.STATUS_CODE,
36829                  'Y_Y__', to_number(null),
36830                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36831                  pjp1.BILL_LABOR_BRDN_COST)           BILL_LABOR_BRDN_COST,
36832           decode(wbs_hdr.WP_FLAG
36833                    || '_' || sup_wbs_hdr.WP_FLAG
36834                    || '_' || sub_ver.STATUS_CODE
36835                    || '_' || sup_ver.STATUS_CODE,
36836                  'Y_Y__', to_number(null),
36837                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36838                  pjp1.BILL_LABOR_HRS)                 BILL_LABOR_HRS,
36839           decode(wbs_hdr.WP_FLAG
36840                    || '_' || sup_wbs_hdr.WP_FLAG
36841                    || '_' || sub_ver.STATUS_CODE
36842                    || '_' || sup_ver.STATUS_CODE,
36843                  'Y_Y__', to_number(null),
36844                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36845                  pjp1.EQUIPMENT_RAW_COST)             EQUIPMENT_RAW_COST,
36846           decode(wbs_hdr.WP_FLAG
36847                    || '_' || sup_wbs_hdr.WP_FLAG
36848                    || '_' || sub_ver.STATUS_CODE
36849                    || '_' || sup_ver.STATUS_CODE,
36850                  'Y_Y__', to_number(null),
36851                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36852                  pjp1.EQUIPMENT_BRDN_COST)            EQUIPMENT_BRDN_COST,
36853           decode(wbs_hdr.WP_FLAG
36854                    || '_' || sup_wbs_hdr.WP_FLAG
36855                    || '_' || sub_ver.STATUS_CODE
36856                    || '_' || sup_ver.STATUS_CODE,
36857                  'Y_Y__', to_number(null),
36858                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36859                  pjp1.CAPITALIZABLE_RAW_COST)         CAPITALIZABLE_RAW_COST,
36860           decode(wbs_hdr.WP_FLAG
36861                    || '_' || sup_wbs_hdr.WP_FLAG
36862                    || '_' || sub_ver.STATUS_CODE
36863                    || '_' || sup_ver.STATUS_CODE,
36864                  'Y_Y__', to_number(null),
36865                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36866                  pjp1.CAPITALIZABLE_BRDN_COST)        CAPITALIZABLE_BRDN_COST,
36867           decode(wbs_hdr.WP_FLAG
36868                    || '_' || sup_wbs_hdr.WP_FLAG
36869                    || '_' || sub_ver.STATUS_CODE
36870                    || '_' || sup_ver.STATUS_CODE,
36871                  'Y_Y__', to_number(null),
36872                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36873                  pjp1.LABOR_RAW_COST)                 LABOR_RAW_COST,
36874           decode(wbs_hdr.WP_FLAG
36875                    || '_' || sup_wbs_hdr.WP_FLAG
36876                    || '_' || sub_ver.STATUS_CODE
36877                    || '_' || sup_ver.STATUS_CODE,
36878                  'Y_Y__', to_number(null),
36879                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36880                  pjp1.LABOR_BRDN_COST)                LABOR_BRDN_COST,
36881           decode(wbs_hdr.WP_FLAG
36882                    || '_' || sup_wbs_hdr.WP_FLAG
36883                    || '_' || sub_ver.STATUS_CODE
36884                    || '_' || sup_ver.STATUS_CODE,
36885                  'Y_Y__', to_number(null),
36886                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36887                  pjp1.LABOR_HRS)                      LABOR_HRS,
36888           decode(wbs_hdr.WP_FLAG
36889                    || '_' || sup_wbs_hdr.WP_FLAG
36890                    || '_' || sub_ver.STATUS_CODE
36891                    || '_' || sup_ver.STATUS_CODE,
36892                  'Y_Y__', to_number(null),
36893                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36894                  pjp1.LABOR_REVENUE)                  LABOR_REVENUE,
36895           decode(wbs_hdr.WP_FLAG
36896                    || '_' || sup_wbs_hdr.WP_FLAG
36897                    || '_' || sub_ver.STATUS_CODE
36898                    || '_' || sup_ver.STATUS_CODE,
36899                  'Y_Y__', to_number(null),
36900                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36901                  pjp1.EQUIPMENT_HOURS)                EQUIPMENT_HOURS,
36902           decode(wbs_hdr.WP_FLAG
36903                    || '_' || sup_wbs_hdr.WP_FLAG
36904                    || '_' || sub_ver.STATUS_CODE
36905                    || '_' || sup_ver.STATUS_CODE,
36906                  'Y_Y__', to_number(null),
36907                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36908                  pjp1.BILLABLE_EQUIPMENT_HOURS)       BILLABLE_EQUIPMENT_HOURS,
36909           decode(wbs_hdr.WP_FLAG
36910                    || '_' || sup_wbs_hdr.WP_FLAG
36911                    || '_' || sub_ver.STATUS_CODE
36912                    || '_' || sup_ver.STATUS_CODE,
36913                  'Y_Y__', to_number(null),
36914                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36915                  pjp1.SUP_INV_COMMITTED_COST)         SUP_INV_COMMITTED_COST,
36916           decode(wbs_hdr.WP_FLAG
36917                    || '_' || sup_wbs_hdr.WP_FLAG
36918                    || '_' || sub_ver.STATUS_CODE
36919                    || '_' || sup_ver.STATUS_CODE,
36920                  'Y_Y__', to_number(null),
36921                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36922                  pjp1.PO_COMMITTED_COST)              PO_COMMITTED_COST,
36923           decode(wbs_hdr.WP_FLAG
36924                    || '_' || sup_wbs_hdr.WP_FLAG
36925                    || '_' || sub_ver.STATUS_CODE
36926                    || '_' || sup_ver.STATUS_CODE,
36927                  'Y_Y__', to_number(null),
36928                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36929                  pjp1.PR_COMMITTED_COST)              PR_COMMITTED_COST,
36930           decode(wbs_hdr.WP_FLAG
36931                    || '_' || sup_wbs_hdr.WP_FLAG
36932                    || '_' || sub_ver.STATUS_CODE
36933                    || '_' || sup_ver.STATUS_CODE,
36934                  'Y_Y__', to_number(null),
36935                  'Y_Y__STRUCTURE_PUBLISHED', to_number(null),
36936                  pjp1.OTH_COMMITTED_COST)             OTH_COMMITTED_COST,
36937           decode(wbs_hdr.WP_FLAG
36938                    || '_' || sup_wbs_hdr.WP_FLAG
36939                    || '_' || sup_ver.STATUS_CODE,
36940                  'Y_Y_', to_number(null),
36941                  pjp1.ACT_LABOR_HRS)                  ACT_LABOR_HRS,
36942           decode(wbs_hdr.WP_FLAG
36943                    || '_' || sup_wbs_hdr.WP_FLAG
36944                    || '_' || sup_ver.STATUS_CODE,
36945                  'Y_Y_', to_number(null),
36946                  pjp1.ACT_EQUIP_HRS)                  ACT_EQUIP_HRS,
36947           decode(wbs_hdr.WP_FLAG
36948                    || '_' || sup_wbs_hdr.WP_FLAG
36949                    || '_' || sup_ver.STATUS_CODE,
36950                  'Y_Y_', to_number(null),
36951                  pjp1.ACT_LABOR_BRDN_COST)            ACT_LABOR_BRDN_COST,
36952           decode(wbs_hdr.WP_FLAG
36953                    || '_' || sup_wbs_hdr.WP_FLAG
36954                    || '_' || sup_ver.STATUS_CODE,
36955                  'Y_Y_', to_number(null),
36956                  pjp1.ACT_EQUIP_BRDN_COST)            ACT_EQUIP_BRDN_COST,
36957           decode(wbs_hdr.WP_FLAG
36958                    || '_' || sup_wbs_hdr.WP_FLAG
36959                    || '_' || sup_ver.STATUS_CODE,
36960                  'Y_Y_', to_number(null),
36961                  pjp1.ACT_BRDN_COST)                  ACT_BRDN_COST,
36962           decode(wbs_hdr.WP_FLAG
36963                    || '_' || sup_wbs_hdr.WP_FLAG
36964                    || '_' || sup_ver.STATUS_CODE,
36965                  'Y_Y_', to_number(null),
36966                  pjp1.ACT_RAW_COST)                   ACT_RAW_COST,
36967           decode(wbs_hdr.WP_FLAG
36968                    || '_' || sup_wbs_hdr.WP_FLAG
36969                    || '_' || sup_ver.STATUS_CODE,
36970                  'Y_Y_', to_number(null),
36971                  pjp1.ACT_REVENUE)                    ACT_REVENUE,
36972           decode(wbs_hdr.WP_FLAG
36973                    || '_' || sup_wbs_hdr.WP_FLAG
36974                    || '_' || sup_ver.STATUS_CODE,
36975                  'Y_Y_', to_number(null),
36976                  pjp1.ACT_LABOR_RAW_COST)             ACT_LABOR_RAW_COST,
36977           decode(wbs_hdr.WP_FLAG
36978                    || '_' || sup_wbs_hdr.WP_FLAG
36979                    || '_' || sup_ver.STATUS_CODE,
36980                  'Y_Y_', to_number(null),
36981                  pjp1.ACT_EQUIP_RAW_COST)             ACT_EQUIP_RAW_COST,
36982           decode(wbs_hdr.WP_FLAG
36983                    || '_' || sup_wbs_hdr.WP_FLAG
36984                    || '_' || sup_ver.STATUS_CODE,
36985                  'Y_Y_', to_number(null),
36986                  pjp1.ETC_LABOR_HRS)                  ETC_LABOR_HRS,
36987           decode(wbs_hdr.WP_FLAG
36988                    || '_' || sup_wbs_hdr.WP_FLAG
36989                    || '_' || sup_ver.STATUS_CODE,
36990                  'Y_Y_', to_number(null),
36991                  pjp1.ETC_EQUIP_HRS)                  ETC_EQUIP_HRS,
36992           decode(wbs_hdr.WP_FLAG
36993                    || '_' || sup_wbs_hdr.WP_FLAG
36994                    || '_' || sup_ver.STATUS_CODE,
36995                  'Y_Y_', to_number(null),
36996                  pjp1.ETC_LABOR_BRDN_COST)            ETC_LABOR_BRDN_COST,
36997           decode(wbs_hdr.WP_FLAG
36998                    || '_' || sup_wbs_hdr.WP_FLAG
36999                    || '_' || sup_ver.STATUS_CODE,
37000                  'Y_Y_', to_number(null),
37001                  pjp1.ETC_EQUIP_BRDN_COST)            ETC_EQUIP_BRDN_COST,
37002           decode(wbs_hdr.WP_FLAG
37003                    || '_' || sup_wbs_hdr.WP_FLAG
37004                    || '_' || sup_ver.STATUS_CODE,
37005                  'Y_Y_', to_number(null),
37006                  pjp1.ETC_BRDN_COST)                  ETC_BRDN_COST,
37007           decode(wbs_hdr.WP_FLAG
37008                    || '_' || sup_wbs_hdr.WP_FLAG
37009                    || '_' || sup_ver.STATUS_CODE,
37010                  'Y_Y_', to_number(null),
37011                  pjp1.ETC_RAW_COST)                   ETC_RAW_COST,
37012           decode(wbs_hdr.WP_FLAG
37013                    || '_' || sup_wbs_hdr.WP_FLAG
37014                    || '_' || sup_ver.STATUS_CODE,
37015                  'Y_Y_', to_number(null),
37016                  pjp1.ETC_LABOR_RAW_COST)             ETC_LABOR_RAW_COST,
37017           decode(wbs_hdr.WP_FLAG
37018                    || '_' || sup_wbs_hdr.WP_FLAG
37019                    || '_' || sup_ver.STATUS_CODE,
37020                  'Y_Y_', to_number(null),
37021                  pjp1.ETC_EQUIP_RAW_COST)             ETC_EQUIP_RAW_COST,
37022           pjp1.CUSTOM1,
37023           pjp1.CUSTOM2,
37024           pjp1.CUSTOM3,
37025           pjp1.CUSTOM4,
37026           pjp1.CUSTOM5,
37027           pjp1.CUSTOM6,
37028           pjp1.CUSTOM7,
37029           pjp1.CUSTOM8,
37030           pjp1.CUSTOM9,
37031           pjp1.CUSTOM10,
37032           pjp1.CUSTOM11,
37033           pjp1.CUSTOM12,
37034           pjp1.CUSTOM13,
37035           pjp1.CUSTOM14,
37036           pjp1.CUSTOM15
37037         from
37038           PJI_FP_AGGR_PJP1           pjp1,
37039           PJI_PJP_WBS_HEADER         wbs_hdr,
37040           PA_PROJ_ELEMENTS           prj_emt,
37041           PA_XBS_DENORM              prg,
37042           PJI_XBS_DENORM_DELTA       prg_delta,
37043           PJI_PJP_WBS_HEADER         sup_wbs_hdr,
37044           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
37045           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
37046           (
37047             select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID
37048             from DUAL union all
37049             select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID
37050             from DUAL union all
37051             select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID
37052             from DUAL union all
37053             select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID
37054             from DUAL
37055           ) fin_plan
37056         where
37057           prg.STRUCT_TYPE            =  'PRG'                           and
37058           prg.SUP_LEVEL              =  l_level                         and
37059           nvl(prg.SUB_ROLLUP_ID,
37060               prg.SUP_EMT_ID)        <> prg.SUP_EMT_ID                  and
37061           p_worker_id                =  prg_delta.WORKER_ID         (+) and
37062           prg.STRUCT_TYPE            =  prg_delta.STRUCT_TYPE       (+) and
37063           prg.SUP_PROJECT_ID         =  prg_delta.SUP_PROJECT_ID    (+) and
37064           prg.SUP_LEVEL              =  prg_delta.SUP_LEVEL         (+) and
37065           prg.SUP_ID                 =  prg_delta.SUP_ID            (+) and
37066           prg.SUB_LEVEL              =  prg_delta.SUB_LEVEL         (+) and
37067           prg.SUB_ID                 =  prg_delta.SUB_ID            (+) and
37068           prg.RELATIONSHIP_TYPE      =  prg_delta.RELATIONSHIP_TYPE (+) and
37069           1                          =  prg_delta.SIGN              (+) and
37070           (prg_delta.SUP_PROJECT_ID is not null or
37071            (prg_delta.SUP_PROJECT_ID is null and
37072             pjp1.RECORD_TYPE = 'P'))                                    and
37073           pjp1.WORKER_ID             =  p_worker_id                     and
37074           pjp1.PRG_LEVEL             in (0, prg.SUB_LEVEL)              and
37075           pjp1.PROJECT_ID            =  prj_emt.PROJECT_ID              and
37076           (((pjp1.RBS_AGGR_LEVEL,
37077              pjp1.WBS_ROLLUP_FLAG,
37078              pjp1.PRG_ROLLUP_FLAG) in (('T', 'Y', 'Y'),
37079                                        ('T', 'Y', 'N'),
37080                                        ('T', 'N', 'Y'),
37081                                        ('T', 'N', 'N'),
37082                                        ('L', 'N', 'N')) and
37083              pjp1.PROJECT_ELEMENT_ID = prg.SUB_EMT_ID) or
37084            ((pjp1.RBS_AGGR_LEVEL,
37085              pjp1.WBS_ROLLUP_FLAG,
37086              pjp1.PRG_ROLLUP_FLAG) in (('L', 'N', 'Y'),
37087                                        ('L', 'N', 'N')) and
37088              pjp1.PROJECT_ELEMENT_ID <> prg.SUB_EMT_ID))                and
37089           decode(pjp1.PLAN_VERSION_ID,
37090                  -1, 'LF',
37091                  -2, 'LF',
37092                  -3, 'LF',
37093                  -4, 'LF',
37094                      decode(wbs_hdr.WP_FLAG,
37095                             'N', 'LF',
37096                               'LW')) =  prg.RELATIONSHIP_TYPE           and
37097           prg.STRUCT_VERSION_ID      is null                            and
37098           prj_emt.OBJECT_TYPE        =  'PA_STRUCTURES'                 and
37099           prj_emt.PROJ_ELEMENT_ID    =  prg.SUB_EMT_ID                  and
37100           wbs_hdr.PROJECT_ID         =  prj_emt.PROJECT_ID              and
37101           wbs_hdr.WBS_VERSION_ID     =  prg.SUB_ID                      and
37102           wbs_hdr.PROJECT_ID         =  pjp1.PROJECT_ID                 and
37103           wbs_hdr.PLAN_VERSION_ID    =  pjp1.PLAN_VERSION_ID            and
37104           wbs_hdr.PLAN_TYPE_CODE     =  pjp1.PLAN_TYPE_CODE             and
37105           decode(pjp1.PLAN_VERSION_ID,
37106                  -3, pjp1.PLAN_TYPE_ID,
37107                  -4, pjp1.PLAN_TYPE_ID,
37108                      -1)             =  decode(pjp1.PLAN_VERSION_ID,
37109                                                -3, wbs_hdr.PLAN_TYPE_ID,
37110                                                -4, wbs_hdr.PLAN_TYPE_ID,
37111                                                    -1)                  and
37112           decode(wbs_hdr.WP_FLAG,
37113                  'N', decode(pjp1.PLAN_VERSION_ID,
37114                              -1, 'Y',
37115                              -2, 'Y',
37116                              -3, 'Y',
37117                              -4, 'Y',
37118                                  decode(pjp1.RBS_AGGR_LEVEL
37119                                           || '_' || wbs_hdr.CB_FLAG
37120                                           || '_' || wbs_hdr.CO_FLAG,
37121                                         'L_Y_Y', 'Y',
37122                                         'L_N_Y', 'Y',
37123                                         'L_Y_N', 'Y',
37124                                                  'N')),
37125                       'Y')           =  'Y'                             and
37126           prg.SUP_PROJECT_ID         =  sup_wbs_hdr.PROJECT_ID      (+) and
37127           prg.SUP_ID                 =  sup_wbs_hdr.WBS_VERSION_ID  (+) and
37128           'Y'                        =  sup_wbs_hdr.WP_FLAG         (+) and
37129           wbs_hdr.PROJECT_ID         =  sub_ver.PROJECT_ID          (+) and
37130           wbs_hdr.WBS_VERSION_ID     =  sub_ver.ELEMENT_VERSION_ID  (+) and
37131           'STRUCTURE_PUBLISHED'      =  sub_ver.STATUS_CODE         (+) and
37132           sup_wbs_hdr.PROJECT_ID     =  sup_ver.PROJECT_ID          (+) and
37133           sup_wbs_hdr.WBS_VERSION_ID =  sup_ver.ELEMENT_VERSION_ID  (+) and
37134           'STRUCTURE_PUBLISHED'      =  sup_ver.STATUS_CODE         (+) and
37135           wbs_hdr.CB_FLAG            =  fin_plan.CB                 (+) and
37136           wbs_hdr.CO_FLAG            =  fin_plan.CO                 (+)
37137         )                          pjp,
37138         PJI_PJP_PROJ_BATCH_MAP     map,
37139         PA_PROJ_WORKPLAN_ATTR      sup_wpa,
37140         PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
37141         PA_XBS_DENORM              wbs,
37142         (
37143           select 1     WBS_SUP_LEVEL,
37144                  'PRJ' INVERT_ID
37145           from   DUAL
37146           union all
37147           select 1     WBS_SUP_LEVEL,
37148                  'WBS' INVERT_ID
37149           from   DUAL
37150         ) top_slice
37151       where
37152         map.WORKER_ID           = p_worker_id                         and
37153         map.PROJECT_ID          = pjp.SUP_PROJECT_ID                  and
37154         pjp.SUP_EMT_ID          = sup_wpa.PROJ_ELEMENT_ID             and
37155         pjp.SUP_PROJECT_ID      = sup_fin_ver.PROJECT_ID          (+) and
37156         pjp.SUP_ID              = sup_fin_ver.ELEMENT_VERSION_ID  (+) and
37157         'STRUCTURE_WORKING'     = sup_fin_ver.STATUS_CODE         (+) and
37158         (pjp.SUP_WP_FLAG is null or
37159          (pjp.SUP_WP_FLAG is not null and
37160           (sup_fin_ver.PROJECT_ID is not null or
37161            sup_wpa.WP_ENABLE_VERSION_FLAG = 'N')))                    and
37162         'WBS'                   = wbs.STRUCT_TYPE                 (+) and
37163         pjp.STRUCT_TYPE         = wbs.STRUCT_TYPE                 (+) and
37164         pjp.SUP_PROJECT_ID      = wbs.SUP_PROJECT_ID              (+) and
37165         pjp.SUP_ID              = wbs.STRUCT_VERSION_ID           (+) and
37166         pjp.SUB_ROLLUP_ID       = wbs.SUB_EMT_ID                  (+) and
37167         wbs.SUP_LEVEL           = top_slice.WBS_SUP_LEVEL         (+)
37168       group by
37169         pjp.LINE_TYPE,
37170         pjp.SUP_PROJECT_ID,
37171         map.PROJECT_ORG_ID,
37172         map.PROJECT_ORGANIZATION_ID,
37173         decode(pjp.STRUCT_TYPE,
37174                'DO_NOT_ROLLUP', pjp.SUB_ROLLUP_ID,
37175                                 decode(top_slice.INVERT_ID,
37176                                        'PRJ', pjp.SUP_EMT_ID, wbs.SUP_EMT_ID)
37177               ),
37178         pjp.TIME_ID,
37179         pjp.PERIOD_TYPE_ID,
37180         pjp.CALENDAR_TYPE,
37181         pjp.RBS_AGGR_LEVEL,
37182         decode(pjp.STRUCT_TYPE,
37183                'DO_NOT_ROLLUP', 'N',
37184                                 decode(top_slice.INVERT_ID,
37185                                        'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
37186                                                           wbs.SUP_EMT_ID,
37187                                                           'N', 'Y'))
37188               ),
37189         pjp.CURR_RECORD_TYPE_ID,
37190         pjp.CURRENCY_CODE,
37191         pjp.RBS_ELEMENT_ID,
37192         pjp.RBS_VERSION_ID,
37193         pjp.PLAN_VERSION_ID,
37194         pjp.PLAN_TYPE_ID,
37195         pjp.PLAN_TYPE_CODE;
37196     else
37197         return;
37198     end if;
37199 
37200   end EXECUTE_ROLLUP_FPR_PRG;
37201 
37202 /* Procedure EXECUTE_ROLLUP_ACR_PRG added for Bug 7551819 */
37203   -- ----------------------------------------------------------
37204   -- procedure EXECUTE_ROLLUP_ACR_PRG
37205   --
37206   -- This is the same query as in ROLLUP_ACR_PRG
37207   -- To implement the worker logic, we are implementing this procedure.
37208   -- Because partition can't be a bind variable like table names.
37209   -- Any fix done in one if condition to be done in all 10 if conditions.
37210   -- ----------------------------------------------------------
37211   procedure EXECUTE_ROLLUP_ACR_PRG (p_worker_id in number default null,
37212                                     p_level in number default null) is
37213 
37214   l_level           number;
37215   begin
37216     l_level := p_level;
37217 
37218     if (p_worker_id =1) then
37219       -- Query for Partition 1
37220 
37221       insert /*+ parallel(PJI_AC_AGGR_PJP1) */
37222                  into PJI_AC_AGGR_PJP1 partition(P1)
37223       (
37224         WORKER_ID,
37225         RECORD_TYPE,
37226         PRG_LEVEL,
37227         PROJECT_ID,
37228         PROJECT_ORG_ID,
37229         PROJECT_ORGANIZATION_ID,
37230         PROJECT_ELEMENT_ID,
37231         TIME_ID,
37232         PERIOD_TYPE_ID,
37233         CALENDAR_TYPE,
37234         WBS_ROLLUP_FLAG,
37235         PRG_ROLLUP_FLAG,
37236         CURR_RECORD_TYPE_ID,
37237         CURRENCY_CODE,
37238         REVENUE,
37239         INITIAL_FUNDING_AMOUNT,
37240         INITIAL_FUNDING_COUNT,
37241         ADDITIONAL_FUNDING_AMOUNT,
37242         ADDITIONAL_FUNDING_COUNT,
37243         CANCELLED_FUNDING_AMOUNT,
37244         CANCELLED_FUNDING_COUNT,
37245         FUNDING_ADJUSTMENT_AMOUNT,
37246         FUNDING_ADJUSTMENT_COUNT,
37247         REVENUE_WRITEOFF,
37248         AR_INVOICE_AMOUNT,
37249         AR_INVOICE_COUNT,
37250         AR_CASH_APPLIED_AMOUNT,
37251         AR_INVOICE_WRITE_OFF_AMOUNT,
37252         AR_INVOICE_WRITEOFF_COUNT,
37253         AR_CREDIT_MEMO_AMOUNT,
37254         AR_CREDIT_MEMO_COUNT,
37255         UNBILLED_RECEIVABLES,
37256         UNEARNED_REVENUE,
37257         AR_UNAPPR_INVOICE_AMOUNT,
37258         AR_UNAPPR_INVOICE_COUNT,
37259         AR_APPR_INVOICE_AMOUNT,
37260         AR_APPR_INVOICE_COUNT,
37261         AR_AMOUNT_DUE,
37262         AR_COUNT_DUE,
37263         AR_AMOUNT_OVERDUE,
37264         AR_COUNT_OVERDUE,
37265         CUSTOM1,
37266         CUSTOM2,
37267         CUSTOM3,
37268         CUSTOM4,
37269         CUSTOM5,
37270         CUSTOM6,
37271         CUSTOM7,
37272         CUSTOM8,
37273         CUSTOM9,
37274         CUSTOM10,
37275         CUSTOM11,
37276         CUSTOM12,
37277         CUSTOM13,
37278         CUSTOM14,
37279         CUSTOM15
37280       )
37281       select /*+ no_merge(pjp) */
37282         p_worker_id                                WORKER_ID,
37283         'P'                                        RECORD_TYPE,
37284         l_level                                    PRG_LEVEL,
37285         pjp.SUP_PROJECT_ID                         PROJECT_ID,
37286         map.PROJECT_ORG_ID,
37287         map.PROJECT_ORGANIZATION_ID,
37288         decode(top_slice.INVERT_ID,
37289                'PRJ', pjp.SUP_EMT_ID,
37290                wbs.SUP_EMT_ID)                     PROJECT_ELEMENT_ID,
37291         pjp.TIME_ID,
37292         pjp.PERIOD_TYPE_ID,
37293         pjp.CALENDAR_TYPE,
37294         decode(top_slice.INVERT_ID,
37295                'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
37296                                   wbs.SUP_EMT_ID,
37297                                   'N', 'Y'))       WBS_ROLLUP_FLAG,
37298         'Y'                                        PRG_ROLLUP_FLAG,
37299         pjp.CURR_RECORD_TYPE_ID,
37300         pjp.CURRENCY_CODE,
37301         sum(pjp.REVENUE)                           REVENUE,
37302         sum(pjp.INITIAL_FUNDING_AMOUNT)            INITIAL_FUNDING_AMOUNT,
37303         sum(pjp.INITIAL_FUNDING_COUNT)             INITIAL_FUNDING_COUNT,
37304         sum(pjp.ADDITIONAL_FUNDING_AMOUNT)         ADDITIONAL_FUNDING_AMOUNT,
37305         sum(pjp.ADDITIONAL_FUNDING_COUNT)          ADDITIONAL_FUNDING_COUNT,
37306         sum(pjp.CANCELLED_FUNDING_AMOUNT)          CANCELLED_FUNDING_AMOUNT,
37307         sum(pjp.CANCELLED_FUNDING_COUNT)           CANCELLED_FUNDING_COUNT,
37308         sum(pjp.FUNDING_ADJUSTMENT_AMOUNT)         FUNDING_ADJUSTMENT_AMOUNT,
37309         sum(pjp.FUNDING_ADJUSTMENT_COUNT)          FUNDING_ADJUSTMENT_COUNT,
37310         sum(pjp.REVENUE_WRITEOFF)                  REVENUE_WRITEOFF,
37311         sum(pjp.AR_INVOICE_AMOUNT)                 AR_INVOICE_AMOUNT,
37312         sum(pjp.AR_INVOICE_COUNT)                  AR_INVOICE_COUNT,
37313         sum(pjp.AR_CASH_APPLIED_AMOUNT)            AR_CASH_APPLIED_AMOUNT,
37314         sum(pjp.AR_INVOICE_WRITE_OFF_AMOUNT)       AR_INVOICE_WRITE_OFF_AMOUNT,
37315         sum(pjp.AR_INVOICE_WRITEOFF_COUNT)         AR_INVOICE_WRITEOFF_COUNT,
37316         sum(pjp.AR_CREDIT_MEMO_AMOUNT)             AR_CREDIT_MEMO_AMOUNT,
37317         sum(pjp.AR_CREDIT_MEMO_COUNT)              AR_CREDIT_MEMO_COUNT,
37318         sum(pjp.UNBILLED_RECEIVABLES)              UNBILLED_RECEIVABLES,
37319         sum(pjp.UNEARNED_REVENUE)                  UNEARNED_REVENUE,
37320         sum(pjp.AR_UNAPPR_INVOICE_AMOUNT)          AR_UNAPPR_INVOICE_AMOUNT,
37321         sum(pjp.AR_UNAPPR_INVOICE_COUNT)           AR_UNAPPR_INVOICE_COUNT,
37322         sum(pjp.AR_APPR_INVOICE_AMOUNT)            AR_APPR_INVOICE_AMOUNT,
37323         sum(pjp.AR_APPR_INVOICE_COUNT)             AR_APPR_INVOICE_COUNT,
37324         sum(pjp.AR_AMOUNT_DUE)                     AR_AMOUNT_DUE,
37325         sum(pjp.AR_COUNT_DUE)                      AR_COUNT_DUE,
37326         sum(pjp.AR_AMOUNT_OVERDUE)                 AR_AMOUNT_OVERDUE,
37327         sum(pjp.AR_COUNT_OVERDUE)                  AR_COUNT_OVERDUE,
37328         sum(pjp.CUSTOM1)                           CUSTOM1,
37329         sum(pjp.CUSTOM2)                           CUSTOM2,
37330         sum(pjp.CUSTOM3)                           CUSTOM3,
37331         sum(pjp.CUSTOM4)                           CUSTOM4,
37332         sum(pjp.CUSTOM5)                           CUSTOM5,
37333         sum(pjp.CUSTOM6)                           CUSTOM6,
37334         sum(pjp.CUSTOM7)                           CUSTOM7,
37335         sum(pjp.CUSTOM8)                           CUSTOM8,
37336         sum(pjp.CUSTOM9)                           CUSTOM9,
37337         sum(pjp.CUSTOM10)                          CUSTOM10,
37338         sum(pjp.CUSTOM11)                          CUSTOM11,
37339         sum(pjp.CUSTOM12)                          CUSTOM12,
37340         sum(pjp.CUSTOM13)                          CUSTOM13,
37341         sum(pjp.CUSTOM14)                          CUSTOM14,
37342         sum(pjp.CUSTOM15)                          CUSTOM15
37343       from
37344         (
37345         select /*+ ordered index(acr PJI_AC_XBS_ACCUM_F_N1) */
37346                -- get structure level amounts from Reporting Lines
37347           prg.SUP_PROJECT_ID,
37348           prg.SUP_ID,
37349           prg.SUP_EMT_ID,
37350           prg.SUB_EMT_ID,
37351           prg.SUB_ROLLUP_ID,
37352           'ACR'                                    LINE_SOURCE,
37353           prg.SUB_ID,
37354           acr.TIME_ID,
37355           acr.PERIOD_TYPE_ID,
37356           acr.CALENDAR_TYPE,
37357           acr.CURR_RECORD_TYPE_ID,
37358           acr.CURRENCY_CODE,
37359           prg.SIGN * acr.REVENUE                   REVENUE,
37360           prg.SIGN * acr.INITIAL_FUNDING_AMOUNT    INITIAL_FUNDING_AMOUNT,
37361           prg.SIGN * acr.INITIAL_FUNDING_COUNT     INITIAL_FUNDING_COUNT,
37362           prg.SIGN * acr.ADDITIONAL_FUNDING_AMOUNT ADDITIONAL_FUNDING_AMOUNT,
37363           prg.SIGN * acr.ADDITIONAL_FUNDING_COUNT  ADDITIONAL_FUNDING_COUNT,
37364           prg.SIGN * acr.CANCELLED_FUNDING_AMOUNT  CANCELLED_FUNDING_AMOUNT,
37365           prg.SIGN * acr.CANCELLED_FUNDING_COUNT   CANCELLED_FUNDING_COUNT,
37366           prg.SIGN * acr.FUNDING_ADJUSTMENT_AMOUNT FUNDING_ADJUSTMENT_AMOUNT,
37367           prg.SIGN * acr.FUNDING_ADJUSTMENT_COUNT  FUNDING_ADJUSTMENT_COUNT,
37368           prg.SIGN * acr.REVENUE_WRITEOFF          REVENUE_WRITEOFF,
37369           prg.SIGN * acr.AR_INVOICE_AMOUNT         AR_INVOICE_AMOUNT,
37370           prg.SIGN * acr.AR_INVOICE_COUNT          AR_INVOICE_COUNT,
37371           prg.SIGN * acr.AR_CASH_APPLIED_AMOUNT    AR_CASH_APPLIED_AMOUNT,
37372           prg.SIGN *
37373             acr.AR_INVOICE_WRITE_OFF_AMOUNT        AR_INVOICE_WRITE_OFF_AMOUNT,
37374           prg.SIGN * acr.AR_INVOICE_WRITEOFF_COUNT AR_INVOICE_WRITEOFF_COUNT,
37375           prg.SIGN * acr.AR_CREDIT_MEMO_AMOUNT     AR_CREDIT_MEMO_AMOUNT,
37376           prg.SIGN * acr.AR_CREDIT_MEMO_COUNT      AR_CREDIT_MEMO_COUNT,
37377           prg.SIGN * acr.UNBILLED_RECEIVABLES      UNBILLED_RECEIVABLES,
37378           prg.SIGN * acr.UNEARNED_REVENUE          UNEARNED_REVENUE,
37379           prg.SIGN * acr.AR_UNAPPR_INVOICE_AMOUNT  AR_UNAPPR_INVOICE_AMOUNT,
37380           prg.SIGN * acr.AR_UNAPPR_INVOICE_COUNT   AR_UNAPPR_INVOICE_COUNT,
37381           prg.SIGN * acr.AR_APPR_INVOICE_AMOUNT    AR_APPR_INVOICE_AMOUNT,
37382           prg.SIGN * acr.AR_APPR_INVOICE_COUNT     AR_APPR_INVOICE_COUNT,
37383           prg.SIGN * acr.AR_AMOUNT_DUE             AR_AMOUNT_DUE,
37384           prg.SIGN * acr.AR_COUNT_DUE              AR_COUNT_DUE,
37385           prg.SIGN * acr.AR_AMOUNT_OVERDUE         AR_AMOUNT_OVERDUE,
37386           prg.SIGN * acr.AR_COUNT_OVERDUE          AR_COUNT_OVERDUE,
37387           prg.SIGN * acr.CUSTOM1                   CUSTOM1,
37388           prg.SIGN * acr.CUSTOM2                   CUSTOM2,
37389           prg.SIGN * acr.CUSTOM3                   CUSTOM3,
37390           prg.SIGN * acr.CUSTOM4                   CUSTOM4,
37391           prg.SIGN * acr.CUSTOM5                   CUSTOM5,
37392           prg.SIGN * acr.CUSTOM6                   CUSTOM6,
37393           prg.SIGN * acr.CUSTOM7                   CUSTOM7,
37394           prg.SIGN * acr.CUSTOM8                   CUSTOM8,
37395           prg.SIGN * acr.CUSTOM9                   CUSTOM9,
37396           prg.SIGN * acr.CUSTOM10                  CUSTOM10,
37397           prg.SIGN * acr.CUSTOM11                  CUSTOM11,
37398           prg.SIGN * acr.CUSTOM12                  CUSTOM12,
37399           prg.SIGN * acr.CUSTOM13                  CUSTOM13,
37400           prg.SIGN * acr.CUSTOM14                  CUSTOM14,
37401           prg.SIGN * acr.CUSTOM15                  CUSTOM15
37402         from
37403           PJI_XBS_DENORM_DELTA prg,
37404           PA_PROJ_ELEMENTS     prj_emt,
37405           PJI_PJP_WBS_HEADER   wbs_hdr,
37406           PJI_AC_XBS_ACCUM_F   acr
37407         where
37408           prg.WORKER_ID           =  p_worker_id        and
37409           prg.STRUCT_TYPE         =  'PRG'              and
37410           prg.RELATIONSHIP_TYPE   =  'LF'               and
37411           prg.SUP_LEVEL           =  l_level            and
37412           nvl(prg.SUB_ROLLUP_ID,
37413               prg.SUP_EMT_ID)     <> prg.SUP_EMT_ID     and
37414           acr.WBS_ROLLUP_FLAG     in ('Y', 'N')         and
37415           acr.PRG_ROLLUP_FLAG     in ('Y', 'N')         and
37416           acr.PROJECT_ID          =  prj_emt.PROJECT_ID and
37417           acr.PROJECT_ELEMENT_ID  =  prg.SUB_EMT_ID     and
37418           prj_emt.PROJ_ELEMENT_ID =  prg.SUB_EMT_ID     and
37419           wbs_hdr.PROJECT_ID      =  prj_emt.PROJECT_ID and
37420           wbs_hdr.PLAN_VERSION_ID =  -1
37421         union all
37422         select /*+ ordered parallel(pjp1) */        -- changed for bug 5927368
37423                -- get program rollup amounts
37424           prg.SUP_PROJECT_ID,
37425           prg.SUP_ID,
37426           prg.SUP_EMT_ID,
37427           prg.SUB_EMT_ID,
37428           prg.SUB_ROLLUP_ID,
37429           'PJP1'                                   LINE_SOURCE,
37430           prg.SUB_ID,
37431           pjp1.TIME_ID,
37432           pjp1.PERIOD_TYPE_ID,
37433           pjp1.CALENDAR_TYPE,
37434           pjp1.CURR_RECORD_TYPE_ID,
37435           pjp1.CURRENCY_CODE,
37436           pjp1.REVENUE,
37437           pjp1.INITIAL_FUNDING_AMOUNT,
37438           pjp1.INITIAL_FUNDING_COUNT,
37439           pjp1.ADDITIONAL_FUNDING_AMOUNT,
37440           pjp1.ADDITIONAL_FUNDING_COUNT,
37441           pjp1.CANCELLED_FUNDING_AMOUNT,
37442           pjp1.CANCELLED_FUNDING_COUNT,
37443           pjp1.FUNDING_ADJUSTMENT_AMOUNT,
37444           pjp1.FUNDING_ADJUSTMENT_COUNT,
37445           pjp1.REVENUE_WRITEOFF,
37446           pjp1.AR_INVOICE_AMOUNT,
37447           pjp1.AR_INVOICE_COUNT,
37448           pjp1.AR_CASH_APPLIED_AMOUNT,
37449           pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
37450           pjp1.AR_INVOICE_WRITEOFF_COUNT,
37451           pjp1.AR_CREDIT_MEMO_AMOUNT,
37452           pjp1.AR_CREDIT_MEMO_COUNT,
37453           pjp1.UNBILLED_RECEIVABLES,
37454           pjp1.UNEARNED_REVENUE,
37455           pjp1.AR_UNAPPR_INVOICE_AMOUNT,
37456           pjp1.AR_UNAPPR_INVOICE_COUNT,
37457           pjp1.AR_APPR_INVOICE_AMOUNT,
37458           pjp1.AR_APPR_INVOICE_COUNT,
37459           pjp1.AR_AMOUNT_DUE,
37460           pjp1.AR_COUNT_DUE,
37461           pjp1.AR_AMOUNT_OVERDUE,
37462           pjp1.AR_COUNT_OVERDUE,
37463           pjp1.CUSTOM1,
37464           pjp1.CUSTOM2,
37465           pjp1.CUSTOM3,
37466           pjp1.CUSTOM4,
37467           pjp1.CUSTOM5,
37468           pjp1.CUSTOM6,
37469           pjp1.CUSTOM7,
37470           pjp1.CUSTOM8,
37471           pjp1.CUSTOM9,
37472           pjp1.CUSTOM10,
37473           pjp1.CUSTOM11,
37474           pjp1.CUSTOM12,
37475           pjp1.CUSTOM13,
37476           pjp1.CUSTOM14,
37477           pjp1.CUSTOM15
37478         from
37479           PJI_AC_AGGR_PJP1     pjp1,
37480           PJI_PJP_WBS_HEADER   wbs_hdr,
37481           PA_PROJ_ELEMENTS     prj_emt,
37482           PA_XBS_DENORM        prg,
37483           PJI_XBS_DENORM_DELTA prg_delta
37484         where
37485           prg.STRUCT_TYPE         =  'PRG'                           and
37486           prg.SUP_LEVEL           =  l_level                         and
37487           nvl(prg.SUB_ROLLUP_ID,
37488               prg.SUP_EMT_ID)     <> prg.SUP_EMT_ID                  and
37489           prg.RELATIONSHIP_TYPE   =  'LF'                            and
37490           p_worker_id             =  prg_delta.WORKER_ID         (+) and
37491           prg.STRUCT_TYPE         =  prg_delta.STRUCT_TYPE       (+) and
37492           prg.SUP_PROJECT_ID      =  prg_delta.SUP_PROJECT_ID    (+) and
37493           prg.SUP_LEVEL           =  prg_delta.SUP_LEVEL         (+) and
37494           prg.SUP_ID              =  prg_delta.SUP_ID            (+) and
37495           prg.SUB_LEVEL           =  prg_delta.SUB_LEVEL         (+) and
37496           prg.SUB_ID              =  prg_delta.SUB_ID            (+) and
37497           prg.RELATIONSHIP_TYPE   =  prg_delta.RELATIONSHIP_TYPE (+) and
37498           1                       =  prg_delta.SIGN              (+) and
37499           (prg_delta.SUP_PROJECT_ID is not null or
37500            (prg_delta.SUP_PROJECT_ID is null and
37501             pjp1.RECORD_TYPE = 'P'))                                 and
37502           pjp1.WORKER_ID          =  p_worker_id                     and
37503           pjp1.PRG_LEVEL          in (0, prg.SUB_LEVEL)              and
37504           pjp1.WBS_ROLLUP_FLAG    in ('Y', 'N')                      and
37505           pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                      and
37506           pjp1.PROJECT_ID         =  prj_emt.PROJECT_ID              and
37507           pjp1.PROJECT_ELEMENT_ID =  prg.SUB_EMT_ID                  and
37508           prg.STRUCT_VERSION_ID   is null                            and
37509           prj_emt.OBJECT_TYPE     =  'PA_STRUCTURES'                 and
37510           prj_emt.PROJ_ELEMENT_ID =  prg.SUB_EMT_ID                  and
37511           wbs_hdr.PROJECT_ID      =  prj_emt.PROJECT_ID              and
37512           wbs_hdr.WBS_VERSION_ID  =  prg.SUB_ID                      and
37513           wbs_hdr.PROJECT_ID      =  pjp1.PROJECT_ID                 and
37514           wbs_hdr.PLAN_VERSION_ID =  -1
37515         )                          pjp,
37516         PJI_PJP_PROJ_BATCH_MAP     map,
37517         PA_PROJ_WORKPLAN_ATTR      sup_wpa,
37518         PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
37519         PA_XBS_DENORM              wbs,
37520         (
37521           select 1     WBS_SUP_LEVEL,
37522                  'PRJ' INVERT_ID
37523           from   DUAL
37524           union all
37525           select 1     WBS_SUP_LEVEL,
37526                  'WBS' INVERT_ID
37527           from   DUAL
37528         ) top_slice
37529       where
37530         map.WORKER_ID         =  p_worker_id                        and
37531         map.PROJECT_ID        = pjp.SUP_PROJECT_ID                  and
37532         pjp.SUP_EMT_ID        = sup_wpa.PROJ_ELEMENT_ID             and
37533         pjp.SUP_PROJECT_ID    = sup_fin_ver.PROJECT_ID          (+) and
37534         pjp.SUP_ID            = sup_fin_ver.ELEMENT_VERSION_ID  (+) and
37535         'STRUCTURE_WORKING'   = sup_fin_ver.STATUS_CODE         (+) and
37536         (sup_fin_ver.PROJECT_ID is not null or
37537          sup_wpa.WP_ENABLE_VERSION_FLAG = 'N')                      and
37538         wbs.STRUCT_TYPE       =  'WBS'                              and
37539         wbs.SUP_PROJECT_ID    =  map.PROJECT_ID                     and
37540         wbs.SUP_PROJECT_ID    =  pjp.SUP_PROJECT_ID                 and
37541         wbs.STRUCT_VERSION_ID =  pjp.SUP_ID                         and
37542         wbs.SUB_EMT_ID        =  pjp.SUB_ROLLUP_ID                  and
37543         wbs.SUP_LEVEL         =  top_slice.WBS_SUP_LEVEL        (+)
37544       group by
37545         pjp.SUP_PROJECT_ID,
37546         map.PROJECT_ORG_ID,
37547         map.PROJECT_ORGANIZATION_ID,
37548         decode(top_slice.INVERT_ID,
37549                'PRJ', pjp.SUP_EMT_ID,
37550                wbs.SUP_EMT_ID),
37551         pjp.TIME_ID,
37552         pjp.PERIOD_TYPE_ID,
37553         pjp.CALENDAR_TYPE,
37554         decode(top_slice.INVERT_ID,
37555                'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
37556                                   wbs.SUP_EMT_ID,
37557                                   'N', 'Y')),
37558         pjp.CURR_RECORD_TYPE_ID,
37559         pjp.CURRENCY_CODE;
37560 
37561     elsif (p_worker_id =2) then
37562       -- Query for Partition 2
37563 
37564       insert /*+ parallel(PJI_AC_AGGR_PJP1) */
37565                  into PJI_AC_AGGR_PJP1 partition(P2)
37566       (
37567         WORKER_ID,
37568         RECORD_TYPE,
37569         PRG_LEVEL,
37570         PROJECT_ID,
37571         PROJECT_ORG_ID,
37572         PROJECT_ORGANIZATION_ID,
37573         PROJECT_ELEMENT_ID,
37574         TIME_ID,
37575         PERIOD_TYPE_ID,
37576         CALENDAR_TYPE,
37577         WBS_ROLLUP_FLAG,
37578         PRG_ROLLUP_FLAG,
37579         CURR_RECORD_TYPE_ID,
37580         CURRENCY_CODE,
37581         REVENUE,
37582         INITIAL_FUNDING_AMOUNT,
37583         INITIAL_FUNDING_COUNT,
37584         ADDITIONAL_FUNDING_AMOUNT,
37585         ADDITIONAL_FUNDING_COUNT,
37586         CANCELLED_FUNDING_AMOUNT,
37587         CANCELLED_FUNDING_COUNT,
37588         FUNDING_ADJUSTMENT_AMOUNT,
37589         FUNDING_ADJUSTMENT_COUNT,
37590         REVENUE_WRITEOFF,
37591         AR_INVOICE_AMOUNT,
37592         AR_INVOICE_COUNT,
37593         AR_CASH_APPLIED_AMOUNT,
37594         AR_INVOICE_WRITE_OFF_AMOUNT,
37595         AR_INVOICE_WRITEOFF_COUNT,
37596         AR_CREDIT_MEMO_AMOUNT,
37597         AR_CREDIT_MEMO_COUNT,
37598         UNBILLED_RECEIVABLES,
37599         UNEARNED_REVENUE,
37600         AR_UNAPPR_INVOICE_AMOUNT,
37601         AR_UNAPPR_INVOICE_COUNT,
37602         AR_APPR_INVOICE_AMOUNT,
37603         AR_APPR_INVOICE_COUNT,
37604         AR_AMOUNT_DUE,
37605         AR_COUNT_DUE,
37606         AR_AMOUNT_OVERDUE,
37607         AR_COUNT_OVERDUE,
37608         CUSTOM1,
37609         CUSTOM2,
37610         CUSTOM3,
37611         CUSTOM4,
37612         CUSTOM5,
37613         CUSTOM6,
37614         CUSTOM7,
37615         CUSTOM8,
37616         CUSTOM9,
37617         CUSTOM10,
37618         CUSTOM11,
37619         CUSTOM12,
37620         CUSTOM13,
37621         CUSTOM14,
37622         CUSTOM15
37623       )
37624       select /*+ no_merge(pjp) */
37625         p_worker_id                                WORKER_ID,
37626         'P'                                        RECORD_TYPE,
37627         l_level                                    PRG_LEVEL,
37628         pjp.SUP_PROJECT_ID                         PROJECT_ID,
37629         map.PROJECT_ORG_ID,
37630         map.PROJECT_ORGANIZATION_ID,
37631         decode(top_slice.INVERT_ID,
37632                'PRJ', pjp.SUP_EMT_ID,
37633                wbs.SUP_EMT_ID)                     PROJECT_ELEMENT_ID,
37634         pjp.TIME_ID,
37635         pjp.PERIOD_TYPE_ID,
37636         pjp.CALENDAR_TYPE,
37637         decode(top_slice.INVERT_ID,
37638                'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
37639                                   wbs.SUP_EMT_ID,
37640                                   'N', 'Y'))       WBS_ROLLUP_FLAG,
37641         'Y'                                        PRG_ROLLUP_FLAG,
37642         pjp.CURR_RECORD_TYPE_ID,
37643         pjp.CURRENCY_CODE,
37644         sum(pjp.REVENUE)                           REVENUE,
37645         sum(pjp.INITIAL_FUNDING_AMOUNT)            INITIAL_FUNDING_AMOUNT,
37646         sum(pjp.INITIAL_FUNDING_COUNT)             INITIAL_FUNDING_COUNT,
37647         sum(pjp.ADDITIONAL_FUNDING_AMOUNT)         ADDITIONAL_FUNDING_AMOUNT,
37648         sum(pjp.ADDITIONAL_FUNDING_COUNT)          ADDITIONAL_FUNDING_COUNT,
37649         sum(pjp.CANCELLED_FUNDING_AMOUNT)          CANCELLED_FUNDING_AMOUNT,
37650         sum(pjp.CANCELLED_FUNDING_COUNT)           CANCELLED_FUNDING_COUNT,
37651         sum(pjp.FUNDING_ADJUSTMENT_AMOUNT)         FUNDING_ADJUSTMENT_AMOUNT,
37652         sum(pjp.FUNDING_ADJUSTMENT_COUNT)          FUNDING_ADJUSTMENT_COUNT,
37653         sum(pjp.REVENUE_WRITEOFF)                  REVENUE_WRITEOFF,
37654         sum(pjp.AR_INVOICE_AMOUNT)                 AR_INVOICE_AMOUNT,
37655         sum(pjp.AR_INVOICE_COUNT)                  AR_INVOICE_COUNT,
37656         sum(pjp.AR_CASH_APPLIED_AMOUNT)            AR_CASH_APPLIED_AMOUNT,
37657         sum(pjp.AR_INVOICE_WRITE_OFF_AMOUNT)       AR_INVOICE_WRITE_OFF_AMOUNT,
37658         sum(pjp.AR_INVOICE_WRITEOFF_COUNT)         AR_INVOICE_WRITEOFF_COUNT,
37659         sum(pjp.AR_CREDIT_MEMO_AMOUNT)             AR_CREDIT_MEMO_AMOUNT,
37660         sum(pjp.AR_CREDIT_MEMO_COUNT)              AR_CREDIT_MEMO_COUNT,
37661         sum(pjp.UNBILLED_RECEIVABLES)              UNBILLED_RECEIVABLES,
37662         sum(pjp.UNEARNED_REVENUE)                  UNEARNED_REVENUE,
37663         sum(pjp.AR_UNAPPR_INVOICE_AMOUNT)          AR_UNAPPR_INVOICE_AMOUNT,
37664         sum(pjp.AR_UNAPPR_INVOICE_COUNT)           AR_UNAPPR_INVOICE_COUNT,
37665         sum(pjp.AR_APPR_INVOICE_AMOUNT)            AR_APPR_INVOICE_AMOUNT,
37666         sum(pjp.AR_APPR_INVOICE_COUNT)             AR_APPR_INVOICE_COUNT,
37667         sum(pjp.AR_AMOUNT_DUE)                     AR_AMOUNT_DUE,
37668         sum(pjp.AR_COUNT_DUE)                      AR_COUNT_DUE,
37669         sum(pjp.AR_AMOUNT_OVERDUE)                 AR_AMOUNT_OVERDUE,
37670         sum(pjp.AR_COUNT_OVERDUE)                  AR_COUNT_OVERDUE,
37671         sum(pjp.CUSTOM1)                           CUSTOM1,
37672         sum(pjp.CUSTOM2)                           CUSTOM2,
37673         sum(pjp.CUSTOM3)                           CUSTOM3,
37674         sum(pjp.CUSTOM4)                           CUSTOM4,
37675         sum(pjp.CUSTOM5)                           CUSTOM5,
37676         sum(pjp.CUSTOM6)                           CUSTOM6,
37677         sum(pjp.CUSTOM7)                           CUSTOM7,
37678         sum(pjp.CUSTOM8)                           CUSTOM8,
37679         sum(pjp.CUSTOM9)                           CUSTOM9,
37680         sum(pjp.CUSTOM10)                          CUSTOM10,
37681         sum(pjp.CUSTOM11)                          CUSTOM11,
37682         sum(pjp.CUSTOM12)                          CUSTOM12,
37683         sum(pjp.CUSTOM13)                          CUSTOM13,
37684         sum(pjp.CUSTOM14)                          CUSTOM14,
37685         sum(pjp.CUSTOM15)                          CUSTOM15
37686       from
37687         (
37688         select /*+ ordered index(acr PJI_AC_XBS_ACCUM_F_N1) */
37689                -- get structure level amounts from Reporting Lines
37690           prg.SUP_PROJECT_ID,
37691           prg.SUP_ID,
37692           prg.SUP_EMT_ID,
37693           prg.SUB_EMT_ID,
37694           prg.SUB_ROLLUP_ID,
37695           'ACR'                                    LINE_SOURCE,
37696           prg.SUB_ID,
37697           acr.TIME_ID,
37698           acr.PERIOD_TYPE_ID,
37699           acr.CALENDAR_TYPE,
37700           acr.CURR_RECORD_TYPE_ID,
37701           acr.CURRENCY_CODE,
37702           prg.SIGN * acr.REVENUE                   REVENUE,
37703           prg.SIGN * acr.INITIAL_FUNDING_AMOUNT    INITIAL_FUNDING_AMOUNT,
37704           prg.SIGN * acr.INITIAL_FUNDING_COUNT     INITIAL_FUNDING_COUNT,
37705           prg.SIGN * acr.ADDITIONAL_FUNDING_AMOUNT ADDITIONAL_FUNDING_AMOUNT,
37706           prg.SIGN * acr.ADDITIONAL_FUNDING_COUNT  ADDITIONAL_FUNDING_COUNT,
37707           prg.SIGN * acr.CANCELLED_FUNDING_AMOUNT  CANCELLED_FUNDING_AMOUNT,
37708           prg.SIGN * acr.CANCELLED_FUNDING_COUNT   CANCELLED_FUNDING_COUNT,
37709           prg.SIGN * acr.FUNDING_ADJUSTMENT_AMOUNT FUNDING_ADJUSTMENT_AMOUNT,
37710           prg.SIGN * acr.FUNDING_ADJUSTMENT_COUNT  FUNDING_ADJUSTMENT_COUNT,
37711           prg.SIGN * acr.REVENUE_WRITEOFF          REVENUE_WRITEOFF,
37712           prg.SIGN * acr.AR_INVOICE_AMOUNT         AR_INVOICE_AMOUNT,
37713           prg.SIGN * acr.AR_INVOICE_COUNT          AR_INVOICE_COUNT,
37714           prg.SIGN * acr.AR_CASH_APPLIED_AMOUNT    AR_CASH_APPLIED_AMOUNT,
37715           prg.SIGN *
37716             acr.AR_INVOICE_WRITE_OFF_AMOUNT        AR_INVOICE_WRITE_OFF_AMOUNT,
37717           prg.SIGN * acr.AR_INVOICE_WRITEOFF_COUNT AR_INVOICE_WRITEOFF_COUNT,
37718           prg.SIGN * acr.AR_CREDIT_MEMO_AMOUNT     AR_CREDIT_MEMO_AMOUNT,
37719           prg.SIGN * acr.AR_CREDIT_MEMO_COUNT      AR_CREDIT_MEMO_COUNT,
37720           prg.SIGN * acr.UNBILLED_RECEIVABLES      UNBILLED_RECEIVABLES,
37721           prg.SIGN * acr.UNEARNED_REVENUE          UNEARNED_REVENUE,
37722           prg.SIGN * acr.AR_UNAPPR_INVOICE_AMOUNT  AR_UNAPPR_INVOICE_AMOUNT,
37723           prg.SIGN * acr.AR_UNAPPR_INVOICE_COUNT   AR_UNAPPR_INVOICE_COUNT,
37724           prg.SIGN * acr.AR_APPR_INVOICE_AMOUNT    AR_APPR_INVOICE_AMOUNT,
37725           prg.SIGN * acr.AR_APPR_INVOICE_COUNT     AR_APPR_INVOICE_COUNT,
37726           prg.SIGN * acr.AR_AMOUNT_DUE             AR_AMOUNT_DUE,
37727           prg.SIGN * acr.AR_COUNT_DUE              AR_COUNT_DUE,
37728           prg.SIGN * acr.AR_AMOUNT_OVERDUE         AR_AMOUNT_OVERDUE,
37729           prg.SIGN * acr.AR_COUNT_OVERDUE          AR_COUNT_OVERDUE,
37730           prg.SIGN * acr.CUSTOM1                   CUSTOM1,
37731           prg.SIGN * acr.CUSTOM2                   CUSTOM2,
37732           prg.SIGN * acr.CUSTOM3                   CUSTOM3,
37733           prg.SIGN * acr.CUSTOM4                   CUSTOM4,
37734           prg.SIGN * acr.CUSTOM5                   CUSTOM5,
37735           prg.SIGN * acr.CUSTOM6                   CUSTOM6,
37736           prg.SIGN * acr.CUSTOM7                   CUSTOM7,
37737           prg.SIGN * acr.CUSTOM8                   CUSTOM8,
37738           prg.SIGN * acr.CUSTOM9                   CUSTOM9,
37739           prg.SIGN * acr.CUSTOM10                  CUSTOM10,
37740           prg.SIGN * acr.CUSTOM11                  CUSTOM11,
37741           prg.SIGN * acr.CUSTOM12                  CUSTOM12,
37742           prg.SIGN * acr.CUSTOM13                  CUSTOM13,
37743           prg.SIGN * acr.CUSTOM14                  CUSTOM14,
37744           prg.SIGN * acr.CUSTOM15                  CUSTOM15
37745         from
37746           PJI_XBS_DENORM_DELTA prg,
37747           PA_PROJ_ELEMENTS     prj_emt,
37748           PJI_PJP_WBS_HEADER   wbs_hdr,
37749           PJI_AC_XBS_ACCUM_F   acr
37750         where
37751           prg.WORKER_ID           =  p_worker_id        and
37752           prg.STRUCT_TYPE         =  'PRG'              and
37753           prg.RELATIONSHIP_TYPE   =  'LF'               and
37754           prg.SUP_LEVEL           =  l_level            and
37755           nvl(prg.SUB_ROLLUP_ID,
37756               prg.SUP_EMT_ID)     <> prg.SUP_EMT_ID     and
37757           acr.WBS_ROLLUP_FLAG     in ('Y', 'N')         and
37758           acr.PRG_ROLLUP_FLAG     in ('Y', 'N')         and
37759           acr.PROJECT_ID          =  prj_emt.PROJECT_ID and
37760           acr.PROJECT_ELEMENT_ID  =  prg.SUB_EMT_ID     and
37761           prj_emt.PROJ_ELEMENT_ID =  prg.SUB_EMT_ID     and
37762           wbs_hdr.PROJECT_ID      =  prj_emt.PROJECT_ID and
37763           wbs_hdr.PLAN_VERSION_ID =  -1
37764         union all
37765         select /*+ ordered parallel(pjp1) */        -- changed for bug 5927368
37766                -- get program rollup amounts
37767           prg.SUP_PROJECT_ID,
37768           prg.SUP_ID,
37769           prg.SUP_EMT_ID,
37770           prg.SUB_EMT_ID,
37771           prg.SUB_ROLLUP_ID,
37772           'PJP1'                                   LINE_SOURCE,
37773           prg.SUB_ID,
37774           pjp1.TIME_ID,
37775           pjp1.PERIOD_TYPE_ID,
37776           pjp1.CALENDAR_TYPE,
37777           pjp1.CURR_RECORD_TYPE_ID,
37778           pjp1.CURRENCY_CODE,
37779           pjp1.REVENUE,
37780           pjp1.INITIAL_FUNDING_AMOUNT,
37781           pjp1.INITIAL_FUNDING_COUNT,
37782           pjp1.ADDITIONAL_FUNDING_AMOUNT,
37783           pjp1.ADDITIONAL_FUNDING_COUNT,
37784           pjp1.CANCELLED_FUNDING_AMOUNT,
37785           pjp1.CANCELLED_FUNDING_COUNT,
37786           pjp1.FUNDING_ADJUSTMENT_AMOUNT,
37787           pjp1.FUNDING_ADJUSTMENT_COUNT,
37788           pjp1.REVENUE_WRITEOFF,
37789           pjp1.AR_INVOICE_AMOUNT,
37790           pjp1.AR_INVOICE_COUNT,
37791           pjp1.AR_CASH_APPLIED_AMOUNT,
37792           pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
37793           pjp1.AR_INVOICE_WRITEOFF_COUNT,
37794           pjp1.AR_CREDIT_MEMO_AMOUNT,
37795           pjp1.AR_CREDIT_MEMO_COUNT,
37796           pjp1.UNBILLED_RECEIVABLES,
37797           pjp1.UNEARNED_REVENUE,
37798           pjp1.AR_UNAPPR_INVOICE_AMOUNT,
37799           pjp1.AR_UNAPPR_INVOICE_COUNT,
37800           pjp1.AR_APPR_INVOICE_AMOUNT,
37801           pjp1.AR_APPR_INVOICE_COUNT,
37802           pjp1.AR_AMOUNT_DUE,
37803           pjp1.AR_COUNT_DUE,
37804           pjp1.AR_AMOUNT_OVERDUE,
37805           pjp1.AR_COUNT_OVERDUE,
37806           pjp1.CUSTOM1,
37807           pjp1.CUSTOM2,
37808           pjp1.CUSTOM3,
37809           pjp1.CUSTOM4,
37810           pjp1.CUSTOM5,
37811           pjp1.CUSTOM6,
37812           pjp1.CUSTOM7,
37813           pjp1.CUSTOM8,
37814           pjp1.CUSTOM9,
37815           pjp1.CUSTOM10,
37816           pjp1.CUSTOM11,
37817           pjp1.CUSTOM12,
37818           pjp1.CUSTOM13,
37819           pjp1.CUSTOM14,
37820           pjp1.CUSTOM15
37821         from
37822           PJI_AC_AGGR_PJP1     pjp1,
37823           PJI_PJP_WBS_HEADER   wbs_hdr,
37824           PA_PROJ_ELEMENTS     prj_emt,
37825           PA_XBS_DENORM        prg,
37826           PJI_XBS_DENORM_DELTA prg_delta
37827         where
37828           prg.STRUCT_TYPE         =  'PRG'                           and
37829           prg.SUP_LEVEL           =  l_level                         and
37830           nvl(prg.SUB_ROLLUP_ID,
37831               prg.SUP_EMT_ID)     <> prg.SUP_EMT_ID                  and
37832           prg.RELATIONSHIP_TYPE   =  'LF'                            and
37833           p_worker_id             =  prg_delta.WORKER_ID         (+) and
37834           prg.STRUCT_TYPE         =  prg_delta.STRUCT_TYPE       (+) and
37835           prg.SUP_PROJECT_ID      =  prg_delta.SUP_PROJECT_ID    (+) and
37836           prg.SUP_LEVEL           =  prg_delta.SUP_LEVEL         (+) and
37837           prg.SUP_ID              =  prg_delta.SUP_ID            (+) and
37838           prg.SUB_LEVEL           =  prg_delta.SUB_LEVEL         (+) and
37839           prg.SUB_ID              =  prg_delta.SUB_ID            (+) and
37840           prg.RELATIONSHIP_TYPE   =  prg_delta.RELATIONSHIP_TYPE (+) and
37841           1                       =  prg_delta.SIGN              (+) and
37842           (prg_delta.SUP_PROJECT_ID is not null or
37843            (prg_delta.SUP_PROJECT_ID is null and
37844             pjp1.RECORD_TYPE = 'P'))                                 and
37845           pjp1.WORKER_ID          =  p_worker_id                     and
37846           pjp1.PRG_LEVEL          in (0, prg.SUB_LEVEL)              and
37847           pjp1.WBS_ROLLUP_FLAG    in ('Y', 'N')                      and
37848           pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                      and
37849           pjp1.PROJECT_ID         =  prj_emt.PROJECT_ID              and
37850           pjp1.PROJECT_ELEMENT_ID =  prg.SUB_EMT_ID                  and
37851           prg.STRUCT_VERSION_ID   is null                            and
37852           prj_emt.OBJECT_TYPE     =  'PA_STRUCTURES'                 and
37853           prj_emt.PROJ_ELEMENT_ID =  prg.SUB_EMT_ID                  and
37854           wbs_hdr.PROJECT_ID      =  prj_emt.PROJECT_ID              and
37855           wbs_hdr.WBS_VERSION_ID  =  prg.SUB_ID                      and
37856           wbs_hdr.PROJECT_ID      =  pjp1.PROJECT_ID                 and
37857           wbs_hdr.PLAN_VERSION_ID =  -1
37858         )                          pjp,
37859         PJI_PJP_PROJ_BATCH_MAP     map,
37860         PA_PROJ_WORKPLAN_ATTR      sup_wpa,
37861         PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
37862         PA_XBS_DENORM              wbs,
37863         (
37864           select 1     WBS_SUP_LEVEL,
37865                  'PRJ' INVERT_ID
37866           from   DUAL
37867           union all
37868           select 1     WBS_SUP_LEVEL,
37869                  'WBS' INVERT_ID
37870           from   DUAL
37871         ) top_slice
37872       where
37873         map.WORKER_ID         =  p_worker_id                        and
37874         map.PROJECT_ID        = pjp.SUP_PROJECT_ID                  and
37875         pjp.SUP_EMT_ID        = sup_wpa.PROJ_ELEMENT_ID             and
37876         pjp.SUP_PROJECT_ID    = sup_fin_ver.PROJECT_ID          (+) and
37877         pjp.SUP_ID            = sup_fin_ver.ELEMENT_VERSION_ID  (+) and
37878         'STRUCTURE_WORKING'   = sup_fin_ver.STATUS_CODE         (+) and
37879         (sup_fin_ver.PROJECT_ID is not null or
37880          sup_wpa.WP_ENABLE_VERSION_FLAG = 'N')                      and
37881         wbs.STRUCT_TYPE       =  'WBS'                              and
37882         wbs.SUP_PROJECT_ID    =  map.PROJECT_ID                     and
37883         wbs.SUP_PROJECT_ID    =  pjp.SUP_PROJECT_ID                 and
37884         wbs.STRUCT_VERSION_ID =  pjp.SUP_ID                         and
37885         wbs.SUB_EMT_ID        =  pjp.SUB_ROLLUP_ID                  and
37886         wbs.SUP_LEVEL         =  top_slice.WBS_SUP_LEVEL        (+)
37887       group by
37888         pjp.SUP_PROJECT_ID,
37889         map.PROJECT_ORG_ID,
37890         map.PROJECT_ORGANIZATION_ID,
37891         decode(top_slice.INVERT_ID,
37892                'PRJ', pjp.SUP_EMT_ID,
37893                wbs.SUP_EMT_ID),
37894         pjp.TIME_ID,
37895         pjp.PERIOD_TYPE_ID,
37896         pjp.CALENDAR_TYPE,
37897         decode(top_slice.INVERT_ID,
37898                'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
37899                                   wbs.SUP_EMT_ID,
37900                                   'N', 'Y')),
37901         pjp.CURR_RECORD_TYPE_ID,
37902         pjp.CURRENCY_CODE;
37903     elsif (p_worker_id =3) then
37904       -- Query for Partition 3
37905 
37906       insert /*+ parallel(PJI_AC_AGGR_PJP1) */
37907                  into PJI_AC_AGGR_PJP1 partition(P3)
37908       (
37909         WORKER_ID,
37910         RECORD_TYPE,
37911         PRG_LEVEL,
37912         PROJECT_ID,
37913         PROJECT_ORG_ID,
37914         PROJECT_ORGANIZATION_ID,
37915         PROJECT_ELEMENT_ID,
37916         TIME_ID,
37917         PERIOD_TYPE_ID,
37918         CALENDAR_TYPE,
37919         WBS_ROLLUP_FLAG,
37920         PRG_ROLLUP_FLAG,
37921         CURR_RECORD_TYPE_ID,
37922         CURRENCY_CODE,
37923         REVENUE,
37924         INITIAL_FUNDING_AMOUNT,
37925         INITIAL_FUNDING_COUNT,
37926         ADDITIONAL_FUNDING_AMOUNT,
37927         ADDITIONAL_FUNDING_COUNT,
37928         CANCELLED_FUNDING_AMOUNT,
37929         CANCELLED_FUNDING_COUNT,
37930         FUNDING_ADJUSTMENT_AMOUNT,
37931         FUNDING_ADJUSTMENT_COUNT,
37932         REVENUE_WRITEOFF,
37933         AR_INVOICE_AMOUNT,
37934         AR_INVOICE_COUNT,
37935         AR_CASH_APPLIED_AMOUNT,
37936         AR_INVOICE_WRITE_OFF_AMOUNT,
37937         AR_INVOICE_WRITEOFF_COUNT,
37938         AR_CREDIT_MEMO_AMOUNT,
37939         AR_CREDIT_MEMO_COUNT,
37940         UNBILLED_RECEIVABLES,
37941         UNEARNED_REVENUE,
37942         AR_UNAPPR_INVOICE_AMOUNT,
37943         AR_UNAPPR_INVOICE_COUNT,
37944         AR_APPR_INVOICE_AMOUNT,
37945         AR_APPR_INVOICE_COUNT,
37946         AR_AMOUNT_DUE,
37947         AR_COUNT_DUE,
37948         AR_AMOUNT_OVERDUE,
37949         AR_COUNT_OVERDUE,
37950         CUSTOM1,
37951         CUSTOM2,
37952         CUSTOM3,
37953         CUSTOM4,
37954         CUSTOM5,
37955         CUSTOM6,
37956         CUSTOM7,
37957         CUSTOM8,
37958         CUSTOM9,
37959         CUSTOM10,
37960         CUSTOM11,
37961         CUSTOM12,
37962         CUSTOM13,
37963         CUSTOM14,
37964         CUSTOM15
37965       )
37966       select /*+ no_merge(pjp) */
37967         p_worker_id                                WORKER_ID,
37968         'P'                                        RECORD_TYPE,
37969         l_level                                    PRG_LEVEL,
37970         pjp.SUP_PROJECT_ID                         PROJECT_ID,
37971         map.PROJECT_ORG_ID,
37972         map.PROJECT_ORGANIZATION_ID,
37973         decode(top_slice.INVERT_ID,
37974                'PRJ', pjp.SUP_EMT_ID,
37975                wbs.SUP_EMT_ID)                     PROJECT_ELEMENT_ID,
37976         pjp.TIME_ID,
37977         pjp.PERIOD_TYPE_ID,
37978         pjp.CALENDAR_TYPE,
37979         decode(top_slice.INVERT_ID,
37980                'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
37981                                   wbs.SUP_EMT_ID,
37982                                   'N', 'Y'))       WBS_ROLLUP_FLAG,
37983         'Y'                                        PRG_ROLLUP_FLAG,
37984         pjp.CURR_RECORD_TYPE_ID,
37985         pjp.CURRENCY_CODE,
37986         sum(pjp.REVENUE)                           REVENUE,
37987         sum(pjp.INITIAL_FUNDING_AMOUNT)            INITIAL_FUNDING_AMOUNT,
37988         sum(pjp.INITIAL_FUNDING_COUNT)             INITIAL_FUNDING_COUNT,
37989         sum(pjp.ADDITIONAL_FUNDING_AMOUNT)         ADDITIONAL_FUNDING_AMOUNT,
37990         sum(pjp.ADDITIONAL_FUNDING_COUNT)          ADDITIONAL_FUNDING_COUNT,
37991         sum(pjp.CANCELLED_FUNDING_AMOUNT)          CANCELLED_FUNDING_AMOUNT,
37992         sum(pjp.CANCELLED_FUNDING_COUNT)           CANCELLED_FUNDING_COUNT,
37993         sum(pjp.FUNDING_ADJUSTMENT_AMOUNT)         FUNDING_ADJUSTMENT_AMOUNT,
37994         sum(pjp.FUNDING_ADJUSTMENT_COUNT)          FUNDING_ADJUSTMENT_COUNT,
37995         sum(pjp.REVENUE_WRITEOFF)                  REVENUE_WRITEOFF,
37996         sum(pjp.AR_INVOICE_AMOUNT)                 AR_INVOICE_AMOUNT,
37997         sum(pjp.AR_INVOICE_COUNT)                  AR_INVOICE_COUNT,
37998         sum(pjp.AR_CASH_APPLIED_AMOUNT)            AR_CASH_APPLIED_AMOUNT,
37999         sum(pjp.AR_INVOICE_WRITE_OFF_AMOUNT)       AR_INVOICE_WRITE_OFF_AMOUNT,
38000         sum(pjp.AR_INVOICE_WRITEOFF_COUNT)         AR_INVOICE_WRITEOFF_COUNT,
38001         sum(pjp.AR_CREDIT_MEMO_AMOUNT)             AR_CREDIT_MEMO_AMOUNT,
38002         sum(pjp.AR_CREDIT_MEMO_COUNT)              AR_CREDIT_MEMO_COUNT,
38003         sum(pjp.UNBILLED_RECEIVABLES)              UNBILLED_RECEIVABLES,
38004         sum(pjp.UNEARNED_REVENUE)                  UNEARNED_REVENUE,
38005         sum(pjp.AR_UNAPPR_INVOICE_AMOUNT)          AR_UNAPPR_INVOICE_AMOUNT,
38006         sum(pjp.AR_UNAPPR_INVOICE_COUNT)           AR_UNAPPR_INVOICE_COUNT,
38007         sum(pjp.AR_APPR_INVOICE_AMOUNT)            AR_APPR_INVOICE_AMOUNT,
38008         sum(pjp.AR_APPR_INVOICE_COUNT)             AR_APPR_INVOICE_COUNT,
38009         sum(pjp.AR_AMOUNT_DUE)                     AR_AMOUNT_DUE,
38010         sum(pjp.AR_COUNT_DUE)                      AR_COUNT_DUE,
38011         sum(pjp.AR_AMOUNT_OVERDUE)                 AR_AMOUNT_OVERDUE,
38012         sum(pjp.AR_COUNT_OVERDUE)                  AR_COUNT_OVERDUE,
38013         sum(pjp.CUSTOM1)                           CUSTOM1,
38014         sum(pjp.CUSTOM2)                           CUSTOM2,
38015         sum(pjp.CUSTOM3)                           CUSTOM3,
38016         sum(pjp.CUSTOM4)                           CUSTOM4,
38017         sum(pjp.CUSTOM5)                           CUSTOM5,
38018         sum(pjp.CUSTOM6)                           CUSTOM6,
38019         sum(pjp.CUSTOM7)                           CUSTOM7,
38020         sum(pjp.CUSTOM8)                           CUSTOM8,
38021         sum(pjp.CUSTOM9)                           CUSTOM9,
38022         sum(pjp.CUSTOM10)                          CUSTOM10,
38023         sum(pjp.CUSTOM11)                          CUSTOM11,
38024         sum(pjp.CUSTOM12)                          CUSTOM12,
38025         sum(pjp.CUSTOM13)                          CUSTOM13,
38026         sum(pjp.CUSTOM14)                          CUSTOM14,
38027         sum(pjp.CUSTOM15)                          CUSTOM15
38028       from
38029         (
38030         select /*+ ordered index(acr PJI_AC_XBS_ACCUM_F_N1) */
38031                -- get structure level amounts from Reporting Lines
38032           prg.SUP_PROJECT_ID,
38033           prg.SUP_ID,
38034           prg.SUP_EMT_ID,
38035           prg.SUB_EMT_ID,
38036           prg.SUB_ROLLUP_ID,
38037           'ACR'                                    LINE_SOURCE,
38038           prg.SUB_ID,
38039           acr.TIME_ID,
38040           acr.PERIOD_TYPE_ID,
38041           acr.CALENDAR_TYPE,
38042           acr.CURR_RECORD_TYPE_ID,
38043           acr.CURRENCY_CODE,
38044           prg.SIGN * acr.REVENUE                   REVENUE,
38045           prg.SIGN * acr.INITIAL_FUNDING_AMOUNT    INITIAL_FUNDING_AMOUNT,
38046           prg.SIGN * acr.INITIAL_FUNDING_COUNT     INITIAL_FUNDING_COUNT,
38047           prg.SIGN * acr.ADDITIONAL_FUNDING_AMOUNT ADDITIONAL_FUNDING_AMOUNT,
38048           prg.SIGN * acr.ADDITIONAL_FUNDING_COUNT  ADDITIONAL_FUNDING_COUNT,
38049           prg.SIGN * acr.CANCELLED_FUNDING_AMOUNT  CANCELLED_FUNDING_AMOUNT,
38050           prg.SIGN * acr.CANCELLED_FUNDING_COUNT   CANCELLED_FUNDING_COUNT,
38051           prg.SIGN * acr.FUNDING_ADJUSTMENT_AMOUNT FUNDING_ADJUSTMENT_AMOUNT,
38052           prg.SIGN * acr.FUNDING_ADJUSTMENT_COUNT  FUNDING_ADJUSTMENT_COUNT,
38053           prg.SIGN * acr.REVENUE_WRITEOFF          REVENUE_WRITEOFF,
38054           prg.SIGN * acr.AR_INVOICE_AMOUNT         AR_INVOICE_AMOUNT,
38055           prg.SIGN * acr.AR_INVOICE_COUNT          AR_INVOICE_COUNT,
38056           prg.SIGN * acr.AR_CASH_APPLIED_AMOUNT    AR_CASH_APPLIED_AMOUNT,
38057           prg.SIGN *
38058             acr.AR_INVOICE_WRITE_OFF_AMOUNT        AR_INVOICE_WRITE_OFF_AMOUNT,
38059           prg.SIGN * acr.AR_INVOICE_WRITEOFF_COUNT AR_INVOICE_WRITEOFF_COUNT,
38060           prg.SIGN * acr.AR_CREDIT_MEMO_AMOUNT     AR_CREDIT_MEMO_AMOUNT,
38061           prg.SIGN * acr.AR_CREDIT_MEMO_COUNT      AR_CREDIT_MEMO_COUNT,
38062           prg.SIGN * acr.UNBILLED_RECEIVABLES      UNBILLED_RECEIVABLES,
38063           prg.SIGN * acr.UNEARNED_REVENUE          UNEARNED_REVENUE,
38064           prg.SIGN * acr.AR_UNAPPR_INVOICE_AMOUNT  AR_UNAPPR_INVOICE_AMOUNT,
38065           prg.SIGN * acr.AR_UNAPPR_INVOICE_COUNT   AR_UNAPPR_INVOICE_COUNT,
38066           prg.SIGN * acr.AR_APPR_INVOICE_AMOUNT    AR_APPR_INVOICE_AMOUNT,
38067           prg.SIGN * acr.AR_APPR_INVOICE_COUNT     AR_APPR_INVOICE_COUNT,
38068           prg.SIGN * acr.AR_AMOUNT_DUE             AR_AMOUNT_DUE,
38069           prg.SIGN * acr.AR_COUNT_DUE              AR_COUNT_DUE,
38070           prg.SIGN * acr.AR_AMOUNT_OVERDUE         AR_AMOUNT_OVERDUE,
38071           prg.SIGN * acr.AR_COUNT_OVERDUE          AR_COUNT_OVERDUE,
38072           prg.SIGN * acr.CUSTOM1                   CUSTOM1,
38073           prg.SIGN * acr.CUSTOM2                   CUSTOM2,
38074           prg.SIGN * acr.CUSTOM3                   CUSTOM3,
38075           prg.SIGN * acr.CUSTOM4                   CUSTOM4,
38076           prg.SIGN * acr.CUSTOM5                   CUSTOM5,
38077           prg.SIGN * acr.CUSTOM6                   CUSTOM6,
38078           prg.SIGN * acr.CUSTOM7                   CUSTOM7,
38079           prg.SIGN * acr.CUSTOM8                   CUSTOM8,
38080           prg.SIGN * acr.CUSTOM9                   CUSTOM9,
38081           prg.SIGN * acr.CUSTOM10                  CUSTOM10,
38082           prg.SIGN * acr.CUSTOM11                  CUSTOM11,
38083           prg.SIGN * acr.CUSTOM12                  CUSTOM12,
38084           prg.SIGN * acr.CUSTOM13                  CUSTOM13,
38085           prg.SIGN * acr.CUSTOM14                  CUSTOM14,
38086           prg.SIGN * acr.CUSTOM15                  CUSTOM15
38087         from
38088           PJI_XBS_DENORM_DELTA prg,
38089           PA_PROJ_ELEMENTS     prj_emt,
38090           PJI_PJP_WBS_HEADER   wbs_hdr,
38091           PJI_AC_XBS_ACCUM_F   acr
38092         where
38093           prg.WORKER_ID           =  p_worker_id        and
38094           prg.STRUCT_TYPE         =  'PRG'              and
38095           prg.RELATIONSHIP_TYPE   =  'LF'               and
38096           prg.SUP_LEVEL           =  l_level            and
38097           nvl(prg.SUB_ROLLUP_ID,
38098               prg.SUP_EMT_ID)     <> prg.SUP_EMT_ID     and
38099           acr.WBS_ROLLUP_FLAG     in ('Y', 'N')         and
38100           acr.PRG_ROLLUP_FLAG     in ('Y', 'N')         and
38101           acr.PROJECT_ID          =  prj_emt.PROJECT_ID and
38102           acr.PROJECT_ELEMENT_ID  =  prg.SUB_EMT_ID     and
38103           prj_emt.PROJ_ELEMENT_ID =  prg.SUB_EMT_ID     and
38104           wbs_hdr.PROJECT_ID      =  prj_emt.PROJECT_ID and
38105           wbs_hdr.PLAN_VERSION_ID =  -1
38106         union all
38107         select /*+ ordered parallel(pjp1) */        -- changed for bug 5927368
38108                -- get program rollup amounts
38109           prg.SUP_PROJECT_ID,
38110           prg.SUP_ID,
38111           prg.SUP_EMT_ID,
38112           prg.SUB_EMT_ID,
38113           prg.SUB_ROLLUP_ID,
38114           'PJP1'                                   LINE_SOURCE,
38115           prg.SUB_ID,
38116           pjp1.TIME_ID,
38117           pjp1.PERIOD_TYPE_ID,
38118           pjp1.CALENDAR_TYPE,
38119           pjp1.CURR_RECORD_TYPE_ID,
38120           pjp1.CURRENCY_CODE,
38121           pjp1.REVENUE,
38122           pjp1.INITIAL_FUNDING_AMOUNT,
38123           pjp1.INITIAL_FUNDING_COUNT,
38124           pjp1.ADDITIONAL_FUNDING_AMOUNT,
38125           pjp1.ADDITIONAL_FUNDING_COUNT,
38126           pjp1.CANCELLED_FUNDING_AMOUNT,
38127           pjp1.CANCELLED_FUNDING_COUNT,
38128           pjp1.FUNDING_ADJUSTMENT_AMOUNT,
38129           pjp1.FUNDING_ADJUSTMENT_COUNT,
38130           pjp1.REVENUE_WRITEOFF,
38131           pjp1.AR_INVOICE_AMOUNT,
38132           pjp1.AR_INVOICE_COUNT,
38133           pjp1.AR_CASH_APPLIED_AMOUNT,
38134           pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
38135           pjp1.AR_INVOICE_WRITEOFF_COUNT,
38136           pjp1.AR_CREDIT_MEMO_AMOUNT,
38137           pjp1.AR_CREDIT_MEMO_COUNT,
38138           pjp1.UNBILLED_RECEIVABLES,
38139           pjp1.UNEARNED_REVENUE,
38140           pjp1.AR_UNAPPR_INVOICE_AMOUNT,
38141           pjp1.AR_UNAPPR_INVOICE_COUNT,
38142           pjp1.AR_APPR_INVOICE_AMOUNT,
38143           pjp1.AR_APPR_INVOICE_COUNT,
38144           pjp1.AR_AMOUNT_DUE,
38145           pjp1.AR_COUNT_DUE,
38146           pjp1.AR_AMOUNT_OVERDUE,
38147           pjp1.AR_COUNT_OVERDUE,
38148           pjp1.CUSTOM1,
38149           pjp1.CUSTOM2,
38150           pjp1.CUSTOM3,
38151           pjp1.CUSTOM4,
38152           pjp1.CUSTOM5,
38153           pjp1.CUSTOM6,
38154           pjp1.CUSTOM7,
38155           pjp1.CUSTOM8,
38156           pjp1.CUSTOM9,
38157           pjp1.CUSTOM10,
38158           pjp1.CUSTOM11,
38159           pjp1.CUSTOM12,
38160           pjp1.CUSTOM13,
38161           pjp1.CUSTOM14,
38162           pjp1.CUSTOM15
38163         from
38164           PJI_AC_AGGR_PJP1     pjp1,
38165           PJI_PJP_WBS_HEADER   wbs_hdr,
38166           PA_PROJ_ELEMENTS     prj_emt,
38167           PA_XBS_DENORM        prg,
38168           PJI_XBS_DENORM_DELTA prg_delta
38169         where
38170           prg.STRUCT_TYPE         =  'PRG'                           and
38171           prg.SUP_LEVEL           =  l_level                         and
38172           nvl(prg.SUB_ROLLUP_ID,
38173               prg.SUP_EMT_ID)     <> prg.SUP_EMT_ID                  and
38174           prg.RELATIONSHIP_TYPE   =  'LF'                            and
38175           p_worker_id             =  prg_delta.WORKER_ID         (+) and
38176           prg.STRUCT_TYPE         =  prg_delta.STRUCT_TYPE       (+) and
38177           prg.SUP_PROJECT_ID      =  prg_delta.SUP_PROJECT_ID    (+) and
38178           prg.SUP_LEVEL           =  prg_delta.SUP_LEVEL         (+) and
38179           prg.SUP_ID              =  prg_delta.SUP_ID            (+) and
38180           prg.SUB_LEVEL           =  prg_delta.SUB_LEVEL         (+) and
38181           prg.SUB_ID              =  prg_delta.SUB_ID            (+) and
38182           prg.RELATIONSHIP_TYPE   =  prg_delta.RELATIONSHIP_TYPE (+) and
38183           1                       =  prg_delta.SIGN              (+) and
38184           (prg_delta.SUP_PROJECT_ID is not null or
38185            (prg_delta.SUP_PROJECT_ID is null and
38186             pjp1.RECORD_TYPE = 'P'))                                 and
38187           pjp1.WORKER_ID          =  p_worker_id                     and
38188           pjp1.PRG_LEVEL          in (0, prg.SUB_LEVEL)              and
38189           pjp1.WBS_ROLLUP_FLAG    in ('Y', 'N')                      and
38190           pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                      and
38191           pjp1.PROJECT_ID         =  prj_emt.PROJECT_ID              and
38192           pjp1.PROJECT_ELEMENT_ID =  prg.SUB_EMT_ID                  and
38193           prg.STRUCT_VERSION_ID   is null                            and
38194           prj_emt.OBJECT_TYPE     =  'PA_STRUCTURES'                 and
38195           prj_emt.PROJ_ELEMENT_ID =  prg.SUB_EMT_ID                  and
38196           wbs_hdr.PROJECT_ID      =  prj_emt.PROJECT_ID              and
38197           wbs_hdr.WBS_VERSION_ID  =  prg.SUB_ID                      and
38198           wbs_hdr.PROJECT_ID      =  pjp1.PROJECT_ID                 and
38199           wbs_hdr.PLAN_VERSION_ID =  -1
38200         )                          pjp,
38201         PJI_PJP_PROJ_BATCH_MAP     map,
38202         PA_PROJ_WORKPLAN_ATTR      sup_wpa,
38203         PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
38204         PA_XBS_DENORM              wbs,
38205         (
38206           select 1     WBS_SUP_LEVEL,
38207                  'PRJ' INVERT_ID
38208           from   DUAL
38209           union all
38210           select 1     WBS_SUP_LEVEL,
38211                  'WBS' INVERT_ID
38212           from   DUAL
38213         ) top_slice
38214       where
38215         map.WORKER_ID         =  p_worker_id                        and
38216         map.PROJECT_ID        = pjp.SUP_PROJECT_ID                  and
38217         pjp.SUP_EMT_ID        = sup_wpa.PROJ_ELEMENT_ID             and
38218         pjp.SUP_PROJECT_ID    = sup_fin_ver.PROJECT_ID          (+) and
38219         pjp.SUP_ID            = sup_fin_ver.ELEMENT_VERSION_ID  (+) and
38220         'STRUCTURE_WORKING'   = sup_fin_ver.STATUS_CODE         (+) and
38221         (sup_fin_ver.PROJECT_ID is not null or
38222          sup_wpa.WP_ENABLE_VERSION_FLAG = 'N')                      and
38223         wbs.STRUCT_TYPE       =  'WBS'                              and
38224         wbs.SUP_PROJECT_ID    =  map.PROJECT_ID                     and
38225         wbs.SUP_PROJECT_ID    =  pjp.SUP_PROJECT_ID                 and
38226         wbs.STRUCT_VERSION_ID =  pjp.SUP_ID                         and
38227         wbs.SUB_EMT_ID        =  pjp.SUB_ROLLUP_ID                  and
38228         wbs.SUP_LEVEL         =  top_slice.WBS_SUP_LEVEL        (+)
38229       group by
38230         pjp.SUP_PROJECT_ID,
38231         map.PROJECT_ORG_ID,
38232         map.PROJECT_ORGANIZATION_ID,
38233         decode(top_slice.INVERT_ID,
38234                'PRJ', pjp.SUP_EMT_ID,
38235                wbs.SUP_EMT_ID),
38236         pjp.TIME_ID,
38237         pjp.PERIOD_TYPE_ID,
38238         pjp.CALENDAR_TYPE,
38239         decode(top_slice.INVERT_ID,
38240                'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
38241                                   wbs.SUP_EMT_ID,
38242                                   'N', 'Y')),
38243         pjp.CURR_RECORD_TYPE_ID,
38244         pjp.CURRENCY_CODE;
38245     elsif (p_worker_id =4) then
38246       -- Query for Partition 4
38247 
38248       insert /*+ parallel(PJI_AC_AGGR_PJP1) */
38249                  into PJI_AC_AGGR_PJP1 partition(P4)
38250       (
38251         WORKER_ID,
38252         RECORD_TYPE,
38253         PRG_LEVEL,
38254         PROJECT_ID,
38255         PROJECT_ORG_ID,
38256         PROJECT_ORGANIZATION_ID,
38257         PROJECT_ELEMENT_ID,
38258         TIME_ID,
38259         PERIOD_TYPE_ID,
38260         CALENDAR_TYPE,
38261         WBS_ROLLUP_FLAG,
38262         PRG_ROLLUP_FLAG,
38263         CURR_RECORD_TYPE_ID,
38264         CURRENCY_CODE,
38265         REVENUE,
38266         INITIAL_FUNDING_AMOUNT,
38267         INITIAL_FUNDING_COUNT,
38268         ADDITIONAL_FUNDING_AMOUNT,
38269         ADDITIONAL_FUNDING_COUNT,
38270         CANCELLED_FUNDING_AMOUNT,
38271         CANCELLED_FUNDING_COUNT,
38272         FUNDING_ADJUSTMENT_AMOUNT,
38273         FUNDING_ADJUSTMENT_COUNT,
38274         REVENUE_WRITEOFF,
38275         AR_INVOICE_AMOUNT,
38276         AR_INVOICE_COUNT,
38277         AR_CASH_APPLIED_AMOUNT,
38278         AR_INVOICE_WRITE_OFF_AMOUNT,
38279         AR_INVOICE_WRITEOFF_COUNT,
38280         AR_CREDIT_MEMO_AMOUNT,
38281         AR_CREDIT_MEMO_COUNT,
38282         UNBILLED_RECEIVABLES,
38283         UNEARNED_REVENUE,
38284         AR_UNAPPR_INVOICE_AMOUNT,
38285         AR_UNAPPR_INVOICE_COUNT,
38286         AR_APPR_INVOICE_AMOUNT,
38287         AR_APPR_INVOICE_COUNT,
38288         AR_AMOUNT_DUE,
38289         AR_COUNT_DUE,
38290         AR_AMOUNT_OVERDUE,
38291         AR_COUNT_OVERDUE,
38292         CUSTOM1,
38293         CUSTOM2,
38294         CUSTOM3,
38295         CUSTOM4,
38296         CUSTOM5,
38297         CUSTOM6,
38298         CUSTOM7,
38299         CUSTOM8,
38300         CUSTOM9,
38301         CUSTOM10,
38302         CUSTOM11,
38303         CUSTOM12,
38304         CUSTOM13,
38305         CUSTOM14,
38306         CUSTOM15
38307       )
38308       select /*+ no_merge(pjp) */
38309         p_worker_id                                WORKER_ID,
38310         'P'                                        RECORD_TYPE,
38311         l_level                                    PRG_LEVEL,
38312         pjp.SUP_PROJECT_ID                         PROJECT_ID,
38313         map.PROJECT_ORG_ID,
38314         map.PROJECT_ORGANIZATION_ID,
38315         decode(top_slice.INVERT_ID,
38316                'PRJ', pjp.SUP_EMT_ID,
38317                wbs.SUP_EMT_ID)                     PROJECT_ELEMENT_ID,
38318         pjp.TIME_ID,
38319         pjp.PERIOD_TYPE_ID,
38320         pjp.CALENDAR_TYPE,
38321         decode(top_slice.INVERT_ID,
38322                'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
38323                                   wbs.SUP_EMT_ID,
38324                                   'N', 'Y'))       WBS_ROLLUP_FLAG,
38325         'Y'                                        PRG_ROLLUP_FLAG,
38326         pjp.CURR_RECORD_TYPE_ID,
38327         pjp.CURRENCY_CODE,
38328         sum(pjp.REVENUE)                           REVENUE,
38329         sum(pjp.INITIAL_FUNDING_AMOUNT)            INITIAL_FUNDING_AMOUNT,
38330         sum(pjp.INITIAL_FUNDING_COUNT)             INITIAL_FUNDING_COUNT,
38331         sum(pjp.ADDITIONAL_FUNDING_AMOUNT)         ADDITIONAL_FUNDING_AMOUNT,
38332         sum(pjp.ADDITIONAL_FUNDING_COUNT)          ADDITIONAL_FUNDING_COUNT,
38333         sum(pjp.CANCELLED_FUNDING_AMOUNT)          CANCELLED_FUNDING_AMOUNT,
38334         sum(pjp.CANCELLED_FUNDING_COUNT)           CANCELLED_FUNDING_COUNT,
38335         sum(pjp.FUNDING_ADJUSTMENT_AMOUNT)         FUNDING_ADJUSTMENT_AMOUNT,
38336         sum(pjp.FUNDING_ADJUSTMENT_COUNT)          FUNDING_ADJUSTMENT_COUNT,
38337         sum(pjp.REVENUE_WRITEOFF)                  REVENUE_WRITEOFF,
38338         sum(pjp.AR_INVOICE_AMOUNT)                 AR_INVOICE_AMOUNT,
38339         sum(pjp.AR_INVOICE_COUNT)                  AR_INVOICE_COUNT,
38340         sum(pjp.AR_CASH_APPLIED_AMOUNT)            AR_CASH_APPLIED_AMOUNT,
38341         sum(pjp.AR_INVOICE_WRITE_OFF_AMOUNT)       AR_INVOICE_WRITE_OFF_AMOUNT,
38342         sum(pjp.AR_INVOICE_WRITEOFF_COUNT)         AR_INVOICE_WRITEOFF_COUNT,
38343         sum(pjp.AR_CREDIT_MEMO_AMOUNT)             AR_CREDIT_MEMO_AMOUNT,
38344         sum(pjp.AR_CREDIT_MEMO_COUNT)              AR_CREDIT_MEMO_COUNT,
38345         sum(pjp.UNBILLED_RECEIVABLES)              UNBILLED_RECEIVABLES,
38346         sum(pjp.UNEARNED_REVENUE)                  UNEARNED_REVENUE,
38347         sum(pjp.AR_UNAPPR_INVOICE_AMOUNT)          AR_UNAPPR_INVOICE_AMOUNT,
38348         sum(pjp.AR_UNAPPR_INVOICE_COUNT)           AR_UNAPPR_INVOICE_COUNT,
38349         sum(pjp.AR_APPR_INVOICE_AMOUNT)            AR_APPR_INVOICE_AMOUNT,
38350         sum(pjp.AR_APPR_INVOICE_COUNT)             AR_APPR_INVOICE_COUNT,
38351         sum(pjp.AR_AMOUNT_DUE)                     AR_AMOUNT_DUE,
38352         sum(pjp.AR_COUNT_DUE)                      AR_COUNT_DUE,
38353         sum(pjp.AR_AMOUNT_OVERDUE)                 AR_AMOUNT_OVERDUE,
38354         sum(pjp.AR_COUNT_OVERDUE)                  AR_COUNT_OVERDUE,
38355         sum(pjp.CUSTOM1)                           CUSTOM1,
38356         sum(pjp.CUSTOM2)                           CUSTOM2,
38357         sum(pjp.CUSTOM3)                           CUSTOM3,
38358         sum(pjp.CUSTOM4)                           CUSTOM4,
38359         sum(pjp.CUSTOM5)                           CUSTOM5,
38360         sum(pjp.CUSTOM6)                           CUSTOM6,
38361         sum(pjp.CUSTOM7)                           CUSTOM7,
38362         sum(pjp.CUSTOM8)                           CUSTOM8,
38363         sum(pjp.CUSTOM9)                           CUSTOM9,
38364         sum(pjp.CUSTOM10)                          CUSTOM10,
38365         sum(pjp.CUSTOM11)                          CUSTOM11,
38366         sum(pjp.CUSTOM12)                          CUSTOM12,
38367         sum(pjp.CUSTOM13)                          CUSTOM13,
38368         sum(pjp.CUSTOM14)                          CUSTOM14,
38369         sum(pjp.CUSTOM15)                          CUSTOM15
38370       from
38371         (
38372         select /*+ ordered index(acr PJI_AC_XBS_ACCUM_F_N1) */
38373                -- get structure level amounts from Reporting Lines
38374           prg.SUP_PROJECT_ID,
38375           prg.SUP_ID,
38376           prg.SUP_EMT_ID,
38377           prg.SUB_EMT_ID,
38378           prg.SUB_ROLLUP_ID,
38379           'ACR'                                    LINE_SOURCE,
38380           prg.SUB_ID,
38381           acr.TIME_ID,
38382           acr.PERIOD_TYPE_ID,
38383           acr.CALENDAR_TYPE,
38384           acr.CURR_RECORD_TYPE_ID,
38385           acr.CURRENCY_CODE,
38386           prg.SIGN * acr.REVENUE                   REVENUE,
38387           prg.SIGN * acr.INITIAL_FUNDING_AMOUNT    INITIAL_FUNDING_AMOUNT,
38388           prg.SIGN * acr.INITIAL_FUNDING_COUNT     INITIAL_FUNDING_COUNT,
38389           prg.SIGN * acr.ADDITIONAL_FUNDING_AMOUNT ADDITIONAL_FUNDING_AMOUNT,
38390           prg.SIGN * acr.ADDITIONAL_FUNDING_COUNT  ADDITIONAL_FUNDING_COUNT,
38391           prg.SIGN * acr.CANCELLED_FUNDING_AMOUNT  CANCELLED_FUNDING_AMOUNT,
38392           prg.SIGN * acr.CANCELLED_FUNDING_COUNT   CANCELLED_FUNDING_COUNT,
38393           prg.SIGN * acr.FUNDING_ADJUSTMENT_AMOUNT FUNDING_ADJUSTMENT_AMOUNT,
38394           prg.SIGN * acr.FUNDING_ADJUSTMENT_COUNT  FUNDING_ADJUSTMENT_COUNT,
38395           prg.SIGN * acr.REVENUE_WRITEOFF          REVENUE_WRITEOFF,
38396           prg.SIGN * acr.AR_INVOICE_AMOUNT         AR_INVOICE_AMOUNT,
38397           prg.SIGN * acr.AR_INVOICE_COUNT          AR_INVOICE_COUNT,
38398           prg.SIGN * acr.AR_CASH_APPLIED_AMOUNT    AR_CASH_APPLIED_AMOUNT,
38399           prg.SIGN *
38400             acr.AR_INVOICE_WRITE_OFF_AMOUNT        AR_INVOICE_WRITE_OFF_AMOUNT,
38401           prg.SIGN * acr.AR_INVOICE_WRITEOFF_COUNT AR_INVOICE_WRITEOFF_COUNT,
38402           prg.SIGN * acr.AR_CREDIT_MEMO_AMOUNT     AR_CREDIT_MEMO_AMOUNT,
38403           prg.SIGN * acr.AR_CREDIT_MEMO_COUNT      AR_CREDIT_MEMO_COUNT,
38404           prg.SIGN * acr.UNBILLED_RECEIVABLES      UNBILLED_RECEIVABLES,
38405           prg.SIGN * acr.UNEARNED_REVENUE          UNEARNED_REVENUE,
38406           prg.SIGN * acr.AR_UNAPPR_INVOICE_AMOUNT  AR_UNAPPR_INVOICE_AMOUNT,
38407           prg.SIGN * acr.AR_UNAPPR_INVOICE_COUNT   AR_UNAPPR_INVOICE_COUNT,
38408           prg.SIGN * acr.AR_APPR_INVOICE_AMOUNT    AR_APPR_INVOICE_AMOUNT,
38409           prg.SIGN * acr.AR_APPR_INVOICE_COUNT     AR_APPR_INVOICE_COUNT,
38410           prg.SIGN * acr.AR_AMOUNT_DUE             AR_AMOUNT_DUE,
38411           prg.SIGN * acr.AR_COUNT_DUE              AR_COUNT_DUE,
38412           prg.SIGN * acr.AR_AMOUNT_OVERDUE         AR_AMOUNT_OVERDUE,
38413           prg.SIGN * acr.AR_COUNT_OVERDUE          AR_COUNT_OVERDUE,
38414           prg.SIGN * acr.CUSTOM1                   CUSTOM1,
38415           prg.SIGN * acr.CUSTOM2                   CUSTOM2,
38416           prg.SIGN * acr.CUSTOM3                   CUSTOM3,
38417           prg.SIGN * acr.CUSTOM4                   CUSTOM4,
38418           prg.SIGN * acr.CUSTOM5                   CUSTOM5,
38419           prg.SIGN * acr.CUSTOM6                   CUSTOM6,
38420           prg.SIGN * acr.CUSTOM7                   CUSTOM7,
38421           prg.SIGN * acr.CUSTOM8                   CUSTOM8,
38422           prg.SIGN * acr.CUSTOM9                   CUSTOM9,
38423           prg.SIGN * acr.CUSTOM10                  CUSTOM10,
38424           prg.SIGN * acr.CUSTOM11                  CUSTOM11,
38425           prg.SIGN * acr.CUSTOM12                  CUSTOM12,
38426           prg.SIGN * acr.CUSTOM13                  CUSTOM13,
38427           prg.SIGN * acr.CUSTOM14                  CUSTOM14,
38428           prg.SIGN * acr.CUSTOM15                  CUSTOM15
38429         from
38430           PJI_XBS_DENORM_DELTA prg,
38431           PA_PROJ_ELEMENTS     prj_emt,
38432           PJI_PJP_WBS_HEADER   wbs_hdr,
38433           PJI_AC_XBS_ACCUM_F   acr
38434         where
38435           prg.WORKER_ID           =  p_worker_id        and
38436           prg.STRUCT_TYPE         =  'PRG'              and
38437           prg.RELATIONSHIP_TYPE   =  'LF'               and
38438           prg.SUP_LEVEL           =  l_level            and
38439           nvl(prg.SUB_ROLLUP_ID,
38440               prg.SUP_EMT_ID)     <> prg.SUP_EMT_ID     and
38441           acr.WBS_ROLLUP_FLAG     in ('Y', 'N')         and
38442           acr.PRG_ROLLUP_FLAG     in ('Y', 'N')         and
38443           acr.PROJECT_ID          =  prj_emt.PROJECT_ID and
38444           acr.PROJECT_ELEMENT_ID  =  prg.SUB_EMT_ID     and
38445           prj_emt.PROJ_ELEMENT_ID =  prg.SUB_EMT_ID     and
38446           wbs_hdr.PROJECT_ID      =  prj_emt.PROJECT_ID and
38447           wbs_hdr.PLAN_VERSION_ID =  -1
38448         union all
38449         select /*+ ordered parallel(pjp1) */        -- changed for bug 5927368
38450                -- get program rollup amounts
38451           prg.SUP_PROJECT_ID,
38452           prg.SUP_ID,
38453           prg.SUP_EMT_ID,
38454           prg.SUB_EMT_ID,
38455           prg.SUB_ROLLUP_ID,
38456           'PJP1'                                   LINE_SOURCE,
38457           prg.SUB_ID,
38458           pjp1.TIME_ID,
38459           pjp1.PERIOD_TYPE_ID,
38460           pjp1.CALENDAR_TYPE,
38461           pjp1.CURR_RECORD_TYPE_ID,
38462           pjp1.CURRENCY_CODE,
38463           pjp1.REVENUE,
38464           pjp1.INITIAL_FUNDING_AMOUNT,
38465           pjp1.INITIAL_FUNDING_COUNT,
38466           pjp1.ADDITIONAL_FUNDING_AMOUNT,
38467           pjp1.ADDITIONAL_FUNDING_COUNT,
38468           pjp1.CANCELLED_FUNDING_AMOUNT,
38469           pjp1.CANCELLED_FUNDING_COUNT,
38470           pjp1.FUNDING_ADJUSTMENT_AMOUNT,
38471           pjp1.FUNDING_ADJUSTMENT_COUNT,
38472           pjp1.REVENUE_WRITEOFF,
38473           pjp1.AR_INVOICE_AMOUNT,
38474           pjp1.AR_INVOICE_COUNT,
38475           pjp1.AR_CASH_APPLIED_AMOUNT,
38476           pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
38477           pjp1.AR_INVOICE_WRITEOFF_COUNT,
38478           pjp1.AR_CREDIT_MEMO_AMOUNT,
38479           pjp1.AR_CREDIT_MEMO_COUNT,
38480           pjp1.UNBILLED_RECEIVABLES,
38481           pjp1.UNEARNED_REVENUE,
38482           pjp1.AR_UNAPPR_INVOICE_AMOUNT,
38483           pjp1.AR_UNAPPR_INVOICE_COUNT,
38484           pjp1.AR_APPR_INVOICE_AMOUNT,
38485           pjp1.AR_APPR_INVOICE_COUNT,
38486           pjp1.AR_AMOUNT_DUE,
38487           pjp1.AR_COUNT_DUE,
38488           pjp1.AR_AMOUNT_OVERDUE,
38489           pjp1.AR_COUNT_OVERDUE,
38490           pjp1.CUSTOM1,
38491           pjp1.CUSTOM2,
38492           pjp1.CUSTOM3,
38493           pjp1.CUSTOM4,
38494           pjp1.CUSTOM5,
38495           pjp1.CUSTOM6,
38496           pjp1.CUSTOM7,
38497           pjp1.CUSTOM8,
38498           pjp1.CUSTOM9,
38499           pjp1.CUSTOM10,
38500           pjp1.CUSTOM11,
38501           pjp1.CUSTOM12,
38502           pjp1.CUSTOM13,
38503           pjp1.CUSTOM14,
38504           pjp1.CUSTOM15
38505         from
38506           PJI_AC_AGGR_PJP1     pjp1,
38507           PJI_PJP_WBS_HEADER   wbs_hdr,
38508           PA_PROJ_ELEMENTS     prj_emt,
38509           PA_XBS_DENORM        prg,
38510           PJI_XBS_DENORM_DELTA prg_delta
38511         where
38512           prg.STRUCT_TYPE         =  'PRG'                           and
38513           prg.SUP_LEVEL           =  l_level                         and
38514           nvl(prg.SUB_ROLLUP_ID,
38515               prg.SUP_EMT_ID)     <> prg.SUP_EMT_ID                  and
38516           prg.RELATIONSHIP_TYPE   =  'LF'                            and
38517           p_worker_id             =  prg_delta.WORKER_ID         (+) and
38518           prg.STRUCT_TYPE         =  prg_delta.STRUCT_TYPE       (+) and
38519           prg.SUP_PROJECT_ID      =  prg_delta.SUP_PROJECT_ID    (+) and
38520           prg.SUP_LEVEL           =  prg_delta.SUP_LEVEL         (+) and
38521           prg.SUP_ID              =  prg_delta.SUP_ID            (+) and
38522           prg.SUB_LEVEL           =  prg_delta.SUB_LEVEL         (+) and
38523           prg.SUB_ID              =  prg_delta.SUB_ID            (+) and
38524           prg.RELATIONSHIP_TYPE   =  prg_delta.RELATIONSHIP_TYPE (+) and
38525           1                       =  prg_delta.SIGN              (+) and
38526           (prg_delta.SUP_PROJECT_ID is not null or
38527            (prg_delta.SUP_PROJECT_ID is null and
38528             pjp1.RECORD_TYPE = 'P'))                                 and
38529           pjp1.WORKER_ID          =  p_worker_id                     and
38530           pjp1.PRG_LEVEL          in (0, prg.SUB_LEVEL)              and
38531           pjp1.WBS_ROLLUP_FLAG    in ('Y', 'N')                      and
38532           pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                      and
38533           pjp1.PROJECT_ID         =  prj_emt.PROJECT_ID              and
38534           pjp1.PROJECT_ELEMENT_ID =  prg.SUB_EMT_ID                  and
38535           prg.STRUCT_VERSION_ID   is null                            and
38536           prj_emt.OBJECT_TYPE     =  'PA_STRUCTURES'                 and
38537           prj_emt.PROJ_ELEMENT_ID =  prg.SUB_EMT_ID                  and
38538           wbs_hdr.PROJECT_ID      =  prj_emt.PROJECT_ID              and
38539           wbs_hdr.WBS_VERSION_ID  =  prg.SUB_ID                      and
38540           wbs_hdr.PROJECT_ID      =  pjp1.PROJECT_ID                 and
38541           wbs_hdr.PLAN_VERSION_ID =  -1
38542         )                          pjp,
38543         PJI_PJP_PROJ_BATCH_MAP     map,
38544         PA_PROJ_WORKPLAN_ATTR      sup_wpa,
38545         PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
38546         PA_XBS_DENORM              wbs,
38547         (
38548           select 1     WBS_SUP_LEVEL,
38549                  'PRJ' INVERT_ID
38550           from   DUAL
38551           union all
38552           select 1     WBS_SUP_LEVEL,
38553                  'WBS' INVERT_ID
38554           from   DUAL
38555         ) top_slice
38556       where
38557         map.WORKER_ID         =  p_worker_id                        and
38558         map.PROJECT_ID        = pjp.SUP_PROJECT_ID                  and
38559         pjp.SUP_EMT_ID        = sup_wpa.PROJ_ELEMENT_ID             and
38560         pjp.SUP_PROJECT_ID    = sup_fin_ver.PROJECT_ID          (+) and
38561         pjp.SUP_ID            = sup_fin_ver.ELEMENT_VERSION_ID  (+) and
38562         'STRUCTURE_WORKING'   = sup_fin_ver.STATUS_CODE         (+) and
38563         (sup_fin_ver.PROJECT_ID is not null or
38564          sup_wpa.WP_ENABLE_VERSION_FLAG = 'N')                      and
38565         wbs.STRUCT_TYPE       =  'WBS'                              and
38566         wbs.SUP_PROJECT_ID    =  map.PROJECT_ID                     and
38567         wbs.SUP_PROJECT_ID    =  pjp.SUP_PROJECT_ID                 and
38568         wbs.STRUCT_VERSION_ID =  pjp.SUP_ID                         and
38569         wbs.SUB_EMT_ID        =  pjp.SUB_ROLLUP_ID                  and
38570         wbs.SUP_LEVEL         =  top_slice.WBS_SUP_LEVEL        (+)
38571       group by
38572         pjp.SUP_PROJECT_ID,
38573         map.PROJECT_ORG_ID,
38574         map.PROJECT_ORGANIZATION_ID,
38575         decode(top_slice.INVERT_ID,
38576                'PRJ', pjp.SUP_EMT_ID,
38577                wbs.SUP_EMT_ID),
38578         pjp.TIME_ID,
38579         pjp.PERIOD_TYPE_ID,
38580         pjp.CALENDAR_TYPE,
38581         decode(top_slice.INVERT_ID,
38582                'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
38583                                   wbs.SUP_EMT_ID,
38584                                   'N', 'Y')),
38585         pjp.CURR_RECORD_TYPE_ID,
38586         pjp.CURRENCY_CODE;
38587     elsif (p_worker_id =5) then
38588       -- Query for Partition 5
38589 
38590       insert /*+ parallel(PJI_AC_AGGR_PJP1) */
38591                  into PJI_AC_AGGR_PJP1 partition(P5)
38592       (
38593         WORKER_ID,
38594         RECORD_TYPE,
38595         PRG_LEVEL,
38596         PROJECT_ID,
38597         PROJECT_ORG_ID,
38598         PROJECT_ORGANIZATION_ID,
38599         PROJECT_ELEMENT_ID,
38600         TIME_ID,
38601         PERIOD_TYPE_ID,
38602         CALENDAR_TYPE,
38603         WBS_ROLLUP_FLAG,
38604         PRG_ROLLUP_FLAG,
38605         CURR_RECORD_TYPE_ID,
38606         CURRENCY_CODE,
38607         REVENUE,
38608         INITIAL_FUNDING_AMOUNT,
38609         INITIAL_FUNDING_COUNT,
38610         ADDITIONAL_FUNDING_AMOUNT,
38611         ADDITIONAL_FUNDING_COUNT,
38612         CANCELLED_FUNDING_AMOUNT,
38613         CANCELLED_FUNDING_COUNT,
38614         FUNDING_ADJUSTMENT_AMOUNT,
38615         FUNDING_ADJUSTMENT_COUNT,
38616         REVENUE_WRITEOFF,
38617         AR_INVOICE_AMOUNT,
38618         AR_INVOICE_COUNT,
38619         AR_CASH_APPLIED_AMOUNT,
38620         AR_INVOICE_WRITE_OFF_AMOUNT,
38621         AR_INVOICE_WRITEOFF_COUNT,
38622         AR_CREDIT_MEMO_AMOUNT,
38623         AR_CREDIT_MEMO_COUNT,
38624         UNBILLED_RECEIVABLES,
38625         UNEARNED_REVENUE,
38626         AR_UNAPPR_INVOICE_AMOUNT,
38627         AR_UNAPPR_INVOICE_COUNT,
38628         AR_APPR_INVOICE_AMOUNT,
38629         AR_APPR_INVOICE_COUNT,
38630         AR_AMOUNT_DUE,
38631         AR_COUNT_DUE,
38632         AR_AMOUNT_OVERDUE,
38633         AR_COUNT_OVERDUE,
38634         CUSTOM1,
38635         CUSTOM2,
38636         CUSTOM3,
38637         CUSTOM4,
38638         CUSTOM5,
38639         CUSTOM6,
38640         CUSTOM7,
38641         CUSTOM8,
38642         CUSTOM9,
38643         CUSTOM10,
38644         CUSTOM11,
38645         CUSTOM12,
38646         CUSTOM13,
38647         CUSTOM14,
38648         CUSTOM15
38649       )
38650       select /*+ no_merge(pjp) */
38651         p_worker_id                                WORKER_ID,
38652         'P'                                        RECORD_TYPE,
38653         l_level                                    PRG_LEVEL,
38654         pjp.SUP_PROJECT_ID                         PROJECT_ID,
38655         map.PROJECT_ORG_ID,
38656         map.PROJECT_ORGANIZATION_ID,
38657         decode(top_slice.INVERT_ID,
38658                'PRJ', pjp.SUP_EMT_ID,
38659                wbs.SUP_EMT_ID)                     PROJECT_ELEMENT_ID,
38660         pjp.TIME_ID,
38661         pjp.PERIOD_TYPE_ID,
38662         pjp.CALENDAR_TYPE,
38663         decode(top_slice.INVERT_ID,
38664                'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
38665                                   wbs.SUP_EMT_ID,
38666                                   'N', 'Y'))       WBS_ROLLUP_FLAG,
38667         'Y'                                        PRG_ROLLUP_FLAG,
38668         pjp.CURR_RECORD_TYPE_ID,
38669         pjp.CURRENCY_CODE,
38670         sum(pjp.REVENUE)                           REVENUE,
38671         sum(pjp.INITIAL_FUNDING_AMOUNT)            INITIAL_FUNDING_AMOUNT,
38672         sum(pjp.INITIAL_FUNDING_COUNT)             INITIAL_FUNDING_COUNT,
38673         sum(pjp.ADDITIONAL_FUNDING_AMOUNT)         ADDITIONAL_FUNDING_AMOUNT,
38674         sum(pjp.ADDITIONAL_FUNDING_COUNT)          ADDITIONAL_FUNDING_COUNT,
38675         sum(pjp.CANCELLED_FUNDING_AMOUNT)          CANCELLED_FUNDING_AMOUNT,
38676         sum(pjp.CANCELLED_FUNDING_COUNT)           CANCELLED_FUNDING_COUNT,
38677         sum(pjp.FUNDING_ADJUSTMENT_AMOUNT)         FUNDING_ADJUSTMENT_AMOUNT,
38678         sum(pjp.FUNDING_ADJUSTMENT_COUNT)          FUNDING_ADJUSTMENT_COUNT,
38679         sum(pjp.REVENUE_WRITEOFF)                  REVENUE_WRITEOFF,
38680         sum(pjp.AR_INVOICE_AMOUNT)                 AR_INVOICE_AMOUNT,
38681         sum(pjp.AR_INVOICE_COUNT)                  AR_INVOICE_COUNT,
38682         sum(pjp.AR_CASH_APPLIED_AMOUNT)            AR_CASH_APPLIED_AMOUNT,
38683         sum(pjp.AR_INVOICE_WRITE_OFF_AMOUNT)       AR_INVOICE_WRITE_OFF_AMOUNT,
38684         sum(pjp.AR_INVOICE_WRITEOFF_COUNT)         AR_INVOICE_WRITEOFF_COUNT,
38685         sum(pjp.AR_CREDIT_MEMO_AMOUNT)             AR_CREDIT_MEMO_AMOUNT,
38686         sum(pjp.AR_CREDIT_MEMO_COUNT)              AR_CREDIT_MEMO_COUNT,
38687         sum(pjp.UNBILLED_RECEIVABLES)              UNBILLED_RECEIVABLES,
38688         sum(pjp.UNEARNED_REVENUE)                  UNEARNED_REVENUE,
38689         sum(pjp.AR_UNAPPR_INVOICE_AMOUNT)          AR_UNAPPR_INVOICE_AMOUNT,
38690         sum(pjp.AR_UNAPPR_INVOICE_COUNT)           AR_UNAPPR_INVOICE_COUNT,
38691         sum(pjp.AR_APPR_INVOICE_AMOUNT)            AR_APPR_INVOICE_AMOUNT,
38692         sum(pjp.AR_APPR_INVOICE_COUNT)             AR_APPR_INVOICE_COUNT,
38693         sum(pjp.AR_AMOUNT_DUE)                     AR_AMOUNT_DUE,
38694         sum(pjp.AR_COUNT_DUE)                      AR_COUNT_DUE,
38695         sum(pjp.AR_AMOUNT_OVERDUE)                 AR_AMOUNT_OVERDUE,
38696         sum(pjp.AR_COUNT_OVERDUE)                  AR_COUNT_OVERDUE,
38697         sum(pjp.CUSTOM1)                           CUSTOM1,
38698         sum(pjp.CUSTOM2)                           CUSTOM2,
38699         sum(pjp.CUSTOM3)                           CUSTOM3,
38700         sum(pjp.CUSTOM4)                           CUSTOM4,
38701         sum(pjp.CUSTOM5)                           CUSTOM5,
38702         sum(pjp.CUSTOM6)                           CUSTOM6,
38703         sum(pjp.CUSTOM7)                           CUSTOM7,
38704         sum(pjp.CUSTOM8)                           CUSTOM8,
38705         sum(pjp.CUSTOM9)                           CUSTOM9,
38706         sum(pjp.CUSTOM10)                          CUSTOM10,
38707         sum(pjp.CUSTOM11)                          CUSTOM11,
38708         sum(pjp.CUSTOM12)                          CUSTOM12,
38709         sum(pjp.CUSTOM13)                          CUSTOM13,
38710         sum(pjp.CUSTOM14)                          CUSTOM14,
38711         sum(pjp.CUSTOM15)                          CUSTOM15
38712       from
38713         (
38714         select /*+ ordered index(acr PJI_AC_XBS_ACCUM_F_N1) */
38715                -- get structure level amounts from Reporting Lines
38716           prg.SUP_PROJECT_ID,
38717           prg.SUP_ID,
38718           prg.SUP_EMT_ID,
38719           prg.SUB_EMT_ID,
38720           prg.SUB_ROLLUP_ID,
38721           'ACR'                                    LINE_SOURCE,
38722           prg.SUB_ID,
38723           acr.TIME_ID,
38724           acr.PERIOD_TYPE_ID,
38725           acr.CALENDAR_TYPE,
38726           acr.CURR_RECORD_TYPE_ID,
38727           acr.CURRENCY_CODE,
38728           prg.SIGN * acr.REVENUE                   REVENUE,
38729           prg.SIGN * acr.INITIAL_FUNDING_AMOUNT    INITIAL_FUNDING_AMOUNT,
38730           prg.SIGN * acr.INITIAL_FUNDING_COUNT     INITIAL_FUNDING_COUNT,
38731           prg.SIGN * acr.ADDITIONAL_FUNDING_AMOUNT ADDITIONAL_FUNDING_AMOUNT,
38732           prg.SIGN * acr.ADDITIONAL_FUNDING_COUNT  ADDITIONAL_FUNDING_COUNT,
38733           prg.SIGN * acr.CANCELLED_FUNDING_AMOUNT  CANCELLED_FUNDING_AMOUNT,
38734           prg.SIGN * acr.CANCELLED_FUNDING_COUNT   CANCELLED_FUNDING_COUNT,
38735           prg.SIGN * acr.FUNDING_ADJUSTMENT_AMOUNT FUNDING_ADJUSTMENT_AMOUNT,
38736           prg.SIGN * acr.FUNDING_ADJUSTMENT_COUNT  FUNDING_ADJUSTMENT_COUNT,
38737           prg.SIGN * acr.REVENUE_WRITEOFF          REVENUE_WRITEOFF,
38738           prg.SIGN * acr.AR_INVOICE_AMOUNT         AR_INVOICE_AMOUNT,
38739           prg.SIGN * acr.AR_INVOICE_COUNT          AR_INVOICE_COUNT,
38740           prg.SIGN * acr.AR_CASH_APPLIED_AMOUNT    AR_CASH_APPLIED_AMOUNT,
38741           prg.SIGN *
38742             acr.AR_INVOICE_WRITE_OFF_AMOUNT        AR_INVOICE_WRITE_OFF_AMOUNT,
38743           prg.SIGN * acr.AR_INVOICE_WRITEOFF_COUNT AR_INVOICE_WRITEOFF_COUNT,
38744           prg.SIGN * acr.AR_CREDIT_MEMO_AMOUNT     AR_CREDIT_MEMO_AMOUNT,
38745           prg.SIGN * acr.AR_CREDIT_MEMO_COUNT      AR_CREDIT_MEMO_COUNT,
38746           prg.SIGN * acr.UNBILLED_RECEIVABLES      UNBILLED_RECEIVABLES,
38747           prg.SIGN * acr.UNEARNED_REVENUE          UNEARNED_REVENUE,
38748           prg.SIGN * acr.AR_UNAPPR_INVOICE_AMOUNT  AR_UNAPPR_INVOICE_AMOUNT,
38749           prg.SIGN * acr.AR_UNAPPR_INVOICE_COUNT   AR_UNAPPR_INVOICE_COUNT,
38750           prg.SIGN * acr.AR_APPR_INVOICE_AMOUNT    AR_APPR_INVOICE_AMOUNT,
38751           prg.SIGN * acr.AR_APPR_INVOICE_COUNT     AR_APPR_INVOICE_COUNT,
38752           prg.SIGN * acr.AR_AMOUNT_DUE             AR_AMOUNT_DUE,
38753           prg.SIGN * acr.AR_COUNT_DUE              AR_COUNT_DUE,
38754           prg.SIGN * acr.AR_AMOUNT_OVERDUE         AR_AMOUNT_OVERDUE,
38755           prg.SIGN * acr.AR_COUNT_OVERDUE          AR_COUNT_OVERDUE,
38756           prg.SIGN * acr.CUSTOM1                   CUSTOM1,
38757           prg.SIGN * acr.CUSTOM2                   CUSTOM2,
38758           prg.SIGN * acr.CUSTOM3                   CUSTOM3,
38759           prg.SIGN * acr.CUSTOM4                   CUSTOM4,
38760           prg.SIGN * acr.CUSTOM5                   CUSTOM5,
38761           prg.SIGN * acr.CUSTOM6                   CUSTOM6,
38762           prg.SIGN * acr.CUSTOM7                   CUSTOM7,
38763           prg.SIGN * acr.CUSTOM8                   CUSTOM8,
38764           prg.SIGN * acr.CUSTOM9                   CUSTOM9,
38765           prg.SIGN * acr.CUSTOM10                  CUSTOM10,
38766           prg.SIGN * acr.CUSTOM11                  CUSTOM11,
38767           prg.SIGN * acr.CUSTOM12                  CUSTOM12,
38768           prg.SIGN * acr.CUSTOM13                  CUSTOM13,
38769           prg.SIGN * acr.CUSTOM14                  CUSTOM14,
38770           prg.SIGN * acr.CUSTOM15                  CUSTOM15
38771         from
38772           PJI_XBS_DENORM_DELTA prg,
38773           PA_PROJ_ELEMENTS     prj_emt,
38774           PJI_PJP_WBS_HEADER   wbs_hdr,
38775           PJI_AC_XBS_ACCUM_F   acr
38776         where
38777           prg.WORKER_ID           =  p_worker_id        and
38778           prg.STRUCT_TYPE         =  'PRG'              and
38779           prg.RELATIONSHIP_TYPE   =  'LF'               and
38780           prg.SUP_LEVEL           =  l_level            and
38781           nvl(prg.SUB_ROLLUP_ID,
38782               prg.SUP_EMT_ID)     <> prg.SUP_EMT_ID     and
38783           acr.WBS_ROLLUP_FLAG     in ('Y', 'N')         and
38784           acr.PRG_ROLLUP_FLAG     in ('Y', 'N')         and
38785           acr.PROJECT_ID          =  prj_emt.PROJECT_ID and
38786           acr.PROJECT_ELEMENT_ID  =  prg.SUB_EMT_ID     and
38787           prj_emt.PROJ_ELEMENT_ID =  prg.SUB_EMT_ID     and
38788           wbs_hdr.PROJECT_ID      =  prj_emt.PROJECT_ID and
38789           wbs_hdr.PLAN_VERSION_ID =  -1
38790         union all
38791         select /*+ ordered parallel(pjp1) */        -- changed for bug 5927368
38792                -- get program rollup amounts
38793           prg.SUP_PROJECT_ID,
38794           prg.SUP_ID,
38795           prg.SUP_EMT_ID,
38796           prg.SUB_EMT_ID,
38797           prg.SUB_ROLLUP_ID,
38798           'PJP1'                                   LINE_SOURCE,
38799           prg.SUB_ID,
38800           pjp1.TIME_ID,
38801           pjp1.PERIOD_TYPE_ID,
38802           pjp1.CALENDAR_TYPE,
38803           pjp1.CURR_RECORD_TYPE_ID,
38804           pjp1.CURRENCY_CODE,
38805           pjp1.REVENUE,
38806           pjp1.INITIAL_FUNDING_AMOUNT,
38807           pjp1.INITIAL_FUNDING_COUNT,
38808           pjp1.ADDITIONAL_FUNDING_AMOUNT,
38809           pjp1.ADDITIONAL_FUNDING_COUNT,
38810           pjp1.CANCELLED_FUNDING_AMOUNT,
38811           pjp1.CANCELLED_FUNDING_COUNT,
38812           pjp1.FUNDING_ADJUSTMENT_AMOUNT,
38813           pjp1.FUNDING_ADJUSTMENT_COUNT,
38814           pjp1.REVENUE_WRITEOFF,
38815           pjp1.AR_INVOICE_AMOUNT,
38816           pjp1.AR_INVOICE_COUNT,
38817           pjp1.AR_CASH_APPLIED_AMOUNT,
38818           pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
38819           pjp1.AR_INVOICE_WRITEOFF_COUNT,
38820           pjp1.AR_CREDIT_MEMO_AMOUNT,
38821           pjp1.AR_CREDIT_MEMO_COUNT,
38822           pjp1.UNBILLED_RECEIVABLES,
38823           pjp1.UNEARNED_REVENUE,
38824           pjp1.AR_UNAPPR_INVOICE_AMOUNT,
38825           pjp1.AR_UNAPPR_INVOICE_COUNT,
38826           pjp1.AR_APPR_INVOICE_AMOUNT,
38827           pjp1.AR_APPR_INVOICE_COUNT,
38828           pjp1.AR_AMOUNT_DUE,
38829           pjp1.AR_COUNT_DUE,
38830           pjp1.AR_AMOUNT_OVERDUE,
38831           pjp1.AR_COUNT_OVERDUE,
38832           pjp1.CUSTOM1,
38833           pjp1.CUSTOM2,
38834           pjp1.CUSTOM3,
38835           pjp1.CUSTOM4,
38836           pjp1.CUSTOM5,
38837           pjp1.CUSTOM6,
38838           pjp1.CUSTOM7,
38839           pjp1.CUSTOM8,
38840           pjp1.CUSTOM9,
38841           pjp1.CUSTOM10,
38842           pjp1.CUSTOM11,
38843           pjp1.CUSTOM12,
38844           pjp1.CUSTOM13,
38845           pjp1.CUSTOM14,
38846           pjp1.CUSTOM15
38847         from
38848           PJI_AC_AGGR_PJP1     pjp1,
38849           PJI_PJP_WBS_HEADER   wbs_hdr,
38850           PA_PROJ_ELEMENTS     prj_emt,
38851           PA_XBS_DENORM        prg,
38852           PJI_XBS_DENORM_DELTA prg_delta
38853         where
38854           prg.STRUCT_TYPE         =  'PRG'                           and
38855           prg.SUP_LEVEL           =  l_level                         and
38856           nvl(prg.SUB_ROLLUP_ID,
38857               prg.SUP_EMT_ID)     <> prg.SUP_EMT_ID                  and
38858           prg.RELATIONSHIP_TYPE   =  'LF'                            and
38859           p_worker_id             =  prg_delta.WORKER_ID         (+) and
38860           prg.STRUCT_TYPE         =  prg_delta.STRUCT_TYPE       (+) and
38861           prg.SUP_PROJECT_ID      =  prg_delta.SUP_PROJECT_ID    (+) and
38862           prg.SUP_LEVEL           =  prg_delta.SUP_LEVEL         (+) and
38863           prg.SUP_ID              =  prg_delta.SUP_ID            (+) and
38864           prg.SUB_LEVEL           =  prg_delta.SUB_LEVEL         (+) and
38865           prg.SUB_ID              =  prg_delta.SUB_ID            (+) and
38866           prg.RELATIONSHIP_TYPE   =  prg_delta.RELATIONSHIP_TYPE (+) and
38867           1                       =  prg_delta.SIGN              (+) and
38868           (prg_delta.SUP_PROJECT_ID is not null or
38869            (prg_delta.SUP_PROJECT_ID is null and
38870             pjp1.RECORD_TYPE = 'P'))                                 and
38871           pjp1.WORKER_ID          =  p_worker_id                     and
38872           pjp1.PRG_LEVEL          in (0, prg.SUB_LEVEL)              and
38873           pjp1.WBS_ROLLUP_FLAG    in ('Y', 'N')                      and
38874           pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                      and
38875           pjp1.PROJECT_ID         =  prj_emt.PROJECT_ID              and
38876           pjp1.PROJECT_ELEMENT_ID =  prg.SUB_EMT_ID                  and
38877           prg.STRUCT_VERSION_ID   is null                            and
38878           prj_emt.OBJECT_TYPE     =  'PA_STRUCTURES'                 and
38879           prj_emt.PROJ_ELEMENT_ID =  prg.SUB_EMT_ID                  and
38880           wbs_hdr.PROJECT_ID      =  prj_emt.PROJECT_ID              and
38881           wbs_hdr.WBS_VERSION_ID  =  prg.SUB_ID                      and
38882           wbs_hdr.PROJECT_ID      =  pjp1.PROJECT_ID                 and
38883           wbs_hdr.PLAN_VERSION_ID =  -1
38884         )                          pjp,
38885         PJI_PJP_PROJ_BATCH_MAP     map,
38886         PA_PROJ_WORKPLAN_ATTR      sup_wpa,
38887         PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
38888         PA_XBS_DENORM              wbs,
38889         (
38890           select 1     WBS_SUP_LEVEL,
38891                  'PRJ' INVERT_ID
38892           from   DUAL
38893           union all
38894           select 1     WBS_SUP_LEVEL,
38895                  'WBS' INVERT_ID
38896           from   DUAL
38897         ) top_slice
38898       where
38899         map.WORKER_ID         =  p_worker_id                        and
38900         map.PROJECT_ID        = pjp.SUP_PROJECT_ID                  and
38901         pjp.SUP_EMT_ID        = sup_wpa.PROJ_ELEMENT_ID             and
38902         pjp.SUP_PROJECT_ID    = sup_fin_ver.PROJECT_ID          (+) and
38903         pjp.SUP_ID            = sup_fin_ver.ELEMENT_VERSION_ID  (+) and
38904         'STRUCTURE_WORKING'   = sup_fin_ver.STATUS_CODE         (+) and
38905         (sup_fin_ver.PROJECT_ID is not null or
38906          sup_wpa.WP_ENABLE_VERSION_FLAG = 'N')                      and
38907         wbs.STRUCT_TYPE       =  'WBS'                              and
38908         wbs.SUP_PROJECT_ID    =  map.PROJECT_ID                     and
38909         wbs.SUP_PROJECT_ID    =  pjp.SUP_PROJECT_ID                 and
38910         wbs.STRUCT_VERSION_ID =  pjp.SUP_ID                         and
38911         wbs.SUB_EMT_ID        =  pjp.SUB_ROLLUP_ID                  and
38912         wbs.SUP_LEVEL         =  top_slice.WBS_SUP_LEVEL        (+)
38913       group by
38914         pjp.SUP_PROJECT_ID,
38915         map.PROJECT_ORG_ID,
38916         map.PROJECT_ORGANIZATION_ID,
38917         decode(top_slice.INVERT_ID,
38918                'PRJ', pjp.SUP_EMT_ID,
38919                wbs.SUP_EMT_ID),
38920         pjp.TIME_ID,
38921         pjp.PERIOD_TYPE_ID,
38922         pjp.CALENDAR_TYPE,
38923         decode(top_slice.INVERT_ID,
38924                'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
38925                                   wbs.SUP_EMT_ID,
38926                                   'N', 'Y')),
38927         pjp.CURR_RECORD_TYPE_ID,
38928         pjp.CURRENCY_CODE;
38929     elsif (p_worker_id =6) then
38930       -- Query for Partition 6
38931 
38932       insert /*+ parallel(PJI_AC_AGGR_PJP1) */
38933                  into PJI_AC_AGGR_PJP1 partition(P6)
38934       (
38935         WORKER_ID,
38936         RECORD_TYPE,
38937         PRG_LEVEL,
38938         PROJECT_ID,
38939         PROJECT_ORG_ID,
38940         PROJECT_ORGANIZATION_ID,
38941         PROJECT_ELEMENT_ID,
38942         TIME_ID,
38943         PERIOD_TYPE_ID,
38944         CALENDAR_TYPE,
38945         WBS_ROLLUP_FLAG,
38946         PRG_ROLLUP_FLAG,
38947         CURR_RECORD_TYPE_ID,
38948         CURRENCY_CODE,
38949         REVENUE,
38950         INITIAL_FUNDING_AMOUNT,
38951         INITIAL_FUNDING_COUNT,
38952         ADDITIONAL_FUNDING_AMOUNT,
38953         ADDITIONAL_FUNDING_COUNT,
38954         CANCELLED_FUNDING_AMOUNT,
38955         CANCELLED_FUNDING_COUNT,
38956         FUNDING_ADJUSTMENT_AMOUNT,
38957         FUNDING_ADJUSTMENT_COUNT,
38958         REVENUE_WRITEOFF,
38959         AR_INVOICE_AMOUNT,
38960         AR_INVOICE_COUNT,
38961         AR_CASH_APPLIED_AMOUNT,
38962         AR_INVOICE_WRITE_OFF_AMOUNT,
38963         AR_INVOICE_WRITEOFF_COUNT,
38964         AR_CREDIT_MEMO_AMOUNT,
38965         AR_CREDIT_MEMO_COUNT,
38966         UNBILLED_RECEIVABLES,
38967         UNEARNED_REVENUE,
38968         AR_UNAPPR_INVOICE_AMOUNT,
38969         AR_UNAPPR_INVOICE_COUNT,
38970         AR_APPR_INVOICE_AMOUNT,
38971         AR_APPR_INVOICE_COUNT,
38972         AR_AMOUNT_DUE,
38973         AR_COUNT_DUE,
38974         AR_AMOUNT_OVERDUE,
38975         AR_COUNT_OVERDUE,
38976         CUSTOM1,
38977         CUSTOM2,
38978         CUSTOM3,
38979         CUSTOM4,
38980         CUSTOM5,
38981         CUSTOM6,
38982         CUSTOM7,
38983         CUSTOM8,
38984         CUSTOM9,
38985         CUSTOM10,
38986         CUSTOM11,
38987         CUSTOM12,
38988         CUSTOM13,
38989         CUSTOM14,
38990         CUSTOM15
38991       )
38992       select /*+ no_merge(pjp) */
38993         p_worker_id                                WORKER_ID,
38994         'P'                                        RECORD_TYPE,
38995         l_level                                    PRG_LEVEL,
38996         pjp.SUP_PROJECT_ID                         PROJECT_ID,
38997         map.PROJECT_ORG_ID,
38998         map.PROJECT_ORGANIZATION_ID,
38999         decode(top_slice.INVERT_ID,
39000                'PRJ', pjp.SUP_EMT_ID,
39001                wbs.SUP_EMT_ID)                     PROJECT_ELEMENT_ID,
39002         pjp.TIME_ID,
39003         pjp.PERIOD_TYPE_ID,
39004         pjp.CALENDAR_TYPE,
39005         decode(top_slice.INVERT_ID,
39006                'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
39007                                   wbs.SUP_EMT_ID,
39008                                   'N', 'Y'))       WBS_ROLLUP_FLAG,
39009         'Y'                                        PRG_ROLLUP_FLAG,
39010         pjp.CURR_RECORD_TYPE_ID,
39011         pjp.CURRENCY_CODE,
39012         sum(pjp.REVENUE)                           REVENUE,
39013         sum(pjp.INITIAL_FUNDING_AMOUNT)            INITIAL_FUNDING_AMOUNT,
39014         sum(pjp.INITIAL_FUNDING_COUNT)             INITIAL_FUNDING_COUNT,
39015         sum(pjp.ADDITIONAL_FUNDING_AMOUNT)         ADDITIONAL_FUNDING_AMOUNT,
39016         sum(pjp.ADDITIONAL_FUNDING_COUNT)          ADDITIONAL_FUNDING_COUNT,
39017         sum(pjp.CANCELLED_FUNDING_AMOUNT)          CANCELLED_FUNDING_AMOUNT,
39018         sum(pjp.CANCELLED_FUNDING_COUNT)           CANCELLED_FUNDING_COUNT,
39019         sum(pjp.FUNDING_ADJUSTMENT_AMOUNT)         FUNDING_ADJUSTMENT_AMOUNT,
39020         sum(pjp.FUNDING_ADJUSTMENT_COUNT)          FUNDING_ADJUSTMENT_COUNT,
39021         sum(pjp.REVENUE_WRITEOFF)                  REVENUE_WRITEOFF,
39022         sum(pjp.AR_INVOICE_AMOUNT)                 AR_INVOICE_AMOUNT,
39023         sum(pjp.AR_INVOICE_COUNT)                  AR_INVOICE_COUNT,
39024         sum(pjp.AR_CASH_APPLIED_AMOUNT)            AR_CASH_APPLIED_AMOUNT,
39025         sum(pjp.AR_INVOICE_WRITE_OFF_AMOUNT)       AR_INVOICE_WRITE_OFF_AMOUNT,
39026         sum(pjp.AR_INVOICE_WRITEOFF_COUNT)         AR_INVOICE_WRITEOFF_COUNT,
39027         sum(pjp.AR_CREDIT_MEMO_AMOUNT)             AR_CREDIT_MEMO_AMOUNT,
39028         sum(pjp.AR_CREDIT_MEMO_COUNT)              AR_CREDIT_MEMO_COUNT,
39029         sum(pjp.UNBILLED_RECEIVABLES)              UNBILLED_RECEIVABLES,
39030         sum(pjp.UNEARNED_REVENUE)                  UNEARNED_REVENUE,
39031         sum(pjp.AR_UNAPPR_INVOICE_AMOUNT)          AR_UNAPPR_INVOICE_AMOUNT,
39032         sum(pjp.AR_UNAPPR_INVOICE_COUNT)           AR_UNAPPR_INVOICE_COUNT,
39033         sum(pjp.AR_APPR_INVOICE_AMOUNT)            AR_APPR_INVOICE_AMOUNT,
39034         sum(pjp.AR_APPR_INVOICE_COUNT)             AR_APPR_INVOICE_COUNT,
39035         sum(pjp.AR_AMOUNT_DUE)                     AR_AMOUNT_DUE,
39036         sum(pjp.AR_COUNT_DUE)                      AR_COUNT_DUE,
39037         sum(pjp.AR_AMOUNT_OVERDUE)                 AR_AMOUNT_OVERDUE,
39038         sum(pjp.AR_COUNT_OVERDUE)                  AR_COUNT_OVERDUE,
39039         sum(pjp.CUSTOM1)                           CUSTOM1,
39040         sum(pjp.CUSTOM2)                           CUSTOM2,
39041         sum(pjp.CUSTOM3)                           CUSTOM3,
39042         sum(pjp.CUSTOM4)                           CUSTOM4,
39043         sum(pjp.CUSTOM5)                           CUSTOM5,
39044         sum(pjp.CUSTOM6)                           CUSTOM6,
39045         sum(pjp.CUSTOM7)                           CUSTOM7,
39046         sum(pjp.CUSTOM8)                           CUSTOM8,
39047         sum(pjp.CUSTOM9)                           CUSTOM9,
39048         sum(pjp.CUSTOM10)                          CUSTOM10,
39049         sum(pjp.CUSTOM11)                          CUSTOM11,
39050         sum(pjp.CUSTOM12)                          CUSTOM12,
39051         sum(pjp.CUSTOM13)                          CUSTOM13,
39052         sum(pjp.CUSTOM14)                          CUSTOM14,
39053         sum(pjp.CUSTOM15)                          CUSTOM15
39054       from
39055         (
39056         select /*+ ordered index(acr PJI_AC_XBS_ACCUM_F_N1) */
39057                -- get structure level amounts from Reporting Lines
39058           prg.SUP_PROJECT_ID,
39059           prg.SUP_ID,
39060           prg.SUP_EMT_ID,
39061           prg.SUB_EMT_ID,
39062           prg.SUB_ROLLUP_ID,
39063           'ACR'                                    LINE_SOURCE,
39064           prg.SUB_ID,
39065           acr.TIME_ID,
39066           acr.PERIOD_TYPE_ID,
39067           acr.CALENDAR_TYPE,
39068           acr.CURR_RECORD_TYPE_ID,
39069           acr.CURRENCY_CODE,
39070           prg.SIGN * acr.REVENUE                   REVENUE,
39071           prg.SIGN * acr.INITIAL_FUNDING_AMOUNT    INITIAL_FUNDING_AMOUNT,
39072           prg.SIGN * acr.INITIAL_FUNDING_COUNT     INITIAL_FUNDING_COUNT,
39073           prg.SIGN * acr.ADDITIONAL_FUNDING_AMOUNT ADDITIONAL_FUNDING_AMOUNT,
39074           prg.SIGN * acr.ADDITIONAL_FUNDING_COUNT  ADDITIONAL_FUNDING_COUNT,
39075           prg.SIGN * acr.CANCELLED_FUNDING_AMOUNT  CANCELLED_FUNDING_AMOUNT,
39076           prg.SIGN * acr.CANCELLED_FUNDING_COUNT   CANCELLED_FUNDING_COUNT,
39077           prg.SIGN * acr.FUNDING_ADJUSTMENT_AMOUNT FUNDING_ADJUSTMENT_AMOUNT,
39078           prg.SIGN * acr.FUNDING_ADJUSTMENT_COUNT  FUNDING_ADJUSTMENT_COUNT,
39079           prg.SIGN * acr.REVENUE_WRITEOFF          REVENUE_WRITEOFF,
39080           prg.SIGN * acr.AR_INVOICE_AMOUNT         AR_INVOICE_AMOUNT,
39081           prg.SIGN * acr.AR_INVOICE_COUNT          AR_INVOICE_COUNT,
39082           prg.SIGN * acr.AR_CASH_APPLIED_AMOUNT    AR_CASH_APPLIED_AMOUNT,
39083           prg.SIGN *
39084             acr.AR_INVOICE_WRITE_OFF_AMOUNT        AR_INVOICE_WRITE_OFF_AMOUNT,
39085           prg.SIGN * acr.AR_INVOICE_WRITEOFF_COUNT AR_INVOICE_WRITEOFF_COUNT,
39086           prg.SIGN * acr.AR_CREDIT_MEMO_AMOUNT     AR_CREDIT_MEMO_AMOUNT,
39087           prg.SIGN * acr.AR_CREDIT_MEMO_COUNT      AR_CREDIT_MEMO_COUNT,
39088           prg.SIGN * acr.UNBILLED_RECEIVABLES      UNBILLED_RECEIVABLES,
39089           prg.SIGN * acr.UNEARNED_REVENUE          UNEARNED_REVENUE,
39090           prg.SIGN * acr.AR_UNAPPR_INVOICE_AMOUNT  AR_UNAPPR_INVOICE_AMOUNT,
39091           prg.SIGN * acr.AR_UNAPPR_INVOICE_COUNT   AR_UNAPPR_INVOICE_COUNT,
39092           prg.SIGN * acr.AR_APPR_INVOICE_AMOUNT    AR_APPR_INVOICE_AMOUNT,
39093           prg.SIGN * acr.AR_APPR_INVOICE_COUNT     AR_APPR_INVOICE_COUNT,
39094           prg.SIGN * acr.AR_AMOUNT_DUE             AR_AMOUNT_DUE,
39095           prg.SIGN * acr.AR_COUNT_DUE              AR_COUNT_DUE,
39096           prg.SIGN * acr.AR_AMOUNT_OVERDUE         AR_AMOUNT_OVERDUE,
39097           prg.SIGN * acr.AR_COUNT_OVERDUE          AR_COUNT_OVERDUE,
39098           prg.SIGN * acr.CUSTOM1                   CUSTOM1,
39099           prg.SIGN * acr.CUSTOM2                   CUSTOM2,
39100           prg.SIGN * acr.CUSTOM3                   CUSTOM3,
39101           prg.SIGN * acr.CUSTOM4                   CUSTOM4,
39102           prg.SIGN * acr.CUSTOM5                   CUSTOM5,
39103           prg.SIGN * acr.CUSTOM6                   CUSTOM6,
39104           prg.SIGN * acr.CUSTOM7                   CUSTOM7,
39105           prg.SIGN * acr.CUSTOM8                   CUSTOM8,
39106           prg.SIGN * acr.CUSTOM9                   CUSTOM9,
39107           prg.SIGN * acr.CUSTOM10                  CUSTOM10,
39108           prg.SIGN * acr.CUSTOM11                  CUSTOM11,
39109           prg.SIGN * acr.CUSTOM12                  CUSTOM12,
39110           prg.SIGN * acr.CUSTOM13                  CUSTOM13,
39111           prg.SIGN * acr.CUSTOM14                  CUSTOM14,
39112           prg.SIGN * acr.CUSTOM15                  CUSTOM15
39113         from
39114           PJI_XBS_DENORM_DELTA prg,
39115           PA_PROJ_ELEMENTS     prj_emt,
39116           PJI_PJP_WBS_HEADER   wbs_hdr,
39117           PJI_AC_XBS_ACCUM_F   acr
39118         where
39119           prg.WORKER_ID           =  p_worker_id        and
39120           prg.STRUCT_TYPE         =  'PRG'              and
39121           prg.RELATIONSHIP_TYPE   =  'LF'               and
39122           prg.SUP_LEVEL           =  l_level            and
39123           nvl(prg.SUB_ROLLUP_ID,
39124               prg.SUP_EMT_ID)     <> prg.SUP_EMT_ID     and
39125           acr.WBS_ROLLUP_FLAG     in ('Y', 'N')         and
39126           acr.PRG_ROLLUP_FLAG     in ('Y', 'N')         and
39127           acr.PROJECT_ID          =  prj_emt.PROJECT_ID and
39128           acr.PROJECT_ELEMENT_ID  =  prg.SUB_EMT_ID     and
39129           prj_emt.PROJ_ELEMENT_ID =  prg.SUB_EMT_ID     and
39130           wbs_hdr.PROJECT_ID      =  prj_emt.PROJECT_ID and
39131           wbs_hdr.PLAN_VERSION_ID =  -1
39132         union all
39133         select /*+ ordered parallel(pjp1) */        -- changed for bug 5927368
39134                -- get program rollup amounts
39135           prg.SUP_PROJECT_ID,
39136           prg.SUP_ID,
39137           prg.SUP_EMT_ID,
39138           prg.SUB_EMT_ID,
39139           prg.SUB_ROLLUP_ID,
39140           'PJP1'                                   LINE_SOURCE,
39141           prg.SUB_ID,
39142           pjp1.TIME_ID,
39143           pjp1.PERIOD_TYPE_ID,
39144           pjp1.CALENDAR_TYPE,
39145           pjp1.CURR_RECORD_TYPE_ID,
39146           pjp1.CURRENCY_CODE,
39147           pjp1.REVENUE,
39148           pjp1.INITIAL_FUNDING_AMOUNT,
39149           pjp1.INITIAL_FUNDING_COUNT,
39150           pjp1.ADDITIONAL_FUNDING_AMOUNT,
39151           pjp1.ADDITIONAL_FUNDING_COUNT,
39152           pjp1.CANCELLED_FUNDING_AMOUNT,
39153           pjp1.CANCELLED_FUNDING_COUNT,
39154           pjp1.FUNDING_ADJUSTMENT_AMOUNT,
39155           pjp1.FUNDING_ADJUSTMENT_COUNT,
39156           pjp1.REVENUE_WRITEOFF,
39157           pjp1.AR_INVOICE_AMOUNT,
39158           pjp1.AR_INVOICE_COUNT,
39159           pjp1.AR_CASH_APPLIED_AMOUNT,
39160           pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
39161           pjp1.AR_INVOICE_WRITEOFF_COUNT,
39162           pjp1.AR_CREDIT_MEMO_AMOUNT,
39163           pjp1.AR_CREDIT_MEMO_COUNT,
39164           pjp1.UNBILLED_RECEIVABLES,
39165           pjp1.UNEARNED_REVENUE,
39166           pjp1.AR_UNAPPR_INVOICE_AMOUNT,
39167           pjp1.AR_UNAPPR_INVOICE_COUNT,
39168           pjp1.AR_APPR_INVOICE_AMOUNT,
39169           pjp1.AR_APPR_INVOICE_COUNT,
39170           pjp1.AR_AMOUNT_DUE,
39171           pjp1.AR_COUNT_DUE,
39172           pjp1.AR_AMOUNT_OVERDUE,
39173           pjp1.AR_COUNT_OVERDUE,
39174           pjp1.CUSTOM1,
39175           pjp1.CUSTOM2,
39176           pjp1.CUSTOM3,
39177           pjp1.CUSTOM4,
39178           pjp1.CUSTOM5,
39179           pjp1.CUSTOM6,
39180           pjp1.CUSTOM7,
39181           pjp1.CUSTOM8,
39182           pjp1.CUSTOM9,
39183           pjp1.CUSTOM10,
39184           pjp1.CUSTOM11,
39185           pjp1.CUSTOM12,
39186           pjp1.CUSTOM13,
39187           pjp1.CUSTOM14,
39188           pjp1.CUSTOM15
39189         from
39190           PJI_AC_AGGR_PJP1     pjp1,
39191           PJI_PJP_WBS_HEADER   wbs_hdr,
39192           PA_PROJ_ELEMENTS     prj_emt,
39193           PA_XBS_DENORM        prg,
39194           PJI_XBS_DENORM_DELTA prg_delta
39195         where
39196           prg.STRUCT_TYPE         =  'PRG'                           and
39197           prg.SUP_LEVEL           =  l_level                         and
39198           nvl(prg.SUB_ROLLUP_ID,
39199               prg.SUP_EMT_ID)     <> prg.SUP_EMT_ID                  and
39200           prg.RELATIONSHIP_TYPE   =  'LF'                            and
39201           p_worker_id             =  prg_delta.WORKER_ID         (+) and
39202           prg.STRUCT_TYPE         =  prg_delta.STRUCT_TYPE       (+) and
39203           prg.SUP_PROJECT_ID      =  prg_delta.SUP_PROJECT_ID    (+) and
39204           prg.SUP_LEVEL           =  prg_delta.SUP_LEVEL         (+) and
39205           prg.SUP_ID              =  prg_delta.SUP_ID            (+) and
39206           prg.SUB_LEVEL           =  prg_delta.SUB_LEVEL         (+) and
39207           prg.SUB_ID              =  prg_delta.SUB_ID            (+) and
39208           prg.RELATIONSHIP_TYPE   =  prg_delta.RELATIONSHIP_TYPE (+) and
39209           1                       =  prg_delta.SIGN              (+) and
39210           (prg_delta.SUP_PROJECT_ID is not null or
39211            (prg_delta.SUP_PROJECT_ID is null and
39212             pjp1.RECORD_TYPE = 'P'))                                 and
39213           pjp1.WORKER_ID          =  p_worker_id                     and
39214           pjp1.PRG_LEVEL          in (0, prg.SUB_LEVEL)              and
39215           pjp1.WBS_ROLLUP_FLAG    in ('Y', 'N')                      and
39216           pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                      and
39217           pjp1.PROJECT_ID         =  prj_emt.PROJECT_ID              and
39218           pjp1.PROJECT_ELEMENT_ID =  prg.SUB_EMT_ID                  and
39219           prg.STRUCT_VERSION_ID   is null                            and
39220           prj_emt.OBJECT_TYPE     =  'PA_STRUCTURES'                 and
39221           prj_emt.PROJ_ELEMENT_ID =  prg.SUB_EMT_ID                  and
39222           wbs_hdr.PROJECT_ID      =  prj_emt.PROJECT_ID              and
39223           wbs_hdr.WBS_VERSION_ID  =  prg.SUB_ID                      and
39224           wbs_hdr.PROJECT_ID      =  pjp1.PROJECT_ID                 and
39225           wbs_hdr.PLAN_VERSION_ID =  -1
39226         )                          pjp,
39227         PJI_PJP_PROJ_BATCH_MAP     map,
39228         PA_PROJ_WORKPLAN_ATTR      sup_wpa,
39229         PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
39230         PA_XBS_DENORM              wbs,
39231         (
39232           select 1     WBS_SUP_LEVEL,
39233                  'PRJ' INVERT_ID
39234           from   DUAL
39235           union all
39236           select 1     WBS_SUP_LEVEL,
39237                  'WBS' INVERT_ID
39238           from   DUAL
39239         ) top_slice
39240       where
39241         map.WORKER_ID         =  p_worker_id                        and
39242         map.PROJECT_ID        = pjp.SUP_PROJECT_ID                  and
39243         pjp.SUP_EMT_ID        = sup_wpa.PROJ_ELEMENT_ID             and
39244         pjp.SUP_PROJECT_ID    = sup_fin_ver.PROJECT_ID          (+) and
39245         pjp.SUP_ID            = sup_fin_ver.ELEMENT_VERSION_ID  (+) and
39246         'STRUCTURE_WORKING'   = sup_fin_ver.STATUS_CODE         (+) and
39247         (sup_fin_ver.PROJECT_ID is not null or
39248          sup_wpa.WP_ENABLE_VERSION_FLAG = 'N')                      and
39249         wbs.STRUCT_TYPE       =  'WBS'                              and
39250         wbs.SUP_PROJECT_ID    =  map.PROJECT_ID                     and
39251         wbs.SUP_PROJECT_ID    =  pjp.SUP_PROJECT_ID                 and
39252         wbs.STRUCT_VERSION_ID =  pjp.SUP_ID                         and
39253         wbs.SUB_EMT_ID        =  pjp.SUB_ROLLUP_ID                  and
39254         wbs.SUP_LEVEL         =  top_slice.WBS_SUP_LEVEL        (+)
39255       group by
39256         pjp.SUP_PROJECT_ID,
39257         map.PROJECT_ORG_ID,
39258         map.PROJECT_ORGANIZATION_ID,
39259         decode(top_slice.INVERT_ID,
39260                'PRJ', pjp.SUP_EMT_ID,
39261                wbs.SUP_EMT_ID),
39262         pjp.TIME_ID,
39263         pjp.PERIOD_TYPE_ID,
39264         pjp.CALENDAR_TYPE,
39265         decode(top_slice.INVERT_ID,
39266                'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
39267                                   wbs.SUP_EMT_ID,
39268                                   'N', 'Y')),
39269         pjp.CURR_RECORD_TYPE_ID,
39270         pjp.CURRENCY_CODE;
39271     elsif (p_worker_id =7) then
39272       -- Query for Partition 7
39273 
39274       insert /*+ parallel(PJI_AC_AGGR_PJP1) */
39275                  into PJI_AC_AGGR_PJP1 partition(P7)
39276       (
39277         WORKER_ID,
39278         RECORD_TYPE,
39279         PRG_LEVEL,
39280         PROJECT_ID,
39281         PROJECT_ORG_ID,
39282         PROJECT_ORGANIZATION_ID,
39283         PROJECT_ELEMENT_ID,
39284         TIME_ID,
39285         PERIOD_TYPE_ID,
39286         CALENDAR_TYPE,
39287         WBS_ROLLUP_FLAG,
39288         PRG_ROLLUP_FLAG,
39289         CURR_RECORD_TYPE_ID,
39290         CURRENCY_CODE,
39291         REVENUE,
39292         INITIAL_FUNDING_AMOUNT,
39293         INITIAL_FUNDING_COUNT,
39294         ADDITIONAL_FUNDING_AMOUNT,
39295         ADDITIONAL_FUNDING_COUNT,
39296         CANCELLED_FUNDING_AMOUNT,
39297         CANCELLED_FUNDING_COUNT,
39298         FUNDING_ADJUSTMENT_AMOUNT,
39299         FUNDING_ADJUSTMENT_COUNT,
39300         REVENUE_WRITEOFF,
39301         AR_INVOICE_AMOUNT,
39302         AR_INVOICE_COUNT,
39303         AR_CASH_APPLIED_AMOUNT,
39304         AR_INVOICE_WRITE_OFF_AMOUNT,
39305         AR_INVOICE_WRITEOFF_COUNT,
39306         AR_CREDIT_MEMO_AMOUNT,
39307         AR_CREDIT_MEMO_COUNT,
39308         UNBILLED_RECEIVABLES,
39309         UNEARNED_REVENUE,
39310         AR_UNAPPR_INVOICE_AMOUNT,
39311         AR_UNAPPR_INVOICE_COUNT,
39312         AR_APPR_INVOICE_AMOUNT,
39313         AR_APPR_INVOICE_COUNT,
39314         AR_AMOUNT_DUE,
39315         AR_COUNT_DUE,
39316         AR_AMOUNT_OVERDUE,
39317         AR_COUNT_OVERDUE,
39318         CUSTOM1,
39319         CUSTOM2,
39320         CUSTOM3,
39321         CUSTOM4,
39322         CUSTOM5,
39323         CUSTOM6,
39324         CUSTOM7,
39325         CUSTOM8,
39326         CUSTOM9,
39327         CUSTOM10,
39328         CUSTOM11,
39329         CUSTOM12,
39330         CUSTOM13,
39331         CUSTOM14,
39332         CUSTOM15
39333       )
39334       select /*+ no_merge(pjp) */
39335         p_worker_id                                WORKER_ID,
39336         'P'                                        RECORD_TYPE,
39337         l_level                                    PRG_LEVEL,
39338         pjp.SUP_PROJECT_ID                         PROJECT_ID,
39339         map.PROJECT_ORG_ID,
39340         map.PROJECT_ORGANIZATION_ID,
39341         decode(top_slice.INVERT_ID,
39342                'PRJ', pjp.SUP_EMT_ID,
39343                wbs.SUP_EMT_ID)                     PROJECT_ELEMENT_ID,
39344         pjp.TIME_ID,
39345         pjp.PERIOD_TYPE_ID,
39346         pjp.CALENDAR_TYPE,
39347         decode(top_slice.INVERT_ID,
39348                'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
39349                                   wbs.SUP_EMT_ID,
39350                                   'N', 'Y'))       WBS_ROLLUP_FLAG,
39351         'Y'                                        PRG_ROLLUP_FLAG,
39352         pjp.CURR_RECORD_TYPE_ID,
39353         pjp.CURRENCY_CODE,
39354         sum(pjp.REVENUE)                           REVENUE,
39355         sum(pjp.INITIAL_FUNDING_AMOUNT)            INITIAL_FUNDING_AMOUNT,
39356         sum(pjp.INITIAL_FUNDING_COUNT)             INITIAL_FUNDING_COUNT,
39357         sum(pjp.ADDITIONAL_FUNDING_AMOUNT)         ADDITIONAL_FUNDING_AMOUNT,
39358         sum(pjp.ADDITIONAL_FUNDING_COUNT)          ADDITIONAL_FUNDING_COUNT,
39359         sum(pjp.CANCELLED_FUNDING_AMOUNT)          CANCELLED_FUNDING_AMOUNT,
39360         sum(pjp.CANCELLED_FUNDING_COUNT)           CANCELLED_FUNDING_COUNT,
39361         sum(pjp.FUNDING_ADJUSTMENT_AMOUNT)         FUNDING_ADJUSTMENT_AMOUNT,
39362         sum(pjp.FUNDING_ADJUSTMENT_COUNT)          FUNDING_ADJUSTMENT_COUNT,
39363         sum(pjp.REVENUE_WRITEOFF)                  REVENUE_WRITEOFF,
39364         sum(pjp.AR_INVOICE_AMOUNT)                 AR_INVOICE_AMOUNT,
39365         sum(pjp.AR_INVOICE_COUNT)                  AR_INVOICE_COUNT,
39366         sum(pjp.AR_CASH_APPLIED_AMOUNT)            AR_CASH_APPLIED_AMOUNT,
39367         sum(pjp.AR_INVOICE_WRITE_OFF_AMOUNT)       AR_INVOICE_WRITE_OFF_AMOUNT,
39368         sum(pjp.AR_INVOICE_WRITEOFF_COUNT)         AR_INVOICE_WRITEOFF_COUNT,
39369         sum(pjp.AR_CREDIT_MEMO_AMOUNT)             AR_CREDIT_MEMO_AMOUNT,
39370         sum(pjp.AR_CREDIT_MEMO_COUNT)              AR_CREDIT_MEMO_COUNT,
39371         sum(pjp.UNBILLED_RECEIVABLES)              UNBILLED_RECEIVABLES,
39372         sum(pjp.UNEARNED_REVENUE)                  UNEARNED_REVENUE,
39373         sum(pjp.AR_UNAPPR_INVOICE_AMOUNT)          AR_UNAPPR_INVOICE_AMOUNT,
39374         sum(pjp.AR_UNAPPR_INVOICE_COUNT)           AR_UNAPPR_INVOICE_COUNT,
39375         sum(pjp.AR_APPR_INVOICE_AMOUNT)            AR_APPR_INVOICE_AMOUNT,
39376         sum(pjp.AR_APPR_INVOICE_COUNT)             AR_APPR_INVOICE_COUNT,
39377         sum(pjp.AR_AMOUNT_DUE)                     AR_AMOUNT_DUE,
39378         sum(pjp.AR_COUNT_DUE)                      AR_COUNT_DUE,
39379         sum(pjp.AR_AMOUNT_OVERDUE)                 AR_AMOUNT_OVERDUE,
39380         sum(pjp.AR_COUNT_OVERDUE)                  AR_COUNT_OVERDUE,
39381         sum(pjp.CUSTOM1)                           CUSTOM1,
39382         sum(pjp.CUSTOM2)                           CUSTOM2,
39383         sum(pjp.CUSTOM3)                           CUSTOM3,
39384         sum(pjp.CUSTOM4)                           CUSTOM4,
39385         sum(pjp.CUSTOM5)                           CUSTOM5,
39386         sum(pjp.CUSTOM6)                           CUSTOM6,
39387         sum(pjp.CUSTOM7)                           CUSTOM7,
39388         sum(pjp.CUSTOM8)                           CUSTOM8,
39389         sum(pjp.CUSTOM9)                           CUSTOM9,
39390         sum(pjp.CUSTOM10)                          CUSTOM10,
39391         sum(pjp.CUSTOM11)                          CUSTOM11,
39392         sum(pjp.CUSTOM12)                          CUSTOM12,
39393         sum(pjp.CUSTOM13)                          CUSTOM13,
39394         sum(pjp.CUSTOM14)                          CUSTOM14,
39395         sum(pjp.CUSTOM15)                          CUSTOM15
39396       from
39397         (
39398         select /*+ ordered index(acr PJI_AC_XBS_ACCUM_F_N1) */
39399                -- get structure level amounts from Reporting Lines
39400           prg.SUP_PROJECT_ID,
39401           prg.SUP_ID,
39402           prg.SUP_EMT_ID,
39403           prg.SUB_EMT_ID,
39404           prg.SUB_ROLLUP_ID,
39405           'ACR'                                    LINE_SOURCE,
39406           prg.SUB_ID,
39407           acr.TIME_ID,
39408           acr.PERIOD_TYPE_ID,
39409           acr.CALENDAR_TYPE,
39410           acr.CURR_RECORD_TYPE_ID,
39411           acr.CURRENCY_CODE,
39412           prg.SIGN * acr.REVENUE                   REVENUE,
39413           prg.SIGN * acr.INITIAL_FUNDING_AMOUNT    INITIAL_FUNDING_AMOUNT,
39414           prg.SIGN * acr.INITIAL_FUNDING_COUNT     INITIAL_FUNDING_COUNT,
39415           prg.SIGN * acr.ADDITIONAL_FUNDING_AMOUNT ADDITIONAL_FUNDING_AMOUNT,
39416           prg.SIGN * acr.ADDITIONAL_FUNDING_COUNT  ADDITIONAL_FUNDING_COUNT,
39417           prg.SIGN * acr.CANCELLED_FUNDING_AMOUNT  CANCELLED_FUNDING_AMOUNT,
39418           prg.SIGN * acr.CANCELLED_FUNDING_COUNT   CANCELLED_FUNDING_COUNT,
39419           prg.SIGN * acr.FUNDING_ADJUSTMENT_AMOUNT FUNDING_ADJUSTMENT_AMOUNT,
39420           prg.SIGN * acr.FUNDING_ADJUSTMENT_COUNT  FUNDING_ADJUSTMENT_COUNT,
39421           prg.SIGN * acr.REVENUE_WRITEOFF          REVENUE_WRITEOFF,
39422           prg.SIGN * acr.AR_INVOICE_AMOUNT         AR_INVOICE_AMOUNT,
39423           prg.SIGN * acr.AR_INVOICE_COUNT          AR_INVOICE_COUNT,
39424           prg.SIGN * acr.AR_CASH_APPLIED_AMOUNT    AR_CASH_APPLIED_AMOUNT,
39425           prg.SIGN *
39426             acr.AR_INVOICE_WRITE_OFF_AMOUNT        AR_INVOICE_WRITE_OFF_AMOUNT,
39427           prg.SIGN * acr.AR_INVOICE_WRITEOFF_COUNT AR_INVOICE_WRITEOFF_COUNT,
39428           prg.SIGN * acr.AR_CREDIT_MEMO_AMOUNT     AR_CREDIT_MEMO_AMOUNT,
39429           prg.SIGN * acr.AR_CREDIT_MEMO_COUNT      AR_CREDIT_MEMO_COUNT,
39430           prg.SIGN * acr.UNBILLED_RECEIVABLES      UNBILLED_RECEIVABLES,
39431           prg.SIGN * acr.UNEARNED_REVENUE          UNEARNED_REVENUE,
39432           prg.SIGN * acr.AR_UNAPPR_INVOICE_AMOUNT  AR_UNAPPR_INVOICE_AMOUNT,
39433           prg.SIGN * acr.AR_UNAPPR_INVOICE_COUNT   AR_UNAPPR_INVOICE_COUNT,
39434           prg.SIGN * acr.AR_APPR_INVOICE_AMOUNT    AR_APPR_INVOICE_AMOUNT,
39435           prg.SIGN * acr.AR_APPR_INVOICE_COUNT     AR_APPR_INVOICE_COUNT,
39436           prg.SIGN * acr.AR_AMOUNT_DUE             AR_AMOUNT_DUE,
39437           prg.SIGN * acr.AR_COUNT_DUE              AR_COUNT_DUE,
39438           prg.SIGN * acr.AR_AMOUNT_OVERDUE         AR_AMOUNT_OVERDUE,
39439           prg.SIGN * acr.AR_COUNT_OVERDUE          AR_COUNT_OVERDUE,
39440           prg.SIGN * acr.CUSTOM1                   CUSTOM1,
39441           prg.SIGN * acr.CUSTOM2                   CUSTOM2,
39442           prg.SIGN * acr.CUSTOM3                   CUSTOM3,
39443           prg.SIGN * acr.CUSTOM4                   CUSTOM4,
39444           prg.SIGN * acr.CUSTOM5                   CUSTOM5,
39445           prg.SIGN * acr.CUSTOM6                   CUSTOM6,
39446           prg.SIGN * acr.CUSTOM7                   CUSTOM7,
39447           prg.SIGN * acr.CUSTOM8                   CUSTOM8,
39448           prg.SIGN * acr.CUSTOM9                   CUSTOM9,
39449           prg.SIGN * acr.CUSTOM10                  CUSTOM10,
39450           prg.SIGN * acr.CUSTOM11                  CUSTOM11,
39451           prg.SIGN * acr.CUSTOM12                  CUSTOM12,
39452           prg.SIGN * acr.CUSTOM13                  CUSTOM13,
39453           prg.SIGN * acr.CUSTOM14                  CUSTOM14,
39454           prg.SIGN * acr.CUSTOM15                  CUSTOM15
39455         from
39456           PJI_XBS_DENORM_DELTA prg,
39457           PA_PROJ_ELEMENTS     prj_emt,
39458           PJI_PJP_WBS_HEADER   wbs_hdr,
39459           PJI_AC_XBS_ACCUM_F   acr
39460         where
39461           prg.WORKER_ID           =  p_worker_id        and
39462           prg.STRUCT_TYPE         =  'PRG'              and
39463           prg.RELATIONSHIP_TYPE   =  'LF'               and
39464           prg.SUP_LEVEL           =  l_level            and
39465           nvl(prg.SUB_ROLLUP_ID,
39466               prg.SUP_EMT_ID)     <> prg.SUP_EMT_ID     and
39467           acr.WBS_ROLLUP_FLAG     in ('Y', 'N')         and
39468           acr.PRG_ROLLUP_FLAG     in ('Y', 'N')         and
39469           acr.PROJECT_ID          =  prj_emt.PROJECT_ID and
39470           acr.PROJECT_ELEMENT_ID  =  prg.SUB_EMT_ID     and
39471           prj_emt.PROJ_ELEMENT_ID =  prg.SUB_EMT_ID     and
39472           wbs_hdr.PROJECT_ID      =  prj_emt.PROJECT_ID and
39473           wbs_hdr.PLAN_VERSION_ID =  -1
39474         union all
39475         select /*+ ordered parallel(pjp1) */        -- changed for bug 5927368
39476                -- get program rollup amounts
39477           prg.SUP_PROJECT_ID,
39478           prg.SUP_ID,
39479           prg.SUP_EMT_ID,
39480           prg.SUB_EMT_ID,
39481           prg.SUB_ROLLUP_ID,
39482           'PJP1'                                   LINE_SOURCE,
39483           prg.SUB_ID,
39484           pjp1.TIME_ID,
39485           pjp1.PERIOD_TYPE_ID,
39486           pjp1.CALENDAR_TYPE,
39487           pjp1.CURR_RECORD_TYPE_ID,
39488           pjp1.CURRENCY_CODE,
39489           pjp1.REVENUE,
39490           pjp1.INITIAL_FUNDING_AMOUNT,
39491           pjp1.INITIAL_FUNDING_COUNT,
39492           pjp1.ADDITIONAL_FUNDING_AMOUNT,
39493           pjp1.ADDITIONAL_FUNDING_COUNT,
39494           pjp1.CANCELLED_FUNDING_AMOUNT,
39495           pjp1.CANCELLED_FUNDING_COUNT,
39496           pjp1.FUNDING_ADJUSTMENT_AMOUNT,
39497           pjp1.FUNDING_ADJUSTMENT_COUNT,
39498           pjp1.REVENUE_WRITEOFF,
39499           pjp1.AR_INVOICE_AMOUNT,
39500           pjp1.AR_INVOICE_COUNT,
39501           pjp1.AR_CASH_APPLIED_AMOUNT,
39502           pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
39503           pjp1.AR_INVOICE_WRITEOFF_COUNT,
39504           pjp1.AR_CREDIT_MEMO_AMOUNT,
39505           pjp1.AR_CREDIT_MEMO_COUNT,
39506           pjp1.UNBILLED_RECEIVABLES,
39507           pjp1.UNEARNED_REVENUE,
39508           pjp1.AR_UNAPPR_INVOICE_AMOUNT,
39509           pjp1.AR_UNAPPR_INVOICE_COUNT,
39510           pjp1.AR_APPR_INVOICE_AMOUNT,
39511           pjp1.AR_APPR_INVOICE_COUNT,
39512           pjp1.AR_AMOUNT_DUE,
39513           pjp1.AR_COUNT_DUE,
39514           pjp1.AR_AMOUNT_OVERDUE,
39515           pjp1.AR_COUNT_OVERDUE,
39516           pjp1.CUSTOM1,
39517           pjp1.CUSTOM2,
39518           pjp1.CUSTOM3,
39519           pjp1.CUSTOM4,
39520           pjp1.CUSTOM5,
39521           pjp1.CUSTOM6,
39522           pjp1.CUSTOM7,
39523           pjp1.CUSTOM8,
39524           pjp1.CUSTOM9,
39525           pjp1.CUSTOM10,
39526           pjp1.CUSTOM11,
39527           pjp1.CUSTOM12,
39528           pjp1.CUSTOM13,
39529           pjp1.CUSTOM14,
39530           pjp1.CUSTOM15
39531         from
39532           PJI_AC_AGGR_PJP1     pjp1,
39533           PJI_PJP_WBS_HEADER   wbs_hdr,
39534           PA_PROJ_ELEMENTS     prj_emt,
39535           PA_XBS_DENORM        prg,
39536           PJI_XBS_DENORM_DELTA prg_delta
39537         where
39538           prg.STRUCT_TYPE         =  'PRG'                           and
39539           prg.SUP_LEVEL           =  l_level                         and
39540           nvl(prg.SUB_ROLLUP_ID,
39541               prg.SUP_EMT_ID)     <> prg.SUP_EMT_ID                  and
39542           prg.RELATIONSHIP_TYPE   =  'LF'                            and
39543           p_worker_id             =  prg_delta.WORKER_ID         (+) and
39544           prg.STRUCT_TYPE         =  prg_delta.STRUCT_TYPE       (+) and
39545           prg.SUP_PROJECT_ID      =  prg_delta.SUP_PROJECT_ID    (+) and
39546           prg.SUP_LEVEL           =  prg_delta.SUP_LEVEL         (+) and
39547           prg.SUP_ID              =  prg_delta.SUP_ID            (+) and
39548           prg.SUB_LEVEL           =  prg_delta.SUB_LEVEL         (+) and
39549           prg.SUB_ID              =  prg_delta.SUB_ID            (+) and
39550           prg.RELATIONSHIP_TYPE   =  prg_delta.RELATIONSHIP_TYPE (+) and
39551           1                       =  prg_delta.SIGN              (+) and
39552           (prg_delta.SUP_PROJECT_ID is not null or
39553            (prg_delta.SUP_PROJECT_ID is null and
39554             pjp1.RECORD_TYPE = 'P'))                                 and
39555           pjp1.WORKER_ID          =  p_worker_id                     and
39556           pjp1.PRG_LEVEL          in (0, prg.SUB_LEVEL)              and
39557           pjp1.WBS_ROLLUP_FLAG    in ('Y', 'N')                      and
39558           pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                      and
39559           pjp1.PROJECT_ID         =  prj_emt.PROJECT_ID              and
39560           pjp1.PROJECT_ELEMENT_ID =  prg.SUB_EMT_ID                  and
39561           prg.STRUCT_VERSION_ID   is null                            and
39562           prj_emt.OBJECT_TYPE     =  'PA_STRUCTURES'                 and
39563           prj_emt.PROJ_ELEMENT_ID =  prg.SUB_EMT_ID                  and
39564           wbs_hdr.PROJECT_ID      =  prj_emt.PROJECT_ID              and
39565           wbs_hdr.WBS_VERSION_ID  =  prg.SUB_ID                      and
39566           wbs_hdr.PROJECT_ID      =  pjp1.PROJECT_ID                 and
39567           wbs_hdr.PLAN_VERSION_ID =  -1
39568         )                          pjp,
39569         PJI_PJP_PROJ_BATCH_MAP     map,
39570         PA_PROJ_WORKPLAN_ATTR      sup_wpa,
39571         PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
39572         PA_XBS_DENORM              wbs,
39573         (
39574           select 1     WBS_SUP_LEVEL,
39575                  'PRJ' INVERT_ID
39576           from   DUAL
39577           union all
39578           select 1     WBS_SUP_LEVEL,
39579                  'WBS' INVERT_ID
39580           from   DUAL
39581         ) top_slice
39582       where
39583         map.WORKER_ID         =  p_worker_id                        and
39584         map.PROJECT_ID        = pjp.SUP_PROJECT_ID                  and
39585         pjp.SUP_EMT_ID        = sup_wpa.PROJ_ELEMENT_ID             and
39586         pjp.SUP_PROJECT_ID    = sup_fin_ver.PROJECT_ID          (+) and
39587         pjp.SUP_ID            = sup_fin_ver.ELEMENT_VERSION_ID  (+) and
39588         'STRUCTURE_WORKING'   = sup_fin_ver.STATUS_CODE         (+) and
39589         (sup_fin_ver.PROJECT_ID is not null or
39590          sup_wpa.WP_ENABLE_VERSION_FLAG = 'N')                      and
39591         wbs.STRUCT_TYPE       =  'WBS'                              and
39592         wbs.SUP_PROJECT_ID    =  map.PROJECT_ID                     and
39593         wbs.SUP_PROJECT_ID    =  pjp.SUP_PROJECT_ID                 and
39594         wbs.STRUCT_VERSION_ID =  pjp.SUP_ID                         and
39595         wbs.SUB_EMT_ID        =  pjp.SUB_ROLLUP_ID                  and
39596         wbs.SUP_LEVEL         =  top_slice.WBS_SUP_LEVEL        (+)
39597       group by
39598         pjp.SUP_PROJECT_ID,
39599         map.PROJECT_ORG_ID,
39600         map.PROJECT_ORGANIZATION_ID,
39601         decode(top_slice.INVERT_ID,
39602                'PRJ', pjp.SUP_EMT_ID,
39603                wbs.SUP_EMT_ID),
39604         pjp.TIME_ID,
39605         pjp.PERIOD_TYPE_ID,
39606         pjp.CALENDAR_TYPE,
39607         decode(top_slice.INVERT_ID,
39608                'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
39609                                   wbs.SUP_EMT_ID,
39610                                   'N', 'Y')),
39611         pjp.CURR_RECORD_TYPE_ID,
39612         pjp.CURRENCY_CODE;
39613     elsif (p_worker_id =8) then
39614       -- Query for Partition 8
39615 
39616       insert /*+ parallel(PJI_AC_AGGR_PJP1) */
39617                  into PJI_AC_AGGR_PJP1 partition(P8)
39618       (
39619         WORKER_ID,
39620         RECORD_TYPE,
39621         PRG_LEVEL,
39622         PROJECT_ID,
39623         PROJECT_ORG_ID,
39624         PROJECT_ORGANIZATION_ID,
39625         PROJECT_ELEMENT_ID,
39626         TIME_ID,
39627         PERIOD_TYPE_ID,
39628         CALENDAR_TYPE,
39629         WBS_ROLLUP_FLAG,
39630         PRG_ROLLUP_FLAG,
39631         CURR_RECORD_TYPE_ID,
39632         CURRENCY_CODE,
39633         REVENUE,
39634         INITIAL_FUNDING_AMOUNT,
39635         INITIAL_FUNDING_COUNT,
39636         ADDITIONAL_FUNDING_AMOUNT,
39637         ADDITIONAL_FUNDING_COUNT,
39638         CANCELLED_FUNDING_AMOUNT,
39639         CANCELLED_FUNDING_COUNT,
39640         FUNDING_ADJUSTMENT_AMOUNT,
39641         FUNDING_ADJUSTMENT_COUNT,
39642         REVENUE_WRITEOFF,
39643         AR_INVOICE_AMOUNT,
39644         AR_INVOICE_COUNT,
39645         AR_CASH_APPLIED_AMOUNT,
39646         AR_INVOICE_WRITE_OFF_AMOUNT,
39647         AR_INVOICE_WRITEOFF_COUNT,
39648         AR_CREDIT_MEMO_AMOUNT,
39649         AR_CREDIT_MEMO_COUNT,
39650         UNBILLED_RECEIVABLES,
39651         UNEARNED_REVENUE,
39652         AR_UNAPPR_INVOICE_AMOUNT,
39653         AR_UNAPPR_INVOICE_COUNT,
39654         AR_APPR_INVOICE_AMOUNT,
39655         AR_APPR_INVOICE_COUNT,
39656         AR_AMOUNT_DUE,
39657         AR_COUNT_DUE,
39658         AR_AMOUNT_OVERDUE,
39659         AR_COUNT_OVERDUE,
39660         CUSTOM1,
39661         CUSTOM2,
39662         CUSTOM3,
39663         CUSTOM4,
39664         CUSTOM5,
39665         CUSTOM6,
39666         CUSTOM7,
39667         CUSTOM8,
39668         CUSTOM9,
39669         CUSTOM10,
39670         CUSTOM11,
39671         CUSTOM12,
39672         CUSTOM13,
39673         CUSTOM14,
39674         CUSTOM15
39675       )
39676       select /*+ no_merge(pjp) */
39677         p_worker_id                                WORKER_ID,
39678         'P'                                        RECORD_TYPE,
39679         l_level                                    PRG_LEVEL,
39680         pjp.SUP_PROJECT_ID                         PROJECT_ID,
39681         map.PROJECT_ORG_ID,
39682         map.PROJECT_ORGANIZATION_ID,
39683         decode(top_slice.INVERT_ID,
39684                'PRJ', pjp.SUP_EMT_ID,
39685                wbs.SUP_EMT_ID)                     PROJECT_ELEMENT_ID,
39686         pjp.TIME_ID,
39687         pjp.PERIOD_TYPE_ID,
39688         pjp.CALENDAR_TYPE,
39689         decode(top_slice.INVERT_ID,
39690                'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
39691                                   wbs.SUP_EMT_ID,
39692                                   'N', 'Y'))       WBS_ROLLUP_FLAG,
39693         'Y'                                        PRG_ROLLUP_FLAG,
39694         pjp.CURR_RECORD_TYPE_ID,
39695         pjp.CURRENCY_CODE,
39696         sum(pjp.REVENUE)                           REVENUE,
39697         sum(pjp.INITIAL_FUNDING_AMOUNT)            INITIAL_FUNDING_AMOUNT,
39698         sum(pjp.INITIAL_FUNDING_COUNT)             INITIAL_FUNDING_COUNT,
39699         sum(pjp.ADDITIONAL_FUNDING_AMOUNT)         ADDITIONAL_FUNDING_AMOUNT,
39700         sum(pjp.ADDITIONAL_FUNDING_COUNT)          ADDITIONAL_FUNDING_COUNT,
39701         sum(pjp.CANCELLED_FUNDING_AMOUNT)          CANCELLED_FUNDING_AMOUNT,
39702         sum(pjp.CANCELLED_FUNDING_COUNT)           CANCELLED_FUNDING_COUNT,
39703         sum(pjp.FUNDING_ADJUSTMENT_AMOUNT)         FUNDING_ADJUSTMENT_AMOUNT,
39704         sum(pjp.FUNDING_ADJUSTMENT_COUNT)          FUNDING_ADJUSTMENT_COUNT,
39705         sum(pjp.REVENUE_WRITEOFF)                  REVENUE_WRITEOFF,
39706         sum(pjp.AR_INVOICE_AMOUNT)                 AR_INVOICE_AMOUNT,
39707         sum(pjp.AR_INVOICE_COUNT)                  AR_INVOICE_COUNT,
39708         sum(pjp.AR_CASH_APPLIED_AMOUNT)            AR_CASH_APPLIED_AMOUNT,
39709         sum(pjp.AR_INVOICE_WRITE_OFF_AMOUNT)       AR_INVOICE_WRITE_OFF_AMOUNT,
39710         sum(pjp.AR_INVOICE_WRITEOFF_COUNT)         AR_INVOICE_WRITEOFF_COUNT,
39711         sum(pjp.AR_CREDIT_MEMO_AMOUNT)             AR_CREDIT_MEMO_AMOUNT,
39712         sum(pjp.AR_CREDIT_MEMO_COUNT)              AR_CREDIT_MEMO_COUNT,
39713         sum(pjp.UNBILLED_RECEIVABLES)              UNBILLED_RECEIVABLES,
39714         sum(pjp.UNEARNED_REVENUE)                  UNEARNED_REVENUE,
39715         sum(pjp.AR_UNAPPR_INVOICE_AMOUNT)          AR_UNAPPR_INVOICE_AMOUNT,
39716         sum(pjp.AR_UNAPPR_INVOICE_COUNT)           AR_UNAPPR_INVOICE_COUNT,
39717         sum(pjp.AR_APPR_INVOICE_AMOUNT)            AR_APPR_INVOICE_AMOUNT,
39718         sum(pjp.AR_APPR_INVOICE_COUNT)             AR_APPR_INVOICE_COUNT,
39719         sum(pjp.AR_AMOUNT_DUE)                     AR_AMOUNT_DUE,
39720         sum(pjp.AR_COUNT_DUE)                      AR_COUNT_DUE,
39721         sum(pjp.AR_AMOUNT_OVERDUE)                 AR_AMOUNT_OVERDUE,
39722         sum(pjp.AR_COUNT_OVERDUE)                  AR_COUNT_OVERDUE,
39723         sum(pjp.CUSTOM1)                           CUSTOM1,
39724         sum(pjp.CUSTOM2)                           CUSTOM2,
39725         sum(pjp.CUSTOM3)                           CUSTOM3,
39726         sum(pjp.CUSTOM4)                           CUSTOM4,
39727         sum(pjp.CUSTOM5)                           CUSTOM5,
39728         sum(pjp.CUSTOM6)                           CUSTOM6,
39729         sum(pjp.CUSTOM7)                           CUSTOM7,
39730         sum(pjp.CUSTOM8)                           CUSTOM8,
39731         sum(pjp.CUSTOM9)                           CUSTOM9,
39732         sum(pjp.CUSTOM10)                          CUSTOM10,
39733         sum(pjp.CUSTOM11)                          CUSTOM11,
39734         sum(pjp.CUSTOM12)                          CUSTOM12,
39735         sum(pjp.CUSTOM13)                          CUSTOM13,
39736         sum(pjp.CUSTOM14)                          CUSTOM14,
39737         sum(pjp.CUSTOM15)                          CUSTOM15
39738       from
39739         (
39740         select /*+ ordered index(acr PJI_AC_XBS_ACCUM_F_N1) */
39741                -- get structure level amounts from Reporting Lines
39742           prg.SUP_PROJECT_ID,
39743           prg.SUP_ID,
39744           prg.SUP_EMT_ID,
39745           prg.SUB_EMT_ID,
39746           prg.SUB_ROLLUP_ID,
39747           'ACR'                                    LINE_SOURCE,
39748           prg.SUB_ID,
39749           acr.TIME_ID,
39750           acr.PERIOD_TYPE_ID,
39751           acr.CALENDAR_TYPE,
39752           acr.CURR_RECORD_TYPE_ID,
39753           acr.CURRENCY_CODE,
39754           prg.SIGN * acr.REVENUE                   REVENUE,
39755           prg.SIGN * acr.INITIAL_FUNDING_AMOUNT    INITIAL_FUNDING_AMOUNT,
39756           prg.SIGN * acr.INITIAL_FUNDING_COUNT     INITIAL_FUNDING_COUNT,
39757           prg.SIGN * acr.ADDITIONAL_FUNDING_AMOUNT ADDITIONAL_FUNDING_AMOUNT,
39758           prg.SIGN * acr.ADDITIONAL_FUNDING_COUNT  ADDITIONAL_FUNDING_COUNT,
39759           prg.SIGN * acr.CANCELLED_FUNDING_AMOUNT  CANCELLED_FUNDING_AMOUNT,
39760           prg.SIGN * acr.CANCELLED_FUNDING_COUNT   CANCELLED_FUNDING_COUNT,
39761           prg.SIGN * acr.FUNDING_ADJUSTMENT_AMOUNT FUNDING_ADJUSTMENT_AMOUNT,
39762           prg.SIGN * acr.FUNDING_ADJUSTMENT_COUNT  FUNDING_ADJUSTMENT_COUNT,
39763           prg.SIGN * acr.REVENUE_WRITEOFF          REVENUE_WRITEOFF,
39764           prg.SIGN * acr.AR_INVOICE_AMOUNT         AR_INVOICE_AMOUNT,
39765           prg.SIGN * acr.AR_INVOICE_COUNT          AR_INVOICE_COUNT,
39766           prg.SIGN * acr.AR_CASH_APPLIED_AMOUNT    AR_CASH_APPLIED_AMOUNT,
39767           prg.SIGN *
39768             acr.AR_INVOICE_WRITE_OFF_AMOUNT        AR_INVOICE_WRITE_OFF_AMOUNT,
39769           prg.SIGN * acr.AR_INVOICE_WRITEOFF_COUNT AR_INVOICE_WRITEOFF_COUNT,
39770           prg.SIGN * acr.AR_CREDIT_MEMO_AMOUNT     AR_CREDIT_MEMO_AMOUNT,
39771           prg.SIGN * acr.AR_CREDIT_MEMO_COUNT      AR_CREDIT_MEMO_COUNT,
39772           prg.SIGN * acr.UNBILLED_RECEIVABLES      UNBILLED_RECEIVABLES,
39773           prg.SIGN * acr.UNEARNED_REVENUE          UNEARNED_REVENUE,
39774           prg.SIGN * acr.AR_UNAPPR_INVOICE_AMOUNT  AR_UNAPPR_INVOICE_AMOUNT,
39775           prg.SIGN * acr.AR_UNAPPR_INVOICE_COUNT   AR_UNAPPR_INVOICE_COUNT,
39776           prg.SIGN * acr.AR_APPR_INVOICE_AMOUNT    AR_APPR_INVOICE_AMOUNT,
39777           prg.SIGN * acr.AR_APPR_INVOICE_COUNT     AR_APPR_INVOICE_COUNT,
39778           prg.SIGN * acr.AR_AMOUNT_DUE             AR_AMOUNT_DUE,
39779           prg.SIGN * acr.AR_COUNT_DUE              AR_COUNT_DUE,
39780           prg.SIGN * acr.AR_AMOUNT_OVERDUE         AR_AMOUNT_OVERDUE,
39781           prg.SIGN * acr.AR_COUNT_OVERDUE          AR_COUNT_OVERDUE,
39782           prg.SIGN * acr.CUSTOM1                   CUSTOM1,
39783           prg.SIGN * acr.CUSTOM2                   CUSTOM2,
39784           prg.SIGN * acr.CUSTOM3                   CUSTOM3,
39785           prg.SIGN * acr.CUSTOM4                   CUSTOM4,
39786           prg.SIGN * acr.CUSTOM5                   CUSTOM5,
39787           prg.SIGN * acr.CUSTOM6                   CUSTOM6,
39788           prg.SIGN * acr.CUSTOM7                   CUSTOM7,
39789           prg.SIGN * acr.CUSTOM8                   CUSTOM8,
39790           prg.SIGN * acr.CUSTOM9                   CUSTOM9,
39791           prg.SIGN * acr.CUSTOM10                  CUSTOM10,
39792           prg.SIGN * acr.CUSTOM11                  CUSTOM11,
39793           prg.SIGN * acr.CUSTOM12                  CUSTOM12,
39794           prg.SIGN * acr.CUSTOM13                  CUSTOM13,
39795           prg.SIGN * acr.CUSTOM14                  CUSTOM14,
39796           prg.SIGN * acr.CUSTOM15                  CUSTOM15
39797         from
39798           PJI_XBS_DENORM_DELTA prg,
39799           PA_PROJ_ELEMENTS     prj_emt,
39800           PJI_PJP_WBS_HEADER   wbs_hdr,
39801           PJI_AC_XBS_ACCUM_F   acr
39802         where
39803           prg.WORKER_ID           =  p_worker_id        and
39804           prg.STRUCT_TYPE         =  'PRG'              and
39805           prg.RELATIONSHIP_TYPE   =  'LF'               and
39806           prg.SUP_LEVEL           =  l_level            and
39807           nvl(prg.SUB_ROLLUP_ID,
39808               prg.SUP_EMT_ID)     <> prg.SUP_EMT_ID     and
39809           acr.WBS_ROLLUP_FLAG     in ('Y', 'N')         and
39810           acr.PRG_ROLLUP_FLAG     in ('Y', 'N')         and
39811           acr.PROJECT_ID          =  prj_emt.PROJECT_ID and
39812           acr.PROJECT_ELEMENT_ID  =  prg.SUB_EMT_ID     and
39813           prj_emt.PROJ_ELEMENT_ID =  prg.SUB_EMT_ID     and
39814           wbs_hdr.PROJECT_ID      =  prj_emt.PROJECT_ID and
39815           wbs_hdr.PLAN_VERSION_ID =  -1
39816         union all
39817         select /*+ ordered parallel(pjp1) */        -- changed for bug 5927368
39818                -- get program rollup amounts
39819           prg.SUP_PROJECT_ID,
39820           prg.SUP_ID,
39821           prg.SUP_EMT_ID,
39822           prg.SUB_EMT_ID,
39823           prg.SUB_ROLLUP_ID,
39824           'PJP1'                                   LINE_SOURCE,
39825           prg.SUB_ID,
39826           pjp1.TIME_ID,
39827           pjp1.PERIOD_TYPE_ID,
39828           pjp1.CALENDAR_TYPE,
39829           pjp1.CURR_RECORD_TYPE_ID,
39830           pjp1.CURRENCY_CODE,
39831           pjp1.REVENUE,
39832           pjp1.INITIAL_FUNDING_AMOUNT,
39833           pjp1.INITIAL_FUNDING_COUNT,
39834           pjp1.ADDITIONAL_FUNDING_AMOUNT,
39835           pjp1.ADDITIONAL_FUNDING_COUNT,
39836           pjp1.CANCELLED_FUNDING_AMOUNT,
39837           pjp1.CANCELLED_FUNDING_COUNT,
39838           pjp1.FUNDING_ADJUSTMENT_AMOUNT,
39839           pjp1.FUNDING_ADJUSTMENT_COUNT,
39840           pjp1.REVENUE_WRITEOFF,
39841           pjp1.AR_INVOICE_AMOUNT,
39842           pjp1.AR_INVOICE_COUNT,
39843           pjp1.AR_CASH_APPLIED_AMOUNT,
39844           pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
39845           pjp1.AR_INVOICE_WRITEOFF_COUNT,
39846           pjp1.AR_CREDIT_MEMO_AMOUNT,
39847           pjp1.AR_CREDIT_MEMO_COUNT,
39848           pjp1.UNBILLED_RECEIVABLES,
39849           pjp1.UNEARNED_REVENUE,
39850           pjp1.AR_UNAPPR_INVOICE_AMOUNT,
39851           pjp1.AR_UNAPPR_INVOICE_COUNT,
39852           pjp1.AR_APPR_INVOICE_AMOUNT,
39853           pjp1.AR_APPR_INVOICE_COUNT,
39854           pjp1.AR_AMOUNT_DUE,
39855           pjp1.AR_COUNT_DUE,
39856           pjp1.AR_AMOUNT_OVERDUE,
39857           pjp1.AR_COUNT_OVERDUE,
39858           pjp1.CUSTOM1,
39859           pjp1.CUSTOM2,
39860           pjp1.CUSTOM3,
39861           pjp1.CUSTOM4,
39862           pjp1.CUSTOM5,
39863           pjp1.CUSTOM6,
39864           pjp1.CUSTOM7,
39865           pjp1.CUSTOM8,
39866           pjp1.CUSTOM9,
39867           pjp1.CUSTOM10,
39868           pjp1.CUSTOM11,
39869           pjp1.CUSTOM12,
39870           pjp1.CUSTOM13,
39871           pjp1.CUSTOM14,
39872           pjp1.CUSTOM15
39873         from
39874           PJI_AC_AGGR_PJP1     pjp1,
39875           PJI_PJP_WBS_HEADER   wbs_hdr,
39876           PA_PROJ_ELEMENTS     prj_emt,
39877           PA_XBS_DENORM        prg,
39878           PJI_XBS_DENORM_DELTA prg_delta
39879         where
39880           prg.STRUCT_TYPE         =  'PRG'                           and
39881           prg.SUP_LEVEL           =  l_level                         and
39882           nvl(prg.SUB_ROLLUP_ID,
39883               prg.SUP_EMT_ID)     <> prg.SUP_EMT_ID                  and
39884           prg.RELATIONSHIP_TYPE   =  'LF'                            and
39885           p_worker_id             =  prg_delta.WORKER_ID         (+) and
39886           prg.STRUCT_TYPE         =  prg_delta.STRUCT_TYPE       (+) and
39887           prg.SUP_PROJECT_ID      =  prg_delta.SUP_PROJECT_ID    (+) and
39888           prg.SUP_LEVEL           =  prg_delta.SUP_LEVEL         (+) and
39889           prg.SUP_ID              =  prg_delta.SUP_ID            (+) and
39890           prg.SUB_LEVEL           =  prg_delta.SUB_LEVEL         (+) and
39891           prg.SUB_ID              =  prg_delta.SUB_ID            (+) and
39892           prg.RELATIONSHIP_TYPE   =  prg_delta.RELATIONSHIP_TYPE (+) and
39893           1                       =  prg_delta.SIGN              (+) and
39894           (prg_delta.SUP_PROJECT_ID is not null or
39895            (prg_delta.SUP_PROJECT_ID is null and
39896             pjp1.RECORD_TYPE = 'P'))                                 and
39897           pjp1.WORKER_ID          =  p_worker_id                     and
39898           pjp1.PRG_LEVEL          in (0, prg.SUB_LEVEL)              and
39899           pjp1.WBS_ROLLUP_FLAG    in ('Y', 'N')                      and
39900           pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                      and
39901           pjp1.PROJECT_ID         =  prj_emt.PROJECT_ID              and
39902           pjp1.PROJECT_ELEMENT_ID =  prg.SUB_EMT_ID                  and
39903           prg.STRUCT_VERSION_ID   is null                            and
39904           prj_emt.OBJECT_TYPE     =  'PA_STRUCTURES'                 and
39905           prj_emt.PROJ_ELEMENT_ID =  prg.SUB_EMT_ID                  and
39906           wbs_hdr.PROJECT_ID      =  prj_emt.PROJECT_ID              and
39907           wbs_hdr.WBS_VERSION_ID  =  prg.SUB_ID                      and
39908           wbs_hdr.PROJECT_ID      =  pjp1.PROJECT_ID                 and
39909           wbs_hdr.PLAN_VERSION_ID =  -1
39910         )                          pjp,
39911         PJI_PJP_PROJ_BATCH_MAP     map,
39912         PA_PROJ_WORKPLAN_ATTR      sup_wpa,
39913         PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
39914         PA_XBS_DENORM              wbs,
39915         (
39916           select 1     WBS_SUP_LEVEL,
39917                  'PRJ' INVERT_ID
39918           from   DUAL
39919           union all
39920           select 1     WBS_SUP_LEVEL,
39921                  'WBS' INVERT_ID
39922           from   DUAL
39923         ) top_slice
39924       where
39925         map.WORKER_ID         =  p_worker_id                        and
39926         map.PROJECT_ID        = pjp.SUP_PROJECT_ID                  and
39927         pjp.SUP_EMT_ID        = sup_wpa.PROJ_ELEMENT_ID             and
39928         pjp.SUP_PROJECT_ID    = sup_fin_ver.PROJECT_ID          (+) and
39929         pjp.SUP_ID            = sup_fin_ver.ELEMENT_VERSION_ID  (+) and
39930         'STRUCTURE_WORKING'   = sup_fin_ver.STATUS_CODE         (+) and
39931         (sup_fin_ver.PROJECT_ID is not null or
39932          sup_wpa.WP_ENABLE_VERSION_FLAG = 'N')                      and
39933         wbs.STRUCT_TYPE       =  'WBS'                              and
39934         wbs.SUP_PROJECT_ID    =  map.PROJECT_ID                     and
39935         wbs.SUP_PROJECT_ID    =  pjp.SUP_PROJECT_ID                 and
39936         wbs.STRUCT_VERSION_ID =  pjp.SUP_ID                         and
39937         wbs.SUB_EMT_ID        =  pjp.SUB_ROLLUP_ID                  and
39938         wbs.SUP_LEVEL         =  top_slice.WBS_SUP_LEVEL        (+)
39939       group by
39940         pjp.SUP_PROJECT_ID,
39941         map.PROJECT_ORG_ID,
39942         map.PROJECT_ORGANIZATION_ID,
39943         decode(top_slice.INVERT_ID,
39944                'PRJ', pjp.SUP_EMT_ID,
39945                wbs.SUP_EMT_ID),
39946         pjp.TIME_ID,
39947         pjp.PERIOD_TYPE_ID,
39948         pjp.CALENDAR_TYPE,
39949         decode(top_slice.INVERT_ID,
39950                'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
39951                                   wbs.SUP_EMT_ID,
39952                                   'N', 'Y')),
39953         pjp.CURR_RECORD_TYPE_ID,
39954         pjp.CURRENCY_CODE;
39955     elsif (p_worker_id =9) then
39956       -- Query for Partition 9
39957 
39958       insert /*+ parallel(PJI_AC_AGGR_PJP1) */
39959                  into PJI_AC_AGGR_PJP1 partition(P9)
39960       (
39961         WORKER_ID,
39962         RECORD_TYPE,
39963         PRG_LEVEL,
39964         PROJECT_ID,
39965         PROJECT_ORG_ID,
39966         PROJECT_ORGANIZATION_ID,
39967         PROJECT_ELEMENT_ID,
39968         TIME_ID,
39969         PERIOD_TYPE_ID,
39970         CALENDAR_TYPE,
39971         WBS_ROLLUP_FLAG,
39972         PRG_ROLLUP_FLAG,
39973         CURR_RECORD_TYPE_ID,
39974         CURRENCY_CODE,
39975         REVENUE,
39976         INITIAL_FUNDING_AMOUNT,
39977         INITIAL_FUNDING_COUNT,
39978         ADDITIONAL_FUNDING_AMOUNT,
39979         ADDITIONAL_FUNDING_COUNT,
39980         CANCELLED_FUNDING_AMOUNT,
39981         CANCELLED_FUNDING_COUNT,
39982         FUNDING_ADJUSTMENT_AMOUNT,
39983         FUNDING_ADJUSTMENT_COUNT,
39984         REVENUE_WRITEOFF,
39985         AR_INVOICE_AMOUNT,
39986         AR_INVOICE_COUNT,
39987         AR_CASH_APPLIED_AMOUNT,
39988         AR_INVOICE_WRITE_OFF_AMOUNT,
39989         AR_INVOICE_WRITEOFF_COUNT,
39990         AR_CREDIT_MEMO_AMOUNT,
39991         AR_CREDIT_MEMO_COUNT,
39992         UNBILLED_RECEIVABLES,
39993         UNEARNED_REVENUE,
39994         AR_UNAPPR_INVOICE_AMOUNT,
39995         AR_UNAPPR_INVOICE_COUNT,
39996         AR_APPR_INVOICE_AMOUNT,
39997         AR_APPR_INVOICE_COUNT,
39998         AR_AMOUNT_DUE,
39999         AR_COUNT_DUE,
40000         AR_AMOUNT_OVERDUE,
40001         AR_COUNT_OVERDUE,
40002         CUSTOM1,
40003         CUSTOM2,
40004         CUSTOM3,
40005         CUSTOM4,
40006         CUSTOM5,
40007         CUSTOM6,
40008         CUSTOM7,
40009         CUSTOM8,
40010         CUSTOM9,
40011         CUSTOM10,
40012         CUSTOM11,
40013         CUSTOM12,
40014         CUSTOM13,
40015         CUSTOM14,
40016         CUSTOM15
40017       )
40018       select /*+ no_merge(pjp) */
40019         p_worker_id                                WORKER_ID,
40020         'P'                                        RECORD_TYPE,
40021         l_level                                    PRG_LEVEL,
40022         pjp.SUP_PROJECT_ID                         PROJECT_ID,
40023         map.PROJECT_ORG_ID,
40024         map.PROJECT_ORGANIZATION_ID,
40025         decode(top_slice.INVERT_ID,
40026                'PRJ', pjp.SUP_EMT_ID,
40027                wbs.SUP_EMT_ID)                     PROJECT_ELEMENT_ID,
40028         pjp.TIME_ID,
40029         pjp.PERIOD_TYPE_ID,
40030         pjp.CALENDAR_TYPE,
40031         decode(top_slice.INVERT_ID,
40032                'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
40033                                   wbs.SUP_EMT_ID,
40034                                   'N', 'Y'))       WBS_ROLLUP_FLAG,
40035         'Y'                                        PRG_ROLLUP_FLAG,
40036         pjp.CURR_RECORD_TYPE_ID,
40037         pjp.CURRENCY_CODE,
40038         sum(pjp.REVENUE)                           REVENUE,
40039         sum(pjp.INITIAL_FUNDING_AMOUNT)            INITIAL_FUNDING_AMOUNT,
40040         sum(pjp.INITIAL_FUNDING_COUNT)             INITIAL_FUNDING_COUNT,
40041         sum(pjp.ADDITIONAL_FUNDING_AMOUNT)         ADDITIONAL_FUNDING_AMOUNT,
40042         sum(pjp.ADDITIONAL_FUNDING_COUNT)          ADDITIONAL_FUNDING_COUNT,
40043         sum(pjp.CANCELLED_FUNDING_AMOUNT)          CANCELLED_FUNDING_AMOUNT,
40044         sum(pjp.CANCELLED_FUNDING_COUNT)           CANCELLED_FUNDING_COUNT,
40045         sum(pjp.FUNDING_ADJUSTMENT_AMOUNT)         FUNDING_ADJUSTMENT_AMOUNT,
40046         sum(pjp.FUNDING_ADJUSTMENT_COUNT)          FUNDING_ADJUSTMENT_COUNT,
40047         sum(pjp.REVENUE_WRITEOFF)                  REVENUE_WRITEOFF,
40048         sum(pjp.AR_INVOICE_AMOUNT)                 AR_INVOICE_AMOUNT,
40049         sum(pjp.AR_INVOICE_COUNT)                  AR_INVOICE_COUNT,
40050         sum(pjp.AR_CASH_APPLIED_AMOUNT)            AR_CASH_APPLIED_AMOUNT,
40051         sum(pjp.AR_INVOICE_WRITE_OFF_AMOUNT)       AR_INVOICE_WRITE_OFF_AMOUNT,
40052         sum(pjp.AR_INVOICE_WRITEOFF_COUNT)         AR_INVOICE_WRITEOFF_COUNT,
40053         sum(pjp.AR_CREDIT_MEMO_AMOUNT)             AR_CREDIT_MEMO_AMOUNT,
40054         sum(pjp.AR_CREDIT_MEMO_COUNT)              AR_CREDIT_MEMO_COUNT,
40055         sum(pjp.UNBILLED_RECEIVABLES)              UNBILLED_RECEIVABLES,
40056         sum(pjp.UNEARNED_REVENUE)                  UNEARNED_REVENUE,
40057         sum(pjp.AR_UNAPPR_INVOICE_AMOUNT)          AR_UNAPPR_INVOICE_AMOUNT,
40058         sum(pjp.AR_UNAPPR_INVOICE_COUNT)           AR_UNAPPR_INVOICE_COUNT,
40059         sum(pjp.AR_APPR_INVOICE_AMOUNT)            AR_APPR_INVOICE_AMOUNT,
40060         sum(pjp.AR_APPR_INVOICE_COUNT)             AR_APPR_INVOICE_COUNT,
40061         sum(pjp.AR_AMOUNT_DUE)                     AR_AMOUNT_DUE,
40062         sum(pjp.AR_COUNT_DUE)                      AR_COUNT_DUE,
40063         sum(pjp.AR_AMOUNT_OVERDUE)                 AR_AMOUNT_OVERDUE,
40064         sum(pjp.AR_COUNT_OVERDUE)                  AR_COUNT_OVERDUE,
40065         sum(pjp.CUSTOM1)                           CUSTOM1,
40066         sum(pjp.CUSTOM2)                           CUSTOM2,
40067         sum(pjp.CUSTOM3)                           CUSTOM3,
40068         sum(pjp.CUSTOM4)                           CUSTOM4,
40069         sum(pjp.CUSTOM5)                           CUSTOM5,
40070         sum(pjp.CUSTOM6)                           CUSTOM6,
40071         sum(pjp.CUSTOM7)                           CUSTOM7,
40072         sum(pjp.CUSTOM8)                           CUSTOM8,
40073         sum(pjp.CUSTOM9)                           CUSTOM9,
40074         sum(pjp.CUSTOM10)                          CUSTOM10,
40075         sum(pjp.CUSTOM11)                          CUSTOM11,
40076         sum(pjp.CUSTOM12)                          CUSTOM12,
40077         sum(pjp.CUSTOM13)                          CUSTOM13,
40078         sum(pjp.CUSTOM14)                          CUSTOM14,
40079         sum(pjp.CUSTOM15)                          CUSTOM15
40080       from
40081         (
40082         select /*+ ordered index(acr PJI_AC_XBS_ACCUM_F_N1) */
40083                -- get structure level amounts from Reporting Lines
40084           prg.SUP_PROJECT_ID,
40085           prg.SUP_ID,
40086           prg.SUP_EMT_ID,
40087           prg.SUB_EMT_ID,
40088           prg.SUB_ROLLUP_ID,
40089           'ACR'                                    LINE_SOURCE,
40090           prg.SUB_ID,
40091           acr.TIME_ID,
40092           acr.PERIOD_TYPE_ID,
40093           acr.CALENDAR_TYPE,
40094           acr.CURR_RECORD_TYPE_ID,
40095           acr.CURRENCY_CODE,
40096           prg.SIGN * acr.REVENUE                   REVENUE,
40097           prg.SIGN * acr.INITIAL_FUNDING_AMOUNT    INITIAL_FUNDING_AMOUNT,
40098           prg.SIGN * acr.INITIAL_FUNDING_COUNT     INITIAL_FUNDING_COUNT,
40099           prg.SIGN * acr.ADDITIONAL_FUNDING_AMOUNT ADDITIONAL_FUNDING_AMOUNT,
40100           prg.SIGN * acr.ADDITIONAL_FUNDING_COUNT  ADDITIONAL_FUNDING_COUNT,
40101           prg.SIGN * acr.CANCELLED_FUNDING_AMOUNT  CANCELLED_FUNDING_AMOUNT,
40102           prg.SIGN * acr.CANCELLED_FUNDING_COUNT   CANCELLED_FUNDING_COUNT,
40103           prg.SIGN * acr.FUNDING_ADJUSTMENT_AMOUNT FUNDING_ADJUSTMENT_AMOUNT,
40104           prg.SIGN * acr.FUNDING_ADJUSTMENT_COUNT  FUNDING_ADJUSTMENT_COUNT,
40105           prg.SIGN * acr.REVENUE_WRITEOFF          REVENUE_WRITEOFF,
40106           prg.SIGN * acr.AR_INVOICE_AMOUNT         AR_INVOICE_AMOUNT,
40107           prg.SIGN * acr.AR_INVOICE_COUNT          AR_INVOICE_COUNT,
40108           prg.SIGN * acr.AR_CASH_APPLIED_AMOUNT    AR_CASH_APPLIED_AMOUNT,
40109           prg.SIGN *
40110             acr.AR_INVOICE_WRITE_OFF_AMOUNT        AR_INVOICE_WRITE_OFF_AMOUNT,
40111           prg.SIGN * acr.AR_INVOICE_WRITEOFF_COUNT AR_INVOICE_WRITEOFF_COUNT,
40112           prg.SIGN * acr.AR_CREDIT_MEMO_AMOUNT     AR_CREDIT_MEMO_AMOUNT,
40113           prg.SIGN * acr.AR_CREDIT_MEMO_COUNT      AR_CREDIT_MEMO_COUNT,
40114           prg.SIGN * acr.UNBILLED_RECEIVABLES      UNBILLED_RECEIVABLES,
40115           prg.SIGN * acr.UNEARNED_REVENUE          UNEARNED_REVENUE,
40116           prg.SIGN * acr.AR_UNAPPR_INVOICE_AMOUNT  AR_UNAPPR_INVOICE_AMOUNT,
40117           prg.SIGN * acr.AR_UNAPPR_INVOICE_COUNT   AR_UNAPPR_INVOICE_COUNT,
40118           prg.SIGN * acr.AR_APPR_INVOICE_AMOUNT    AR_APPR_INVOICE_AMOUNT,
40119           prg.SIGN * acr.AR_APPR_INVOICE_COUNT     AR_APPR_INVOICE_COUNT,
40120           prg.SIGN * acr.AR_AMOUNT_DUE             AR_AMOUNT_DUE,
40121           prg.SIGN * acr.AR_COUNT_DUE              AR_COUNT_DUE,
40122           prg.SIGN * acr.AR_AMOUNT_OVERDUE         AR_AMOUNT_OVERDUE,
40123           prg.SIGN * acr.AR_COUNT_OVERDUE          AR_COUNT_OVERDUE,
40124           prg.SIGN * acr.CUSTOM1                   CUSTOM1,
40125           prg.SIGN * acr.CUSTOM2                   CUSTOM2,
40126           prg.SIGN * acr.CUSTOM3                   CUSTOM3,
40127           prg.SIGN * acr.CUSTOM4                   CUSTOM4,
40128           prg.SIGN * acr.CUSTOM5                   CUSTOM5,
40129           prg.SIGN * acr.CUSTOM6                   CUSTOM6,
40130           prg.SIGN * acr.CUSTOM7                   CUSTOM7,
40131           prg.SIGN * acr.CUSTOM8                   CUSTOM8,
40132           prg.SIGN * acr.CUSTOM9                   CUSTOM9,
40133           prg.SIGN * acr.CUSTOM10                  CUSTOM10,
40134           prg.SIGN * acr.CUSTOM11                  CUSTOM11,
40135           prg.SIGN * acr.CUSTOM12                  CUSTOM12,
40136           prg.SIGN * acr.CUSTOM13                  CUSTOM13,
40137           prg.SIGN * acr.CUSTOM14                  CUSTOM14,
40138           prg.SIGN * acr.CUSTOM15                  CUSTOM15
40139         from
40140           PJI_XBS_DENORM_DELTA prg,
40141           PA_PROJ_ELEMENTS     prj_emt,
40142           PJI_PJP_WBS_HEADER   wbs_hdr,
40143           PJI_AC_XBS_ACCUM_F   acr
40144         where
40145           prg.WORKER_ID           =  p_worker_id        and
40146           prg.STRUCT_TYPE         =  'PRG'              and
40147           prg.RELATIONSHIP_TYPE   =  'LF'               and
40148           prg.SUP_LEVEL           =  l_level            and
40149           nvl(prg.SUB_ROLLUP_ID,
40150               prg.SUP_EMT_ID)     <> prg.SUP_EMT_ID     and
40151           acr.WBS_ROLLUP_FLAG     in ('Y', 'N')         and
40152           acr.PRG_ROLLUP_FLAG     in ('Y', 'N')         and
40153           acr.PROJECT_ID          =  prj_emt.PROJECT_ID and
40154           acr.PROJECT_ELEMENT_ID  =  prg.SUB_EMT_ID     and
40155           prj_emt.PROJ_ELEMENT_ID =  prg.SUB_EMT_ID     and
40156           wbs_hdr.PROJECT_ID      =  prj_emt.PROJECT_ID and
40157           wbs_hdr.PLAN_VERSION_ID =  -1
40158         union all
40159         select /*+ ordered parallel(pjp1) */        -- changed for bug 5927368
40160                -- get program rollup amounts
40161           prg.SUP_PROJECT_ID,
40162           prg.SUP_ID,
40163           prg.SUP_EMT_ID,
40164           prg.SUB_EMT_ID,
40165           prg.SUB_ROLLUP_ID,
40166           'PJP1'                                   LINE_SOURCE,
40167           prg.SUB_ID,
40168           pjp1.TIME_ID,
40169           pjp1.PERIOD_TYPE_ID,
40170           pjp1.CALENDAR_TYPE,
40171           pjp1.CURR_RECORD_TYPE_ID,
40172           pjp1.CURRENCY_CODE,
40173           pjp1.REVENUE,
40174           pjp1.INITIAL_FUNDING_AMOUNT,
40175           pjp1.INITIAL_FUNDING_COUNT,
40176           pjp1.ADDITIONAL_FUNDING_AMOUNT,
40177           pjp1.ADDITIONAL_FUNDING_COUNT,
40178           pjp1.CANCELLED_FUNDING_AMOUNT,
40179           pjp1.CANCELLED_FUNDING_COUNT,
40180           pjp1.FUNDING_ADJUSTMENT_AMOUNT,
40181           pjp1.FUNDING_ADJUSTMENT_COUNT,
40182           pjp1.REVENUE_WRITEOFF,
40183           pjp1.AR_INVOICE_AMOUNT,
40184           pjp1.AR_INVOICE_COUNT,
40185           pjp1.AR_CASH_APPLIED_AMOUNT,
40186           pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
40187           pjp1.AR_INVOICE_WRITEOFF_COUNT,
40188           pjp1.AR_CREDIT_MEMO_AMOUNT,
40189           pjp1.AR_CREDIT_MEMO_COUNT,
40190           pjp1.UNBILLED_RECEIVABLES,
40191           pjp1.UNEARNED_REVENUE,
40192           pjp1.AR_UNAPPR_INVOICE_AMOUNT,
40193           pjp1.AR_UNAPPR_INVOICE_COUNT,
40194           pjp1.AR_APPR_INVOICE_AMOUNT,
40195           pjp1.AR_APPR_INVOICE_COUNT,
40196           pjp1.AR_AMOUNT_DUE,
40197           pjp1.AR_COUNT_DUE,
40198           pjp1.AR_AMOUNT_OVERDUE,
40199           pjp1.AR_COUNT_OVERDUE,
40200           pjp1.CUSTOM1,
40201           pjp1.CUSTOM2,
40202           pjp1.CUSTOM3,
40203           pjp1.CUSTOM4,
40204           pjp1.CUSTOM5,
40205           pjp1.CUSTOM6,
40206           pjp1.CUSTOM7,
40207           pjp1.CUSTOM8,
40208           pjp1.CUSTOM9,
40209           pjp1.CUSTOM10,
40210           pjp1.CUSTOM11,
40211           pjp1.CUSTOM12,
40212           pjp1.CUSTOM13,
40213           pjp1.CUSTOM14,
40214           pjp1.CUSTOM15
40215         from
40216           PJI_AC_AGGR_PJP1     pjp1,
40217           PJI_PJP_WBS_HEADER   wbs_hdr,
40218           PA_PROJ_ELEMENTS     prj_emt,
40219           PA_XBS_DENORM        prg,
40220           PJI_XBS_DENORM_DELTA prg_delta
40221         where
40222           prg.STRUCT_TYPE         =  'PRG'                           and
40223           prg.SUP_LEVEL           =  l_level                         and
40224           nvl(prg.SUB_ROLLUP_ID,
40225               prg.SUP_EMT_ID)     <> prg.SUP_EMT_ID                  and
40226           prg.RELATIONSHIP_TYPE   =  'LF'                            and
40227           p_worker_id             =  prg_delta.WORKER_ID         (+) and
40228           prg.STRUCT_TYPE         =  prg_delta.STRUCT_TYPE       (+) and
40229           prg.SUP_PROJECT_ID      =  prg_delta.SUP_PROJECT_ID    (+) and
40230           prg.SUP_LEVEL           =  prg_delta.SUP_LEVEL         (+) and
40231           prg.SUP_ID              =  prg_delta.SUP_ID            (+) and
40232           prg.SUB_LEVEL           =  prg_delta.SUB_LEVEL         (+) and
40233           prg.SUB_ID              =  prg_delta.SUB_ID            (+) and
40234           prg.RELATIONSHIP_TYPE   =  prg_delta.RELATIONSHIP_TYPE (+) and
40235           1                       =  prg_delta.SIGN              (+) and
40236           (prg_delta.SUP_PROJECT_ID is not null or
40237            (prg_delta.SUP_PROJECT_ID is null and
40238             pjp1.RECORD_TYPE = 'P'))                                 and
40239           pjp1.WORKER_ID          =  p_worker_id                     and
40240           pjp1.PRG_LEVEL          in (0, prg.SUB_LEVEL)              and
40241           pjp1.WBS_ROLLUP_FLAG    in ('Y', 'N')                      and
40242           pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                      and
40243           pjp1.PROJECT_ID         =  prj_emt.PROJECT_ID              and
40244           pjp1.PROJECT_ELEMENT_ID =  prg.SUB_EMT_ID                  and
40245           prg.STRUCT_VERSION_ID   is null                            and
40246           prj_emt.OBJECT_TYPE     =  'PA_STRUCTURES'                 and
40247           prj_emt.PROJ_ELEMENT_ID =  prg.SUB_EMT_ID                  and
40248           wbs_hdr.PROJECT_ID      =  prj_emt.PROJECT_ID              and
40249           wbs_hdr.WBS_VERSION_ID  =  prg.SUB_ID                      and
40250           wbs_hdr.PROJECT_ID      =  pjp1.PROJECT_ID                 and
40251           wbs_hdr.PLAN_VERSION_ID =  -1
40252         )                          pjp,
40253         PJI_PJP_PROJ_BATCH_MAP     map,
40254         PA_PROJ_WORKPLAN_ATTR      sup_wpa,
40255         PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
40256         PA_XBS_DENORM              wbs,
40257         (
40258           select 1     WBS_SUP_LEVEL,
40259                  'PRJ' INVERT_ID
40260           from   DUAL
40261           union all
40262           select 1     WBS_SUP_LEVEL,
40263                  'WBS' INVERT_ID
40264           from   DUAL
40265         ) top_slice
40266       where
40267         map.WORKER_ID         =  p_worker_id                        and
40268         map.PROJECT_ID        = pjp.SUP_PROJECT_ID                  and
40269         pjp.SUP_EMT_ID        = sup_wpa.PROJ_ELEMENT_ID             and
40270         pjp.SUP_PROJECT_ID    = sup_fin_ver.PROJECT_ID          (+) and
40271         pjp.SUP_ID            = sup_fin_ver.ELEMENT_VERSION_ID  (+) and
40272         'STRUCTURE_WORKING'   = sup_fin_ver.STATUS_CODE         (+) and
40273         (sup_fin_ver.PROJECT_ID is not null or
40274          sup_wpa.WP_ENABLE_VERSION_FLAG = 'N')                      and
40275         wbs.STRUCT_TYPE       =  'WBS'                              and
40276         wbs.SUP_PROJECT_ID    =  map.PROJECT_ID                     and
40277         wbs.SUP_PROJECT_ID    =  pjp.SUP_PROJECT_ID                 and
40278         wbs.STRUCT_VERSION_ID =  pjp.SUP_ID                         and
40279         wbs.SUB_EMT_ID        =  pjp.SUB_ROLLUP_ID                  and
40280         wbs.SUP_LEVEL         =  top_slice.WBS_SUP_LEVEL        (+)
40281       group by
40282         pjp.SUP_PROJECT_ID,
40283         map.PROJECT_ORG_ID,
40284         map.PROJECT_ORGANIZATION_ID,
40285         decode(top_slice.INVERT_ID,
40286                'PRJ', pjp.SUP_EMT_ID,
40287                wbs.SUP_EMT_ID),
40288         pjp.TIME_ID,
40289         pjp.PERIOD_TYPE_ID,
40290         pjp.CALENDAR_TYPE,
40291         decode(top_slice.INVERT_ID,
40292                'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
40293                                   wbs.SUP_EMT_ID,
40294                                   'N', 'Y')),
40295         pjp.CURR_RECORD_TYPE_ID,
40296         pjp.CURRENCY_CODE;
40297     elsif (p_worker_id =10) then
40298       -- Query for Partition 10
40299 
40300       insert /*+ parallel(PJI_AC_AGGR_PJP1) */
40301                  into PJI_AC_AGGR_PJP1 partition(P10)
40302       (
40303         WORKER_ID,
40304         RECORD_TYPE,
40305         PRG_LEVEL,
40306         PROJECT_ID,
40307         PROJECT_ORG_ID,
40308         PROJECT_ORGANIZATION_ID,
40309         PROJECT_ELEMENT_ID,
40310         TIME_ID,
40311         PERIOD_TYPE_ID,
40312         CALENDAR_TYPE,
40313         WBS_ROLLUP_FLAG,
40314         PRG_ROLLUP_FLAG,
40315         CURR_RECORD_TYPE_ID,
40316         CURRENCY_CODE,
40317         REVENUE,
40318         INITIAL_FUNDING_AMOUNT,
40319         INITIAL_FUNDING_COUNT,
40320         ADDITIONAL_FUNDING_AMOUNT,
40321         ADDITIONAL_FUNDING_COUNT,
40322         CANCELLED_FUNDING_AMOUNT,
40323         CANCELLED_FUNDING_COUNT,
40324         FUNDING_ADJUSTMENT_AMOUNT,
40325         FUNDING_ADJUSTMENT_COUNT,
40326         REVENUE_WRITEOFF,
40327         AR_INVOICE_AMOUNT,
40328         AR_INVOICE_COUNT,
40329         AR_CASH_APPLIED_AMOUNT,
40330         AR_INVOICE_WRITE_OFF_AMOUNT,
40331         AR_INVOICE_WRITEOFF_COUNT,
40332         AR_CREDIT_MEMO_AMOUNT,
40333         AR_CREDIT_MEMO_COUNT,
40334         UNBILLED_RECEIVABLES,
40335         UNEARNED_REVENUE,
40336         AR_UNAPPR_INVOICE_AMOUNT,
40337         AR_UNAPPR_INVOICE_COUNT,
40338         AR_APPR_INVOICE_AMOUNT,
40339         AR_APPR_INVOICE_COUNT,
40340         AR_AMOUNT_DUE,
40341         AR_COUNT_DUE,
40342         AR_AMOUNT_OVERDUE,
40343         AR_COUNT_OVERDUE,
40344         CUSTOM1,
40345         CUSTOM2,
40346         CUSTOM3,
40347         CUSTOM4,
40348         CUSTOM5,
40349         CUSTOM6,
40350         CUSTOM7,
40351         CUSTOM8,
40352         CUSTOM9,
40353         CUSTOM10,
40354         CUSTOM11,
40355         CUSTOM12,
40356         CUSTOM13,
40357         CUSTOM14,
40358         CUSTOM15
40359       )
40360       select /*+ no_merge(pjp) */
40361         p_worker_id                                WORKER_ID,
40362         'P'                                        RECORD_TYPE,
40363         l_level                                    PRG_LEVEL,
40364         pjp.SUP_PROJECT_ID                         PROJECT_ID,
40365         map.PROJECT_ORG_ID,
40366         map.PROJECT_ORGANIZATION_ID,
40367         decode(top_slice.INVERT_ID,
40368                'PRJ', pjp.SUP_EMT_ID,
40369                wbs.SUP_EMT_ID)                     PROJECT_ELEMENT_ID,
40370         pjp.TIME_ID,
40371         pjp.PERIOD_TYPE_ID,
40372         pjp.CALENDAR_TYPE,
40373         decode(top_slice.INVERT_ID,
40374                'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
40375                                   wbs.SUP_EMT_ID,
40376                                   'N', 'Y'))       WBS_ROLLUP_FLAG,
40377         'Y'                                        PRG_ROLLUP_FLAG,
40378         pjp.CURR_RECORD_TYPE_ID,
40379         pjp.CURRENCY_CODE,
40380         sum(pjp.REVENUE)                           REVENUE,
40381         sum(pjp.INITIAL_FUNDING_AMOUNT)            INITIAL_FUNDING_AMOUNT,
40382         sum(pjp.INITIAL_FUNDING_COUNT)             INITIAL_FUNDING_COUNT,
40383         sum(pjp.ADDITIONAL_FUNDING_AMOUNT)         ADDITIONAL_FUNDING_AMOUNT,
40384         sum(pjp.ADDITIONAL_FUNDING_COUNT)          ADDITIONAL_FUNDING_COUNT,
40385         sum(pjp.CANCELLED_FUNDING_AMOUNT)          CANCELLED_FUNDING_AMOUNT,
40386         sum(pjp.CANCELLED_FUNDING_COUNT)           CANCELLED_FUNDING_COUNT,
40387         sum(pjp.FUNDING_ADJUSTMENT_AMOUNT)         FUNDING_ADJUSTMENT_AMOUNT,
40388         sum(pjp.FUNDING_ADJUSTMENT_COUNT)          FUNDING_ADJUSTMENT_COUNT,
40389         sum(pjp.REVENUE_WRITEOFF)                  REVENUE_WRITEOFF,
40390         sum(pjp.AR_INVOICE_AMOUNT)                 AR_INVOICE_AMOUNT,
40391         sum(pjp.AR_INVOICE_COUNT)                  AR_INVOICE_COUNT,
40392         sum(pjp.AR_CASH_APPLIED_AMOUNT)            AR_CASH_APPLIED_AMOUNT,
40393         sum(pjp.AR_INVOICE_WRITE_OFF_AMOUNT)       AR_INVOICE_WRITE_OFF_AMOUNT,
40394         sum(pjp.AR_INVOICE_WRITEOFF_COUNT)         AR_INVOICE_WRITEOFF_COUNT,
40395         sum(pjp.AR_CREDIT_MEMO_AMOUNT)             AR_CREDIT_MEMO_AMOUNT,
40396         sum(pjp.AR_CREDIT_MEMO_COUNT)              AR_CREDIT_MEMO_COUNT,
40397         sum(pjp.UNBILLED_RECEIVABLES)              UNBILLED_RECEIVABLES,
40398         sum(pjp.UNEARNED_REVENUE)                  UNEARNED_REVENUE,
40399         sum(pjp.AR_UNAPPR_INVOICE_AMOUNT)          AR_UNAPPR_INVOICE_AMOUNT,
40400         sum(pjp.AR_UNAPPR_INVOICE_COUNT)           AR_UNAPPR_INVOICE_COUNT,
40401         sum(pjp.AR_APPR_INVOICE_AMOUNT)            AR_APPR_INVOICE_AMOUNT,
40402         sum(pjp.AR_APPR_INVOICE_COUNT)             AR_APPR_INVOICE_COUNT,
40403         sum(pjp.AR_AMOUNT_DUE)                     AR_AMOUNT_DUE,
40404         sum(pjp.AR_COUNT_DUE)                      AR_COUNT_DUE,
40405         sum(pjp.AR_AMOUNT_OVERDUE)                 AR_AMOUNT_OVERDUE,
40406         sum(pjp.AR_COUNT_OVERDUE)                  AR_COUNT_OVERDUE,
40407         sum(pjp.CUSTOM1)                           CUSTOM1,
40408         sum(pjp.CUSTOM2)                           CUSTOM2,
40409         sum(pjp.CUSTOM3)                           CUSTOM3,
40410         sum(pjp.CUSTOM4)                           CUSTOM4,
40411         sum(pjp.CUSTOM5)                           CUSTOM5,
40412         sum(pjp.CUSTOM6)                           CUSTOM6,
40413         sum(pjp.CUSTOM7)                           CUSTOM7,
40414         sum(pjp.CUSTOM8)                           CUSTOM8,
40415         sum(pjp.CUSTOM9)                           CUSTOM9,
40416         sum(pjp.CUSTOM10)                          CUSTOM10,
40417         sum(pjp.CUSTOM11)                          CUSTOM11,
40418         sum(pjp.CUSTOM12)                          CUSTOM12,
40419         sum(pjp.CUSTOM13)                          CUSTOM13,
40420         sum(pjp.CUSTOM14)                          CUSTOM14,
40421         sum(pjp.CUSTOM15)                          CUSTOM15
40422       from
40423         (
40424         select /*+ ordered index(acr PJI_AC_XBS_ACCUM_F_N1) */
40425                -- get structure level amounts from Reporting Lines
40426           prg.SUP_PROJECT_ID,
40427           prg.SUP_ID,
40428           prg.SUP_EMT_ID,
40429           prg.SUB_EMT_ID,
40430           prg.SUB_ROLLUP_ID,
40431           'ACR'                                    LINE_SOURCE,
40432           prg.SUB_ID,
40433           acr.TIME_ID,
40434           acr.PERIOD_TYPE_ID,
40435           acr.CALENDAR_TYPE,
40436           acr.CURR_RECORD_TYPE_ID,
40437           acr.CURRENCY_CODE,
40438           prg.SIGN * acr.REVENUE                   REVENUE,
40439           prg.SIGN * acr.INITIAL_FUNDING_AMOUNT    INITIAL_FUNDING_AMOUNT,
40440           prg.SIGN * acr.INITIAL_FUNDING_COUNT     INITIAL_FUNDING_COUNT,
40441           prg.SIGN * acr.ADDITIONAL_FUNDING_AMOUNT ADDITIONAL_FUNDING_AMOUNT,
40442           prg.SIGN * acr.ADDITIONAL_FUNDING_COUNT  ADDITIONAL_FUNDING_COUNT,
40443           prg.SIGN * acr.CANCELLED_FUNDING_AMOUNT  CANCELLED_FUNDING_AMOUNT,
40444           prg.SIGN * acr.CANCELLED_FUNDING_COUNT   CANCELLED_FUNDING_COUNT,
40445           prg.SIGN * acr.FUNDING_ADJUSTMENT_AMOUNT FUNDING_ADJUSTMENT_AMOUNT,
40446           prg.SIGN * acr.FUNDING_ADJUSTMENT_COUNT  FUNDING_ADJUSTMENT_COUNT,
40447           prg.SIGN * acr.REVENUE_WRITEOFF          REVENUE_WRITEOFF,
40448           prg.SIGN * acr.AR_INVOICE_AMOUNT         AR_INVOICE_AMOUNT,
40449           prg.SIGN * acr.AR_INVOICE_COUNT          AR_INVOICE_COUNT,
40450           prg.SIGN * acr.AR_CASH_APPLIED_AMOUNT    AR_CASH_APPLIED_AMOUNT,
40451           prg.SIGN *
40452             acr.AR_INVOICE_WRITE_OFF_AMOUNT        AR_INVOICE_WRITE_OFF_AMOUNT,
40453           prg.SIGN * acr.AR_INVOICE_WRITEOFF_COUNT AR_INVOICE_WRITEOFF_COUNT,
40454           prg.SIGN * acr.AR_CREDIT_MEMO_AMOUNT     AR_CREDIT_MEMO_AMOUNT,
40455           prg.SIGN * acr.AR_CREDIT_MEMO_COUNT      AR_CREDIT_MEMO_COUNT,
40456           prg.SIGN * acr.UNBILLED_RECEIVABLES      UNBILLED_RECEIVABLES,
40457           prg.SIGN * acr.UNEARNED_REVENUE          UNEARNED_REVENUE,
40458           prg.SIGN * acr.AR_UNAPPR_INVOICE_AMOUNT  AR_UNAPPR_INVOICE_AMOUNT,
40459           prg.SIGN * acr.AR_UNAPPR_INVOICE_COUNT   AR_UNAPPR_INVOICE_COUNT,
40460           prg.SIGN * acr.AR_APPR_INVOICE_AMOUNT    AR_APPR_INVOICE_AMOUNT,
40461           prg.SIGN * acr.AR_APPR_INVOICE_COUNT     AR_APPR_INVOICE_COUNT,
40462           prg.SIGN * acr.AR_AMOUNT_DUE             AR_AMOUNT_DUE,
40463           prg.SIGN * acr.AR_COUNT_DUE              AR_COUNT_DUE,
40464           prg.SIGN * acr.AR_AMOUNT_OVERDUE         AR_AMOUNT_OVERDUE,
40465           prg.SIGN * acr.AR_COUNT_OVERDUE          AR_COUNT_OVERDUE,
40466           prg.SIGN * acr.CUSTOM1                   CUSTOM1,
40467           prg.SIGN * acr.CUSTOM2                   CUSTOM2,
40468           prg.SIGN * acr.CUSTOM3                   CUSTOM3,
40469           prg.SIGN * acr.CUSTOM4                   CUSTOM4,
40470           prg.SIGN * acr.CUSTOM5                   CUSTOM5,
40471           prg.SIGN * acr.CUSTOM6                   CUSTOM6,
40472           prg.SIGN * acr.CUSTOM7                   CUSTOM7,
40473           prg.SIGN * acr.CUSTOM8                   CUSTOM8,
40474           prg.SIGN * acr.CUSTOM9                   CUSTOM9,
40475           prg.SIGN * acr.CUSTOM10                  CUSTOM10,
40476           prg.SIGN * acr.CUSTOM11                  CUSTOM11,
40477           prg.SIGN * acr.CUSTOM12                  CUSTOM12,
40478           prg.SIGN * acr.CUSTOM13                  CUSTOM13,
40479           prg.SIGN * acr.CUSTOM14                  CUSTOM14,
40480           prg.SIGN * acr.CUSTOM15                  CUSTOM15
40481         from
40482           PJI_XBS_DENORM_DELTA prg,
40483           PA_PROJ_ELEMENTS     prj_emt,
40484           PJI_PJP_WBS_HEADER   wbs_hdr,
40485           PJI_AC_XBS_ACCUM_F   acr
40486         where
40487           prg.WORKER_ID           =  p_worker_id        and
40488           prg.STRUCT_TYPE         =  'PRG'              and
40489           prg.RELATIONSHIP_TYPE   =  'LF'               and
40490           prg.SUP_LEVEL           =  l_level            and
40491           nvl(prg.SUB_ROLLUP_ID,
40492               prg.SUP_EMT_ID)     <> prg.SUP_EMT_ID     and
40493           acr.WBS_ROLLUP_FLAG     in ('Y', 'N')         and
40494           acr.PRG_ROLLUP_FLAG     in ('Y', 'N')         and
40495           acr.PROJECT_ID          =  prj_emt.PROJECT_ID and
40496           acr.PROJECT_ELEMENT_ID  =  prg.SUB_EMT_ID     and
40497           prj_emt.PROJ_ELEMENT_ID =  prg.SUB_EMT_ID     and
40498           wbs_hdr.PROJECT_ID      =  prj_emt.PROJECT_ID and
40499           wbs_hdr.PLAN_VERSION_ID =  -1
40500         union all
40501         select /*+ ordered parallel(pjp1) */        -- changed for bug 5927368
40502                -- get program rollup amounts
40503           prg.SUP_PROJECT_ID,
40504           prg.SUP_ID,
40505           prg.SUP_EMT_ID,
40506           prg.SUB_EMT_ID,
40507           prg.SUB_ROLLUP_ID,
40508           'PJP1'                                   LINE_SOURCE,
40509           prg.SUB_ID,
40510           pjp1.TIME_ID,
40511           pjp1.PERIOD_TYPE_ID,
40512           pjp1.CALENDAR_TYPE,
40513           pjp1.CURR_RECORD_TYPE_ID,
40514           pjp1.CURRENCY_CODE,
40515           pjp1.REVENUE,
40516           pjp1.INITIAL_FUNDING_AMOUNT,
40517           pjp1.INITIAL_FUNDING_COUNT,
40518           pjp1.ADDITIONAL_FUNDING_AMOUNT,
40519           pjp1.ADDITIONAL_FUNDING_COUNT,
40520           pjp1.CANCELLED_FUNDING_AMOUNT,
40521           pjp1.CANCELLED_FUNDING_COUNT,
40522           pjp1.FUNDING_ADJUSTMENT_AMOUNT,
40523           pjp1.FUNDING_ADJUSTMENT_COUNT,
40524           pjp1.REVENUE_WRITEOFF,
40525           pjp1.AR_INVOICE_AMOUNT,
40526           pjp1.AR_INVOICE_COUNT,
40527           pjp1.AR_CASH_APPLIED_AMOUNT,
40528           pjp1.AR_INVOICE_WRITE_OFF_AMOUNT,
40529           pjp1.AR_INVOICE_WRITEOFF_COUNT,
40530           pjp1.AR_CREDIT_MEMO_AMOUNT,
40531           pjp1.AR_CREDIT_MEMO_COUNT,
40532           pjp1.UNBILLED_RECEIVABLES,
40533           pjp1.UNEARNED_REVENUE,
40534           pjp1.AR_UNAPPR_INVOICE_AMOUNT,
40535           pjp1.AR_UNAPPR_INVOICE_COUNT,
40536           pjp1.AR_APPR_INVOICE_AMOUNT,
40537           pjp1.AR_APPR_INVOICE_COUNT,
40538           pjp1.AR_AMOUNT_DUE,
40539           pjp1.AR_COUNT_DUE,
40540           pjp1.AR_AMOUNT_OVERDUE,
40541           pjp1.AR_COUNT_OVERDUE,
40542           pjp1.CUSTOM1,
40543           pjp1.CUSTOM2,
40544           pjp1.CUSTOM3,
40545           pjp1.CUSTOM4,
40546           pjp1.CUSTOM5,
40547           pjp1.CUSTOM6,
40548           pjp1.CUSTOM7,
40549           pjp1.CUSTOM8,
40550           pjp1.CUSTOM9,
40551           pjp1.CUSTOM10,
40552           pjp1.CUSTOM11,
40553           pjp1.CUSTOM12,
40554           pjp1.CUSTOM13,
40555           pjp1.CUSTOM14,
40556           pjp1.CUSTOM15
40557         from
40558           PJI_AC_AGGR_PJP1     pjp1,
40559           PJI_PJP_WBS_HEADER   wbs_hdr,
40560           PA_PROJ_ELEMENTS     prj_emt,
40561           PA_XBS_DENORM        prg,
40562           PJI_XBS_DENORM_DELTA prg_delta
40563         where
40564           prg.STRUCT_TYPE         =  'PRG'                           and
40565           prg.SUP_LEVEL           =  l_level                         and
40566           nvl(prg.SUB_ROLLUP_ID,
40567               prg.SUP_EMT_ID)     <> prg.SUP_EMT_ID                  and
40568           prg.RELATIONSHIP_TYPE   =  'LF'                            and
40569           p_worker_id             =  prg_delta.WORKER_ID         (+) and
40570           prg.STRUCT_TYPE         =  prg_delta.STRUCT_TYPE       (+) and
40571           prg.SUP_PROJECT_ID      =  prg_delta.SUP_PROJECT_ID    (+) and
40572           prg.SUP_LEVEL           =  prg_delta.SUP_LEVEL         (+) and
40573           prg.SUP_ID              =  prg_delta.SUP_ID            (+) and
40574           prg.SUB_LEVEL           =  prg_delta.SUB_LEVEL         (+) and
40575           prg.SUB_ID              =  prg_delta.SUB_ID            (+) and
40576           prg.RELATIONSHIP_TYPE   =  prg_delta.RELATIONSHIP_TYPE (+) and
40577           1                       =  prg_delta.SIGN              (+) and
40578           (prg_delta.SUP_PROJECT_ID is not null or
40579            (prg_delta.SUP_PROJECT_ID is null and
40580             pjp1.RECORD_TYPE = 'P'))                                 and
40581           pjp1.WORKER_ID          =  p_worker_id                     and
40582           pjp1.PRG_LEVEL          in (0, prg.SUB_LEVEL)              and
40583           pjp1.WBS_ROLLUP_FLAG    in ('Y', 'N')                      and
40584           pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                      and
40585           pjp1.PROJECT_ID         =  prj_emt.PROJECT_ID              and
40586           pjp1.PROJECT_ELEMENT_ID =  prg.SUB_EMT_ID                  and
40587           prg.STRUCT_VERSION_ID   is null                            and
40588           prj_emt.OBJECT_TYPE     =  'PA_STRUCTURES'                 and
40589           prj_emt.PROJ_ELEMENT_ID =  prg.SUB_EMT_ID                  and
40590           wbs_hdr.PROJECT_ID      =  prj_emt.PROJECT_ID              and
40591           wbs_hdr.WBS_VERSION_ID  =  prg.SUB_ID                      and
40592           wbs_hdr.PROJECT_ID      =  pjp1.PROJECT_ID                 and
40593           wbs_hdr.PLAN_VERSION_ID =  -1
40594         )                          pjp,
40595         PJI_PJP_PROJ_BATCH_MAP     map,
40596         PA_PROJ_WORKPLAN_ATTR      sup_wpa,
40597         PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
40598         PA_XBS_DENORM              wbs,
40599         (
40600           select 1     WBS_SUP_LEVEL,
40601                  'PRJ' INVERT_ID
40602           from   DUAL
40603           union all
40604           select 1     WBS_SUP_LEVEL,
40605                  'WBS' INVERT_ID
40606           from   DUAL
40607         ) top_slice
40608       where
40609         map.WORKER_ID         =  p_worker_id                        and
40610         map.PROJECT_ID        = pjp.SUP_PROJECT_ID                  and
40611         pjp.SUP_EMT_ID        = sup_wpa.PROJ_ELEMENT_ID             and
40612         pjp.SUP_PROJECT_ID    = sup_fin_ver.PROJECT_ID          (+) and
40613         pjp.SUP_ID            = sup_fin_ver.ELEMENT_VERSION_ID  (+) and
40614         'STRUCTURE_WORKING'   = sup_fin_ver.STATUS_CODE         (+) and
40615         (sup_fin_ver.PROJECT_ID is not null or
40616          sup_wpa.WP_ENABLE_VERSION_FLAG = 'N')                      and
40617         wbs.STRUCT_TYPE       =  'WBS'                              and
40618         wbs.SUP_PROJECT_ID    =  map.PROJECT_ID                     and
40619         wbs.SUP_PROJECT_ID    =  pjp.SUP_PROJECT_ID                 and
40620         wbs.STRUCT_VERSION_ID =  pjp.SUP_ID                         and
40621         wbs.SUB_EMT_ID        =  pjp.SUB_ROLLUP_ID                  and
40622         wbs.SUP_LEVEL         =  top_slice.WBS_SUP_LEVEL        (+)
40623       group by
40624         pjp.SUP_PROJECT_ID,
40625         map.PROJECT_ORG_ID,
40626         map.PROJECT_ORGANIZATION_ID,
40627         decode(top_slice.INVERT_ID,
40628                'PRJ', pjp.SUP_EMT_ID,
40629                wbs.SUP_EMT_ID),
40630         pjp.TIME_ID,
40631         pjp.PERIOD_TYPE_ID,
40632         pjp.CALENDAR_TYPE,
40633         decode(top_slice.INVERT_ID,
40634                'PRJ', 'Y', decode(pjp.SUB_ROLLUP_ID,
40635                                   wbs.SUP_EMT_ID,
40636                                   'N', 'Y')),
40637         pjp.CURR_RECORD_TYPE_ID,
40638         pjp.CURRENCY_CODE;
40639     else
40640         return;
40641     end if;
40642 
40643   end EXECUTE_ROLLUP_ACR_PRG;
40644 
40645 /* Procedure EXECUTE_AGGREGATE_PLAN_DATA added for Bug 7551819 */
40646   -- ----------------------------------------------------------
40647   -- procedure EXECUTE_AGGREGATE_PLAN_DATA
40648   --
40649   -- This is the same query as in AGGREGATE_PLAN_DATA
40650   -- To implement the worker logic, we are implementing this procedure.
40651   -- Because partition can't be a bind variable like table names.
40652   -- Any fix done in one if condition to be done in all 10 if conditions.
40653   -- ----------------------------------------------------------
40654   procedure EXECUTE_AGGREGATE_PLAN_DATA (p_worker_id in number default null) is
40655   l_worker_id number;  /* Added for bug 13030627 */
40656   begin
40657 
40658 	/* Added for bug 13030627 */
40659   if PJI_UTILS.GET_PARAMETER('PJP_SIN_PRG') = 'Y' then
40660 
40661      l_worker_id := p_worker_id;
40662      PJI_PJP_PRG_PERF_ALL.EXECUTE_AGGREGATE_PLAN_DATA(
40663      p_worker_id  => l_worker_id);
40664 
40665   else
40666   /* Added for bug 13030627 */
40667 
40668     if (p_worker_id =1) then
40669       -- Query for Partition 1
40670 
40671       insert /*+ parallel(PJI_FP_AGGR_PJP1) */
40672                  into PJI_FP_AGGR_PJP1 partition(P1)
40673 
40674       (
40675         WORKER_ID,
40676         RECORD_TYPE,
40677         PRG_LEVEL,
40678         LINE_TYPE,
40679         PROJECT_ID,
40680         PROJECT_ORG_ID,
40681         PROJECT_ORGANIZATION_ID,
40682         PROJECT_ELEMENT_ID,
40683         TIME_ID,
40684         PERIOD_TYPE_ID,
40685         CALENDAR_TYPE,
40686         RBS_AGGR_LEVEL,
40687         WBS_ROLLUP_FLAG,
40688         PRG_ROLLUP_FLAG,
40689         CURR_RECORD_TYPE_ID,
40690         CURRENCY_CODE,
40691         RBS_ELEMENT_ID,
40692         RBS_VERSION_ID,
40693         PLAN_VERSION_ID,
40694         PLAN_TYPE_ID,
40695         PLAN_TYPE_CODE,
40696         RAW_COST,
40697         BRDN_COST,
40698         REVENUE,
40699         BILL_RAW_COST,
40700         BILL_BRDN_COST,
40701         BILL_LABOR_RAW_COST,
40702         BILL_LABOR_BRDN_COST,
40703         BILL_LABOR_HRS,
40704         EQUIPMENT_RAW_COST,
40705         EQUIPMENT_BRDN_COST,
40706         CAPITALIZABLE_RAW_COST,
40707         CAPITALIZABLE_BRDN_COST,
40708         LABOR_RAW_COST,
40709         LABOR_BRDN_COST,
40710         LABOR_HRS,
40711         LABOR_REVENUE,
40712         EQUIPMENT_HOURS,
40713         BILLABLE_EQUIPMENT_HOURS,
40714         SUP_INV_COMMITTED_COST,
40715         PO_COMMITTED_COST,
40716         PR_COMMITTED_COST,
40717         OTH_COMMITTED_COST,
40718         ACT_LABOR_HRS,
40719         ACT_EQUIP_HRS,
40720         ACT_LABOR_BRDN_COST,
40721         ACT_EQUIP_BRDN_COST,
40722         ACT_BRDN_COST,
40723         ACT_RAW_COST,
40724         ACT_REVENUE,
40725         ACT_LABOR_RAW_COST,
40726         ACT_EQUIP_RAW_COST,
40727         ETC_LABOR_HRS,
40728         ETC_EQUIP_HRS,
40729         ETC_LABOR_BRDN_COST,
40730         ETC_EQUIP_BRDN_COST,
40731         ETC_BRDN_COST,
40732         ETC_RAW_COST,
40733         ETC_LABOR_RAW_COST,
40734         ETC_EQUIP_RAW_COST,
40735         CUSTOM1,
40736         CUSTOM2,
40737         CUSTOM3,
40738         CUSTOM4,
40739         CUSTOM5,
40740         CUSTOM6,
40741         CUSTOM7,
40742         CUSTOM8,
40743         CUSTOM9,
40744         CUSTOM10,
40745         CUSTOM11,
40746         CUSTOM12,
40747         CUSTOM13,
40748         CUSTOM14,
40749         CUSTOM15
40750       )
40751       select
40752         pjp1.WORKER_ID,
40753         'A'                                 RECORD_TYPE,
40754         0 ,             /*  pjp1.PRG_LEVEL,   6266824 sridhar commented as this is required and also impact of Merge changes */
40755         'AGGR_PLAN'                         LINE_TYPE,
40756         pjp1.PROJECT_ID,
40757         pjp1.PROJECT_ORG_ID,
40758         pjp1.PROJECT_ORGANIZATION_ID,
40759         pjp1.PROJECT_ELEMENT_ID,
40760         pjp1.TIME_ID,
40761         pjp1.PERIOD_TYPE_ID,
40762         pjp1.CALENDAR_TYPE,
40763         pjp1.RBS_AGGR_LEVEL,
40764         pjp1.WBS_ROLLUP_FLAG,
40765         pjp1.PRG_ROLLUP_FLAG,
40766         pjp1.CURR_RECORD_TYPE_ID,
40767         pjp1.CURRENCY_CODE,
40768         pjp1.RBS_ELEMENT_ID,
40769         pjp1.RBS_VERSION_ID,
40770         pjp1.PLAN_VERSION_ID,
40771         pjp1.PLAN_TYPE_ID,
40772         pjp1.PLAN_TYPE_CODE,
40773         sum(pjp1.RAW_COST)                  RAW_COST,
40774         sum(pjp1.BRDN_COST)                 BRDN_COST,
40775         sum(pjp1.REVENUE)                   REVENUE,
40776         sum(pjp1.BILL_RAW_COST)             BILL_RAW_COST,
40777         sum(pjp1.BILL_BRDN_COST)            BILL_BRDN_COST,
40778         sum(pjp1.BILL_LABOR_RAW_COST)       BILL_LABOR_RAW_COST,
40779         sum(pjp1.BILL_LABOR_BRDN_COST)      BILL_LABOR_BRDN_COST,
40780         sum(pjp1.BILL_LABOR_HRS)            BILL_LABOR_HRS,
40781         sum(pjp1.EQUIPMENT_RAW_COST)        EQUIPMENT_RAW_COST,
40782         sum(pjp1.EQUIPMENT_BRDN_COST)       EQUIPMENT_BRDN_COST,
40783         sum(pjp1.CAPITALIZABLE_RAW_COST)    CAPITALIZABLE_RAW_COST,
40784         sum(pjp1.CAPITALIZABLE_BRDN_COST)   CAPITALIZABLE_BRDN_COST,
40785         sum(pjp1.LABOR_RAW_COST)            LABOR_RAW_COST,
40786         sum(pjp1.LABOR_BRDN_COST)           LABOR_BRDN_COST,
40787         sum(pjp1.LABOR_HRS)                 LABOR_HRS,
40788         sum(pjp1.LABOR_REVENUE)             LABOR_REVENUE,
40789         sum(pjp1.EQUIPMENT_HOURS)           EQUIPMENT_HOURS,
40790         sum(pjp1.BILLABLE_EQUIPMENT_HOURS)  BILLABLE_EQUIPMENT_HOURS,
40791         sum(pjp1.SUP_INV_COMMITTED_COST)    SUP_INV_COMMITTED_COST,
40792         sum(pjp1.PO_COMMITTED_COST)         PO_COMMITTED_COST,
40793         sum(pjp1.PR_COMMITTED_COST)         PR_COMMITTED_COST,
40794         sum(pjp1.OTH_COMMITTED_COST)        OTH_COMMITTED_COST,
40795         sum(pjp1.ACT_LABOR_HRS)             ACT_LABOR_HRS,
40796         sum(pjp1.ACT_EQUIP_HRS)             ACT_EQUIP_HRS,
40797         sum(pjp1.ACT_LABOR_BRDN_COST)       ACT_LABOR_BRDN_COST,
40798         sum(pjp1.ACT_EQUIP_BRDN_COST)       ACT_EQUIP_BRDN_COST,
40799         sum(pjp1.ACT_BRDN_COST)             ACT_BRDN_COST,
40800         sum(pjp1.ACT_RAW_COST)              ACT_RAW_COST,
40801         sum(pjp1.ACT_REVENUE)               ACT_REVENUE,
40802         sum(pjp1.ACT_LABOR_RAW_COST)        ACT_LABOR_RAW_COST,
40803         sum(pjp1.ACT_EQUIP_RAW_COST)        ACT_EQUIP_RAW_COST,
40804         sum(pjp1.ETC_LABOR_HRS)             ETC_LABOR_HRS,
40805         sum(pjp1.ETC_EQUIP_HRS)             ETC_EQUIP_HRS,
40806         sum(pjp1.ETC_LABOR_BRDN_COST)       ETC_LABOR_BRDN_COST,
40807         sum(pjp1.ETC_EQUIP_BRDN_COST)       ETC_EQUIP_BRDN_COST,
40808         sum(pjp1.ETC_BRDN_COST)             ETC_BRDN_COST,
40809         sum(pjp1.ETC_RAW_COST)              ETC_RAW_COST,
40810         sum(pjp1.ETC_LABOR_RAW_COST)        ETC_LABOR_RAW_COST,
40811         sum(pjp1.ETC_EQUIP_RAW_COST)        ETC_EQUIP_RAW_COST,
40812         sum(pjp1.CUSTOM1)                   CUSTOM1,
40813         sum(pjp1.CUSTOM2)                   CUSTOM2,
40814         sum(pjp1.CUSTOM3)                   CUSTOM3,
40815         sum(pjp1.CUSTOM4)                   CUSTOM4,
40816         sum(pjp1.CUSTOM5)                   CUSTOM5,
40817         sum(pjp1.CUSTOM6)                   CUSTOM6,
40818         sum(pjp1.CUSTOM7)                   CUSTOM7,
40819         sum(pjp1.CUSTOM8)                   CUSTOM8,
40820         sum(pjp1.CUSTOM9)                   CUSTOM9,
40821         sum(pjp1.CUSTOM10)                  CUSTOM10,
40822         sum(pjp1.CUSTOM11)                  CUSTOM11,
40823         sum(pjp1.CUSTOM12)                  CUSTOM12,
40824         sum(pjp1.CUSTOM13)                  CUSTOM13,
40825         sum(pjp1.CUSTOM14)                  CUSTOM14,
40826         sum(pjp1.CUSTOM15)                  CUSTOM15
40827       from
40828         PJI_FP_AGGR_PJP1 pjp1
40829       where
40830         pjp1.WORKER_ID = p_worker_id
40831       group by
40832         pjp1.WORKER_ID,
40833  /*     pjp1.PRG_LEVEL,     -- 6266824 sridhar not required and also impact of merge change */
40834         pjp1.PROJECT_ID,
40835         pjp1.PROJECT_ORG_ID,
40836         pjp1.PROJECT_ORGANIZATION_ID,
40837         pjp1.PROJECT_ELEMENT_ID,
40838         pjp1.TIME_ID,
40839         pjp1.PERIOD_TYPE_ID,
40840         pjp1.CALENDAR_TYPE,
40841         pjp1.RBS_AGGR_LEVEL,
40842         pjp1.WBS_ROLLUP_FLAG,
40843         pjp1.PRG_ROLLUP_FLAG,
40844         pjp1.CURR_RECORD_TYPE_ID,
40845         pjp1.CURRENCY_CODE,
40846         pjp1.RBS_ELEMENT_ID,
40847         pjp1.RBS_VERSION_ID,
40848         pjp1.PLAN_VERSION_ID,
40849         pjp1.PLAN_TYPE_ID,
40850         pjp1.PLAN_TYPE_CODE
40851       having not
40852         (nvl(sum(pjp1.RAW_COST), 0)                 = 0 and
40853          nvl(sum(pjp1.BRDN_COST), 0)                = 0 and
40854          nvl(sum(pjp1.REVENUE), 0)                  = 0 and
40855          nvl(sum(pjp1.BILL_RAW_COST), 0)            = 0 and
40856          nvl(sum(pjp1.BILL_BRDN_COST), 0)           = 0 and
40857          nvl(sum(pjp1.BILL_LABOR_RAW_COST), 0)      = 0 and
40858          nvl(sum(pjp1.BILL_LABOR_BRDN_COST), 0)     = 0 and
40859          nvl(sum(pjp1.BILL_LABOR_HRS), 0)           = 0 and
40860          nvl(sum(pjp1.EQUIPMENT_RAW_COST), 0)       = 0 and
40861          nvl(sum(pjp1.EQUIPMENT_BRDN_COST), 0)      = 0 and
40862          nvl(sum(pjp1.CAPITALIZABLE_RAW_COST), 0)   = 0 and
40863          nvl(sum(pjp1.CAPITALIZABLE_BRDN_COST), 0)  = 0 and
40864          nvl(sum(pjp1.LABOR_RAW_COST), 0)           = 0 and
40865          nvl(sum(pjp1.LABOR_BRDN_COST), 0)          = 0 and
40866          nvl(sum(pjp1.LABOR_HRS), 0)                = 0 and
40867          nvl(sum(pjp1.LABOR_REVENUE), 0)            = 0 and
40868          nvl(sum(pjp1.EQUIPMENT_HOURS), 0)          = 0 and
40869          nvl(sum(pjp1.BILLABLE_EQUIPMENT_HOURS), 0) = 0 and
40870          nvl(sum(pjp1.SUP_INV_COMMITTED_COST), 0)   = 0 and
40871          nvl(sum(pjp1.PO_COMMITTED_COST), 0)        = 0 and
40872          nvl(sum(pjp1.PR_COMMITTED_COST), 0)        = 0 and
40873          nvl(sum(pjp1.OTH_COMMITTED_COST), 0)       = 0 and
40874          nvl(sum(pjp1.ACT_LABOR_HRS), 0)            = 0 and
40875          nvl(sum(pjp1.ACT_EQUIP_HRS), 0)            = 0 and
40876          nvl(sum(pjp1.ACT_LABOR_BRDN_COST), 0)      = 0 and
40877          nvl(sum(pjp1.ACT_EQUIP_BRDN_COST), 0)      = 0 and
40878          nvl(sum(pjp1.ACT_BRDN_COST), 0)            = 0 and
40879          nvl(sum(pjp1.ACT_RAW_COST), 0)             = 0 and
40880          nvl(sum(pjp1.ACT_REVENUE), 0)              = 0 and
40881          nvl(sum(pjp1.ACT_LABOR_RAW_COST), 0)       = 0 and
40882          nvl(sum(pjp1.ACT_EQUIP_RAW_COST), 0)       = 0 and
40883          nvl(sum(pjp1.ETC_LABOR_HRS), 0)            = 0 and
40884          nvl(sum(pjp1.ETC_EQUIP_HRS), 0)            = 0 and
40885          nvl(sum(pjp1.ETC_LABOR_BRDN_COST), 0)      = 0 and
40886          nvl(sum(pjp1.ETC_EQUIP_BRDN_COST), 0)      = 0 and
40887          nvl(sum(pjp1.ETC_BRDN_COST), 0)            = 0 and
40888          nvl(sum(pjp1.ETC_RAW_COST), 0)             = 0 and
40889          nvl(sum(pjp1.ETC_LABOR_RAW_COST), 0)       = 0 and
40890          nvl(sum(pjp1.ETC_EQUIP_RAW_COST), 0)       = 0 and
40891          nvl(sum(pjp1.CUSTOM1), 0)                  = 0 and
40892          nvl(sum(pjp1.CUSTOM2), 0)                  = 0 and
40893          nvl(sum(pjp1.CUSTOM3), 0)                  = 0 and
40894          nvl(sum(pjp1.CUSTOM4), 0)                  = 0 and
40895          nvl(sum(pjp1.CUSTOM5), 0)                  = 0 and
40896          nvl(sum(pjp1.CUSTOM6), 0)                  = 0 and
40897          nvl(sum(pjp1.CUSTOM7), 0)                  = 0 and
40898          nvl(sum(pjp1.CUSTOM8), 0)                  = 0 and
40899          nvl(sum(pjp1.CUSTOM9), 0)                  = 0 and
40900          nvl(sum(pjp1.CUSTOM10), 0)                 = 0 and
40901          nvl(sum(pjp1.CUSTOM11), 0)                 = 0 and
40902          nvl(sum(pjp1.CUSTOM12), 0)                 = 0 and
40903          nvl(sum(pjp1.CUSTOM13), 0)                 = 0 and
40904          nvl(sum(pjp1.CUSTOM14), 0)                 = 0 and
40905          nvl(sum(pjp1.CUSTOM15), 0)                 = 0);
40906 
40907       insert /*+ parallel(PJI_AC_AGGR_PJP1) */
40908                  into PJI_AC_AGGR_PJP1 partition(P1)
40909       (
40910         WORKER_ID,
40911         RECORD_TYPE,
40912         PRG_LEVEL,
40913         PROJECT_ID,
40914         PROJECT_ORG_ID,
40915         PROJECT_ORGANIZATION_ID,
40916         PROJECT_ELEMENT_ID,
40917         TIME_ID,
40918         PERIOD_TYPE_ID,
40919         CALENDAR_TYPE,
40920         WBS_ROLLUP_FLAG,
40921         PRG_ROLLUP_FLAG,
40922         CURR_RECORD_TYPE_ID,
40923         CURRENCY_CODE,
40924         REVENUE,
40925         INITIAL_FUNDING_AMOUNT,
40926         INITIAL_FUNDING_COUNT,
40927         ADDITIONAL_FUNDING_AMOUNT,
40928         ADDITIONAL_FUNDING_COUNT,
40929         CANCELLED_FUNDING_AMOUNT,
40930         CANCELLED_FUNDING_COUNT,
40931         FUNDING_ADJUSTMENT_AMOUNT,
40932         FUNDING_ADJUSTMENT_COUNT,
40933         REVENUE_WRITEOFF,
40934         AR_INVOICE_AMOUNT,
40935         AR_INVOICE_COUNT,
40936         AR_CASH_APPLIED_AMOUNT,
40937         AR_INVOICE_WRITE_OFF_AMOUNT,
40938         AR_INVOICE_WRITEOFF_COUNT,
40939         AR_CREDIT_MEMO_AMOUNT,
40940         AR_CREDIT_MEMO_COUNT,
40941         UNBILLED_RECEIVABLES,
40942         UNEARNED_REVENUE,
40943         AR_UNAPPR_INVOICE_AMOUNT,
40944         AR_UNAPPR_INVOICE_COUNT,
40945         AR_APPR_INVOICE_AMOUNT,
40946         AR_APPR_INVOICE_COUNT,
40947         AR_AMOUNT_DUE,
40948         AR_COUNT_DUE,
40949         AR_AMOUNT_OVERDUE,
40950         AR_COUNT_OVERDUE,
40951         CUSTOM1,
40952         CUSTOM2,
40953         CUSTOM3,
40954         CUSTOM4,
40955         CUSTOM5,
40956         CUSTOM6,
40957         CUSTOM7,
40958         CUSTOM8,
40959         CUSTOM9,
40960         CUSTOM10,
40961         CUSTOM11,
40962         CUSTOM12,
40963         CUSTOM13,
40964         CUSTOM14,
40965         CUSTOM15
40966       )
40967       select
40968         pjp1.WORKER_ID,
40969         'A'                                        RECORD_TYPE,
40970         pjp1.PRG_LEVEL,
40971         pjp1.PROJECT_ID,
40972         pjp1.PROJECT_ORG_ID,
40973         pjp1.PROJECT_ORGANIZATION_ID,
40974         pjp1.PROJECT_ELEMENT_ID,
40975         pjp1.TIME_ID,
40976         pjp1.PERIOD_TYPE_ID,
40977         pjp1.CALENDAR_TYPE,
40978         pjp1.WBS_ROLLUP_FLAG,
40979         pjp1.PRG_ROLLUP_FLAG,
40980         pjp1.CURR_RECORD_TYPE_ID,
40981         pjp1.CURRENCY_CODE,
40982         sum(pjp1.REVENUE)                          REVENUE,
40983         sum(pjp1.INITIAL_FUNDING_AMOUNT)           INITIAL_FUNDING_AMOUNT,
40984         sum(pjp1.INITIAL_FUNDING_COUNT)            INITIAL_FUNDING_COUNT,
40985         sum(pjp1.ADDITIONAL_FUNDING_AMOUNT)        ADDITIONAL_FUNDING_AMOUNT,
40986         sum(pjp1.ADDITIONAL_FUNDING_COUNT)         ADDITIONAL_FUNDING_COUNT,
40987         sum(pjp1.CANCELLED_FUNDING_AMOUNT)         CANCELLED_FUNDING_AMOUNT,
40988         sum(pjp1.CANCELLED_FUNDING_COUNT)          CANCELLED_FUNDING_COUNT,
40989         sum(pjp1.FUNDING_ADJUSTMENT_AMOUNT)        FUNDING_ADJUSTMENT_AMOUNT,
40990         sum(pjp1.FUNDING_ADJUSTMENT_COUNT)         FUNDING_ADJUSTMENT_COUNT,
40991         sum(pjp1.REVENUE_WRITEOFF)                 REVENUE_WRITEOFF,
40992         sum(pjp1.AR_INVOICE_AMOUNT)                AR_INVOICE_AMOUNT,
40993         sum(pjp1.AR_INVOICE_COUNT)                 AR_INVOICE_COUNT,
40994         sum(pjp1.AR_CASH_APPLIED_AMOUNT)           AR_CASH_APPLIED_AMOUNT,
40995         sum(pjp1.AR_INVOICE_WRITE_OFF_AMOUNT)      AR_INVOICE_WRITE_OFF_AMOUNT,
40996         sum(pjp1.AR_INVOICE_WRITEOFF_COUNT)        AR_INVOICE_WRITEOFF_COUNT,
40997         sum(pjp1.AR_CREDIT_MEMO_AMOUNT)            AR_CREDIT_MEMO_AMOUNT,
40998         sum(pjp1.AR_CREDIT_MEMO_COUNT)             AR_CREDIT_MEMO_COUNT,
40999         sum(pjp1.UNBILLED_RECEIVABLES)             UNBILLED_RECEIVABLES,
41000         sum(pjp1.UNEARNED_REVENUE)                 UNEARNED_REVENUE,
41001         sum(pjp1.AR_UNAPPR_INVOICE_AMOUNT)         AR_UNAPPR_INVOICE_AMOUNT,
41002         sum(pjp1.AR_UNAPPR_INVOICE_COUNT)          AR_UNAPPR_INVOICE_COUNT,
41003         sum(pjp1.AR_APPR_INVOICE_AMOUNT)           AR_APPR_INVOICE_AMOUNT,
41004         sum(pjp1.AR_APPR_INVOICE_COUNT)            AR_APPR_INVOICE_COUNT,
41005         sum(pjp1.AR_AMOUNT_DUE)                    AR_AMOUNT_DUE,
41006         sum(pjp1.AR_COUNT_DUE)                     AR_COUNT_DUE,
41007         sum(pjp1.AR_AMOUNT_OVERDUE)                AR_AMOUNT_OVERDUE,
41008         sum(pjp1.AR_COUNT_OVERDUE)                 AR_COUNT_OVERDUE,
41009         sum(pjp1.CUSTOM1)                          CUSTOM1,
41010         sum(pjp1.CUSTOM2)                          CUSTOM2,
41011         sum(pjp1.CUSTOM3)                          CUSTOM3,
41012         sum(pjp1.CUSTOM4)                          CUSTOM4,
41013         sum(pjp1.CUSTOM5)                          CUSTOM5,
41014         sum(pjp1.CUSTOM6)                          CUSTOM6,
41015         sum(pjp1.CUSTOM7)                          CUSTOM7,
41016         sum(pjp1.CUSTOM8)                          CUSTOM8,
41017         sum(pjp1.CUSTOM9)                          CUSTOM9,
41018         sum(pjp1.CUSTOM10)                         CUSTOM10,
41019         sum(pjp1.CUSTOM11)                         CUSTOM11,
41020         sum(pjp1.CUSTOM12)                         CUSTOM12,
41021         sum(pjp1.CUSTOM13)                         CUSTOM13,
41022         sum(pjp1.CUSTOM14)                         CUSTOM14,
41023         sum(pjp1.CUSTOM15)                         CUSTOM15
41024       from
41025         PJI_AC_AGGR_PJP1 pjp1
41026       where
41027         pjp1.WORKER_ID = p_worker_id
41028       group by
41029         pjp1.WORKER_ID,
41030         pjp1.PRG_LEVEL,
41031         pjp1.PROJECT_ID,
41032         pjp1.PROJECT_ORG_ID,
41033         pjp1.PROJECT_ORGANIZATION_ID,
41034         pjp1.PROJECT_ELEMENT_ID,
41035         pjp1.TIME_ID,
41036         pjp1.PERIOD_TYPE_ID,
41037         pjp1.CALENDAR_TYPE,
41038         pjp1.WBS_ROLLUP_FLAG,
41039         pjp1.PRG_ROLLUP_FLAG,
41040         pjp1.CURR_RECORD_TYPE_ID,
41041         pjp1.CURRENCY_CODE
41042       having not
41043         (nvl(sum(REVENUE), 0)                     = 0 and
41044          nvl(sum(INITIAL_FUNDING_AMOUNT), 0)      = 0 and
41045          nvl(sum(INITIAL_FUNDING_COUNT), 0)       = 0 and
41046          nvl(sum(ADDITIONAL_FUNDING_AMOUNT), 0)   = 0 and
41047          nvl(sum(ADDITIONAL_FUNDING_COUNT), 0)    = 0 and
41048          nvl(sum(CANCELLED_FUNDING_AMOUNT), 0)    = 0 and
41049          nvl(sum(CANCELLED_FUNDING_COUNT), 0)     = 0 and
41050          nvl(sum(FUNDING_ADJUSTMENT_AMOUNT), 0)   = 0 and
41051          nvl(sum(FUNDING_ADJUSTMENT_COUNT), 0)    = 0 and
41052          nvl(sum(REVENUE_WRITEOFF), 0)            = 0 and
41053          nvl(sum(AR_INVOICE_AMOUNT), 0)           = 0 and
41054          nvl(sum(AR_INVOICE_COUNT), 0)            = 0 and
41055          nvl(sum(AR_CASH_APPLIED_AMOUNT), 0)      = 0 and
41056          nvl(sum(AR_INVOICE_WRITE_OFF_AMOUNT), 0) = 0 and
41057          nvl(sum(AR_INVOICE_WRITEOFF_COUNT), 0)   = 0 and
41058          nvl(sum(AR_CREDIT_MEMO_AMOUNT), 0)       = 0 and
41059          nvl(sum(AR_CREDIT_MEMO_COUNT), 0)        = 0 and
41060          nvl(sum(UNBILLED_RECEIVABLES), 0)        = 0 and
41061          nvl(sum(UNEARNED_REVENUE), 0)            = 0 and
41062          nvl(sum(AR_UNAPPR_INVOICE_AMOUNT), 0)    = 0 and
41063          nvl(sum(AR_UNAPPR_INVOICE_COUNT), 0)     = 0 and
41064          nvl(sum(AR_APPR_INVOICE_AMOUNT), 0)      = 0 and
41065          nvl(sum(AR_APPR_INVOICE_COUNT), 0)       = 0 and
41066          nvl(sum(AR_AMOUNT_DUE), 0)               = 0 and
41067          nvl(sum(AR_COUNT_DUE), 0)                = 0 and
41068          nvl(sum(AR_AMOUNT_OVERDUE), 0)           = 0 and
41069          nvl(sum(AR_COUNT_OVERDUE), 0)            = 0 and
41070          nvl(sum(CUSTOM1), 0)                     = 0 and
41071          nvl(sum(CUSTOM2), 0)                     = 0 and
41072          nvl(sum(CUSTOM3), 0)                     = 0 and
41073          nvl(sum(CUSTOM4), 0)                     = 0 and
41074          nvl(sum(CUSTOM5), 0)                     = 0 and
41075          nvl(sum(CUSTOM6), 0)                     = 0 and
41076          nvl(sum(CUSTOM7), 0)                     = 0 and
41077          nvl(sum(CUSTOM8), 0)                     = 0 and
41078          nvl(sum(CUSTOM9), 0)                     = 0 and
41079          nvl(sum(CUSTOM10), 0)                    = 0 and
41080          nvl(sum(CUSTOM11), 0)                    = 0 and
41081          nvl(sum(CUSTOM12), 0)                    = 0 and
41082          nvl(sum(CUSTOM13), 0)                    = 0 and
41083          nvl(sum(CUSTOM14), 0)                    = 0 and
41084          nvl(sum(CUSTOM15), 0)                    = 0);
41085 
41086     elsif (p_worker_id =2) then
41087       -- Query for Partition 2
41088 
41089       insert /*+ parallel(PJI_FP_AGGR_PJP1) */
41090                  into PJI_FP_AGGR_PJP1 partition(P2)
41091 
41092       (
41093         WORKER_ID,
41094         RECORD_TYPE,
41095         PRG_LEVEL,
41096         LINE_TYPE,
41097         PROJECT_ID,
41098         PROJECT_ORG_ID,
41099         PROJECT_ORGANIZATION_ID,
41100         PROJECT_ELEMENT_ID,
41101         TIME_ID,
41102         PERIOD_TYPE_ID,
41103         CALENDAR_TYPE,
41104         RBS_AGGR_LEVEL,
41105         WBS_ROLLUP_FLAG,
41106         PRG_ROLLUP_FLAG,
41107         CURR_RECORD_TYPE_ID,
41108         CURRENCY_CODE,
41109         RBS_ELEMENT_ID,
41110         RBS_VERSION_ID,
41111         PLAN_VERSION_ID,
41112         PLAN_TYPE_ID,
41113         PLAN_TYPE_CODE,
41114         RAW_COST,
41115         BRDN_COST,
41116         REVENUE,
41117         BILL_RAW_COST,
41118         BILL_BRDN_COST,
41119         BILL_LABOR_RAW_COST,
41120         BILL_LABOR_BRDN_COST,
41121         BILL_LABOR_HRS,
41122         EQUIPMENT_RAW_COST,
41123         EQUIPMENT_BRDN_COST,
41124         CAPITALIZABLE_RAW_COST,
41125         CAPITALIZABLE_BRDN_COST,
41126         LABOR_RAW_COST,
41127         LABOR_BRDN_COST,
41128         LABOR_HRS,
41129         LABOR_REVENUE,
41130         EQUIPMENT_HOURS,
41131         BILLABLE_EQUIPMENT_HOURS,
41132         SUP_INV_COMMITTED_COST,
41133         PO_COMMITTED_COST,
41134         PR_COMMITTED_COST,
41135         OTH_COMMITTED_COST,
41136         ACT_LABOR_HRS,
41137         ACT_EQUIP_HRS,
41138         ACT_LABOR_BRDN_COST,
41139         ACT_EQUIP_BRDN_COST,
41140         ACT_BRDN_COST,
41141         ACT_RAW_COST,
41142         ACT_REVENUE,
41143         ACT_LABOR_RAW_COST,
41144         ACT_EQUIP_RAW_COST,
41145         ETC_LABOR_HRS,
41146         ETC_EQUIP_HRS,
41147         ETC_LABOR_BRDN_COST,
41148         ETC_EQUIP_BRDN_COST,
41149         ETC_BRDN_COST,
41150         ETC_RAW_COST,
41151         ETC_LABOR_RAW_COST,
41152         ETC_EQUIP_RAW_COST,
41153         CUSTOM1,
41154         CUSTOM2,
41155         CUSTOM3,
41156         CUSTOM4,
41157         CUSTOM5,
41158         CUSTOM6,
41159         CUSTOM7,
41160         CUSTOM8,
41161         CUSTOM9,
41162         CUSTOM10,
41163         CUSTOM11,
41164         CUSTOM12,
41165         CUSTOM13,
41166         CUSTOM14,
41167         CUSTOM15
41168       )
41169       select
41170         pjp1.WORKER_ID,
41171         'A'                                 RECORD_TYPE,
41172         0 ,             /*  pjp1.PRG_LEVEL,   6266824 sridhar commented as this is required and also impact of Merge changes */
41173         'AGGR_PLAN'                         LINE_TYPE,
41174         pjp1.PROJECT_ID,
41175         pjp1.PROJECT_ORG_ID,
41176         pjp1.PROJECT_ORGANIZATION_ID,
41177         pjp1.PROJECT_ELEMENT_ID,
41178         pjp1.TIME_ID,
41179         pjp1.PERIOD_TYPE_ID,
41180         pjp1.CALENDAR_TYPE,
41181         pjp1.RBS_AGGR_LEVEL,
41182         pjp1.WBS_ROLLUP_FLAG,
41183         pjp1.PRG_ROLLUP_FLAG,
41184         pjp1.CURR_RECORD_TYPE_ID,
41185         pjp1.CURRENCY_CODE,
41186         pjp1.RBS_ELEMENT_ID,
41187         pjp1.RBS_VERSION_ID,
41188         pjp1.PLAN_VERSION_ID,
41189         pjp1.PLAN_TYPE_ID,
41190         pjp1.PLAN_TYPE_CODE,
41191         sum(pjp1.RAW_COST)                  RAW_COST,
41192         sum(pjp1.BRDN_COST)                 BRDN_COST,
41193         sum(pjp1.REVENUE)                   REVENUE,
41194         sum(pjp1.BILL_RAW_COST)             BILL_RAW_COST,
41195         sum(pjp1.BILL_BRDN_COST)            BILL_BRDN_COST,
41196         sum(pjp1.BILL_LABOR_RAW_COST)       BILL_LABOR_RAW_COST,
41197         sum(pjp1.BILL_LABOR_BRDN_COST)      BILL_LABOR_BRDN_COST,
41198         sum(pjp1.BILL_LABOR_HRS)            BILL_LABOR_HRS,
41199         sum(pjp1.EQUIPMENT_RAW_COST)        EQUIPMENT_RAW_COST,
41200         sum(pjp1.EQUIPMENT_BRDN_COST)       EQUIPMENT_BRDN_COST,
41201         sum(pjp1.CAPITALIZABLE_RAW_COST)    CAPITALIZABLE_RAW_COST,
41202         sum(pjp1.CAPITALIZABLE_BRDN_COST)   CAPITALIZABLE_BRDN_COST,
41203         sum(pjp1.LABOR_RAW_COST)            LABOR_RAW_COST,
41204         sum(pjp1.LABOR_BRDN_COST)           LABOR_BRDN_COST,
41205         sum(pjp1.LABOR_HRS)                 LABOR_HRS,
41206         sum(pjp1.LABOR_REVENUE)             LABOR_REVENUE,
41207         sum(pjp1.EQUIPMENT_HOURS)           EQUIPMENT_HOURS,
41208         sum(pjp1.BILLABLE_EQUIPMENT_HOURS)  BILLABLE_EQUIPMENT_HOURS,
41209         sum(pjp1.SUP_INV_COMMITTED_COST)    SUP_INV_COMMITTED_COST,
41210         sum(pjp1.PO_COMMITTED_COST)         PO_COMMITTED_COST,
41211         sum(pjp1.PR_COMMITTED_COST)         PR_COMMITTED_COST,
41212         sum(pjp1.OTH_COMMITTED_COST)        OTH_COMMITTED_COST,
41213         sum(pjp1.ACT_LABOR_HRS)             ACT_LABOR_HRS,
41214         sum(pjp1.ACT_EQUIP_HRS)             ACT_EQUIP_HRS,
41215         sum(pjp1.ACT_LABOR_BRDN_COST)       ACT_LABOR_BRDN_COST,
41216         sum(pjp1.ACT_EQUIP_BRDN_COST)       ACT_EQUIP_BRDN_COST,
41217         sum(pjp1.ACT_BRDN_COST)             ACT_BRDN_COST,
41218         sum(pjp1.ACT_RAW_COST)              ACT_RAW_COST,
41219         sum(pjp1.ACT_REVENUE)               ACT_REVENUE,
41220         sum(pjp1.ACT_LABOR_RAW_COST)        ACT_LABOR_RAW_COST,
41221         sum(pjp1.ACT_EQUIP_RAW_COST)        ACT_EQUIP_RAW_COST,
41222         sum(pjp1.ETC_LABOR_HRS)             ETC_LABOR_HRS,
41223         sum(pjp1.ETC_EQUIP_HRS)             ETC_EQUIP_HRS,
41224         sum(pjp1.ETC_LABOR_BRDN_COST)       ETC_LABOR_BRDN_COST,
41225         sum(pjp1.ETC_EQUIP_BRDN_COST)       ETC_EQUIP_BRDN_COST,
41226         sum(pjp1.ETC_BRDN_COST)             ETC_BRDN_COST,
41227         sum(pjp1.ETC_RAW_COST)              ETC_RAW_COST,
41228         sum(pjp1.ETC_LABOR_RAW_COST)        ETC_LABOR_RAW_COST,
41229         sum(pjp1.ETC_EQUIP_RAW_COST)        ETC_EQUIP_RAW_COST,
41230         sum(pjp1.CUSTOM1)                   CUSTOM1,
41231         sum(pjp1.CUSTOM2)                   CUSTOM2,
41232         sum(pjp1.CUSTOM3)                   CUSTOM3,
41233         sum(pjp1.CUSTOM4)                   CUSTOM4,
41234         sum(pjp1.CUSTOM5)                   CUSTOM5,
41235         sum(pjp1.CUSTOM6)                   CUSTOM6,
41236         sum(pjp1.CUSTOM7)                   CUSTOM7,
41237         sum(pjp1.CUSTOM8)                   CUSTOM8,
41238         sum(pjp1.CUSTOM9)                   CUSTOM9,
41239         sum(pjp1.CUSTOM10)                  CUSTOM10,
41240         sum(pjp1.CUSTOM11)                  CUSTOM11,
41241         sum(pjp1.CUSTOM12)                  CUSTOM12,
41242         sum(pjp1.CUSTOM13)                  CUSTOM13,
41243         sum(pjp1.CUSTOM14)                  CUSTOM14,
41244         sum(pjp1.CUSTOM15)                  CUSTOM15
41245       from
41246         PJI_FP_AGGR_PJP1 pjp1
41247       where
41248         pjp1.WORKER_ID = p_worker_id
41249       group by
41250         pjp1.WORKER_ID,
41251  /*     pjp1.PRG_LEVEL,     -- 6266824 sridhar not required and also impact of merge change */
41252         pjp1.PROJECT_ID,
41253         pjp1.PROJECT_ORG_ID,
41254         pjp1.PROJECT_ORGANIZATION_ID,
41255         pjp1.PROJECT_ELEMENT_ID,
41256         pjp1.TIME_ID,
41257         pjp1.PERIOD_TYPE_ID,
41258         pjp1.CALENDAR_TYPE,
41259         pjp1.RBS_AGGR_LEVEL,
41260         pjp1.WBS_ROLLUP_FLAG,
41261         pjp1.PRG_ROLLUP_FLAG,
41262         pjp1.CURR_RECORD_TYPE_ID,
41263         pjp1.CURRENCY_CODE,
41264         pjp1.RBS_ELEMENT_ID,
41265         pjp1.RBS_VERSION_ID,
41266         pjp1.PLAN_VERSION_ID,
41267         pjp1.PLAN_TYPE_ID,
41268         pjp1.PLAN_TYPE_CODE
41269       having not
41270         (nvl(sum(pjp1.RAW_COST), 0)                 = 0 and
41271          nvl(sum(pjp1.BRDN_COST), 0)                = 0 and
41272          nvl(sum(pjp1.REVENUE), 0)                  = 0 and
41273          nvl(sum(pjp1.BILL_RAW_COST), 0)            = 0 and
41274          nvl(sum(pjp1.BILL_BRDN_COST), 0)           = 0 and
41275          nvl(sum(pjp1.BILL_LABOR_RAW_COST), 0)      = 0 and
41276          nvl(sum(pjp1.BILL_LABOR_BRDN_COST), 0)     = 0 and
41277          nvl(sum(pjp1.BILL_LABOR_HRS), 0)           = 0 and
41278          nvl(sum(pjp1.EQUIPMENT_RAW_COST), 0)       = 0 and
41279          nvl(sum(pjp1.EQUIPMENT_BRDN_COST), 0)      = 0 and
41280          nvl(sum(pjp1.CAPITALIZABLE_RAW_COST), 0)   = 0 and
41281          nvl(sum(pjp1.CAPITALIZABLE_BRDN_COST), 0)  = 0 and
41282          nvl(sum(pjp1.LABOR_RAW_COST), 0)           = 0 and
41283          nvl(sum(pjp1.LABOR_BRDN_COST), 0)          = 0 and
41284          nvl(sum(pjp1.LABOR_HRS), 0)                = 0 and
41285          nvl(sum(pjp1.LABOR_REVENUE), 0)            = 0 and
41286          nvl(sum(pjp1.EQUIPMENT_HOURS), 0)          = 0 and
41287          nvl(sum(pjp1.BILLABLE_EQUIPMENT_HOURS), 0) = 0 and
41288          nvl(sum(pjp1.SUP_INV_COMMITTED_COST), 0)   = 0 and
41289          nvl(sum(pjp1.PO_COMMITTED_COST), 0)        = 0 and
41290          nvl(sum(pjp1.PR_COMMITTED_COST), 0)        = 0 and
41291          nvl(sum(pjp1.OTH_COMMITTED_COST), 0)       = 0 and
41292          nvl(sum(pjp1.ACT_LABOR_HRS), 0)            = 0 and
41293          nvl(sum(pjp1.ACT_EQUIP_HRS), 0)            = 0 and
41294          nvl(sum(pjp1.ACT_LABOR_BRDN_COST), 0)      = 0 and
41295          nvl(sum(pjp1.ACT_EQUIP_BRDN_COST), 0)      = 0 and
41296          nvl(sum(pjp1.ACT_BRDN_COST), 0)            = 0 and
41297          nvl(sum(pjp1.ACT_RAW_COST), 0)             = 0 and
41298          nvl(sum(pjp1.ACT_REVENUE), 0)              = 0 and
41299          nvl(sum(pjp1.ACT_LABOR_RAW_COST), 0)       = 0 and
41300          nvl(sum(pjp1.ACT_EQUIP_RAW_COST), 0)       = 0 and
41301          nvl(sum(pjp1.ETC_LABOR_HRS), 0)            = 0 and
41302          nvl(sum(pjp1.ETC_EQUIP_HRS), 0)            = 0 and
41303          nvl(sum(pjp1.ETC_LABOR_BRDN_COST), 0)      = 0 and
41304          nvl(sum(pjp1.ETC_EQUIP_BRDN_COST), 0)      = 0 and
41305          nvl(sum(pjp1.ETC_BRDN_COST), 0)            = 0 and
41306          nvl(sum(pjp1.ETC_RAW_COST), 0)             = 0 and
41307          nvl(sum(pjp1.ETC_LABOR_RAW_COST), 0)       = 0 and
41308          nvl(sum(pjp1.ETC_EQUIP_RAW_COST), 0)       = 0 and
41309          nvl(sum(pjp1.CUSTOM1), 0)                  = 0 and
41310          nvl(sum(pjp1.CUSTOM2), 0)                  = 0 and
41311          nvl(sum(pjp1.CUSTOM3), 0)                  = 0 and
41312          nvl(sum(pjp1.CUSTOM4), 0)                  = 0 and
41313          nvl(sum(pjp1.CUSTOM5), 0)                  = 0 and
41314          nvl(sum(pjp1.CUSTOM6), 0)                  = 0 and
41315          nvl(sum(pjp1.CUSTOM7), 0)                  = 0 and
41316          nvl(sum(pjp1.CUSTOM8), 0)                  = 0 and
41317          nvl(sum(pjp1.CUSTOM9), 0)                  = 0 and
41318          nvl(sum(pjp1.CUSTOM10), 0)                 = 0 and
41319          nvl(sum(pjp1.CUSTOM11), 0)                 = 0 and
41320          nvl(sum(pjp1.CUSTOM12), 0)                 = 0 and
41321          nvl(sum(pjp1.CUSTOM13), 0)                 = 0 and
41322          nvl(sum(pjp1.CUSTOM14), 0)                 = 0 and
41323          nvl(sum(pjp1.CUSTOM15), 0)                 = 0);
41324 
41325       insert /*+ parallel(PJI_AC_AGGR_PJP1) */
41326                  into PJI_AC_AGGR_PJP1 partition(P2)
41327       (
41328         WORKER_ID,
41329         RECORD_TYPE,
41330         PRG_LEVEL,
41331         PROJECT_ID,
41332         PROJECT_ORG_ID,
41333         PROJECT_ORGANIZATION_ID,
41334         PROJECT_ELEMENT_ID,
41335         TIME_ID,
41336         PERIOD_TYPE_ID,
41337         CALENDAR_TYPE,
41338         WBS_ROLLUP_FLAG,
41339         PRG_ROLLUP_FLAG,
41340         CURR_RECORD_TYPE_ID,
41341         CURRENCY_CODE,
41342         REVENUE,
41343         INITIAL_FUNDING_AMOUNT,
41344         INITIAL_FUNDING_COUNT,
41345         ADDITIONAL_FUNDING_AMOUNT,
41346         ADDITIONAL_FUNDING_COUNT,
41347         CANCELLED_FUNDING_AMOUNT,
41348         CANCELLED_FUNDING_COUNT,
41349         FUNDING_ADJUSTMENT_AMOUNT,
41350         FUNDING_ADJUSTMENT_COUNT,
41351         REVENUE_WRITEOFF,
41352         AR_INVOICE_AMOUNT,
41353         AR_INVOICE_COUNT,
41354         AR_CASH_APPLIED_AMOUNT,
41355         AR_INVOICE_WRITE_OFF_AMOUNT,
41356         AR_INVOICE_WRITEOFF_COUNT,
41357         AR_CREDIT_MEMO_AMOUNT,
41358         AR_CREDIT_MEMO_COUNT,
41359         UNBILLED_RECEIVABLES,
41360         UNEARNED_REVENUE,
41361         AR_UNAPPR_INVOICE_AMOUNT,
41362         AR_UNAPPR_INVOICE_COUNT,
41363         AR_APPR_INVOICE_AMOUNT,
41364         AR_APPR_INVOICE_COUNT,
41365         AR_AMOUNT_DUE,
41366         AR_COUNT_DUE,
41367         AR_AMOUNT_OVERDUE,
41368         AR_COUNT_OVERDUE,
41369         CUSTOM1,
41370         CUSTOM2,
41371         CUSTOM3,
41372         CUSTOM4,
41373         CUSTOM5,
41374         CUSTOM6,
41375         CUSTOM7,
41376         CUSTOM8,
41377         CUSTOM9,
41378         CUSTOM10,
41379         CUSTOM11,
41380         CUSTOM12,
41381         CUSTOM13,
41382         CUSTOM14,
41383         CUSTOM15
41384       )
41385       select
41386         pjp1.WORKER_ID,
41387         'A'                                        RECORD_TYPE,
41388         pjp1.PRG_LEVEL,
41389         pjp1.PROJECT_ID,
41390         pjp1.PROJECT_ORG_ID,
41391         pjp1.PROJECT_ORGANIZATION_ID,
41392         pjp1.PROJECT_ELEMENT_ID,
41393         pjp1.TIME_ID,
41394         pjp1.PERIOD_TYPE_ID,
41395         pjp1.CALENDAR_TYPE,
41396         pjp1.WBS_ROLLUP_FLAG,
41397         pjp1.PRG_ROLLUP_FLAG,
41398         pjp1.CURR_RECORD_TYPE_ID,
41399         pjp1.CURRENCY_CODE,
41400         sum(pjp1.REVENUE)                          REVENUE,
41401         sum(pjp1.INITIAL_FUNDING_AMOUNT)           INITIAL_FUNDING_AMOUNT,
41402         sum(pjp1.INITIAL_FUNDING_COUNT)            INITIAL_FUNDING_COUNT,
41403         sum(pjp1.ADDITIONAL_FUNDING_AMOUNT)        ADDITIONAL_FUNDING_AMOUNT,
41404         sum(pjp1.ADDITIONAL_FUNDING_COUNT)         ADDITIONAL_FUNDING_COUNT,
41405         sum(pjp1.CANCELLED_FUNDING_AMOUNT)         CANCELLED_FUNDING_AMOUNT,
41406         sum(pjp1.CANCELLED_FUNDING_COUNT)          CANCELLED_FUNDING_COUNT,
41407         sum(pjp1.FUNDING_ADJUSTMENT_AMOUNT)        FUNDING_ADJUSTMENT_AMOUNT,
41408         sum(pjp1.FUNDING_ADJUSTMENT_COUNT)         FUNDING_ADJUSTMENT_COUNT,
41409         sum(pjp1.REVENUE_WRITEOFF)                 REVENUE_WRITEOFF,
41410         sum(pjp1.AR_INVOICE_AMOUNT)                AR_INVOICE_AMOUNT,
41411         sum(pjp1.AR_INVOICE_COUNT)                 AR_INVOICE_COUNT,
41412         sum(pjp1.AR_CASH_APPLIED_AMOUNT)           AR_CASH_APPLIED_AMOUNT,
41413         sum(pjp1.AR_INVOICE_WRITE_OFF_AMOUNT)      AR_INVOICE_WRITE_OFF_AMOUNT,
41414         sum(pjp1.AR_INVOICE_WRITEOFF_COUNT)        AR_INVOICE_WRITEOFF_COUNT,
41415         sum(pjp1.AR_CREDIT_MEMO_AMOUNT)            AR_CREDIT_MEMO_AMOUNT,
41416         sum(pjp1.AR_CREDIT_MEMO_COUNT)             AR_CREDIT_MEMO_COUNT,
41417         sum(pjp1.UNBILLED_RECEIVABLES)             UNBILLED_RECEIVABLES,
41418         sum(pjp1.UNEARNED_REVENUE)                 UNEARNED_REVENUE,
41419         sum(pjp1.AR_UNAPPR_INVOICE_AMOUNT)         AR_UNAPPR_INVOICE_AMOUNT,
41420         sum(pjp1.AR_UNAPPR_INVOICE_COUNT)          AR_UNAPPR_INVOICE_COUNT,
41421         sum(pjp1.AR_APPR_INVOICE_AMOUNT)           AR_APPR_INVOICE_AMOUNT,
41422         sum(pjp1.AR_APPR_INVOICE_COUNT)            AR_APPR_INVOICE_COUNT,
41423         sum(pjp1.AR_AMOUNT_DUE)                    AR_AMOUNT_DUE,
41424         sum(pjp1.AR_COUNT_DUE)                     AR_COUNT_DUE,
41425         sum(pjp1.AR_AMOUNT_OVERDUE)                AR_AMOUNT_OVERDUE,
41426         sum(pjp1.AR_COUNT_OVERDUE)                 AR_COUNT_OVERDUE,
41427         sum(pjp1.CUSTOM1)                          CUSTOM1,
41428         sum(pjp1.CUSTOM2)                          CUSTOM2,
41429         sum(pjp1.CUSTOM3)                          CUSTOM3,
41430         sum(pjp1.CUSTOM4)                          CUSTOM4,
41431         sum(pjp1.CUSTOM5)                          CUSTOM5,
41432         sum(pjp1.CUSTOM6)                          CUSTOM6,
41433         sum(pjp1.CUSTOM7)                          CUSTOM7,
41434         sum(pjp1.CUSTOM8)                          CUSTOM8,
41435         sum(pjp1.CUSTOM9)                          CUSTOM9,
41436         sum(pjp1.CUSTOM10)                         CUSTOM10,
41437         sum(pjp1.CUSTOM11)                         CUSTOM11,
41438         sum(pjp1.CUSTOM12)                         CUSTOM12,
41439         sum(pjp1.CUSTOM13)                         CUSTOM13,
41440         sum(pjp1.CUSTOM14)                         CUSTOM14,
41441         sum(pjp1.CUSTOM15)                         CUSTOM15
41442       from
41443         PJI_AC_AGGR_PJP1 pjp1
41444       where
41445         pjp1.WORKER_ID = p_worker_id
41446       group by
41447         pjp1.WORKER_ID,
41448         pjp1.PRG_LEVEL,
41449         pjp1.PROJECT_ID,
41450         pjp1.PROJECT_ORG_ID,
41451         pjp1.PROJECT_ORGANIZATION_ID,
41452         pjp1.PROJECT_ELEMENT_ID,
41453         pjp1.TIME_ID,
41454         pjp1.PERIOD_TYPE_ID,
41455         pjp1.CALENDAR_TYPE,
41456         pjp1.WBS_ROLLUP_FLAG,
41457         pjp1.PRG_ROLLUP_FLAG,
41458         pjp1.CURR_RECORD_TYPE_ID,
41459         pjp1.CURRENCY_CODE
41460       having not
41461         (nvl(sum(REVENUE), 0)                     = 0 and
41462          nvl(sum(INITIAL_FUNDING_AMOUNT), 0)      = 0 and
41463          nvl(sum(INITIAL_FUNDING_COUNT), 0)       = 0 and
41464          nvl(sum(ADDITIONAL_FUNDING_AMOUNT), 0)   = 0 and
41465          nvl(sum(ADDITIONAL_FUNDING_COUNT), 0)    = 0 and
41466          nvl(sum(CANCELLED_FUNDING_AMOUNT), 0)    = 0 and
41467          nvl(sum(CANCELLED_FUNDING_COUNT), 0)     = 0 and
41468          nvl(sum(FUNDING_ADJUSTMENT_AMOUNT), 0)   = 0 and
41469          nvl(sum(FUNDING_ADJUSTMENT_COUNT), 0)    = 0 and
41470          nvl(sum(REVENUE_WRITEOFF), 0)            = 0 and
41471          nvl(sum(AR_INVOICE_AMOUNT), 0)           = 0 and
41472          nvl(sum(AR_INVOICE_COUNT), 0)            = 0 and
41473          nvl(sum(AR_CASH_APPLIED_AMOUNT), 0)      = 0 and
41474          nvl(sum(AR_INVOICE_WRITE_OFF_AMOUNT), 0) = 0 and
41475          nvl(sum(AR_INVOICE_WRITEOFF_COUNT), 0)   = 0 and
41476          nvl(sum(AR_CREDIT_MEMO_AMOUNT), 0)       = 0 and
41477          nvl(sum(AR_CREDIT_MEMO_COUNT), 0)        = 0 and
41478          nvl(sum(UNBILLED_RECEIVABLES), 0)        = 0 and
41479          nvl(sum(UNEARNED_REVENUE), 0)            = 0 and
41480          nvl(sum(AR_UNAPPR_INVOICE_AMOUNT), 0)    = 0 and
41481          nvl(sum(AR_UNAPPR_INVOICE_COUNT), 0)     = 0 and
41482          nvl(sum(AR_APPR_INVOICE_AMOUNT), 0)      = 0 and
41483          nvl(sum(AR_APPR_INVOICE_COUNT), 0)       = 0 and
41484          nvl(sum(AR_AMOUNT_DUE), 0)               = 0 and
41485          nvl(sum(AR_COUNT_DUE), 0)                = 0 and
41486          nvl(sum(AR_AMOUNT_OVERDUE), 0)           = 0 and
41487          nvl(sum(AR_COUNT_OVERDUE), 0)            = 0 and
41488          nvl(sum(CUSTOM1), 0)                     = 0 and
41489          nvl(sum(CUSTOM2), 0)                     = 0 and
41490          nvl(sum(CUSTOM3), 0)                     = 0 and
41491          nvl(sum(CUSTOM4), 0)                     = 0 and
41492          nvl(sum(CUSTOM5), 0)                     = 0 and
41493          nvl(sum(CUSTOM6), 0)                     = 0 and
41494          nvl(sum(CUSTOM7), 0)                     = 0 and
41495          nvl(sum(CUSTOM8), 0)                     = 0 and
41496          nvl(sum(CUSTOM9), 0)                     = 0 and
41497          nvl(sum(CUSTOM10), 0)                    = 0 and
41498          nvl(sum(CUSTOM11), 0)                    = 0 and
41499          nvl(sum(CUSTOM12), 0)                    = 0 and
41500          nvl(sum(CUSTOM13), 0)                    = 0 and
41501          nvl(sum(CUSTOM14), 0)                    = 0 and
41502          nvl(sum(CUSTOM15), 0)                    = 0);
41503     elsif (p_worker_id =3) then
41504       -- Query for Partition 3
41505 
41506       insert /*+ parallel(PJI_FP_AGGR_PJP1) */
41507                  into PJI_FP_AGGR_PJP1 partition(P3)
41508 
41509       (
41510         WORKER_ID,
41511         RECORD_TYPE,
41512         PRG_LEVEL,
41513         LINE_TYPE,
41514         PROJECT_ID,
41515         PROJECT_ORG_ID,
41516         PROJECT_ORGANIZATION_ID,
41517         PROJECT_ELEMENT_ID,
41518         TIME_ID,
41519         PERIOD_TYPE_ID,
41520         CALENDAR_TYPE,
41521         RBS_AGGR_LEVEL,
41522         WBS_ROLLUP_FLAG,
41523         PRG_ROLLUP_FLAG,
41524         CURR_RECORD_TYPE_ID,
41525         CURRENCY_CODE,
41526         RBS_ELEMENT_ID,
41527         RBS_VERSION_ID,
41528         PLAN_VERSION_ID,
41529         PLAN_TYPE_ID,
41530         PLAN_TYPE_CODE,
41531         RAW_COST,
41532         BRDN_COST,
41533         REVENUE,
41534         BILL_RAW_COST,
41535         BILL_BRDN_COST,
41536         BILL_LABOR_RAW_COST,
41537         BILL_LABOR_BRDN_COST,
41538         BILL_LABOR_HRS,
41539         EQUIPMENT_RAW_COST,
41540         EQUIPMENT_BRDN_COST,
41541         CAPITALIZABLE_RAW_COST,
41542         CAPITALIZABLE_BRDN_COST,
41543         LABOR_RAW_COST,
41544         LABOR_BRDN_COST,
41545         LABOR_HRS,
41546         LABOR_REVENUE,
41547         EQUIPMENT_HOURS,
41548         BILLABLE_EQUIPMENT_HOURS,
41549         SUP_INV_COMMITTED_COST,
41550         PO_COMMITTED_COST,
41551         PR_COMMITTED_COST,
41552         OTH_COMMITTED_COST,
41553         ACT_LABOR_HRS,
41554         ACT_EQUIP_HRS,
41555         ACT_LABOR_BRDN_COST,
41556         ACT_EQUIP_BRDN_COST,
41557         ACT_BRDN_COST,
41558         ACT_RAW_COST,
41559         ACT_REVENUE,
41560         ACT_LABOR_RAW_COST,
41561         ACT_EQUIP_RAW_COST,
41562         ETC_LABOR_HRS,
41563         ETC_EQUIP_HRS,
41564         ETC_LABOR_BRDN_COST,
41565         ETC_EQUIP_BRDN_COST,
41566         ETC_BRDN_COST,
41567         ETC_RAW_COST,
41568         ETC_LABOR_RAW_COST,
41569         ETC_EQUIP_RAW_COST,
41570         CUSTOM1,
41571         CUSTOM2,
41572         CUSTOM3,
41573         CUSTOM4,
41574         CUSTOM5,
41575         CUSTOM6,
41576         CUSTOM7,
41577         CUSTOM8,
41578         CUSTOM9,
41579         CUSTOM10,
41580         CUSTOM11,
41581         CUSTOM12,
41582         CUSTOM13,
41583         CUSTOM14,
41584         CUSTOM15
41585       )
41586       select
41587         pjp1.WORKER_ID,
41588         'A'                                 RECORD_TYPE,
41589         0 ,             /*  pjp1.PRG_LEVEL,   6266824 sridhar commented as this is required and also impact of Merge changes */
41590         'AGGR_PLAN'                         LINE_TYPE,
41591         pjp1.PROJECT_ID,
41592         pjp1.PROJECT_ORG_ID,
41593         pjp1.PROJECT_ORGANIZATION_ID,
41594         pjp1.PROJECT_ELEMENT_ID,
41595         pjp1.TIME_ID,
41596         pjp1.PERIOD_TYPE_ID,
41597         pjp1.CALENDAR_TYPE,
41598         pjp1.RBS_AGGR_LEVEL,
41599         pjp1.WBS_ROLLUP_FLAG,
41600         pjp1.PRG_ROLLUP_FLAG,
41601         pjp1.CURR_RECORD_TYPE_ID,
41602         pjp1.CURRENCY_CODE,
41603         pjp1.RBS_ELEMENT_ID,
41604         pjp1.RBS_VERSION_ID,
41605         pjp1.PLAN_VERSION_ID,
41606         pjp1.PLAN_TYPE_ID,
41607         pjp1.PLAN_TYPE_CODE,
41608         sum(pjp1.RAW_COST)                  RAW_COST,
41609         sum(pjp1.BRDN_COST)                 BRDN_COST,
41610         sum(pjp1.REVENUE)                   REVENUE,
41611         sum(pjp1.BILL_RAW_COST)             BILL_RAW_COST,
41612         sum(pjp1.BILL_BRDN_COST)            BILL_BRDN_COST,
41613         sum(pjp1.BILL_LABOR_RAW_COST)       BILL_LABOR_RAW_COST,
41614         sum(pjp1.BILL_LABOR_BRDN_COST)      BILL_LABOR_BRDN_COST,
41615         sum(pjp1.BILL_LABOR_HRS)            BILL_LABOR_HRS,
41616         sum(pjp1.EQUIPMENT_RAW_COST)        EQUIPMENT_RAW_COST,
41617         sum(pjp1.EQUIPMENT_BRDN_COST)       EQUIPMENT_BRDN_COST,
41618         sum(pjp1.CAPITALIZABLE_RAW_COST)    CAPITALIZABLE_RAW_COST,
41619         sum(pjp1.CAPITALIZABLE_BRDN_COST)   CAPITALIZABLE_BRDN_COST,
41620         sum(pjp1.LABOR_RAW_COST)            LABOR_RAW_COST,
41621         sum(pjp1.LABOR_BRDN_COST)           LABOR_BRDN_COST,
41622         sum(pjp1.LABOR_HRS)                 LABOR_HRS,
41623         sum(pjp1.LABOR_REVENUE)             LABOR_REVENUE,
41624         sum(pjp1.EQUIPMENT_HOURS)           EQUIPMENT_HOURS,
41625         sum(pjp1.BILLABLE_EQUIPMENT_HOURS)  BILLABLE_EQUIPMENT_HOURS,
41626         sum(pjp1.SUP_INV_COMMITTED_COST)    SUP_INV_COMMITTED_COST,
41627         sum(pjp1.PO_COMMITTED_COST)         PO_COMMITTED_COST,
41628         sum(pjp1.PR_COMMITTED_COST)         PR_COMMITTED_COST,
41629         sum(pjp1.OTH_COMMITTED_COST)        OTH_COMMITTED_COST,
41630         sum(pjp1.ACT_LABOR_HRS)             ACT_LABOR_HRS,
41631         sum(pjp1.ACT_EQUIP_HRS)             ACT_EQUIP_HRS,
41632         sum(pjp1.ACT_LABOR_BRDN_COST)       ACT_LABOR_BRDN_COST,
41633         sum(pjp1.ACT_EQUIP_BRDN_COST)       ACT_EQUIP_BRDN_COST,
41634         sum(pjp1.ACT_BRDN_COST)             ACT_BRDN_COST,
41635         sum(pjp1.ACT_RAW_COST)              ACT_RAW_COST,
41636         sum(pjp1.ACT_REVENUE)               ACT_REVENUE,
41637         sum(pjp1.ACT_LABOR_RAW_COST)        ACT_LABOR_RAW_COST,
41638         sum(pjp1.ACT_EQUIP_RAW_COST)        ACT_EQUIP_RAW_COST,
41639         sum(pjp1.ETC_LABOR_HRS)             ETC_LABOR_HRS,
41640         sum(pjp1.ETC_EQUIP_HRS)             ETC_EQUIP_HRS,
41641         sum(pjp1.ETC_LABOR_BRDN_COST)       ETC_LABOR_BRDN_COST,
41642         sum(pjp1.ETC_EQUIP_BRDN_COST)       ETC_EQUIP_BRDN_COST,
41643         sum(pjp1.ETC_BRDN_COST)             ETC_BRDN_COST,
41644         sum(pjp1.ETC_RAW_COST)              ETC_RAW_COST,
41645         sum(pjp1.ETC_LABOR_RAW_COST)        ETC_LABOR_RAW_COST,
41646         sum(pjp1.ETC_EQUIP_RAW_COST)        ETC_EQUIP_RAW_COST,
41647         sum(pjp1.CUSTOM1)                   CUSTOM1,
41648         sum(pjp1.CUSTOM2)                   CUSTOM2,
41649         sum(pjp1.CUSTOM3)                   CUSTOM3,
41650         sum(pjp1.CUSTOM4)                   CUSTOM4,
41651         sum(pjp1.CUSTOM5)                   CUSTOM5,
41652         sum(pjp1.CUSTOM6)                   CUSTOM6,
41653         sum(pjp1.CUSTOM7)                   CUSTOM7,
41654         sum(pjp1.CUSTOM8)                   CUSTOM8,
41655         sum(pjp1.CUSTOM9)                   CUSTOM9,
41656         sum(pjp1.CUSTOM10)                  CUSTOM10,
41657         sum(pjp1.CUSTOM11)                  CUSTOM11,
41658         sum(pjp1.CUSTOM12)                  CUSTOM12,
41659         sum(pjp1.CUSTOM13)                  CUSTOM13,
41660         sum(pjp1.CUSTOM14)                  CUSTOM14,
41661         sum(pjp1.CUSTOM15)                  CUSTOM15
41662       from
41663         PJI_FP_AGGR_PJP1 pjp1
41664       where
41665         pjp1.WORKER_ID = p_worker_id
41666       group by
41667         pjp1.WORKER_ID,
41668  /*     pjp1.PRG_LEVEL,     -- 6266824 sridhar not required and also impact of merge change */
41669         pjp1.PROJECT_ID,
41670         pjp1.PROJECT_ORG_ID,
41671         pjp1.PROJECT_ORGANIZATION_ID,
41672         pjp1.PROJECT_ELEMENT_ID,
41673         pjp1.TIME_ID,
41674         pjp1.PERIOD_TYPE_ID,
41675         pjp1.CALENDAR_TYPE,
41676         pjp1.RBS_AGGR_LEVEL,
41677         pjp1.WBS_ROLLUP_FLAG,
41678         pjp1.PRG_ROLLUP_FLAG,
41679         pjp1.CURR_RECORD_TYPE_ID,
41680         pjp1.CURRENCY_CODE,
41681         pjp1.RBS_ELEMENT_ID,
41682         pjp1.RBS_VERSION_ID,
41683         pjp1.PLAN_VERSION_ID,
41684         pjp1.PLAN_TYPE_ID,
41685         pjp1.PLAN_TYPE_CODE
41686       having not
41687         (nvl(sum(pjp1.RAW_COST), 0)                 = 0 and
41688          nvl(sum(pjp1.BRDN_COST), 0)                = 0 and
41689          nvl(sum(pjp1.REVENUE), 0)                  = 0 and
41690          nvl(sum(pjp1.BILL_RAW_COST), 0)            = 0 and
41691          nvl(sum(pjp1.BILL_BRDN_COST), 0)           = 0 and
41692          nvl(sum(pjp1.BILL_LABOR_RAW_COST), 0)      = 0 and
41693          nvl(sum(pjp1.BILL_LABOR_BRDN_COST), 0)     = 0 and
41694          nvl(sum(pjp1.BILL_LABOR_HRS), 0)           = 0 and
41695          nvl(sum(pjp1.EQUIPMENT_RAW_COST), 0)       = 0 and
41696          nvl(sum(pjp1.EQUIPMENT_BRDN_COST), 0)      = 0 and
41697          nvl(sum(pjp1.CAPITALIZABLE_RAW_COST), 0)   = 0 and
41698          nvl(sum(pjp1.CAPITALIZABLE_BRDN_COST), 0)  = 0 and
41699          nvl(sum(pjp1.LABOR_RAW_COST), 0)           = 0 and
41700          nvl(sum(pjp1.LABOR_BRDN_COST), 0)          = 0 and
41701          nvl(sum(pjp1.LABOR_HRS), 0)                = 0 and
41702          nvl(sum(pjp1.LABOR_REVENUE), 0)            = 0 and
41703          nvl(sum(pjp1.EQUIPMENT_HOURS), 0)          = 0 and
41704          nvl(sum(pjp1.BILLABLE_EQUIPMENT_HOURS), 0) = 0 and
41705          nvl(sum(pjp1.SUP_INV_COMMITTED_COST), 0)   = 0 and
41706          nvl(sum(pjp1.PO_COMMITTED_COST), 0)        = 0 and
41707          nvl(sum(pjp1.PR_COMMITTED_COST), 0)        = 0 and
41708          nvl(sum(pjp1.OTH_COMMITTED_COST), 0)       = 0 and
41709          nvl(sum(pjp1.ACT_LABOR_HRS), 0)            = 0 and
41710          nvl(sum(pjp1.ACT_EQUIP_HRS), 0)            = 0 and
41711          nvl(sum(pjp1.ACT_LABOR_BRDN_COST), 0)      = 0 and
41712          nvl(sum(pjp1.ACT_EQUIP_BRDN_COST), 0)      = 0 and
41713          nvl(sum(pjp1.ACT_BRDN_COST), 0)            = 0 and
41714          nvl(sum(pjp1.ACT_RAW_COST), 0)             = 0 and
41715          nvl(sum(pjp1.ACT_REVENUE), 0)              = 0 and
41716          nvl(sum(pjp1.ACT_LABOR_RAW_COST), 0)       = 0 and
41717          nvl(sum(pjp1.ACT_EQUIP_RAW_COST), 0)       = 0 and
41718          nvl(sum(pjp1.ETC_LABOR_HRS), 0)            = 0 and
41719          nvl(sum(pjp1.ETC_EQUIP_HRS), 0)            = 0 and
41720          nvl(sum(pjp1.ETC_LABOR_BRDN_COST), 0)      = 0 and
41721          nvl(sum(pjp1.ETC_EQUIP_BRDN_COST), 0)      = 0 and
41722          nvl(sum(pjp1.ETC_BRDN_COST), 0)            = 0 and
41723          nvl(sum(pjp1.ETC_RAW_COST), 0)             = 0 and
41724          nvl(sum(pjp1.ETC_LABOR_RAW_COST), 0)       = 0 and
41725          nvl(sum(pjp1.ETC_EQUIP_RAW_COST), 0)       = 0 and
41726          nvl(sum(pjp1.CUSTOM1), 0)                  = 0 and
41727          nvl(sum(pjp1.CUSTOM2), 0)                  = 0 and
41728          nvl(sum(pjp1.CUSTOM3), 0)                  = 0 and
41729          nvl(sum(pjp1.CUSTOM4), 0)                  = 0 and
41730          nvl(sum(pjp1.CUSTOM5), 0)                  = 0 and
41731          nvl(sum(pjp1.CUSTOM6), 0)                  = 0 and
41732          nvl(sum(pjp1.CUSTOM7), 0)                  = 0 and
41733          nvl(sum(pjp1.CUSTOM8), 0)                  = 0 and
41734          nvl(sum(pjp1.CUSTOM9), 0)                  = 0 and
41735          nvl(sum(pjp1.CUSTOM10), 0)                 = 0 and
41736          nvl(sum(pjp1.CUSTOM11), 0)                 = 0 and
41737          nvl(sum(pjp1.CUSTOM12), 0)                 = 0 and
41738          nvl(sum(pjp1.CUSTOM13), 0)                 = 0 and
41739          nvl(sum(pjp1.CUSTOM14), 0)                 = 0 and
41740          nvl(sum(pjp1.CUSTOM15), 0)                 = 0);
41741 
41742       insert /*+ parallel(PJI_AC_AGGR_PJP1) */
41743                  into PJI_AC_AGGR_PJP1 partition(P3)
41744       (
41745         WORKER_ID,
41746         RECORD_TYPE,
41747         PRG_LEVEL,
41748         PROJECT_ID,
41749         PROJECT_ORG_ID,
41750         PROJECT_ORGANIZATION_ID,
41751         PROJECT_ELEMENT_ID,
41752         TIME_ID,
41753         PERIOD_TYPE_ID,
41754         CALENDAR_TYPE,
41755         WBS_ROLLUP_FLAG,
41756         PRG_ROLLUP_FLAG,
41757         CURR_RECORD_TYPE_ID,
41758         CURRENCY_CODE,
41759         REVENUE,
41760         INITIAL_FUNDING_AMOUNT,
41761         INITIAL_FUNDING_COUNT,
41762         ADDITIONAL_FUNDING_AMOUNT,
41763         ADDITIONAL_FUNDING_COUNT,
41764         CANCELLED_FUNDING_AMOUNT,
41765         CANCELLED_FUNDING_COUNT,
41766         FUNDING_ADJUSTMENT_AMOUNT,
41767         FUNDING_ADJUSTMENT_COUNT,
41768         REVENUE_WRITEOFF,
41769         AR_INVOICE_AMOUNT,
41770         AR_INVOICE_COUNT,
41771         AR_CASH_APPLIED_AMOUNT,
41772         AR_INVOICE_WRITE_OFF_AMOUNT,
41773         AR_INVOICE_WRITEOFF_COUNT,
41774         AR_CREDIT_MEMO_AMOUNT,
41775         AR_CREDIT_MEMO_COUNT,
41776         UNBILLED_RECEIVABLES,
41777         UNEARNED_REVENUE,
41778         AR_UNAPPR_INVOICE_AMOUNT,
41779         AR_UNAPPR_INVOICE_COUNT,
41780         AR_APPR_INVOICE_AMOUNT,
41781         AR_APPR_INVOICE_COUNT,
41782         AR_AMOUNT_DUE,
41783         AR_COUNT_DUE,
41784         AR_AMOUNT_OVERDUE,
41785         AR_COUNT_OVERDUE,
41786         CUSTOM1,
41787         CUSTOM2,
41788         CUSTOM3,
41789         CUSTOM4,
41790         CUSTOM5,
41791         CUSTOM6,
41792         CUSTOM7,
41793         CUSTOM8,
41794         CUSTOM9,
41795         CUSTOM10,
41796         CUSTOM11,
41797         CUSTOM12,
41798         CUSTOM13,
41799         CUSTOM14,
41800         CUSTOM15
41801       )
41802       select
41803         pjp1.WORKER_ID,
41804         'A'                                        RECORD_TYPE,
41805         pjp1.PRG_LEVEL,
41806         pjp1.PROJECT_ID,
41807         pjp1.PROJECT_ORG_ID,
41808         pjp1.PROJECT_ORGANIZATION_ID,
41809         pjp1.PROJECT_ELEMENT_ID,
41810         pjp1.TIME_ID,
41811         pjp1.PERIOD_TYPE_ID,
41812         pjp1.CALENDAR_TYPE,
41813         pjp1.WBS_ROLLUP_FLAG,
41814         pjp1.PRG_ROLLUP_FLAG,
41815         pjp1.CURR_RECORD_TYPE_ID,
41816         pjp1.CURRENCY_CODE,
41817         sum(pjp1.REVENUE)                          REVENUE,
41818         sum(pjp1.INITIAL_FUNDING_AMOUNT)           INITIAL_FUNDING_AMOUNT,
41819         sum(pjp1.INITIAL_FUNDING_COUNT)            INITIAL_FUNDING_COUNT,
41820         sum(pjp1.ADDITIONAL_FUNDING_AMOUNT)        ADDITIONAL_FUNDING_AMOUNT,
41821         sum(pjp1.ADDITIONAL_FUNDING_COUNT)         ADDITIONAL_FUNDING_COUNT,
41822         sum(pjp1.CANCELLED_FUNDING_AMOUNT)         CANCELLED_FUNDING_AMOUNT,
41823         sum(pjp1.CANCELLED_FUNDING_COUNT)          CANCELLED_FUNDING_COUNT,
41824         sum(pjp1.FUNDING_ADJUSTMENT_AMOUNT)        FUNDING_ADJUSTMENT_AMOUNT,
41825         sum(pjp1.FUNDING_ADJUSTMENT_COUNT)         FUNDING_ADJUSTMENT_COUNT,
41826         sum(pjp1.REVENUE_WRITEOFF)                 REVENUE_WRITEOFF,
41827         sum(pjp1.AR_INVOICE_AMOUNT)                AR_INVOICE_AMOUNT,
41828         sum(pjp1.AR_INVOICE_COUNT)                 AR_INVOICE_COUNT,
41829         sum(pjp1.AR_CASH_APPLIED_AMOUNT)           AR_CASH_APPLIED_AMOUNT,
41830         sum(pjp1.AR_INVOICE_WRITE_OFF_AMOUNT)      AR_INVOICE_WRITE_OFF_AMOUNT,
41831         sum(pjp1.AR_INVOICE_WRITEOFF_COUNT)        AR_INVOICE_WRITEOFF_COUNT,
41832         sum(pjp1.AR_CREDIT_MEMO_AMOUNT)            AR_CREDIT_MEMO_AMOUNT,
41833         sum(pjp1.AR_CREDIT_MEMO_COUNT)             AR_CREDIT_MEMO_COUNT,
41834         sum(pjp1.UNBILLED_RECEIVABLES)             UNBILLED_RECEIVABLES,
41835         sum(pjp1.UNEARNED_REVENUE)                 UNEARNED_REVENUE,
41836         sum(pjp1.AR_UNAPPR_INVOICE_AMOUNT)         AR_UNAPPR_INVOICE_AMOUNT,
41837         sum(pjp1.AR_UNAPPR_INVOICE_COUNT)          AR_UNAPPR_INVOICE_COUNT,
41838         sum(pjp1.AR_APPR_INVOICE_AMOUNT)           AR_APPR_INVOICE_AMOUNT,
41839         sum(pjp1.AR_APPR_INVOICE_COUNT)            AR_APPR_INVOICE_COUNT,
41840         sum(pjp1.AR_AMOUNT_DUE)                    AR_AMOUNT_DUE,
41841         sum(pjp1.AR_COUNT_DUE)                     AR_COUNT_DUE,
41842         sum(pjp1.AR_AMOUNT_OVERDUE)                AR_AMOUNT_OVERDUE,
41843         sum(pjp1.AR_COUNT_OVERDUE)                 AR_COUNT_OVERDUE,
41844         sum(pjp1.CUSTOM1)                          CUSTOM1,
41845         sum(pjp1.CUSTOM2)                          CUSTOM2,
41846         sum(pjp1.CUSTOM3)                          CUSTOM3,
41847         sum(pjp1.CUSTOM4)                          CUSTOM4,
41848         sum(pjp1.CUSTOM5)                          CUSTOM5,
41849         sum(pjp1.CUSTOM6)                          CUSTOM6,
41850         sum(pjp1.CUSTOM7)                          CUSTOM7,
41851         sum(pjp1.CUSTOM8)                          CUSTOM8,
41852         sum(pjp1.CUSTOM9)                          CUSTOM9,
41853         sum(pjp1.CUSTOM10)                         CUSTOM10,
41854         sum(pjp1.CUSTOM11)                         CUSTOM11,
41855         sum(pjp1.CUSTOM12)                         CUSTOM12,
41856         sum(pjp1.CUSTOM13)                         CUSTOM13,
41857         sum(pjp1.CUSTOM14)                         CUSTOM14,
41858         sum(pjp1.CUSTOM15)                         CUSTOM15
41859       from
41860         PJI_AC_AGGR_PJP1 pjp1
41861       where
41862         pjp1.WORKER_ID = p_worker_id
41863       group by
41864         pjp1.WORKER_ID,
41865         pjp1.PRG_LEVEL,
41866         pjp1.PROJECT_ID,
41867         pjp1.PROJECT_ORG_ID,
41868         pjp1.PROJECT_ORGANIZATION_ID,
41869         pjp1.PROJECT_ELEMENT_ID,
41870         pjp1.TIME_ID,
41871         pjp1.PERIOD_TYPE_ID,
41872         pjp1.CALENDAR_TYPE,
41873         pjp1.WBS_ROLLUP_FLAG,
41874         pjp1.PRG_ROLLUP_FLAG,
41875         pjp1.CURR_RECORD_TYPE_ID,
41876         pjp1.CURRENCY_CODE
41877       having not
41878         (nvl(sum(REVENUE), 0)                     = 0 and
41879          nvl(sum(INITIAL_FUNDING_AMOUNT), 0)      = 0 and
41880          nvl(sum(INITIAL_FUNDING_COUNT), 0)       = 0 and
41881          nvl(sum(ADDITIONAL_FUNDING_AMOUNT), 0)   = 0 and
41882          nvl(sum(ADDITIONAL_FUNDING_COUNT), 0)    = 0 and
41883          nvl(sum(CANCELLED_FUNDING_AMOUNT), 0)    = 0 and
41884          nvl(sum(CANCELLED_FUNDING_COUNT), 0)     = 0 and
41885          nvl(sum(FUNDING_ADJUSTMENT_AMOUNT), 0)   = 0 and
41886          nvl(sum(FUNDING_ADJUSTMENT_COUNT), 0)    = 0 and
41887          nvl(sum(REVENUE_WRITEOFF), 0)            = 0 and
41888          nvl(sum(AR_INVOICE_AMOUNT), 0)           = 0 and
41889          nvl(sum(AR_INVOICE_COUNT), 0)            = 0 and
41890          nvl(sum(AR_CASH_APPLIED_AMOUNT), 0)      = 0 and
41891          nvl(sum(AR_INVOICE_WRITE_OFF_AMOUNT), 0) = 0 and
41892          nvl(sum(AR_INVOICE_WRITEOFF_COUNT), 0)   = 0 and
41893          nvl(sum(AR_CREDIT_MEMO_AMOUNT), 0)       = 0 and
41894          nvl(sum(AR_CREDIT_MEMO_COUNT), 0)        = 0 and
41895          nvl(sum(UNBILLED_RECEIVABLES), 0)        = 0 and
41896          nvl(sum(UNEARNED_REVENUE), 0)            = 0 and
41897          nvl(sum(AR_UNAPPR_INVOICE_AMOUNT), 0)    = 0 and
41898          nvl(sum(AR_UNAPPR_INVOICE_COUNT), 0)     = 0 and
41899          nvl(sum(AR_APPR_INVOICE_AMOUNT), 0)      = 0 and
41900          nvl(sum(AR_APPR_INVOICE_COUNT), 0)       = 0 and
41901          nvl(sum(AR_AMOUNT_DUE), 0)               = 0 and
41902          nvl(sum(AR_COUNT_DUE), 0)                = 0 and
41903          nvl(sum(AR_AMOUNT_OVERDUE), 0)           = 0 and
41904          nvl(sum(AR_COUNT_OVERDUE), 0)            = 0 and
41905          nvl(sum(CUSTOM1), 0)                     = 0 and
41906          nvl(sum(CUSTOM2), 0)                     = 0 and
41907          nvl(sum(CUSTOM3), 0)                     = 0 and
41908          nvl(sum(CUSTOM4), 0)                     = 0 and
41909          nvl(sum(CUSTOM5), 0)                     = 0 and
41910          nvl(sum(CUSTOM6), 0)                     = 0 and
41911          nvl(sum(CUSTOM7), 0)                     = 0 and
41912          nvl(sum(CUSTOM8), 0)                     = 0 and
41913          nvl(sum(CUSTOM9), 0)                     = 0 and
41914          nvl(sum(CUSTOM10), 0)                    = 0 and
41915          nvl(sum(CUSTOM11), 0)                    = 0 and
41916          nvl(sum(CUSTOM12), 0)                    = 0 and
41917          nvl(sum(CUSTOM13), 0)                    = 0 and
41918          nvl(sum(CUSTOM14), 0)                    = 0 and
41919          nvl(sum(CUSTOM15), 0)                    = 0);
41920     elsif (p_worker_id =4) then
41921       -- Query for Partition 4
41922 
41923       insert /*+ parallel(PJI_FP_AGGR_PJP1) */
41924                  into PJI_FP_AGGR_PJP1 partition(P4)
41925 
41926       (
41927         WORKER_ID,
41928         RECORD_TYPE,
41929         PRG_LEVEL,
41930         LINE_TYPE,
41931         PROJECT_ID,
41932         PROJECT_ORG_ID,
41933         PROJECT_ORGANIZATION_ID,
41934         PROJECT_ELEMENT_ID,
41935         TIME_ID,
41936         PERIOD_TYPE_ID,
41937         CALENDAR_TYPE,
41938         RBS_AGGR_LEVEL,
41939         WBS_ROLLUP_FLAG,
41940         PRG_ROLLUP_FLAG,
41941         CURR_RECORD_TYPE_ID,
41942         CURRENCY_CODE,
41943         RBS_ELEMENT_ID,
41944         RBS_VERSION_ID,
41945         PLAN_VERSION_ID,
41946         PLAN_TYPE_ID,
41947         PLAN_TYPE_CODE,
41948         RAW_COST,
41949         BRDN_COST,
41950         REVENUE,
41951         BILL_RAW_COST,
41952         BILL_BRDN_COST,
41953         BILL_LABOR_RAW_COST,
41954         BILL_LABOR_BRDN_COST,
41955         BILL_LABOR_HRS,
41956         EQUIPMENT_RAW_COST,
41957         EQUIPMENT_BRDN_COST,
41958         CAPITALIZABLE_RAW_COST,
41959         CAPITALIZABLE_BRDN_COST,
41960         LABOR_RAW_COST,
41961         LABOR_BRDN_COST,
41962         LABOR_HRS,
41963         LABOR_REVENUE,
41964         EQUIPMENT_HOURS,
41965         BILLABLE_EQUIPMENT_HOURS,
41966         SUP_INV_COMMITTED_COST,
41967         PO_COMMITTED_COST,
41968         PR_COMMITTED_COST,
41969         OTH_COMMITTED_COST,
41970         ACT_LABOR_HRS,
41971         ACT_EQUIP_HRS,
41972         ACT_LABOR_BRDN_COST,
41973         ACT_EQUIP_BRDN_COST,
41974         ACT_BRDN_COST,
41975         ACT_RAW_COST,
41976         ACT_REVENUE,
41977         ACT_LABOR_RAW_COST,
41978         ACT_EQUIP_RAW_COST,
41979         ETC_LABOR_HRS,
41980         ETC_EQUIP_HRS,
41981         ETC_LABOR_BRDN_COST,
41982         ETC_EQUIP_BRDN_COST,
41983         ETC_BRDN_COST,
41984         ETC_RAW_COST,
41985         ETC_LABOR_RAW_COST,
41986         ETC_EQUIP_RAW_COST,
41987         CUSTOM1,
41988         CUSTOM2,
41989         CUSTOM3,
41990         CUSTOM4,
41991         CUSTOM5,
41992         CUSTOM6,
41993         CUSTOM7,
41994         CUSTOM8,
41995         CUSTOM9,
41996         CUSTOM10,
41997         CUSTOM11,
41998         CUSTOM12,
41999         CUSTOM13,
42000         CUSTOM14,
42001         CUSTOM15
42002       )
42003       select
42004         pjp1.WORKER_ID,
42005         'A'                                 RECORD_TYPE,
42006         0 ,             /*  pjp1.PRG_LEVEL,   6266824 sridhar commented as this is required and also impact of Merge changes */
42007         'AGGR_PLAN'                         LINE_TYPE,
42008         pjp1.PROJECT_ID,
42009         pjp1.PROJECT_ORG_ID,
42010         pjp1.PROJECT_ORGANIZATION_ID,
42011         pjp1.PROJECT_ELEMENT_ID,
42012         pjp1.TIME_ID,
42013         pjp1.PERIOD_TYPE_ID,
42014         pjp1.CALENDAR_TYPE,
42015         pjp1.RBS_AGGR_LEVEL,
42016         pjp1.WBS_ROLLUP_FLAG,
42017         pjp1.PRG_ROLLUP_FLAG,
42018         pjp1.CURR_RECORD_TYPE_ID,
42019         pjp1.CURRENCY_CODE,
42020         pjp1.RBS_ELEMENT_ID,
42021         pjp1.RBS_VERSION_ID,
42022         pjp1.PLAN_VERSION_ID,
42023         pjp1.PLAN_TYPE_ID,
42024         pjp1.PLAN_TYPE_CODE,
42025         sum(pjp1.RAW_COST)                  RAW_COST,
42026         sum(pjp1.BRDN_COST)                 BRDN_COST,
42027         sum(pjp1.REVENUE)                   REVENUE,
42028         sum(pjp1.BILL_RAW_COST)             BILL_RAW_COST,
42029         sum(pjp1.BILL_BRDN_COST)            BILL_BRDN_COST,
42030         sum(pjp1.BILL_LABOR_RAW_COST)       BILL_LABOR_RAW_COST,
42031         sum(pjp1.BILL_LABOR_BRDN_COST)      BILL_LABOR_BRDN_COST,
42032         sum(pjp1.BILL_LABOR_HRS)            BILL_LABOR_HRS,
42033         sum(pjp1.EQUIPMENT_RAW_COST)        EQUIPMENT_RAW_COST,
42034         sum(pjp1.EQUIPMENT_BRDN_COST)       EQUIPMENT_BRDN_COST,
42035         sum(pjp1.CAPITALIZABLE_RAW_COST)    CAPITALIZABLE_RAW_COST,
42036         sum(pjp1.CAPITALIZABLE_BRDN_COST)   CAPITALIZABLE_BRDN_COST,
42037         sum(pjp1.LABOR_RAW_COST)            LABOR_RAW_COST,
42038         sum(pjp1.LABOR_BRDN_COST)           LABOR_BRDN_COST,
42039         sum(pjp1.LABOR_HRS)                 LABOR_HRS,
42040         sum(pjp1.LABOR_REVENUE)             LABOR_REVENUE,
42041         sum(pjp1.EQUIPMENT_HOURS)           EQUIPMENT_HOURS,
42042         sum(pjp1.BILLABLE_EQUIPMENT_HOURS)  BILLABLE_EQUIPMENT_HOURS,
42043         sum(pjp1.SUP_INV_COMMITTED_COST)    SUP_INV_COMMITTED_COST,
42044         sum(pjp1.PO_COMMITTED_COST)         PO_COMMITTED_COST,
42045         sum(pjp1.PR_COMMITTED_COST)         PR_COMMITTED_COST,
42046         sum(pjp1.OTH_COMMITTED_COST)        OTH_COMMITTED_COST,
42047         sum(pjp1.ACT_LABOR_HRS)             ACT_LABOR_HRS,
42048         sum(pjp1.ACT_EQUIP_HRS)             ACT_EQUIP_HRS,
42049         sum(pjp1.ACT_LABOR_BRDN_COST)       ACT_LABOR_BRDN_COST,
42050         sum(pjp1.ACT_EQUIP_BRDN_COST)       ACT_EQUIP_BRDN_COST,
42051         sum(pjp1.ACT_BRDN_COST)             ACT_BRDN_COST,
42052         sum(pjp1.ACT_RAW_COST)              ACT_RAW_COST,
42053         sum(pjp1.ACT_REVENUE)               ACT_REVENUE,
42054         sum(pjp1.ACT_LABOR_RAW_COST)        ACT_LABOR_RAW_COST,
42055         sum(pjp1.ACT_EQUIP_RAW_COST)        ACT_EQUIP_RAW_COST,
42056         sum(pjp1.ETC_LABOR_HRS)             ETC_LABOR_HRS,
42057         sum(pjp1.ETC_EQUIP_HRS)             ETC_EQUIP_HRS,
42058         sum(pjp1.ETC_LABOR_BRDN_COST)       ETC_LABOR_BRDN_COST,
42059         sum(pjp1.ETC_EQUIP_BRDN_COST)       ETC_EQUIP_BRDN_COST,
42060         sum(pjp1.ETC_BRDN_COST)             ETC_BRDN_COST,
42061         sum(pjp1.ETC_RAW_COST)              ETC_RAW_COST,
42062         sum(pjp1.ETC_LABOR_RAW_COST)        ETC_LABOR_RAW_COST,
42063         sum(pjp1.ETC_EQUIP_RAW_COST)        ETC_EQUIP_RAW_COST,
42064         sum(pjp1.CUSTOM1)                   CUSTOM1,
42065         sum(pjp1.CUSTOM2)                   CUSTOM2,
42066         sum(pjp1.CUSTOM3)                   CUSTOM3,
42067         sum(pjp1.CUSTOM4)                   CUSTOM4,
42068         sum(pjp1.CUSTOM5)                   CUSTOM5,
42069         sum(pjp1.CUSTOM6)                   CUSTOM6,
42070         sum(pjp1.CUSTOM7)                   CUSTOM7,
42071         sum(pjp1.CUSTOM8)                   CUSTOM8,
42072         sum(pjp1.CUSTOM9)                   CUSTOM9,
42073         sum(pjp1.CUSTOM10)                  CUSTOM10,
42074         sum(pjp1.CUSTOM11)                  CUSTOM11,
42075         sum(pjp1.CUSTOM12)                  CUSTOM12,
42076         sum(pjp1.CUSTOM13)                  CUSTOM13,
42077         sum(pjp1.CUSTOM14)                  CUSTOM14,
42078         sum(pjp1.CUSTOM15)                  CUSTOM15
42079       from
42080         PJI_FP_AGGR_PJP1 pjp1
42081       where
42082         pjp1.WORKER_ID = p_worker_id
42083       group by
42084         pjp1.WORKER_ID,
42085  /*     pjp1.PRG_LEVEL,     -- 6266824 sridhar not required and also impact of merge change */
42086         pjp1.PROJECT_ID,
42087         pjp1.PROJECT_ORG_ID,
42088         pjp1.PROJECT_ORGANIZATION_ID,
42089         pjp1.PROJECT_ELEMENT_ID,
42090         pjp1.TIME_ID,
42091         pjp1.PERIOD_TYPE_ID,
42092         pjp1.CALENDAR_TYPE,
42093         pjp1.RBS_AGGR_LEVEL,
42094         pjp1.WBS_ROLLUP_FLAG,
42095         pjp1.PRG_ROLLUP_FLAG,
42096         pjp1.CURR_RECORD_TYPE_ID,
42097         pjp1.CURRENCY_CODE,
42098         pjp1.RBS_ELEMENT_ID,
42099         pjp1.RBS_VERSION_ID,
42100         pjp1.PLAN_VERSION_ID,
42101         pjp1.PLAN_TYPE_ID,
42102         pjp1.PLAN_TYPE_CODE
42103       having not
42104         (nvl(sum(pjp1.RAW_COST), 0)                 = 0 and
42105          nvl(sum(pjp1.BRDN_COST), 0)                = 0 and
42106          nvl(sum(pjp1.REVENUE), 0)                  = 0 and
42107          nvl(sum(pjp1.BILL_RAW_COST), 0)            = 0 and
42108          nvl(sum(pjp1.BILL_BRDN_COST), 0)           = 0 and
42109          nvl(sum(pjp1.BILL_LABOR_RAW_COST), 0)      = 0 and
42110          nvl(sum(pjp1.BILL_LABOR_BRDN_COST), 0)     = 0 and
42111          nvl(sum(pjp1.BILL_LABOR_HRS), 0)           = 0 and
42112          nvl(sum(pjp1.EQUIPMENT_RAW_COST), 0)       = 0 and
42113          nvl(sum(pjp1.EQUIPMENT_BRDN_COST), 0)      = 0 and
42114          nvl(sum(pjp1.CAPITALIZABLE_RAW_COST), 0)   = 0 and
42115          nvl(sum(pjp1.CAPITALIZABLE_BRDN_COST), 0)  = 0 and
42116          nvl(sum(pjp1.LABOR_RAW_COST), 0)           = 0 and
42117          nvl(sum(pjp1.LABOR_BRDN_COST), 0)          = 0 and
42118          nvl(sum(pjp1.LABOR_HRS), 0)                = 0 and
42119          nvl(sum(pjp1.LABOR_REVENUE), 0)            = 0 and
42120          nvl(sum(pjp1.EQUIPMENT_HOURS), 0)          = 0 and
42121          nvl(sum(pjp1.BILLABLE_EQUIPMENT_HOURS), 0) = 0 and
42122          nvl(sum(pjp1.SUP_INV_COMMITTED_COST), 0)   = 0 and
42123          nvl(sum(pjp1.PO_COMMITTED_COST), 0)        = 0 and
42124          nvl(sum(pjp1.PR_COMMITTED_COST), 0)        = 0 and
42125          nvl(sum(pjp1.OTH_COMMITTED_COST), 0)       = 0 and
42126          nvl(sum(pjp1.ACT_LABOR_HRS), 0)            = 0 and
42127          nvl(sum(pjp1.ACT_EQUIP_HRS), 0)            = 0 and
42128          nvl(sum(pjp1.ACT_LABOR_BRDN_COST), 0)      = 0 and
42129          nvl(sum(pjp1.ACT_EQUIP_BRDN_COST), 0)      = 0 and
42130          nvl(sum(pjp1.ACT_BRDN_COST), 0)            = 0 and
42131          nvl(sum(pjp1.ACT_RAW_COST), 0)             = 0 and
42132          nvl(sum(pjp1.ACT_REVENUE), 0)              = 0 and
42133          nvl(sum(pjp1.ACT_LABOR_RAW_COST), 0)       = 0 and
42134          nvl(sum(pjp1.ACT_EQUIP_RAW_COST), 0)       = 0 and
42135          nvl(sum(pjp1.ETC_LABOR_HRS), 0)            = 0 and
42136          nvl(sum(pjp1.ETC_EQUIP_HRS), 0)            = 0 and
42137          nvl(sum(pjp1.ETC_LABOR_BRDN_COST), 0)      = 0 and
42138          nvl(sum(pjp1.ETC_EQUIP_BRDN_COST), 0)      = 0 and
42139          nvl(sum(pjp1.ETC_BRDN_COST), 0)            = 0 and
42140          nvl(sum(pjp1.ETC_RAW_COST), 0)             = 0 and
42141          nvl(sum(pjp1.ETC_LABOR_RAW_COST), 0)       = 0 and
42142          nvl(sum(pjp1.ETC_EQUIP_RAW_COST), 0)       = 0 and
42143          nvl(sum(pjp1.CUSTOM1), 0)                  = 0 and
42144          nvl(sum(pjp1.CUSTOM2), 0)                  = 0 and
42145          nvl(sum(pjp1.CUSTOM3), 0)                  = 0 and
42146          nvl(sum(pjp1.CUSTOM4), 0)                  = 0 and
42147          nvl(sum(pjp1.CUSTOM5), 0)                  = 0 and
42148          nvl(sum(pjp1.CUSTOM6), 0)                  = 0 and
42149          nvl(sum(pjp1.CUSTOM7), 0)                  = 0 and
42150          nvl(sum(pjp1.CUSTOM8), 0)                  = 0 and
42151          nvl(sum(pjp1.CUSTOM9), 0)                  = 0 and
42152          nvl(sum(pjp1.CUSTOM10), 0)                 = 0 and
42153          nvl(sum(pjp1.CUSTOM11), 0)                 = 0 and
42154          nvl(sum(pjp1.CUSTOM12), 0)                 = 0 and
42155          nvl(sum(pjp1.CUSTOM13), 0)                 = 0 and
42156          nvl(sum(pjp1.CUSTOM14), 0)                 = 0 and
42157          nvl(sum(pjp1.CUSTOM15), 0)                 = 0);
42158 
42159       insert /*+ parallel(PJI_AC_AGGR_PJP1) */
42160                  into PJI_AC_AGGR_PJP1 partition(P4)
42161       (
42162         WORKER_ID,
42163         RECORD_TYPE,
42164         PRG_LEVEL,
42165         PROJECT_ID,
42166         PROJECT_ORG_ID,
42167         PROJECT_ORGANIZATION_ID,
42168         PROJECT_ELEMENT_ID,
42169         TIME_ID,
42170         PERIOD_TYPE_ID,
42171         CALENDAR_TYPE,
42172         WBS_ROLLUP_FLAG,
42173         PRG_ROLLUP_FLAG,
42174         CURR_RECORD_TYPE_ID,
42175         CURRENCY_CODE,
42176         REVENUE,
42177         INITIAL_FUNDING_AMOUNT,
42178         INITIAL_FUNDING_COUNT,
42179         ADDITIONAL_FUNDING_AMOUNT,
42180         ADDITIONAL_FUNDING_COUNT,
42181         CANCELLED_FUNDING_AMOUNT,
42182         CANCELLED_FUNDING_COUNT,
42183         FUNDING_ADJUSTMENT_AMOUNT,
42184         FUNDING_ADJUSTMENT_COUNT,
42185         REVENUE_WRITEOFF,
42186         AR_INVOICE_AMOUNT,
42187         AR_INVOICE_COUNT,
42188         AR_CASH_APPLIED_AMOUNT,
42189         AR_INVOICE_WRITE_OFF_AMOUNT,
42190         AR_INVOICE_WRITEOFF_COUNT,
42191         AR_CREDIT_MEMO_AMOUNT,
42192         AR_CREDIT_MEMO_COUNT,
42193         UNBILLED_RECEIVABLES,
42194         UNEARNED_REVENUE,
42195         AR_UNAPPR_INVOICE_AMOUNT,
42196         AR_UNAPPR_INVOICE_COUNT,
42197         AR_APPR_INVOICE_AMOUNT,
42198         AR_APPR_INVOICE_COUNT,
42199         AR_AMOUNT_DUE,
42200         AR_COUNT_DUE,
42201         AR_AMOUNT_OVERDUE,
42202         AR_COUNT_OVERDUE,
42203         CUSTOM1,
42204         CUSTOM2,
42205         CUSTOM3,
42206         CUSTOM4,
42207         CUSTOM5,
42208         CUSTOM6,
42209         CUSTOM7,
42210         CUSTOM8,
42211         CUSTOM9,
42212         CUSTOM10,
42213         CUSTOM11,
42214         CUSTOM12,
42215         CUSTOM13,
42216         CUSTOM14,
42217         CUSTOM15
42218       )
42219       select
42220         pjp1.WORKER_ID,
42221         'A'                                        RECORD_TYPE,
42222         pjp1.PRG_LEVEL,
42223         pjp1.PROJECT_ID,
42224         pjp1.PROJECT_ORG_ID,
42225         pjp1.PROJECT_ORGANIZATION_ID,
42226         pjp1.PROJECT_ELEMENT_ID,
42227         pjp1.TIME_ID,
42228         pjp1.PERIOD_TYPE_ID,
42229         pjp1.CALENDAR_TYPE,
42230         pjp1.WBS_ROLLUP_FLAG,
42231         pjp1.PRG_ROLLUP_FLAG,
42232         pjp1.CURR_RECORD_TYPE_ID,
42233         pjp1.CURRENCY_CODE,
42234         sum(pjp1.REVENUE)                          REVENUE,
42235         sum(pjp1.INITIAL_FUNDING_AMOUNT)           INITIAL_FUNDING_AMOUNT,
42236         sum(pjp1.INITIAL_FUNDING_COUNT)            INITIAL_FUNDING_COUNT,
42237         sum(pjp1.ADDITIONAL_FUNDING_AMOUNT)        ADDITIONAL_FUNDING_AMOUNT,
42238         sum(pjp1.ADDITIONAL_FUNDING_COUNT)         ADDITIONAL_FUNDING_COUNT,
42239         sum(pjp1.CANCELLED_FUNDING_AMOUNT)         CANCELLED_FUNDING_AMOUNT,
42240         sum(pjp1.CANCELLED_FUNDING_COUNT)          CANCELLED_FUNDING_COUNT,
42241         sum(pjp1.FUNDING_ADJUSTMENT_AMOUNT)        FUNDING_ADJUSTMENT_AMOUNT,
42242         sum(pjp1.FUNDING_ADJUSTMENT_COUNT)         FUNDING_ADJUSTMENT_COUNT,
42243         sum(pjp1.REVENUE_WRITEOFF)                 REVENUE_WRITEOFF,
42244         sum(pjp1.AR_INVOICE_AMOUNT)                AR_INVOICE_AMOUNT,
42245         sum(pjp1.AR_INVOICE_COUNT)                 AR_INVOICE_COUNT,
42246         sum(pjp1.AR_CASH_APPLIED_AMOUNT)           AR_CASH_APPLIED_AMOUNT,
42247         sum(pjp1.AR_INVOICE_WRITE_OFF_AMOUNT)      AR_INVOICE_WRITE_OFF_AMOUNT,
42248         sum(pjp1.AR_INVOICE_WRITEOFF_COUNT)        AR_INVOICE_WRITEOFF_COUNT,
42249         sum(pjp1.AR_CREDIT_MEMO_AMOUNT)            AR_CREDIT_MEMO_AMOUNT,
42250         sum(pjp1.AR_CREDIT_MEMO_COUNT)             AR_CREDIT_MEMO_COUNT,
42251         sum(pjp1.UNBILLED_RECEIVABLES)             UNBILLED_RECEIVABLES,
42252         sum(pjp1.UNEARNED_REVENUE)                 UNEARNED_REVENUE,
42253         sum(pjp1.AR_UNAPPR_INVOICE_AMOUNT)         AR_UNAPPR_INVOICE_AMOUNT,
42254         sum(pjp1.AR_UNAPPR_INVOICE_COUNT)          AR_UNAPPR_INVOICE_COUNT,
42255         sum(pjp1.AR_APPR_INVOICE_AMOUNT)           AR_APPR_INVOICE_AMOUNT,
42256         sum(pjp1.AR_APPR_INVOICE_COUNT)            AR_APPR_INVOICE_COUNT,
42257         sum(pjp1.AR_AMOUNT_DUE)                    AR_AMOUNT_DUE,
42258         sum(pjp1.AR_COUNT_DUE)                     AR_COUNT_DUE,
42259         sum(pjp1.AR_AMOUNT_OVERDUE)                AR_AMOUNT_OVERDUE,
42260         sum(pjp1.AR_COUNT_OVERDUE)                 AR_COUNT_OVERDUE,
42261         sum(pjp1.CUSTOM1)                          CUSTOM1,
42262         sum(pjp1.CUSTOM2)                          CUSTOM2,
42263         sum(pjp1.CUSTOM3)                          CUSTOM3,
42264         sum(pjp1.CUSTOM4)                          CUSTOM4,
42265         sum(pjp1.CUSTOM5)                          CUSTOM5,
42266         sum(pjp1.CUSTOM6)                          CUSTOM6,
42267         sum(pjp1.CUSTOM7)                          CUSTOM7,
42268         sum(pjp1.CUSTOM8)                          CUSTOM8,
42269         sum(pjp1.CUSTOM9)                          CUSTOM9,
42270         sum(pjp1.CUSTOM10)                         CUSTOM10,
42271         sum(pjp1.CUSTOM11)                         CUSTOM11,
42272         sum(pjp1.CUSTOM12)                         CUSTOM12,
42273         sum(pjp1.CUSTOM13)                         CUSTOM13,
42274         sum(pjp1.CUSTOM14)                         CUSTOM14,
42275         sum(pjp1.CUSTOM15)                         CUSTOM15
42276       from
42277         PJI_AC_AGGR_PJP1 pjp1
42278       where
42279         pjp1.WORKER_ID = p_worker_id
42280       group by
42281         pjp1.WORKER_ID,
42282         pjp1.PRG_LEVEL,
42283         pjp1.PROJECT_ID,
42284         pjp1.PROJECT_ORG_ID,
42285         pjp1.PROJECT_ORGANIZATION_ID,
42286         pjp1.PROJECT_ELEMENT_ID,
42287         pjp1.TIME_ID,
42288         pjp1.PERIOD_TYPE_ID,
42289         pjp1.CALENDAR_TYPE,
42290         pjp1.WBS_ROLLUP_FLAG,
42291         pjp1.PRG_ROLLUP_FLAG,
42292         pjp1.CURR_RECORD_TYPE_ID,
42293         pjp1.CURRENCY_CODE
42294       having not
42295         (nvl(sum(REVENUE), 0)                     = 0 and
42296          nvl(sum(INITIAL_FUNDING_AMOUNT), 0)      = 0 and
42297          nvl(sum(INITIAL_FUNDING_COUNT), 0)       = 0 and
42298          nvl(sum(ADDITIONAL_FUNDING_AMOUNT), 0)   = 0 and
42299          nvl(sum(ADDITIONAL_FUNDING_COUNT), 0)    = 0 and
42300          nvl(sum(CANCELLED_FUNDING_AMOUNT), 0)    = 0 and
42301          nvl(sum(CANCELLED_FUNDING_COUNT), 0)     = 0 and
42302          nvl(sum(FUNDING_ADJUSTMENT_AMOUNT), 0)   = 0 and
42303          nvl(sum(FUNDING_ADJUSTMENT_COUNT), 0)    = 0 and
42304          nvl(sum(REVENUE_WRITEOFF), 0)            = 0 and
42305          nvl(sum(AR_INVOICE_AMOUNT), 0)           = 0 and
42306          nvl(sum(AR_INVOICE_COUNT), 0)            = 0 and
42307          nvl(sum(AR_CASH_APPLIED_AMOUNT), 0)      = 0 and
42308          nvl(sum(AR_INVOICE_WRITE_OFF_AMOUNT), 0) = 0 and
42309          nvl(sum(AR_INVOICE_WRITEOFF_COUNT), 0)   = 0 and
42310          nvl(sum(AR_CREDIT_MEMO_AMOUNT), 0)       = 0 and
42311          nvl(sum(AR_CREDIT_MEMO_COUNT), 0)        = 0 and
42312          nvl(sum(UNBILLED_RECEIVABLES), 0)        = 0 and
42313          nvl(sum(UNEARNED_REVENUE), 0)            = 0 and
42314          nvl(sum(AR_UNAPPR_INVOICE_AMOUNT), 0)    = 0 and
42315          nvl(sum(AR_UNAPPR_INVOICE_COUNT), 0)     = 0 and
42316          nvl(sum(AR_APPR_INVOICE_AMOUNT), 0)      = 0 and
42317          nvl(sum(AR_APPR_INVOICE_COUNT), 0)       = 0 and
42318          nvl(sum(AR_AMOUNT_DUE), 0)               = 0 and
42319          nvl(sum(AR_COUNT_DUE), 0)                = 0 and
42320          nvl(sum(AR_AMOUNT_OVERDUE), 0)           = 0 and
42321          nvl(sum(AR_COUNT_OVERDUE), 0)            = 0 and
42322          nvl(sum(CUSTOM1), 0)                     = 0 and
42323          nvl(sum(CUSTOM2), 0)                     = 0 and
42324          nvl(sum(CUSTOM3), 0)                     = 0 and
42325          nvl(sum(CUSTOM4), 0)                     = 0 and
42326          nvl(sum(CUSTOM5), 0)                     = 0 and
42327          nvl(sum(CUSTOM6), 0)                     = 0 and
42328          nvl(sum(CUSTOM7), 0)                     = 0 and
42329          nvl(sum(CUSTOM8), 0)                     = 0 and
42330          nvl(sum(CUSTOM9), 0)                     = 0 and
42331          nvl(sum(CUSTOM10), 0)                    = 0 and
42332          nvl(sum(CUSTOM11), 0)                    = 0 and
42333          nvl(sum(CUSTOM12), 0)                    = 0 and
42334          nvl(sum(CUSTOM13), 0)                    = 0 and
42335          nvl(sum(CUSTOM14), 0)                    = 0 and
42336          nvl(sum(CUSTOM15), 0)                    = 0);
42337     elsif (p_worker_id =5) then
42338       -- Query for Partition 5
42339 
42340       insert /*+ parallel(PJI_FP_AGGR_PJP1) */
42341                  into PJI_FP_AGGR_PJP1 partition(P5)
42342 
42343       (
42344         WORKER_ID,
42345         RECORD_TYPE,
42346         PRG_LEVEL,
42347         LINE_TYPE,
42348         PROJECT_ID,
42349         PROJECT_ORG_ID,
42350         PROJECT_ORGANIZATION_ID,
42351         PROJECT_ELEMENT_ID,
42352         TIME_ID,
42353         PERIOD_TYPE_ID,
42354         CALENDAR_TYPE,
42355         RBS_AGGR_LEVEL,
42356         WBS_ROLLUP_FLAG,
42357         PRG_ROLLUP_FLAG,
42358         CURR_RECORD_TYPE_ID,
42359         CURRENCY_CODE,
42360         RBS_ELEMENT_ID,
42361         RBS_VERSION_ID,
42362         PLAN_VERSION_ID,
42363         PLAN_TYPE_ID,
42364         PLAN_TYPE_CODE,
42365         RAW_COST,
42366         BRDN_COST,
42367         REVENUE,
42368         BILL_RAW_COST,
42369         BILL_BRDN_COST,
42370         BILL_LABOR_RAW_COST,
42371         BILL_LABOR_BRDN_COST,
42372         BILL_LABOR_HRS,
42373         EQUIPMENT_RAW_COST,
42374         EQUIPMENT_BRDN_COST,
42375         CAPITALIZABLE_RAW_COST,
42376         CAPITALIZABLE_BRDN_COST,
42377         LABOR_RAW_COST,
42378         LABOR_BRDN_COST,
42379         LABOR_HRS,
42380         LABOR_REVENUE,
42381         EQUIPMENT_HOURS,
42382         BILLABLE_EQUIPMENT_HOURS,
42383         SUP_INV_COMMITTED_COST,
42384         PO_COMMITTED_COST,
42385         PR_COMMITTED_COST,
42386         OTH_COMMITTED_COST,
42387         ACT_LABOR_HRS,
42388         ACT_EQUIP_HRS,
42389         ACT_LABOR_BRDN_COST,
42390         ACT_EQUIP_BRDN_COST,
42391         ACT_BRDN_COST,
42392         ACT_RAW_COST,
42393         ACT_REVENUE,
42394         ACT_LABOR_RAW_COST,
42395         ACT_EQUIP_RAW_COST,
42396         ETC_LABOR_HRS,
42397         ETC_EQUIP_HRS,
42398         ETC_LABOR_BRDN_COST,
42399         ETC_EQUIP_BRDN_COST,
42400         ETC_BRDN_COST,
42401         ETC_RAW_COST,
42402         ETC_LABOR_RAW_COST,
42403         ETC_EQUIP_RAW_COST,
42404         CUSTOM1,
42405         CUSTOM2,
42406         CUSTOM3,
42407         CUSTOM4,
42408         CUSTOM5,
42409         CUSTOM6,
42410         CUSTOM7,
42411         CUSTOM8,
42412         CUSTOM9,
42413         CUSTOM10,
42414         CUSTOM11,
42415         CUSTOM12,
42416         CUSTOM13,
42417         CUSTOM14,
42418         CUSTOM15
42419       )
42420       select
42421         pjp1.WORKER_ID,
42422         'A'                                 RECORD_TYPE,
42423         0 ,             /*  pjp1.PRG_LEVEL,   6266824 sridhar commented as this is required and also impact of Merge changes */
42424         'AGGR_PLAN'                         LINE_TYPE,
42425         pjp1.PROJECT_ID,
42426         pjp1.PROJECT_ORG_ID,
42427         pjp1.PROJECT_ORGANIZATION_ID,
42428         pjp1.PROJECT_ELEMENT_ID,
42429         pjp1.TIME_ID,
42430         pjp1.PERIOD_TYPE_ID,
42431         pjp1.CALENDAR_TYPE,
42432         pjp1.RBS_AGGR_LEVEL,
42433         pjp1.WBS_ROLLUP_FLAG,
42434         pjp1.PRG_ROLLUP_FLAG,
42435         pjp1.CURR_RECORD_TYPE_ID,
42436         pjp1.CURRENCY_CODE,
42437         pjp1.RBS_ELEMENT_ID,
42438         pjp1.RBS_VERSION_ID,
42439         pjp1.PLAN_VERSION_ID,
42440         pjp1.PLAN_TYPE_ID,
42441         pjp1.PLAN_TYPE_CODE,
42442         sum(pjp1.RAW_COST)                  RAW_COST,
42443         sum(pjp1.BRDN_COST)                 BRDN_COST,
42444         sum(pjp1.REVENUE)                   REVENUE,
42445         sum(pjp1.BILL_RAW_COST)             BILL_RAW_COST,
42446         sum(pjp1.BILL_BRDN_COST)            BILL_BRDN_COST,
42447         sum(pjp1.BILL_LABOR_RAW_COST)       BILL_LABOR_RAW_COST,
42448         sum(pjp1.BILL_LABOR_BRDN_COST)      BILL_LABOR_BRDN_COST,
42449         sum(pjp1.BILL_LABOR_HRS)            BILL_LABOR_HRS,
42450         sum(pjp1.EQUIPMENT_RAW_COST)        EQUIPMENT_RAW_COST,
42451         sum(pjp1.EQUIPMENT_BRDN_COST)       EQUIPMENT_BRDN_COST,
42452         sum(pjp1.CAPITALIZABLE_RAW_COST)    CAPITALIZABLE_RAW_COST,
42453         sum(pjp1.CAPITALIZABLE_BRDN_COST)   CAPITALIZABLE_BRDN_COST,
42454         sum(pjp1.LABOR_RAW_COST)            LABOR_RAW_COST,
42455         sum(pjp1.LABOR_BRDN_COST)           LABOR_BRDN_COST,
42456         sum(pjp1.LABOR_HRS)                 LABOR_HRS,
42457         sum(pjp1.LABOR_REVENUE)             LABOR_REVENUE,
42458         sum(pjp1.EQUIPMENT_HOURS)           EQUIPMENT_HOURS,
42459         sum(pjp1.BILLABLE_EQUIPMENT_HOURS)  BILLABLE_EQUIPMENT_HOURS,
42460         sum(pjp1.SUP_INV_COMMITTED_COST)    SUP_INV_COMMITTED_COST,
42461         sum(pjp1.PO_COMMITTED_COST)         PO_COMMITTED_COST,
42462         sum(pjp1.PR_COMMITTED_COST)         PR_COMMITTED_COST,
42463         sum(pjp1.OTH_COMMITTED_COST)        OTH_COMMITTED_COST,
42464         sum(pjp1.ACT_LABOR_HRS)             ACT_LABOR_HRS,
42465         sum(pjp1.ACT_EQUIP_HRS)             ACT_EQUIP_HRS,
42466         sum(pjp1.ACT_LABOR_BRDN_COST)       ACT_LABOR_BRDN_COST,
42467         sum(pjp1.ACT_EQUIP_BRDN_COST)       ACT_EQUIP_BRDN_COST,
42468         sum(pjp1.ACT_BRDN_COST)             ACT_BRDN_COST,
42469         sum(pjp1.ACT_RAW_COST)              ACT_RAW_COST,
42470         sum(pjp1.ACT_REVENUE)               ACT_REVENUE,
42471         sum(pjp1.ACT_LABOR_RAW_COST)        ACT_LABOR_RAW_COST,
42472         sum(pjp1.ACT_EQUIP_RAW_COST)        ACT_EQUIP_RAW_COST,
42473         sum(pjp1.ETC_LABOR_HRS)             ETC_LABOR_HRS,
42474         sum(pjp1.ETC_EQUIP_HRS)             ETC_EQUIP_HRS,
42475         sum(pjp1.ETC_LABOR_BRDN_COST)       ETC_LABOR_BRDN_COST,
42476         sum(pjp1.ETC_EQUIP_BRDN_COST)       ETC_EQUIP_BRDN_COST,
42477         sum(pjp1.ETC_BRDN_COST)             ETC_BRDN_COST,
42478         sum(pjp1.ETC_RAW_COST)              ETC_RAW_COST,
42479         sum(pjp1.ETC_LABOR_RAW_COST)        ETC_LABOR_RAW_COST,
42480         sum(pjp1.ETC_EQUIP_RAW_COST)        ETC_EQUIP_RAW_COST,
42481         sum(pjp1.CUSTOM1)                   CUSTOM1,
42482         sum(pjp1.CUSTOM2)                   CUSTOM2,
42483         sum(pjp1.CUSTOM3)                   CUSTOM3,
42484         sum(pjp1.CUSTOM4)                   CUSTOM4,
42485         sum(pjp1.CUSTOM5)                   CUSTOM5,
42486         sum(pjp1.CUSTOM6)                   CUSTOM6,
42487         sum(pjp1.CUSTOM7)                   CUSTOM7,
42488         sum(pjp1.CUSTOM8)                   CUSTOM8,
42489         sum(pjp1.CUSTOM9)                   CUSTOM9,
42490         sum(pjp1.CUSTOM10)                  CUSTOM10,
42491         sum(pjp1.CUSTOM11)                  CUSTOM11,
42492         sum(pjp1.CUSTOM12)                  CUSTOM12,
42493         sum(pjp1.CUSTOM13)                  CUSTOM13,
42494         sum(pjp1.CUSTOM14)                  CUSTOM14,
42495         sum(pjp1.CUSTOM15)                  CUSTOM15
42496       from
42497         PJI_FP_AGGR_PJP1 pjp1
42498       where
42499         pjp1.WORKER_ID = p_worker_id
42500       group by
42501         pjp1.WORKER_ID,
42502  /*     pjp1.PRG_LEVEL,     -- 6266824 sridhar not required and also impact of merge change */
42503         pjp1.PROJECT_ID,
42504         pjp1.PROJECT_ORG_ID,
42505         pjp1.PROJECT_ORGANIZATION_ID,
42506         pjp1.PROJECT_ELEMENT_ID,
42507         pjp1.TIME_ID,
42508         pjp1.PERIOD_TYPE_ID,
42509         pjp1.CALENDAR_TYPE,
42510         pjp1.RBS_AGGR_LEVEL,
42511         pjp1.WBS_ROLLUP_FLAG,
42512         pjp1.PRG_ROLLUP_FLAG,
42513         pjp1.CURR_RECORD_TYPE_ID,
42514         pjp1.CURRENCY_CODE,
42515         pjp1.RBS_ELEMENT_ID,
42516         pjp1.RBS_VERSION_ID,
42517         pjp1.PLAN_VERSION_ID,
42518         pjp1.PLAN_TYPE_ID,
42519         pjp1.PLAN_TYPE_CODE
42520       having not
42521         (nvl(sum(pjp1.RAW_COST), 0)                 = 0 and
42522          nvl(sum(pjp1.BRDN_COST), 0)                = 0 and
42523          nvl(sum(pjp1.REVENUE), 0)                  = 0 and
42524          nvl(sum(pjp1.BILL_RAW_COST), 0)            = 0 and
42525          nvl(sum(pjp1.BILL_BRDN_COST), 0)           = 0 and
42526          nvl(sum(pjp1.BILL_LABOR_RAW_COST), 0)      = 0 and
42527          nvl(sum(pjp1.BILL_LABOR_BRDN_COST), 0)     = 0 and
42528          nvl(sum(pjp1.BILL_LABOR_HRS), 0)           = 0 and
42529          nvl(sum(pjp1.EQUIPMENT_RAW_COST), 0)       = 0 and
42530          nvl(sum(pjp1.EQUIPMENT_BRDN_COST), 0)      = 0 and
42531          nvl(sum(pjp1.CAPITALIZABLE_RAW_COST), 0)   = 0 and
42532          nvl(sum(pjp1.CAPITALIZABLE_BRDN_COST), 0)  = 0 and
42533          nvl(sum(pjp1.LABOR_RAW_COST), 0)           = 0 and
42534          nvl(sum(pjp1.LABOR_BRDN_COST), 0)          = 0 and
42535          nvl(sum(pjp1.LABOR_HRS), 0)                = 0 and
42536          nvl(sum(pjp1.LABOR_REVENUE), 0)            = 0 and
42537          nvl(sum(pjp1.EQUIPMENT_HOURS), 0)          = 0 and
42538          nvl(sum(pjp1.BILLABLE_EQUIPMENT_HOURS), 0) = 0 and
42539          nvl(sum(pjp1.SUP_INV_COMMITTED_COST), 0)   = 0 and
42540          nvl(sum(pjp1.PO_COMMITTED_COST), 0)        = 0 and
42541          nvl(sum(pjp1.PR_COMMITTED_COST), 0)        = 0 and
42542          nvl(sum(pjp1.OTH_COMMITTED_COST), 0)       = 0 and
42543          nvl(sum(pjp1.ACT_LABOR_HRS), 0)            = 0 and
42544          nvl(sum(pjp1.ACT_EQUIP_HRS), 0)            = 0 and
42545          nvl(sum(pjp1.ACT_LABOR_BRDN_COST), 0)      = 0 and
42546          nvl(sum(pjp1.ACT_EQUIP_BRDN_COST), 0)      = 0 and
42547          nvl(sum(pjp1.ACT_BRDN_COST), 0)            = 0 and
42548          nvl(sum(pjp1.ACT_RAW_COST), 0)             = 0 and
42549          nvl(sum(pjp1.ACT_REVENUE), 0)              = 0 and
42550          nvl(sum(pjp1.ACT_LABOR_RAW_COST), 0)       = 0 and
42551          nvl(sum(pjp1.ACT_EQUIP_RAW_COST), 0)       = 0 and
42552          nvl(sum(pjp1.ETC_LABOR_HRS), 0)            = 0 and
42553          nvl(sum(pjp1.ETC_EQUIP_HRS), 0)            = 0 and
42554          nvl(sum(pjp1.ETC_LABOR_BRDN_COST), 0)      = 0 and
42555          nvl(sum(pjp1.ETC_EQUIP_BRDN_COST), 0)      = 0 and
42556          nvl(sum(pjp1.ETC_BRDN_COST), 0)            = 0 and
42557          nvl(sum(pjp1.ETC_RAW_COST), 0)             = 0 and
42558          nvl(sum(pjp1.ETC_LABOR_RAW_COST), 0)       = 0 and
42559          nvl(sum(pjp1.ETC_EQUIP_RAW_COST), 0)       = 0 and
42560          nvl(sum(pjp1.CUSTOM1), 0)                  = 0 and
42561          nvl(sum(pjp1.CUSTOM2), 0)                  = 0 and
42562          nvl(sum(pjp1.CUSTOM3), 0)                  = 0 and
42563          nvl(sum(pjp1.CUSTOM4), 0)                  = 0 and
42564          nvl(sum(pjp1.CUSTOM5), 0)                  = 0 and
42565          nvl(sum(pjp1.CUSTOM6), 0)                  = 0 and
42566          nvl(sum(pjp1.CUSTOM7), 0)                  = 0 and
42567          nvl(sum(pjp1.CUSTOM8), 0)                  = 0 and
42568          nvl(sum(pjp1.CUSTOM9), 0)                  = 0 and
42569          nvl(sum(pjp1.CUSTOM10), 0)                 = 0 and
42570          nvl(sum(pjp1.CUSTOM11), 0)                 = 0 and
42571          nvl(sum(pjp1.CUSTOM12), 0)                 = 0 and
42572          nvl(sum(pjp1.CUSTOM13), 0)                 = 0 and
42573          nvl(sum(pjp1.CUSTOM14), 0)                 = 0 and
42574          nvl(sum(pjp1.CUSTOM15), 0)                 = 0);
42575 
42576       insert /*+ parallel(PJI_AC_AGGR_PJP1) */
42577                  into PJI_AC_AGGR_PJP1 partition(P5)
42578       (
42579         WORKER_ID,
42580         RECORD_TYPE,
42581         PRG_LEVEL,
42582         PROJECT_ID,
42583         PROJECT_ORG_ID,
42584         PROJECT_ORGANIZATION_ID,
42585         PROJECT_ELEMENT_ID,
42586         TIME_ID,
42587         PERIOD_TYPE_ID,
42588         CALENDAR_TYPE,
42589         WBS_ROLLUP_FLAG,
42590         PRG_ROLLUP_FLAG,
42591         CURR_RECORD_TYPE_ID,
42592         CURRENCY_CODE,
42593         REVENUE,
42594         INITIAL_FUNDING_AMOUNT,
42595         INITIAL_FUNDING_COUNT,
42596         ADDITIONAL_FUNDING_AMOUNT,
42597         ADDITIONAL_FUNDING_COUNT,
42598         CANCELLED_FUNDING_AMOUNT,
42599         CANCELLED_FUNDING_COUNT,
42600         FUNDING_ADJUSTMENT_AMOUNT,
42601         FUNDING_ADJUSTMENT_COUNT,
42602         REVENUE_WRITEOFF,
42603         AR_INVOICE_AMOUNT,
42604         AR_INVOICE_COUNT,
42605         AR_CASH_APPLIED_AMOUNT,
42606         AR_INVOICE_WRITE_OFF_AMOUNT,
42607         AR_INVOICE_WRITEOFF_COUNT,
42608         AR_CREDIT_MEMO_AMOUNT,
42609         AR_CREDIT_MEMO_COUNT,
42610         UNBILLED_RECEIVABLES,
42611         UNEARNED_REVENUE,
42612         AR_UNAPPR_INVOICE_AMOUNT,
42613         AR_UNAPPR_INVOICE_COUNT,
42614         AR_APPR_INVOICE_AMOUNT,
42615         AR_APPR_INVOICE_COUNT,
42616         AR_AMOUNT_DUE,
42617         AR_COUNT_DUE,
42618         AR_AMOUNT_OVERDUE,
42619         AR_COUNT_OVERDUE,
42620         CUSTOM1,
42621         CUSTOM2,
42622         CUSTOM3,
42623         CUSTOM4,
42624         CUSTOM5,
42625         CUSTOM6,
42626         CUSTOM7,
42627         CUSTOM8,
42628         CUSTOM9,
42629         CUSTOM10,
42630         CUSTOM11,
42631         CUSTOM12,
42632         CUSTOM13,
42633         CUSTOM14,
42634         CUSTOM15
42635       )
42636       select
42637         pjp1.WORKER_ID,
42638         'A'                                        RECORD_TYPE,
42639         pjp1.PRG_LEVEL,
42640         pjp1.PROJECT_ID,
42641         pjp1.PROJECT_ORG_ID,
42642         pjp1.PROJECT_ORGANIZATION_ID,
42643         pjp1.PROJECT_ELEMENT_ID,
42644         pjp1.TIME_ID,
42645         pjp1.PERIOD_TYPE_ID,
42646         pjp1.CALENDAR_TYPE,
42647         pjp1.WBS_ROLLUP_FLAG,
42648         pjp1.PRG_ROLLUP_FLAG,
42649         pjp1.CURR_RECORD_TYPE_ID,
42650         pjp1.CURRENCY_CODE,
42651         sum(pjp1.REVENUE)                          REVENUE,
42652         sum(pjp1.INITIAL_FUNDING_AMOUNT)           INITIAL_FUNDING_AMOUNT,
42653         sum(pjp1.INITIAL_FUNDING_COUNT)            INITIAL_FUNDING_COUNT,
42654         sum(pjp1.ADDITIONAL_FUNDING_AMOUNT)        ADDITIONAL_FUNDING_AMOUNT,
42655         sum(pjp1.ADDITIONAL_FUNDING_COUNT)         ADDITIONAL_FUNDING_COUNT,
42656         sum(pjp1.CANCELLED_FUNDING_AMOUNT)         CANCELLED_FUNDING_AMOUNT,
42657         sum(pjp1.CANCELLED_FUNDING_COUNT)          CANCELLED_FUNDING_COUNT,
42658         sum(pjp1.FUNDING_ADJUSTMENT_AMOUNT)        FUNDING_ADJUSTMENT_AMOUNT,
42659         sum(pjp1.FUNDING_ADJUSTMENT_COUNT)         FUNDING_ADJUSTMENT_COUNT,
42660         sum(pjp1.REVENUE_WRITEOFF)                 REVENUE_WRITEOFF,
42661         sum(pjp1.AR_INVOICE_AMOUNT)                AR_INVOICE_AMOUNT,
42662         sum(pjp1.AR_INVOICE_COUNT)                 AR_INVOICE_COUNT,
42663         sum(pjp1.AR_CASH_APPLIED_AMOUNT)           AR_CASH_APPLIED_AMOUNT,
42664         sum(pjp1.AR_INVOICE_WRITE_OFF_AMOUNT)      AR_INVOICE_WRITE_OFF_AMOUNT,
42665         sum(pjp1.AR_INVOICE_WRITEOFF_COUNT)        AR_INVOICE_WRITEOFF_COUNT,
42666         sum(pjp1.AR_CREDIT_MEMO_AMOUNT)            AR_CREDIT_MEMO_AMOUNT,
42667         sum(pjp1.AR_CREDIT_MEMO_COUNT)             AR_CREDIT_MEMO_COUNT,
42668         sum(pjp1.UNBILLED_RECEIVABLES)             UNBILLED_RECEIVABLES,
42669         sum(pjp1.UNEARNED_REVENUE)                 UNEARNED_REVENUE,
42670         sum(pjp1.AR_UNAPPR_INVOICE_AMOUNT)         AR_UNAPPR_INVOICE_AMOUNT,
42671         sum(pjp1.AR_UNAPPR_INVOICE_COUNT)          AR_UNAPPR_INVOICE_COUNT,
42672         sum(pjp1.AR_APPR_INVOICE_AMOUNT)           AR_APPR_INVOICE_AMOUNT,
42673         sum(pjp1.AR_APPR_INVOICE_COUNT)            AR_APPR_INVOICE_COUNT,
42674         sum(pjp1.AR_AMOUNT_DUE)                    AR_AMOUNT_DUE,
42675         sum(pjp1.AR_COUNT_DUE)                     AR_COUNT_DUE,
42676         sum(pjp1.AR_AMOUNT_OVERDUE)                AR_AMOUNT_OVERDUE,
42677         sum(pjp1.AR_COUNT_OVERDUE)                 AR_COUNT_OVERDUE,
42678         sum(pjp1.CUSTOM1)                          CUSTOM1,
42679         sum(pjp1.CUSTOM2)                          CUSTOM2,
42680         sum(pjp1.CUSTOM3)                          CUSTOM3,
42681         sum(pjp1.CUSTOM4)                          CUSTOM4,
42682         sum(pjp1.CUSTOM5)                          CUSTOM5,
42683         sum(pjp1.CUSTOM6)                          CUSTOM6,
42684         sum(pjp1.CUSTOM7)                          CUSTOM7,
42685         sum(pjp1.CUSTOM8)                          CUSTOM8,
42686         sum(pjp1.CUSTOM9)                          CUSTOM9,
42687         sum(pjp1.CUSTOM10)                         CUSTOM10,
42688         sum(pjp1.CUSTOM11)                         CUSTOM11,
42689         sum(pjp1.CUSTOM12)                         CUSTOM12,
42690         sum(pjp1.CUSTOM13)                         CUSTOM13,
42691         sum(pjp1.CUSTOM14)                         CUSTOM14,
42692         sum(pjp1.CUSTOM15)                         CUSTOM15
42693       from
42694         PJI_AC_AGGR_PJP1 pjp1
42695       where
42696         pjp1.WORKER_ID = p_worker_id
42697       group by
42698         pjp1.WORKER_ID,
42699         pjp1.PRG_LEVEL,
42700         pjp1.PROJECT_ID,
42701         pjp1.PROJECT_ORG_ID,
42702         pjp1.PROJECT_ORGANIZATION_ID,
42703         pjp1.PROJECT_ELEMENT_ID,
42704         pjp1.TIME_ID,
42705         pjp1.PERIOD_TYPE_ID,
42706         pjp1.CALENDAR_TYPE,
42707         pjp1.WBS_ROLLUP_FLAG,
42708         pjp1.PRG_ROLLUP_FLAG,
42709         pjp1.CURR_RECORD_TYPE_ID,
42710         pjp1.CURRENCY_CODE
42711       having not
42712         (nvl(sum(REVENUE), 0)                     = 0 and
42713          nvl(sum(INITIAL_FUNDING_AMOUNT), 0)      = 0 and
42714          nvl(sum(INITIAL_FUNDING_COUNT), 0)       = 0 and
42715          nvl(sum(ADDITIONAL_FUNDING_AMOUNT), 0)   = 0 and
42716          nvl(sum(ADDITIONAL_FUNDING_COUNT), 0)    = 0 and
42717          nvl(sum(CANCELLED_FUNDING_AMOUNT), 0)    = 0 and
42718          nvl(sum(CANCELLED_FUNDING_COUNT), 0)     = 0 and
42719          nvl(sum(FUNDING_ADJUSTMENT_AMOUNT), 0)   = 0 and
42720          nvl(sum(FUNDING_ADJUSTMENT_COUNT), 0)    = 0 and
42721          nvl(sum(REVENUE_WRITEOFF), 0)            = 0 and
42722          nvl(sum(AR_INVOICE_AMOUNT), 0)           = 0 and
42723          nvl(sum(AR_INVOICE_COUNT), 0)            = 0 and
42724          nvl(sum(AR_CASH_APPLIED_AMOUNT), 0)      = 0 and
42725          nvl(sum(AR_INVOICE_WRITE_OFF_AMOUNT), 0) = 0 and
42726          nvl(sum(AR_INVOICE_WRITEOFF_COUNT), 0)   = 0 and
42727          nvl(sum(AR_CREDIT_MEMO_AMOUNT), 0)       = 0 and
42728          nvl(sum(AR_CREDIT_MEMO_COUNT), 0)        = 0 and
42729          nvl(sum(UNBILLED_RECEIVABLES), 0)        = 0 and
42730          nvl(sum(UNEARNED_REVENUE), 0)            = 0 and
42731          nvl(sum(AR_UNAPPR_INVOICE_AMOUNT), 0)    = 0 and
42732          nvl(sum(AR_UNAPPR_INVOICE_COUNT), 0)     = 0 and
42733          nvl(sum(AR_APPR_INVOICE_AMOUNT), 0)      = 0 and
42734          nvl(sum(AR_APPR_INVOICE_COUNT), 0)       = 0 and
42735          nvl(sum(AR_AMOUNT_DUE), 0)               = 0 and
42736          nvl(sum(AR_COUNT_DUE), 0)                = 0 and
42737          nvl(sum(AR_AMOUNT_OVERDUE), 0)           = 0 and
42738          nvl(sum(AR_COUNT_OVERDUE), 0)            = 0 and
42739          nvl(sum(CUSTOM1), 0)                     = 0 and
42740          nvl(sum(CUSTOM2), 0)                     = 0 and
42741          nvl(sum(CUSTOM3), 0)                     = 0 and
42742          nvl(sum(CUSTOM4), 0)                     = 0 and
42743          nvl(sum(CUSTOM5), 0)                     = 0 and
42744          nvl(sum(CUSTOM6), 0)                     = 0 and
42745          nvl(sum(CUSTOM7), 0)                     = 0 and
42746          nvl(sum(CUSTOM8), 0)                     = 0 and
42747          nvl(sum(CUSTOM9), 0)                     = 0 and
42748          nvl(sum(CUSTOM10), 0)                    = 0 and
42749          nvl(sum(CUSTOM11), 0)                    = 0 and
42750          nvl(sum(CUSTOM12), 0)                    = 0 and
42751          nvl(sum(CUSTOM13), 0)                    = 0 and
42752          nvl(sum(CUSTOM14), 0)                    = 0 and
42753          nvl(sum(CUSTOM15), 0)                    = 0);
42754     elsif (p_worker_id =6) then
42755       -- Query for Partition 6
42756 
42757       insert /*+ parallel(PJI_FP_AGGR_PJP1) */
42758                  into PJI_FP_AGGR_PJP1 partition(P6)
42759 
42760       (
42761         WORKER_ID,
42762         RECORD_TYPE,
42763         PRG_LEVEL,
42764         LINE_TYPE,
42765         PROJECT_ID,
42766         PROJECT_ORG_ID,
42767         PROJECT_ORGANIZATION_ID,
42768         PROJECT_ELEMENT_ID,
42769         TIME_ID,
42770         PERIOD_TYPE_ID,
42771         CALENDAR_TYPE,
42772         RBS_AGGR_LEVEL,
42773         WBS_ROLLUP_FLAG,
42774         PRG_ROLLUP_FLAG,
42775         CURR_RECORD_TYPE_ID,
42776         CURRENCY_CODE,
42777         RBS_ELEMENT_ID,
42778         RBS_VERSION_ID,
42779         PLAN_VERSION_ID,
42780         PLAN_TYPE_ID,
42781         PLAN_TYPE_CODE,
42782         RAW_COST,
42783         BRDN_COST,
42784         REVENUE,
42785         BILL_RAW_COST,
42786         BILL_BRDN_COST,
42787         BILL_LABOR_RAW_COST,
42788         BILL_LABOR_BRDN_COST,
42789         BILL_LABOR_HRS,
42790         EQUIPMENT_RAW_COST,
42791         EQUIPMENT_BRDN_COST,
42792         CAPITALIZABLE_RAW_COST,
42793         CAPITALIZABLE_BRDN_COST,
42794         LABOR_RAW_COST,
42795         LABOR_BRDN_COST,
42796         LABOR_HRS,
42797         LABOR_REVENUE,
42798         EQUIPMENT_HOURS,
42799         BILLABLE_EQUIPMENT_HOURS,
42800         SUP_INV_COMMITTED_COST,
42801         PO_COMMITTED_COST,
42802         PR_COMMITTED_COST,
42803         OTH_COMMITTED_COST,
42804         ACT_LABOR_HRS,
42805         ACT_EQUIP_HRS,
42806         ACT_LABOR_BRDN_COST,
42807         ACT_EQUIP_BRDN_COST,
42808         ACT_BRDN_COST,
42809         ACT_RAW_COST,
42810         ACT_REVENUE,
42811         ACT_LABOR_RAW_COST,
42812         ACT_EQUIP_RAW_COST,
42813         ETC_LABOR_HRS,
42814         ETC_EQUIP_HRS,
42815         ETC_LABOR_BRDN_COST,
42816         ETC_EQUIP_BRDN_COST,
42817         ETC_BRDN_COST,
42818         ETC_RAW_COST,
42819         ETC_LABOR_RAW_COST,
42820         ETC_EQUIP_RAW_COST,
42821         CUSTOM1,
42822         CUSTOM2,
42823         CUSTOM3,
42824         CUSTOM4,
42825         CUSTOM5,
42826         CUSTOM6,
42827         CUSTOM7,
42828         CUSTOM8,
42829         CUSTOM9,
42830         CUSTOM10,
42831         CUSTOM11,
42832         CUSTOM12,
42833         CUSTOM13,
42834         CUSTOM14,
42835         CUSTOM15
42836       )
42837       select
42838         pjp1.WORKER_ID,
42839         'A'                                 RECORD_TYPE,
42840         0 ,             /*  pjp1.PRG_LEVEL,   6266824 sridhar commented as this is required and also impact of Merge changes */
42841         'AGGR_PLAN'                         LINE_TYPE,
42842         pjp1.PROJECT_ID,
42843         pjp1.PROJECT_ORG_ID,
42844         pjp1.PROJECT_ORGANIZATION_ID,
42845         pjp1.PROJECT_ELEMENT_ID,
42846         pjp1.TIME_ID,
42847         pjp1.PERIOD_TYPE_ID,
42848         pjp1.CALENDAR_TYPE,
42849         pjp1.RBS_AGGR_LEVEL,
42850         pjp1.WBS_ROLLUP_FLAG,
42851         pjp1.PRG_ROLLUP_FLAG,
42852         pjp1.CURR_RECORD_TYPE_ID,
42853         pjp1.CURRENCY_CODE,
42854         pjp1.RBS_ELEMENT_ID,
42855         pjp1.RBS_VERSION_ID,
42856         pjp1.PLAN_VERSION_ID,
42857         pjp1.PLAN_TYPE_ID,
42858         pjp1.PLAN_TYPE_CODE,
42859         sum(pjp1.RAW_COST)                  RAW_COST,
42860         sum(pjp1.BRDN_COST)                 BRDN_COST,
42861         sum(pjp1.REVENUE)                   REVENUE,
42862         sum(pjp1.BILL_RAW_COST)             BILL_RAW_COST,
42863         sum(pjp1.BILL_BRDN_COST)            BILL_BRDN_COST,
42864         sum(pjp1.BILL_LABOR_RAW_COST)       BILL_LABOR_RAW_COST,
42865         sum(pjp1.BILL_LABOR_BRDN_COST)      BILL_LABOR_BRDN_COST,
42866         sum(pjp1.BILL_LABOR_HRS)            BILL_LABOR_HRS,
42867         sum(pjp1.EQUIPMENT_RAW_COST)        EQUIPMENT_RAW_COST,
42868         sum(pjp1.EQUIPMENT_BRDN_COST)       EQUIPMENT_BRDN_COST,
42869         sum(pjp1.CAPITALIZABLE_RAW_COST)    CAPITALIZABLE_RAW_COST,
42870         sum(pjp1.CAPITALIZABLE_BRDN_COST)   CAPITALIZABLE_BRDN_COST,
42871         sum(pjp1.LABOR_RAW_COST)            LABOR_RAW_COST,
42872         sum(pjp1.LABOR_BRDN_COST)           LABOR_BRDN_COST,
42873         sum(pjp1.LABOR_HRS)                 LABOR_HRS,
42874         sum(pjp1.LABOR_REVENUE)             LABOR_REVENUE,
42875         sum(pjp1.EQUIPMENT_HOURS)           EQUIPMENT_HOURS,
42876         sum(pjp1.BILLABLE_EQUIPMENT_HOURS)  BILLABLE_EQUIPMENT_HOURS,
42877         sum(pjp1.SUP_INV_COMMITTED_COST)    SUP_INV_COMMITTED_COST,
42878         sum(pjp1.PO_COMMITTED_COST)         PO_COMMITTED_COST,
42879         sum(pjp1.PR_COMMITTED_COST)         PR_COMMITTED_COST,
42880         sum(pjp1.OTH_COMMITTED_COST)        OTH_COMMITTED_COST,
42881         sum(pjp1.ACT_LABOR_HRS)             ACT_LABOR_HRS,
42882         sum(pjp1.ACT_EQUIP_HRS)             ACT_EQUIP_HRS,
42883         sum(pjp1.ACT_LABOR_BRDN_COST)       ACT_LABOR_BRDN_COST,
42884         sum(pjp1.ACT_EQUIP_BRDN_COST)       ACT_EQUIP_BRDN_COST,
42885         sum(pjp1.ACT_BRDN_COST)             ACT_BRDN_COST,
42886         sum(pjp1.ACT_RAW_COST)              ACT_RAW_COST,
42887         sum(pjp1.ACT_REVENUE)               ACT_REVENUE,
42888         sum(pjp1.ACT_LABOR_RAW_COST)        ACT_LABOR_RAW_COST,
42889         sum(pjp1.ACT_EQUIP_RAW_COST)        ACT_EQUIP_RAW_COST,
42890         sum(pjp1.ETC_LABOR_HRS)             ETC_LABOR_HRS,
42891         sum(pjp1.ETC_EQUIP_HRS)             ETC_EQUIP_HRS,
42892         sum(pjp1.ETC_LABOR_BRDN_COST)       ETC_LABOR_BRDN_COST,
42893         sum(pjp1.ETC_EQUIP_BRDN_COST)       ETC_EQUIP_BRDN_COST,
42894         sum(pjp1.ETC_BRDN_COST)             ETC_BRDN_COST,
42895         sum(pjp1.ETC_RAW_COST)              ETC_RAW_COST,
42896         sum(pjp1.ETC_LABOR_RAW_COST)        ETC_LABOR_RAW_COST,
42897         sum(pjp1.ETC_EQUIP_RAW_COST)        ETC_EQUIP_RAW_COST,
42898         sum(pjp1.CUSTOM1)                   CUSTOM1,
42899         sum(pjp1.CUSTOM2)                   CUSTOM2,
42900         sum(pjp1.CUSTOM3)                   CUSTOM3,
42901         sum(pjp1.CUSTOM4)                   CUSTOM4,
42902         sum(pjp1.CUSTOM5)                   CUSTOM5,
42903         sum(pjp1.CUSTOM6)                   CUSTOM6,
42904         sum(pjp1.CUSTOM7)                   CUSTOM7,
42905         sum(pjp1.CUSTOM8)                   CUSTOM8,
42906         sum(pjp1.CUSTOM9)                   CUSTOM9,
42907         sum(pjp1.CUSTOM10)                  CUSTOM10,
42908         sum(pjp1.CUSTOM11)                  CUSTOM11,
42909         sum(pjp1.CUSTOM12)                  CUSTOM12,
42910         sum(pjp1.CUSTOM13)                  CUSTOM13,
42911         sum(pjp1.CUSTOM14)                  CUSTOM14,
42912         sum(pjp1.CUSTOM15)                  CUSTOM15
42913       from
42914         PJI_FP_AGGR_PJP1 pjp1
42915       where
42916         pjp1.WORKER_ID = p_worker_id
42917       group by
42918         pjp1.WORKER_ID,
42919  /*     pjp1.PRG_LEVEL,     -- 6266824 sridhar not required and also impact of merge change */
42920         pjp1.PROJECT_ID,
42921         pjp1.PROJECT_ORG_ID,
42922         pjp1.PROJECT_ORGANIZATION_ID,
42923         pjp1.PROJECT_ELEMENT_ID,
42924         pjp1.TIME_ID,
42925         pjp1.PERIOD_TYPE_ID,
42926         pjp1.CALENDAR_TYPE,
42927         pjp1.RBS_AGGR_LEVEL,
42928         pjp1.WBS_ROLLUP_FLAG,
42929         pjp1.PRG_ROLLUP_FLAG,
42930         pjp1.CURR_RECORD_TYPE_ID,
42931         pjp1.CURRENCY_CODE,
42932         pjp1.RBS_ELEMENT_ID,
42933         pjp1.RBS_VERSION_ID,
42934         pjp1.PLAN_VERSION_ID,
42935         pjp1.PLAN_TYPE_ID,
42936         pjp1.PLAN_TYPE_CODE
42937       having not
42938         (nvl(sum(pjp1.RAW_COST), 0)                 = 0 and
42939          nvl(sum(pjp1.BRDN_COST), 0)                = 0 and
42940          nvl(sum(pjp1.REVENUE), 0)                  = 0 and
42941          nvl(sum(pjp1.BILL_RAW_COST), 0)            = 0 and
42942          nvl(sum(pjp1.BILL_BRDN_COST), 0)           = 0 and
42943          nvl(sum(pjp1.BILL_LABOR_RAW_COST), 0)      = 0 and
42944          nvl(sum(pjp1.BILL_LABOR_BRDN_COST), 0)     = 0 and
42945          nvl(sum(pjp1.BILL_LABOR_HRS), 0)           = 0 and
42946          nvl(sum(pjp1.EQUIPMENT_RAW_COST), 0)       = 0 and
42947          nvl(sum(pjp1.EQUIPMENT_BRDN_COST), 0)      = 0 and
42948          nvl(sum(pjp1.CAPITALIZABLE_RAW_COST), 0)   = 0 and
42949          nvl(sum(pjp1.CAPITALIZABLE_BRDN_COST), 0)  = 0 and
42950          nvl(sum(pjp1.LABOR_RAW_COST), 0)           = 0 and
42951          nvl(sum(pjp1.LABOR_BRDN_COST), 0)          = 0 and
42952          nvl(sum(pjp1.LABOR_HRS), 0)                = 0 and
42953          nvl(sum(pjp1.LABOR_REVENUE), 0)            = 0 and
42954          nvl(sum(pjp1.EQUIPMENT_HOURS), 0)          = 0 and
42955          nvl(sum(pjp1.BILLABLE_EQUIPMENT_HOURS), 0) = 0 and
42956          nvl(sum(pjp1.SUP_INV_COMMITTED_COST), 0)   = 0 and
42957          nvl(sum(pjp1.PO_COMMITTED_COST), 0)        = 0 and
42958          nvl(sum(pjp1.PR_COMMITTED_COST), 0)        = 0 and
42959          nvl(sum(pjp1.OTH_COMMITTED_COST), 0)       = 0 and
42960          nvl(sum(pjp1.ACT_LABOR_HRS), 0)            = 0 and
42961          nvl(sum(pjp1.ACT_EQUIP_HRS), 0)            = 0 and
42962          nvl(sum(pjp1.ACT_LABOR_BRDN_COST), 0)      = 0 and
42963          nvl(sum(pjp1.ACT_EQUIP_BRDN_COST), 0)      = 0 and
42964          nvl(sum(pjp1.ACT_BRDN_COST), 0)            = 0 and
42965          nvl(sum(pjp1.ACT_RAW_COST), 0)             = 0 and
42966          nvl(sum(pjp1.ACT_REVENUE), 0)              = 0 and
42967          nvl(sum(pjp1.ACT_LABOR_RAW_COST), 0)       = 0 and
42968          nvl(sum(pjp1.ACT_EQUIP_RAW_COST), 0)       = 0 and
42969          nvl(sum(pjp1.ETC_LABOR_HRS), 0)            = 0 and
42970          nvl(sum(pjp1.ETC_EQUIP_HRS), 0)            = 0 and
42971          nvl(sum(pjp1.ETC_LABOR_BRDN_COST), 0)      = 0 and
42972          nvl(sum(pjp1.ETC_EQUIP_BRDN_COST), 0)      = 0 and
42973          nvl(sum(pjp1.ETC_BRDN_COST), 0)            = 0 and
42974          nvl(sum(pjp1.ETC_RAW_COST), 0)             = 0 and
42975          nvl(sum(pjp1.ETC_LABOR_RAW_COST), 0)       = 0 and
42976          nvl(sum(pjp1.ETC_EQUIP_RAW_COST), 0)       = 0 and
42977          nvl(sum(pjp1.CUSTOM1), 0)                  = 0 and
42978          nvl(sum(pjp1.CUSTOM2), 0)                  = 0 and
42979          nvl(sum(pjp1.CUSTOM3), 0)                  = 0 and
42980          nvl(sum(pjp1.CUSTOM4), 0)                  = 0 and
42981          nvl(sum(pjp1.CUSTOM5), 0)                  = 0 and
42982          nvl(sum(pjp1.CUSTOM6), 0)                  = 0 and
42983          nvl(sum(pjp1.CUSTOM7), 0)                  = 0 and
42984          nvl(sum(pjp1.CUSTOM8), 0)                  = 0 and
42985          nvl(sum(pjp1.CUSTOM9), 0)                  = 0 and
42986          nvl(sum(pjp1.CUSTOM10), 0)                 = 0 and
42987          nvl(sum(pjp1.CUSTOM11), 0)                 = 0 and
42988          nvl(sum(pjp1.CUSTOM12), 0)                 = 0 and
42989          nvl(sum(pjp1.CUSTOM13), 0)                 = 0 and
42990          nvl(sum(pjp1.CUSTOM14), 0)                 = 0 and
42991          nvl(sum(pjp1.CUSTOM15), 0)                 = 0);
42992 
42993       insert /*+ parallel(PJI_AC_AGGR_PJP1) */
42994                  into PJI_AC_AGGR_PJP1 partition(P6)
42995       (
42996         WORKER_ID,
42997         RECORD_TYPE,
42998         PRG_LEVEL,
42999         PROJECT_ID,
43000         PROJECT_ORG_ID,
43001         PROJECT_ORGANIZATION_ID,
43002         PROJECT_ELEMENT_ID,
43003         TIME_ID,
43004         PERIOD_TYPE_ID,
43005         CALENDAR_TYPE,
43006         WBS_ROLLUP_FLAG,
43007         PRG_ROLLUP_FLAG,
43008         CURR_RECORD_TYPE_ID,
43009         CURRENCY_CODE,
43010         REVENUE,
43011         INITIAL_FUNDING_AMOUNT,
43012         INITIAL_FUNDING_COUNT,
43013         ADDITIONAL_FUNDING_AMOUNT,
43014         ADDITIONAL_FUNDING_COUNT,
43015         CANCELLED_FUNDING_AMOUNT,
43016         CANCELLED_FUNDING_COUNT,
43017         FUNDING_ADJUSTMENT_AMOUNT,
43018         FUNDING_ADJUSTMENT_COUNT,
43019         REVENUE_WRITEOFF,
43020         AR_INVOICE_AMOUNT,
43021         AR_INVOICE_COUNT,
43022         AR_CASH_APPLIED_AMOUNT,
43023         AR_INVOICE_WRITE_OFF_AMOUNT,
43024         AR_INVOICE_WRITEOFF_COUNT,
43025         AR_CREDIT_MEMO_AMOUNT,
43026         AR_CREDIT_MEMO_COUNT,
43027         UNBILLED_RECEIVABLES,
43028         UNEARNED_REVENUE,
43029         AR_UNAPPR_INVOICE_AMOUNT,
43030         AR_UNAPPR_INVOICE_COUNT,
43031         AR_APPR_INVOICE_AMOUNT,
43032         AR_APPR_INVOICE_COUNT,
43033         AR_AMOUNT_DUE,
43034         AR_COUNT_DUE,
43035         AR_AMOUNT_OVERDUE,
43036         AR_COUNT_OVERDUE,
43037         CUSTOM1,
43038         CUSTOM2,
43039         CUSTOM3,
43040         CUSTOM4,
43041         CUSTOM5,
43042         CUSTOM6,
43043         CUSTOM7,
43044         CUSTOM8,
43045         CUSTOM9,
43046         CUSTOM10,
43047         CUSTOM11,
43048         CUSTOM12,
43049         CUSTOM13,
43050         CUSTOM14,
43051         CUSTOM15
43052       )
43053       select
43054         pjp1.WORKER_ID,
43055         'A'                                        RECORD_TYPE,
43056         pjp1.PRG_LEVEL,
43057         pjp1.PROJECT_ID,
43058         pjp1.PROJECT_ORG_ID,
43059         pjp1.PROJECT_ORGANIZATION_ID,
43060         pjp1.PROJECT_ELEMENT_ID,
43061         pjp1.TIME_ID,
43062         pjp1.PERIOD_TYPE_ID,
43063         pjp1.CALENDAR_TYPE,
43064         pjp1.WBS_ROLLUP_FLAG,
43065         pjp1.PRG_ROLLUP_FLAG,
43066         pjp1.CURR_RECORD_TYPE_ID,
43067         pjp1.CURRENCY_CODE,
43068         sum(pjp1.REVENUE)                          REVENUE,
43069         sum(pjp1.INITIAL_FUNDING_AMOUNT)           INITIAL_FUNDING_AMOUNT,
43070         sum(pjp1.INITIAL_FUNDING_COUNT)            INITIAL_FUNDING_COUNT,
43071         sum(pjp1.ADDITIONAL_FUNDING_AMOUNT)        ADDITIONAL_FUNDING_AMOUNT,
43072         sum(pjp1.ADDITIONAL_FUNDING_COUNT)         ADDITIONAL_FUNDING_COUNT,
43073         sum(pjp1.CANCELLED_FUNDING_AMOUNT)         CANCELLED_FUNDING_AMOUNT,
43074         sum(pjp1.CANCELLED_FUNDING_COUNT)          CANCELLED_FUNDING_COUNT,
43075         sum(pjp1.FUNDING_ADJUSTMENT_AMOUNT)        FUNDING_ADJUSTMENT_AMOUNT,
43076         sum(pjp1.FUNDING_ADJUSTMENT_COUNT)         FUNDING_ADJUSTMENT_COUNT,
43077         sum(pjp1.REVENUE_WRITEOFF)                 REVENUE_WRITEOFF,
43078         sum(pjp1.AR_INVOICE_AMOUNT)                AR_INVOICE_AMOUNT,
43079         sum(pjp1.AR_INVOICE_COUNT)                 AR_INVOICE_COUNT,
43080         sum(pjp1.AR_CASH_APPLIED_AMOUNT)           AR_CASH_APPLIED_AMOUNT,
43081         sum(pjp1.AR_INVOICE_WRITE_OFF_AMOUNT)      AR_INVOICE_WRITE_OFF_AMOUNT,
43082         sum(pjp1.AR_INVOICE_WRITEOFF_COUNT)        AR_INVOICE_WRITEOFF_COUNT,
43083         sum(pjp1.AR_CREDIT_MEMO_AMOUNT)            AR_CREDIT_MEMO_AMOUNT,
43084         sum(pjp1.AR_CREDIT_MEMO_COUNT)             AR_CREDIT_MEMO_COUNT,
43085         sum(pjp1.UNBILLED_RECEIVABLES)             UNBILLED_RECEIVABLES,
43086         sum(pjp1.UNEARNED_REVENUE)                 UNEARNED_REVENUE,
43087         sum(pjp1.AR_UNAPPR_INVOICE_AMOUNT)         AR_UNAPPR_INVOICE_AMOUNT,
43088         sum(pjp1.AR_UNAPPR_INVOICE_COUNT)          AR_UNAPPR_INVOICE_COUNT,
43089         sum(pjp1.AR_APPR_INVOICE_AMOUNT)           AR_APPR_INVOICE_AMOUNT,
43090         sum(pjp1.AR_APPR_INVOICE_COUNT)            AR_APPR_INVOICE_COUNT,
43091         sum(pjp1.AR_AMOUNT_DUE)                    AR_AMOUNT_DUE,
43092         sum(pjp1.AR_COUNT_DUE)                     AR_COUNT_DUE,
43093         sum(pjp1.AR_AMOUNT_OVERDUE)                AR_AMOUNT_OVERDUE,
43094         sum(pjp1.AR_COUNT_OVERDUE)                 AR_COUNT_OVERDUE,
43095         sum(pjp1.CUSTOM1)                          CUSTOM1,
43096         sum(pjp1.CUSTOM2)                          CUSTOM2,
43097         sum(pjp1.CUSTOM3)                          CUSTOM3,
43098         sum(pjp1.CUSTOM4)                          CUSTOM4,
43099         sum(pjp1.CUSTOM5)                          CUSTOM5,
43100         sum(pjp1.CUSTOM6)                          CUSTOM6,
43101         sum(pjp1.CUSTOM7)                          CUSTOM7,
43102         sum(pjp1.CUSTOM8)                          CUSTOM8,
43103         sum(pjp1.CUSTOM9)                          CUSTOM9,
43104         sum(pjp1.CUSTOM10)                         CUSTOM10,
43105         sum(pjp1.CUSTOM11)                         CUSTOM11,
43106         sum(pjp1.CUSTOM12)                         CUSTOM12,
43107         sum(pjp1.CUSTOM13)                         CUSTOM13,
43108         sum(pjp1.CUSTOM14)                         CUSTOM14,
43109         sum(pjp1.CUSTOM15)                         CUSTOM15
43110       from
43111         PJI_AC_AGGR_PJP1 pjp1
43112       where
43113         pjp1.WORKER_ID = p_worker_id
43114       group by
43115         pjp1.WORKER_ID,
43116         pjp1.PRG_LEVEL,
43117         pjp1.PROJECT_ID,
43118         pjp1.PROJECT_ORG_ID,
43119         pjp1.PROJECT_ORGANIZATION_ID,
43120         pjp1.PROJECT_ELEMENT_ID,
43121         pjp1.TIME_ID,
43122         pjp1.PERIOD_TYPE_ID,
43123         pjp1.CALENDAR_TYPE,
43124         pjp1.WBS_ROLLUP_FLAG,
43125         pjp1.PRG_ROLLUP_FLAG,
43126         pjp1.CURR_RECORD_TYPE_ID,
43127         pjp1.CURRENCY_CODE
43128       having not
43129         (nvl(sum(REVENUE), 0)                     = 0 and
43130          nvl(sum(INITIAL_FUNDING_AMOUNT), 0)      = 0 and
43131          nvl(sum(INITIAL_FUNDING_COUNT), 0)       = 0 and
43132          nvl(sum(ADDITIONAL_FUNDING_AMOUNT), 0)   = 0 and
43133          nvl(sum(ADDITIONAL_FUNDING_COUNT), 0)    = 0 and
43134          nvl(sum(CANCELLED_FUNDING_AMOUNT), 0)    = 0 and
43135          nvl(sum(CANCELLED_FUNDING_COUNT), 0)     = 0 and
43136          nvl(sum(FUNDING_ADJUSTMENT_AMOUNT), 0)   = 0 and
43137          nvl(sum(FUNDING_ADJUSTMENT_COUNT), 0)    = 0 and
43138          nvl(sum(REVENUE_WRITEOFF), 0)            = 0 and
43139          nvl(sum(AR_INVOICE_AMOUNT), 0)           = 0 and
43140          nvl(sum(AR_INVOICE_COUNT), 0)            = 0 and
43141          nvl(sum(AR_CASH_APPLIED_AMOUNT), 0)      = 0 and
43142          nvl(sum(AR_INVOICE_WRITE_OFF_AMOUNT), 0) = 0 and
43143          nvl(sum(AR_INVOICE_WRITEOFF_COUNT), 0)   = 0 and
43144          nvl(sum(AR_CREDIT_MEMO_AMOUNT), 0)       = 0 and
43145          nvl(sum(AR_CREDIT_MEMO_COUNT), 0)        = 0 and
43146          nvl(sum(UNBILLED_RECEIVABLES), 0)        = 0 and
43147          nvl(sum(UNEARNED_REVENUE), 0)            = 0 and
43148          nvl(sum(AR_UNAPPR_INVOICE_AMOUNT), 0)    = 0 and
43149          nvl(sum(AR_UNAPPR_INVOICE_COUNT), 0)     = 0 and
43150          nvl(sum(AR_APPR_INVOICE_AMOUNT), 0)      = 0 and
43151          nvl(sum(AR_APPR_INVOICE_COUNT), 0)       = 0 and
43152          nvl(sum(AR_AMOUNT_DUE), 0)               = 0 and
43153          nvl(sum(AR_COUNT_DUE), 0)                = 0 and
43154          nvl(sum(AR_AMOUNT_OVERDUE), 0)           = 0 and
43155          nvl(sum(AR_COUNT_OVERDUE), 0)            = 0 and
43156          nvl(sum(CUSTOM1), 0)                     = 0 and
43157          nvl(sum(CUSTOM2), 0)                     = 0 and
43158          nvl(sum(CUSTOM3), 0)                     = 0 and
43159          nvl(sum(CUSTOM4), 0)                     = 0 and
43160          nvl(sum(CUSTOM5), 0)                     = 0 and
43161          nvl(sum(CUSTOM6), 0)                     = 0 and
43162          nvl(sum(CUSTOM7), 0)                     = 0 and
43163          nvl(sum(CUSTOM8), 0)                     = 0 and
43164          nvl(sum(CUSTOM9), 0)                     = 0 and
43165          nvl(sum(CUSTOM10), 0)                    = 0 and
43166          nvl(sum(CUSTOM11), 0)                    = 0 and
43167          nvl(sum(CUSTOM12), 0)                    = 0 and
43168          nvl(sum(CUSTOM13), 0)                    = 0 and
43169          nvl(sum(CUSTOM14), 0)                    = 0 and
43170          nvl(sum(CUSTOM15), 0)                    = 0);
43171     elsif (p_worker_id =7) then
43172       -- Query for Partition 7
43173 
43174       insert /*+ parallel(PJI_FP_AGGR_PJP1) */
43175                  into PJI_FP_AGGR_PJP1 partition(P7)
43176 
43177       (
43178         WORKER_ID,
43179         RECORD_TYPE,
43180         PRG_LEVEL,
43181         LINE_TYPE,
43182         PROJECT_ID,
43183         PROJECT_ORG_ID,
43184         PROJECT_ORGANIZATION_ID,
43185         PROJECT_ELEMENT_ID,
43186         TIME_ID,
43187         PERIOD_TYPE_ID,
43188         CALENDAR_TYPE,
43189         RBS_AGGR_LEVEL,
43190         WBS_ROLLUP_FLAG,
43191         PRG_ROLLUP_FLAG,
43192         CURR_RECORD_TYPE_ID,
43193         CURRENCY_CODE,
43194         RBS_ELEMENT_ID,
43195         RBS_VERSION_ID,
43196         PLAN_VERSION_ID,
43197         PLAN_TYPE_ID,
43198         PLAN_TYPE_CODE,
43199         RAW_COST,
43200         BRDN_COST,
43201         REVENUE,
43202         BILL_RAW_COST,
43203         BILL_BRDN_COST,
43204         BILL_LABOR_RAW_COST,
43205         BILL_LABOR_BRDN_COST,
43206         BILL_LABOR_HRS,
43207         EQUIPMENT_RAW_COST,
43208         EQUIPMENT_BRDN_COST,
43209         CAPITALIZABLE_RAW_COST,
43210         CAPITALIZABLE_BRDN_COST,
43211         LABOR_RAW_COST,
43212         LABOR_BRDN_COST,
43213         LABOR_HRS,
43214         LABOR_REVENUE,
43215         EQUIPMENT_HOURS,
43216         BILLABLE_EQUIPMENT_HOURS,
43217         SUP_INV_COMMITTED_COST,
43218         PO_COMMITTED_COST,
43219         PR_COMMITTED_COST,
43220         OTH_COMMITTED_COST,
43221         ACT_LABOR_HRS,
43222         ACT_EQUIP_HRS,
43223         ACT_LABOR_BRDN_COST,
43224         ACT_EQUIP_BRDN_COST,
43225         ACT_BRDN_COST,
43226         ACT_RAW_COST,
43227         ACT_REVENUE,
43228         ACT_LABOR_RAW_COST,
43229         ACT_EQUIP_RAW_COST,
43230         ETC_LABOR_HRS,
43231         ETC_EQUIP_HRS,
43232         ETC_LABOR_BRDN_COST,
43233         ETC_EQUIP_BRDN_COST,
43234         ETC_BRDN_COST,
43235         ETC_RAW_COST,
43236         ETC_LABOR_RAW_COST,
43237         ETC_EQUIP_RAW_COST,
43238         CUSTOM1,
43239         CUSTOM2,
43240         CUSTOM3,
43241         CUSTOM4,
43242         CUSTOM5,
43243         CUSTOM6,
43244         CUSTOM7,
43245         CUSTOM8,
43246         CUSTOM9,
43247         CUSTOM10,
43248         CUSTOM11,
43249         CUSTOM12,
43250         CUSTOM13,
43251         CUSTOM14,
43252         CUSTOM15
43253       )
43254       select
43255         pjp1.WORKER_ID,
43256         'A'                                 RECORD_TYPE,
43257         0 ,             /*  pjp1.PRG_LEVEL,   6266824 sridhar commented as this is required and also impact of Merge changes */
43258         'AGGR_PLAN'                         LINE_TYPE,
43259         pjp1.PROJECT_ID,
43260         pjp1.PROJECT_ORG_ID,
43261         pjp1.PROJECT_ORGANIZATION_ID,
43262         pjp1.PROJECT_ELEMENT_ID,
43263         pjp1.TIME_ID,
43264         pjp1.PERIOD_TYPE_ID,
43265         pjp1.CALENDAR_TYPE,
43266         pjp1.RBS_AGGR_LEVEL,
43267         pjp1.WBS_ROLLUP_FLAG,
43268         pjp1.PRG_ROLLUP_FLAG,
43269         pjp1.CURR_RECORD_TYPE_ID,
43270         pjp1.CURRENCY_CODE,
43271         pjp1.RBS_ELEMENT_ID,
43272         pjp1.RBS_VERSION_ID,
43273         pjp1.PLAN_VERSION_ID,
43274         pjp1.PLAN_TYPE_ID,
43275         pjp1.PLAN_TYPE_CODE,
43276         sum(pjp1.RAW_COST)                  RAW_COST,
43277         sum(pjp1.BRDN_COST)                 BRDN_COST,
43278         sum(pjp1.REVENUE)                   REVENUE,
43279         sum(pjp1.BILL_RAW_COST)             BILL_RAW_COST,
43280         sum(pjp1.BILL_BRDN_COST)            BILL_BRDN_COST,
43281         sum(pjp1.BILL_LABOR_RAW_COST)       BILL_LABOR_RAW_COST,
43282         sum(pjp1.BILL_LABOR_BRDN_COST)      BILL_LABOR_BRDN_COST,
43283         sum(pjp1.BILL_LABOR_HRS)            BILL_LABOR_HRS,
43284         sum(pjp1.EQUIPMENT_RAW_COST)        EQUIPMENT_RAW_COST,
43285         sum(pjp1.EQUIPMENT_BRDN_COST)       EQUIPMENT_BRDN_COST,
43286         sum(pjp1.CAPITALIZABLE_RAW_COST)    CAPITALIZABLE_RAW_COST,
43287         sum(pjp1.CAPITALIZABLE_BRDN_COST)   CAPITALIZABLE_BRDN_COST,
43288         sum(pjp1.LABOR_RAW_COST)            LABOR_RAW_COST,
43289         sum(pjp1.LABOR_BRDN_COST)           LABOR_BRDN_COST,
43290         sum(pjp1.LABOR_HRS)                 LABOR_HRS,
43291         sum(pjp1.LABOR_REVENUE)             LABOR_REVENUE,
43292         sum(pjp1.EQUIPMENT_HOURS)           EQUIPMENT_HOURS,
43293         sum(pjp1.BILLABLE_EQUIPMENT_HOURS)  BILLABLE_EQUIPMENT_HOURS,
43294         sum(pjp1.SUP_INV_COMMITTED_COST)    SUP_INV_COMMITTED_COST,
43295         sum(pjp1.PO_COMMITTED_COST)         PO_COMMITTED_COST,
43296         sum(pjp1.PR_COMMITTED_COST)         PR_COMMITTED_COST,
43297         sum(pjp1.OTH_COMMITTED_COST)        OTH_COMMITTED_COST,
43298         sum(pjp1.ACT_LABOR_HRS)             ACT_LABOR_HRS,
43299         sum(pjp1.ACT_EQUIP_HRS)             ACT_EQUIP_HRS,
43300         sum(pjp1.ACT_LABOR_BRDN_COST)       ACT_LABOR_BRDN_COST,
43301         sum(pjp1.ACT_EQUIP_BRDN_COST)       ACT_EQUIP_BRDN_COST,
43302         sum(pjp1.ACT_BRDN_COST)             ACT_BRDN_COST,
43303         sum(pjp1.ACT_RAW_COST)              ACT_RAW_COST,
43304         sum(pjp1.ACT_REVENUE)               ACT_REVENUE,
43305         sum(pjp1.ACT_LABOR_RAW_COST)        ACT_LABOR_RAW_COST,
43306         sum(pjp1.ACT_EQUIP_RAW_COST)        ACT_EQUIP_RAW_COST,
43307         sum(pjp1.ETC_LABOR_HRS)             ETC_LABOR_HRS,
43308         sum(pjp1.ETC_EQUIP_HRS)             ETC_EQUIP_HRS,
43309         sum(pjp1.ETC_LABOR_BRDN_COST)       ETC_LABOR_BRDN_COST,
43310         sum(pjp1.ETC_EQUIP_BRDN_COST)       ETC_EQUIP_BRDN_COST,
43311         sum(pjp1.ETC_BRDN_COST)             ETC_BRDN_COST,
43312         sum(pjp1.ETC_RAW_COST)              ETC_RAW_COST,
43313         sum(pjp1.ETC_LABOR_RAW_COST)        ETC_LABOR_RAW_COST,
43314         sum(pjp1.ETC_EQUIP_RAW_COST)        ETC_EQUIP_RAW_COST,
43315         sum(pjp1.CUSTOM1)                   CUSTOM1,
43316         sum(pjp1.CUSTOM2)                   CUSTOM2,
43317         sum(pjp1.CUSTOM3)                   CUSTOM3,
43318         sum(pjp1.CUSTOM4)                   CUSTOM4,
43319         sum(pjp1.CUSTOM5)                   CUSTOM5,
43320         sum(pjp1.CUSTOM6)                   CUSTOM6,
43321         sum(pjp1.CUSTOM7)                   CUSTOM7,
43322         sum(pjp1.CUSTOM8)                   CUSTOM8,
43323         sum(pjp1.CUSTOM9)                   CUSTOM9,
43324         sum(pjp1.CUSTOM10)                  CUSTOM10,
43325         sum(pjp1.CUSTOM11)                  CUSTOM11,
43326         sum(pjp1.CUSTOM12)                  CUSTOM12,
43327         sum(pjp1.CUSTOM13)                  CUSTOM13,
43328         sum(pjp1.CUSTOM14)                  CUSTOM14,
43329         sum(pjp1.CUSTOM15)                  CUSTOM15
43330       from
43331         PJI_FP_AGGR_PJP1 pjp1
43332       where
43333         pjp1.WORKER_ID = p_worker_id
43334       group by
43335         pjp1.WORKER_ID,
43336  /*     pjp1.PRG_LEVEL,     -- 6266824 sridhar not required and also impact of merge change */
43337         pjp1.PROJECT_ID,
43338         pjp1.PROJECT_ORG_ID,
43339         pjp1.PROJECT_ORGANIZATION_ID,
43340         pjp1.PROJECT_ELEMENT_ID,
43341         pjp1.TIME_ID,
43342         pjp1.PERIOD_TYPE_ID,
43343         pjp1.CALENDAR_TYPE,
43344         pjp1.RBS_AGGR_LEVEL,
43345         pjp1.WBS_ROLLUP_FLAG,
43346         pjp1.PRG_ROLLUP_FLAG,
43347         pjp1.CURR_RECORD_TYPE_ID,
43348         pjp1.CURRENCY_CODE,
43349         pjp1.RBS_ELEMENT_ID,
43350         pjp1.RBS_VERSION_ID,
43351         pjp1.PLAN_VERSION_ID,
43352         pjp1.PLAN_TYPE_ID,
43353         pjp1.PLAN_TYPE_CODE
43354       having not
43355         (nvl(sum(pjp1.RAW_COST), 0)                 = 0 and
43356          nvl(sum(pjp1.BRDN_COST), 0)                = 0 and
43357          nvl(sum(pjp1.REVENUE), 0)                  = 0 and
43358          nvl(sum(pjp1.BILL_RAW_COST), 0)            = 0 and
43359          nvl(sum(pjp1.BILL_BRDN_COST), 0)           = 0 and
43360          nvl(sum(pjp1.BILL_LABOR_RAW_COST), 0)      = 0 and
43361          nvl(sum(pjp1.BILL_LABOR_BRDN_COST), 0)     = 0 and
43362          nvl(sum(pjp1.BILL_LABOR_HRS), 0)           = 0 and
43363          nvl(sum(pjp1.EQUIPMENT_RAW_COST), 0)       = 0 and
43364          nvl(sum(pjp1.EQUIPMENT_BRDN_COST), 0)      = 0 and
43365          nvl(sum(pjp1.CAPITALIZABLE_RAW_COST), 0)   = 0 and
43366          nvl(sum(pjp1.CAPITALIZABLE_BRDN_COST), 0)  = 0 and
43367          nvl(sum(pjp1.LABOR_RAW_COST), 0)           = 0 and
43368          nvl(sum(pjp1.LABOR_BRDN_COST), 0)          = 0 and
43369          nvl(sum(pjp1.LABOR_HRS), 0)                = 0 and
43370          nvl(sum(pjp1.LABOR_REVENUE), 0)            = 0 and
43371          nvl(sum(pjp1.EQUIPMENT_HOURS), 0)          = 0 and
43372          nvl(sum(pjp1.BILLABLE_EQUIPMENT_HOURS), 0) = 0 and
43373          nvl(sum(pjp1.SUP_INV_COMMITTED_COST), 0)   = 0 and
43374          nvl(sum(pjp1.PO_COMMITTED_COST), 0)        = 0 and
43375          nvl(sum(pjp1.PR_COMMITTED_COST), 0)        = 0 and
43376          nvl(sum(pjp1.OTH_COMMITTED_COST), 0)       = 0 and
43377          nvl(sum(pjp1.ACT_LABOR_HRS), 0)            = 0 and
43378          nvl(sum(pjp1.ACT_EQUIP_HRS), 0)            = 0 and
43379          nvl(sum(pjp1.ACT_LABOR_BRDN_COST), 0)      = 0 and
43380          nvl(sum(pjp1.ACT_EQUIP_BRDN_COST), 0)      = 0 and
43381          nvl(sum(pjp1.ACT_BRDN_COST), 0)            = 0 and
43382          nvl(sum(pjp1.ACT_RAW_COST), 0)             = 0 and
43383          nvl(sum(pjp1.ACT_REVENUE), 0)              = 0 and
43384          nvl(sum(pjp1.ACT_LABOR_RAW_COST), 0)       = 0 and
43385          nvl(sum(pjp1.ACT_EQUIP_RAW_COST), 0)       = 0 and
43386          nvl(sum(pjp1.ETC_LABOR_HRS), 0)            = 0 and
43387          nvl(sum(pjp1.ETC_EQUIP_HRS), 0)            = 0 and
43388          nvl(sum(pjp1.ETC_LABOR_BRDN_COST), 0)      = 0 and
43389          nvl(sum(pjp1.ETC_EQUIP_BRDN_COST), 0)      = 0 and
43390          nvl(sum(pjp1.ETC_BRDN_COST), 0)            = 0 and
43391          nvl(sum(pjp1.ETC_RAW_COST), 0)             = 0 and
43392          nvl(sum(pjp1.ETC_LABOR_RAW_COST), 0)       = 0 and
43393          nvl(sum(pjp1.ETC_EQUIP_RAW_COST), 0)       = 0 and
43394          nvl(sum(pjp1.CUSTOM1), 0)                  = 0 and
43395          nvl(sum(pjp1.CUSTOM2), 0)                  = 0 and
43396          nvl(sum(pjp1.CUSTOM3), 0)                  = 0 and
43397          nvl(sum(pjp1.CUSTOM4), 0)                  = 0 and
43398          nvl(sum(pjp1.CUSTOM5), 0)                  = 0 and
43399          nvl(sum(pjp1.CUSTOM6), 0)                  = 0 and
43400          nvl(sum(pjp1.CUSTOM7), 0)                  = 0 and
43401          nvl(sum(pjp1.CUSTOM8), 0)                  = 0 and
43402          nvl(sum(pjp1.CUSTOM9), 0)                  = 0 and
43403          nvl(sum(pjp1.CUSTOM10), 0)                 = 0 and
43404          nvl(sum(pjp1.CUSTOM11), 0)                 = 0 and
43405          nvl(sum(pjp1.CUSTOM12), 0)                 = 0 and
43406          nvl(sum(pjp1.CUSTOM13), 0)                 = 0 and
43407          nvl(sum(pjp1.CUSTOM14), 0)                 = 0 and
43408          nvl(sum(pjp1.CUSTOM15), 0)                 = 0);
43409 
43410       insert /*+ parallel(PJI_AC_AGGR_PJP1) */
43411                  into PJI_AC_AGGR_PJP1 partition(P7)
43412       (
43413         WORKER_ID,
43414         RECORD_TYPE,
43415         PRG_LEVEL,
43416         PROJECT_ID,
43417         PROJECT_ORG_ID,
43418         PROJECT_ORGANIZATION_ID,
43419         PROJECT_ELEMENT_ID,
43420         TIME_ID,
43421         PERIOD_TYPE_ID,
43422         CALENDAR_TYPE,
43423         WBS_ROLLUP_FLAG,
43424         PRG_ROLLUP_FLAG,
43425         CURR_RECORD_TYPE_ID,
43426         CURRENCY_CODE,
43427         REVENUE,
43428         INITIAL_FUNDING_AMOUNT,
43429         INITIAL_FUNDING_COUNT,
43430         ADDITIONAL_FUNDING_AMOUNT,
43431         ADDITIONAL_FUNDING_COUNT,
43432         CANCELLED_FUNDING_AMOUNT,
43433         CANCELLED_FUNDING_COUNT,
43434         FUNDING_ADJUSTMENT_AMOUNT,
43435         FUNDING_ADJUSTMENT_COUNT,
43436         REVENUE_WRITEOFF,
43437         AR_INVOICE_AMOUNT,
43438         AR_INVOICE_COUNT,
43439         AR_CASH_APPLIED_AMOUNT,
43440         AR_INVOICE_WRITE_OFF_AMOUNT,
43441         AR_INVOICE_WRITEOFF_COUNT,
43442         AR_CREDIT_MEMO_AMOUNT,
43443         AR_CREDIT_MEMO_COUNT,
43444         UNBILLED_RECEIVABLES,
43445         UNEARNED_REVENUE,
43446         AR_UNAPPR_INVOICE_AMOUNT,
43447         AR_UNAPPR_INVOICE_COUNT,
43448         AR_APPR_INVOICE_AMOUNT,
43449         AR_APPR_INVOICE_COUNT,
43450         AR_AMOUNT_DUE,
43451         AR_COUNT_DUE,
43452         AR_AMOUNT_OVERDUE,
43453         AR_COUNT_OVERDUE,
43454         CUSTOM1,
43455         CUSTOM2,
43456         CUSTOM3,
43457         CUSTOM4,
43458         CUSTOM5,
43459         CUSTOM6,
43460         CUSTOM7,
43461         CUSTOM8,
43462         CUSTOM9,
43463         CUSTOM10,
43464         CUSTOM11,
43465         CUSTOM12,
43466         CUSTOM13,
43467         CUSTOM14,
43468         CUSTOM15
43469       )
43470       select
43471         pjp1.WORKER_ID,
43472         'A'                                        RECORD_TYPE,
43473         pjp1.PRG_LEVEL,
43474         pjp1.PROJECT_ID,
43475         pjp1.PROJECT_ORG_ID,
43476         pjp1.PROJECT_ORGANIZATION_ID,
43477         pjp1.PROJECT_ELEMENT_ID,
43478         pjp1.TIME_ID,
43479         pjp1.PERIOD_TYPE_ID,
43480         pjp1.CALENDAR_TYPE,
43481         pjp1.WBS_ROLLUP_FLAG,
43482         pjp1.PRG_ROLLUP_FLAG,
43483         pjp1.CURR_RECORD_TYPE_ID,
43484         pjp1.CURRENCY_CODE,
43485         sum(pjp1.REVENUE)                          REVENUE,
43486         sum(pjp1.INITIAL_FUNDING_AMOUNT)           INITIAL_FUNDING_AMOUNT,
43487         sum(pjp1.INITIAL_FUNDING_COUNT)            INITIAL_FUNDING_COUNT,
43488         sum(pjp1.ADDITIONAL_FUNDING_AMOUNT)        ADDITIONAL_FUNDING_AMOUNT,
43489         sum(pjp1.ADDITIONAL_FUNDING_COUNT)         ADDITIONAL_FUNDING_COUNT,
43490         sum(pjp1.CANCELLED_FUNDING_AMOUNT)         CANCELLED_FUNDING_AMOUNT,
43491         sum(pjp1.CANCELLED_FUNDING_COUNT)          CANCELLED_FUNDING_COUNT,
43492         sum(pjp1.FUNDING_ADJUSTMENT_AMOUNT)        FUNDING_ADJUSTMENT_AMOUNT,
43493         sum(pjp1.FUNDING_ADJUSTMENT_COUNT)         FUNDING_ADJUSTMENT_COUNT,
43494         sum(pjp1.REVENUE_WRITEOFF)                 REVENUE_WRITEOFF,
43495         sum(pjp1.AR_INVOICE_AMOUNT)                AR_INVOICE_AMOUNT,
43496         sum(pjp1.AR_INVOICE_COUNT)                 AR_INVOICE_COUNT,
43497         sum(pjp1.AR_CASH_APPLIED_AMOUNT)           AR_CASH_APPLIED_AMOUNT,
43498         sum(pjp1.AR_INVOICE_WRITE_OFF_AMOUNT)      AR_INVOICE_WRITE_OFF_AMOUNT,
43499         sum(pjp1.AR_INVOICE_WRITEOFF_COUNT)        AR_INVOICE_WRITEOFF_COUNT,
43500         sum(pjp1.AR_CREDIT_MEMO_AMOUNT)            AR_CREDIT_MEMO_AMOUNT,
43501         sum(pjp1.AR_CREDIT_MEMO_COUNT)             AR_CREDIT_MEMO_COUNT,
43502         sum(pjp1.UNBILLED_RECEIVABLES)             UNBILLED_RECEIVABLES,
43503         sum(pjp1.UNEARNED_REVENUE)                 UNEARNED_REVENUE,
43504         sum(pjp1.AR_UNAPPR_INVOICE_AMOUNT)         AR_UNAPPR_INVOICE_AMOUNT,
43505         sum(pjp1.AR_UNAPPR_INVOICE_COUNT)          AR_UNAPPR_INVOICE_COUNT,
43506         sum(pjp1.AR_APPR_INVOICE_AMOUNT)           AR_APPR_INVOICE_AMOUNT,
43507         sum(pjp1.AR_APPR_INVOICE_COUNT)            AR_APPR_INVOICE_COUNT,
43508         sum(pjp1.AR_AMOUNT_DUE)                    AR_AMOUNT_DUE,
43509         sum(pjp1.AR_COUNT_DUE)                     AR_COUNT_DUE,
43510         sum(pjp1.AR_AMOUNT_OVERDUE)                AR_AMOUNT_OVERDUE,
43511         sum(pjp1.AR_COUNT_OVERDUE)                 AR_COUNT_OVERDUE,
43512         sum(pjp1.CUSTOM1)                          CUSTOM1,
43513         sum(pjp1.CUSTOM2)                          CUSTOM2,
43514         sum(pjp1.CUSTOM3)                          CUSTOM3,
43515         sum(pjp1.CUSTOM4)                          CUSTOM4,
43516         sum(pjp1.CUSTOM5)                          CUSTOM5,
43517         sum(pjp1.CUSTOM6)                          CUSTOM6,
43518         sum(pjp1.CUSTOM7)                          CUSTOM7,
43519         sum(pjp1.CUSTOM8)                          CUSTOM8,
43520         sum(pjp1.CUSTOM9)                          CUSTOM9,
43521         sum(pjp1.CUSTOM10)                         CUSTOM10,
43522         sum(pjp1.CUSTOM11)                         CUSTOM11,
43523         sum(pjp1.CUSTOM12)                         CUSTOM12,
43524         sum(pjp1.CUSTOM13)                         CUSTOM13,
43525         sum(pjp1.CUSTOM14)                         CUSTOM14,
43526         sum(pjp1.CUSTOM15)                         CUSTOM15
43527       from
43528         PJI_AC_AGGR_PJP1 pjp1
43529       where
43530         pjp1.WORKER_ID = p_worker_id
43531       group by
43532         pjp1.WORKER_ID,
43533         pjp1.PRG_LEVEL,
43534         pjp1.PROJECT_ID,
43535         pjp1.PROJECT_ORG_ID,
43536         pjp1.PROJECT_ORGANIZATION_ID,
43537         pjp1.PROJECT_ELEMENT_ID,
43538         pjp1.TIME_ID,
43539         pjp1.PERIOD_TYPE_ID,
43540         pjp1.CALENDAR_TYPE,
43541         pjp1.WBS_ROLLUP_FLAG,
43542         pjp1.PRG_ROLLUP_FLAG,
43543         pjp1.CURR_RECORD_TYPE_ID,
43544         pjp1.CURRENCY_CODE
43545       having not
43546         (nvl(sum(REVENUE), 0)                     = 0 and
43547          nvl(sum(INITIAL_FUNDING_AMOUNT), 0)      = 0 and
43548          nvl(sum(INITIAL_FUNDING_COUNT), 0)       = 0 and
43549          nvl(sum(ADDITIONAL_FUNDING_AMOUNT), 0)   = 0 and
43550          nvl(sum(ADDITIONAL_FUNDING_COUNT), 0)    = 0 and
43551          nvl(sum(CANCELLED_FUNDING_AMOUNT), 0)    = 0 and
43552          nvl(sum(CANCELLED_FUNDING_COUNT), 0)     = 0 and
43553          nvl(sum(FUNDING_ADJUSTMENT_AMOUNT), 0)   = 0 and
43554          nvl(sum(FUNDING_ADJUSTMENT_COUNT), 0)    = 0 and
43555          nvl(sum(REVENUE_WRITEOFF), 0)            = 0 and
43556          nvl(sum(AR_INVOICE_AMOUNT), 0)           = 0 and
43557          nvl(sum(AR_INVOICE_COUNT), 0)            = 0 and
43558          nvl(sum(AR_CASH_APPLIED_AMOUNT), 0)      = 0 and
43559          nvl(sum(AR_INVOICE_WRITE_OFF_AMOUNT), 0) = 0 and
43560          nvl(sum(AR_INVOICE_WRITEOFF_COUNT), 0)   = 0 and
43561          nvl(sum(AR_CREDIT_MEMO_AMOUNT), 0)       = 0 and
43562          nvl(sum(AR_CREDIT_MEMO_COUNT), 0)        = 0 and
43563          nvl(sum(UNBILLED_RECEIVABLES), 0)        = 0 and
43564          nvl(sum(UNEARNED_REVENUE), 0)            = 0 and
43565          nvl(sum(AR_UNAPPR_INVOICE_AMOUNT), 0)    = 0 and
43566          nvl(sum(AR_UNAPPR_INVOICE_COUNT), 0)     = 0 and
43567          nvl(sum(AR_APPR_INVOICE_AMOUNT), 0)      = 0 and
43568          nvl(sum(AR_APPR_INVOICE_COUNT), 0)       = 0 and
43569          nvl(sum(AR_AMOUNT_DUE), 0)               = 0 and
43570          nvl(sum(AR_COUNT_DUE), 0)                = 0 and
43571          nvl(sum(AR_AMOUNT_OVERDUE), 0)           = 0 and
43572          nvl(sum(AR_COUNT_OVERDUE), 0)            = 0 and
43573          nvl(sum(CUSTOM1), 0)                     = 0 and
43574          nvl(sum(CUSTOM2), 0)                     = 0 and
43575          nvl(sum(CUSTOM3), 0)                     = 0 and
43576          nvl(sum(CUSTOM4), 0)                     = 0 and
43577          nvl(sum(CUSTOM5), 0)                     = 0 and
43578          nvl(sum(CUSTOM6), 0)                     = 0 and
43579          nvl(sum(CUSTOM7), 0)                     = 0 and
43580          nvl(sum(CUSTOM8), 0)                     = 0 and
43581          nvl(sum(CUSTOM9), 0)                     = 0 and
43582          nvl(sum(CUSTOM10), 0)                    = 0 and
43583          nvl(sum(CUSTOM11), 0)                    = 0 and
43584          nvl(sum(CUSTOM12), 0)                    = 0 and
43585          nvl(sum(CUSTOM13), 0)                    = 0 and
43586          nvl(sum(CUSTOM14), 0)                    = 0 and
43587          nvl(sum(CUSTOM15), 0)                    = 0);
43588     elsif (p_worker_id =8) then
43589       -- Query for Partition 8
43590 
43591       insert /*+ parallel(PJI_FP_AGGR_PJP1) */
43592                  into PJI_FP_AGGR_PJP1 partition(P8)
43593 
43594       (
43595         WORKER_ID,
43596         RECORD_TYPE,
43597         PRG_LEVEL,
43598         LINE_TYPE,
43599         PROJECT_ID,
43600         PROJECT_ORG_ID,
43601         PROJECT_ORGANIZATION_ID,
43602         PROJECT_ELEMENT_ID,
43603         TIME_ID,
43604         PERIOD_TYPE_ID,
43605         CALENDAR_TYPE,
43606         RBS_AGGR_LEVEL,
43607         WBS_ROLLUP_FLAG,
43608         PRG_ROLLUP_FLAG,
43609         CURR_RECORD_TYPE_ID,
43610         CURRENCY_CODE,
43611         RBS_ELEMENT_ID,
43612         RBS_VERSION_ID,
43613         PLAN_VERSION_ID,
43614         PLAN_TYPE_ID,
43615         PLAN_TYPE_CODE,
43616         RAW_COST,
43617         BRDN_COST,
43618         REVENUE,
43619         BILL_RAW_COST,
43620         BILL_BRDN_COST,
43621         BILL_LABOR_RAW_COST,
43622         BILL_LABOR_BRDN_COST,
43623         BILL_LABOR_HRS,
43624         EQUIPMENT_RAW_COST,
43625         EQUIPMENT_BRDN_COST,
43626         CAPITALIZABLE_RAW_COST,
43627         CAPITALIZABLE_BRDN_COST,
43628         LABOR_RAW_COST,
43629         LABOR_BRDN_COST,
43630         LABOR_HRS,
43631         LABOR_REVENUE,
43632         EQUIPMENT_HOURS,
43633         BILLABLE_EQUIPMENT_HOURS,
43634         SUP_INV_COMMITTED_COST,
43635         PO_COMMITTED_COST,
43636         PR_COMMITTED_COST,
43637         OTH_COMMITTED_COST,
43638         ACT_LABOR_HRS,
43639         ACT_EQUIP_HRS,
43640         ACT_LABOR_BRDN_COST,
43641         ACT_EQUIP_BRDN_COST,
43642         ACT_BRDN_COST,
43643         ACT_RAW_COST,
43644         ACT_REVENUE,
43645         ACT_LABOR_RAW_COST,
43646         ACT_EQUIP_RAW_COST,
43647         ETC_LABOR_HRS,
43648         ETC_EQUIP_HRS,
43649         ETC_LABOR_BRDN_COST,
43650         ETC_EQUIP_BRDN_COST,
43651         ETC_BRDN_COST,
43652         ETC_RAW_COST,
43653         ETC_LABOR_RAW_COST,
43654         ETC_EQUIP_RAW_COST,
43655         CUSTOM1,
43656         CUSTOM2,
43657         CUSTOM3,
43658         CUSTOM4,
43659         CUSTOM5,
43660         CUSTOM6,
43661         CUSTOM7,
43662         CUSTOM8,
43663         CUSTOM9,
43664         CUSTOM10,
43665         CUSTOM11,
43666         CUSTOM12,
43667         CUSTOM13,
43668         CUSTOM14,
43669         CUSTOM15
43670       )
43671       select
43672         pjp1.WORKER_ID,
43673         'A'                                 RECORD_TYPE,
43674         0 ,             /*  pjp1.PRG_LEVEL,   6266824 sridhar commented as this is required and also impact of Merge changes */
43675         'AGGR_PLAN'                         LINE_TYPE,
43676         pjp1.PROJECT_ID,
43677         pjp1.PROJECT_ORG_ID,
43678         pjp1.PROJECT_ORGANIZATION_ID,
43679         pjp1.PROJECT_ELEMENT_ID,
43680         pjp1.TIME_ID,
43681         pjp1.PERIOD_TYPE_ID,
43682         pjp1.CALENDAR_TYPE,
43683         pjp1.RBS_AGGR_LEVEL,
43684         pjp1.WBS_ROLLUP_FLAG,
43685         pjp1.PRG_ROLLUP_FLAG,
43686         pjp1.CURR_RECORD_TYPE_ID,
43687         pjp1.CURRENCY_CODE,
43688         pjp1.RBS_ELEMENT_ID,
43689         pjp1.RBS_VERSION_ID,
43690         pjp1.PLAN_VERSION_ID,
43691         pjp1.PLAN_TYPE_ID,
43692         pjp1.PLAN_TYPE_CODE,
43693         sum(pjp1.RAW_COST)                  RAW_COST,
43694         sum(pjp1.BRDN_COST)                 BRDN_COST,
43695         sum(pjp1.REVENUE)                   REVENUE,
43696         sum(pjp1.BILL_RAW_COST)             BILL_RAW_COST,
43697         sum(pjp1.BILL_BRDN_COST)            BILL_BRDN_COST,
43698         sum(pjp1.BILL_LABOR_RAW_COST)       BILL_LABOR_RAW_COST,
43699         sum(pjp1.BILL_LABOR_BRDN_COST)      BILL_LABOR_BRDN_COST,
43700         sum(pjp1.BILL_LABOR_HRS)            BILL_LABOR_HRS,
43701         sum(pjp1.EQUIPMENT_RAW_COST)        EQUIPMENT_RAW_COST,
43702         sum(pjp1.EQUIPMENT_BRDN_COST)       EQUIPMENT_BRDN_COST,
43703         sum(pjp1.CAPITALIZABLE_RAW_COST)    CAPITALIZABLE_RAW_COST,
43704         sum(pjp1.CAPITALIZABLE_BRDN_COST)   CAPITALIZABLE_BRDN_COST,
43705         sum(pjp1.LABOR_RAW_COST)            LABOR_RAW_COST,
43706         sum(pjp1.LABOR_BRDN_COST)           LABOR_BRDN_COST,
43707         sum(pjp1.LABOR_HRS)                 LABOR_HRS,
43708         sum(pjp1.LABOR_REVENUE)             LABOR_REVENUE,
43709         sum(pjp1.EQUIPMENT_HOURS)           EQUIPMENT_HOURS,
43710         sum(pjp1.BILLABLE_EQUIPMENT_HOURS)  BILLABLE_EQUIPMENT_HOURS,
43711         sum(pjp1.SUP_INV_COMMITTED_COST)    SUP_INV_COMMITTED_COST,
43712         sum(pjp1.PO_COMMITTED_COST)         PO_COMMITTED_COST,
43713         sum(pjp1.PR_COMMITTED_COST)         PR_COMMITTED_COST,
43714         sum(pjp1.OTH_COMMITTED_COST)        OTH_COMMITTED_COST,
43715         sum(pjp1.ACT_LABOR_HRS)             ACT_LABOR_HRS,
43716         sum(pjp1.ACT_EQUIP_HRS)             ACT_EQUIP_HRS,
43717         sum(pjp1.ACT_LABOR_BRDN_COST)       ACT_LABOR_BRDN_COST,
43718         sum(pjp1.ACT_EQUIP_BRDN_COST)       ACT_EQUIP_BRDN_COST,
43719         sum(pjp1.ACT_BRDN_COST)             ACT_BRDN_COST,
43720         sum(pjp1.ACT_RAW_COST)              ACT_RAW_COST,
43721         sum(pjp1.ACT_REVENUE)               ACT_REVENUE,
43722         sum(pjp1.ACT_LABOR_RAW_COST)        ACT_LABOR_RAW_COST,
43723         sum(pjp1.ACT_EQUIP_RAW_COST)        ACT_EQUIP_RAW_COST,
43724         sum(pjp1.ETC_LABOR_HRS)             ETC_LABOR_HRS,
43725         sum(pjp1.ETC_EQUIP_HRS)             ETC_EQUIP_HRS,
43726         sum(pjp1.ETC_LABOR_BRDN_COST)       ETC_LABOR_BRDN_COST,
43727         sum(pjp1.ETC_EQUIP_BRDN_COST)       ETC_EQUIP_BRDN_COST,
43728         sum(pjp1.ETC_BRDN_COST)             ETC_BRDN_COST,
43729         sum(pjp1.ETC_RAW_COST)              ETC_RAW_COST,
43730         sum(pjp1.ETC_LABOR_RAW_COST)        ETC_LABOR_RAW_COST,
43731         sum(pjp1.ETC_EQUIP_RAW_COST)        ETC_EQUIP_RAW_COST,
43732         sum(pjp1.CUSTOM1)                   CUSTOM1,
43733         sum(pjp1.CUSTOM2)                   CUSTOM2,
43734         sum(pjp1.CUSTOM3)                   CUSTOM3,
43735         sum(pjp1.CUSTOM4)                   CUSTOM4,
43736         sum(pjp1.CUSTOM5)                   CUSTOM5,
43737         sum(pjp1.CUSTOM6)                   CUSTOM6,
43738         sum(pjp1.CUSTOM7)                   CUSTOM7,
43739         sum(pjp1.CUSTOM8)                   CUSTOM8,
43740         sum(pjp1.CUSTOM9)                   CUSTOM9,
43741         sum(pjp1.CUSTOM10)                  CUSTOM10,
43742         sum(pjp1.CUSTOM11)                  CUSTOM11,
43743         sum(pjp1.CUSTOM12)                  CUSTOM12,
43744         sum(pjp1.CUSTOM13)                  CUSTOM13,
43745         sum(pjp1.CUSTOM14)                  CUSTOM14,
43746         sum(pjp1.CUSTOM15)                  CUSTOM15
43747       from
43748         PJI_FP_AGGR_PJP1 pjp1
43749       where
43750         pjp1.WORKER_ID = p_worker_id
43751       group by
43752         pjp1.WORKER_ID,
43753  /*     pjp1.PRG_LEVEL,     -- 6266824 sridhar not required and also impact of merge change */
43754         pjp1.PROJECT_ID,
43755         pjp1.PROJECT_ORG_ID,
43756         pjp1.PROJECT_ORGANIZATION_ID,
43757         pjp1.PROJECT_ELEMENT_ID,
43758         pjp1.TIME_ID,
43759         pjp1.PERIOD_TYPE_ID,
43760         pjp1.CALENDAR_TYPE,
43761         pjp1.RBS_AGGR_LEVEL,
43762         pjp1.WBS_ROLLUP_FLAG,
43763         pjp1.PRG_ROLLUP_FLAG,
43764         pjp1.CURR_RECORD_TYPE_ID,
43765         pjp1.CURRENCY_CODE,
43766         pjp1.RBS_ELEMENT_ID,
43767         pjp1.RBS_VERSION_ID,
43768         pjp1.PLAN_VERSION_ID,
43769         pjp1.PLAN_TYPE_ID,
43770         pjp1.PLAN_TYPE_CODE
43771       having not
43772         (nvl(sum(pjp1.RAW_COST), 0)                 = 0 and
43773          nvl(sum(pjp1.BRDN_COST), 0)                = 0 and
43774          nvl(sum(pjp1.REVENUE), 0)                  = 0 and
43775          nvl(sum(pjp1.BILL_RAW_COST), 0)            = 0 and
43776          nvl(sum(pjp1.BILL_BRDN_COST), 0)           = 0 and
43777          nvl(sum(pjp1.BILL_LABOR_RAW_COST), 0)      = 0 and
43778          nvl(sum(pjp1.BILL_LABOR_BRDN_COST), 0)     = 0 and
43779          nvl(sum(pjp1.BILL_LABOR_HRS), 0)           = 0 and
43780          nvl(sum(pjp1.EQUIPMENT_RAW_COST), 0)       = 0 and
43781          nvl(sum(pjp1.EQUIPMENT_BRDN_COST), 0)      = 0 and
43782          nvl(sum(pjp1.CAPITALIZABLE_RAW_COST), 0)   = 0 and
43783          nvl(sum(pjp1.CAPITALIZABLE_BRDN_COST), 0)  = 0 and
43784          nvl(sum(pjp1.LABOR_RAW_COST), 0)           = 0 and
43785          nvl(sum(pjp1.LABOR_BRDN_COST), 0)          = 0 and
43786          nvl(sum(pjp1.LABOR_HRS), 0)                = 0 and
43787          nvl(sum(pjp1.LABOR_REVENUE), 0)            = 0 and
43788          nvl(sum(pjp1.EQUIPMENT_HOURS), 0)          = 0 and
43789          nvl(sum(pjp1.BILLABLE_EQUIPMENT_HOURS), 0) = 0 and
43790          nvl(sum(pjp1.SUP_INV_COMMITTED_COST), 0)   = 0 and
43791          nvl(sum(pjp1.PO_COMMITTED_COST), 0)        = 0 and
43792          nvl(sum(pjp1.PR_COMMITTED_COST), 0)        = 0 and
43793          nvl(sum(pjp1.OTH_COMMITTED_COST), 0)       = 0 and
43794          nvl(sum(pjp1.ACT_LABOR_HRS), 0)            = 0 and
43795          nvl(sum(pjp1.ACT_EQUIP_HRS), 0)            = 0 and
43796          nvl(sum(pjp1.ACT_LABOR_BRDN_COST), 0)      = 0 and
43797          nvl(sum(pjp1.ACT_EQUIP_BRDN_COST), 0)      = 0 and
43798          nvl(sum(pjp1.ACT_BRDN_COST), 0)            = 0 and
43799          nvl(sum(pjp1.ACT_RAW_COST), 0)             = 0 and
43800          nvl(sum(pjp1.ACT_REVENUE), 0)              = 0 and
43801          nvl(sum(pjp1.ACT_LABOR_RAW_COST), 0)       = 0 and
43802          nvl(sum(pjp1.ACT_EQUIP_RAW_COST), 0)       = 0 and
43803          nvl(sum(pjp1.ETC_LABOR_HRS), 0)            = 0 and
43804          nvl(sum(pjp1.ETC_EQUIP_HRS), 0)            = 0 and
43805          nvl(sum(pjp1.ETC_LABOR_BRDN_COST), 0)      = 0 and
43806          nvl(sum(pjp1.ETC_EQUIP_BRDN_COST), 0)      = 0 and
43807          nvl(sum(pjp1.ETC_BRDN_COST), 0)            = 0 and
43808          nvl(sum(pjp1.ETC_RAW_COST), 0)             = 0 and
43809          nvl(sum(pjp1.ETC_LABOR_RAW_COST), 0)       = 0 and
43810          nvl(sum(pjp1.ETC_EQUIP_RAW_COST), 0)       = 0 and
43811          nvl(sum(pjp1.CUSTOM1), 0)                  = 0 and
43812          nvl(sum(pjp1.CUSTOM2), 0)                  = 0 and
43813          nvl(sum(pjp1.CUSTOM3), 0)                  = 0 and
43814          nvl(sum(pjp1.CUSTOM4), 0)                  = 0 and
43815          nvl(sum(pjp1.CUSTOM5), 0)                  = 0 and
43816          nvl(sum(pjp1.CUSTOM6), 0)                  = 0 and
43817          nvl(sum(pjp1.CUSTOM7), 0)                  = 0 and
43818          nvl(sum(pjp1.CUSTOM8), 0)                  = 0 and
43819          nvl(sum(pjp1.CUSTOM9), 0)                  = 0 and
43820          nvl(sum(pjp1.CUSTOM10), 0)                 = 0 and
43821          nvl(sum(pjp1.CUSTOM11), 0)                 = 0 and
43822          nvl(sum(pjp1.CUSTOM12), 0)                 = 0 and
43823          nvl(sum(pjp1.CUSTOM13), 0)                 = 0 and
43824          nvl(sum(pjp1.CUSTOM14), 0)                 = 0 and
43825          nvl(sum(pjp1.CUSTOM15), 0)                 = 0);
43826 
43827       insert /*+ parallel(PJI_AC_AGGR_PJP1) */
43828                  into PJI_AC_AGGR_PJP1 partition(P8)
43829       (
43830         WORKER_ID,
43831         RECORD_TYPE,
43832         PRG_LEVEL,
43833         PROJECT_ID,
43834         PROJECT_ORG_ID,
43835         PROJECT_ORGANIZATION_ID,
43836         PROJECT_ELEMENT_ID,
43837         TIME_ID,
43838         PERIOD_TYPE_ID,
43839         CALENDAR_TYPE,
43840         WBS_ROLLUP_FLAG,
43841         PRG_ROLLUP_FLAG,
43842         CURR_RECORD_TYPE_ID,
43843         CURRENCY_CODE,
43844         REVENUE,
43845         INITIAL_FUNDING_AMOUNT,
43846         INITIAL_FUNDING_COUNT,
43847         ADDITIONAL_FUNDING_AMOUNT,
43848         ADDITIONAL_FUNDING_COUNT,
43849         CANCELLED_FUNDING_AMOUNT,
43850         CANCELLED_FUNDING_COUNT,
43851         FUNDING_ADJUSTMENT_AMOUNT,
43852         FUNDING_ADJUSTMENT_COUNT,
43853         REVENUE_WRITEOFF,
43854         AR_INVOICE_AMOUNT,
43855         AR_INVOICE_COUNT,
43856         AR_CASH_APPLIED_AMOUNT,
43857         AR_INVOICE_WRITE_OFF_AMOUNT,
43858         AR_INVOICE_WRITEOFF_COUNT,
43859         AR_CREDIT_MEMO_AMOUNT,
43860         AR_CREDIT_MEMO_COUNT,
43861         UNBILLED_RECEIVABLES,
43862         UNEARNED_REVENUE,
43863         AR_UNAPPR_INVOICE_AMOUNT,
43864         AR_UNAPPR_INVOICE_COUNT,
43865         AR_APPR_INVOICE_AMOUNT,
43866         AR_APPR_INVOICE_COUNT,
43867         AR_AMOUNT_DUE,
43868         AR_COUNT_DUE,
43869         AR_AMOUNT_OVERDUE,
43870         AR_COUNT_OVERDUE,
43871         CUSTOM1,
43872         CUSTOM2,
43873         CUSTOM3,
43874         CUSTOM4,
43875         CUSTOM5,
43876         CUSTOM6,
43877         CUSTOM7,
43878         CUSTOM8,
43879         CUSTOM9,
43880         CUSTOM10,
43881         CUSTOM11,
43882         CUSTOM12,
43883         CUSTOM13,
43884         CUSTOM14,
43885         CUSTOM15
43886       )
43887       select
43888         pjp1.WORKER_ID,
43889         'A'                                        RECORD_TYPE,
43890         pjp1.PRG_LEVEL,
43891         pjp1.PROJECT_ID,
43892         pjp1.PROJECT_ORG_ID,
43893         pjp1.PROJECT_ORGANIZATION_ID,
43894         pjp1.PROJECT_ELEMENT_ID,
43895         pjp1.TIME_ID,
43896         pjp1.PERIOD_TYPE_ID,
43897         pjp1.CALENDAR_TYPE,
43898         pjp1.WBS_ROLLUP_FLAG,
43899         pjp1.PRG_ROLLUP_FLAG,
43900         pjp1.CURR_RECORD_TYPE_ID,
43901         pjp1.CURRENCY_CODE,
43902         sum(pjp1.REVENUE)                          REVENUE,
43903         sum(pjp1.INITIAL_FUNDING_AMOUNT)           INITIAL_FUNDING_AMOUNT,
43904         sum(pjp1.INITIAL_FUNDING_COUNT)            INITIAL_FUNDING_COUNT,
43905         sum(pjp1.ADDITIONAL_FUNDING_AMOUNT)        ADDITIONAL_FUNDING_AMOUNT,
43906         sum(pjp1.ADDITIONAL_FUNDING_COUNT)         ADDITIONAL_FUNDING_COUNT,
43907         sum(pjp1.CANCELLED_FUNDING_AMOUNT)         CANCELLED_FUNDING_AMOUNT,
43908         sum(pjp1.CANCELLED_FUNDING_COUNT)          CANCELLED_FUNDING_COUNT,
43909         sum(pjp1.FUNDING_ADJUSTMENT_AMOUNT)        FUNDING_ADJUSTMENT_AMOUNT,
43910         sum(pjp1.FUNDING_ADJUSTMENT_COUNT)         FUNDING_ADJUSTMENT_COUNT,
43911         sum(pjp1.REVENUE_WRITEOFF)                 REVENUE_WRITEOFF,
43912         sum(pjp1.AR_INVOICE_AMOUNT)                AR_INVOICE_AMOUNT,
43913         sum(pjp1.AR_INVOICE_COUNT)                 AR_INVOICE_COUNT,
43914         sum(pjp1.AR_CASH_APPLIED_AMOUNT)           AR_CASH_APPLIED_AMOUNT,
43915         sum(pjp1.AR_INVOICE_WRITE_OFF_AMOUNT)      AR_INVOICE_WRITE_OFF_AMOUNT,
43916         sum(pjp1.AR_INVOICE_WRITEOFF_COUNT)        AR_INVOICE_WRITEOFF_COUNT,
43917         sum(pjp1.AR_CREDIT_MEMO_AMOUNT)            AR_CREDIT_MEMO_AMOUNT,
43918         sum(pjp1.AR_CREDIT_MEMO_COUNT)             AR_CREDIT_MEMO_COUNT,
43919         sum(pjp1.UNBILLED_RECEIVABLES)             UNBILLED_RECEIVABLES,
43920         sum(pjp1.UNEARNED_REVENUE)                 UNEARNED_REVENUE,
43921         sum(pjp1.AR_UNAPPR_INVOICE_AMOUNT)         AR_UNAPPR_INVOICE_AMOUNT,
43922         sum(pjp1.AR_UNAPPR_INVOICE_COUNT)          AR_UNAPPR_INVOICE_COUNT,
43923         sum(pjp1.AR_APPR_INVOICE_AMOUNT)           AR_APPR_INVOICE_AMOUNT,
43924         sum(pjp1.AR_APPR_INVOICE_COUNT)            AR_APPR_INVOICE_COUNT,
43925         sum(pjp1.AR_AMOUNT_DUE)                    AR_AMOUNT_DUE,
43926         sum(pjp1.AR_COUNT_DUE)                     AR_COUNT_DUE,
43927         sum(pjp1.AR_AMOUNT_OVERDUE)                AR_AMOUNT_OVERDUE,
43928         sum(pjp1.AR_COUNT_OVERDUE)                 AR_COUNT_OVERDUE,
43929         sum(pjp1.CUSTOM1)                          CUSTOM1,
43930         sum(pjp1.CUSTOM2)                          CUSTOM2,
43931         sum(pjp1.CUSTOM3)                          CUSTOM3,
43932         sum(pjp1.CUSTOM4)                          CUSTOM4,
43933         sum(pjp1.CUSTOM5)                          CUSTOM5,
43934         sum(pjp1.CUSTOM6)                          CUSTOM6,
43935         sum(pjp1.CUSTOM7)                          CUSTOM7,
43936         sum(pjp1.CUSTOM8)                          CUSTOM8,
43937         sum(pjp1.CUSTOM9)                          CUSTOM9,
43938         sum(pjp1.CUSTOM10)                         CUSTOM10,
43939         sum(pjp1.CUSTOM11)                         CUSTOM11,
43940         sum(pjp1.CUSTOM12)                         CUSTOM12,
43941         sum(pjp1.CUSTOM13)                         CUSTOM13,
43942         sum(pjp1.CUSTOM14)                         CUSTOM14,
43943         sum(pjp1.CUSTOM15)                         CUSTOM15
43944       from
43945         PJI_AC_AGGR_PJP1 pjp1
43946       where
43947         pjp1.WORKER_ID = p_worker_id
43948       group by
43949         pjp1.WORKER_ID,
43950         pjp1.PRG_LEVEL,
43951         pjp1.PROJECT_ID,
43952         pjp1.PROJECT_ORG_ID,
43953         pjp1.PROJECT_ORGANIZATION_ID,
43954         pjp1.PROJECT_ELEMENT_ID,
43955         pjp1.TIME_ID,
43956         pjp1.PERIOD_TYPE_ID,
43957         pjp1.CALENDAR_TYPE,
43958         pjp1.WBS_ROLLUP_FLAG,
43959         pjp1.PRG_ROLLUP_FLAG,
43960         pjp1.CURR_RECORD_TYPE_ID,
43961         pjp1.CURRENCY_CODE
43962       having not
43963         (nvl(sum(REVENUE), 0)                     = 0 and
43964          nvl(sum(INITIAL_FUNDING_AMOUNT), 0)      = 0 and
43965          nvl(sum(INITIAL_FUNDING_COUNT), 0)       = 0 and
43966          nvl(sum(ADDITIONAL_FUNDING_AMOUNT), 0)   = 0 and
43967          nvl(sum(ADDITIONAL_FUNDING_COUNT), 0)    = 0 and
43968          nvl(sum(CANCELLED_FUNDING_AMOUNT), 0)    = 0 and
43969          nvl(sum(CANCELLED_FUNDING_COUNT), 0)     = 0 and
43970          nvl(sum(FUNDING_ADJUSTMENT_AMOUNT), 0)   = 0 and
43971          nvl(sum(FUNDING_ADJUSTMENT_COUNT), 0)    = 0 and
43972          nvl(sum(REVENUE_WRITEOFF), 0)            = 0 and
43973          nvl(sum(AR_INVOICE_AMOUNT), 0)           = 0 and
43974          nvl(sum(AR_INVOICE_COUNT), 0)            = 0 and
43975          nvl(sum(AR_CASH_APPLIED_AMOUNT), 0)      = 0 and
43976          nvl(sum(AR_INVOICE_WRITE_OFF_AMOUNT), 0) = 0 and
43977          nvl(sum(AR_INVOICE_WRITEOFF_COUNT), 0)   = 0 and
43978          nvl(sum(AR_CREDIT_MEMO_AMOUNT), 0)       = 0 and
43979          nvl(sum(AR_CREDIT_MEMO_COUNT), 0)        = 0 and
43980          nvl(sum(UNBILLED_RECEIVABLES), 0)        = 0 and
43981          nvl(sum(UNEARNED_REVENUE), 0)            = 0 and
43982          nvl(sum(AR_UNAPPR_INVOICE_AMOUNT), 0)    = 0 and
43983          nvl(sum(AR_UNAPPR_INVOICE_COUNT), 0)     = 0 and
43984          nvl(sum(AR_APPR_INVOICE_AMOUNT), 0)      = 0 and
43985          nvl(sum(AR_APPR_INVOICE_COUNT), 0)       = 0 and
43986          nvl(sum(AR_AMOUNT_DUE), 0)               = 0 and
43987          nvl(sum(AR_COUNT_DUE), 0)                = 0 and
43988          nvl(sum(AR_AMOUNT_OVERDUE), 0)           = 0 and
43989          nvl(sum(AR_COUNT_OVERDUE), 0)            = 0 and
43990          nvl(sum(CUSTOM1), 0)                     = 0 and
43991          nvl(sum(CUSTOM2), 0)                     = 0 and
43992          nvl(sum(CUSTOM3), 0)                     = 0 and
43993          nvl(sum(CUSTOM4), 0)                     = 0 and
43994          nvl(sum(CUSTOM5), 0)                     = 0 and
43995          nvl(sum(CUSTOM6), 0)                     = 0 and
43996          nvl(sum(CUSTOM7), 0)                     = 0 and
43997          nvl(sum(CUSTOM8), 0)                     = 0 and
43998          nvl(sum(CUSTOM9), 0)                     = 0 and
43999          nvl(sum(CUSTOM10), 0)                    = 0 and
44000          nvl(sum(CUSTOM11), 0)                    = 0 and
44001          nvl(sum(CUSTOM12), 0)                    = 0 and
44002          nvl(sum(CUSTOM13), 0)                    = 0 and
44003          nvl(sum(CUSTOM14), 0)                    = 0 and
44004          nvl(sum(CUSTOM15), 0)                    = 0);
44005     elsif (p_worker_id =9) then
44006       -- Query for Partition 9
44007 
44008       insert /*+ parallel(PJI_FP_AGGR_PJP1) */
44009                  into PJI_FP_AGGR_PJP1 partition(P9)
44010 
44011       (
44012         WORKER_ID,
44013         RECORD_TYPE,
44014         PRG_LEVEL,
44015         LINE_TYPE,
44016         PROJECT_ID,
44017         PROJECT_ORG_ID,
44018         PROJECT_ORGANIZATION_ID,
44019         PROJECT_ELEMENT_ID,
44020         TIME_ID,
44021         PERIOD_TYPE_ID,
44022         CALENDAR_TYPE,
44023         RBS_AGGR_LEVEL,
44024         WBS_ROLLUP_FLAG,
44025         PRG_ROLLUP_FLAG,
44026         CURR_RECORD_TYPE_ID,
44027         CURRENCY_CODE,
44028         RBS_ELEMENT_ID,
44029         RBS_VERSION_ID,
44030         PLAN_VERSION_ID,
44031         PLAN_TYPE_ID,
44032         PLAN_TYPE_CODE,
44033         RAW_COST,
44034         BRDN_COST,
44035         REVENUE,
44036         BILL_RAW_COST,
44037         BILL_BRDN_COST,
44038         BILL_LABOR_RAW_COST,
44039         BILL_LABOR_BRDN_COST,
44040         BILL_LABOR_HRS,
44041         EQUIPMENT_RAW_COST,
44042         EQUIPMENT_BRDN_COST,
44043         CAPITALIZABLE_RAW_COST,
44044         CAPITALIZABLE_BRDN_COST,
44045         LABOR_RAW_COST,
44046         LABOR_BRDN_COST,
44047         LABOR_HRS,
44048         LABOR_REVENUE,
44049         EQUIPMENT_HOURS,
44050         BILLABLE_EQUIPMENT_HOURS,
44051         SUP_INV_COMMITTED_COST,
44052         PO_COMMITTED_COST,
44053         PR_COMMITTED_COST,
44054         OTH_COMMITTED_COST,
44055         ACT_LABOR_HRS,
44056         ACT_EQUIP_HRS,
44057         ACT_LABOR_BRDN_COST,
44058         ACT_EQUIP_BRDN_COST,
44059         ACT_BRDN_COST,
44060         ACT_RAW_COST,
44061         ACT_REVENUE,
44062         ACT_LABOR_RAW_COST,
44063         ACT_EQUIP_RAW_COST,
44064         ETC_LABOR_HRS,
44065         ETC_EQUIP_HRS,
44066         ETC_LABOR_BRDN_COST,
44067         ETC_EQUIP_BRDN_COST,
44068         ETC_BRDN_COST,
44069         ETC_RAW_COST,
44070         ETC_LABOR_RAW_COST,
44071         ETC_EQUIP_RAW_COST,
44072         CUSTOM1,
44073         CUSTOM2,
44074         CUSTOM3,
44075         CUSTOM4,
44076         CUSTOM5,
44077         CUSTOM6,
44078         CUSTOM7,
44079         CUSTOM8,
44080         CUSTOM9,
44081         CUSTOM10,
44082         CUSTOM11,
44083         CUSTOM12,
44084         CUSTOM13,
44085         CUSTOM14,
44086         CUSTOM15
44087       )
44088       select
44089         pjp1.WORKER_ID,
44090         'A'                                 RECORD_TYPE,
44091         0 ,             /*  pjp1.PRG_LEVEL,   6266824 sridhar commented as this is required and also impact of Merge changes */
44092         'AGGR_PLAN'                         LINE_TYPE,
44093         pjp1.PROJECT_ID,
44094         pjp1.PROJECT_ORG_ID,
44095         pjp1.PROJECT_ORGANIZATION_ID,
44096         pjp1.PROJECT_ELEMENT_ID,
44097         pjp1.TIME_ID,
44098         pjp1.PERIOD_TYPE_ID,
44099         pjp1.CALENDAR_TYPE,
44100         pjp1.RBS_AGGR_LEVEL,
44101         pjp1.WBS_ROLLUP_FLAG,
44102         pjp1.PRG_ROLLUP_FLAG,
44103         pjp1.CURR_RECORD_TYPE_ID,
44104         pjp1.CURRENCY_CODE,
44105         pjp1.RBS_ELEMENT_ID,
44106         pjp1.RBS_VERSION_ID,
44107         pjp1.PLAN_VERSION_ID,
44108         pjp1.PLAN_TYPE_ID,
44109         pjp1.PLAN_TYPE_CODE,
44110         sum(pjp1.RAW_COST)                  RAW_COST,
44111         sum(pjp1.BRDN_COST)                 BRDN_COST,
44112         sum(pjp1.REVENUE)                   REVENUE,
44113         sum(pjp1.BILL_RAW_COST)             BILL_RAW_COST,
44114         sum(pjp1.BILL_BRDN_COST)            BILL_BRDN_COST,
44115         sum(pjp1.BILL_LABOR_RAW_COST)       BILL_LABOR_RAW_COST,
44116         sum(pjp1.BILL_LABOR_BRDN_COST)      BILL_LABOR_BRDN_COST,
44117         sum(pjp1.BILL_LABOR_HRS)            BILL_LABOR_HRS,
44118         sum(pjp1.EQUIPMENT_RAW_COST)        EQUIPMENT_RAW_COST,
44119         sum(pjp1.EQUIPMENT_BRDN_COST)       EQUIPMENT_BRDN_COST,
44120         sum(pjp1.CAPITALIZABLE_RAW_COST)    CAPITALIZABLE_RAW_COST,
44121         sum(pjp1.CAPITALIZABLE_BRDN_COST)   CAPITALIZABLE_BRDN_COST,
44122         sum(pjp1.LABOR_RAW_COST)            LABOR_RAW_COST,
44123         sum(pjp1.LABOR_BRDN_COST)           LABOR_BRDN_COST,
44124         sum(pjp1.LABOR_HRS)                 LABOR_HRS,
44125         sum(pjp1.LABOR_REVENUE)             LABOR_REVENUE,
44126         sum(pjp1.EQUIPMENT_HOURS)           EQUIPMENT_HOURS,
44127         sum(pjp1.BILLABLE_EQUIPMENT_HOURS)  BILLABLE_EQUIPMENT_HOURS,
44128         sum(pjp1.SUP_INV_COMMITTED_COST)    SUP_INV_COMMITTED_COST,
44129         sum(pjp1.PO_COMMITTED_COST)         PO_COMMITTED_COST,
44130         sum(pjp1.PR_COMMITTED_COST)         PR_COMMITTED_COST,
44131         sum(pjp1.OTH_COMMITTED_COST)        OTH_COMMITTED_COST,
44132         sum(pjp1.ACT_LABOR_HRS)             ACT_LABOR_HRS,
44133         sum(pjp1.ACT_EQUIP_HRS)             ACT_EQUIP_HRS,
44134         sum(pjp1.ACT_LABOR_BRDN_COST)       ACT_LABOR_BRDN_COST,
44135         sum(pjp1.ACT_EQUIP_BRDN_COST)       ACT_EQUIP_BRDN_COST,
44136         sum(pjp1.ACT_BRDN_COST)             ACT_BRDN_COST,
44137         sum(pjp1.ACT_RAW_COST)              ACT_RAW_COST,
44138         sum(pjp1.ACT_REVENUE)               ACT_REVENUE,
44139         sum(pjp1.ACT_LABOR_RAW_COST)        ACT_LABOR_RAW_COST,
44140         sum(pjp1.ACT_EQUIP_RAW_COST)        ACT_EQUIP_RAW_COST,
44141         sum(pjp1.ETC_LABOR_HRS)             ETC_LABOR_HRS,
44142         sum(pjp1.ETC_EQUIP_HRS)             ETC_EQUIP_HRS,
44143         sum(pjp1.ETC_LABOR_BRDN_COST)       ETC_LABOR_BRDN_COST,
44144         sum(pjp1.ETC_EQUIP_BRDN_COST)       ETC_EQUIP_BRDN_COST,
44145         sum(pjp1.ETC_BRDN_COST)             ETC_BRDN_COST,
44146         sum(pjp1.ETC_RAW_COST)              ETC_RAW_COST,
44147         sum(pjp1.ETC_LABOR_RAW_COST)        ETC_LABOR_RAW_COST,
44148         sum(pjp1.ETC_EQUIP_RAW_COST)        ETC_EQUIP_RAW_COST,
44149         sum(pjp1.CUSTOM1)                   CUSTOM1,
44150         sum(pjp1.CUSTOM2)                   CUSTOM2,
44151         sum(pjp1.CUSTOM3)                   CUSTOM3,
44152         sum(pjp1.CUSTOM4)                   CUSTOM4,
44153         sum(pjp1.CUSTOM5)                   CUSTOM5,
44154         sum(pjp1.CUSTOM6)                   CUSTOM6,
44155         sum(pjp1.CUSTOM7)                   CUSTOM7,
44156         sum(pjp1.CUSTOM8)                   CUSTOM8,
44157         sum(pjp1.CUSTOM9)                   CUSTOM9,
44158         sum(pjp1.CUSTOM10)                  CUSTOM10,
44159         sum(pjp1.CUSTOM11)                  CUSTOM11,
44160         sum(pjp1.CUSTOM12)                  CUSTOM12,
44161         sum(pjp1.CUSTOM13)                  CUSTOM13,
44162         sum(pjp1.CUSTOM14)                  CUSTOM14,
44163         sum(pjp1.CUSTOM15)                  CUSTOM15
44164       from
44165         PJI_FP_AGGR_PJP1 pjp1
44166       where
44167         pjp1.WORKER_ID = p_worker_id
44168       group by
44169         pjp1.WORKER_ID,
44170  /*     pjp1.PRG_LEVEL,     -- 6266824 sridhar not required and also impact of merge change */
44171         pjp1.PROJECT_ID,
44172         pjp1.PROJECT_ORG_ID,
44173         pjp1.PROJECT_ORGANIZATION_ID,
44174         pjp1.PROJECT_ELEMENT_ID,
44175         pjp1.TIME_ID,
44176         pjp1.PERIOD_TYPE_ID,
44177         pjp1.CALENDAR_TYPE,
44178         pjp1.RBS_AGGR_LEVEL,
44179         pjp1.WBS_ROLLUP_FLAG,
44180         pjp1.PRG_ROLLUP_FLAG,
44181         pjp1.CURR_RECORD_TYPE_ID,
44182         pjp1.CURRENCY_CODE,
44183         pjp1.RBS_ELEMENT_ID,
44184         pjp1.RBS_VERSION_ID,
44185         pjp1.PLAN_VERSION_ID,
44186         pjp1.PLAN_TYPE_ID,
44187         pjp1.PLAN_TYPE_CODE
44188       having not
44189         (nvl(sum(pjp1.RAW_COST), 0)                 = 0 and
44190          nvl(sum(pjp1.BRDN_COST), 0)                = 0 and
44191          nvl(sum(pjp1.REVENUE), 0)                  = 0 and
44192          nvl(sum(pjp1.BILL_RAW_COST), 0)            = 0 and
44193          nvl(sum(pjp1.BILL_BRDN_COST), 0)           = 0 and
44194          nvl(sum(pjp1.BILL_LABOR_RAW_COST), 0)      = 0 and
44195          nvl(sum(pjp1.BILL_LABOR_BRDN_COST), 0)     = 0 and
44196          nvl(sum(pjp1.BILL_LABOR_HRS), 0)           = 0 and
44197          nvl(sum(pjp1.EQUIPMENT_RAW_COST), 0)       = 0 and
44198          nvl(sum(pjp1.EQUIPMENT_BRDN_COST), 0)      = 0 and
44199          nvl(sum(pjp1.CAPITALIZABLE_RAW_COST), 0)   = 0 and
44200          nvl(sum(pjp1.CAPITALIZABLE_BRDN_COST), 0)  = 0 and
44201          nvl(sum(pjp1.LABOR_RAW_COST), 0)           = 0 and
44202          nvl(sum(pjp1.LABOR_BRDN_COST), 0)          = 0 and
44203          nvl(sum(pjp1.LABOR_HRS), 0)                = 0 and
44204          nvl(sum(pjp1.LABOR_REVENUE), 0)            = 0 and
44205          nvl(sum(pjp1.EQUIPMENT_HOURS), 0)          = 0 and
44206          nvl(sum(pjp1.BILLABLE_EQUIPMENT_HOURS), 0) = 0 and
44207          nvl(sum(pjp1.SUP_INV_COMMITTED_COST), 0)   = 0 and
44208          nvl(sum(pjp1.PO_COMMITTED_COST), 0)        = 0 and
44209          nvl(sum(pjp1.PR_COMMITTED_COST), 0)        = 0 and
44210          nvl(sum(pjp1.OTH_COMMITTED_COST), 0)       = 0 and
44211          nvl(sum(pjp1.ACT_LABOR_HRS), 0)            = 0 and
44212          nvl(sum(pjp1.ACT_EQUIP_HRS), 0)            = 0 and
44213          nvl(sum(pjp1.ACT_LABOR_BRDN_COST), 0)      = 0 and
44214          nvl(sum(pjp1.ACT_EQUIP_BRDN_COST), 0)      = 0 and
44215          nvl(sum(pjp1.ACT_BRDN_COST), 0)            = 0 and
44216          nvl(sum(pjp1.ACT_RAW_COST), 0)             = 0 and
44217          nvl(sum(pjp1.ACT_REVENUE), 0)              = 0 and
44218          nvl(sum(pjp1.ACT_LABOR_RAW_COST), 0)       = 0 and
44219          nvl(sum(pjp1.ACT_EQUIP_RAW_COST), 0)       = 0 and
44220          nvl(sum(pjp1.ETC_LABOR_HRS), 0)            = 0 and
44221          nvl(sum(pjp1.ETC_EQUIP_HRS), 0)            = 0 and
44222          nvl(sum(pjp1.ETC_LABOR_BRDN_COST), 0)      = 0 and
44223          nvl(sum(pjp1.ETC_EQUIP_BRDN_COST), 0)      = 0 and
44224          nvl(sum(pjp1.ETC_BRDN_COST), 0)            = 0 and
44225          nvl(sum(pjp1.ETC_RAW_COST), 0)             = 0 and
44226          nvl(sum(pjp1.ETC_LABOR_RAW_COST), 0)       = 0 and
44227          nvl(sum(pjp1.ETC_EQUIP_RAW_COST), 0)       = 0 and
44228          nvl(sum(pjp1.CUSTOM1), 0)                  = 0 and
44229          nvl(sum(pjp1.CUSTOM2), 0)                  = 0 and
44230          nvl(sum(pjp1.CUSTOM3), 0)                  = 0 and
44231          nvl(sum(pjp1.CUSTOM4), 0)                  = 0 and
44232          nvl(sum(pjp1.CUSTOM5), 0)                  = 0 and
44233          nvl(sum(pjp1.CUSTOM6), 0)                  = 0 and
44234          nvl(sum(pjp1.CUSTOM7), 0)                  = 0 and
44235          nvl(sum(pjp1.CUSTOM8), 0)                  = 0 and
44236          nvl(sum(pjp1.CUSTOM9), 0)                  = 0 and
44237          nvl(sum(pjp1.CUSTOM10), 0)                 = 0 and
44238          nvl(sum(pjp1.CUSTOM11), 0)                 = 0 and
44239          nvl(sum(pjp1.CUSTOM12), 0)                 = 0 and
44240          nvl(sum(pjp1.CUSTOM13), 0)                 = 0 and
44241          nvl(sum(pjp1.CUSTOM14), 0)                 = 0 and
44242          nvl(sum(pjp1.CUSTOM15), 0)                 = 0);
44243 
44244       insert /*+ parallel(PJI_AC_AGGR_PJP1) */
44245                  into PJI_AC_AGGR_PJP1 partition(P9)
44246       (
44247         WORKER_ID,
44248         RECORD_TYPE,
44249         PRG_LEVEL,
44250         PROJECT_ID,
44251         PROJECT_ORG_ID,
44252         PROJECT_ORGANIZATION_ID,
44253         PROJECT_ELEMENT_ID,
44254         TIME_ID,
44255         PERIOD_TYPE_ID,
44256         CALENDAR_TYPE,
44257         WBS_ROLLUP_FLAG,
44258         PRG_ROLLUP_FLAG,
44259         CURR_RECORD_TYPE_ID,
44260         CURRENCY_CODE,
44261         REVENUE,
44262         INITIAL_FUNDING_AMOUNT,
44263         INITIAL_FUNDING_COUNT,
44264         ADDITIONAL_FUNDING_AMOUNT,
44265         ADDITIONAL_FUNDING_COUNT,
44266         CANCELLED_FUNDING_AMOUNT,
44267         CANCELLED_FUNDING_COUNT,
44268         FUNDING_ADJUSTMENT_AMOUNT,
44269         FUNDING_ADJUSTMENT_COUNT,
44270         REVENUE_WRITEOFF,
44271         AR_INVOICE_AMOUNT,
44272         AR_INVOICE_COUNT,
44273         AR_CASH_APPLIED_AMOUNT,
44274         AR_INVOICE_WRITE_OFF_AMOUNT,
44275         AR_INVOICE_WRITEOFF_COUNT,
44276         AR_CREDIT_MEMO_AMOUNT,
44277         AR_CREDIT_MEMO_COUNT,
44278         UNBILLED_RECEIVABLES,
44279         UNEARNED_REVENUE,
44280         AR_UNAPPR_INVOICE_AMOUNT,
44281         AR_UNAPPR_INVOICE_COUNT,
44282         AR_APPR_INVOICE_AMOUNT,
44283         AR_APPR_INVOICE_COUNT,
44284         AR_AMOUNT_DUE,
44285         AR_COUNT_DUE,
44286         AR_AMOUNT_OVERDUE,
44287         AR_COUNT_OVERDUE,
44288         CUSTOM1,
44289         CUSTOM2,
44290         CUSTOM3,
44291         CUSTOM4,
44292         CUSTOM5,
44293         CUSTOM6,
44294         CUSTOM7,
44295         CUSTOM8,
44296         CUSTOM9,
44297         CUSTOM10,
44298         CUSTOM11,
44299         CUSTOM12,
44300         CUSTOM13,
44301         CUSTOM14,
44302         CUSTOM15
44303       )
44304       select
44305         pjp1.WORKER_ID,
44306         'A'                                        RECORD_TYPE,
44307         pjp1.PRG_LEVEL,
44308         pjp1.PROJECT_ID,
44309         pjp1.PROJECT_ORG_ID,
44310         pjp1.PROJECT_ORGANIZATION_ID,
44311         pjp1.PROJECT_ELEMENT_ID,
44312         pjp1.TIME_ID,
44313         pjp1.PERIOD_TYPE_ID,
44314         pjp1.CALENDAR_TYPE,
44315         pjp1.WBS_ROLLUP_FLAG,
44316         pjp1.PRG_ROLLUP_FLAG,
44317         pjp1.CURR_RECORD_TYPE_ID,
44318         pjp1.CURRENCY_CODE,
44319         sum(pjp1.REVENUE)                          REVENUE,
44320         sum(pjp1.INITIAL_FUNDING_AMOUNT)           INITIAL_FUNDING_AMOUNT,
44321         sum(pjp1.INITIAL_FUNDING_COUNT)            INITIAL_FUNDING_COUNT,
44322         sum(pjp1.ADDITIONAL_FUNDING_AMOUNT)        ADDITIONAL_FUNDING_AMOUNT,
44323         sum(pjp1.ADDITIONAL_FUNDING_COUNT)         ADDITIONAL_FUNDING_COUNT,
44324         sum(pjp1.CANCELLED_FUNDING_AMOUNT)         CANCELLED_FUNDING_AMOUNT,
44325         sum(pjp1.CANCELLED_FUNDING_COUNT)          CANCELLED_FUNDING_COUNT,
44326         sum(pjp1.FUNDING_ADJUSTMENT_AMOUNT)        FUNDING_ADJUSTMENT_AMOUNT,
44327         sum(pjp1.FUNDING_ADJUSTMENT_COUNT)         FUNDING_ADJUSTMENT_COUNT,
44328         sum(pjp1.REVENUE_WRITEOFF)                 REVENUE_WRITEOFF,
44329         sum(pjp1.AR_INVOICE_AMOUNT)                AR_INVOICE_AMOUNT,
44330         sum(pjp1.AR_INVOICE_COUNT)                 AR_INVOICE_COUNT,
44331         sum(pjp1.AR_CASH_APPLIED_AMOUNT)           AR_CASH_APPLIED_AMOUNT,
44332         sum(pjp1.AR_INVOICE_WRITE_OFF_AMOUNT)      AR_INVOICE_WRITE_OFF_AMOUNT,
44333         sum(pjp1.AR_INVOICE_WRITEOFF_COUNT)        AR_INVOICE_WRITEOFF_COUNT,
44334         sum(pjp1.AR_CREDIT_MEMO_AMOUNT)            AR_CREDIT_MEMO_AMOUNT,
44335         sum(pjp1.AR_CREDIT_MEMO_COUNT)             AR_CREDIT_MEMO_COUNT,
44336         sum(pjp1.UNBILLED_RECEIVABLES)             UNBILLED_RECEIVABLES,
44337         sum(pjp1.UNEARNED_REVENUE)                 UNEARNED_REVENUE,
44338         sum(pjp1.AR_UNAPPR_INVOICE_AMOUNT)         AR_UNAPPR_INVOICE_AMOUNT,
44339         sum(pjp1.AR_UNAPPR_INVOICE_COUNT)          AR_UNAPPR_INVOICE_COUNT,
44340         sum(pjp1.AR_APPR_INVOICE_AMOUNT)           AR_APPR_INVOICE_AMOUNT,
44341         sum(pjp1.AR_APPR_INVOICE_COUNT)            AR_APPR_INVOICE_COUNT,
44342         sum(pjp1.AR_AMOUNT_DUE)                    AR_AMOUNT_DUE,
44343         sum(pjp1.AR_COUNT_DUE)                     AR_COUNT_DUE,
44344         sum(pjp1.AR_AMOUNT_OVERDUE)                AR_AMOUNT_OVERDUE,
44345         sum(pjp1.AR_COUNT_OVERDUE)                 AR_COUNT_OVERDUE,
44346         sum(pjp1.CUSTOM1)                          CUSTOM1,
44347         sum(pjp1.CUSTOM2)                          CUSTOM2,
44348         sum(pjp1.CUSTOM3)                          CUSTOM3,
44349         sum(pjp1.CUSTOM4)                          CUSTOM4,
44350         sum(pjp1.CUSTOM5)                          CUSTOM5,
44351         sum(pjp1.CUSTOM6)                          CUSTOM6,
44352         sum(pjp1.CUSTOM7)                          CUSTOM7,
44353         sum(pjp1.CUSTOM8)                          CUSTOM8,
44354         sum(pjp1.CUSTOM9)                          CUSTOM9,
44355         sum(pjp1.CUSTOM10)                         CUSTOM10,
44356         sum(pjp1.CUSTOM11)                         CUSTOM11,
44357         sum(pjp1.CUSTOM12)                         CUSTOM12,
44358         sum(pjp1.CUSTOM13)                         CUSTOM13,
44359         sum(pjp1.CUSTOM14)                         CUSTOM14,
44360         sum(pjp1.CUSTOM15)                         CUSTOM15
44361       from
44362         PJI_AC_AGGR_PJP1 pjp1
44363       where
44364         pjp1.WORKER_ID = p_worker_id
44365       group by
44366         pjp1.WORKER_ID,
44367         pjp1.PRG_LEVEL,
44368         pjp1.PROJECT_ID,
44369         pjp1.PROJECT_ORG_ID,
44370         pjp1.PROJECT_ORGANIZATION_ID,
44371         pjp1.PROJECT_ELEMENT_ID,
44372         pjp1.TIME_ID,
44373         pjp1.PERIOD_TYPE_ID,
44374         pjp1.CALENDAR_TYPE,
44375         pjp1.WBS_ROLLUP_FLAG,
44376         pjp1.PRG_ROLLUP_FLAG,
44377         pjp1.CURR_RECORD_TYPE_ID,
44378         pjp1.CURRENCY_CODE
44379       having not
44380         (nvl(sum(REVENUE), 0)                     = 0 and
44381          nvl(sum(INITIAL_FUNDING_AMOUNT), 0)      = 0 and
44382          nvl(sum(INITIAL_FUNDING_COUNT), 0)       = 0 and
44383          nvl(sum(ADDITIONAL_FUNDING_AMOUNT), 0)   = 0 and
44384          nvl(sum(ADDITIONAL_FUNDING_COUNT), 0)    = 0 and
44385          nvl(sum(CANCELLED_FUNDING_AMOUNT), 0)    = 0 and
44386          nvl(sum(CANCELLED_FUNDING_COUNT), 0)     = 0 and
44387          nvl(sum(FUNDING_ADJUSTMENT_AMOUNT), 0)   = 0 and
44388          nvl(sum(FUNDING_ADJUSTMENT_COUNT), 0)    = 0 and
44389          nvl(sum(REVENUE_WRITEOFF), 0)            = 0 and
44390          nvl(sum(AR_INVOICE_AMOUNT), 0)           = 0 and
44391          nvl(sum(AR_INVOICE_COUNT), 0)            = 0 and
44392          nvl(sum(AR_CASH_APPLIED_AMOUNT), 0)      = 0 and
44393          nvl(sum(AR_INVOICE_WRITE_OFF_AMOUNT), 0) = 0 and
44394          nvl(sum(AR_INVOICE_WRITEOFF_COUNT), 0)   = 0 and
44395          nvl(sum(AR_CREDIT_MEMO_AMOUNT), 0)       = 0 and
44396          nvl(sum(AR_CREDIT_MEMO_COUNT), 0)        = 0 and
44397          nvl(sum(UNBILLED_RECEIVABLES), 0)        = 0 and
44398          nvl(sum(UNEARNED_REVENUE), 0)            = 0 and
44399          nvl(sum(AR_UNAPPR_INVOICE_AMOUNT), 0)    = 0 and
44400          nvl(sum(AR_UNAPPR_INVOICE_COUNT), 0)     = 0 and
44401          nvl(sum(AR_APPR_INVOICE_AMOUNT), 0)      = 0 and
44402          nvl(sum(AR_APPR_INVOICE_COUNT), 0)       = 0 and
44403          nvl(sum(AR_AMOUNT_DUE), 0)               = 0 and
44404          nvl(sum(AR_COUNT_DUE), 0)                = 0 and
44405          nvl(sum(AR_AMOUNT_OVERDUE), 0)           = 0 and
44406          nvl(sum(AR_COUNT_OVERDUE), 0)            = 0 and
44407          nvl(sum(CUSTOM1), 0)                     = 0 and
44408          nvl(sum(CUSTOM2), 0)                     = 0 and
44409          nvl(sum(CUSTOM3), 0)                     = 0 and
44410          nvl(sum(CUSTOM4), 0)                     = 0 and
44411          nvl(sum(CUSTOM5), 0)                     = 0 and
44412          nvl(sum(CUSTOM6), 0)                     = 0 and
44413          nvl(sum(CUSTOM7), 0)                     = 0 and
44414          nvl(sum(CUSTOM8), 0)                     = 0 and
44415          nvl(sum(CUSTOM9), 0)                     = 0 and
44416          nvl(sum(CUSTOM10), 0)                    = 0 and
44417          nvl(sum(CUSTOM11), 0)                    = 0 and
44418          nvl(sum(CUSTOM12), 0)                    = 0 and
44419          nvl(sum(CUSTOM13), 0)                    = 0 and
44420          nvl(sum(CUSTOM14), 0)                    = 0 and
44421          nvl(sum(CUSTOM15), 0)                    = 0);
44422     elsif (p_worker_id =10) then
44423       -- Query for Partition 10
44424 
44425       insert /*+ parallel(PJI_FP_AGGR_PJP1) */
44426                  into PJI_FP_AGGR_PJP1 partition(P10)
44427 
44428       (
44429         WORKER_ID,
44430         RECORD_TYPE,
44431         PRG_LEVEL,
44432         LINE_TYPE,
44433         PROJECT_ID,
44434         PROJECT_ORG_ID,
44435         PROJECT_ORGANIZATION_ID,
44436         PROJECT_ELEMENT_ID,
44437         TIME_ID,
44438         PERIOD_TYPE_ID,
44439         CALENDAR_TYPE,
44440         RBS_AGGR_LEVEL,
44441         WBS_ROLLUP_FLAG,
44442         PRG_ROLLUP_FLAG,
44443         CURR_RECORD_TYPE_ID,
44444         CURRENCY_CODE,
44445         RBS_ELEMENT_ID,
44446         RBS_VERSION_ID,
44447         PLAN_VERSION_ID,
44448         PLAN_TYPE_ID,
44449         PLAN_TYPE_CODE,
44450         RAW_COST,
44451         BRDN_COST,
44452         REVENUE,
44453         BILL_RAW_COST,
44454         BILL_BRDN_COST,
44455         BILL_LABOR_RAW_COST,
44456         BILL_LABOR_BRDN_COST,
44457         BILL_LABOR_HRS,
44458         EQUIPMENT_RAW_COST,
44459         EQUIPMENT_BRDN_COST,
44460         CAPITALIZABLE_RAW_COST,
44461         CAPITALIZABLE_BRDN_COST,
44462         LABOR_RAW_COST,
44463         LABOR_BRDN_COST,
44464         LABOR_HRS,
44465         LABOR_REVENUE,
44466         EQUIPMENT_HOURS,
44467         BILLABLE_EQUIPMENT_HOURS,
44468         SUP_INV_COMMITTED_COST,
44469         PO_COMMITTED_COST,
44470         PR_COMMITTED_COST,
44471         OTH_COMMITTED_COST,
44472         ACT_LABOR_HRS,
44473         ACT_EQUIP_HRS,
44474         ACT_LABOR_BRDN_COST,
44475         ACT_EQUIP_BRDN_COST,
44476         ACT_BRDN_COST,
44477         ACT_RAW_COST,
44478         ACT_REVENUE,
44479         ACT_LABOR_RAW_COST,
44480         ACT_EQUIP_RAW_COST,
44481         ETC_LABOR_HRS,
44482         ETC_EQUIP_HRS,
44483         ETC_LABOR_BRDN_COST,
44484         ETC_EQUIP_BRDN_COST,
44485         ETC_BRDN_COST,
44486         ETC_RAW_COST,
44487         ETC_LABOR_RAW_COST,
44488         ETC_EQUIP_RAW_COST,
44489         CUSTOM1,
44490         CUSTOM2,
44491         CUSTOM3,
44492         CUSTOM4,
44493         CUSTOM5,
44494         CUSTOM6,
44495         CUSTOM7,
44496         CUSTOM8,
44497         CUSTOM9,
44498         CUSTOM10,
44499         CUSTOM11,
44500         CUSTOM12,
44501         CUSTOM13,
44502         CUSTOM14,
44503         CUSTOM15
44504       )
44505       select
44506         pjp1.WORKER_ID,
44507         'A'                                 RECORD_TYPE,
44508         0 ,             /*  pjp1.PRG_LEVEL,   6266824 sridhar commented as this is required and also impact of Merge changes */
44509         'AGGR_PLAN'                         LINE_TYPE,
44510         pjp1.PROJECT_ID,
44511         pjp1.PROJECT_ORG_ID,
44512         pjp1.PROJECT_ORGANIZATION_ID,
44513         pjp1.PROJECT_ELEMENT_ID,
44514         pjp1.TIME_ID,
44515         pjp1.PERIOD_TYPE_ID,
44516         pjp1.CALENDAR_TYPE,
44517         pjp1.RBS_AGGR_LEVEL,
44518         pjp1.WBS_ROLLUP_FLAG,
44519         pjp1.PRG_ROLLUP_FLAG,
44520         pjp1.CURR_RECORD_TYPE_ID,
44521         pjp1.CURRENCY_CODE,
44522         pjp1.RBS_ELEMENT_ID,
44523         pjp1.RBS_VERSION_ID,
44524         pjp1.PLAN_VERSION_ID,
44525         pjp1.PLAN_TYPE_ID,
44526         pjp1.PLAN_TYPE_CODE,
44527         sum(pjp1.RAW_COST)                  RAW_COST,
44528         sum(pjp1.BRDN_COST)                 BRDN_COST,
44529         sum(pjp1.REVENUE)                   REVENUE,
44530         sum(pjp1.BILL_RAW_COST)             BILL_RAW_COST,
44531         sum(pjp1.BILL_BRDN_COST)            BILL_BRDN_COST,
44532         sum(pjp1.BILL_LABOR_RAW_COST)       BILL_LABOR_RAW_COST,
44533         sum(pjp1.BILL_LABOR_BRDN_COST)      BILL_LABOR_BRDN_COST,
44534         sum(pjp1.BILL_LABOR_HRS)            BILL_LABOR_HRS,
44535         sum(pjp1.EQUIPMENT_RAW_COST)        EQUIPMENT_RAW_COST,
44536         sum(pjp1.EQUIPMENT_BRDN_COST)       EQUIPMENT_BRDN_COST,
44537         sum(pjp1.CAPITALIZABLE_RAW_COST)    CAPITALIZABLE_RAW_COST,
44538         sum(pjp1.CAPITALIZABLE_BRDN_COST)   CAPITALIZABLE_BRDN_COST,
44539         sum(pjp1.LABOR_RAW_COST)            LABOR_RAW_COST,
44540         sum(pjp1.LABOR_BRDN_COST)           LABOR_BRDN_COST,
44541         sum(pjp1.LABOR_HRS)                 LABOR_HRS,
44542         sum(pjp1.LABOR_REVENUE)             LABOR_REVENUE,
44543         sum(pjp1.EQUIPMENT_HOURS)           EQUIPMENT_HOURS,
44544         sum(pjp1.BILLABLE_EQUIPMENT_HOURS)  BILLABLE_EQUIPMENT_HOURS,
44545         sum(pjp1.SUP_INV_COMMITTED_COST)    SUP_INV_COMMITTED_COST,
44546         sum(pjp1.PO_COMMITTED_COST)         PO_COMMITTED_COST,
44547         sum(pjp1.PR_COMMITTED_COST)         PR_COMMITTED_COST,
44548         sum(pjp1.OTH_COMMITTED_COST)        OTH_COMMITTED_COST,
44549         sum(pjp1.ACT_LABOR_HRS)             ACT_LABOR_HRS,
44550         sum(pjp1.ACT_EQUIP_HRS)             ACT_EQUIP_HRS,
44551         sum(pjp1.ACT_LABOR_BRDN_COST)       ACT_LABOR_BRDN_COST,
44552         sum(pjp1.ACT_EQUIP_BRDN_COST)       ACT_EQUIP_BRDN_COST,
44553         sum(pjp1.ACT_BRDN_COST)             ACT_BRDN_COST,
44554         sum(pjp1.ACT_RAW_COST)              ACT_RAW_COST,
44555         sum(pjp1.ACT_REVENUE)               ACT_REVENUE,
44556         sum(pjp1.ACT_LABOR_RAW_COST)        ACT_LABOR_RAW_COST,
44557         sum(pjp1.ACT_EQUIP_RAW_COST)        ACT_EQUIP_RAW_COST,
44558         sum(pjp1.ETC_LABOR_HRS)             ETC_LABOR_HRS,
44559         sum(pjp1.ETC_EQUIP_HRS)             ETC_EQUIP_HRS,
44560         sum(pjp1.ETC_LABOR_BRDN_COST)       ETC_LABOR_BRDN_COST,
44561         sum(pjp1.ETC_EQUIP_BRDN_COST)       ETC_EQUIP_BRDN_COST,
44562         sum(pjp1.ETC_BRDN_COST)             ETC_BRDN_COST,
44563         sum(pjp1.ETC_RAW_COST)              ETC_RAW_COST,
44564         sum(pjp1.ETC_LABOR_RAW_COST)        ETC_LABOR_RAW_COST,
44565         sum(pjp1.ETC_EQUIP_RAW_COST)        ETC_EQUIP_RAW_COST,
44566         sum(pjp1.CUSTOM1)                   CUSTOM1,
44567         sum(pjp1.CUSTOM2)                   CUSTOM2,
44568         sum(pjp1.CUSTOM3)                   CUSTOM3,
44569         sum(pjp1.CUSTOM4)                   CUSTOM4,
44570         sum(pjp1.CUSTOM5)                   CUSTOM5,
44571         sum(pjp1.CUSTOM6)                   CUSTOM6,
44572         sum(pjp1.CUSTOM7)                   CUSTOM7,
44573         sum(pjp1.CUSTOM8)                   CUSTOM8,
44574         sum(pjp1.CUSTOM9)                   CUSTOM9,
44575         sum(pjp1.CUSTOM10)                  CUSTOM10,
44576         sum(pjp1.CUSTOM11)                  CUSTOM11,
44577         sum(pjp1.CUSTOM12)                  CUSTOM12,
44578         sum(pjp1.CUSTOM13)                  CUSTOM13,
44579         sum(pjp1.CUSTOM14)                  CUSTOM14,
44580         sum(pjp1.CUSTOM15)                  CUSTOM15
44581       from
44582         PJI_FP_AGGR_PJP1 pjp1
44583       where
44584         pjp1.WORKER_ID = p_worker_id
44585       group by
44586         pjp1.WORKER_ID,
44587  /*     pjp1.PRG_LEVEL,     -- 6266824 sridhar not required and also impact of merge change */
44588         pjp1.PROJECT_ID,
44589         pjp1.PROJECT_ORG_ID,
44590         pjp1.PROJECT_ORGANIZATION_ID,
44591         pjp1.PROJECT_ELEMENT_ID,
44592         pjp1.TIME_ID,
44593         pjp1.PERIOD_TYPE_ID,
44594         pjp1.CALENDAR_TYPE,
44595         pjp1.RBS_AGGR_LEVEL,
44596         pjp1.WBS_ROLLUP_FLAG,
44597         pjp1.PRG_ROLLUP_FLAG,
44598         pjp1.CURR_RECORD_TYPE_ID,
44599         pjp1.CURRENCY_CODE,
44600         pjp1.RBS_ELEMENT_ID,
44601         pjp1.RBS_VERSION_ID,
44602         pjp1.PLAN_VERSION_ID,
44603         pjp1.PLAN_TYPE_ID,
44604         pjp1.PLAN_TYPE_CODE
44605       having not
44606         (nvl(sum(pjp1.RAW_COST), 0)                 = 0 and
44607          nvl(sum(pjp1.BRDN_COST), 0)                = 0 and
44608          nvl(sum(pjp1.REVENUE), 0)                  = 0 and
44609          nvl(sum(pjp1.BILL_RAW_COST), 0)            = 0 and
44610          nvl(sum(pjp1.BILL_BRDN_COST), 0)           = 0 and
44611          nvl(sum(pjp1.BILL_LABOR_RAW_COST), 0)      = 0 and
44612          nvl(sum(pjp1.BILL_LABOR_BRDN_COST), 0)     = 0 and
44613          nvl(sum(pjp1.BILL_LABOR_HRS), 0)           = 0 and
44614          nvl(sum(pjp1.EQUIPMENT_RAW_COST), 0)       = 0 and
44615          nvl(sum(pjp1.EQUIPMENT_BRDN_COST), 0)      = 0 and
44616          nvl(sum(pjp1.CAPITALIZABLE_RAW_COST), 0)   = 0 and
44617          nvl(sum(pjp1.CAPITALIZABLE_BRDN_COST), 0)  = 0 and
44618          nvl(sum(pjp1.LABOR_RAW_COST), 0)           = 0 and
44619          nvl(sum(pjp1.LABOR_BRDN_COST), 0)          = 0 and
44620          nvl(sum(pjp1.LABOR_HRS), 0)                = 0 and
44621          nvl(sum(pjp1.LABOR_REVENUE), 0)            = 0 and
44622          nvl(sum(pjp1.EQUIPMENT_HOURS), 0)          = 0 and
44623          nvl(sum(pjp1.BILLABLE_EQUIPMENT_HOURS), 0) = 0 and
44624          nvl(sum(pjp1.SUP_INV_COMMITTED_COST), 0)   = 0 and
44625          nvl(sum(pjp1.PO_COMMITTED_COST), 0)        = 0 and
44626          nvl(sum(pjp1.PR_COMMITTED_COST), 0)        = 0 and
44627          nvl(sum(pjp1.OTH_COMMITTED_COST), 0)       = 0 and
44628          nvl(sum(pjp1.ACT_LABOR_HRS), 0)            = 0 and
44629          nvl(sum(pjp1.ACT_EQUIP_HRS), 0)            = 0 and
44630          nvl(sum(pjp1.ACT_LABOR_BRDN_COST), 0)      = 0 and
44631          nvl(sum(pjp1.ACT_EQUIP_BRDN_COST), 0)      = 0 and
44632          nvl(sum(pjp1.ACT_BRDN_COST), 0)            = 0 and
44633          nvl(sum(pjp1.ACT_RAW_COST), 0)             = 0 and
44634          nvl(sum(pjp1.ACT_REVENUE), 0)              = 0 and
44635          nvl(sum(pjp1.ACT_LABOR_RAW_COST), 0)       = 0 and
44636          nvl(sum(pjp1.ACT_EQUIP_RAW_COST), 0)       = 0 and
44637          nvl(sum(pjp1.ETC_LABOR_HRS), 0)            = 0 and
44638          nvl(sum(pjp1.ETC_EQUIP_HRS), 0)            = 0 and
44639          nvl(sum(pjp1.ETC_LABOR_BRDN_COST), 0)      = 0 and
44640          nvl(sum(pjp1.ETC_EQUIP_BRDN_COST), 0)      = 0 and
44641          nvl(sum(pjp1.ETC_BRDN_COST), 0)            = 0 and
44642          nvl(sum(pjp1.ETC_RAW_COST), 0)             = 0 and
44643          nvl(sum(pjp1.ETC_LABOR_RAW_COST), 0)       = 0 and
44644          nvl(sum(pjp1.ETC_EQUIP_RAW_COST), 0)       = 0 and
44645          nvl(sum(pjp1.CUSTOM1), 0)                  = 0 and
44646          nvl(sum(pjp1.CUSTOM2), 0)                  = 0 and
44647          nvl(sum(pjp1.CUSTOM3), 0)                  = 0 and
44648          nvl(sum(pjp1.CUSTOM4), 0)                  = 0 and
44649          nvl(sum(pjp1.CUSTOM5), 0)                  = 0 and
44650          nvl(sum(pjp1.CUSTOM6), 0)                  = 0 and
44651          nvl(sum(pjp1.CUSTOM7), 0)                  = 0 and
44652          nvl(sum(pjp1.CUSTOM8), 0)                  = 0 and
44653          nvl(sum(pjp1.CUSTOM9), 0)                  = 0 and
44654          nvl(sum(pjp1.CUSTOM10), 0)                 = 0 and
44655          nvl(sum(pjp1.CUSTOM11), 0)                 = 0 and
44656          nvl(sum(pjp1.CUSTOM12), 0)                 = 0 and
44657          nvl(sum(pjp1.CUSTOM13), 0)                 = 0 and
44658          nvl(sum(pjp1.CUSTOM14), 0)                 = 0 and
44659          nvl(sum(pjp1.CUSTOM15), 0)                 = 0);
44660 
44661       insert /*+ parallel(PJI_AC_AGGR_PJP1) */
44662                  into PJI_AC_AGGR_PJP1 partition(P10)
44663       (
44664         WORKER_ID,
44665         RECORD_TYPE,
44666         PRG_LEVEL,
44667         PROJECT_ID,
44668         PROJECT_ORG_ID,
44669         PROJECT_ORGANIZATION_ID,
44670         PROJECT_ELEMENT_ID,
44671         TIME_ID,
44672         PERIOD_TYPE_ID,
44673         CALENDAR_TYPE,
44674         WBS_ROLLUP_FLAG,
44675         PRG_ROLLUP_FLAG,
44676         CURR_RECORD_TYPE_ID,
44677         CURRENCY_CODE,
44678         REVENUE,
44679         INITIAL_FUNDING_AMOUNT,
44680         INITIAL_FUNDING_COUNT,
44681         ADDITIONAL_FUNDING_AMOUNT,
44682         ADDITIONAL_FUNDING_COUNT,
44683         CANCELLED_FUNDING_AMOUNT,
44684         CANCELLED_FUNDING_COUNT,
44685         FUNDING_ADJUSTMENT_AMOUNT,
44686         FUNDING_ADJUSTMENT_COUNT,
44687         REVENUE_WRITEOFF,
44688         AR_INVOICE_AMOUNT,
44689         AR_INVOICE_COUNT,
44690         AR_CASH_APPLIED_AMOUNT,
44691         AR_INVOICE_WRITE_OFF_AMOUNT,
44692         AR_INVOICE_WRITEOFF_COUNT,
44693         AR_CREDIT_MEMO_AMOUNT,
44694         AR_CREDIT_MEMO_COUNT,
44695         UNBILLED_RECEIVABLES,
44696         UNEARNED_REVENUE,
44697         AR_UNAPPR_INVOICE_AMOUNT,
44698         AR_UNAPPR_INVOICE_COUNT,
44699         AR_APPR_INVOICE_AMOUNT,
44700         AR_APPR_INVOICE_COUNT,
44701         AR_AMOUNT_DUE,
44702         AR_COUNT_DUE,
44703         AR_AMOUNT_OVERDUE,
44704         AR_COUNT_OVERDUE,
44705         CUSTOM1,
44706         CUSTOM2,
44707         CUSTOM3,
44708         CUSTOM4,
44709         CUSTOM5,
44710         CUSTOM6,
44711         CUSTOM7,
44712         CUSTOM8,
44713         CUSTOM9,
44714         CUSTOM10,
44715         CUSTOM11,
44716         CUSTOM12,
44717         CUSTOM13,
44718         CUSTOM14,
44719         CUSTOM15
44720       )
44721       select
44722         pjp1.WORKER_ID,
44723         'A'                                        RECORD_TYPE,
44724         pjp1.PRG_LEVEL,
44725         pjp1.PROJECT_ID,
44726         pjp1.PROJECT_ORG_ID,
44727         pjp1.PROJECT_ORGANIZATION_ID,
44728         pjp1.PROJECT_ELEMENT_ID,
44729         pjp1.TIME_ID,
44730         pjp1.PERIOD_TYPE_ID,
44731         pjp1.CALENDAR_TYPE,
44732         pjp1.WBS_ROLLUP_FLAG,
44733         pjp1.PRG_ROLLUP_FLAG,
44734         pjp1.CURR_RECORD_TYPE_ID,
44735         pjp1.CURRENCY_CODE,
44736         sum(pjp1.REVENUE)                          REVENUE,
44737         sum(pjp1.INITIAL_FUNDING_AMOUNT)           INITIAL_FUNDING_AMOUNT,
44738         sum(pjp1.INITIAL_FUNDING_COUNT)            INITIAL_FUNDING_COUNT,
44739         sum(pjp1.ADDITIONAL_FUNDING_AMOUNT)        ADDITIONAL_FUNDING_AMOUNT,
44740         sum(pjp1.ADDITIONAL_FUNDING_COUNT)         ADDITIONAL_FUNDING_COUNT,
44741         sum(pjp1.CANCELLED_FUNDING_AMOUNT)         CANCELLED_FUNDING_AMOUNT,
44742         sum(pjp1.CANCELLED_FUNDING_COUNT)          CANCELLED_FUNDING_COUNT,
44743         sum(pjp1.FUNDING_ADJUSTMENT_AMOUNT)        FUNDING_ADJUSTMENT_AMOUNT,
44744         sum(pjp1.FUNDING_ADJUSTMENT_COUNT)         FUNDING_ADJUSTMENT_COUNT,
44745         sum(pjp1.REVENUE_WRITEOFF)                 REVENUE_WRITEOFF,
44746         sum(pjp1.AR_INVOICE_AMOUNT)                AR_INVOICE_AMOUNT,
44747         sum(pjp1.AR_INVOICE_COUNT)                 AR_INVOICE_COUNT,
44748         sum(pjp1.AR_CASH_APPLIED_AMOUNT)           AR_CASH_APPLIED_AMOUNT,
44749         sum(pjp1.AR_INVOICE_WRITE_OFF_AMOUNT)      AR_INVOICE_WRITE_OFF_AMOUNT,
44750         sum(pjp1.AR_INVOICE_WRITEOFF_COUNT)        AR_INVOICE_WRITEOFF_COUNT,
44751         sum(pjp1.AR_CREDIT_MEMO_AMOUNT)            AR_CREDIT_MEMO_AMOUNT,
44752         sum(pjp1.AR_CREDIT_MEMO_COUNT)             AR_CREDIT_MEMO_COUNT,
44753         sum(pjp1.UNBILLED_RECEIVABLES)             UNBILLED_RECEIVABLES,
44754         sum(pjp1.UNEARNED_REVENUE)                 UNEARNED_REVENUE,
44755         sum(pjp1.AR_UNAPPR_INVOICE_AMOUNT)         AR_UNAPPR_INVOICE_AMOUNT,
44756         sum(pjp1.AR_UNAPPR_INVOICE_COUNT)          AR_UNAPPR_INVOICE_COUNT,
44757         sum(pjp1.AR_APPR_INVOICE_AMOUNT)           AR_APPR_INVOICE_AMOUNT,
44758         sum(pjp1.AR_APPR_INVOICE_COUNT)            AR_APPR_INVOICE_COUNT,
44759         sum(pjp1.AR_AMOUNT_DUE)                    AR_AMOUNT_DUE,
44760         sum(pjp1.AR_COUNT_DUE)                     AR_COUNT_DUE,
44761         sum(pjp1.AR_AMOUNT_OVERDUE)                AR_AMOUNT_OVERDUE,
44762         sum(pjp1.AR_COUNT_OVERDUE)                 AR_COUNT_OVERDUE,
44763         sum(pjp1.CUSTOM1)                          CUSTOM1,
44764         sum(pjp1.CUSTOM2)                          CUSTOM2,
44765         sum(pjp1.CUSTOM3)                          CUSTOM3,
44766         sum(pjp1.CUSTOM4)                          CUSTOM4,
44767         sum(pjp1.CUSTOM5)                          CUSTOM5,
44768         sum(pjp1.CUSTOM6)                          CUSTOM6,
44769         sum(pjp1.CUSTOM7)                          CUSTOM7,
44770         sum(pjp1.CUSTOM8)                          CUSTOM8,
44771         sum(pjp1.CUSTOM9)                          CUSTOM9,
44772         sum(pjp1.CUSTOM10)                         CUSTOM10,
44773         sum(pjp1.CUSTOM11)                         CUSTOM11,
44774         sum(pjp1.CUSTOM12)                         CUSTOM12,
44775         sum(pjp1.CUSTOM13)                         CUSTOM13,
44776         sum(pjp1.CUSTOM14)                         CUSTOM14,
44777         sum(pjp1.CUSTOM15)                         CUSTOM15
44778       from
44779         PJI_AC_AGGR_PJP1 pjp1
44780       where
44781         pjp1.WORKER_ID = p_worker_id
44782       group by
44783         pjp1.WORKER_ID,
44784         pjp1.PRG_LEVEL,
44785         pjp1.PROJECT_ID,
44786         pjp1.PROJECT_ORG_ID,
44787         pjp1.PROJECT_ORGANIZATION_ID,
44788         pjp1.PROJECT_ELEMENT_ID,
44789         pjp1.TIME_ID,
44790         pjp1.PERIOD_TYPE_ID,
44791         pjp1.CALENDAR_TYPE,
44792         pjp1.WBS_ROLLUP_FLAG,
44793         pjp1.PRG_ROLLUP_FLAG,
44794         pjp1.CURR_RECORD_TYPE_ID,
44795         pjp1.CURRENCY_CODE
44796       having not
44797         (nvl(sum(REVENUE), 0)                     = 0 and
44798          nvl(sum(INITIAL_FUNDING_AMOUNT), 0)      = 0 and
44799          nvl(sum(INITIAL_FUNDING_COUNT), 0)       = 0 and
44800          nvl(sum(ADDITIONAL_FUNDING_AMOUNT), 0)   = 0 and
44801          nvl(sum(ADDITIONAL_FUNDING_COUNT), 0)    = 0 and
44802          nvl(sum(CANCELLED_FUNDING_AMOUNT), 0)    = 0 and
44803          nvl(sum(CANCELLED_FUNDING_COUNT), 0)     = 0 and
44804          nvl(sum(FUNDING_ADJUSTMENT_AMOUNT), 0)   = 0 and
44805          nvl(sum(FUNDING_ADJUSTMENT_COUNT), 0)    = 0 and
44806          nvl(sum(REVENUE_WRITEOFF), 0)            = 0 and
44807          nvl(sum(AR_INVOICE_AMOUNT), 0)           = 0 and
44808          nvl(sum(AR_INVOICE_COUNT), 0)            = 0 and
44809          nvl(sum(AR_CASH_APPLIED_AMOUNT), 0)      = 0 and
44810          nvl(sum(AR_INVOICE_WRITE_OFF_AMOUNT), 0) = 0 and
44811          nvl(sum(AR_INVOICE_WRITEOFF_COUNT), 0)   = 0 and
44812          nvl(sum(AR_CREDIT_MEMO_AMOUNT), 0)       = 0 and
44813          nvl(sum(AR_CREDIT_MEMO_COUNT), 0)        = 0 and
44814          nvl(sum(UNBILLED_RECEIVABLES), 0)        = 0 and
44815          nvl(sum(UNEARNED_REVENUE), 0)            = 0 and
44816          nvl(sum(AR_UNAPPR_INVOICE_AMOUNT), 0)    = 0 and
44817          nvl(sum(AR_UNAPPR_INVOICE_COUNT), 0)     = 0 and
44818          nvl(sum(AR_APPR_INVOICE_AMOUNT), 0)      = 0 and
44819          nvl(sum(AR_APPR_INVOICE_COUNT), 0)       = 0 and
44820          nvl(sum(AR_AMOUNT_DUE), 0)               = 0 and
44821          nvl(sum(AR_COUNT_DUE), 0)                = 0 and
44822          nvl(sum(AR_AMOUNT_OVERDUE), 0)           = 0 and
44823          nvl(sum(AR_COUNT_OVERDUE), 0)            = 0 and
44824          nvl(sum(CUSTOM1), 0)                     = 0 and
44825          nvl(sum(CUSTOM2), 0)                     = 0 and
44826          nvl(sum(CUSTOM3), 0)                     = 0 and
44827          nvl(sum(CUSTOM4), 0)                     = 0 and
44828          nvl(sum(CUSTOM5), 0)                     = 0 and
44829          nvl(sum(CUSTOM6), 0)                     = 0 and
44830          nvl(sum(CUSTOM7), 0)                     = 0 and
44831          nvl(sum(CUSTOM8), 0)                     = 0 and
44832          nvl(sum(CUSTOM9), 0)                     = 0 and
44833          nvl(sum(CUSTOM10), 0)                    = 0 and
44834          nvl(sum(CUSTOM11), 0)                    = 0 and
44835          nvl(sum(CUSTOM12), 0)                    = 0 and
44836          nvl(sum(CUSTOM13), 0)                    = 0 and
44837          nvl(sum(CUSTOM14), 0)                    = 0 and
44838          nvl(sum(CUSTOM15), 0)                    = 0);
44839     else
44840         return;
44841     end if;
44842 
44843     end if;
44844 
44845   end EXECUTE_AGGREGATE_PLAN_DATA;
44846 
44847 /* Added for Bug 10338478 Start */
44848 PROCEDURE EXECUTE_ROLLUP_FPR_RBS(
44849 p_worker_id IN NUMBER,
44850    p_level IN NUMBER,
44851 p_partial_mode IN varchar2,
44852 p_fpm_upgrade IN varchar2) IS
44853 
44854 l_batch_size    number := 100;
44855 l_request_id    number := -1;
44856 l_run_count    number := 0;
44857 l_parallel_proc number ;
44858 l_batch_count    number :=0;
44859 l_total_count    number :=0;
44860 l_error_count number := 0;
44861 l_time_in_seconds number := 60;
44862 l_pjp_count   number :=0;
44863 l_schema      varchar2(50);
44864 l_partition_name   varchar2(5);
44865 l_level       NUMBER := p_level;
44866 l_partial_mode varchar2(30) := p_partial_mode;
44867 l_fpm_upgrade varchar2(30) := p_fpm_upgrade;
44868 
44869 cursor batch is
44870 select distinct batch_id,worker_id
44871 from   pji_helper_420
44872 where worker_id = PJI_PJP_FP_CURR_WRAP.GET_WORKER_ID
44873 order by batch_id;
44874 
44875 BEGIN
44876   l_schema := PJI_UTILS.GET_PJI_SCHEMA_NAME;
44877   l_parallel_proc := nvl(fnd_profile.value('PJI_EXTRACTION_PARALLELISM'), 1);
44878 
44879   g_worker_id  := PJI_PJP_FP_CURR_WRAP.GET_WORKER_ID;
44880 
44881   PJI_PROCESS_UTIL.TRUNC_INT_TABLE(l_schema, 'PJI_HELPER_420','NORMAL',l_partition_name);
44882   PJI_PROCESS_UTIL.TRUNC_INT_TABLE(l_schema, 'PJI_BATCH_STATUS_420','NORMAL',l_partition_name);
44883 
44884 
44885       insert   into pji_helper_420 (worker_id, project_id,  batch_id, level_420, partial_mode_420, fpm_upgrade_420)
44886       (select worker_id, project_id,  ceil(ROWNUM / l_batch_size) batch_id, l_level, l_partial_mode, l_fpm_upgrade
44887         FROM   pji_pjp_proj_batch_map
44888         WHERE worker_id = g_worker_id );
44889 
44890 
44891 SELECT /*+ parallel(pji_merge_helper) */
44892        COUNT(DISTINCT batch_id)
44893        INTO l_batch_count
44894        FROM pji_helper_420
44895        where worker_id = g_worker_id;
44896 
44897        if l_batch_count > 0 then
44898 
44899         for rec in batch loop
44900 
44901          if (l_run_count <= l_parallel_proc and
44902              l_total_count <= l_batch_count) then
44903 
44904            l_request_id := FND_REQUEST.SUBMIT_REQUEST
44905            (
44906             application => 'PJI',
44907             program     => 'PJI_HELPER_420',
44908             sub_request => false,
44909             argument1 => rec.batch_id
44910            );
44911            commit;
44912 
44913            if l_request_id > 0 then
44914                insert into pji_batch_status_420
44915                (worker_id,batch_id,request_id,request_status)
44916                values(rec.worker_id,rec.batch_id,l_request_id,'RUNNING');
44917                commit;
44918 
44919                l_total_count := l_total_count +1;
44920                l_run_count := l_run_count +1;
44921 
44922            end if; --request_id>0
44923 
44924          end if; --l_conc_count < l_parallel_proc
44925 
44926          if l_run_count >= l_parallel_proc then
44927 
44928             /* Sleep till further worker are available to submit next batch */
44929             loop
44930                exit when l_run_count < l_parallel_proc;
44931 
44932                DBMS_LOCK.SLEEP(l_time_in_seconds);
44933 
44934                UPDATE_BATCH_CONC_STATUS_420;
44935 
44936                select count(*) into l_run_count
44937                from pji_batch_status_420
44938                where request_status = 'RUNNING';
44939 
44940             end loop;
44941          end if; -- _conc_count >= l_parallel_proc
44942        end loop;  --for loop
44943 
44944       if l_request_id <= 0 then
44945           raise_application_error(-20010,'No request id generated');
44946       end if;
44947 
44948       /* Wait for all Helpers to complete */
44949       loop
44950          exit when l_run_count = 0;
44951 
44952          DBMS_LOCK.SLEEP(l_time_in_seconds);
44953 
44954          UPDATE_BATCH_CONC_STATUS_420;
44955 
44956          select count(*) into l_run_count
44957          from pji_batch_status_420
44958          where request_status = 'RUNNING';
44959 
44960       end loop;
44961 
44962       /* Error check */
44963       select count(*) into l_error_count
44964       from pji_batch_status_420
44965       where request_status = 'ERRORED';
44966 
44967       if l_error_count > 0 then
44968          raise_application_error(-20010,'Helper 420 has failed');
44969       else
44970          PJI_PROCESS_UTIL.TRUNC_INT_TABLE(l_schema, 'PJI_BATCH_STATUS_420','NORMAL',null);
44971       end if;
44972 
44973      end if;
44974 
44975 EXCEPTION
44976   WHEN OTHERS THEN
44977     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
44978                              p_procedure_name => 'EXECUTE_ROLLUP_FPR_RBS');
44979     RAISE;
44980 END EXECUTE_ROLLUP_FPR_RBS;
44981 
44982 
44983 
44984 PROCEDURE UPDATE_BATCH_CONC_STATUS_420 IS
44985 l_rowcount number := 0;
44986 
44987 TYPE Batch_t IS TABLE OF pji_batch_status_420%ROWTYPE
44988 INDEX BY BINARY_INTEGER;
44989 l_Batch_t    Batch_t;
44990 
44991 CURSOR batch IS
44992 SELECT * FROM pji_batch_status_420
44993 WHERE  request_status = 'RUNNING';
44994 
44995 BEGIN
44996 l_Batch_t.delete;
44997 OPEN batch;
44998 FETCH batch BULK COLLECT INTO l_Batch_t;
44999 l_rowcount := batch%rowcount;
45000 CLOSE batch;
45001 
45002     IF l_rowcount > 0 THEN
45003 
45004        FOR i IN l_Batch_t.first..l_Batch_t.last LOOP
45005 
45006         IF (l_Batch_t(i).request_id  > 0 )  THEN
45007             IF (PJI_PROCESS_UTIL.REQUEST_STATUS('OKAY',
45008                                l_Batch_t(i).request_id,'PJI_HELPER_420')) THEN
45009                IF (PJI_PROCESS_UTIL.REQUEST_STATUS('RUNNING',
45010                                l_Batch_t(i).request_id,'PJI_HELPER_420')) THEN
45011                  l_Batch_t(i).request_status := 'RUNNING';
45012                ELSE
45013                  l_Batch_t(i).request_status := 'COMPLETED';
45014                END IF;
45015             ELSE
45016                l_Batch_t(i).request_status := 'ERRORED';
45017             END IF;
45018         END IF;
45019 
45020       END LOOP; --for loop
45021 
45022       FOR i IN l_Batch_t.first..l_Batch_t.last LOOP
45023 
45024          update pji_batch_status_420
45025          set request_status = l_Batch_t(i).request_status
45026          where request_id = l_Batch_t(i).request_id;
45027          commit;
45028 
45029       END LOOP;
45030 
45031 
45032     END IF;  -- l_rowcount if statement
45033 
45034 end UPDATE_BATCH_CONC_STATUS_420;
45035 
45036 PROCEDURE HELPER_420(errbuf     OUT NOCOPY VARCHAR2,
45037                       retcode     OUT NOCOPY VARCHAR2,
45038                       p_batch_id  IN number)
45039 IS
45040     l_last_update_date     date   := SYSDATE;
45041     l_last_updated_by      NUMBER := FND_GLOBAL.USER_ID;
45042     l_creation_date        date   := SYSDATE;
45043     l_created_by           NUMBER := FND_GLOBAL.USER_ID;
45044     l_last_update_login    NUMBER := FND_GLOBAL.LOGIN_ID;
45045     l_process varchar2(30);
45046     l_from_launch varchar2(5) := 'N';
45047 p_worker_id number;
45048 l_level  varchar2(30);
45049 l_partial_mode  varchar2(30);
45050 l_fpm_upgrade  varchar2(30);
45051 
45052 
45053    cursor c1(x_batch_id number) is
45054       select
45055              worker_id,
45056              level_420,
45057              partial_mode_420,
45058              fpm_upgrade_420
45059       from   pji_helper_420
45060     where    batch_id = x_batch_id;
45061 
45062 
45063 BEGIN
45064     OPEN c1(p_batch_id);
45065     FETCH c1 into p_worker_id, l_level, l_partial_mode, l_fpm_upgrade;
45066    close c1;
45067 
45068 insert into PJI_PJP_WBS_HEADER_T
45069 (
45070  PROJECT_ID,
45071  PLAN_VERSION_ID,
45072  WBS_VERSION_ID,
45073  WP_FLAG,
45074  CB_FLAG,
45075  CO_FLAG,
45076  LOCK_FLAG,
45077  PLAN_TYPE_ID,
45078  MIN_TXN_DATE,
45079  MAX_TXN_DATE,
45080  LAST_UPDATE_DATE ,
45081  LAST_UPDATED_BY ,
45082  CREATION_DATE,
45083  CREATED_BY,
45084  LAST_UPDATE_LOGIN,
45085  PLAN_TYPE_CODE)
45086  select
45087  PROJECT_ID,
45088  PLAN_VERSION_ID,
45089  WBS_VERSION_ID,
45090  WP_FLAG,
45091  CB_FLAG,
45092  CO_FLAG,
45093  LOCK_FLAG,
45094  PLAN_TYPE_ID,
45095  MIN_TXN_DATE,
45096  MAX_TXN_DATE,
45097  LAST_UPDATE_DATE ,
45098  LAST_UPDATED_BY ,
45099  CREATION_DATE,
45100  CREATED_BY,
45101  LAST_UPDATE_LOGIN,
45102  PLAN_TYPE_CODE
45103  from PJI_PJP_WBS_HEADER a
45104 where a.project_id in ( select b.project_id from PJI_PJP_PROJ_BATCH_MAP b
45105                         where b.worker_id = p_worker_id );
45106 
45107 insert into PJI_PA_XBS_DENORM_T
45108 (STRUCT_TYPE,
45109  PRG_GROUP,
45110  STRUCT_VERSION_ID,
45111  SUP_PROJECT_ID,
45112  SUP_ID,
45113  SUP_EMT_ID,
45114  SUBRO_ID,
45115  SUB_ID,
45116  SUB_EMT_ID,
45117  SUP_LEVEL,
45118  SUB_LEVEL,
45119  SUB_ROLLUP_ID,
45120  SUB_LEAF_FLAG,
45121  LAST_UPDATE_DATE,
45122  LAST_UPDATED_BY,
45123  CREATION_DATE,
45124  CREATED_BY,
45125  LAST_UPDATE_LOGIN,
45126  STRUCT_EMT_ID,
45127  RELATIONSHIP_TYPE)
45128  select
45129 STRUCT_TYPE,
45130  PRG_GROUP,
45131  STRUCT_VERSION_ID,
45132  SUP_PROJECT_ID,
45133  SUP_ID,
45134  SUP_EMT_ID,
45135  SUBRO_ID,
45136  SUB_ID,
45137  SUB_EMT_ID,
45138  SUP_LEVEL,
45139  SUB_LEVEL,
45140  SUB_ROLLUP_ID,
45141  SUB_LEAF_FLAG,
45142  LAST_UPDATE_DATE,
45143  LAST_UPDATED_BY,
45144  CREATION_DATE,
45145  CREATED_BY,
45146  LAST_UPDATE_LOGIN,
45147  STRUCT_EMT_ID,
45148  RELATIONSHIP_TYPE
45149  from PA_XBS_DENORM a
45150 where a.STRUCT_VERSION_ID in ( select /*+ cardinality(b,1) */ b.wbs_VERSION_ID -- Hint added for bug 11694228
45151                                from PJI_PJP_WBS_HEADER_T b, PJI_PJP_PROJ_BATCH_MAP c
45152                                where c.worker_id = p_worker_id
45153                                and b.project_id = c.project_id)
45154 and a.struct_type||'' = 'WBS'||'';
45155 -- Bug 13097931  - Forward port bugfix 12879208
45156 
45157 
45158 insert into PJI_XBS_DENORM_T
45159 (STRUCT_TYPE,
45160  PRG_GROUP,
45161  STRUCT_VERSION_ID,
45162  SUP_PROJECT_ID,
45163  SUP_ID,
45164  SUP_EMT_ID,
45165  SUBRO_ID,
45166  SUB_ID,
45167  SUB_EMT_ID,
45168  SUP_LEVEL,
45169  SUB_LEVEL,
45170  SUB_ROLLUP_ID,
45171  SUB_LEAF_FLAG,
45172  LAST_UPDATE_DATE,
45173  LAST_UPDATED_BY,
45174  CREATION_DATE,
45175  CREATED_BY,
45176  LAST_UPDATE_LOGIN,
45177  STRUCT_EMT_ID,
45178  RELATIONSHIP_TYPE)
45179  select
45180 STRUCT_TYPE,
45181  PRG_GROUP,
45182  STRUCT_VERSION_ID,
45183  SUP_PROJECT_ID,
45184  SUP_ID,
45185  SUP_EMT_ID,
45186  SUBRO_ID,
45187  SUB_ID,
45188  SUB_EMT_ID,
45189  SUP_LEVEL,
45190  SUB_LEVEL,
45191  SUB_ROLLUP_ID,
45192  SUB_LEAF_FLAG,
45193  LAST_UPDATE_DATE,
45194  LAST_UPDATED_BY,
45195  CREATION_DATE,
45196  CREATED_BY,
45197  LAST_UPDATE_LOGIN,
45198  STRUCT_EMT_ID,
45199  RELATIONSHIP_TYPE
45200  from PJI_XBS_DENORM a
45201 where a.SUP_PROJECT_ID in ( select distinct b.SUP_PROJECT_ID
45202                             from PJI_PA_XBS_DENORM_T b, PJI_PJP_PROJ_BATCH_MAP c
45203                             where c.worker_id = p_worker_id
45204                             and b.sup_project_id = c.project_id);
45205 
45206 
45207 insert into PJI_XBS_DENORM_T
45208 (STRUCT_TYPE,
45209  PRG_GROUP,
45210  STRUCT_VERSION_ID,
45211  SUP_PROJECT_ID,
45212  SUP_ID,
45213  SUP_EMT_ID,
45214  SUBRO_ID,
45215  SUB_ID,
45216  SUB_EMT_ID,
45217  SUP_LEVEL,
45218  SUB_LEVEL,
45219  SUB_ROLLUP_ID,
45220  SUB_LEAF_FLAG,
45221  LAST_UPDATE_DATE,
45222  LAST_UPDATED_BY,
45223  CREATION_DATE,
45224  CREATED_BY,
45225  LAST_UPDATE_LOGIN,
45226  STRUCT_EMT_ID,
45227  RELATIONSHIP_TYPE)
45228  select
45229 STRUCT_TYPE,
45230  PRG_GROUP,
45231  STRUCT_VERSION_ID,
45232  SUP_PROJECT_ID,
45233  SUP_ID,
45234  SUP_EMT_ID,
45235  SUBRO_ID,
45236  SUB_ID,
45237  SUB_EMT_ID,
45238  SUP_LEVEL,
45239  SUB_LEVEL,
45240  SUB_ROLLUP_ID,
45241  SUB_LEAF_FLAG,
45242  LAST_UPDATE_DATE,
45243  LAST_UPDATED_BY,
45244  CREATION_DATE,
45245  CREATED_BY,
45246  LAST_UPDATE_LOGIN,
45247  STRUCT_EMT_ID,
45248  RELATIONSHIP_TYPE
45249 from PJI_XBS_DENORM a
45250 where a.SUP_PROJECT_ID in ( select   b.PROJECT_ID
45251                             from PJI_PJP_PROJ_BATCH_MAP b
45252                             where b.worker_id = p_worker_id )
45253 and not exists ( select 'x' from PJI_PJP_PROJ_BATCH_MAP c
45254                  where c.worker_id = p_worker_id and c.project_id = a.sup_project_id );
45255 
45256 
45257         insert /*+ parallel(PJI_FP_AGGR_PJP1) */
45258                    into PJI_FP_AGGR_PJP1 partition(P1)
45259           (
45260           WORKER_ID,
45261           RECORD_TYPE,
45262           PRG_LEVEL,
45263           LINE_TYPE,
45264           PROJECT_ID,
45265           PROJECT_ORG_ID,
45266           PROJECT_ORGANIZATION_ID,
45267           PROJECT_ELEMENT_ID,
45268           TIME_ID,
45269           PERIOD_TYPE_ID,
45270           CALENDAR_TYPE,
45271           RBS_AGGR_LEVEL,
45272           WBS_ROLLUP_FLAG,
45273           PRG_ROLLUP_FLAG,
45274           CURR_RECORD_TYPE_ID,
45275           CURRENCY_CODE,
45276           RBS_ELEMENT_ID,
45277           RBS_VERSION_ID,
45278           PLAN_VERSION_ID,
45279           PLAN_TYPE_ID,
45280           PLAN_TYPE_CODE,
45281           RAW_COST,
45282           BRDN_COST,
45283           REVENUE,
45284           BILL_RAW_COST,
45285           BILL_BRDN_COST,
45286           BILL_LABOR_RAW_COST,
45287           BILL_LABOR_BRDN_COST,
45288           BILL_LABOR_HRS,
45289           EQUIPMENT_RAW_COST,
45290           EQUIPMENT_BRDN_COST,
45291           CAPITALIZABLE_RAW_COST,
45292           CAPITALIZABLE_BRDN_COST,
45293           LABOR_RAW_COST,
45294           LABOR_BRDN_COST,
45295           LABOR_HRS,
45296           LABOR_REVENUE,
45297           EQUIPMENT_HOURS,
45298           BILLABLE_EQUIPMENT_HOURS,
45299           SUP_INV_COMMITTED_COST,
45300           PO_COMMITTED_COST,
45301           PR_COMMITTED_COST,
45302           OTH_COMMITTED_COST,
45303           ACT_LABOR_HRS,
45304           ACT_EQUIP_HRS,
45305           ACT_LABOR_BRDN_COST,
45306           ACT_EQUIP_BRDN_COST,
45307           ACT_BRDN_COST,
45308           ACT_RAW_COST,
45309           ACT_REVENUE,
45310           ACT_LABOR_RAW_COST,
45311           ACT_EQUIP_RAW_COST,
45312           ETC_LABOR_HRS,
45313           ETC_EQUIP_HRS,
45314           ETC_LABOR_BRDN_COST,
45315           ETC_EQUIP_BRDN_COST,
45316           ETC_BRDN_COST,
45317           ETC_RAW_COST,
45318           ETC_LABOR_RAW_COST,
45319           ETC_EQUIP_RAW_COST,
45320           CUSTOM1,
45321           CUSTOM2,
45322           CUSTOM3,
45323           CUSTOM4,
45324           CUSTOM5,
45325           CUSTOM6,
45326           CUSTOM7,
45327           CUSTOM8,
45328           CUSTOM9,
45329           CUSTOM10,
45330           CUSTOM11,
45331           CUSTOM12,
45332           CUSTOM13,
45333           CUSTOM14,
45334           CUSTOM15
45335         )
45336         select
45337           pjp1_i.WORKER_ID,
45338           pjp1_i.RECORD_TYPE,
45339           pjp1_i.PRG_LEVEL,
45340           pjp1_i.LINE_TYPE,
45341           pjp1_i.PROJECT_ID,
45342           pjp1_i.PROJECT_ORG_ID,
45343           pjp1_i.PROJECT_ORGANIZATION_ID,
45344           pjp1_i.PROJECT_ELEMENT_ID,
45345           pjp1_i.TIME_ID,
45346           pjp1_i.PERIOD_TYPE_ID,
45347           pjp1_i.CALENDAR_TYPE,
45348           pjp1_i.RBS_AGGR_LEVEL,
45349           pjp1_i.WBS_ROLLUP_FLAG,
45350           pjp1_i.PRG_ROLLUP_FLAG,
45351           pjp1_i.CURR_RECORD_TYPE_ID,
45352           pjp1_i.CURRENCY_CODE,
45353           pjp1_i.RBS_ELEMENT_ID,
45354           pjp1_i.RBS_VERSION_ID,
45355           pjp1_i.PLAN_VERSION_ID,
45356           pjp1_i.PLAN_TYPE_ID,
45357           pjp1_i.PLAN_TYPE_CODE,
45358           decode(pjp1_i.RELATIONSHIP_TYPE
45359                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45360                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45361                    || '_' || pjp1_i.SUB_STATUS_CODE
45362                    || '_' || pjp1_i.SUP_STATUS_CODE,
45363                  'LW_N_Y__', to_number(null),
45364                  decode(pjp1_i.RELATIONSHIP_TYPE
45365                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
45366                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
45367                           || '_' || pjp1_i.SUP_VER_ENABLED
45368                           || '_' || l_fpm_upgrade
45369                           || '_' || l_partial_mode,
45370                         'LW_N_Y_Y_C_', to_number(null),
45371                  pjp1_i.RAW_COST))                    RAW_COST,
45372           decode(pjp1_i.RELATIONSHIP_TYPE
45373                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45374                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45375                    || '_' || pjp1_i.SUB_STATUS_CODE
45376                    || '_' || pjp1_i.SUP_STATUS_CODE,
45377                  'LW_N_Y__', to_number(null),
45378                  decode(pjp1_i.RELATIONSHIP_TYPE
45379                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
45380                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
45381                           || '_' || pjp1_i.SUP_VER_ENABLED
45382                           || '_' || l_fpm_upgrade
45383                           || '_' || l_partial_mode,
45384                         'LW_N_Y_Y_C_', to_number(null),
45385                  pjp1_i.BRDN_COST))                   BRDN_COST,
45386           decode(pjp1_i.RELATIONSHIP_TYPE
45387                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45388                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45389                    || '_' || pjp1_i.SUB_STATUS_CODE
45390                    || '_' || pjp1_i.SUP_STATUS_CODE,
45391                  'LW_N_Y__', to_number(null),
45392                  decode(pjp1_i.RELATIONSHIP_TYPE
45393                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
45394                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
45395                           || '_' || pjp1_i.SUP_VER_ENABLED
45396                           || '_' || l_fpm_upgrade
45397                           || '_' || l_partial_mode,
45398                         'LW_N_Y_Y_C_', to_number(null),
45399                  pjp1_i.REVENUE))                     REVENUE,
45400           decode(pjp1_i.RELATIONSHIP_TYPE
45401                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45402                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45403                    || '_' || pjp1_i.SUB_STATUS_CODE
45404                    || '_' || pjp1_i.SUP_STATUS_CODE,
45405                  'LW_N_Y__', to_number(null),
45406                  decode(pjp1_i.RELATIONSHIP_TYPE
45407                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
45408                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
45409                           || '_' || pjp1_i.SUP_VER_ENABLED
45410                           || '_' || l_fpm_upgrade
45411                           || '_' || l_partial_mode,
45412                         'LW_N_Y_Y_C_', to_number(null),
45413                  pjp1_i.BILL_RAW_COST))               BILL_RAW_COST,
45414           decode(pjp1_i.RELATIONSHIP_TYPE
45415                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45416                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45417                    || '_' || pjp1_i.SUB_STATUS_CODE
45418                    || '_' || pjp1_i.SUP_STATUS_CODE,
45419                  'LW_N_Y__', to_number(null),
45420                  decode(pjp1_i.RELATIONSHIP_TYPE
45421                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
45422                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
45423                           || '_' || pjp1_i.SUP_VER_ENABLED
45424                           || '_' || l_fpm_upgrade
45425                           || '_' || l_partial_mode,
45426                         'LW_N_Y_Y_C_', to_number(null),
45427                  pjp1_i.BILL_BRDN_COST))              BILL_BRDN_COST,
45428           decode(pjp1_i.RELATIONSHIP_TYPE
45429                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45430                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45431                    || '_' || pjp1_i.SUB_STATUS_CODE
45432                    || '_' || pjp1_i.SUP_STATUS_CODE,
45433                  'LW_N_Y__', to_number(null),
45434                  decode(pjp1_i.RELATIONSHIP_TYPE
45435                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
45436                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
45437                           || '_' || pjp1_i.SUP_VER_ENABLED
45438                           || '_' || l_fpm_upgrade
45439                           || '_' || l_partial_mode,
45440                         'LW_N_Y_Y_C_', to_number(null),
45441                  pjp1_i.BILL_LABOR_RAW_COST))         BILL_LABOR_RAW_COST,
45442           decode(pjp1_i.RELATIONSHIP_TYPE
45443                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45444                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45445                    || '_' || pjp1_i.SUB_STATUS_CODE
45446                    || '_' || pjp1_i.SUP_STATUS_CODE,
45447                  'LW_N_Y__', to_number(null),
45448                  decode(pjp1_i.RELATIONSHIP_TYPE
45449                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
45450                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
45451                           || '_' || pjp1_i.SUP_VER_ENABLED
45452                           || '_' || l_fpm_upgrade
45453                           || '_' || l_partial_mode,
45454                         'LW_N_Y_Y_C_', to_number(null),
45455                  pjp1_i.BILL_LABOR_BRDN_COST))        BILL_LABOR_BRDN_COST,
45456           decode(pjp1_i.RELATIONSHIP_TYPE
45457                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45458                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45459                    || '_' || pjp1_i.SUB_STATUS_CODE
45460                    || '_' || pjp1_i.SUP_STATUS_CODE,
45461                  'LW_N_Y__', to_number(null),
45462                  decode(pjp1_i.RELATIONSHIP_TYPE
45463                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
45464                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
45465                           || '_' || pjp1_i.SUP_VER_ENABLED
45466                           || '_' || l_fpm_upgrade
45467                           || '_' || l_partial_mode,
45468                         'LW_N_Y_Y_C_', to_number(null),
45469                  pjp1_i.BILL_LABOR_HRS))              BILL_LABOR_HRS,
45470           decode(pjp1_i.RELATIONSHIP_TYPE
45471                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45472                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45473                    || '_' || pjp1_i.SUB_STATUS_CODE
45474                    || '_' || pjp1_i.SUP_STATUS_CODE,
45475                  'LW_N_Y__', to_number(null),
45476                  decode(pjp1_i.RELATIONSHIP_TYPE
45477                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
45478                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
45479                           || '_' || pjp1_i.SUP_VER_ENABLED
45480                           || '_' || l_fpm_upgrade
45481                           || '_' || l_partial_mode,
45482                         'LW_N_Y_Y_C_', to_number(null),
45483                  pjp1_i.EQUIPMENT_RAW_COST))          EQUIPMENT_RAW_COST,
45484           decode(pjp1_i.RELATIONSHIP_TYPE
45485                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45486                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45487                    || '_' || pjp1_i.SUB_STATUS_CODE
45488                    || '_' || pjp1_i.SUP_STATUS_CODE,
45489                  'LW_N_Y__', to_number(null),
45490                  decode(pjp1_i.RELATIONSHIP_TYPE
45491                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
45492                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
45493                           || '_' || pjp1_i.SUP_VER_ENABLED
45494                           || '_' || l_fpm_upgrade
45495                           || '_' || l_partial_mode,
45496                         'LW_N_Y_Y_C_', to_number(null),
45497                  pjp1_i.EQUIPMENT_BRDN_COST))         EQUIPMENT_BRDN_COST,
45498           decode(pjp1_i.RELATIONSHIP_TYPE
45499                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45500                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45501                    || '_' || pjp1_i.SUB_STATUS_CODE
45502                    || '_' || pjp1_i.SUP_STATUS_CODE,
45503                  'LW_N_Y__', to_number(null),
45504                  decode(pjp1_i.RELATIONSHIP_TYPE
45505                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
45506                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
45507                           || '_' || pjp1_i.SUP_VER_ENABLED
45508                           || '_' || l_fpm_upgrade
45509                           || '_' || l_partial_mode,
45510                         'LW_N_Y_Y_C_', to_number(null),
45511                  pjp1_i.CAPITALIZABLE_RAW_COST))      CAPITALIZABLE_RAW_COST,
45512           decode(pjp1_i.RELATIONSHIP_TYPE
45513                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45514                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45515                    || '_' || pjp1_i.SUB_STATUS_CODE
45516                    || '_' || pjp1_i.SUP_STATUS_CODE,
45517                  'LW_N_Y__', to_number(null),
45518                  decode(pjp1_i.RELATIONSHIP_TYPE
45519                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
45520                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
45521                           || '_' || pjp1_i.SUP_VER_ENABLED
45522                           || '_' || l_fpm_upgrade
45523                           || '_' || l_partial_mode,
45524                         'LW_N_Y_Y_C_', to_number(null),
45525                  pjp1_i.CAPITALIZABLE_BRDN_COST))     CAPITALIZABLE_BRDN_COST,
45526           decode(pjp1_i.RELATIONSHIP_TYPE
45527                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45528                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45529                    || '_' || pjp1_i.SUB_STATUS_CODE
45530                    || '_' || pjp1_i.SUP_STATUS_CODE,
45531                  'LW_N_Y__', to_number(null),
45532                  decode(pjp1_i.RELATIONSHIP_TYPE
45533                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
45534                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
45535                           || '_' || pjp1_i.SUP_VER_ENABLED
45536                           || '_' || l_fpm_upgrade
45537                           || '_' || l_partial_mode,
45538                         'LW_N_Y_Y_C_', to_number(null),
45539                  pjp1_i.LABOR_RAW_COST))              LABOR_RAW_COST,
45540           decode(pjp1_i.RELATIONSHIP_TYPE
45541                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45542                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45543                    || '_' || pjp1_i.SUB_STATUS_CODE
45544                    || '_' || pjp1_i.SUP_STATUS_CODE,
45545                  'LW_N_Y__', to_number(null),
45546                  decode(pjp1_i.RELATIONSHIP_TYPE
45547                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
45548                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
45549                           || '_' || pjp1_i.SUP_VER_ENABLED
45550                           || '_' || l_fpm_upgrade
45551                           || '_' || l_partial_mode,
45552                         'LW_N_Y_Y_C_', to_number(null),
45553                  pjp1_i.LABOR_BRDN_COST))             LABOR_BRDN_COST,
45554           decode(pjp1_i.RELATIONSHIP_TYPE
45555                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45556                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45557                    || '_' || pjp1_i.SUB_STATUS_CODE
45558                    || '_' || pjp1_i.SUP_STATUS_CODE,
45559                  'LW_N_Y__', to_number(null),
45560                  decode(pjp1_i.RELATIONSHIP_TYPE
45561                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
45562                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
45563                           || '_' || pjp1_i.SUP_VER_ENABLED
45564                           || '_' || l_fpm_upgrade
45565                           || '_' || l_partial_mode,
45566                         'LW_N_Y_Y_C_', to_number(null),
45567                  pjp1_i.LABOR_HRS))                   LABOR_HRS,
45568           decode(pjp1_i.RELATIONSHIP_TYPE
45569                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45570                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45571                    || '_' || pjp1_i.SUB_STATUS_CODE
45572                    || '_' || pjp1_i.SUP_STATUS_CODE,
45573                  'LW_N_Y__', to_number(null),
45574                  decode(pjp1_i.RELATIONSHIP_TYPE
45575                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
45576                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
45577                           || '_' || pjp1_i.SUP_VER_ENABLED
45578                           || '_' || l_fpm_upgrade
45579                           || '_' || l_partial_mode,
45580                         'LW_N_Y_Y_C_', to_number(null),
45581                  pjp1_i.LABOR_REVENUE))               LABOR_REVENUE,
45582           decode(pjp1_i.RELATIONSHIP_TYPE
45583                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45584                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45585                    || '_' || pjp1_i.SUB_STATUS_CODE
45586                    || '_' || pjp1_i.SUP_STATUS_CODE,
45587                  'LW_N_Y__', to_number(null),
45588                  decode(pjp1_i.RELATIONSHIP_TYPE
45589                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
45590                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
45591                           || '_' || pjp1_i.SUP_VER_ENABLED
45592                           || '_' || l_fpm_upgrade
45593                           || '_' || l_partial_mode,
45594                         'LW_N_Y_Y_C_', to_number(null),
45595                  pjp1_i.EQUIPMENT_HOURS))             EQUIPMENT_HOURS,
45596           decode(pjp1_i.RELATIONSHIP_TYPE
45597                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45598                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45599                    || '_' || pjp1_i.SUB_STATUS_CODE
45600                    || '_' || pjp1_i.SUP_STATUS_CODE,
45601                  'LW_N_Y__', to_number(null),
45602                  decode(pjp1_i.RELATIONSHIP_TYPE
45603                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
45604                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
45605                           || '_' || pjp1_i.SUP_VER_ENABLED
45606                           || '_' || l_fpm_upgrade
45607                           || '_' || l_partial_mode,
45608                         'LW_N_Y_Y_C_', to_number(null),
45609                  pjp1_i.BILLABLE_EQUIPMENT_HOURS))    BILLABLE_EQUIPMENT_HOURS,
45610           decode(pjp1_i.RELATIONSHIP_TYPE
45611                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45612                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45613                    || '_' || pjp1_i.SUB_STATUS_CODE
45614                    || '_' || pjp1_i.SUP_STATUS_CODE,
45615                  'LW_N_Y__', to_number(null),
45616                  decode(pjp1_i.RELATIONSHIP_TYPE
45617                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
45618                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
45619                           || '_' || pjp1_i.SUP_VER_ENABLED
45620                           || '_' || l_fpm_upgrade
45621                           || '_' || l_partial_mode,
45622                         'LW_N_Y_Y_C_', to_number(null),
45623                  pjp1_i.SUP_INV_COMMITTED_COST))      SUP_INV_COMMITTED_COST,
45624           decode(pjp1_i.RELATIONSHIP_TYPE
45625                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45626                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45627                    || '_' || pjp1_i.SUB_STATUS_CODE
45628                    || '_' || pjp1_i.SUP_STATUS_CODE,
45629                  'LW_N_Y__', to_number(null),
45630                  decode(pjp1_i.RELATIONSHIP_TYPE
45631                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
45632                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
45633                           || '_' || pjp1_i.SUP_VER_ENABLED
45634                           || '_' || l_fpm_upgrade
45635                           || '_' || l_partial_mode,
45636                         'LW_N_Y_Y_C_', to_number(null),
45637                  pjp1_i.PO_COMMITTED_COST))           PO_COMMITTED_COST,
45638           decode(pjp1_i.RELATIONSHIP_TYPE
45639                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45640                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45641                    || '_' || pjp1_i.SUB_STATUS_CODE
45642                    || '_' || pjp1_i.SUP_STATUS_CODE,
45643                  'LW_N_Y__', to_number(null),
45644                  decode(pjp1_i.RELATIONSHIP_TYPE
45645                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
45646                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
45647                           || '_' || pjp1_i.SUP_VER_ENABLED
45648                           || '_' || l_fpm_upgrade
45649                           || '_' || l_partial_mode,
45650                         'LW_N_Y_Y_C_', to_number(null),
45651                  pjp1_i.PR_COMMITTED_COST))           PR_COMMITTED_COST,
45652           decode(pjp1_i.RELATIONSHIP_TYPE
45653                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45654                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45655                    || '_' || pjp1_i.SUB_STATUS_CODE
45656                    || '_' || pjp1_i.SUP_STATUS_CODE,
45657                  'LW_N_Y__', to_number(null),
45658                  decode(pjp1_i.RELATIONSHIP_TYPE
45659                           || '_' || pjp1_i.WBS_ROLLUP_FLAG
45660                           || '_' || pjp1_i.PRG_ROLLUP_FLAG
45661                           || '_' || pjp1_i.SUP_VER_ENABLED
45662                           || '_' || l_fpm_upgrade
45663                           || '_' || l_partial_mode,
45664                         'LW_N_Y_Y_C_', to_number(null),
45665                  pjp1_i.OTH_COMMITTED_COST))          OTH_COMMITTED_COST,
45666           decode(pjp1_i.RELATIONSHIP_TYPE
45667                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45668                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45669                    || '_' || pjp1_i.SUP_STATUS_CODE
45670                    || '_' || l_partial_mode,
45671                  'LW_N_Y__', to_number(null),
45672                           pjp1_i.ACT_LABOR_HRS)       ACT_LABOR_HRS,
45673           decode(pjp1_i.RELATIONSHIP_TYPE
45674                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45675                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45676                    || '_' || pjp1_i.SUP_STATUS_CODE
45677                    || '_' || l_partial_mode,
45678                  'LW_N_Y__', to_number(null),
45679                           pjp1_i.ACT_EQUIP_HRS)       ACT_EQUIP_HRS,
45680           decode(pjp1_i.RELATIONSHIP_TYPE
45681                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45682                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45683                    || '_' || pjp1_i.SUP_STATUS_CODE
45684                    || '_' || l_partial_mode,
45685                  'LW_N_Y__', to_number(null),
45686                           pjp1_i.ACT_LABOR_BRDN_COST) ACT_LABOR_BRDN_COST,
45687           decode(pjp1_i.RELATIONSHIP_TYPE
45688                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45689                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45690                    || '_' || pjp1_i.SUP_STATUS_CODE
45691                    || '_' || l_partial_mode,
45692                  'LW_N_Y__', to_number(null),
45693                           pjp1_i.ACT_EQUIP_BRDN_COST) ACT_EQUIP_BRDN_COST,
45694           decode(pjp1_i.RELATIONSHIP_TYPE
45695                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45696                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45697                    || '_' || pjp1_i.SUP_STATUS_CODE
45698                    || '_' || l_partial_mode,
45699                  'LW_N_Y__', to_number(null),
45700                           pjp1_i.ACT_BRDN_COST)       ACT_BRDN_COST,
45701           decode(pjp1_i.RELATIONSHIP_TYPE
45702                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45703                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45704                    || '_' || pjp1_i.SUP_STATUS_CODE
45705                    || '_' || l_partial_mode,
45706                  'LW_N_Y__', to_number(null),
45707                           pjp1_i.ACT_RAW_COST)        ACT_RAW_COST,
45708           decode(pjp1_i.RELATIONSHIP_TYPE
45709                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45710                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45711                    || '_' || pjp1_i.SUP_STATUS_CODE
45712                    || '_' || l_partial_mode,
45713                  'LW_N_Y__', to_number(null),
45714                           pjp1_i.ACT_REVENUE)         ACT_REVENUE,
45715           decode(pjp1_i.RELATIONSHIP_TYPE
45716                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45717                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45718                    || '_' || pjp1_i.SUP_STATUS_CODE
45719                    || '_' || l_partial_mode,
45720                  'LW_N_Y__', to_number(null),
45721                           pjp1_i.ACT_LABOR_RAW_COST)  ACT_LABOR_RAW_COST,
45722           decode(pjp1_i.RELATIONSHIP_TYPE
45723                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45724                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45725                    || '_' || pjp1_i.SUP_STATUS_CODE
45726                    || '_' || l_partial_mode,
45727                  'LW_N_Y__', to_number(null),
45728                           pjp1_i.ACT_EQUIP_RAW_COST)  ACT_EQUIP_RAW_COST,
45729           decode(pjp1_i.RELATIONSHIP_TYPE
45730                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45731                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45732                    || '_' || pjp1_i.SUP_STATUS_CODE
45733                    || '_' || l_partial_mode,
45734                  'LW_N_Y__', to_number(null),
45735                           pjp1_i.ETC_LABOR_HRS)       ETC_LABOR_HRS,
45736           decode(pjp1_i.RELATIONSHIP_TYPE
45737                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45738                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45739                    || '_' || pjp1_i.SUP_STATUS_CODE
45740                    || '_' || l_partial_mode,
45741                  'LW_N_Y__', to_number(null),
45742                           pjp1_i.ETC_EQUIP_HRS)       ETC_EQUIP_HRS,
45743           decode(pjp1_i.RELATIONSHIP_TYPE
45744                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45745                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45746                    || '_' || pjp1_i.SUP_STATUS_CODE
45747                    || '_' || l_partial_mode,
45748                  'LW_N_Y__', to_number(null),
45749                           pjp1_i.ETC_LABOR_BRDN_COST) ETC_LABOR_BRDN_COST,
45750           decode(pjp1_i.RELATIONSHIP_TYPE
45751                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45752                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45753                    || '_' || pjp1_i.SUP_STATUS_CODE
45754                    || '_' || l_partial_mode,
45755                  'LW_N_Y__', to_number(null),
45756                           pjp1_i.ETC_EQUIP_BRDN_COST) ETC_EQUIP_BRDN_COST,
45757           decode(pjp1_i.RELATIONSHIP_TYPE
45758                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45759                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45760                    || '_' || pjp1_i.SUP_STATUS_CODE
45761                    || '_' || l_partial_mode,
45762                  'LW_N_Y__', to_number(null),
45763                           pjp1_i.ETC_BRDN_COST)       ETC_BRDN_COST,
45764           decode(pjp1_i.RELATIONSHIP_TYPE
45765                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45766                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45767                    || '_' || pjp1_i.SUP_STATUS_CODE
45768                    || '_' || l_partial_mode,
45769                  'LW_N_Y__', to_number(null),
45770                           pjp1_i.ETC_RAW_COST)        ETC_RAW_COST,
45771           decode(pjp1_i.RELATIONSHIP_TYPE
45772                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45773                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45774                    || '_' || pjp1_i.SUP_STATUS_CODE
45775                    || '_' || l_partial_mode,
45776                  'LW_N_Y__', to_number(null),
45777                           pjp1_i.ETC_LABOR_RAW_COST)  ETC_LABOR_RAW_COST,
45778           decode(pjp1_i.RELATIONSHIP_TYPE
45779                    || '_' || pjp1_i.WBS_ROLLUP_FLAG
45780                    || '_' || pjp1_i.PRG_ROLLUP_FLAG
45781                    || '_' || pjp1_i.SUP_STATUS_CODE
45782                    || '_' || l_partial_mode,
45783                  'LW_N_Y__', to_number(null),
45784                           pjp1_i.ETC_EQUIP_RAW_COST)  ETC_EQUIP_RAW_COST,
45785           pjp1_i.CUSTOM1,
45786           pjp1_i.CUSTOM2,
45787           pjp1_i.CUSTOM3,
45788           pjp1_i.CUSTOM4,
45789           pjp1_i.CUSTOM5,
45790           pjp1_i.CUSTOM6,
45791           pjp1_i.CUSTOM7,
45792           pjp1_i.CUSTOM8,
45793           pjp1_i.CUSTOM9,
45794           pjp1_i.CUSTOM10,
45795           pjp1_i.CUSTOM11,
45796           pjp1_i.CUSTOM12,
45797           pjp1_i.CUSTOM13,
45798           pjp1_i.CUSTOM14,
45799           pjp1_i.CUSTOM15
45800         from
45801           (
45802         select
45803           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
45804                  pjp.INSERT_FLAG, 'Y')                INSERT_FLAG,
45805           pjp.RELATIONSHIP_TYPE,
45806           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
45807                  null, sub_ver.STATUS_CODE)           SUB_STATUS_CODE,
45808           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
45809                  null, sup_ver.STATUS_CODE)           SUP_STATUS_CODE,
45810           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
45811                  null, sup_wpa.WP_ENABLE_VERSION_FLAG)SUP_VER_ENABLED,
45812           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
45813                  null, decode(pjp.PLAN_VERSION_ID,
45814                               -1, prg.SUP_ID,
45815                               -3, prg.SUP_ID,
45816                               -4, prg.SUP_ID,
45817                                   null))              SUP_ID,
45818           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
45819                  null, decode(pjp.PLAN_VERSION_ID,
45820                               -1, prg.SUP_EMT_ID,
45821                               -3, prg.SUP_EMT_ID,
45822                               -4, prg.SUP_EMT_ID,
45823                                   null))              SUP_EMT_ID,
45824           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
45825                  null, decode(pjp.PLAN_VERSION_ID,
45826                               -1, prg.WP_FLAG,
45827                               -3, prg.WP_FLAG,
45828                               -4, prg.WP_FLAG,
45829                                   null))              SUP_WP_FLAG,
45830           p_worker_id                                 WORKER_ID,
45831           'W'                                         RECORD_TYPE,
45832           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
45833                  l_level, prg.SUP_LEVEL)              PRG_LEVEL,
45834           pjp.LINE_TYPE,
45835           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
45836                  pjp.PROJECT_ID, prg.SUP_PROJECT_ID)  PROJECT_ID,
45837           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
45838                  pjp.PROJECT_ORG_ID,
45839                  prg.SUP_PROJECT_ORG_ID)              PROJECT_ORG_ID,
45840           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
45841                  pjp.PROJECT_ORGANIZATION_ID,
45842                  prg.SUP_PROJECT_ORGANIZATION_ID)     PROJECT_ORGANIZATION_ID,
45843           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
45844                  pjp.PROJECT_ELEMENT_ID,
45845                  prg.SUB_ROLLUP_ID)                   PROJECT_ELEMENT_ID,
45846           pjp.TIME_ID,
45847           pjp.PERIOD_TYPE_ID,
45848           pjp.CALENDAR_TYPE,
45849           pjp.RBS_AGGR_LEVEL,
45850           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
45851                  pjp.WBS_ROLLUP_FLAG, 'N')            WBS_ROLLUP_FLAG,
45852           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
45853                  pjp.PRG_ROLLUP_FLAG, 'Y')            PRG_ROLLUP_FLAG,
45854           pjp.CURR_RECORD_TYPE_ID,
45855           pjp.CURRENCY_CODE,
45856           pjp.RBS_ELEMENT_ID,
45857           pjp.RBS_VERSION_ID,
45858           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
45859                  pjp.PLAN_VERSION_ID,
45860                  decode(pjp.PLAN_VERSION_ID,
45861                         -1, pjp.PLAN_VERSION_ID,
45862                         -2, pjp.PLAN_VERSION_ID,
45863                         -3, pjp.PLAN_VERSION_ID,
45864                         -4, pjp.PLAN_VERSION_ID,
45865                             wbs_hdr.PLAN_VERSION_ID)) PLAN_VERSION_ID,
45866           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
45867                  pjp.PLAN_TYPE_ID,
45868                  decode(pjp.PLAN_VERSION_ID,
45869                         -1, pjp.PLAN_TYPE_ID,
45870                         -2, pjp.PLAN_TYPE_ID,
45871                         -3, pjp.PLAN_TYPE_ID,
45872                         -4, pjp.PLAN_TYPE_ID,
45873                             wbs_hdr.PLAN_TYPE_ID))    PLAN_TYPE_ID,
45874           pjp.PLAN_TYPE_CODE,
45875           sum(pjp.RAW_COST)                           RAW_COST,
45876           sum(pjp.BRDN_COST)                          BRDN_COST,
45877           sum(pjp.REVENUE)                            REVENUE,
45878           sum(pjp.BILL_RAW_COST)                      BILL_RAW_COST,
45879           sum(pjp.BILL_BRDN_COST)                     BILL_BRDN_COST,
45880           sum(pjp.BILL_LABOR_RAW_COST)                BILL_LABOR_RAW_COST,
45881           sum(pjp.BILL_LABOR_BRDN_COST)               BILL_LABOR_BRDN_COST,
45882           sum(pjp.BILL_LABOR_HRS)                     BILL_LABOR_HRS,
45883           sum(pjp.EQUIPMENT_RAW_COST)                 EQUIPMENT_RAW_COST,
45884           sum(pjp.EQUIPMENT_BRDN_COST)                EQUIPMENT_BRDN_COST,
45885           sum(pjp.CAPITALIZABLE_RAW_COST)             CAPITALIZABLE_RAW_COST,
45886           sum(pjp.CAPITALIZABLE_BRDN_COST)            CAPITALIZABLE_BRDN_COST,
45887           sum(pjp.LABOR_RAW_COST)                     LABOR_RAW_COST,
45888           sum(pjp.LABOR_BRDN_COST)                    LABOR_BRDN_COST,
45889           sum(pjp.LABOR_HRS)                          LABOR_HRS,
45890           sum(pjp.LABOR_REVENUE)                      LABOR_REVENUE,
45891           sum(pjp.EQUIPMENT_HOURS)                    EQUIPMENT_HOURS,
45892           sum(pjp.BILLABLE_EQUIPMENT_HOURS)           BILLABLE_EQUIPMENT_HOURS,
45893           sum(pjp.SUP_INV_COMMITTED_COST)             SUP_INV_COMMITTED_COST,
45894           sum(pjp.PO_COMMITTED_COST)                  PO_COMMITTED_COST,
45895           sum(pjp.PR_COMMITTED_COST)                  PR_COMMITTED_COST,
45896           sum(pjp.OTH_COMMITTED_COST)                 OTH_COMMITTED_COST,
45897           sum(pjp.ACT_LABOR_HRS)                      ACT_LABOR_HRS,
45898           sum(pjp.ACT_EQUIP_HRS)                      ACT_EQUIP_HRS,
45899           sum(pjp.ACT_LABOR_BRDN_COST)                ACT_LABOR_BRDN_COST,
45900           sum(pjp.ACT_EQUIP_BRDN_COST)                ACT_EQUIP_BRDN_COST,
45901           sum(pjp.ACT_BRDN_COST)                      ACT_BRDN_COST,
45902           sum(pjp.ACT_RAW_COST)                       ACT_RAW_COST,
45903           sum(pjp.ACT_REVENUE)                        ACT_REVENUE,
45904           sum(pjp.ACT_LABOR_RAW_COST)                 ACT_LABOR_RAW_COST,
45905           sum(pjp.ACT_EQUIP_RAW_COST)                 ACT_EQUIP_RAW_COST,
45906           sum(pjp.ETC_LABOR_HRS)                      ETC_LABOR_HRS,
45907           sum(pjp.ETC_EQUIP_HRS)                      ETC_EQUIP_HRS,
45908           sum(pjp.ETC_LABOR_BRDN_COST)                ETC_LABOR_BRDN_COST,
45909           sum(pjp.ETC_EQUIP_BRDN_COST)                ETC_EQUIP_BRDN_COST,
45910           sum(pjp.ETC_BRDN_COST)                      ETC_BRDN_COST,
45911           sum(pjp.ETC_RAW_COST)                       ETC_RAW_COST,
45912           sum(pjp.ETC_LABOR_RAW_COST)                 ETC_LABOR_RAW_COST,
45913           sum(pjp.ETC_EQUIP_RAW_COST)                 ETC_EQUIP_RAW_COST,
45914           sum(pjp.CUSTOM1)                            CUSTOM1,
45915           sum(pjp.CUSTOM2)                            CUSTOM2,
45916           sum(pjp.CUSTOM3)                            CUSTOM3,
45917           sum(pjp.CUSTOM4)                            CUSTOM4,
45918           sum(pjp.CUSTOM5)                            CUSTOM5,
45919           sum(pjp.CUSTOM6)                            CUSTOM6,
45920           sum(pjp.CUSTOM7)                            CUSTOM7,
45921           sum(pjp.CUSTOM8)                            CUSTOM8,
45922           sum(pjp.CUSTOM9)                            CUSTOM9,
45923           sum(pjp.CUSTOM10)                           CUSTOM10,
45924           sum(pjp.CUSTOM11)                           CUSTOM11,
45925           sum(pjp.CUSTOM12)                           CUSTOM12,
45926           sum(pjp.CUSTOM13)                           CUSTOM13,
45927           sum(pjp.CUSTOM14)                           CUSTOM14,
45928           sum(pjp.CUSTOM15)                           CUSTOM15
45929         from
45930           (
45931           select /*+ leading(helper) index(wbs PA_XBS_DENORM_N2) parallel(pjp1) use_hash(pjp1) */
45932                  -- get incremental task level amounts from source and
45933                  -- program rollup amounts from interim
45934             to_char(null)                             LINE_TYPE,
45935             wbs_hdr.WBS_VERSION_ID,
45936             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
45937             decode(wbs_hdr.WP_FLAG
45938                      || '_' || to_char(sign(pjp1.PLAN_VERSION_ID))
45939                      || '_' || nvl(fin_plan.INVERT_ID, 'PRJ'),
45940                    'N_1_PRJ', 'N',
45941                    'N_-1_PRG', 'N',
45942                    decode(top_slice.INVERT_ID,
45943                           'PRJ', 'Y',
45944                           decode(wbs.SUB_LEVEL,
45945                                  1, 'Y', 'N')))       PUSHUP_FLAG,
45946             decode(pjp1.RBS_AGGR_LEVEL,
45947                    'L', 'N',
45948                         decode(wbs_hdr.WP_FLAG
45949                                  || '_' || to_char(sign(pjp1.PLAN_VERSION_ID))
45950                                  || '_' || fin_plan.INVERT_ID,
45951                                'N_1_PRG', decode(top_slice.INVERT_ID,
45952                                                  'PRJ', 'Y',
45953                                                  decode(wbs.SUB_LEVEL,
45954                                                         1, 'Y', 'N')),
45955                                'N_-1_PRG', 'N',
45956                                decode(wbs_hdr.WP_FLAG
45957                                         || '_' || fin_plan.INVERT_ID
45958                                         || '_' || fin_plan.CB
45959                                         || '_' || fin_plan.CO
45960                                         || '_'
45961                                         || to_char(fin_plan.PLAN_VERSION_ID),
45962                                       'N_PRJ_Y_Y_-4', 'N',
45963                                                       'Y'))
45964                   )                                   INSERT_FLAG,
45965             pjp1.PROJECT_ID,
45966             pjp1.PROJECT_ORG_ID,
45967             pjp1.PROJECT_ORGANIZATION_ID,
45968             decode(top_slice.INVERT_ID,
45969                    'PRJ', prg.SUP_EMT_ID,
45970                           decode(wbs.SUB_LEVEL,
45971                                  1, prg.SUP_EMT_ID,
45972                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
45973             pjp1.TIME_ID,
45974             pjp1.PERIOD_TYPE_ID,
45975             pjp1.CALENDAR_TYPE,
45976             pjp1.RBS_AGGR_LEVEL,
45977             'Y'                                       WBS_ROLLUP_FLAG,
45978             pjp1.PRG_ROLLUP_FLAG,
45979             pjp1.CURR_RECORD_TYPE_ID,
45980             pjp1.CURRENCY_CODE,
45981             pjp1.RBS_ELEMENT_ID,
45982             pjp1.RBS_VERSION_ID,
45983             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
45984                    'N_PRG', fin_plan.PLAN_VERSION_ID,
45985                             pjp1.PLAN_VERSION_ID)     PLAN_VERSION_ID,
45986             pjp1.PLAN_TYPE_ID,
45987             pjp1.PLAN_TYPE_CODE,
45988             pjp1.RAW_COST,
45989             pjp1.BRDN_COST,
45990             pjp1.REVENUE,
45991             pjp1.BILL_RAW_COST,
45992             pjp1.BILL_BRDN_COST,
45993             pjp1.BILL_LABOR_RAW_COST,
45994             pjp1.BILL_LABOR_BRDN_COST,
45995             pjp1.BILL_LABOR_HRS,
45996             pjp1.EQUIPMENT_RAW_COST,
45997             pjp1.EQUIPMENT_BRDN_COST,
45998             pjp1.CAPITALIZABLE_RAW_COST,
45999             pjp1.CAPITALIZABLE_BRDN_COST,
46000             pjp1.LABOR_RAW_COST,
46001             pjp1.LABOR_BRDN_COST,
46002             pjp1.LABOR_HRS,
46003             pjp1.LABOR_REVENUE,
46004             pjp1.EQUIPMENT_HOURS,
46005             pjp1.BILLABLE_EQUIPMENT_HOURS,
46006             pjp1.SUP_INV_COMMITTED_COST,
46007             pjp1.PO_COMMITTED_COST,
46008             pjp1.PR_COMMITTED_COST,
46009             pjp1.OTH_COMMITTED_COST,
46010             pjp1.ACT_LABOR_HRS,
46011             pjp1.ACT_EQUIP_HRS,
46012             pjp1.ACT_LABOR_BRDN_COST,
46013             pjp1.ACT_EQUIP_BRDN_COST,
46014             pjp1.ACT_BRDN_COST,
46015             pjp1.ACT_RAW_COST,
46016             pjp1.ACT_REVENUE,
46017             pjp1.ACT_LABOR_RAW_COST,
46018             pjp1.ACT_EQUIP_RAW_COST,
46019             pjp1.ETC_LABOR_HRS,
46020             pjp1.ETC_EQUIP_HRS,
46021             pjp1.ETC_LABOR_BRDN_COST,
46022             pjp1.ETC_EQUIP_BRDN_COST,
46023             pjp1.ETC_BRDN_COST,
46024             pjp1.ETC_RAW_COST,
46025             pjp1.ETC_LABOR_RAW_COST,
46026             pjp1.ETC_EQUIP_RAW_COST,
46027             pjp1.CUSTOM1,
46028             pjp1.CUSTOM2,
46029             pjp1.CUSTOM3,
46030             pjp1.CUSTOM4,
46031             pjp1.CUSTOM5,
46032             pjp1.CUSTOM6,
46033             pjp1.CUSTOM7,
46034             pjp1.CUSTOM8,
46035             pjp1.CUSTOM9,
46036             pjp1.CUSTOM10,
46037             pjp1.CUSTOM11,
46038             pjp1.CUSTOM12,
46039             pjp1.CUSTOM13,
46040             pjp1.CUSTOM14,
46041             pjp1.CUSTOM15
46042           from
46043             PJI_FP_AGGR_PJP1   pjp1,
46044             PJI_HELPER_420 helper,
46045             PJI_PJP_WBS_HEADER_T wbs_hdr,
46046             PA_XBS_DENORM      wbs,
46047             PJI_XBS_DENORM_T     prg,
46048             (
46049               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
46050               from DUAL union all
46051               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
46052               from DUAL union all
46053               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
46054               from DUAL union all
46055               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
46056               from DUAL union all
46057               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
46058               from DUAL union all
46059               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
46060               from DUAL union all
46061               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
46062               from DUAL union all
46063               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
46064               from DUAL
46065             ) fin_plan,
46066             (
46067               select 1     WBS_SUP_LEVEL,
46068                      1     WBS_SUB_LEVEL,
46069                      'PRJ' INVERT_ID
46070               from   DUAL
46071               union all
46072               select 1     WBS_SUP_LEVEL,
46073                      1     WBS_SUB_LEVEL,
46074                      'WBS' INVERT_ID
46075               from   DUAL
46076             ) top_slice
46077           where
46078             prg.STRUCT_TYPE         =  'PRG'                       and
46079             prg.SUP_LEVEL           =  l_level                     and
46080             prg.SUB_LEVEL           =  l_level                     and
46081             wbs.STRUCT_TYPE         =  'WBS'                       and
46082             ((wbs.SUP_LEVEL = 1 and
46083               wbs.SUB_LEVEL = 1) or
46084              (wbs.SUP_LEVEL <> wbs.SUB_LEVEL))                     and
46085             wbs.STRUCT_VERSION_ID   =  prg.SUP_ID                  and
46086             helper.project_id =        pjp1.project_id             and
46087             helper.batch_id   =        p_batch_id                  and
46088             helper.worker_id =  pjp1.worker_id                     and
46089             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
46090             pjp1.PRG_LEVEL          in (0, l_level)                and
46091             pjp1.RBS_AGGR_LEVEL     in ('T', 'L')                  and
46092             pjp1.WBS_ROLLUP_FLAG    =  'N'                         and
46093             pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                  and
46094             pjp1.PROJECT_ID         =  wbs_hdr.PROJECT_ID          and
46095             pjp1.PLAN_VERSION_ID    =  wbs_hdr.PLAN_VERSION_ID     and
46096             pjp1.PLAN_TYPE_CODE     =  wbs_hdr.PLAN_TYPE_CODE      and
46097             decode(pjp1.PLAN_VERSION_ID,
46098                    -3, pjp1.PLAN_TYPE_ID,
46099                    -4, pjp1.PLAN_TYPE_ID,
46100                        -1)          =  decode(pjp1.PLAN_VERSION_ID,
46101                                               -3, wbs_hdr.PLAN_TYPE_ID,
46102                                               -4, wbs_hdr.PLAN_TYPE_ID,
46103                                                   -1)              and
46104             wbs.STRUCT_VERSION_ID   =  wbs_hdr.WBS_VERSION_ID      and
46105             pjp1.PROJECT_ELEMENT_ID =  wbs.SUB_EMT_ID              and
46106             wbs_hdr.CB_FLAG         =  fin_plan.CB             (+) and
46107             wbs_hdr.CO_FLAG         =  fin_plan.CO             (+) and
46108             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
46109             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+)
46110           union all
46111           select /*+ leading(helper) parallel(pjp1) use_hash(pjp1) */
46112                  -- get incremental project level amounts from source
46113             to_char(null)                             LINE_TYPE,
46114             wbs_hdr.WBS_VERSION_ID,
46115             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
46116             'Y'                                       PUSHUP_FLAG,
46117             decode(pjp1.RBS_AGGR_LEVEL,
46118                    'L', 'N',
46119                         decode(fin_plan.PLAN_VERSION_ID,
46120                                null, 'N', 'Y'))       INSERT_FLAG,
46121             pjp1.PROJECT_ID,
46122             pjp1.PROJECT_ORG_ID,
46123             pjp1.PROJECT_ORGANIZATION_ID,
46124             pjp1.PROJECT_ELEMENT_ID,
46125             pjp1.TIME_ID,
46126             pjp1.PERIOD_TYPE_ID,
46127             pjp1.CALENDAR_TYPE,
46128             pjp1.RBS_AGGR_LEVEL,
46129             'Y'                                       WBS_ROLLUP_FLAG,
46130             pjp1.PRG_ROLLUP_FLAG,
46131             pjp1.CURR_RECORD_TYPE_ID,
46132             pjp1.CURRENCY_CODE,
46133             pjp1.RBS_ELEMENT_ID,
46134             pjp1.RBS_VERSION_ID,
46135             decode(wbs_hdr.WP_FLAG,
46136                    'N', decode(pjp1.PLAN_VERSION_ID,
46137                                -1, pjp1.PLAN_VERSION_ID,
46138                                -2, pjp1.PLAN_VERSION_ID,
46139                                -3, pjp1.PLAN_VERSION_ID, -- won't exist
46140                                -4, pjp1.PLAN_VERSION_ID, -- won't exist
46141                                    fin_plan.PLAN_VERSION_ID),
46142                         pjp1.PLAN_VERSION_ID)         PLAN_VERSION_ID,
46143             pjp1.PLAN_TYPE_ID,
46144             pjp1.PLAN_TYPE_CODE,
46145             pjp1.RAW_COST,
46146             pjp1.BRDN_COST,
46147             pjp1.REVENUE,
46148             pjp1.BILL_RAW_COST,
46149             pjp1.BILL_BRDN_COST,
46150             pjp1.BILL_LABOR_RAW_COST,
46151             pjp1.BILL_LABOR_BRDN_COST,
46152             pjp1.BILL_LABOR_HRS,
46153             pjp1.EQUIPMENT_RAW_COST,
46154             pjp1.EQUIPMENT_BRDN_COST,
46155             pjp1.CAPITALIZABLE_RAW_COST,
46156             pjp1.CAPITALIZABLE_BRDN_COST,
46157             pjp1.LABOR_RAW_COST,
46158             pjp1.LABOR_BRDN_COST,
46159             pjp1.LABOR_HRS,
46160             pjp1.LABOR_REVENUE,
46161             pjp1.EQUIPMENT_HOURS,
46162             pjp1.BILLABLE_EQUIPMENT_HOURS,
46163             pjp1.SUP_INV_COMMITTED_COST,
46164             pjp1.PO_COMMITTED_COST,
46165             pjp1.PR_COMMITTED_COST,
46166             pjp1.OTH_COMMITTED_COST,
46167             pjp1.ACT_LABOR_HRS,
46168             pjp1.ACT_EQUIP_HRS,
46169             pjp1.ACT_LABOR_BRDN_COST,
46170             pjp1.ACT_EQUIP_BRDN_COST,
46171             pjp1.ACT_BRDN_COST,
46172             pjp1.ACT_RAW_COST,
46173             pjp1.ACT_REVENUE,
46174             pjp1.ACT_LABOR_RAW_COST,
46175             pjp1.ACT_EQUIP_RAW_COST,
46176             pjp1.ETC_LABOR_HRS,
46177             pjp1.ETC_EQUIP_HRS,
46178             pjp1.ETC_LABOR_BRDN_COST,
46179             pjp1.ETC_EQUIP_BRDN_COST,
46180             pjp1.ETC_BRDN_COST,
46181             pjp1.ETC_RAW_COST,
46182             pjp1.ETC_LABOR_RAW_COST,
46183             pjp1.ETC_EQUIP_RAW_COST,
46184             pjp1.CUSTOM1,
46185             pjp1.CUSTOM2,
46186             pjp1.CUSTOM3,
46187             pjp1.CUSTOM4,
46188             pjp1.CUSTOM5,
46189             pjp1.CUSTOM6,
46190             pjp1.CUSTOM7,
46191             pjp1.CUSTOM8,
46192             pjp1.CUSTOM9,
46193             pjp1.CUSTOM10,
46194             pjp1.CUSTOM11,
46195             pjp1.CUSTOM12,
46196             pjp1.CUSTOM13,
46197             pjp1.CUSTOM14,
46198             pjp1.CUSTOM15
46199           from
46200             PJI_FP_AGGR_PJP1   pjp1,
46201             PJI_HELPER_420     helper,  -- order in the From clause should not be changed unless recommended by perf team
46202             PJI_PJP_WBS_HEADER_T wbs_hdr,
46203             PJI_XBS_DENORM_T     prg,
46204             (
46205               select 'Y' CB_FLAG,
46206                      'N' CO_FLAG,
46207                      -3  PLAN_VERSION_ID
46208               from DUAL union all
46209               select 'N' CB_FLAG,
46210                      'Y' CO_FLAG,
46211                      -4  PLAN_VERSION_ID
46212               from DUAL union all
46213               select 'Y' CB_FLAG,
46214                      'Y' CO_FLAG,
46215                      -3  PLAN_VERSION_ID
46216               from DUAL union all
46217               select 'Y' CB_FLAG,
46218                      'Y' CO_FLAG,
46219                      -4  PLAN_VERSION_ID
46220               from DUAL
46221             ) fin_plan
46222           where
46223             prg.STRUCT_TYPE         = 'PRG'                    and
46224             prg.SUP_LEVEL           = l_level                  and
46225             prg.SUB_LEVEL           = l_level                  and
46226             helper.project_id =        pjp1.project_id         and
46227             helper.worker_id =  pjp1.worker_id                 and
46228             helper.batch_id   =        p_batch_id               and
46229             pjp1.PROJECT_ID         = prg.SUP_PROJECT_ID       and
46230             pjp1.PROJECT_ELEMENT_ID = prg.SUP_EMT_ID           and
46231             pjp1.PRG_LEVEL          = 0                        and
46232             pjp1.RBS_AGGR_LEVEL     in ('T', 'L')              and
46233             pjp1.WBS_ROLLUP_FLAG    = 'N'                      and
46234             pjp1.PRG_ROLLUP_FLAG    = 'N'                      and
46235             wbs_hdr.PROJECT_ID      = pjp1.PROJECT_ID          and
46236             wbs_hdr.PLAN_VERSION_ID = pjp1.PLAN_VERSION_ID     and
46237             wbs_hdr.PLAN_TYPE_CODE  = pjp1.PLAN_TYPE_CODE      and
46238             decode(wbs_hdr.WP_FLAG,
46239                    'N', decode(pjp1.PLAN_VERSION_ID,
46240                                -1, 'Y',
46241                                -2, 'Y',
46242                                -3, 'Y', -- won't exist
46243                                -4, 'Y', -- won't exist
46244                                    decode(wbs_hdr.CB_FLAG || '_' ||
46245                                           wbs_hdr.CO_FLAG,
46246                                           'Y_Y', 'Y',
46247                                           'N_Y', 'Y',
46248                                           'Y_N', 'Y',
46249                                                  'N')),
46250                         'Y')        =  'Y'                     and
46251             wbs_hdr.WBS_VERSION_ID  = prg.SUP_ID               and
46252             wbs_hdr.CB_FLAG         = fin_plan.CB_FLAG     (+) and
46253             wbs_hdr.CO_FLAG         = fin_plan.CO_FLAG     (+)
46254           union all
46255           select /*+ ordered
46256                      index(fpr PJI_FP_XBS_ACCUM_F_N1) */
46257                  -- get delta task level amounts from Reporting Lines
46258             to_char(null)                             LINE_TYPE,
46259             wbs_hdr.WBS_VERSION_ID,
46260             decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
46261             decode(log.EVENT_TYPE,
46262                    'WBS_CHANGE', 'Y',
46263                    'WBS_PUBLISH', 'N')                PUSHUP_FLAG,
46264             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
46265                    'N_PRG', decode(top_slice.INVERT_ID,
46266                                    'PRJ', 'Y',
46267                                    decode(wbs.SUB_LEVEL,
46268                                           1, 'Y', 'N')),
46269                    decode(wbs_hdr.WP_FLAG
46270                             || '_' || fin_plan.INVERT_ID
46271                             || '_' || fin_plan.CB
46272                             || '_' || fin_plan.CO
46273                             || '_' || to_char(fin_plan.PLAN_VERSION_ID),
46274                           'N_PRJ_Y_Y_-4', 'N',
46275                                           'Y'))       INSERT_FLAG,
46276             fpr.PROJECT_ID,
46277             fpr.PROJECT_ORG_ID,
46278             fpr.PROJECT_ORGANIZATION_ID,
46279             decode(top_slice.INVERT_ID,
46280                    'PRJ', prg.SUP_EMT_ID,
46281                           decode(wbs.SUB_LEVEL,
46282                                  1, prg.SUP_EMT_ID,
46283                                     wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
46284             fpr.TIME_ID,
46285             fpr.PERIOD_TYPE_ID,
46286             fpr.CALENDAR_TYPE,
46287             fpr.RBS_AGGR_LEVEL,
46288             'Y'                                       WBS_ROLLUP_FLAG,
46289             fpr.PRG_ROLLUP_FLAG,
46290             fpr.CURR_RECORD_TYPE_ID,
46291             fpr.CURRENCY_CODE,
46292             fpr.RBS_ELEMENT_ID,
46293             fpr.RBS_VERSION_ID,
46294             decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
46295                    'N_PRG', fin_plan.PLAN_VERSION_ID,
46296                             fpr.PLAN_VERSION_ID)      PLAN_VERSION_ID,
46297             fpr.PLAN_TYPE_ID,
46298             fpr.PLAN_TYPE_CODE,
46299             wbs.SIGN * fpr.RAW_COST                   RAW_COST,
46300             wbs.SIGN * fpr.BRDN_COST                  BRDN_COST,
46301             wbs.SIGN * fpr.REVENUE                    REVENUE,
46302             wbs.SIGN * fpr.BILL_RAW_COST              BILL_RAW_COST,
46303             wbs.SIGN * fpr.BILL_BRDN_COST             BILL_BRDN_COST,
46304             wbs.SIGN * fpr.BILL_LABOR_RAW_COST        BILL_LABOR_RAW_COST,
46305             wbs.SIGN * fpr.BILL_LABOR_BRDN_COST       BILL_LABOR_BRDN_COST,
46306             wbs.SIGN * fpr.BILL_LABOR_HRS             BILL_LABOR_HRS,
46307             wbs.SIGN * fpr.EQUIPMENT_RAW_COST         EQUIPMENT_RAW_COST,
46308             wbs.SIGN * fpr.EQUIPMENT_BRDN_COST        EQUIPMENT_BRDN_COST,
46309             wbs.SIGN * fpr.CAPITALIZABLE_RAW_COST     CAPITALIZABLE_RAW_COST,
46310             wbs.SIGN * fpr.CAPITALIZABLE_BRDN_COST    CAPITALIZABLE_BRDN_COST,
46311             wbs.SIGN * fpr.LABOR_RAW_COST             LABOR_RAW_COST,
46312             wbs.SIGN * fpr.LABOR_BRDN_COST            LABOR_BRDN_COST,
46313             wbs.SIGN * fpr.LABOR_HRS                  LABOR_HRS,
46314             wbs.SIGN * fpr.LABOR_REVENUE              LABOR_REVENUE,
46315             wbs.SIGN * fpr.EQUIPMENT_HOURS            EQUIPMENT_HOURS,
46316             wbs.SIGN * fpr.BILLABLE_EQUIPMENT_HOURS   BILLABLE_EQUIPMENT_HOURS,
46317             wbs.SIGN * fpr.SUP_INV_COMMITTED_COST     SUP_INV_COMMITTED_COST,
46318             wbs.SIGN * fpr.PO_COMMITTED_COST          PO_COMMITTED_COST,
46319             wbs.SIGN * fpr.PR_COMMITTED_COST          PR_COMMITTED_COST,
46320             wbs.SIGN * fpr.OTH_COMMITTED_COST         OTH_COMMITTED_COST,
46321             wbs.SIGN * fpr.ACT_LABOR_HRS              ACT_LABOR_HRS,
46322             wbs.SIGN * fpr.ACT_EQUIP_HRS              ACT_EQUIP_HRS,
46323             wbs.SIGN * fpr.ACT_LABOR_BRDN_COST        ACT_LABOR_BRDN_COST,
46324             wbs.SIGN * fpr.ACT_EQUIP_BRDN_COST        ACT_EQUIP_BRDN_COST,
46325             wbs.SIGN * fpr.ACT_BRDN_COST              ACT_BRDN_COST,
46326             wbs.SIGN * fpr.ACT_RAW_COST               ACT_RAW_COST,
46327             wbs.SIGN * fpr.ACT_REVENUE                ACT_REVENUE,
46328             wbs.SIGN * fpr.ACT_LABOR_RAW_COST         ACT_LABOR_RAW_COST,
46329             wbs.SIGN * fpr.ACT_EQUIP_RAW_COST         ACT_EQUIP_RAW_COST,
46330             wbs.SIGN * fpr.ETC_LABOR_HRS              ETC_LABOR_HRS,
46331             wbs.SIGN * fpr.ETC_EQUIP_HRS              ETC_EQUIP_HRS,
46332             wbs.SIGN * fpr.ETC_LABOR_BRDN_COST        ETC_LABOR_BRDN_COST,
46333             wbs.SIGN * fpr.ETC_EQUIP_BRDN_COST        ETC_EQUIP_BRDN_COST,
46334             wbs.SIGN * fpr.ETC_BRDN_COST              ETC_BRDN_COST,
46335             wbs.SIGN * fpr.ETC_RAW_COST               ETC_RAW_COST,
46336             wbs.SIGN * fpr.ETC_LABOR_RAW_COST         ETC_LABOR_RAW_COST,
46337             wbs.SIGN * fpr.ETC_EQUIP_RAW_COST         ETC_EQUIP_RAW_COST,
46338             wbs.SIGN * fpr.CUSTOM1                    CUSTOM1,
46339             wbs.SIGN * fpr.CUSTOM2                    CUSTOM2,
46340             wbs.SIGN * fpr.CUSTOM3                    CUSTOM3,
46341             wbs.SIGN * fpr.CUSTOM4                    CUSTOM4,
46342             wbs.SIGN * fpr.CUSTOM5                    CUSTOM5,
46343             wbs.SIGN * fpr.CUSTOM6                    CUSTOM6,
46344             wbs.SIGN * fpr.CUSTOM7                    CUSTOM7,
46345             wbs.SIGN * fpr.CUSTOM8                    CUSTOM8,
46346             wbs.SIGN * fpr.CUSTOM9                    CUSTOM9,
46347             wbs.SIGN * fpr.CUSTOM10                   CUSTOM10,
46348             wbs.SIGN * fpr.CUSTOM11                   CUSTOM11,
46349             wbs.SIGN * fpr.CUSTOM12                   CUSTOM12,
46350             wbs.SIGN * fpr.CUSTOM13                   CUSTOM13,
46351             wbs.SIGN * fpr.CUSTOM14                   CUSTOM14,
46352             wbs.SIGN * fpr.CUSTOM15                   CUSTOM15
46353           from
46354             PJI_PA_PROJ_EVENTS_LOG log,
46355             PJI_HELPER_420         helper,
46356             PJI_PJP_WBS_HEADER_T     wbs_hdr,
46357             PJI_XBS_DENORM_DELTA   wbs,
46358             PJI_XBS_DENORM_T         prg,
46359             PJI_FP_XBS_ACCUM_F     fpr,
46360             (
46361               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
46362               from DUAL union all
46363               select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
46364               from DUAL union all
46365               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
46366               from DUAL union all
46367               select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
46368               from DUAL union all
46369               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
46370               from DUAL union all
46371               select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
46372               from DUAL union all
46373               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
46374               from DUAL union all
46375               select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
46376               from DUAL
46377             ) fin_plan,
46378             (
46379               select 1     WBS_SUP_LEVEL,
46380                      1     WBS_SUB_LEVEL,
46381                      'PRJ' INVERT_ID
46382               from   DUAL
46383               union all
46384               select 1     WBS_SUP_LEVEL,
46385                      1     WBS_SUB_LEVEL,
46386                      'WBS' INVERT_ID
46387               from   DUAL
46388             ) top_slice
46389           where
46390             prg.STRUCT_TYPE         =  'PRG'                       and
46391             prg.SUP_LEVEL           =  l_level                     and
46392             prg.SUB_LEVEL           =  l_level                     and
46393             wbs.WORKER_ID           =  helper.worker_id            and
46394             fpr.project_id          =  helper.project_id           and
46395             helper.worker_id =  log.worker_id                     and
46396             helper.batch_id         =  p_batch_id                  and
46397             wbs.STRUCT_TYPE         =  'WBS'                       and
46398             wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
46399             log.EVENT_ID            =  wbs.EVENT_ID                and
46400             log.EVENT_TYPE          in ('WBS_CHANGE',
46401                                         'WBS_PUBLISH')             and
46402             wbs_hdr.PROJECT_ID      =  log.ATTRIBUTE1              and
46403             wbs_hdr.PLAN_VERSION_ID =  log.ATTRIBUTE3              and
46404             wbs_hdr.WBS_VERSION_ID  =  wbs.STRUCT_VERSION_ID       and
46405             wbs_hdr.PROJECT_ID      =  prg.SUP_PROJECT_ID          and
46406             wbs_hdr.WBS_VERSION_ID  =  prg.SUP_ID                  and
46407             fpr.RBS_AGGR_LEVEL      =  'T'                         and
46408             fpr.WBS_ROLLUP_FLAG     =  'N'                         and
46409             fpr.PRG_ROLLUP_FLAG     in ('Y', 'N')                  and
46410             fpr.PROJECT_ID          =  wbs.SUP_PROJECT_ID          and
46411             fpr.PROJECT_ELEMENT_ID  =  wbs.SUB_EMT_ID              and
46412             fpr.PROJECT_ID          =  wbs_hdr.PROJECT_ID          and
46413             fpr.PLAN_VERSION_ID     =  wbs_hdr.PLAN_VERSION_ID     and
46414             fpr.PLAN_TYPE_CODE      =  wbs_hdr.PLAN_TYPE_CODE      and
46415             decode(fpr.PLAN_VERSION_ID,
46416                    -3, fpr.PLAN_TYPE_ID,
46417                    -4, fpr.PLAN_TYPE_ID,
46418                        -1)          =  decode(fpr.PLAN_VERSION_ID,
46419                                               -3, wbs_hdr.PLAN_TYPE_ID,
46420                                               -4, wbs_hdr.PLAN_TYPE_ID,
46421                                                   -1)              and
46422             wbs_hdr.CB_FLAG         =  fin_plan.CB             (+) and
46423             wbs_hdr.CO_FLAG         =  fin_plan.CO             (+) and
46424             wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
46425             wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+) and
46426             (wbs.SUP_LEVEL <> wbs.SUB_LEVEL or
46427              (wbs.SUP_LEVEL = 1 and
46428               wbs.SUB_LEVEL = 1))
46429           ) pjp,
46430           (
46431           select /*+ ordered */
46432             prg.SUP_PROJECT_ID,
46433             map.PROJECT_ORG_ID               SUP_PROJECT_ORG_ID,
46434             map.PROJECT_ORGANIZATION_ID      SUP_PROJECT_ORGANIZATION_ID,
46435             prg.SUP_ID,
46436             prg.SUP_EMT_ID,
46437             prg.SUP_LEVEL,
46438             prg.SUB_ID,
46439             prg.SUB_EMT_ID,
46440             prg.SUB_ROLLUP_ID,
46441             invert.INVERT_VALUE              RELATIONSHIP_TYPE,
46442             decode(prg.RELATIONSHIP_TYPE,
46443                    'LW', 'Y',
46444                    'LF', 'N')                WP_FLAG,
46445             'Y'                              PUSHUP_FLAG
46446           from
46447             PJI_PJP_PROJ_BATCH_MAP map,
46448             PJI_XBS_DENORM_T prg,
46449             (
46450               select 'LF' INVERT_ID, 'LF' INVERT_VALUE from dual union all
46451               select 'LW' INVERT_ID, 'LW' INVERT_VALUE from dual union all
46452               select 'A'  INVERT_ID, 'LF' INVERT_VALUE from dual union all
46453               select 'A'  INVERT_ID, 'LW' INVERT_VALUE from dual
46454             ) invert,
46455             PJI_XBS_DENORM_DELTA prg_delta
46456           where
46457             prg.STRUCT_TYPE               = 'PRG'                           and
46458             prg.SUB_ROLLUP_ID             is not null                       and
46459             prg.SUB_LEVEL                 = l_level                         and
46460             map.WORKER_ID                 = p_worker_id                     and
46461             map.PROJECT_ID                = prg.SUP_PROJECT_ID              and
46462             decode(prg.SUB_LEVEL,
46463                    prg.SUP_LEVEL, 'A',
46464                    prg.RELATIONSHIP_TYPE) = invert.INVERT_ID                and
46465             p_worker_id                   = prg_delta.WORKER_ID         (+) and
46466             prg.STRUCT_TYPE               = prg_delta.STRUCT_TYPE       (+) and
46467             prg.SUP_PROJECT_ID            = prg_delta.SUP_PROJECT_ID    (+) and
46468             prg.SUP_LEVEL                 = prg_delta.SUP_LEVEL         (+) and
46469             prg.SUP_ID                    = prg_delta.SUP_ID            (+) and
46470             prg.SUB_LEVEL                 = prg_delta.SUB_LEVEL         (+) and
46471             prg.SUB_ID                    = prg_delta.SUB_ID            (+) and
46472             prg.RELATIONSHIP_TYPE         = prg_delta.RELATIONSHIP_TYPE (+) and
46473             -1                            = prg_delta.SIGN              (+) and
46474             prg_delta.SUP_PROJECT_ID      is null
46475           )                          prg,
46476           PJI_PJP_WBS_HEADER_T         wbs_hdr,
46477           PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
46478           PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
46479           PA_PROJ_WORKPLAN_ATTR      sup_wpa
46480         where
46481           pjp.PROJECT_ID         = sub_ver.PROJECT_ID                (+) and
46482           pjp.WBS_VERSION_ID     = sub_ver.ELEMENT_VERSION_ID        (+) and
46483           'STRUCTURE_PUBLISHED'  = sub_ver.STATUS_CODE               (+) and
46484           pjp.WBS_VERSION_ID     = prg.SUB_ID                        (+) and
46485           pjp.RELATIONSHIP_TYPE  = prg.RELATIONSHIP_TYPE             (+) and
46486           pjp.PUSHUP_FLAG        = prg.PUSHUP_FLAG                   (+) and
46487           prg.SUP_PROJECT_ID     = wbs_hdr.PROJECT_ID                (+) and
46488           prg.SUP_ID             = wbs_hdr.WBS_VERSION_ID            (+) and
46489           prg.WP_FLAG            = wbs_hdr.WP_FLAG                   (+) and
46490           'Y'                    = wbs_hdr.WP_FLAG                   (+) and
46491           wbs_hdr.PROJECT_ID     = sup_ver.PROJECT_ID                (+) and
46492           wbs_hdr.WBS_VERSION_ID = sup_ver.ELEMENT_VERSION_ID        (+) and
46493           'STRUCTURE_PUBLISHED'  = sup_ver.STATUS_CODE               (+) and
46494           'Y'                    = sup_ver.LATEST_EFF_PUBLISHED_FLAG (+) and
46495           prg.SUP_EMT_ID         = sup_wpa.PROJ_ELEMENT_ID           (+)
46496         group by
46497           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
46498                  pjp.INSERT_FLAG, 'Y'),
46499           pjp.RELATIONSHIP_TYPE,
46500           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
46501                  null, sub_ver.STATUS_CODE),
46502           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
46503                  null, sup_ver.STATUS_CODE),
46504           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
46505                  null, sup_wpa.WP_ENABLE_VERSION_FLAG),
46506           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
46507                  null, decode(pjp.PLAN_VERSION_ID,
46508                               -1, prg.SUP_ID,
46509                               -3, prg.SUP_ID,
46510                               -4, prg.SUP_ID,
46511                                   null)),
46512           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
46513                  null, decode(pjp.PLAN_VERSION_ID,
46514                               -1, prg.SUP_EMT_ID,
46515                               -3, prg.SUP_EMT_ID,
46516                               -4, prg.SUP_EMT_ID,
46517                                   null)),
46518           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
46519                  null, decode(pjp.PLAN_VERSION_ID,
46520                               -1, prg.WP_FLAG,
46521                               -3, prg.WP_FLAG,
46522                               -4, prg.WP_FLAG,
46523                                   null)),
46524           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
46525                  l_level, prg.SUP_LEVEL),
46526           pjp.LINE_TYPE,
46527           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
46528                  pjp.PROJECT_ID, prg.SUP_PROJECT_ID),
46529           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
46530                  pjp.PROJECT_ORG_ID,
46531                  prg.SUP_PROJECT_ORG_ID),
46532           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
46533                  pjp.PROJECT_ORGANIZATION_ID,
46534                  prg.SUP_PROJECT_ORGANIZATION_ID),
46535           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
46536                  pjp.PROJECT_ELEMENT_ID,
46537                  prg.SUB_ROLLUP_ID),
46538           pjp.TIME_ID,
46539           pjp.PERIOD_TYPE_ID,
46540           pjp.CALENDAR_TYPE,
46541           pjp.RBS_AGGR_LEVEL,
46542           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
46543                  pjp.WBS_ROLLUP_FLAG, 'N'),
46544           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
46545                  pjp.PRG_ROLLUP_FLAG, 'Y'),
46546           pjp.CURR_RECORD_TYPE_ID,
46547           pjp.CURRENCY_CODE,
46548           pjp.RBS_ELEMENT_ID,
46549           pjp.RBS_VERSION_ID,
46550           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
46551                  pjp.PLAN_VERSION_ID,
46552                  decode(pjp.PLAN_VERSION_ID,
46553                         -1, pjp.PLAN_VERSION_ID,
46554                         -2, pjp.PLAN_VERSION_ID,
46555                         -3, pjp.PLAN_VERSION_ID,
46556                         -4, pjp.PLAN_VERSION_ID,
46557                             wbs_hdr.PLAN_VERSION_ID)),
46558           decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
46559                  pjp.PLAN_TYPE_ID,
46560                  decode(pjp.PLAN_VERSION_ID,
46561                         -1, pjp.PLAN_TYPE_ID,
46562                         -2, pjp.PLAN_TYPE_ID,
46563                         -3, pjp.PLAN_TYPE_ID,
46564                         -4, pjp.PLAN_TYPE_ID,
46565                             wbs_hdr.PLAN_TYPE_ID)),
46566           pjp.PLAN_TYPE_CODE
46567           )                          pjp1_i,
46568           PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
46569           PA_PROJ_WORKPLAN_ATTR      sup_wpa
46570         where
46571           pjp1_i.INSERT_FLAG  = 'Y'                                and
46572           pjp1_i.PROJECT_ID   = sup_fin_ver.PROJECT_ID         (+) and
46573           pjp1_i.SUP_ID       = sup_fin_ver.ELEMENT_VERSION_ID (+) and
46574           'STRUCTURE_WORKING' = sup_fin_ver.STATUS_CODE        (+) and
46575           pjp1_i.SUP_EMT_ID   = sup_wpa.PROJ_ELEMENT_ID        (+) and
46576           'N'                 = sup_wpa.WP_ENABLE_VERSION_FLAG (+) and
46577           (pjp1_i.SUP_ID is null or
46578            (pjp1_i.SUP_ID is not null and
46579             (sup_fin_ver.PROJECT_ID is not null or
46580              sup_wpa.PROJ_ELEMENT_ID is not null)));
46581 
46582   commit;
46583 
46584 --  x_row_id.delete;
46585 --  xf_row_id.delete;
46586   delete
46587   from pji_helper_420
46588   where batch_id = p_batch_id;
46589 
46590   update pji_batch_status_420
46591   set    request_status = 'COMPLETED'
46592   where batch_id = p_batch_id;
46593 
46594   commit;
46595 
46596 EXCEPTION
46597   WHEN OTHERS THEN
46598     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
46599                              p_procedure_name => 'HELPER_420');
46600    retcode := 2;
46601    errbuf := sqlerrm;
46602    RAISE;
46603 END HELPER_420;
46604 /* Added for Bug 10338478 End */
46605 
46606 
46607 end PJI_PROCESS_UTIL;