DBA Data[Home] [Help]

PACKAGE BODY: APPS.PJI_FM_PLAN_CAL_RLPS

Source


1 PACKAGE BODY PJI_FM_PLAN_CAL_RLPS AS
2 /* $Header: PJIPP04B.pls 120.11.12010000.2 2008/09/18 23:47:55 snizam ship $ */
3 
4 
5 g_package_name VARCHAR2(100) := 'PJI_FM_PLAN_CAL_RLPS';
6 
7 g_worker_id NUMBER := PJI_PJP_FP_CURR_WRAP.GET_WORKER_ID;
8 g_default_prg_level NUMBER        := 0;
9 
10 
11 PROCEDURE PRINT_TIME(p_tag IN VARCHAR2);
12 
13 
14 
15 PROCEDURE CREATE_FP_PA_ROLLUP IS -- Public
16 BEGIN
17   CREATE_FP_PA_PRI_ROLLUP ;
18 EXCEPTION
19   WHEN OTHERS THEN
20     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
21                              p_procedure_name => 'CREATE_FP_PA_ROLLUP');
22     RAISE;
23 END;
24 
25 
26 PROCEDURE CREATE_FP_GL_ROLLUP IS -- Public
27 BEGIN
28   CREATE_FP_GL_PRI_ROLLUP ;
29 EXCEPTION
30   WHEN OTHERS THEN
31     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
32                              p_procedure_name => 'CREATE_FP_GL_ROLLUP');
33     RAISE;
34 END;
35 
36 PROCEDURE CREATE_FP_NONTP_ROLLUP IS -- Public. Not needed.
37 BEGIN
38   NULL;
39 EXCEPTION
40   WHEN OTHERS THEN
41     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
42                              p_procedure_name => 'CREATE_FP_NONTP_ROLLUP');
43     RAISE;
44 END;
45 
46 
47 PROCEDURE CREATE_FP_ENT_ROLLUP IS -- Public
48 BEGIN
49 
50   g_worker_id  := PJI_PJP_FP_CURR_WRAP.GET_WORKER_ID;
51 
52   INSERT INTO PJI_FP_AGGR_PJP1
53   (
54        WORKER_ID
55      , PRG_LEVEL
56      , PROJECT_ID
57      , PROJECT_ORG_ID
58      , PROJECT_ORGANIZATION_ID
59      , PROJECT_ELEMENT_ID
60      , TIME_ID
61      , PERIOD_TYPE_ID
62      , CALENDAR_TYPE
63      , RBS_AGGR_LEVEL
64      , WBS_ROLLUP_FLAG
65      , PRG_ROLLUP_FLAG
66      , CURR_RECORD_TYPE_ID
67      , CURRENCY_CODE
68      , RBS_ELEMENT_ID
69      , RBS_VERSION_ID
70      , PLAN_VERSION_ID
71      , PLAN_TYPE_ID
72      , RAW_COST
73      , BRDN_COST
74      , REVENUE
75      , BILL_RAW_COST
76      , BILL_BRDN_COST
77      , BILL_LABOR_RAW_COST
78      , BILL_LABOR_BRDN_COST
79      , BILL_LABOR_HRS
80      , EQUIPMENT_RAW_COST
81      , EQUIPMENT_BRDN_COST
82      , CAPITALIZABLE_RAW_COST
83      , CAPITALIZABLE_BRDN_COST
84      , LABOR_RAW_COST
85      , LABOR_BRDN_COST
86      , LABOR_HRS
87      , LABOR_REVENUE
88      , EQUIPMENT_HOURS
89      , BILLABLE_EQUIPMENT_HOURS
90      , SUP_INV_COMMITTED_COST
91      , PO_COMMITTED_COST
92      , PR_COMMITTED_COST
93      , OTH_COMMITTED_COST
94        , ACT_LABOR_HRS
95 	   , ACT_EQUIP_HRS
96 	   , ACT_LABOR_BRDN_COST
97 	   , ACT_EQUIP_BRDN_COST
98 	   , ACT_BRDN_COST
99 	   , ACT_RAW_COST
100 	   , ACT_REVENUE
101          , ACT_LABOR_RAW_COST
102          , ACT_EQUIP_RAW_COST
103 	   , ETC_LABOR_HRS
104 	   , ETC_EQUIP_HRS
105 	   , ETC_LABOR_BRDN_COST
106 	   , ETC_EQUIP_BRDN_COST
107 	   , ETC_BRDN_COST
108          , ETC_RAW_COST
109          , ETC_LABOR_RAW_COST
110          , ETC_EQUIP_RAW_COST
111      , CUSTOM1
112      , CUSTOM2
113      , CUSTOM3
114      , CUSTOM4
115      , CUSTOM5
116      , CUSTOM6
117      , CUSTOM7
118      , CUSTOM8
119      , CUSTOM9
120      , CUSTOM10
121      , CUSTOM11
122      , CUSTOM12
123      , CUSTOM13
124      , CUSTOM14
125      , CUSTOM15
126      , LINE_TYPE
127      , PLAN_TYPE_CODE    /* 4471527 */
128   )
129   SELECT * FROM (
130   SELECT
131       g_worker_id
132     , g_default_prg_level
133     , fact1.PROJECT_ID
134     , fact1.PROJECT_ORG_ID
135     , fact1.PROJECT_ORGANIZATION_ID
136     , fact1.PROJECT_ELEMENT_ID
137     , DECODE (
138                (grouping(qtr.ENT_YEAR_ID) || grouping(period.ENT_QTR_ID) || grouping(period.ENT_PERIOD_ID) )
139              , '000', period.ENT_PERIOD_ID
140              , '001', period.ENT_QTR_ID
141              , '011', qtr.ENT_YEAR_ID
142              , '111', -1 ) TIME_ID
143     , DECODE (
144                (grouping(qtr.ENT_YEAR_ID) || grouping(period.ENT_QTR_ID) || grouping(period.ENT_PERIOD_ID) )
145              , '000', 32
146              , '001', 64
147              , '011', 128
148              , '111', 2048 ) PERIOD_TYPE_ID
149     , DECODE (
150                grouping(qtr.ENT_YEAR_ID)
151              , 0 , 'E'
152              , 'A') CALENDAR_TYPE
153     , RBS_AGGR_LEVEL
154     , WBS_ROLLUP_FLAG
155     , PRG_ROLLUP_FLAG
156     , fact1.CURR_RECORD_TYPE_ID
157     , fact1.CURRENCY_CODE
158     , fact1.RBS_ELEMENT_ID
159     , fact1.RBS_VERSION_ID
160     , fact1.PLAN_VERSION_ID
161     , fact1.plan_type_id
162     , SUM(fact1.RAW_COST)
163     , SUM(fact1.BRDN_COST)
164     , SUM(fact1.REVENUE)
165     , SUM(fact1.BILL_RAW_COST)
166     , SUM(fact1.BILL_BRDN_COST )
167     , SUM(fact1.BILL_LABOR_RAW_COST)
168     , SUM(fact1.BILL_LABOR_BRDN_COST )
169     , SUM(fact1.BILL_LABOR_HRS )
170     , SUM(fact1.EQUIPMENT_RAW_COST )
171     , SUM(fact1.EQUIPMENT_BRDN_COST )
172     , SUM(fact1.CAPITALIZABLE_RAW_COST )
173     , SUM(fact1.CAPITALIZABLE_BRDN_COST )
174     , SUM(fact1.LABOR_RAW_COST )
175     , SUM(fact1.LABOR_BRDN_COST )
176     , SUM(fact1.LABOR_HRS)
177     , SUM(fact1.LABOR_REVENUE)
178     , SUM(fact1.EQUIPMENT_HOURS)
179     , SUM(fact1.BILLABLE_EQUIPMENT_HOURS)
180     , SUM(fact1.SUP_INV_COMMITTED_COST)
181     , SUM(fact1.PO_COMMITTED_COST   )
182     , SUM(fact1.PR_COMMITTED_COST  )
183     , SUM(fact1.OTH_COMMITTED_COST)
184        , SUM(fact1.ACT_LABOR_HRS)
185 	 , SUM(fact1.ACT_EQUIP_HRS)
186 	 , SUM(fact1.ACT_LABOR_BRDN_COST)
187 	 , SUM(fact1.ACT_EQUIP_BRDN_COST)
188 	 , SUM(fact1.ACT_BRDN_COST)
189 	 , SUM(fact1.ACT_RAW_COST)
190 	 , SUM(fact1.ACT_REVENUE)
191        , SUM(fact1.ACT_LABOR_RAW_COST)
192        , SUM(fact1.ACT_EQUIP_RAW_COST)
193 	 , SUM(fact1.ETC_LABOR_HRS)
194 	 , SUM(fact1.ETC_EQUIP_HRS)
195 	 , SUM(fact1.ETC_LABOR_BRDN_COST)
196 	 , SUM(fact1.ETC_EQUIP_BRDN_COST)
197 	 , SUM(fact1.ETC_BRDN_COST )
198        , SUM(fact1.ETC_RAW_COST )
199        , SUM(fact1.ETC_LABOR_RAW_COST)
200        , SUM(fact1.ETC_EQUIP_RAW_COST)
201     , SUM(CUSTOM1	)
202     , SUM(CUSTOM2	)
203     , SUM(CUSTOM3	)
204     , SUM(CUSTOM4	)
205     , SUM(CUSTOM5	)
206     , SUM(CUSTOM6	)
207     , SUM(CUSTOM7	)
208     , SUM(CUSTOM8	)
209     , SUM(CUSTOM9	)
210     , SUM(CUSTOM10	)
211     , SUM(CUSTOM11	)
212     , SUM(CUSTOM12	)
213     , SUM(CUSTOM13	)
214     , SUM(CUSTOM14	)
215     , SUM(CUSTOM15)
216     , 'ENTR'
217     , PLAN_TYPE_CODE     /* 4471527 */
218     FROM
219 	  PJI_FP_AGGR_PJP1 fact1
220       , pji_time_ENT_PERIOD period
221 	, pji_time_ENT_QTR    qtr
222     WHERE
223         fact1.calendar_type = 'E'
224     AND period.ENT_period_id = fact1.time_id
225     AND period.ENT_qtr_id = qtr.ENT_qtr_id
226     AND fact1.period_type_id = 32
227     AND fact1.worker_id = g_worker_id
228 	GROUP BY
229  	  fact1.PROJECT_ID
230     , fact1.PROJECT_ORG_ID
231     , fact1.PROJECT_ORGANIZATION_ID
232     , fact1.PROJECT_ELEMENT_ID
233     , fact1.calendar_type
234     , RBS_AGGR_LEVEL
235     , WBS_ROLLUP_FLAG
236     , PRG_ROLLUP_FLAG
237     , fact1.CURR_RECORD_TYPE_ID
238     , fact1.CURRENCY_CODE
239     , fact1.RBS_ELEMENT_ID
240     , fact1.RBS_VERSION_ID
241     , fact1.PLAN_VERSION_ID
242     , fact1.plan_type_id
243     , fact1.plan_type_code    /*4471527 */
244     , rollup (qtr.ENT_YEAR_ID,
245               period.ENT_QTR_ID,
246               period.ENT_PERIOD_ID))
247    WHERE period_type_id > 32
248      AND period_type_id < 2048;
249 
250 EXCEPTION
251   WHEN OTHERS THEN
252     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
253                              p_procedure_name => 'CREATE_FP_ENT_ROLLUP');
254     RAISE;
255 END;
256 
257 
258 PROCEDURE CREATE_FP_PA_PRI_ROLLUP IS
259 
260     -- l_last_update_date     date   := SYSDATE;
261     -- l_last_updated_by      NUMBER := FND_GLOBAL.USER_ID;
262     -- l_creation_date        date   := SYSDATE;
263     -- l_created_by           NUMBER := FND_GLOBAL.USER_ID;
264     -- l_last_update_login    NUMBER := FND_GLOBAL.LOGIN_ID;
265     l_calendar_type        VARCHAR2(15) := 'P';
266     l_line_type            VARCHAR2(15) := 'PAR';
267 
268 BEGIN
269 
270   g_worker_id  := PJI_PJP_FP_CURR_WRAP.GET_WORKER_ID;
271 
272   INSERT INTO pji_fp_aggr_pjp1
273   (
274          WORKER_ID
275        , PRG_LEVEL
276        , PROJECT_ID
277        , PROJECT_ORG_ID
278        , PROJECT_ORGANIZATION_ID
279        , PROJECT_ELEMENT_ID
280        , TIME_ID
281        , PERIOD_TYPE_ID
282        , CALENDAR_TYPE
283        , RBS_AGGR_LEVEL
284        , WBS_ROLLUP_FLAG
285        , PRG_ROLLUP_FLAG
286        , CURR_RECORD_TYPE_ID
287        , CURRENCY_CODE
288        , RBS_ELEMENT_ID
289        , RBS_VERSION_ID
290        , PLAN_VERSION_ID
291        , PLAN_TYPE_ID
292        , RAW_COST
293        , BRDN_COST
294        , REVENUE
295        , BILL_RAW_COST
296        , BILL_BRDN_COST
297        , BILL_LABOR_RAW_COST
298        , BILL_LABOR_BRDN_COST
299        , BILL_LABOR_HRS
300        , EQUIPMENT_RAW_COST
301        , EQUIPMENT_BRDN_COST
302        , CAPITALIZABLE_RAW_COST
303        , CAPITALIZABLE_BRDN_COST
304        , LABOR_RAW_COST
305        , LABOR_BRDN_COST
306        , LABOR_HRS
307        , LABOR_REVENUE
308        , EQUIPMENT_HOURS
309        , BILLABLE_EQUIPMENT_HOURS
310        , SUP_INV_COMMITTED_COST
311        , PO_COMMITTED_COST
312        , PR_COMMITTED_COST
313        , OTH_COMMITTED_COST
314        , ACT_LABOR_HRS
315 	   , ACT_EQUIP_HRS
316 	   , ACT_LABOR_BRDN_COST
317 	   , ACT_EQUIP_BRDN_COST
318 	   , ACT_BRDN_COST
319 	   , ACT_RAW_COST
320 	   , ACT_REVENUE
321          , ACT_LABOR_RAW_COST
322          , ACT_EQUIP_RAW_COST
323 	   , ETC_LABOR_HRS
324 	   , ETC_EQUIP_HRS
325 	   , ETC_LABOR_BRDN_COST
326 	   , ETC_EQUIP_BRDN_COST
327 	   , ETC_BRDN_COST
328          , ETC_RAW_COST
329          , ETC_LABOR_RAW_COST
330          , ETC_EQUIP_RAW_COST
331        , CUSTOM1
332        , CUSTOM2
333        , CUSTOM3
334        , CUSTOM4
335        , CUSTOM5
336        , CUSTOM6
337        , CUSTOM7
338        , CUSTOM8
339        , CUSTOM9
340        , CUSTOM10
341        , CUSTOM11
342        , CUSTOM12
343        , CUSTOM13
344        , CUSTOM14
345        , CUSTOM15
346        , LINE_TYPE
347        , PLAN_TYPE_CODE    /* 4471527 */
348        -- , RATE_DANGLING_FLAG
349        -- , TIME_DANGLING_FLAG
350        -- , START_DATE
351        -- , END_DATE
352     )
353   SELECT * FROM (
354   SELECT
355        g_worker_id -- partition id
356     , g_default_prg_level
357     , fact1.PROJECT_ID
358     , fact1.PROJECT_ORG_ID
359     , fact1.PROJECT_ORGANIZATION_ID
360     , fact1.PROJECT_ELEMENT_ID
361     , DECODE (
362                (grouping(qtr.CAL_YEAR_ID) || grouping(period.CAL_QTR_ID) || grouping(period.CAL_PERIOD_ID) )
363              , '000', period.CAL_PERIOD_ID
364              , '001', period.CAL_QTR_ID
365              , '011', qtr.CAL_YEAR_ID
366              , '111', -1 ) TIME_ID
367     , DECODE (
368                (grouping(qtr.CAL_YEAR_ID) || grouping(period.CAL_QTR_ID) || grouping(period.CAL_PERIOD_ID) )
369              , '000', 32
370              , '001', 64
371              , '011', 128
372              , '111', 2048 ) PERIOD_TYPE_ID
373     , DECODE (
374                grouping(qtr.CAL_YEAR_ID)
375              , 0 , l_calendar_type
376              , 'A') CALENDAR_TYPE
377     , fact1.RBS_AGGR_LEVEL
378     , fact1.WBS_ROLLUP_FLAG
379     , fact1.PRG_ROLLUP_FLAG
380     , fact1.CURR_RECORD_TYPE_ID
381     , fact1.CURRENCY_CODE
382     , fact1.RBS_ELEMENT_ID
383     , fact1.RBS_VERSION_ID
384     , fact1.PLAN_VERSION_ID
385 	, fact1.PLAN_TYPE_ID
386     , SUM(fact1.RAW_COST)  RAW_COST
387     , SUM(fact1.BRDN_COST)  BRDN_COST
388     , SUM(fact1.REVENUE)  REVENUE
389     , SUM(fact1.BILL_RAW_COST)  BILL_RAW_COST
390     , SUM(fact1.BILL_BRDN_COST )  BILL_BRDN_COST
391     , SUM(fact1.BILL_LABOR_RAW_COST)  BILL_LABOR_RAW_COST
392     , SUM(fact1.BILL_LABOR_BRDN_COST )  BILL_LABOR_BRDN_COST
393     , SUM(fact1.BILL_LABOR_HRS )  BILL_LABOR_HRS
394     , SUM(fact1.EQUIPMENT_RAW_COST )  EQUIPMENT_RAW_COST
395     , SUM(fact1.EQUIPMENT_BRDN_COST ) EQUIPMENT_BRDN_COST
396     , SUM(fact1.CAPITALIZABLE_RAW_COST ) CAPITALIZABLE_RAW_COST
397     , SUM(fact1.CAPITALIZABLE_BRDN_COST )   CAPITALIZABLE_BRDN_COST
398     , SUM(fact1.LABOR_RAW_COST )  LABOR_RAW_COST
399     , SUM(fact1.LABOR_BRDN_COST ) LABOR_BRDN_COST
400     , SUM(fact1.LABOR_HRS)  LABOR_HRS
401     , SUM(fact1.LABOR_REVENUE)    LABOR_REVENUE
402     , SUM(fact1.EQUIPMENT_HOURS)  EQUIPMENT_HOURS
403     , SUM(fact1.BILLABLE_EQUIPMENT_HOURS)  BILLABLE_EQUIPMENT_HOURS
404     , SUM(fact1.SUP_INV_COMMITTED_COST)   SUP_INV_COMMITTED_COST
405     , SUM(fact1.PO_COMMITTED_COST   )  PO_COMMITTED_COST
406     , SUM(fact1.PR_COMMITTED_COST  ) PR_COMMITTED_COST
407     , SUM(fact1.OTH_COMMITTED_COST)  OTH_COMMITTED_COST
408        , SUM(fact1.ACT_LABOR_HRS)
409 	 , SUM(fact1.ACT_EQUIP_HRS)
410 	 , SUM(fact1.ACT_LABOR_BRDN_COST)
411 	 , SUM(fact1.ACT_EQUIP_BRDN_COST)
412 	 , SUM(fact1.ACT_BRDN_COST)
413 	 , SUM(fact1.ACT_RAW_COST)
414 	 , SUM(fact1.ACT_REVENUE)
415        , SUM(fact1.ACT_LABOR_RAW_COST)
416        , SUM(fact1.ACT_EQUIP_RAW_COST)
417 	 , SUM(fact1.ETC_LABOR_HRS)
418 	 , SUM(fact1.ETC_EQUIP_HRS)
419 	 , SUM(fact1.ETC_LABOR_BRDN_COST)
420 	 , SUM(fact1.ETC_EQUIP_BRDN_COST)
421 	 , SUM(fact1.ETC_BRDN_COST )
422        , SUM(fact1.ETC_RAW_COST )
423        , SUM(fact1.ETC_LABOR_RAW_COST)
424        , SUM(fact1.ETC_EQUIP_RAW_COST)
425     , SUM(CUSTOM1	) CUSTOM1
426     , SUM(CUSTOM2	) CUSTOM2
427     , SUM(CUSTOM3	) CUSTOM3
428     , SUM(CUSTOM4	) CUSTOM4
429     , SUM(CUSTOM5	) CUSTOM5
430     , SUM(CUSTOM6	) CUSTOM6
431     , SUM(CUSTOM7	) CUSTOM7
432     , SUM(CUSTOM8	) CUSTOM8
433     , SUM(CUSTOM9	) CUSTOM9
434     , SUM(CUSTOM10	) CUSTOM10
435     , SUM(CUSTOM11	) CUSTOM11
436     , SUM(CUSTOM12	) CUSTOM12
437     , SUM(CUSTOM13	) CUSTOM13
438     , SUM(CUSTOM14	) CUSTOM14
439     , SUM(CUSTOM15) CUSTOM15
440 	, l_line_type line_type
441    , fact1.plan_type_code   plan_type_code   /* 4471527  */
442     FROM
443 	pji_fp_aggr_pjp1 fact1
444     , pji_time_CAL_PERIOD period
445     , pji_time_CAL_QTR    qtr
446     WHERE
447         fact1.calendar_type = 'P'
448     AND period.cal_period_id = fact1.time_id
449     AND period.cal_qtr_id = qtr.cal_qtr_id
450     AND fact1.period_type_id = 32 -- > 0 -- <>  -1
451     AND fact1.worker_id = g_worker_id
452    GROUP BY
453 	fact1.PROJECT_ID
454     , fact1.PROJECT_ORGANIZATION_ID
455     , fact1.PROJECT_ORG_ID
456     , fact1.PROJECT_ELEMENT_ID
457     , rollup (qtr.CAL_YEAR_ID,
458               period.CAL_QTR_ID,
459               period.CAL_PERIOD_ID)
460     , fact1.calendar_type
461     , fact1.RBS_AGGR_LEVEL
462     , fact1.WBS_ROLLUP_FLAG
463     , fact1.PRG_ROLLUP_FLAG
464     , fact1.CURR_RECORD_TYPE_ID
465     , fact1.CURRENCY_CODE
466     , fact1.RBS_ELEMENT_ID
467     , fact1.RBS_VERSION_ID
468     , fact1.PLAN_VERSION_ID
469     , fact1.PLAN_TYPE_ID
470     , fact1.PLAN_TYPE_CODE )    /* 4471527 */
471     WHERE period_type_id > 32
472      AND period_type_id < 2048;
473 
474 EXCEPTION
475   WHEN OTHERS THEN
476     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
477                              p_procedure_name => 'CREATE_FP_PA_PRI_ROLLUP');
478     RAISE;
479 END;
480 
481 
482 PROCEDURE CREATE_FP_GL_PRI_ROLLUP IS
483     l_last_update_login    NUMBER := FND_GLOBAL.LOGIN_ID;
484     l_calendar_type        VARCHAR2(15) := 'G';
485     l_line_type            VARCHAR2(15) := 'GLR';
486 
487 BEGIN
488 
489   g_worker_id  := PJI_PJP_FP_CURR_WRAP.GET_WORKER_ID;
490 
491   INSERT INTO pji_fp_aggr_pjp1
492   (
493        WORKER_ID
494      , PRG_LEVEL
495      , PROJECT_ID
496      , PROJECT_ORG_ID
497      , PROJECT_ORGANIZATION_ID
498      , PROJECT_ELEMENT_ID
499      , TIME_ID
500      , PERIOD_TYPE_ID
501      , CALENDAR_TYPE
502      , RBS_AGGR_LEVEL
503      , WBS_ROLLUP_FLAG
504      , PRG_ROLLUP_FLAG
505      , CURR_RECORD_TYPE_ID
506      , CURRENCY_CODE
507      , RBS_ELEMENT_ID
508      , RBS_VERSION_ID
509      , PLAN_VERSION_ID
510      , PLAN_TYPE_ID
511      , RAW_COST
512      , BRDN_COST
513      , REVENUE
514      , BILL_RAW_COST
515      , BILL_BRDN_COST
516      , BILL_LABOR_RAW_COST
517      , BILL_LABOR_BRDN_COST
518      , BILL_LABOR_HRS
519      , EQUIPMENT_RAW_COST
520      , EQUIPMENT_BRDN_COST
521      , CAPITALIZABLE_RAW_COST
522      , CAPITALIZABLE_BRDN_COST
523      , LABOR_RAW_COST
524      , LABOR_BRDN_COST
525      , LABOR_HRS
526      , LABOR_REVENUE
527      , EQUIPMENT_HOURS
528      , BILLABLE_EQUIPMENT_HOURS
529      , SUP_INV_COMMITTED_COST
530      , PO_COMMITTED_COST
531      , PR_COMMITTED_COST
532      , OTH_COMMITTED_COST
533        , ACT_LABOR_HRS
534 	   , ACT_EQUIP_HRS
535 	   , ACT_LABOR_BRDN_COST
536 	   , ACT_EQUIP_BRDN_COST
537 	   , ACT_BRDN_COST
538 	   , ACT_RAW_COST
539 	   , ACT_REVENUE
540          , ACT_LABOR_RAW_COST
541          , ACT_EQUIP_RAW_COST
542 	   , ETC_LABOR_HRS
543 	   , ETC_EQUIP_HRS
544 	   , ETC_LABOR_BRDN_COST
545 	   , ETC_EQUIP_BRDN_COST
546 	   , ETC_BRDN_COST
547          , ETC_RAW_COST
548          , ETC_LABOR_RAW_COST
549          , ETC_EQUIP_RAW_COST
550      , CUSTOM1
551      , CUSTOM2
552      , CUSTOM3
553      , CUSTOM4
554      , CUSTOM5
555      , CUSTOM6
556      , CUSTOM7
557      , CUSTOM8
558      , CUSTOM9
559      , CUSTOM10
560      , CUSTOM11
561      , CUSTOM12
562      , CUSTOM13
563      , CUSTOM14
564      , CUSTOM15
565      , LINE_TYPE
566      , PLAN_TYPE_CODE    /* 4471527 */
567   )
568   SELECT * FROM (
569   SELECT
570     -- GROUPING(qtr.CAL_YEAR_ID)  gy
571     -- , GROUPING(period.CAL_QTR_ID)  gq
572     -- , GROUPING(period.CAL_PERIOD_ID)  gp
573 	-- ,
574       g_worker_id
575     , g_default_prg_level
576     , fact1.PROJECT_ID
577     , fact1.PROJECT_ORG_ID
578     , fact1.PROJECT_ORGANIZATION_ID
579     -- -- -- , fact1.PARTITION_ID
580     , fact1.PROJECT_ELEMENT_ID
581     , DECODE (
582                (grouping(qtr.CAL_YEAR_ID) || grouping(period.CAL_QTR_ID) || grouping(period.CAL_PERIOD_ID) )
586              , '111', -1 ) TIME_ID
583              , '000', period.CAL_PERIOD_ID
584              , '001', period.CAL_QTR_ID
585              , '011', qtr.CAL_YEAR_ID
587     , DECODE (
588                (grouping(qtr.CAL_YEAR_ID) || grouping(period.CAL_QTR_ID) || grouping(period.CAL_PERIOD_ID) )
589              , '000', 32
590              , '001', 64
591              , '011', 128
592              , '111', 2048 ) PERIOD_TYPE_ID
593     , DECODE (
594                grouping(qtr.CAL_YEAR_ID)
595              , 0 , l_calendar_type
596              , 'A') CALENDAR_TYPE
597     , fact1.RBS_AGGR_LEVEL
598     , fact1.WBS_ROLLUP_FLAG
599     , fact1.PRG_ROLLUP_FLAG
600     , fact1.CURR_RECORD_TYPE_ID
601     , fact1.CURRENCY_CODE
602     , fact1.RBS_ELEMENT_ID
603     , fact1.RBS_VERSION_ID
604     , fact1.PLAN_VERSION_ID
605 	, fact1.PLAN_TYPE_ID
606     , SUM(fact1.RAW_COST)  RAW_COST
607     , SUM(fact1.BRDN_COST)  BRDN_COST
608     , SUM(fact1.REVENUE)  REVENUE
609     , SUM(fact1.BILL_RAW_COST)  BILL_RAW_COST
610     , SUM(fact1.BILL_BRDN_COST )  BILL_BRDN_COST
611     , SUM(fact1.BILL_LABOR_RAW_COST)  BILL_LABOR_RAW_COST
612     , SUM(fact1.BILL_LABOR_BRDN_COST )  BILL_LABOR_BRDN_COST
613     , SUM(fact1.BILL_LABOR_HRS )  BILL_LABOR_HRS
614     , SUM(fact1.EQUIPMENT_RAW_COST )  EQUIPMENT_RAW_COST
615     , SUM(fact1.EQUIPMENT_BRDN_COST ) EQUIPMENT_BRDN_COST
616     , SUM(fact1.CAPITALIZABLE_RAW_COST ) CAPITALIZABLE_RAW_COST
617     , SUM(fact1.CAPITALIZABLE_BRDN_COST )   CAPITALIZABLE_BRDN_COST
618     , SUM(fact1.LABOR_RAW_COST )  LABOR_RAW_COST
619     , SUM(fact1.LABOR_BRDN_COST ) LABOR_BRDN_COST
620     , SUM(fact1.LABOR_HRS)  LABOR_HRS
621     , SUM(fact1.LABOR_REVENUE)    LABOR_REVENUE
622     , SUM(fact1.EQUIPMENT_HOURS)  EQUIPMENT_HOURS
623     , SUM(fact1.BILLABLE_EQUIPMENT_HOURS)  BILLABLE_EQUIPMENT_HOURS
624     , SUM(fact1.SUP_INV_COMMITTED_COST)   SUP_INV_COMMITTED_COST
625     , SUM(fact1.PO_COMMITTED_COST   )  PO_COMMITTED_COST
626     , SUM(fact1.PR_COMMITTED_COST  ) PR_COMMITTED_COST
627     , SUM(fact1.OTH_COMMITTED_COST)  OTH_COMMITTED_COST
628        , SUM(fact1.ACT_LABOR_HRS)
629 	 , SUM(fact1.ACT_EQUIP_HRS)
630 	 , SUM(fact1.ACT_LABOR_BRDN_COST)
631 	 , SUM(fact1.ACT_EQUIP_BRDN_COST)
632 	 , SUM(fact1.ACT_BRDN_COST)
633 	 , SUM(fact1.ACT_RAW_COST)
634 	 , SUM(fact1.ACT_REVENUE)
635        , SUM(fact1.ACT_LABOR_RAW_COST)
636        , SUM(fact1.ACT_EQUIP_RAW_COST)
637 	 , SUM(fact1.ETC_LABOR_HRS)
638 	 , SUM(fact1.ETC_EQUIP_HRS)
639 	 , SUM(fact1.ETC_LABOR_BRDN_COST)
640 	 , SUM(fact1.ETC_EQUIP_BRDN_COST)
641 	 , SUM(fact1.ETC_BRDN_COST )
642        , SUM(fact1.ETC_RAW_COST )
643        , SUM(fact1.ETC_LABOR_RAW_COST)
644        , SUM(fact1.ETC_EQUIP_RAW_COST)
645     , SUM(CUSTOM1	) CUSTOM1
646     , SUM(CUSTOM2	) CUSTOM2
647     , SUM(CUSTOM3	) CUSTOM3
648     , SUM(CUSTOM4	) CUSTOM4
649     , SUM(CUSTOM5	) CUSTOM5
650     , SUM(CUSTOM6	) CUSTOM6
651     , SUM(CUSTOM7	) CUSTOM7
652     , SUM(CUSTOM8	) CUSTOM8
653     , SUM(CUSTOM9	) CUSTOM9
654     , SUM(CUSTOM10	) CUSTOM10
655     , SUM(CUSTOM11	) CUSTOM11
656     , SUM(CUSTOM12	) CUSTOM12
657     , SUM(CUSTOM13	) CUSTOM13
658     , SUM(CUSTOM14	) CUSTOM14
659     , SUM(CUSTOM15) CUSTOM15
660     , l_line_type
661     , fact1.PLAN_TYPE_CODE PLAN_TYPE_CODE   /* 4471527 */
662     FROM
663 	pji_fp_aggr_pjp1 fact1
664     , pji_time_CAL_PERIOD period
665     , pji_time_CAL_QTR    qtr
666     WHERE
667         fact1.calendar_type = l_calendar_type
668     AND period.cal_period_id = fact1.time_id
669     AND period.cal_qtr_id = qtr.cal_qtr_id
670     AND fact1.period_type_id = 32 -- <>  1
671     AND fact1.worker_id = g_worker_id
672    GROUP BY
673 	fact1.PROJECT_ID
674     , fact1.PROJECT_ORGANIZATION_ID
675     , fact1.PROJECT_ORG_ID
676     , fact1.PROJECT_ELEMENT_ID
677     , rollup (qtr.CAL_YEAR_ID,
678               period.CAL_QTR_ID,
679               period.CAL_PERIOD_ID)
680     , fact1.calendar_type
681     , fact1.RBS_AGGR_LEVEL
682     , fact1.WBS_ROLLUP_FLAG
683     , fact1.PRG_ROLLUP_FLAG
684     , fact1.CURR_RECORD_TYPE_ID
685     , fact1.CURRENCY_CODE
686     , fact1.RBS_ELEMENT_ID
687     , fact1.RBS_VERSION_ID
688     , fact1.PLAN_VERSION_ID
689     , fact1.PLAN_TYPE_ID
690     , fact1.PLAN_TYPE_CODE )    /* 4471527 */
691    WHERE period_type_id > 32
692      AND period_type_id < 2048;
693 
694 
695 EXCEPTION
696   WHEN OTHERS THEN
697     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
698                              p_procedure_name => 'CREATE_FP_GL_PRI_ROLLUP');
699     RAISE;
700 END;
701 
702 
703 PROCEDURE CREATE_FP_ALL_T_PRI_ROLLUP (
704   p_calendar_type IN VARCHAR2 := 'G' ) IS
705 
706   l_line_type VARCHAR2(10) := NULL;
707   l_plan_type_id              Number; --Bug 6381284
708 
709 BEGIN
710 
711   g_worker_id  := PJI_PJP_FP_CURR_WRAP.GET_WORKER_ID;
712 
713   /* Added calendar type 'C' for bug 6381284 */
714   IF (p_calendar_type NOT IN ('P', 'G', 'C') ) THEN
715     RETURN;
716   ELSE
717     IF (p_calendar_type = 'P') THEN
718       l_line_type := 'PAR';
719     ELSIF (p_calendar_type = 'G') THEN
720       l_line_type := 'GLR';
721     ELSE
722       l_line_type := 'CLR';
723     END IF;
724   END IF;
725 
726   SELECT fin_plan_type_id
730 
727         INTO l_plan_type_id
728   FROM PA_FIN_PLAN_TYPES_B
729   WHERE USE_FOR_WORKPLAN_FLAG='Y';
731   /*IF (p_calendar_type NOT IN ('P', 'G') ) THEN
732     RETURN;
733   ELSE
734     IF (p_calendar_type = 'P') THEN
735       l_line_type := 'PAR';
736     ELSE
737       l_line_type := 'GLR';
738     END IF;
739   END IF;*/
740 
741   /*
742     INSERT INTO PJI_FM_EXTR_PLNVER4
743     (
744       WORKER_ID                ,
745       PROJECT_ID               ,
746       PLAN_VERSION_ID          ,
747       WBS_STRUCT_VERSION_ID    ,
748       RBS_STRUCT_VERSION_ID    ,
749       PLAN_TYPE_CODE           ,
750       PLAN_TYPE_ID             ,
751       TIME_PHASED_TYPE_CODE    ,
752       TIME_DANGLING_FLAG       ,
753       RATE_DANGLING_FLAG       ,
754       PROJECT_TYPE_CLASS       ,
755       WP_FLAG                  ,
756 	CURRENT_FLAG             ,
757 	ORIGINAL_FLAG            ,
758 	CURRENT_ORIGINAL_FLAG    ,
759 	BASELINED_FLAG        	 ,
760 	SECONDARY_RBS_FLAG       ,
761       LP_FLAG
762     )
763      (
764 	 SELECT
765             g_worker_id
766           , map.project_id                      project_id
767           , -1                                 plan_version_id
768           , whd.wbs_version_id                 wbs_struct_version_id
769           , rhd.rbs_version_id                 rbs_struct_version_id -- extract for this rbs version id
770           , NULL                               plan_type_code
771           , TO_NUMBER(NULL)                    plan_type_id
772           , 'G'                               time_phased_type_code
773           , NULL                             time_dangling_flag   -- to be used for dangling check.
774           , NULL                             rate_dangling_flag   -- to be used for dangling check.
775           , NULL                             PROJECT_TYPE_CLASS
776           , NULL                              is_wp_flag
777           , NULL                              current_flag
778           , NULL                              original_flag
779           , NULL                              current_original_flag
780           , NULL                              baselined_flag
781           , NULL                              SECONDARY_RBS_FLAG
782           , 'Y'                               lp_flag
783       FROM
784            pji_pjp_proj_batch_map map
785 		 , pji_pjp_rbs_header rhd
786 		 , pji_pjp_wbs_header whd
787       WHERE 1=1
788           -- AND map.PROJECT_ACTIVE_FLAG = 'Y'
789           AND map.worker_id = g_worker_id
790 		  AND whd.plan_version_id = -1
791 		  AND rhd.plan_version_id = -1
792 		  AND whd.project_id = map.project_id
793 		  AND rhd.project_id = map.project_id);
794   */
795 
796 
797  INSERT INTO PJI_FP_AGGR_PJP1
798   (
799        WORKER_ID
800      , PRG_LEVEL
801      , PROJECT_ID
802      , PROJECT_ORG_ID
803      , PROJECT_ORGANIZATION_ID
804      , PROJECT_ELEMENT_ID
805      , TIME_ID
806      , PERIOD_TYPE_ID
807      , CALENDAR_TYPE
808      , RBS_AGGR_LEVEL
809      , WBS_ROLLUP_FLAG
810      , PRG_ROLLUP_FLAG
811      , CURR_RECORD_TYPE_ID
812      , CURRENCY_CODE
813      , RBS_ELEMENT_ID
814      , RBS_VERSION_ID
815      , PLAN_VERSION_ID
816      , PLAN_TYPE_ID
817      , RAW_COST
818      , BRDN_COST
819      , REVENUE
820      , BILL_RAW_COST
821      , BILL_BRDN_COST
822      , BILL_LABOR_RAW_COST
823      , BILL_LABOR_BRDN_COST
824      , BILL_LABOR_HRS
825      , EQUIPMENT_RAW_COST
826      , EQUIPMENT_BRDN_COST
827      , CAPITALIZABLE_RAW_COST
828      , CAPITALIZABLE_BRDN_COST
829      , LABOR_RAW_COST
830      , LABOR_BRDN_COST
831      , LABOR_HRS
832      , LABOR_REVENUE
833      , EQUIPMENT_HOURS
834      , BILLABLE_EQUIPMENT_HOURS
835      , SUP_INV_COMMITTED_COST
836      , PO_COMMITTED_COST
837      , PR_COMMITTED_COST
838      , OTH_COMMITTED_COST
839        , ACT_LABOR_HRS
840 	   , ACT_EQUIP_HRS
841 	   , ACT_LABOR_BRDN_COST
842 	   , ACT_EQUIP_BRDN_COST
843 	   , ACT_BRDN_COST
844 	   , ACT_RAW_COST
845 	   , ACT_REVENUE
846          , ACT_LABOR_RAW_COST
847          , ACT_EQUIP_RAW_COST
848 	   , ETC_LABOR_HRS
849 	   , ETC_EQUIP_HRS
850 	   , ETC_LABOR_BRDN_COST
851 	   , ETC_EQUIP_BRDN_COST
852 	   , ETC_BRDN_COST
853          , ETC_RAW_COST
854          , ETC_LABOR_RAW_COST
855          , ETC_EQUIP_RAW_COST
856      , CUSTOM1
857      , CUSTOM2
858      , CUSTOM3
859      , CUSTOM4
860      , CUSTOM5
861      , CUSTOM6
862      , CUSTOM7
863      , CUSTOM8
864      , CUSTOM9
865      , CUSTOM10
866      , CUSTOM11
867      , CUSTOM12
868      , CUSTOM13
869      , CUSTOM14
870      , CUSTOM15
871      , LINE_TYPE
872      , PLAN_TYPE_CODE   /* 4471527 */
873   )
874   SELECT * FROM (
875   SELECT
876     -- GROUPING(qtr.CAL_YEAR_ID)  gy
877     -- , GROUPING(period.CAL_QTR_ID)  gq
878     -- , GROUPING(period.CAL_PERIOD_ID)  gp
879 	-- ,
880       g_worker_id
881     , g_default_prg_level
885     -- -- -- , fact1.PARTITION_ID
882     , fact1.PROJECT_ID
883     , fact1.PROJECT_ORG_ID
884     , fact1.PROJECT_ORGANIZATION_ID
886     , fact1.PROJECT_ELEMENT_ID
887     , DECODE (
888                (grouping(qtr.CAL_YEAR_ID) || grouping(period.CAL_QTR_ID) || grouping(period.CAL_PERIOD_ID) )
889              , '000', period.CAL_PERIOD_ID
890              , '001', period.CAL_QTR_ID
891              , '011', qtr.CAL_YEAR_ID
892              , '111', -1 ) TIME_ID
893     , DECODE (
894                (grouping(qtr.CAL_YEAR_ID) || grouping(period.CAL_QTR_ID) || grouping(period.CAL_PERIOD_ID) )
895              , '000', 32
896              , '001', 64
897              , '011', 128
898              , '111', 2048 ) PERIOD_TYPE_ID
899     , DECODE (
900                grouping(qtr.CAL_YEAR_ID)
901              , 0 ,p_calendar_type
902              , 'A') CALENDAR_TYPE
903     , fact1.RBS_AGGR_LEVEL
904     , fact1.WBS_ROLLUP_FLAG
905     , fact1.PRG_ROLLUP_FLAG
906     , fact1.CURR_RECORD_TYPE_ID
907     , fact1.CURRENCY_CODE
908     , fact1.RBS_ELEMENT_ID
909     , fact1.RBS_VERSION_ID
910     , fact1.PLAN_VERSION_ID
911 	, fact1.PLAN_TYPE_ID
912     , SUM(fact1.RAW_COST)  RAW_COST
913     , SUM(fact1.BRDN_COST)  BRDN_COST
914     , SUM(fact1.REVENUE)  REVENUE
915     , SUM(fact1.BILL_RAW_COST)  BILL_RAW_COST
916     , SUM(fact1.BILL_BRDN_COST )  BILL_BRDN_COST
917     , SUM(fact1.BILL_LABOR_RAW_COST)  BILL_LABOR_RAW_COST
918     , SUM(fact1.BILL_LABOR_BRDN_COST )  BILL_LABOR_BRDN_COST
919     , SUM(fact1.BILL_LABOR_HRS )  BILL_LABOR_HRS
920     , SUM(fact1.EQUIPMENT_RAW_COST )  EQUIPMENT_RAW_COST
921     , SUM(fact1.EQUIPMENT_BRDN_COST ) EQUIPMENT_BRDN_COST
922     , SUM(fact1.CAPITALIZABLE_RAW_COST ) CAPITALIZABLE_RAW_COST
923     , SUM(fact1.CAPITALIZABLE_BRDN_COST )   CAPITALIZABLE_BRDN_COST
924     , SUM(fact1.LABOR_RAW_COST )  LABOR_RAW_COST
925     , SUM(fact1.LABOR_BRDN_COST ) LABOR_BRDN_COST
926     , SUM(fact1.LABOR_HRS)  LABOR_HRS
927     , SUM(fact1.LABOR_REVENUE)    LABOR_REVENUE
928     , SUM(fact1.EQUIPMENT_HOURS)  EQUIPMENT_HOURS
929     , SUM(fact1.BILLABLE_EQUIPMENT_HOURS)  BILLABLE_EQUIPMENT_HOURS
930     , SUM(fact1.SUP_INV_COMMITTED_COST)   SUP_INV_COMMITTED_COST
931     , SUM(fact1.PO_COMMITTED_COST   )  PO_COMMITTED_COST
932     , SUM(fact1.PR_COMMITTED_COST  ) PR_COMMITTED_COST
933     , SUM(fact1.OTH_COMMITTED_COST)  OTH_COMMITTED_COST
934        , SUM(fact1.ACT_LABOR_HRS)
935 	 , SUM(fact1.ACT_EQUIP_HRS)
936 	 , SUM(fact1.ACT_LABOR_BRDN_COST)
937 	 , SUM(fact1.ACT_EQUIP_BRDN_COST)
938 	 , SUM(fact1.ACT_BRDN_COST)
939 	 , SUM(fact1.ACT_RAW_COST)
940 	 , SUM(fact1.ACT_REVENUE)
941        , SUM(fact1.ACT_LABOR_RAW_COST)
942        , SUM(fact1.ACT_EQUIP_RAW_COST)
943 	 , SUM(fact1.ETC_LABOR_HRS)
944 	 , SUM(fact1.ETC_EQUIP_HRS)
945 	 , SUM(fact1.ETC_LABOR_BRDN_COST)
946 	 , SUM(fact1.ETC_EQUIP_BRDN_COST)
947 	 , SUM(fact1.ETC_BRDN_COST )
948        , SUM(fact1.ETC_RAW_COST )
949        , SUM(fact1.ETC_LABOR_RAW_COST)
950        , SUM(fact1.ETC_EQUIP_RAW_COST)
951     , SUM(CUSTOM1	) CUSTOM1
952     , SUM(CUSTOM2	) CUSTOM2
953     , SUM(CUSTOM3	) CUSTOM3
954     , SUM(CUSTOM4	) CUSTOM4
955     , SUM(CUSTOM5	) CUSTOM5
956     , SUM(CUSTOM6	) CUSTOM6
957     , SUM(CUSTOM7	) CUSTOM7
958     , SUM(CUSTOM8	) CUSTOM8
959     , SUM(CUSTOM9	) CUSTOM9
960     , SUM(CUSTOM10	) CUSTOM10
961     , SUM(CUSTOM11	) CUSTOM11
962     , SUM(CUSTOM12	) CUSTOM12
963     , SUM(CUSTOM13	) CUSTOM13
964     , SUM(CUSTOM14	) CUSTOM14
965     , SUM(CUSTOM15) CUSTOM15
966     ,l_line_type
967     , fact1.PLAN_TYPE_CODE PLAN_TYPE_CODE   /* 4471527 */
968     FROM
969 	PJI_FP_AGGR_PJP1 fact1
970     , pji_time_CAL_PERIOD period
971     , pji_time_CAL_QTR    qtr
972     , pji_fm_extr_plnver4 ver
973     WHERE
974         -- cal type changes for bug 6381284
975         --fact1.calendar_type = p_calendar_type
976         fact1.calendar_type in ( p_calendar_type
977   				 , DECODE (p_calendar_type ,'C','G','X')
978 				   , DECODE (p_calendar_type ,'C',
979 				             DECODE(ver.plan_version_id,-1,'X',-3,'X',-4,'X',
980 				                    DECODE(fact1.plan_type_id,l_plan_type_id,'P','X')),'X'))
981     AND period.cal_period_id = fact1.time_id
982     AND period.cal_qtr_id = qtr.cal_qtr_id
983     AND fact1.period_type_id = 32 -- <>  -1
984     AND ver.time_phased_type_code IN ('P', 'G') -- If non time phased plan, non need to create 2048 slice separately.
985     AND ver.project_id = fact1.project_id
986     AND ver.plan_version_id = fact1.plan_version_id
987     AND ver.plan_type_code = fact1.plan_type_code   /* 4471527*/
988     AND fact1.worker_id = g_worker_id
989     AND ver.worker_id = g_worker_id
990     AND fact1.rbs_version_id = NVL(ver.rbs_struct_version_id, -1)
991    GROUP BY
992 	fact1.PROJECT_ID
993     , fact1.PROJECT_ORGANIZATION_ID
994     , fact1.PROJECT_ORG_ID
995     -- -- -- , fact1.PARTITION_ID
996     , fact1.PROJECT_ELEMENT_ID
997     , rollup (qtr.CAL_YEAR_ID,
998               period.CAL_QTR_ID,
999               period.CAL_PERIOD_ID)
1000     , fact1.calendar_type
1001     , fact1.RBS_AGGR_LEVEL
1002     , fact1.WBS_ROLLUP_FLAG
1003     , fact1.PRG_ROLLUP_FLAG
1004     , fact1.CURR_RECORD_TYPE_ID
1005     , fact1.CURRENCY_CODE
1006     , fact1.RBS_ELEMENT_ID
1007     , fact1.RBS_VERSION_ID
1008     , fact1.PLAN_VERSION_ID
1009     , fact1.PLAN_TYPE_ID
1010     , fact1.PLAN_TYPE_CODE )       /*4471527 */
1014    -- DELETE FROM PJI_FM_EXTR_PLNVER4
1011    WHERE period_type_id = 2048;
1012 
1013 
1015    -- WHERE plan_version_id = -1
1016    --  AND worker_id = g_worker_id;
1017 
1018 EXCEPTION
1019   WHEN OTHERS THEN
1020     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
1021                              p_procedure_name => 'CREATE_FP_ALL_T_PRI_ROLLUP');
1022     RAISE;
1023 END;
1024 
1025 
1026 PROCEDURE CREATE_FP_ALLT_PRI_AGGREGATE IS
1027 BEGIN
1028  NULL;
1029 EXCEPTION
1030   WHEN OTHERS THEN
1031     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
1032                              p_procedure_name => 'CREATE_FP_ALLT_PRI_AGGREGATE');
1033     RAISE;
1034 END;
1035 
1036 
1037 PROCEDURE CREATE_FP_ALLT_SEC_AGGREGATE IS
1038 BEGIN
1039 
1040   NULL;
1041 
1042 EXCEPTION
1043   WHEN OTHERS THEN
1044     RAISE;
1045 END;
1046 
1047 
1048 PROCEDURE CREATE_FP_PA_SEC_ROLLUP IS
1049 BEGIN
1050   NULL;
1051 EXCEPTION
1052   WHEN OTHERS THEN
1053     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
1054                              p_procedure_name => 'CREATE_FP_PA_SEC_ROLLUP');
1055     RAISE;
1056 END;
1057 
1058 
1059 PROCEDURE CREATE_FP_GL_SEC_ROLLUP IS
1060 BEGIN
1061 
1062   NULL;
1063 
1064 EXCEPTION
1065   WHEN OTHERS THEN
1066     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
1067                              p_procedure_name => 'CREATE_FP_GL_SEC_ROLLUP');
1068     RAISE;
1069 END;
1070 
1071 
1072 PROCEDURE CREATE_FP_ENT_SEC_ROLLUP IS
1073 BEGIN
1074   NULL;
1075 EXCEPTION
1076   WHEN OTHERS THEN
1077     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
1078                              p_procedure_name => 'CREATE_FP_ENT_SEC_ROLLUP');
1079     RAISE;
1080 END;
1081 
1082 
1083 PROCEDURE CREATE_AC_PA_ROLLUP IS
1084 BEGIN
1085 
1086     g_worker_id  := PJI_PJP_FP_CURR_WRAP.GET_WORKER_ID;
1087 
1088     INSERT INTO PJI_AC_AGGR_PJP1
1089     (
1090        WORKER_ID
1091      , PRG_LEVEL
1092      , PROJECT_ID
1093      , PROJECT_ORG_ID
1094      , PROJECT_ORGANIZATION_ID
1095      -- , PARTITION_ID
1096      , PROJECT_ELEMENT_ID
1097      , TIME_ID
1098      , PERIOD_TYPE_ID
1099      , CALENDAR_TYPE
1100      , WBS_ROLLUP_FLAG
1101      , PRG_ROLLUP_FLAG
1102      , CURR_RECORD_TYPE_ID
1103      , CURRENCY_CODE
1104      , REVENUE
1105      , INITIAL_FUNDING_AMOUNT
1106      , INITIAL_FUNDING_COUNT
1107      , ADDITIONAL_FUNDING_AMOUNT
1108      , ADDITIONAL_FUNDING_COUNT
1109      , CANCELLED_FUNDING_AMOUNT
1110      , CANCELLED_FUNDING_COUNT
1111      , FUNDING_ADJUSTMENT_AMOUNT
1112      , FUNDING_ADJUSTMENT_COUNT
1113      , REVENUE_WRITEOFF
1114      , AR_INVOICE_AMOUNT
1115      , AR_INVOICE_COUNT
1116      , AR_CASH_APPLIED_AMOUNT
1117      , AR_INVOICE_WRITE_OFF_AMOUNT
1118      , AR_INVOICE_WRITEOFF_COUNT
1119      , AR_CREDIT_MEMO_AMOUNT
1120      , AR_CREDIT_MEMO_COUNT
1121      , UNBILLED_RECEIVABLES
1122      , UNEARNED_REVENUE
1123      , AR_UNAPPR_INVOICE_AMOUNT
1124      , AR_UNAPPR_INVOICE_COUNT
1125      , AR_APPR_INVOICE_AMOUNT
1126      , AR_APPR_INVOICE_COUNT
1127      , AR_AMOUNT_DUE
1128      , AR_COUNT_DUE
1129      , AR_AMOUNT_OVERDUE
1130      , AR_COUNT_OVERDUE
1131      , DORMANT_BACKLOG_INACTIV
1132      , DORMANT_BACKLOG_START
1133      , LOST_BACKLOG
1134      , ACTIVE_BACKLOG
1135      , REVENUE_AT_RISK
1136      , CUSTOM1
1137      , CUSTOM2
1138      , CUSTOM3
1139      , CUSTOM4
1140      , CUSTOM5
1141      , CUSTOM6
1142      , CUSTOM7
1143      , CUSTOM8
1144      , CUSTOM9
1145      , CUSTOM10
1146      , CUSTOM11
1147      , CUSTOM12
1148      , CUSTOM13
1149      , CUSTOM14
1150      , CUSTOM15
1151     )
1152   SELECT * FROM (
1153     SELECT
1154       -- GROUPING(qtr.CAL_YEAR_ID)  gy
1155       -- , GROUPING(period.CAL_QTR_ID)  gq
1156       -- , GROUPING(period.CAL_PERIOD_ID)  gp
1157       -- ,
1158        g_worker_id
1159      , g_default_prg_level
1160      , fact1.PROJECT_ID
1161      , fact1.PROJECT_ORG_ID
1162      , fact1.PROJECT_ORGANIZATION_ID
1163      -- -- -- , fact1.PARTITION_ID
1164      , fact1.PROJECT_ELEMENT_ID
1165      , DECODE (
1166                (grouping(qtr.CAL_YEAR_ID) || grouping(period.CAL_QTR_ID) || grouping(period.CAL_PERIOD_ID) )
1167              , '000', period.CAL_PERIOD_ID
1168              , '001', period.CAL_QTR_ID
1169              , '011', qtr.CAL_YEAR_ID
1170              , '111', -1 ) TIME_ID
1171      , DECODE (
1172                (grouping(qtr.CAL_YEAR_ID) || grouping(period.CAL_QTR_ID) || grouping(period.CAL_PERIOD_ID) )
1173              , '000', 32
1174              , '001', 64
1175              , '011', 128
1176              , '111', 2048 ) PERIOD_TYPE_ID
1177      , fact1.CALENDAR_TYPE
1178      , fact1.WBS_ROLLUP_FLAG
1179      , fact1.PRG_ROLLUP_FLAG
1180      , fact1.CURR_RECORD_TYPE_ID
1181      , fact1.CURRENCY_CODE
1182      , SUM(fact1.REVENUE )
1183      , SUM(fact1.INITIAL_FUNDING_AMOUNT )
1184      , SUM(fact1.INITIAL_FUNDING_COUNT)
1185      , SUM(fact1.ADDITIONAL_FUNDING_AMOUNT)
1189      , SUM(fact1.FUNDING_ADJUSTMENT_AMOUNT)
1186      , SUM(fact1.ADDITIONAL_FUNDING_COUNT  )
1187      , SUM(fact1.CANCELLED_FUNDING_AMOUNT)
1188      , SUM(fact1.CANCELLED_FUNDING_COUNT)
1190      , SUM(fact1.FUNDING_ADJUSTMENT_COUNT)
1191      , SUM(fact1.REVENUE_WRITEOFF)
1192      , SUM(fact1.AR_INVOICE_AMOUNT)
1193      , SUM(fact1.AR_INVOICE_COUNT)
1194      , SUM(fact1.AR_CASH_APPLIED_AMOUNT)
1195      , SUM(fact1.AR_INVOICE_WRITE_OFF_AMOUNT)
1196      , SUM(fact1.AR_INVOICE_WRITEOFF_COUNT)
1197      , SUM(fact1.AR_CREDIT_MEMO_AMOUNT)
1198      , SUM(fact1.AR_CREDIT_MEMO_COUNT)
1199      , SUM(fact1.UNBILLED_RECEIVABLES)
1200      , SUM(fact1.UNEARNED_REVENUE)
1201      , SUM(fact1.AR_UNAPPR_INVOICE_AMOUNT)
1202      , SUM(fact1.AR_UNAPPR_INVOICE_COUNT)
1203      , SUM(fact1.AR_APPR_INVOICE_AMOUNT)
1204      , SUM(fact1.AR_APPR_INVOICE_COUNT)
1205      , SUM(fact1.AR_AMOUNT_DUE)
1206      , SUM(fact1.AR_COUNT_DUE)
1207      , SUM(fact1.AR_AMOUNT_OVERDUE)
1208      , SUM(fact1.AR_COUNT_OVERDUE)
1209      , SUM(fact1.DORMANT_BACKLOG_INACTIV)
1210      , SUM(fact1.DORMANT_BACKLOG_START)
1211      , SUM(fact1.LOST_BACKLOG)
1212      , SUM(fact1.ACTIVE_BACKLOG)
1213      , SUM(fact1.REVENUE_AT_RISK)
1214      , SUM(fact1.CUSTOM1)
1215      , SUM(fact1.CUSTOM2)
1216      , SUM(fact1.CUSTOM3)
1217      , SUM(fact1.CUSTOM4)
1218      , SUM(fact1.CUSTOM5)
1219      , SUM(fact1.CUSTOM6)
1220      , SUM(fact1.CUSTOM7)
1221      , SUM(fact1.CUSTOM8)
1222      , SUM(fact1.CUSTOM9)
1223      , SUM(fact1.CUSTOM10)
1224      , SUM(fact1.CUSTOM11)
1225      , SUM(fact1.CUSTOM12)
1226      , SUM(fact1.CUSTOM13)
1227      , SUM(fact1.CUSTOM14)
1228      , SUM(fact1.CUSTOM15)
1229     FROM
1230       PJI_AC_AGGR_PJP1 fact1
1231     , pji_time_CAL_PERIOD period
1232 	, pji_time_CAL_QTR    qtr
1233     WHERE
1234         fact1.calendar_type = 'P'
1235     AND period.cal_period_id = fact1.time_id
1236     AND period.cal_qtr_id = qtr.cal_qtr_id
1237     AND fact1.period_type_id = 32
1238     AND fact1.worker_id = g_worker_id
1239 	GROUP BY
1240        fact1.PROJECT_ID
1241      , fact1.PROJECT_ORG_ID
1242      , fact1.PROJECT_ORGANIZATION_ID
1243      -- -- -- , fact1.PARTITION_ID
1244      , fact1.PROJECT_ELEMENT_ID
1245      , fact1.CALENDAR_TYPE
1246      , rollup (qtr.CAL_YEAR_ID,
1247                period.CAL_QTR_ID,
1248                period.CAL_PERIOD_ID)
1249      , fact1.WBS_ROLLUP_FLAG
1250      , fact1.PRG_ROLLUP_FLAG
1251      , fact1.CURR_RECORD_TYPE_ID
1252      , fact1.CURRENCY_CODE  )
1253    WHERE 1=1
1254      AND period_type_id > 32
1255      AND period_type_id < 2048;
1256 
1257 
1258 EXCEPTION
1259   WHEN OTHERS THEN
1260     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
1261                              p_procedure_name => 'CREATE_AC_PA_ROLLUP');
1262     RAISE;
1263 END;
1264 
1265 
1266 PROCEDURE CREATE_AC_GL_ROLLUP IS
1267 BEGIN
1268 
1269     g_worker_id  := PJI_PJP_FP_CURR_WRAP.GET_WORKER_ID;
1270 
1271     INSERT INTO PJI_AC_AGGR_PJP1
1272     (
1273        worker_id
1274      , PRG_LEVEL
1275      , PROJECT_ID
1276      , PROJECT_ORG_ID
1277      , PROJECT_ORGANIZATION_ID
1278      -- , PARTITION_ID
1279      , PROJECT_ELEMENT_ID
1280      , TIME_ID
1281      , PERIOD_TYPE_ID
1282      , CALENDAR_TYPE
1283      , WBS_ROLLUP_FLAG
1284      , PRG_ROLLUP_FLAG
1285      , CURR_RECORD_TYPE_ID
1286      , CURRENCY_CODE
1287      , REVENUE
1288      , INITIAL_FUNDING_AMOUNT
1289      , INITIAL_FUNDING_COUNT
1290      , ADDITIONAL_FUNDING_AMOUNT
1291      , ADDITIONAL_FUNDING_COUNT
1292      , CANCELLED_FUNDING_AMOUNT
1293      , CANCELLED_FUNDING_COUNT
1294      , FUNDING_ADJUSTMENT_AMOUNT
1295      , FUNDING_ADJUSTMENT_COUNT
1296      , REVENUE_WRITEOFF
1297      , AR_INVOICE_AMOUNT
1298      , AR_INVOICE_COUNT
1299      , AR_CASH_APPLIED_AMOUNT
1300      , AR_INVOICE_WRITE_OFF_AMOUNT
1301      , AR_INVOICE_WRITEOFF_COUNT
1302      , AR_CREDIT_MEMO_AMOUNT
1303      , AR_CREDIT_MEMO_COUNT
1304      , UNBILLED_RECEIVABLES
1305      , UNEARNED_REVENUE
1306      , AR_UNAPPR_INVOICE_AMOUNT
1307      , AR_UNAPPR_INVOICE_COUNT
1308      , AR_APPR_INVOICE_AMOUNT
1309      , AR_APPR_INVOICE_COUNT
1310      , AR_AMOUNT_DUE
1311      , AR_COUNT_DUE
1312      , AR_AMOUNT_OVERDUE
1313      , AR_COUNT_OVERDUE
1314      , DORMANT_BACKLOG_INACTIV
1315      , DORMANT_BACKLOG_START
1316      , LOST_BACKLOG
1317      , ACTIVE_BACKLOG
1318      , REVENUE_AT_RISK
1319      , CUSTOM1
1320      , CUSTOM2
1321      , CUSTOM3
1322      , CUSTOM4
1323      , CUSTOM5
1324      , CUSTOM6
1325      , CUSTOM7
1326      , CUSTOM8
1327      , CUSTOM9
1328      , CUSTOM10
1329      , CUSTOM11
1330      , CUSTOM12
1331      , CUSTOM13
1332      , CUSTOM14
1333      , CUSTOM15
1334     )
1335   SELECT * FROM (
1336     SELECT
1337       -- GROUPING(qtr.CAL_YEAR_ID)  gy
1338       -- , GROUPING(period.CAL_QTR_ID)  gq
1339       -- , GROUPING(period.CAL_PERIOD_ID)  gp
1340       -- ,
1341        g_worker_id
1342      , g_default_prg_level
1343      , fact1.PROJECT_ID
1344      , fact1.PROJECT_ORG_ID
1348      , DECODE (
1345      , fact1.PROJECT_ORGANIZATION_ID
1346      -- -- -- , fact1.PARTITION_ID
1347      , fact1.PROJECT_ELEMENT_ID
1349                (grouping(qtr.CAL_YEAR_ID) || grouping(period.CAL_QTR_ID) || grouping(period.CAL_PERIOD_ID) )
1350              , '000', period.CAL_PERIOD_ID
1351              , '001', period.CAL_QTR_ID
1352              , '011', qtr.CAL_YEAR_ID
1353              , '111', -1 ) TIME_ID
1354      , DECODE (
1355                (grouping(qtr.CAL_YEAR_ID) || grouping(period.CAL_QTR_ID) || grouping(period.CAL_PERIOD_ID) )
1356              , '000', 32
1357              , '001', 64
1358              , '011', 128
1359              , '111', 2048 ) PERIOD_TYPE_ID
1360      , fact1.CALENDAR_TYPE
1361      , fact1.WBS_ROLLUP_FLAG
1362      , fact1.PRG_ROLLUP_FLAG
1363      , fact1.CURR_RECORD_TYPE_ID
1364      , fact1.CURRENCY_CODE
1365      , SUM(fact1.REVENUE )
1366      , SUM(fact1.INITIAL_FUNDING_AMOUNT )
1367      , SUM(fact1.INITIAL_FUNDING_COUNT)
1368      , SUM(fact1.ADDITIONAL_FUNDING_AMOUNT)
1369      , SUM(fact1.ADDITIONAL_FUNDING_COUNT  )
1370      , SUM(fact1.CANCELLED_FUNDING_AMOUNT)
1371      , SUM(fact1.CANCELLED_FUNDING_COUNT)
1372      , SUM(fact1.FUNDING_ADJUSTMENT_AMOUNT)
1373      , SUM(fact1.FUNDING_ADJUSTMENT_COUNT)
1374      , SUM(fact1.REVENUE_WRITEOFF)
1375      , SUM(fact1.AR_INVOICE_AMOUNT)
1376      , SUM(fact1.AR_INVOICE_COUNT)
1377      , SUM(fact1.AR_CASH_APPLIED_AMOUNT)
1378      , SUM(fact1.AR_INVOICE_WRITE_OFF_AMOUNT)
1379      , SUM(fact1.AR_INVOICE_WRITEOFF_COUNT)
1380      , SUM(fact1.AR_CREDIT_MEMO_AMOUNT)
1381      , SUM(fact1.AR_CREDIT_MEMO_COUNT)
1382      , SUM(fact1.UNBILLED_RECEIVABLES)
1383      , SUM(fact1.UNEARNED_REVENUE)
1384      , SUM(fact1.AR_UNAPPR_INVOICE_AMOUNT)
1385      , SUM(fact1.AR_UNAPPR_INVOICE_COUNT)
1386      , SUM(fact1.AR_APPR_INVOICE_AMOUNT)
1387      , SUM(fact1.AR_APPR_INVOICE_COUNT)
1388      , SUM(fact1.AR_AMOUNT_DUE)
1389      , SUM(fact1.AR_COUNT_DUE)
1390      , SUM(fact1.AR_AMOUNT_OVERDUE)
1391      , SUM(fact1.AR_COUNT_OVERDUE)
1392      , SUM(fact1.DORMANT_BACKLOG_INACTIV)
1393      , SUM(fact1.DORMANT_BACKLOG_START)
1394      , SUM(fact1.LOST_BACKLOG)
1395      , SUM(fact1.ACTIVE_BACKLOG)
1396      , SUM(fact1.REVENUE_AT_RISK)
1397      , SUM(fact1.CUSTOM1)
1398      , SUM(fact1.CUSTOM2)
1399      , SUM(fact1.CUSTOM3)
1400      , SUM(fact1.CUSTOM4)
1401      , SUM(fact1.CUSTOM5)
1402      , SUM(fact1.CUSTOM6)
1403      , SUM(fact1.CUSTOM7)
1404      , SUM(fact1.CUSTOM8)
1405      , SUM(fact1.CUSTOM9)
1406      , SUM(fact1.CUSTOM10)
1407      , SUM(fact1.CUSTOM11)
1408      , SUM(fact1.CUSTOM12)
1409      , SUM(fact1.CUSTOM13)
1410      , SUM(fact1.CUSTOM14)
1411      , SUM(fact1.CUSTOM15)
1412     FROM
1413       PJI_AC_AGGR_PJP1 fact1
1414     , pji_time_CAL_PERIOD period
1415 	, pji_time_CAL_QTR    qtr
1416     WHERE
1417           fact1.calendar_type = 'G'
1418       AND period.cal_period_id = fact1.time_id
1419 	AND period.cal_qtr_id = qtr.cal_qtr_id
1420       AND fact1.period_type_id = 32
1421       AND fact1.worker_id = g_worker_id
1422     GROUP BY
1423        fact1.PROJECT_ID
1424      , fact1.PROJECT_ORG_ID
1425      , fact1.PROJECT_ORGANIZATION_ID
1426      -- -- -- , fact1.PARTITION_ID
1427      , fact1.PROJECT_ELEMENT_ID
1428      , fact1.CALENDAR_TYPE
1429      , rollup (qtr.CAL_YEAR_ID,
1430                period.CAL_QTR_ID,
1431                period.CAL_PERIOD_ID)
1432      , fact1.WBS_ROLLUP_FLAG
1433      , fact1.PRG_ROLLUP_FLAG
1434      , fact1.CURR_RECORD_TYPE_ID
1435      , fact1.CURRENCY_CODE)
1436    WHERE 1=1
1437      AND period_type_id > 32
1438      AND period_type_id < 2048;
1439 
1440 EXCEPTION
1441   WHEN OTHERS THEN
1442     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
1443                              p_procedure_name => 'CREATE_AC_GL_ROLLUP');
1444     RAISE;
1445 END;
1446 
1447 
1448 PROCEDURE CREATE_AC_ENT_ROLLUP IS
1449 BEGIN
1450 
1451   g_worker_id  := PJI_PJP_FP_CURR_WRAP.GET_WORKER_ID;
1452 
1453   INSERT INTO PJI_AC_AGGR_PJP1
1454   (
1455        worker_id
1456      , PRG_LEVEL
1457      , PROJECT_ID
1458      , PROJECT_ORG_ID
1459      , PROJECT_ORGANIZATION_ID
1460      -- , PARTITION_ID
1461      , PROJECT_ELEMENT_ID
1462      , TIME_ID
1463      , PERIOD_TYPE_ID
1464      , CALENDAR_TYPE
1465      , WBS_ROLLUP_FLAG
1466      , PRG_ROLLUP_FLAG
1467      , CURR_RECORD_TYPE_ID
1468      , CURRENCY_CODE
1469      , REVENUE
1470      , INITIAL_FUNDING_AMOUNT
1471      , INITIAL_FUNDING_COUNT
1472      , ADDITIONAL_FUNDING_AMOUNT
1473      , ADDITIONAL_FUNDING_COUNT
1474      , CANCELLED_FUNDING_AMOUNT
1475      , CANCELLED_FUNDING_COUNT
1476      , FUNDING_ADJUSTMENT_AMOUNT
1477      , FUNDING_ADJUSTMENT_COUNT
1478      , REVENUE_WRITEOFF
1479      , AR_INVOICE_AMOUNT
1480      , AR_INVOICE_COUNT
1481      , AR_CASH_APPLIED_AMOUNT
1482      , AR_INVOICE_WRITE_OFF_AMOUNT
1483      , AR_INVOICE_WRITEOFF_COUNT
1484      , AR_CREDIT_MEMO_AMOUNT
1485      , AR_CREDIT_MEMO_COUNT
1486      , UNBILLED_RECEIVABLES
1487      , UNEARNED_REVENUE
1488      , AR_UNAPPR_INVOICE_AMOUNT
1489      , AR_UNAPPR_INVOICE_COUNT
1493      , AR_COUNT_DUE
1490      , AR_APPR_INVOICE_AMOUNT
1491      , AR_APPR_INVOICE_COUNT
1492      , AR_AMOUNT_DUE
1494      , AR_AMOUNT_OVERDUE
1495      , AR_COUNT_OVERDUE
1496      , DORMANT_BACKLOG_INACTIV
1497      , DORMANT_BACKLOG_START
1498      , LOST_BACKLOG
1499      , ACTIVE_BACKLOG
1500      , REVENUE_AT_RISK
1501      , CUSTOM1
1502      , CUSTOM2
1503      , CUSTOM3
1504      , CUSTOM4
1505      , CUSTOM5
1506      , CUSTOM6
1507      , CUSTOM7
1508      , CUSTOM8
1509      , CUSTOM9
1510      , CUSTOM10
1511      , CUSTOM11
1512      , CUSTOM12
1513      , CUSTOM13
1514      , CUSTOM14
1515      , CUSTOM15
1516   )
1517   SELECT * FROM (
1518   SELECT
1519       -- GROUPING(qtr.CAL_YEAR_ID)  gy
1520       -- , GROUPING(period.CAL_QTR_ID)  gq
1521       -- , GROUPING(period.CAL_PERIOD_ID)  gp
1522       -- ,
1523        g_worker_id
1524      , g_default_prg_level
1525      , fact1.PROJECT_ID
1526      , fact1.PROJECT_ORG_ID
1527      , fact1.PROJECT_ORGANIZATION_ID
1528      -- -- -- , fact1.PARTITION_ID
1529      , fact1.PROJECT_ELEMENT_ID
1530      , DECODE (
1531                (grouping(qtr.ENT_YEAR_ID) || grouping(period.ENT_QTR_ID) || grouping(period.ENT_PERIOD_ID) )
1532              , '000', period.ENT_PERIOD_ID
1533              , '001', period.ENT_QTR_ID
1534              , '011', qtr.ENT_YEAR_ID
1535              , '111', -1 ) TIME_ID
1536      , DECODE (
1537                (grouping(qtr.ENT_YEAR_ID) || grouping(period.ENT_QTR_ID) || grouping(period.ENT_PERIOD_ID) )
1538              , '000', 32
1539              , '001', 64
1540              , '011', 128
1541              , '111', 2048 ) PERIOD_TYPE_ID
1542      , fact1.CALENDAR_TYPE
1543      , fact1.WBS_ROLLUP_FLAG
1544      , fact1.PRG_ROLLUP_FLAG
1545      , fact1.CURR_RECORD_TYPE_ID
1546      , fact1.CURRENCY_CODE
1547      , SUM(fact1.REVENUE )
1548      , SUM(fact1.INITIAL_FUNDING_AMOUNT )
1549      , SUM(fact1.INITIAL_FUNDING_COUNT)
1550      , SUM(fact1.ADDITIONAL_FUNDING_AMOUNT)
1551      , SUM(fact1.ADDITIONAL_FUNDING_COUNT  )
1552      , SUM(fact1.CANCELLED_FUNDING_AMOUNT)
1553      , SUM(fact1.CANCELLED_FUNDING_COUNT)
1554      , SUM(fact1.FUNDING_ADJUSTMENT_AMOUNT)
1555      , SUM(fact1.FUNDING_ADJUSTMENT_COUNT)
1556      , SUM(fact1.REVENUE_WRITEOFF)
1557      , SUM(fact1.AR_INVOICE_AMOUNT)
1558      , SUM(fact1.AR_INVOICE_COUNT)
1559      , SUM(fact1.AR_CASH_APPLIED_AMOUNT)
1560      , SUM(fact1.AR_INVOICE_WRITE_OFF_AMOUNT)
1561      , SUM(fact1.AR_INVOICE_WRITEOFF_COUNT)
1562      , SUM(fact1.AR_CREDIT_MEMO_AMOUNT)
1563      , SUM(fact1.AR_CREDIT_MEMO_COUNT)
1564      , SUM(fact1.UNBILLED_RECEIVABLES)
1565      , SUM(fact1.UNEARNED_REVENUE)
1566      , SUM(fact1.AR_UNAPPR_INVOICE_AMOUNT)
1567      , SUM(fact1.AR_UNAPPR_INVOICE_COUNT)
1568      , SUM(fact1.AR_APPR_INVOICE_AMOUNT)
1569      , SUM(fact1.AR_APPR_INVOICE_COUNT)
1570      , SUM(fact1.AR_AMOUNT_DUE)
1571      , SUM(fact1.AR_COUNT_DUE)
1572      , SUM(fact1.AR_AMOUNT_OVERDUE)
1573      , SUM(fact1.AR_COUNT_OVERDUE)
1574      , SUM(fact1.DORMANT_BACKLOG_INACTIV)
1575      , SUM(fact1.DORMANT_BACKLOG_START)
1576      , SUM(fact1.LOST_BACKLOG)
1577      , SUM(fact1.ACTIVE_BACKLOG)
1578      , SUM(fact1.REVENUE_AT_RISK)
1579      , SUM(fact1.CUSTOM1)
1580      , SUM(fact1.CUSTOM2)
1581      , SUM(fact1.CUSTOM3)
1582      , SUM(fact1.CUSTOM4)
1583      , SUM(fact1.CUSTOM5)
1584      , SUM(fact1.CUSTOM6)
1585      , SUM(fact1.CUSTOM7)
1586      , SUM(fact1.CUSTOM8)
1587      , SUM(fact1.CUSTOM9)
1588      , SUM(fact1.CUSTOM10)
1589      , SUM(fact1.CUSTOM11)
1590      , SUM(fact1.CUSTOM12)
1591      , SUM(fact1.CUSTOM13)
1592      , SUM(fact1.CUSTOM14)
1593      , SUM(fact1.CUSTOM15)
1594     FROM
1595 	   PJI_AC_AGGR_PJP1 fact1
1596      , pji_time_ENT_PERIOD period
1597  	 , pji_time_ENT_QTR    qtr
1598     WHERE
1599         fact1.calendar_type = 'E'
1600     AND period.ENT_period_id = fact1.time_id
1601     AND period.ENT_qtr_id = qtr.ENT_qtr_id
1602     AND fact1.period_type_id = 32
1603     AND fact1.worker_id = g_worker_id
1604 	GROUP BY
1605        fact1.PROJECT_ID
1606      , fact1.PROJECT_ORG_ID
1607      , fact1.PROJECT_ORGANIZATION_ID
1608      -- -- -- , fact1.PARTITION_ID
1609      , fact1.PROJECT_ELEMENT_ID
1610      , fact1.CALENDAR_TYPE
1611      , fact1.WBS_ROLLUP_FLAG
1612      , fact1.PRG_ROLLUP_FLAG
1613      , fact1.CURR_RECORD_TYPE_ID
1614      , fact1.CURRENCY_CODE
1615      , rollup (qtr.ENT_YEAR_ID,
1616               period.ENT_QTR_ID,
1617               period.ENT_PERIOD_ID))
1618    WHERE 1=1
1619      AND period_type_id > 32
1620      AND period_type_id < 2048;
1621 
1622 EXCEPTION
1623   WHEN OTHERS THEN
1624     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
1625                              p_procedure_name => 'CREATE_AC_ENT_ROLLUP');
1626     RAISE;
1627 END;
1628 
1629 
1630 
1631 PROCEDURE CREATE_AC_ALL_T_PRI_ROLLUP (
1632   p_calendar_type IN VARCHAR2 := 'G' ) IS
1633     -- l_last_update_date     date   := SYSDATE;
1634     -- l_last_updated_by      NUMBER := FND_GLOBAL.USER_ID;
1635     -- l_creation_date        date   := SYSDATE;
1636     -- l_created_by           NUMBER := FND_GLOBAL.USER_ID;
1637     l_last_update_login    NUMBER := FND_GLOBAL.LOGIN_ID;
1641 
1638     l_line_type            VARCHAR2(15);
1639 
1640 BEGIN
1642   g_worker_id  := PJI_PJP_FP_CURR_WRAP.GET_WORKER_ID;
1643 
1644   IF (p_calendar_type NOT IN ('P', 'G') ) THEN
1645     RETURN;
1646   ELSE
1647     IF (p_calendar_type = 'P') THEN
1648       l_line_type := 'PAR';
1649     ELSE
1650       l_line_type := 'GLR';
1651     END IF;
1652   END IF;
1653 
1654     g_worker_id  := PJI_PJP_FP_CURR_WRAP.GET_WORKER_ID;
1655 
1656     INSERT INTO PJI_AC_AGGR_PJP1
1657     (
1658        worker_id
1659      , PRG_LEVEL
1660      , PROJECT_ID
1661      , PROJECT_ORG_ID
1662      , PROJECT_ORGANIZATION_ID
1663      -- , PARTITION_ID
1664      , PROJECT_ELEMENT_ID
1665      , TIME_ID
1666      , PERIOD_TYPE_ID
1667      , CALENDAR_TYPE
1668      , WBS_ROLLUP_FLAG
1669      , PRG_ROLLUP_FLAG
1670      , CURR_RECORD_TYPE_ID
1671      , CURRENCY_CODE
1672      , REVENUE
1673      , INITIAL_FUNDING_AMOUNT
1674      , INITIAL_FUNDING_COUNT
1675      , ADDITIONAL_FUNDING_AMOUNT
1676      , ADDITIONAL_FUNDING_COUNT
1677      , CANCELLED_FUNDING_AMOUNT
1678      , CANCELLED_FUNDING_COUNT
1679      , FUNDING_ADJUSTMENT_AMOUNT
1680      , FUNDING_ADJUSTMENT_COUNT
1681      , REVENUE_WRITEOFF
1682      , AR_INVOICE_AMOUNT
1683      , AR_INVOICE_COUNT
1684      , AR_CASH_APPLIED_AMOUNT
1685      , AR_INVOICE_WRITE_OFF_AMOUNT
1686      , AR_INVOICE_WRITEOFF_COUNT
1687      , AR_CREDIT_MEMO_AMOUNT
1688      , AR_CREDIT_MEMO_COUNT
1689      , UNBILLED_RECEIVABLES
1690      , UNEARNED_REVENUE
1691      , AR_UNAPPR_INVOICE_AMOUNT
1692      , AR_UNAPPR_INVOICE_COUNT
1693      , AR_APPR_INVOICE_AMOUNT
1694      , AR_APPR_INVOICE_COUNT
1695      , AR_AMOUNT_DUE
1696      , AR_COUNT_DUE
1697      , AR_AMOUNT_OVERDUE
1698      , AR_COUNT_OVERDUE
1699      , DORMANT_BACKLOG_INACTIV
1700      , DORMANT_BACKLOG_START
1701      , LOST_BACKLOG
1702      , ACTIVE_BACKLOG
1703      , REVENUE_AT_RISK
1704      , CUSTOM1
1705      , CUSTOM2
1706      , CUSTOM3
1707      , CUSTOM4
1708      , CUSTOM5
1709      , CUSTOM6
1710      , CUSTOM7
1711      , CUSTOM8
1712      , CUSTOM9
1713      , CUSTOM10
1714      , CUSTOM11
1715      , CUSTOM12
1716      , CUSTOM13
1717      , CUSTOM14
1718      , CUSTOM15
1719     )
1720   SELECT * FROM (
1721     SELECT
1722       -- GROUPING(qtr.CAL_YEAR_ID)  gy
1723       -- , GROUPING(period.CAL_QTR_ID)  gq
1724       -- , GROUPING(period.CAL_PERIOD_ID)  gp
1725       -- ,
1726        g_worker_id
1727      , g_default_prg_level PRG_LEVEL
1728      , fact1.PROJECT_ID
1729      , fact1.PROJECT_ORG_ID
1730      , fact1.PROJECT_ORGANIZATION_ID
1731      -- -- -- , fact1.PARTITION_ID
1732      , fact1.PROJECT_ELEMENT_ID
1733      , DECODE (
1734                (grouping(qtr.CAL_YEAR_ID) || grouping(period.CAL_QTR_ID) || grouping(period.CAL_PERIOD_ID) )
1735              , '000', period.CAL_PERIOD_ID
1736              , '001', period.CAL_QTR_ID
1737              , '011', qtr.CAL_YEAR_ID
1738              , '111', -1 ) TIME_ID
1739      , DECODE (
1740                (grouping(qtr.CAL_YEAR_ID) || grouping(period.CAL_QTR_ID) || grouping(period.CAL_PERIOD_ID) )
1741              , '000', 32
1742              , '001', 64
1743              , '011', 128
1744              , '111', 2048 ) PERIOD_TYPE_ID
1745     , DECODE (
1746                grouping(qtr.CAL_YEAR_ID)
1747              , 0 , fact1.CALENDAR_TYPE
1748              , 'A') CALENDAR_TYPE
1749      , fact1.WBS_ROLLUP_FLAG
1750      , fact1.PRG_ROLLUP_FLAG
1751      , fact1.CURR_RECORD_TYPE_ID
1752      , fact1.CURRENCY_CODE
1753      , SUM(fact1.REVENUE )
1754      , SUM(fact1.INITIAL_FUNDING_AMOUNT )
1755      , SUM(fact1.INITIAL_FUNDING_COUNT)
1756      , SUM(fact1.ADDITIONAL_FUNDING_AMOUNT)
1757      , SUM(fact1.ADDITIONAL_FUNDING_COUNT  )
1758      , SUM(fact1.CANCELLED_FUNDING_AMOUNT)
1759      , SUM(fact1.CANCELLED_FUNDING_COUNT)
1760      , SUM(fact1.FUNDING_ADJUSTMENT_AMOUNT)
1761      , SUM(fact1.FUNDING_ADJUSTMENT_COUNT)
1762      , SUM(fact1.REVENUE_WRITEOFF)
1763      , SUM(fact1.AR_INVOICE_AMOUNT)
1764      , SUM(fact1.AR_INVOICE_COUNT)
1765      , SUM(fact1.AR_CASH_APPLIED_AMOUNT)
1766      , SUM(fact1.AR_INVOICE_WRITE_OFF_AMOUNT)
1767      , SUM(fact1.AR_INVOICE_WRITEOFF_COUNT)
1768      , SUM(fact1.AR_CREDIT_MEMO_AMOUNT)
1769      , SUM(fact1.AR_CREDIT_MEMO_COUNT)
1770      , SUM(fact1.UNBILLED_RECEIVABLES)
1771      , SUM(fact1.UNEARNED_REVENUE)
1772      , SUM(fact1.AR_UNAPPR_INVOICE_AMOUNT)
1773      , SUM(fact1.AR_UNAPPR_INVOICE_COUNT)
1774      , SUM(fact1.AR_APPR_INVOICE_AMOUNT)
1775      , SUM(fact1.AR_APPR_INVOICE_COUNT)
1776      , SUM(fact1.AR_AMOUNT_DUE)
1777      , SUM(fact1.AR_COUNT_DUE)
1778      , SUM(fact1.AR_AMOUNT_OVERDUE)
1779      , SUM(fact1.AR_COUNT_OVERDUE)
1780      , SUM(fact1.DORMANT_BACKLOG_INACTIV)
1781      , SUM(fact1.DORMANT_BACKLOG_START)
1782      , SUM(fact1.LOST_BACKLOG)
1783      , SUM(fact1.ACTIVE_BACKLOG)
1784      , SUM(fact1.REVENUE_AT_RISK)
1785      , SUM(fact1.CUSTOM1)
1786      , SUM(fact1.CUSTOM2)
1787      , SUM(fact1.CUSTOM3)
1788      , SUM(fact1.CUSTOM4)
1789      , SUM(fact1.CUSTOM5)
1790      , SUM(fact1.CUSTOM6)
1794      , SUM(fact1.CUSTOM10)
1791      , SUM(fact1.CUSTOM7)
1792      , SUM(fact1.CUSTOM8)
1793      , SUM(fact1.CUSTOM9)
1795      , SUM(fact1.CUSTOM11)
1796      , SUM(fact1.CUSTOM12)
1797      , SUM(fact1.CUSTOM13)
1798      , SUM(fact1.CUSTOM14)
1799      , SUM(fact1.CUSTOM15)
1800     FROM
1801       PJI_AC_AGGR_PJP1 fact1
1802     , pji_time_CAL_PERIOD period
1803 	, pji_time_CAL_QTR    qtr
1804     WHERE
1805           fact1.calendar_type = p_calendar_type
1806       AND period.cal_period_id = fact1.time_id
1807 	AND period.cal_qtr_id = qtr.cal_qtr_id
1808       AND fact1.period_type_id = 32
1809       AND fact1.worker_id = g_worker_id
1810     GROUP BY
1811        fact1.PROJECT_ID
1812      , fact1.PROJECT_ORG_ID
1813      , fact1.PROJECT_ORGANIZATION_ID
1814      -- -- -- , fact1.PARTITION_ID
1815      , fact1.PROJECT_ELEMENT_ID
1816      , fact1.CALENDAR_TYPE
1817      , rollup (qtr.CAL_YEAR_ID,
1818                period.CAL_QTR_ID,
1819                period.CAL_PERIOD_ID)
1820      , fact1.WBS_ROLLUP_FLAG
1821      , fact1.PRG_ROLLUP_FLAG
1822      , fact1.CURR_RECORD_TYPE_ID
1823      , fact1.CURRENCY_CODE )
1824    WHERE 1=1
1825      AND period_type_id = 2048;
1826 
1827 EXCEPTION
1828   WHEN OTHERS THEN
1829     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
1830                              p_procedure_name => 'CREATE_AC_ALL_T_PRI_ROLLUP');
1831     RAISE;
1832 END;
1833 
1834 
1835 --
1836 -- Prorate PA, GL entered entries in pjp1 table.
1837 --
1838 PROCEDURE PRORATE_TO_ENT_PG_PJP1_D IS
1839 BEGIN
1840 
1841    g_worker_id  := PJI_PJP_FP_CURR_WRAP.GET_WORKER_ID;
1842 
1843 /* Commented for bug 4005006
1844     INSERT INTO pji_fp_aggr_pjp1
1845     (
1846        WORKER_ID
1847      , PRG_LEVEL
1848      , PROJECT_ID
1849      , PROJECT_ORG_ID
1850      , PROJECT_ORGANIZATION_ID
1851      -- , PARTITION_ID
1852      , PROJECT_ELEMENT_ID
1853      , TIME_ID
1854      , PERIOD_TYPE_ID
1855      , CALENDAR_TYPE
1856      , RBS_AGGR_LEVEL
1857      , WBS_ROLLUP_FLAG
1858      , PRG_ROLLUP_FLAG
1859      , CURR_RECORD_TYPE_ID
1860      , CURRENCY_CODE
1861      , RBS_ELEMENT_ID
1862      , RBS_VERSION_ID
1863      , PLAN_VERSION_ID
1864      , PLAN_TYPE_ID
1865      , RAW_COST
1866      , BRDN_COST
1867      , REVENUE
1868      , BILL_RAW_COST
1869      , BILL_BRDN_COST
1870      , BILL_LABOR_RAW_COST
1871      , BILL_LABOR_BRDN_COST
1872      , BILL_LABOR_HRS
1873      , EQUIPMENT_RAW_COST
1874      , EQUIPMENT_BRDN_COST
1875      , CAPITALIZABLE_RAW_COST
1876      , CAPITALIZABLE_BRDN_COST
1877      , LABOR_RAW_COST
1878      , LABOR_BRDN_COST
1879      , LABOR_HRS
1880      , LABOR_REVENUE
1881      , EQUIPMENT_HOURS
1882      , BILLABLE_EQUIPMENT_HOURS
1883      , SUP_INV_COMMITTED_COST
1884      , PO_COMMITTED_COST
1885      , PR_COMMITTED_COST
1886      , OTH_COMMITTED_COST
1887        , ACT_LABOR_HRS
1888 	   , ACT_EQUIP_HRS
1889 	   , ACT_LABOR_BRDN_COST
1890 	   , ACT_EQUIP_BRDN_COST
1891 	   , ACT_BRDN_COST
1892 	   , ACT_RAW_COST
1893 	   , ACT_REVENUE
1894          , ACT_LABOR_RAW_COST
1895          , ACT_EQUIP_RAW_COST
1896 	   , ETC_LABOR_HRS
1897 	   , ETC_EQUIP_HRS
1898 	   , ETC_LABOR_BRDN_COST
1899 	   , ETC_EQUIP_BRDN_COST
1900 	   , ETC_BRDN_COST
1901          , ETC_RAW_COST
1902          , ETC_LABOR_RAW_COST
1903          , ETC_EQUIP_RAW_COST
1904      , CUSTOM1
1905      , CUSTOM2
1906      , CUSTOM3
1907      , CUSTOM4
1908      , CUSTOM5
1909      , CUSTOM6
1910      , CUSTOM7
1911      , CUSTOM8
1912      , CUSTOM9
1913      , CUSTOM10
1914      , CUSTOM11
1915      , CUSTOM12
1916      , CUSTOM13
1917      , CUSTOM14
1918      , CUSTOM15
1919 	 , LINE_TYPE
1920 	 , TIME_DANGLING_FLAG
1921 	 , RATE_DANGLING_FLAG
1922 	)
1923    SELECT
1924        g_worker_id worker_id
1925      , g_default_prg_level
1926      , a.PROJECT_ID
1927      , a.PROJECT_ORG_ID
1928      , a.PROJECT_ORGANIZATION_ID
1929      , a.PROJECT_ELEMENT_ID
1930      , a.TIME_ID
1931      , a.PERIOD_TYPE_ID
1932      , a.CALENDAR_TYPE
1933      , a.RBS_AGGR_LEVEL
1934      , a.WBS_ROLLUP_FLAG
1935      , a.PRG_ROLLUP_FLAG
1936      , a.CURR_RECORD_TYPE_ID
1937      , a.CURRENCY_CODE
1938      , a.RBS_ELEMENT_ID
1939      , a.RBS_VERSION_ID
1940      , a.PLAN_VERSION_ID
1941      , a.PLAN_TYPE_ID
1942      , SUM(a.RAW_COST       )
1943      , SUM(a.BRDN_COST 	)
1944      , SUM(a.REVENUE	)
1945      , SUM(a.BILL_RAW_COST )
1946      , SUM(a.BILL_BRDN_COST )
1947      , SUM(a.BILL_LABOR_RAW_COST )
1948      , SUM(a.BILL_LABOR_BRDN_COST )
1949      , SUM(a.BILL_LABOR_HRS )
1950      , SUM(a.EQUIPMENT_RAW_COST )
1951      , SUM(a.EQUIPMENT_BRDN_COST )
1952      , SUM(a.CAPITALIZABLE_RAW_COST )
1953      , SUM(a.CAPITALIZABLE_BRDN_COST )
1954      , SUM(a.LABOR_RAW_COST )
1955      , SUM(a.LABOR_BRDN_COST)
1956      , SUM(a.LABOR_HRS )
1957      , SUM(a.LABOR_REVENUE )
1958      , SUM(a.EQUIPMENT_HOURS )
1959      , SUM(a.BILLABLE_EQUIPMENT_HOURS)
1960      , SUM(a.SUP_INV_COMMITTED_COST)
1964        , SUM(a.ACT_LABOR_HRS)
1961      , SUM(a.PO_COMMITTED_COST )
1962      , SUM(a.PR_COMMITTED_COST )
1963      , SUM(a.OTH_COMMITTED_COST)
1965 	   , SUM(a.ACT_EQUIP_HRS)
1966 	   , SUM(a.ACT_LABOR_BRDN_COST)
1967 	   , SUM(a.ACT_EQUIP_BRDN_COST)
1968 	   , SUM(a.ACT_BRDN_COST    )
1969 	   , SUM(a.ACT_RAW_COST    )
1970 	   , SUM(a.ACT_REVENUE    )
1971          , SUM(a.ACT_LABOR_RAW_COST)
1972          , SUM(a.ACT_EQUIP_RAW_COST)
1973 	   , SUM(a.ETC_LABOR_HRS         )
1974 	   , SUM(a.ETC_EQUIP_HRS        )
1975 	   , SUM(a.ETC_LABOR_BRDN_COST )
1976 	   , SUM(a.ETC_EQUIP_BRDN_COST)
1977 	   , SUM(a.ETC_BRDN_COST )
1978          , SUM(a.ETC_RAW_COST)
1979          , SUM(a.ETC_LABOR_RAW_COST)
1980          , SUM(a.ETC_EQUIP_RAW_COST)
1981      , SUM(a.CUSTOM1	)
1982      , SUM(a.CUSTOM2	)
1983      , SUM(a.CUSTOM3	)
1984      , SUM(a.CUSTOM4	)
1985      , SUM(a.CUSTOM5	)
1986      , SUM(a.CUSTOM6	)
1987      , SUM(a.CUSTOM7	)
1988      , SUM(a.CUSTOM8	)
1989      , SUM(a.CUSTOM9	)
1990      , SUM(a.CUSTOM10	)
1991      , SUM(a.CUSTOM11	)
1992      , SUM(a.CUSTOM12	)
1993      , SUM(a.CUSTOM13	)
1994      , SUM(a.CUSTOM14	)
1995      , SUM(a.CUSTOM15	)
1996 	 , a.LINE_TYPE
1997 	 , a.TIME_DANGLING_FLAG
1998 	 , a.RATE_DANGLING_FLAG
1999    FROM (
2000    SELECT
2001          fact.project_id  project_id
2002    	 , fact.project_ORG_ID project_ORG_ID
2003    	 , fact.project_ORGANIZATION_ID project_ORGANIZATION_ID
2004      -- , fact.PARTITION_ID PARTITION_ID
2005    	 , fact.PROJECT_ELEMENT_ID PROJECT_ELEMENT_ID
2006    	 , pa_cal.ent_period_id TIME_ID
2007    	 , fact.PERIOD_TYPE_ID PERIOD_TYPE_ID
2008    	 , 'E' CALENDAR_TYPE -- fact.CALENDAR_TYPE
2009      , fact.RBS_AGGR_LEVEL
2010      , fact.WBS_ROLLUP_FLAG
2011      , fact.PRG_ROLLUP_FLAG
2012    	 , fact.CURR_RECORD_TYPE_ID CURR_RECORD_TYPE_ID
2013    	 , fact.CURRENCY_CODE CURRENCY_CODE
2014    	 , fact.RBS_ELEMENT_ID RBS_ELEMENT_ID
2015    	 , fact.RBS_VERSION_ID RBS_VERSION_ID
2016    	 , fact.PLAN_VERSION_ID PLAN_VERSION_ID
2017 	 , fact.PLAN_TYPE_ID  PLAN_TYPE_ID
2018 	 , ROUND (
2019              NVL (
2020             DECODE (
2021                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2022 			  , '00'   , fact.raw_cost
2023 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2024 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2025 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2026 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2027 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2028 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2029 			  , '0-1'  , fact.raw_cost
2030 			  , '1-1'  , fact.raw_cost
2031 			  , 0  ) -- end decode
2032 			    , 0  ) -- end nvl
2033 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2034 						* PJI_UTILS.GET_MAU (fact.currency_code)	raw_cost
2035 	 , ROUND (
2036              NVL (
2037             DECODE (
2038                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2039 			 , '00'   , fact.brdn_cost
2040 			 , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2041 			 , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2042 			 , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2043 			 , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2044 			 , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2045 			 , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2046 			 , '0-1'  , fact.brdn_cost
2047 			 , '1-1'  , fact.brdn_cost
2048 			 , 0  ) -- end decode
2049 			  , 0  ) -- end nvl
2050 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2051 						* PJI_UTILS.GET_MAU (fact.currency_code)	brdn_cost
2052 	 , ROUND (
2053              NVL (
2054             DECODE (
2055                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2056 			 , '00'   , fact.revenue
2057 			 , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.revenue / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2058 			 , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.revenue / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2059 			 , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.revenue / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2060 			 , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.revenue / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2061 			 , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.revenue / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2065 			 , 0  ) -- end decode
2062 			 , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.revenue / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2063 			 , '0-1'  , fact.revenue
2064 			 , '1-1'  , fact.revenue
2066 			  , 0  ) -- end nvl
2067 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2068 						* PJI_UTILS.GET_MAU (fact.currency_code)	revenue
2069 	 , ROUND (
2070              NVL (
2071             DECODE (
2072                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2073 			  , '00'   , fact.bill_raw_cost
2074 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.bill_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2075 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.bill_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2076 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.bill_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2077 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.bill_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2078 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.bill_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2079 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.bill_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2080 			  , '0-1'  , fact.bill_raw_cost
2081 			  , '1-1'  , fact.bill_raw_cost
2082 			  , 0  ) -- end decode
2083 			    , 0  ) -- end nvl
2084 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2085 						* PJI_UTILS.GET_MAU (fact.currency_code)	bill_raw_cost
2086 	 , ROUND (
2087              NVL (
2088             DECODE (
2089                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2090 			  , '00'   , fact.bill_brdn_cost
2091 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.bill_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2092 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.bill_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2093 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.bill_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2094 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.bill_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2095 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.bill_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2096 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.bill_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2097 			  , '0-1'  , fact.bill_brdn_cost
2098 			  , '1-1'  , fact.bill_brdn_cost
2099 			  , 0  ) -- end decode
2100 			    , 0  ) -- end nvl
2101 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2102 						* PJI_UTILS.GET_MAU (fact.currency_code)	bill_brdn_cost
2103 	 , ROUND (
2104              NVL (
2105             DECODE (
2106                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2107 			  , '00'   , fact.bill_labor_raw_cost
2108 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.bill_labor_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2109 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.bill_labor_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2110 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.bill_labor_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2111 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.bill_labor_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2112 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.bill_labor_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2113 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.bill_labor_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2114 			  , '0-1'  , fact.bill_labor_raw_cost
2115 			  , '1-1'  , fact.bill_labor_raw_cost
2116 			  , 0  ) -- end decode
2117 			    , 0  ) -- end nvl
2118 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2119 						* PJI_UTILS.GET_MAU (fact.currency_code)	bill_labor_raw_cost
2120 	 , ROUND (
2121              NVL (
2122             DECODE (
2123                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2124 			  , '00'   , fact.bill_labor_brdn_cost
2125 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.bill_labor_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2126 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.bill_labor_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2127 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.bill_labor_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2128 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.bill_labor_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2129 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.bill_labor_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2130 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.bill_labor_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2131 			  , '0-1'  , fact.bill_labor_brdn_cost
2132 			  , '1-1'  , fact.bill_labor_brdn_cost
2133 			  , 0  ) -- end decode
2134 			    , 0  ) -- end nvl
2135 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2136 						* PJI_UTILS.GET_MAU (fact.currency_code)	bill_labor_brdn_cost
2137 	 , ROUND (
2141 			  , '00'   , fact.bill_labor_hrs
2138              NVL (
2139             DECODE (
2140                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2142 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.bill_labor_hrs / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2143 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.bill_labor_hrs / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2144 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.bill_labor_hrs / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2145 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.bill_labor_hrs / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2146 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.bill_labor_hrs / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2147 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.bill_labor_hrs / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2148 			  , '0-1'  , fact.bill_labor_hrs
2149 			  , '1-1'  , fact.bill_labor_hrs
2150 			  , 0  ) -- end decode
2151 			    , 0  ) -- end nvl
2152 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2153 						* PJI_UTILS.GET_MAU (fact.currency_code)	bill_labor_hrs
2154 	 , ROUND (
2155              NVL (
2156             DECODE (
2157                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2158 			  , '00'   , fact.equipment_raw_cost
2159 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.equipment_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2160 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.equipment_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2161 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.equipment_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2162 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.equipment_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2163 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.equipment_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2164 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.equipment_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2165 			  , '0-1'  , fact.equipment_raw_cost
2166 			  , '1-1'  , fact.equipment_raw_cost
2167 			  , 0  ) -- end decode
2168 			    , 0  ) -- end nvl
2169 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2170 						* PJI_UTILS.GET_MAU (fact.currency_code)	equipment_raw_cost
2171 	 , ROUND (
2172              NVL (
2173             DECODE (
2174                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2175 			  , '00'   , fact.equipment_brdn_cost
2176 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.equipment_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2177 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.equipment_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2178 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.equipment_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2179 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.equipment_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2180 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.equipment_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2181 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.equipment_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2182 			  , '0-1'  , fact.equipment_brdn_cost
2183 			  , '1-1'  , fact.equipment_brdn_cost
2184 			  , 0  ) -- end decode
2185 			    , 0  ) -- end nvl
2186 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2187 						* PJI_UTILS.GET_MAU (fact.currency_code)	equipment_brdn_cost
2188 	 , ROUND (
2189              NVL (
2190             DECODE (
2191                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2192 			  , '00'   , fact.capitalizable_raw_cost
2193 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.capitalizable_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2194 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.capitalizable_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2195 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.capitalizable_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2196 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.capitalizable_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2197 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.capitalizable_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2198 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.capitalizable_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2199 			  , '0-1'  , fact.capitalizable_raw_cost
2200 			  , '1-1'  , fact.capitalizable_raw_cost
2201 			  , 0  ) -- end decode
2202 			    , 0  ) -- end nvl
2203 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2204 						* PJI_UTILS.GET_MAU (fact.currency_code)	capitalizable_raw_cost
2205 	 , ROUND (
2206              NVL (
2207             DECODE (
2208                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2209 			  , '00'   , fact.capitalizable_brdn_cost
2213 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.capitalizable_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2210 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.capitalizable_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2211 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.capitalizable_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2212 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.capitalizable_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2214 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.capitalizable_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2215 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.capitalizable_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2216 			  , '0-1'  , fact.capitalizable_brdn_cost
2217 			  , '1-1'  , fact.capitalizable_brdn_cost
2218 			  , 0  ) -- end decode
2219 			    , 0  ) -- end nvl
2220 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2221 						* PJI_UTILS.GET_MAU (fact.currency_code)	capitalizable_brdn_cost
2222 	 , ROUND (
2223              NVL (
2224             DECODE (
2225                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2226 			  , '00'   , fact.labor_raw_cost
2227 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.labor_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2228 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.labor_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2229 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.labor_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2230 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.labor_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2231 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.labor_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2232 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.labor_raw_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2233 			  , '0-1'  , fact.labor_raw_cost
2234 			  , '1-1'  , fact.labor_raw_cost
2235 			  , 0  ) -- end decode
2236 			    , 0  ) -- end nvl
2237 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2238 						* PJI_UTILS.GET_MAU (fact.currency_code)	labor_raw_cost
2239 	 , ROUND (
2240              NVL (
2241             DECODE (
2242                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2243 			  , '00'   , fact.labor_brdn_cost
2244 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.labor_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2245 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.labor_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2246 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.labor_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2247 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.labor_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2248 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.labor_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2249 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.labor_brdn_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2250 			  , '0-1'  , fact.labor_brdn_cost
2251 			  , '1-1'  , fact.labor_brdn_cost
2252 			  , 0  ) -- end decode
2253 			    , 0  ) -- end nvl
2254 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2255 						* PJI_UTILS.GET_MAU (fact.currency_code)	labor_brdn_cost
2256 	 , ROUND (
2257              NVL (
2258             DECODE (
2259                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2260 			  , '00'   , fact.labor_hrs
2261 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.labor_hrs / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2262 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.labor_hrs / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2263 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.labor_hrs / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2264 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.labor_hrs / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2265 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.labor_hrs / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2266 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.labor_hrs / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2267 			  , '0-1'  , fact.labor_hrs
2268 			  , '1-1'  , fact.labor_hrs
2269 			  , 0  ) -- end decode
2270 			    , 0  ) -- end nvl
2271 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2272 						* PJI_UTILS.GET_MAU (fact.currency_code)	labor_hrs
2273 	 , ROUND (
2274              NVL (
2275             DECODE (
2276                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2277 			  , '00'   , fact.labor_revenue
2278 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.labor_revenue / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2279 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.labor_revenue / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2280 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.labor_revenue / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2281 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.labor_revenue / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2282 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.labor_revenue / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2286 			  , 0  ) -- end decode
2283 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.labor_revenue / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2284 			  , '0-1'  , fact.labor_revenue
2285 			  , '1-1'  , fact.labor_revenue
2287 			    , 0  ) -- end nvl
2288 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2289 						* PJI_UTILS.GET_MAU (fact.currency_code)	labor_revenue
2290 	 , ROUND (
2291              NVL (
2292             DECODE (
2293                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2294 			  , '00'   , fact.equipment_hours
2295 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.equipment_hours / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2296 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.equipment_hours / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2297 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.equipment_hours / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2298 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.equipment_hours / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2299 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.equipment_hours / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2300 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.equipment_hours / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2301 			  , '0-1'  , fact.equipment_hours
2302 			  , '1-1'  , fact.equipment_hours
2303 			  , 0  ) -- end decode
2304 			    , 0  ) -- end nvl
2305 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2306 						* PJI_UTILS.GET_MAU (fact.currency_code)	equipment_hours
2307 	 , ROUND (
2308              NVL (
2309             DECODE (
2310                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2311 			  , '00'   , fact.billable_equipment_hours
2312 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.billable_equipment_hours / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2313 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.billable_equipment_hours / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2314 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.billable_equipment_hours / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2315 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.billable_equipment_hours / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2316 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.billable_equipment_hours / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2317 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.billable_equipment_hours / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2318 			  , '0-1'  , fact.billable_equipment_hours
2319 			  , '1-1'  , fact.billable_equipment_hours
2320 			  , 0  ) -- end decode
2321 			    , 0  ) -- end nvl
2322 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2323 						* PJI_UTILS.GET_MAU (fact.currency_code)	billable_equipment_hours
2324 	 , ROUND (
2325              NVL (
2326             DECODE (
2327                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2328 			  , '00'   , fact.sup_inv_committed_cost
2329 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.sup_inv_committed_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2330 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.sup_inv_committed_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2331 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.sup_inv_committed_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2332 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.sup_inv_committed_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2333 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.sup_inv_committed_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2334 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.sup_inv_committed_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2335 			  , '0-1'  , fact.sup_inv_committed_cost
2336 			  , '1-1'  , fact.sup_inv_committed_cost
2337 			  , 0  ) -- end decode
2338 			    , 0  ) -- end nvl
2339 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2340 						* PJI_UTILS.GET_MAU (fact.currency_code)	sup_inv_committed_cost
2341 	 , ROUND (
2342              NVL (
2343             DECODE (
2344                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2345 			  , '00'   , fact.po_committed_cost
2346 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.po_committed_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2347 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.po_committed_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2348 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.po_committed_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2349 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.po_committed_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2350 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.po_committed_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2351 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.po_committed_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2352 			  , '0-1'  , fact.po_committed_cost
2353 			  , '1-1'  , fact.po_committed_cost
2354 			  , 0  ) -- end decode
2355 			    , 0  ) -- end nvl
2359              NVL (
2356 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2357 						* PJI_UTILS.GET_MAU (fact.currency_code)	po_committed_cost
2358 	 , ROUND (
2360             DECODE (
2361                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2362 			  , '00'   , fact.pr_committed_cost
2363 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.pr_committed_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2364 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.pr_committed_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2365 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.pr_committed_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2366 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.pr_committed_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2367 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.pr_committed_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2368 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.pr_committed_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2369 			  , '0-1'  , fact.pr_committed_cost
2370 			  , '1-1'  , fact.pr_committed_cost
2371 			  , 0  ) -- end decode
2372 			    , 0  ) -- end nvl
2373 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2374 						* PJI_UTILS.GET_MAU (fact.currency_code)	pr_committed_cost
2375 	 , ROUND (
2376              NVL (
2377             DECODE (
2378                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2379 			  , '00'   , fact.oth_committed_cost
2380 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.oth_committed_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2381 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.oth_committed_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2382 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.oth_committed_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2383 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.oth_committed_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2384 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.oth_committed_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2385 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.oth_committed_cost / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2386 			  , '0-1'  , fact.oth_committed_cost
2387 			  , '1-1'  , fact.oth_committed_cost
2388 			  , 0  ) -- end decode
2389 			    , 0  ) -- end nvl
2390 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2391 						* PJI_UTILS.GET_MAU (fact.currency_code)	oth_committed_cost
2392 	 , ROUND (
2393              NVL (
2394             DECODE (
2395                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2396 			  , '00'   , fact.ACT_LABOR_HRS
2397 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_LABOR_HRS / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2398 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_LABOR_HRS / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2399 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ACT_LABOR_HRS / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2400 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ACT_LABOR_HRS / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2401 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_LABOR_HRS / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2402 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_LABOR_HRS / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2403 			  , '0-1'  , fact.ACT_LABOR_HRS
2404 			  , '1-1'  , fact.ACT_LABOR_HRS
2405 			  , 0  ) -- end decode
2406 			    , 0  ) -- end nvl
2407 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2408 						* PJI_UTILS.GET_MAU (fact.currency_code)	ACT_LABOR_HRS
2409 	 , ROUND (
2410              NVL (
2411             DECODE (
2412                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2413 			  , '00'   , fact.ACT_EQUIP_HRS
2414 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_EQUIP_HRS / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2415 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_EQUIP_HRS / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2416 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ACT_EQUIP_HRS / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2417 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ACT_EQUIP_HRS / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2418 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_EQUIP_HRS / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2419 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_EQUIP_HRS / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2420 			  , '0-1'  , fact.ACT_EQUIP_HRS
2421 			  , '1-1'  , fact.ACT_EQUIP_HRS
2422 			  , 0  ) -- end decode
2423 			    , 0  ) -- end nvl
2424 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2425 						* PJI_UTILS.GET_MAU (fact.currency_code)	ACT_EQUIP_HRS
2426 	 , ROUND (
2427              NVL (
2428             DECODE (
2429                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2430 			  , '00'   , fact.ACT_LABOR_BRDN_COST
2431 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_LABOR_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2432 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_LABOR_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2436 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_LABOR_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2433 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ACT_LABOR_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2434 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ACT_LABOR_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2435 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_LABOR_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2437 			  , '0-1'  , fact.ACT_LABOR_BRDN_COST
2438 			  , '1-1'  , fact.ACT_LABOR_BRDN_COST
2439 			  , 0  ) -- end decode
2440 			    , 0  ) -- end nvl
2441 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2442 						* PJI_UTILS.GET_MAU (fact.currency_code)	ACT_LABOR_BRDN_COST
2443 	 , ROUND (
2444              NVL (
2445             DECODE (
2446                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2447 			  , '00'   , fact.ACT_EQUIP_BRDN_COST
2448 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_EQUIP_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2449 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_EQUIP_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2450 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ACT_EQUIP_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2451 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ACT_EQUIP_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2452 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_EQUIP_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2453 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_EQUIP_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2454 			  , '0-1'  , fact.ACT_EQUIP_BRDN_COST
2455 			  , '1-1'  , fact.ACT_EQUIP_BRDN_COST
2456 			  , 0  ) -- end decode
2457 			    , 0  ) -- end nvl
2458 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2459 						* PJI_UTILS.GET_MAU (fact.currency_code)	ACT_EQUIP_BRDN_COST
2460 	 , ROUND (
2461              NVL (
2462             DECODE (
2463                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2464 			  , '00'   , fact.ACT_BRDN_COST
2465 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2466 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2467 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ACT_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2468 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ACT_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2469 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2470 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2471 			  , '0-1'  , fact.ACT_BRDN_COST
2472 			  , '1-1'  , fact.ACT_BRDN_COST
2473 			  , 0  ) -- end decode
2474 			    , 0  ) -- end nvl
2475 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2476 						* PJI_UTILS.GET_MAU (fact.currency_code)	ACT_BRDN_COST
2477 	 , ROUND (
2478              NVL (
2479             DECODE (
2480                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2481 			  , '00'   , fact.ACT_RAW_COST
2482 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2483 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2484 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ACT_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2485 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ACT_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2486 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2487 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2488 			  , '0-1'  , fact.ACT_RAW_COST
2489 			  , '1-1'  , fact.ACT_RAW_COST
2490 			  , 0  ) -- end decode
2491 			    , 0  ) -- end nvl
2492 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2493 						* PJI_UTILS.GET_MAU (fact.currency_code)	ACT_RAW_COST
2494 	 , ROUND (
2495              NVL (
2496             DECODE (
2497                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2498 			  , '00'   , fact.ACT_REVENUE
2499 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_REVENUE / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2500 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_REVENUE / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2501 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ACT_REVENUE / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2502 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ACT_REVENUE / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2503 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_REVENUE / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2504 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_REVENUE / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2505 			  , '0-1'  , fact.ACT_REVENUE
2506 			  , '1-1'  , fact.ACT_REVENUE
2507 			  , 0  ) -- end decode
2508 			    , 0  ) -- end nvl
2509 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2513             DECODE (
2510 						* PJI_UTILS.GET_MAU (fact.currency_code)	ACT_REVENUE
2511 	 , ROUND (
2512              NVL (
2514                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2515 			  , '00'   , fact.ACT_LABOR_RAW_COST
2516 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_LABOR_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2517 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_LABOR_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2518 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ACT_LABOR_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2519 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ACT_LABOR_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2520 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_LABOR_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2521 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_LABOR_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2522 			  , '0-1'  , fact.ACT_LABOR_RAW_COST
2523 			  , '1-1'  , fact.ACT_LABOR_RAW_COST
2524 			  , 0  ) -- end decode
2525 			    , 0  ) -- end nvl
2526 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2527 						* PJI_UTILS.GET_MAU (fact.currency_code)	ACT_LABOR_RAW_COST
2528 	 , ROUND (
2529              NVL (
2530             DECODE (
2531                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2532 			  , '00'   , fact.ACT_EQUIP_RAW_COST
2533 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_EQUIP_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2534 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_EQUIP_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2535 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ACT_EQUIP_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2536 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ACT_EQUIP_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2537 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_EQUIP_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2538 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ACT_EQUIP_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2539 			  , '0-1'  , fact.ACT_EQUIP_RAW_COST
2540 			  , '1-1'  , fact.ACT_EQUIP_RAW_COST
2541 			  , 0  ) -- end decode
2542 			    , 0  ) -- end nvl
2543 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2544 						* PJI_UTILS.GET_MAU (fact.currency_code)	ACT_EQUIP_RAW_COST
2545 	 , ROUND (
2546              NVL (
2547             DECODE (
2548                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2549 			  , '00'   , fact.ETC_LABOR_HRS
2550 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_LABOR_HRS / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2551 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_LABOR_HRS / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2552 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ETC_LABOR_HRS / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2553 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ETC_LABOR_HRS / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2554 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_LABOR_HRS / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2555 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_LABOR_HRS / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2556 			  , '0-1'  , fact.ETC_LABOR_HRS
2557 			  , '1-1'  , fact.ETC_LABOR_HRS
2558 			  , 0  ) -- end decode
2559 			    , 0  ) -- end nvl
2560 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2561 						* PJI_UTILS.GET_MAU (fact.currency_code)	ETC_LABOR_HRS
2562 	 , ROUND (
2563              NVL (
2564             DECODE (
2565                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2566 			  , '00'   , fact.ETC_EQUIP_HRS
2567 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_EQUIP_HRS / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2568 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_EQUIP_HRS / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2569 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ETC_EQUIP_HRS / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2570 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ETC_EQUIP_HRS / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2571 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_EQUIP_HRS / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2572 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_EQUIP_HRS / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2573 			  , '0-1'  , fact.ETC_EQUIP_HRS
2574 			  , '1-1'  , fact.ETC_EQUIP_HRS
2575 			  , 0  ) -- end decode
2576 			    , 0  ) -- end nvl
2577 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2578 						* PJI_UTILS.GET_MAU (fact.currency_code)	ETC_EQUIP_HRS
2579 	 , ROUND (
2580              NVL (
2581             DECODE (
2582                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2583 			  , '00'   , fact.ETC_LABOR_BRDN_COST
2584 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_LABOR_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2585 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_LABOR_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2586 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ETC_LABOR_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2590 			  , '0-1'  , fact.ETC_LABOR_BRDN_COST
2587 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ETC_LABOR_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2588 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_LABOR_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2589 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_LABOR_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2591 			  , '1-1'  , fact.ETC_LABOR_BRDN_COST
2592 			  , 0  ) -- end decode
2593 			    , 0  ) -- end nvl
2594 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2595 						* PJI_UTILS.GET_MAU (fact.currency_code)	ETC_LABOR_BRDN_COST
2596 	 , ROUND (
2597              NVL (
2598             DECODE (
2599                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2600 			  , '00'   , fact.ETC_EQUIP_BRDN_COST
2601 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_EQUIP_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2602 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_EQUIP_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2603 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ETC_EQUIP_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2604 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ETC_EQUIP_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2605 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_EQUIP_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2606 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_EQUIP_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2607 			  , '0-1'  , fact.ETC_EQUIP_BRDN_COST
2608 			  , '1-1'  , fact.ETC_EQUIP_BRDN_COST
2609 			  , 0  ) -- end decode
2610 			    , 0  ) -- end nvl
2611 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2612 						* PJI_UTILS.GET_MAU (fact.currency_code)	ETC_EQUIP_BRDN_COST
2613 	 , ROUND (
2614              NVL (
2615             DECODE (
2616                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2617 			  , '00'   , fact.ETC_BRDN_COST
2618 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2619 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2620 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ETC_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2621 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ETC_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2622 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2623 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_BRDN_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2624 			  , '0-1'  , fact.ETC_BRDN_COST
2625 			  , '1-1'  , fact.ETC_BRDN_COST
2626 			  , 0  ) -- end decode
2627 			    , 0  ) -- end nvl
2628 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2629 						* PJI_UTILS.GET_MAU (fact.currency_code)	ETC_BRDN_COST
2630 	 , ROUND (
2631              NVL (
2632             DECODE (
2633                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2634 			  , '00'   , fact.ETC_RAW_COST
2635 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2636 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2637 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ETC_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2638 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ETC_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2639 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2640 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2641 			  , '0-1'  , fact.ETC_RAW_COST
2642 			  , '1-1'  , fact.ETC_RAW_COST
2643 			  , 0  ) -- end decode
2644 			    , 0  ) -- end nvl
2645 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2646 						* PJI_UTILS.GET_MAU (fact.currency_code)	ETC_RAW_COST
2647 	 , ROUND (
2648              NVL (
2649             DECODE (
2650                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2651 			  , '00'   , fact.ETC_LABOR_RAW_COST
2652 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_LABOR_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2653 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_LABOR_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2654 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ETC_LABOR_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2655 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ETC_LABOR_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2656 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_LABOR_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2657 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_LABOR_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2658 			  , '0-1'  , fact.ETC_LABOR_RAW_COST
2659 			  , '1-1'  , fact.ETC_LABOR_RAW_COST
2660 			  , 0  ) -- end decode
2661 			    , 0  ) -- end nvl
2662 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2663 						* PJI_UTILS.GET_MAU (fact.currency_code)	ETC_LABOR_RAW_COST
2667                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2664 	 , ROUND (
2665              NVL (
2666             DECODE (
2668 			  , '00'   , fact.ETC_EQUIP_RAW_COST
2669 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_EQUIP_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2670 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_EQUIP_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2671 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ETC_EQUIP_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2672 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.ETC_EQUIP_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2673 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_EQUIP_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2674 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.ETC_EQUIP_RAW_COST / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2675 			  , '0-1'  , fact.ETC_EQUIP_RAW_COST
2676 			  , '1-1'  , fact.ETC_EQUIP_RAW_COST
2677 			  , 0  ) -- end decode
2678 			    , 0  ) -- end nvl
2679 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2680 						* PJI_UTILS.GET_MAU (fact.currency_code)	ETC_EQUIP_RAW_COST
2681 	 , ROUND (
2682              NVL (
2683             DECODE (
2684                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2685 			  , '00'   , fact.custom1
2686 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom1 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2687 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom1 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2688 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom1 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2689 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom1 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2690 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom1 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2691 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom1 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2692 			  , '0-1'  , fact.custom1
2693 			  , '1-1'  , fact.custom1
2694 			  , 0  ) -- end decode
2695 			    , 0  ) -- end nvl
2696 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2697 						* PJI_UTILS.GET_MAU (fact.currency_code)	custom1
2698 	 , ROUND (
2699              NVL (
2700             DECODE (
2701                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2702 			  , '00'   , fact.custom2
2703 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom2 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2704 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom2 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2705 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom2 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2706 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom2 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2707 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom2 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2708 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom2 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2709 			  , '0-1'  , fact.custom2
2710 			  , '1-1'  , fact.custom2
2711 			  , 0  ) -- end decode
2712 			    , 0  ) -- end nvl
2713 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2714 						* PJI_UTILS.GET_MAU (fact.currency_code)	custom2
2715 	 , ROUND (
2716              NVL (
2717             DECODE (
2718                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2719 			  , '00'   , fact.custom3
2720 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom3 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2721 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom3 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2722 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom3 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2723 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom3 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2724 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom3 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2725 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom3 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2726 			  , '0-1'  , fact.custom3
2727 			  , '1-1'  , fact.custom3
2728 			  , 0  ) -- end decode
2729 			    , 0  ) -- end nvl
2730 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2731 						* PJI_UTILS.GET_MAU (fact.currency_code)	custom3
2732 	 , ROUND (
2733              NVL (
2734             DECODE (
2735                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2736 			  , '00'   , fact.custom4
2737 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom4 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2738 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom4 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2739 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom4 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2740 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom4 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2741 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom4 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2745 			  , 0  ) -- end decode
2742 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom4 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2743 			  , '0-1'  , fact.custom4
2744 			  , '1-1'  , fact.custom4
2746 			    , 0  ) -- end nvl
2747 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2748 						* PJI_UTILS.GET_MAU (fact.currency_code)	custom4
2749 	 , ROUND (
2750              NVL (
2751             DECODE (
2752                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2753 			  , '00'   , fact.custom5
2754 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom5 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2755 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom5 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2756 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom5 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2757 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom5 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2758 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom5 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2759 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom5 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2760 			  , '0-1'  , fact.custom5
2761 			  , '1-1'  , fact.custom5
2762 			  , 0  ) -- end decode
2763 			    , 0  ) -- end nvl
2764 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2765 						* PJI_UTILS.GET_MAU (fact.currency_code)	custom5
2766 	 , ROUND (
2767              NVL (
2768             DECODE (
2769                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2770 			  , '00'   , fact.custom6
2771 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom6 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2772 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom6 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2773 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom6 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2774 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom6 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2775 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom6 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2776 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom6 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2777 			  , '0-1'  , fact.custom6
2778 			  , '1-1'  , fact.custom6
2779 			  , 0  ) -- end decode
2780 			    , 0  ) -- end nvl
2781 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2782 						* PJI_UTILS.GET_MAU (fact.currency_code)	custom6
2783 	 , ROUND (
2784              NVL (
2785             DECODE (
2786                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2787 			  , '00'   , fact.custom7
2788 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom7 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2789 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom7 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2790 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom7 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2791 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom7 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2792 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom7 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2793 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom7 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2794 			  , '0-1'  , fact.custom7
2795 			  , '1-1'  , fact.custom7
2796 			  , 0  ) -- end decode
2797 			    , 0  ) -- end nvl
2798 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2799 						* PJI_UTILS.GET_MAU (fact.currency_code)	custom7
2800 	 , ROUND (
2801              NVL (
2802             DECODE (
2803                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2804 			  , '00'   , fact.custom8
2805 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom8 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2806 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom8 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2807 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom8 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2808 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom8 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2809 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom8 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2810 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom8 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2811 			  , '0-1'  , fact.custom8
2812 			  , '1-1'  , fact.custom8
2813 			  , 0  ) -- end decode
2814 			    , 0  ) -- end nvl
2815 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2816 						* PJI_UTILS.GET_MAU (fact.currency_code)	custom8
2817 	 , ROUND (
2818              NVL (
2819             DECODE (
2820                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2821 			  , '00'   , fact.custom9
2822 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom9 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2823 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom9 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2824 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom9 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2828 			  , '0-1'  , fact.custom9
2825 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom9 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2826 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom9 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2827 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom9 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2829 			  , '1-1'  , fact.custom9
2830 			  , 0  ) -- end decode
2831 			    , 0  ) -- end nvl
2832 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2833 						* PJI_UTILS.GET_MAU (fact.currency_code)	custom9
2834 	 , ROUND (
2835              NVL (
2836             DECODE (
2837                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2838 			  , '00'   , fact.custom10
2839 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom10 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2840 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom10 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2841 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom10 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2842 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom10 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2843 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom10 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2844 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom10 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2845 			  , '0-1'  , fact.custom10
2846 			  , '1-1'  , fact.custom10
2847 			  , 0  ) -- end decode
2848 			    , 0  ) -- end nvl
2849 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2850 						* PJI_UTILS.GET_MAU (fact.currency_code)	custom10
2851 	 , ROUND (
2852              NVL (
2853             DECODE (
2854                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2855 			  , '00'   , fact.custom11
2856 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom11 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2857 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom11 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2858 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom11 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2859 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom11 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2860 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom11 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2861 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom11 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2862 			  , '0-1'  , fact.custom11
2863 			  , '1-1'  , fact.custom11
2864 			  , 0  ) -- end decode
2865 			    , 0  ) -- end nvl
2866 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2867 						* PJI_UTILS.GET_MAU (fact.currency_code)	custom11
2868 	 , ROUND (
2869              NVL (
2870             DECODE (
2871                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2872 			  , '00'   , fact.custom12
2873 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom12 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2874 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom12 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2875 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom12 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2876 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom12 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2877 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom12 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2878 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom12 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2879 			  , '0-1'  , fact.custom12
2880 			  , '1-1'  , fact.custom12
2881 			  , 0  ) -- end decode
2882 			    , 0  ) -- end nvl
2883 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2884 						* PJI_UTILS.GET_MAU (fact.currency_code)	custom12
2885 	 , ROUND (
2886              NVL (
2887             DECODE (
2888                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2889 			  , '00'   , fact.custom13
2890 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom13 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2891 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom13 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2892 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom13 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2893 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom13 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2894 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom13 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2895 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom13 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2896 			  , '0-1'  , fact.custom13
2897 			  , '1-1'  , fact.custom13
2898 			  , 0  ) -- end decode
2899 			    , 0  ) -- end nvl
2900 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2901 						* PJI_UTILS.GET_MAU (fact.currency_code)	custom13
2902 	 , ROUND (
2903              NVL (
2904             DECODE (
2905                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2906 			  , '00'   , fact.custom14
2910 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom14 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2907 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom14 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2908 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom14 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2909 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom14 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2911 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom14 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2912 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom14 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2913 			  , '0-1'  , fact.custom14
2914 			  , '1-1'  , fact.custom14
2915 			  , 0  ) -- end decode
2916 			    , 0  ) -- end nvl
2917 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2918 						* PJI_UTILS.GET_MAU (fact.currency_code)	custom14
2919 	 , ROUND (
2920              NVL (
2921             DECODE (
2922                      ( sign (non_pa_cal.start_date - pa_cal.start_date) || sign (non_pa_cal.end_date - pa_cal.end_date) )
2923 			  , '00'   , fact.custom15
2924 			  , '01'   , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom15 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2925 			  , '-11'  , (pa_cal.end_date - pa_cal.start_date + 1) * fact.custom15 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2926 			  , '10'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom15 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2927 			  , '11'   , (pa_cal.end_date - non_pa_cal.start_date + 1) * fact.custom15 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2928 			  , '-10'  , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom15 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2929 			  , '-1-1' , (non_pa_cal.end_date - pa_cal.start_date + 1) * fact.custom15 / (non_pa_cal.end_date - non_pa_cal.start_date + 1)
2930 			  , '0-1'  , fact.custom15
2931 			  , '1-1'  , fact.custom15
2932 			  , 0  ) -- end decode
2933 			    , 0  ) -- end nvl
2934 			/ PJI_UTILS.GET_MAU (fact.currency_code) )  -- end round
2935 						* PJI_UTILS.GET_MAU (fact.currency_code)	custom15
2936      , 'CF'   line_type
2937 	 , fact.time_dangling_flag time_dangling_flag
2938 	 , fact.rate_dangling_flag rate_dangling_flag
2939    FROM   pji_fp_aggr_pjp1 fact
2940         , pji_time_cal_period  non_pa_cal
2941    	 , pji_time_ent_period  pa_cal
2942        , pji_fm_extr_plnver4  ver
2943    WHERE  fact.CALENDAR_TYPE IN ('P', 'G')
2944       AND fact.worker_id = g_worker_id
2945       AND non_pa_cal.cal_period_id = fact.time_id
2946       AND fact.line_type like 'OF%'
2947       AND (
2948 	       ( pa_cal.start_date >= non_pa_cal.start_date  AND pa_cal.end_date <= non_pa_cal.end_date )
2949 	    OR ( pa_cal.start_date <= non_pa_cal.start_date  AND pa_cal.end_date >= non_pa_cal.end_date )
2950 	    OR ( pa_cal.start_date <= non_pa_cal.start_date  AND pa_cal.end_date <= non_pa_cal.end_date AND pa_cal.end_date >= non_pa_cal.start_date )
2951 	    OR ( pa_cal.start_date >= non_pa_cal.start_date  AND pa_cal.end_date >= non_pa_cal.end_date AND pa_cal.start_date <= non_pa_cal.end_date )
2952           )
2953       AND fact.time_dangling_flag IS NULL
2954       AND fact.rate_dangling_flag IS NULL
2955       AND fact.period_type_id = 32
2956       AND fact.plan_version_id = ver.plan_version_id
2957       AND ver.wp_flag = 'N'
2958       AND ver.baselined_flag = 'Y'
2959 	AND fact.rbs_version_id = NVL(ver.rbs_struct_version_id, -1)
2960       AND ver.plan_version_id > 0
2961 	  ) a
2962 	  GROUP BY
2963 	   a.PROJECT_ID
2964      , a.PROJECT_ORG_ID
2965      , a.PROJECT_ORGANIZATION_ID
2966      , a.PROJECT_ELEMENT_ID
2967      , a.TIME_ID
2968      , a.PERIOD_TYPE_ID
2969      , a.CALENDAR_TYPE
2970      , a.RBS_AGGR_LEVEL
2971      , a.WBS_ROLLUP_FLAG
2972      , a.PRG_ROLLUP_FLAG
2973      , a.CURR_RECORD_TYPE_ID
2974      , a.CURRENCY_CODE
2975      , a.RBS_ELEMENT_ID
2976      , a.RBS_VERSION_ID
2977      , a.PLAN_VERSION_ID
2978      , a.PLAN_TYPE_ID
2979 	 , a.LINE_TYPE
2980 	 , a.TIME_DANGLING_FLAG
2981 	 , a.RATE_DANGLING_FLAG;
2982   End of bug 4005006*/
2983 
2984     INSERT INTO pji_fp_aggr_pjp1
2985     (
2986        WORKER_ID
2987      , PROJECT_ID
2988      , PROJECT_ORG_ID
2989      , PROJECT_ORGANIZATION_ID
2990      -- , PARTITION_ID
2991      , PROJECT_ELEMENT_ID
2992      , TIME_ID
2993      , PERIOD_TYPE_ID
2994      , CALENDAR_TYPE
2995      , RBS_AGGR_LEVEL
2996      , WBS_ROLLUP_FLAG
2997      , PRG_ROLLUP_FLAG
2998      , CURR_RECORD_TYPE_ID
2999      , CURRENCY_CODE
3000      , RBS_ELEMENT_ID
3001      , RBS_VERSION_ID
3002      , PLAN_VERSION_ID
3003      , PLAN_TYPE_ID
3004      , RAW_COST
3005      , BRDN_COST
3006      , REVENUE
3007      , BILL_RAW_COST
3008      , BILL_BRDN_COST
3009      , BILL_LABOR_RAW_COST
3010      , BILL_LABOR_BRDN_COST
3011      , BILL_LABOR_HRS
3012      , EQUIPMENT_RAW_COST
3013      , EQUIPMENT_BRDN_COST
3014      , CAPITALIZABLE_RAW_COST
3015      , CAPITALIZABLE_BRDN_COST
3016      , LABOR_RAW_COST
3017      , LABOR_BRDN_COST
3018      , LABOR_HRS
3019      , LABOR_REVENUE
3020      , EQUIPMENT_HOURS
3021      , BILLABLE_EQUIPMENT_HOURS
3022      , SUP_INV_COMMITTED_COST
3023      , PO_COMMITTED_COST
3024      , PR_COMMITTED_COST
3025      , OTH_COMMITTED_COST
3026      , ACT_LABOR_HRS
3027      , ACT_EQUIP_HRS
3028      , ACT_LABOR_BRDN_COST
3029      , ACT_EQUIP_BRDN_COST
3030      , ACT_BRDN_COST
3031      , ACT_RAW_COST
3032      , ACT_REVENUE
3036      , ETC_EQUIP_HRS
3033      , ACT_LABOR_RAW_COST
3034      , ACT_EQUIP_RAW_COST
3035      , ETC_LABOR_HRS
3037      , ETC_LABOR_BRDN_COST
3038      , ETC_EQUIP_BRDN_COST
3039      , ETC_BRDN_COST
3040      , ETC_RAW_COST
3041      , ETC_LABOR_RAW_COST
3042      , ETC_EQUIP_RAW_COST
3043      , CUSTOM1
3044      , CUSTOM2
3045      , CUSTOM3
3046      , CUSTOM4
3047      , CUSTOM5
3048      , CUSTOM6
3049      , CUSTOM7
3050      , CUSTOM8
3051      , CUSTOM9
3052      , CUSTOM10
3053      , CUSTOM11
3054      , CUSTOM12
3055      , CUSTOM13
3056      , CUSTOM14
3057      , CUSTOM15
3058      , TIME_DANGLING_FLAG
3059      , RATE_DANGLING_FLAG
3060      , PRG_LEVEL
3061      , PLAN_TYPE_CODE    /* 4471527 */
3062 	)
3063    SELECT
3064            g_worker_id worker_id
3065          , a.PROJECT_ID
3066          , a.PROJECT_ORG_ID
3067          , a.PROJECT_ORGANIZATION_ID
3068          , a.PROJECT_ELEMENT_ID
3069          , a.TIME_ID
3070          , a.PERIOD_TYPE_ID
3071          , a.CALENDAR_TYPE
3072          , a.RBS_AGGR_LEVEL
3073          , a.WBS_ROLLUP_FLAG
3074          , a.PRG_ROLLUP_FLAG
3075          , a.CURR_RECORD_TYPE_ID
3076          , a.CURRENCY_CODE
3077          , a.RBS_ELEMENT_ID
3078          , a.RBS_VERSION_ID
3079          , a.PLAN_VERSION_ID
3080          , a.PLAN_TYPE_ID
3081 	 , SUM(ROUND (nvl(a.raw_cost,0)*a.factor/a.mau)*a.mau) raw_cost
3082 	 , SUM(ROUND (nvl(a.brdn_cost,0)*a.factor/a.mau)*a.mau) brdn_cost
3083 	 , SUM(ROUND (nvl(a.revenue,0)*a.factor/a.mau)*a.mau) revenue
3084 	 , SUM(ROUND (nvl(a.bill_raw_cost,0)*a.factor/a.mau)*a.mau) bill_raw_cost
3085 	 , SUM(ROUND (nvl(a.bill_brdn_cost,0)*a.factor/a.mau)*a.mau) bill_brdn_cost
3086 	 , SUM(ROUND (nvl(a.bill_labor_raw_cost,0)*a.factor/a.mau)*a.mau) bill_labor_raw_cost
3087 	 , SUM(ROUND (nvl(a.bill_labor_brdn_cost,0)*a.factor/a.mau)*a.mau) bill_labor_brdn_cost
3088 	 , SUM(ROUND (nvl(a.bill_labor_hrs,0)*a.factor/a.mau)*a.mau) bill_labor_hrs
3089 	 , SUM(ROUND (nvl(a.equipment_raw_cost,0)*a.factor/a.mau)*a.mau) equipment_raw_cost
3090 	 , SUM(ROUND (nvl(a.equipment_brdn_cost,0)*a.factor/a.mau)*a.mau) equipment_brdn_cost
3091 	 , SUM(ROUND (nvl(a.capitalizable_raw_cost,0)*a.factor/a.mau)*a.mau) capitalizable_raw_cost
3092 	 , SUM(ROUND (nvl(a.capitalizable_brdn_cost,0)*a.factor/a.mau)*a.mau) capitalizable_brdn_cost
3093 	 , SUM(ROUND (nvl(a.labor_raw_cost,0)*a.factor/a.mau)*a.mau) labor_raw_cost
3094 	 , SUM(ROUND (nvl(a.labor_brdn_cost,0)*a.factor/a.mau)*a.mau) labor_brdn_cost
3095 	 , SUM(ROUND (nvl(a.labor_hrs,0)*a.factor/a.mau)*a.mau) labor_hrs
3096 	 , SUM(ROUND (nvl(a.labor_revenue,0)*a.factor/a.mau)*a.mau) labor_revenue
3097 	 , SUM(ROUND (nvl(a.equipment_hours,0)*a.factor/a.mau)*a.mau) equipment_hours
3098 	 , SUM(ROUND (nvl(a.billable_equipment_hours,0)*a.factor/a.mau)*a.mau) billable_equipment_hours
3099 	 , SUM(ROUND (nvl(a.sup_inv_committed_cost,0)*a.factor/a.mau)*a.mau) sup_inv_committed_cost
3100 	 , SUM(ROUND (nvl(a.po_committed_cost,0)*a.factor/a.mau)*a.mau) po_committed_cost
3101 	 , SUM(ROUND (nvl(a.pr_committed_cost,0)*a.factor/a.mau)*a.mau) pr_committed_cost
3102 	 , SUM(ROUND (nvl(a.oth_committed_cost,0)*a.factor/a.mau)*a.mau) oth_committed_cost
3103 	 , SUM(ROUND (nvl(a.ACT_LABOR_HRS,0)*a.factor/a.mau)*a.mau) ACT_LABOR_HRS
3104 	 , SUM(ROUND (nvl(a.ACT_EQUIP_HRS,0)*a.factor/a.mau)*a.mau) ACT_EQUIP_HRS
3105 	 , SUM(ROUND (nvl(a.ACT_LABOR_BRDN_COST,0)*a.factor/a.mau)*a.mau) ACT_LABOR_BRDN_COST
3106 	 , SUM(ROUND (nvl(a.ACT_EQUIP_BRDN_COST,0)*a.factor/a.mau)*a.mau) ACT_EQUIP_BRDN_COST
3107 	 , SUM(ROUND (nvl(a.ACT_BRDN_COST,0)*a.factor/a.mau)*a.mau) ACT_BRDN_COST
3108 	 , SUM(ROUND (nvl(a.ACT_RAW_COST,0)*a.factor/a.mau)*a.mau) ACT_RAW_COST
3109 	 , SUM(ROUND (nvl(a.ACT_REVENUE,0)*a.factor/a.mau)*a.mau) ACT_REVENUE
3110 	 , SUM(ROUND (nvl(a.ACT_LABOR_RAW_COST,0)*a.factor/a.mau)*a.mau) ACT_LABOR_RAW_COST
3111 	 , SUM(ROUND (nvl(a.ACT_EQUIP_RAW_COST,0)*a.factor/a.mau)*a.mau) ACT_EQUIP_RAW_COST
3112 	 , SUM(ROUND (nvl(a.ETC_LABOR_HRS,0)*a.factor/a.mau)*a.mau) ETC_LABOR_HRS
3113 	 , SUM(ROUND (nvl(a.ETC_EQUIP_HRS,0)*a.factor/a.mau)*a.mau) ETC_EQUIP_HRS
3114 	 , SUM(ROUND (nvl(a.ETC_LABOR_BRDN_COST,0)*a.factor/a.mau)*a.mau) ETC_LABOR_BRDN_COST
3115 	 , SUM(ROUND (nvl(a.ETC_EQUIP_BRDN_COST,0)*a.factor/a.mau)*a.mau) ETC_EQUIP_BRDN_COST
3116 	 , SUM(ROUND (nvl(a.ETC_BRDN_COST,0)*a.factor/a.mau)*a.mau) ETC_BRDN_COST
3117 	 , SUM(ROUND (nvl(a.ETC_RAW_COST,0)*a.factor/a.mau)*a.mau) ETC_RAW_COST
3118 	 , SUM(ROUND (nvl(a.ETC_LABOR_RAW_COST,0)*a.factor/a.mau)*a.mau) ETC_LABOR_RAW_COST
3119 	 , SUM(ROUND (nvl(a.ETC_EQUIP_RAW_COST,0)*a.factor/a.mau)*a.mau) ETC_EQUIP_RAW_COST
3120 	 , SUM(ROUND (nvl(a.custom1,0)*a.factor/a.mau)*a.mau) custom1
3121 	 , SUM(ROUND (nvl(a.custom2,0)*a.factor/a.mau)*a.mau) custom2
3122 	 , SUM(ROUND (nvl(a.custom3,0)*a.factor/a.mau)*a.mau) custom3
3123 	 , SUM(ROUND (nvl(a.custom4,0)*a.factor/a.mau)*a.mau) custom4
3124 	 , SUM(ROUND (nvl(a.custom5,0)*a.factor/a.mau)*a.mau) custom5
3125 	 , SUM(ROUND (nvl(a.custom6,0)*a.factor/a.mau)*a.mau) custom6
3126 	 , SUM(ROUND (nvl(a.custom7,0)*a.factor/a.mau)*a.mau) custom7
3127 	 , SUM(ROUND (nvl(a.custom8,0)*a.factor/a.mau)*a.mau) custom8
3128 	 , SUM(ROUND (nvl(a.custom9,0)*a.factor/a.mau)*a.mau) custom9
3129 	 , SUM(ROUND (nvl(a.custom10,0)*a.factor/a.mau)*a.mau) custom10
3130 	 , SUM(ROUND (nvl(a.custom11,0)*a.factor/a.mau)*a.mau) custom11
3131 	 , SUM(ROUND (nvl(a.custom12,0)*a.factor/a.mau)*a.mau) custom12
3132 	 , SUM(ROUND (nvl(a.custom13,0)*a.factor/a.mau)*a.mau) custom13
3133 	 , SUM(ROUND (nvl(a.custom14,0)*a.factor/a.mau)*a.mau) custom14
3134 	 , SUM(ROUND (nvl(a.custom15,0)*a.factor/a.mau)*a.mau) custom15
3135          , a.TIME_DANGLING_FLAG
3136          , a.RATE_DANGLING_FLAG
3137          , g_default_prg_level prg_level
3138          , a.PLAN_TYPE_CODE  PLAN_TYPE_CODE   /* 4471527 */
3142    	 , fact.project_ORG_ID project_ORG_ID
3139    FROM (
3140    SELECT /*+ NO_MERGE */
3141          fact.project_id  project_id
3143    	 , fact.project_ORGANIZATION_ID project_ORGANIZATION_ID
3144    	 , fact.PROJECT_ELEMENT_ID PROJECT_ELEMENT_ID
3145    	 , pa_cal.ent_period_id TIME_ID
3146    	 , fact.PERIOD_TYPE_ID PERIOD_TYPE_ID
3147    	 , 'E' CALENDAR_TYPE -- fact.CALENDAR_TYPE
3148          , fact.RBS_AGGR_LEVEL
3149          , fact.WBS_ROLLUP_FLAG
3150          , fact.PRG_ROLLUP_FLAG
3151    	 , fact.CURR_RECORD_TYPE_ID CURR_RECORD_TYPE_ID
3152    	 , fact.CURRENCY_CODE CURRENCY_CODE
3153    	 , fact.RBS_ELEMENT_ID RBS_ELEMENT_ID
3154    	 , fact.RBS_VERSION_ID RBS_VERSION_ID
3155    	 , fact.PLAN_VERSION_ID PLAN_VERSION_ID
3156 	 , fact.PLAN_TYPE_ID  PLAN_TYPE_ID
3157 	 , fact.raw_cost
3158 	 , fact.brdn_cost
3159 	 , fact.revenue
3160 	 , fact.bill_raw_cost
3161 	 , fact.bill_brdn_cost
3162 	 , fact.bill_labor_raw_cost
3163 	 , fact.bill_labor_brdn_cost
3164 	 , fact.bill_labor_hrs
3165 	 , fact.equipment_raw_cost
3166 	 , fact.equipment_brdn_cost
3167 	 , fact.capitalizable_raw_cost
3168 	 , fact.capitalizable_brdn_cost
3169 	 , fact.labor_raw_cost
3170 	 , fact.labor_brdn_cost
3171 	 , fact.labor_hrs
3172 	 , fact.labor_revenue
3173 	 , fact.equipment_hours
3174 	 , fact.billable_equipment_hours
3175 	 , fact.sup_inv_committed_cost
3176 	 , fact.po_committed_cost
3177 	 , fact.pr_committed_cost
3178 	 , fact.oth_committed_cost
3179 	 , fact.ACT_LABOR_HRS
3180 	 , fact.ACT_EQUIP_HRS
3181 	 , fact.ACT_LABOR_BRDN_COST
3182 	 , fact.ACT_EQUIP_BRDN_COST
3183 	 , fact.ACT_BRDN_COST
3184 	 , fact.ACT_RAW_COST
3185 	 , fact.ACT_REVENUE
3186 	 , fact.ACT_LABOR_RAW_COST
3187 	 , fact.ACT_EQUIP_RAW_COST
3188 	 , fact.ETC_LABOR_HRS
3189 	 , fact.ETC_EQUIP_HRS
3190 	 , fact.ETC_LABOR_BRDN_COST
3191 	 , fact.ETC_EQUIP_BRDN_COST
3192 	 , fact.ETC_BRDN_COST
3193 	 , fact.ETC_RAW_COST
3194 	 , fact.ETC_LABOR_RAW_COST
3195 	 , fact.ETC_EQUIP_RAW_COST
3196 	 , fact.custom1
3197 	 , fact.custom2
3198 	 , fact.custom3
3199 	 , fact.custom4
3200 	 , fact.custom5
3201 	 , fact.custom6
3202 	 , fact.custom7
3203 	 , fact.custom8
3204 	 , fact.custom9
3205 	 , fact.custom10
3206 	 , fact.custom11
3207 	 , fact.custom12
3208 	 , fact.custom13
3209 	 , fact.custom14
3210 	 , fact.custom15
3211 	 , fact.time_dangling_flag time_dangling_flag
3212 	 , fact.rate_dangling_flag rate_dangling_flag
3213          , cur.mau mau
3214          , (LEAST(non_pa_cal.end_date,pa_cal.end_date) -
3215                     Greatest(non_pa_cal.start_date,pa_cal.start_date)+1)
3216                               / (non_pa_cal.end_date - non_pa_cal.start_date+1) factor
3217          , fact.plan_type_code plan_type_code  /* 4471527 */
3218    FROM   pji_fp_aggr_pjp1 fact
3219         , pji_time_cal_period_v  non_pa_cal
3220         , pji_time_ent_period_v  pa_cal
3221         , pji_fm_extr_plnver4  ver
3222         , (SELECT currency_code,
3223                    decode(nvl(MINIMUM_ACCOUNTABLE_UNIT, power(10, (-1 * PRECISION))),
3224                       null, 0.01,
3225                          0, 1,
3226                          nvl(MINIMUM_ACCOUNTABLE_UNIT, power(10, (-1 * PRECISION)))) mau
3227               FROM FND_CURRENCIES) cur
3228    WHERE  fact.CALENDAR_TYPE IN ('P', 'G')
3229       AND fact.worker_id = g_worker_id
3230       AND VER.worker_id = g_worker_id
3231       AND non_pa_cal.cal_period_id = fact.time_id
3232       AND fact.line_type like 'OF%'
3233       AND non_pa_cal.start_date<= pa_cal.end_date
3234       AND non_pa_cal.end_Date >=pa_cal.start_date
3235       AND fact.currency_code = cur.currency_code
3236       AND fact.time_dangling_flag IS NULL
3237       AND fact.rate_dangling_flag IS NULL
3238       AND fact.period_type_id = 32
3239       AND fact.plan_version_id = ver.plan_version_id
3240       AND fact.plan_type_code = ver.plan_type_code     /* 4471527 */
3241       AND ver.wp_flag = 'N'
3242       AND ver.baselined_flag = 'Y'
3243 	AND fact.rbs_version_id = NVL (ver.rbs_struct_version_id , -1)
3244       AND ver.plan_version_id > 0
3245 	  ) a
3246 
3247      WHERE a.factor >0
3248 	  GROUP BY
3249 	   a.PROJECT_ID
3250      , a.PROJECT_ORG_ID
3251      , a.PROJECT_ORGANIZATION_ID
3252      , a.PROJECT_ELEMENT_ID
3253      , a.TIME_ID
3254      , a.PERIOD_TYPE_ID
3255      , a.CALENDAR_TYPE
3256      , a.RBS_AGGR_LEVEL
3257      , a.WBS_ROLLUP_FLAG
3258      , a.PRG_ROLLUP_FLAG
3259      , a.CURR_RECORD_TYPE_ID
3260      , a.CURRENCY_CODE
3261      , a.RBS_ELEMENT_ID
3262      , a.RBS_VERSION_ID
3263      , a.PLAN_VERSION_ID
3264      , a.PLAN_TYPE_ID
3265      , a.TIME_DANGLING_FLAG
3266      , a.RATE_DANGLING_FLAG
3267      , a.PLAN_TYPE_CODE ;      /* 4471527 */
3268 
3269 
3270 EXCEPTION
3271   WHEN OTHERS THEN
3272     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
3273                              p_procedure_name => ' PRORATE_TO_ENT_PG_PJP1_D ');
3274     RAISE;
3275 END;
3276 
3277 
3278 PROCEDURE PRORATE_TO_ENT_PG_FPRL_D IS
3279 BEGIN
3280 
3281     g_worker_id  := PJI_PJP_FP_CURR_WRAP.GET_WORKER_ID;
3282 
3283 EXCEPTION
3284   WHEN OTHERS THEN
3285     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
3286                              p_procedure_name => 'PRORATE_TO_ENT_PG_FPRL_D ');
3287     RAISE;
3288 END;
3289 
3290 
3291 PROCEDURE PRORATE_TO_ENT_N_PJP1_D IS
3292 BEGIN
3293 
3297     (
3294   g_worker_id  := PJI_PJP_FP_CURR_WRAP.GET_WORKER_ID;
3295 
3296     INSERT INTO pji_fp_aggr_pjp1  -- Non time phased entries in pjp1 table.
3298        WORKER_ID
3299      , PROJECT_ID
3300      , PROJECT_ORG_ID
3301      , PROJECT_ORGANIZATION_ID
3302      , PROJECT_ELEMENT_ID
3303      , TIME_ID
3304      , PERIOD_TYPE_ID
3305      , CALENDAR_TYPE
3306      , RBS_AGGR_LEVEL
3307      , WBS_ROLLUP_FLAG
3308      , PRG_ROLLUP_FLAG
3309      , CURR_RECORD_TYPE_ID
3310      , CURRENCY_CODE
3311      , RBS_ELEMENT_ID
3312      , RBS_VERSION_ID
3313      , PLAN_VERSION_ID
3314      , PLAN_TYPE_ID
3315      , RAW_COST
3316      , BRDN_COST
3317      , REVENUE
3318      , BILL_RAW_COST
3319      , BILL_BRDN_COST
3320      , BILL_LABOR_RAW_COST
3321      , BILL_LABOR_BRDN_COST
3322      , BILL_LABOR_HRS
3323      , EQUIPMENT_RAW_COST
3324      , EQUIPMENT_BRDN_COST
3325      , CAPITALIZABLE_RAW_COST
3326      , CAPITALIZABLE_BRDN_COST
3327      , LABOR_RAW_COST
3328      , LABOR_BRDN_COST
3329      , LABOR_HRS
3330      , LABOR_REVENUE
3331      , EQUIPMENT_HOURS
3332      , BILLABLE_EQUIPMENT_HOURS
3333      , SUP_INV_COMMITTED_COST
3334      , PO_COMMITTED_COST
3335      , PR_COMMITTED_COST
3336      , OTH_COMMITTED_COST
3337      , ACT_LABOR_HRS
3338      , ACT_EQUIP_HRS
3339      , ACT_LABOR_BRDN_COST
3340      , ACT_EQUIP_BRDN_COST
3341      , ACT_BRDN_COST
3342      , ACT_RAW_COST
3343      , ACT_REVENUE
3344      , ACT_LABOR_RAW_COST
3345      , ACT_EQUIP_RAW_COST
3346      , ETC_LABOR_HRS
3347      , ETC_EQUIP_HRS
3348      , ETC_LABOR_BRDN_COST
3349      , ETC_EQUIP_BRDN_COST
3350      , ETC_BRDN_COST
3351      , ETC_RAW_COST
3352      , ETC_LABOR_RAW_COST
3353      , ETC_EQUIP_RAW_COST
3354      , CUSTOM1
3355      , CUSTOM2
3356      , CUSTOM3
3357      , CUSTOM4
3358      , CUSTOM5
3359      , CUSTOM6
3360      , CUSTOM7
3361      , CUSTOM8
3362      , CUSTOM9
3363      , CUSTOM10
3364      , CUSTOM11
3365      , CUSTOM12
3366      , CUSTOM13
3367      , CUSTOM14
3368      , CUSTOM15
3369      , TIME_DANGLING_FLAG
3370      , RATE_DANGLING_FLAG
3371      , PRG_LEVEL
3372      , PLAN_TYPE_CODE    /* 4471527 */
3373    )
3374    SELECT
3375            g_worker_id worker_id
3376          , a.PROJECT_ID
3377          , a.PROJECT_ORG_ID
3378          , a.PROJECT_ORGANIZATION_ID
3379          , a.PROJECT_ELEMENT_ID
3380          , a.TIME_ID
3381          , 32 -- a.PERIOD_TYPE_ID
3382          , a.CALENDAR_TYPE
3383          , a.RBS_AGGR_LEVEL
3384          , a.WBS_ROLLUP_FLAG
3385          , a.PRG_ROLLUP_FLAG
3386          , a.CURR_RECORD_TYPE_ID
3387          , a.CURRENCY_CODE
3388          , a.RBS_ELEMENT_ID
3389          , a.RBS_VERSION_ID
3390          , a.PLAN_VERSION_ID
3391          , a.PLAN_TYPE_ID
3392 	 , SUM(ROUND (nvl(a.raw_cost,0)*a.factor/a.mau)*a.mau) raw_cost
3393 	 , SUM(ROUND (nvl(a.brdn_cost,0)*a.factor/a.mau)*a.mau) brdn_cost
3394 	 , SUM(ROUND (nvl(a.revenue,0)*a.factor/a.mau)*a.mau) revenue
3395 	 , SUM(ROUND (nvl(a.bill_raw_cost,0)*a.factor/a.mau)*a.mau) bill_raw_cost
3396 	 , SUM(ROUND (nvl(a.bill_brdn_cost,0)*a.factor/a.mau)*a.mau) bill_brdn_cost
3397 	 , SUM(ROUND (nvl(a.bill_labor_raw_cost,0)*a.factor/a.mau)*a.mau) bill_labor_raw_cost
3398 	 , SUM(ROUND (nvl(a.bill_labor_brdn_cost,0)*a.factor/a.mau)*a.mau) bill_labor_brdn_cost
3399 	 , SUM(ROUND (nvl(a.bill_labor_hrs,0)*a.factor/a.mau)*a.mau) bill_labor_hrs
3400 	 , SUM(ROUND (nvl(a.equipment_raw_cost,0)*a.factor/a.mau)*a.mau) equipment_raw_cost
3401 	 , SUM(ROUND (nvl(a.equipment_brdn_cost,0)*a.factor/a.mau)*a.mau) equipment_brdn_cost
3402 	 , SUM(ROUND (nvl(a.capitalizable_raw_cost,0)*a.factor/a.mau)*a.mau) capitalizable_raw_cost
3403 	 , SUM(ROUND (nvl(a.capitalizable_brdn_cost,0)*a.factor/a.mau)*a.mau) capitalizable_brdn_cost
3404 	 , SUM(ROUND (nvl(a.labor_raw_cost,0)*a.factor/a.mau)*a.mau) labor_raw_cost
3405 	 , SUM(ROUND (nvl(a.labor_brdn_cost,0)*a.factor/a.mau)*a.mau) labor_brdn_cost
3406 	 , SUM(ROUND (nvl(a.labor_hrs,0)*a.factor/a.mau)*a.mau) labor_hrs
3407 	 , SUM(ROUND (nvl(a.labor_revenue,0)*a.factor/a.mau)*a.mau) labor_revenue
3408 	 , SUM(ROUND (nvl(a.equipment_hours,0)*a.factor/a.mau)*a.mau) equipment_hours
3409 	 , SUM(ROUND (nvl(a.billable_equipment_hours,0)*a.factor/a.mau)*a.mau) billable_equipment_hours
3410 	 , SUM(ROUND (nvl(a.sup_inv_committed_cost,0)*a.factor/a.mau)*a.mau) sup_inv_committed_cost
3411 	 , SUM(ROUND (nvl(a.po_committed_cost,0)*a.factor/a.mau)*a.mau) po_committed_cost
3412 	 , SUM(ROUND (nvl(a.pr_committed_cost,0)*a.factor/a.mau)*a.mau) pr_committed_cost
3413 	 , SUM(ROUND (nvl(a.oth_committed_cost,0)*a.factor/a.mau)*a.mau) oth_committed_cost
3414 	 , SUM(ROUND (nvl(a.ACT_LABOR_HRS,0)*a.factor/a.mau)*a.mau) ACT_LABOR_HRS
3415 	 , SUM(ROUND (nvl(a.ACT_EQUIP_HRS,0)*a.factor/a.mau)*a.mau) ACT_EQUIP_HRS
3416 	 , SUM(ROUND (nvl(a.ACT_LABOR_BRDN_COST,0)*a.factor/a.mau)*a.mau) ACT_LABOR_BRDN_COST
3417 	 , SUM(ROUND (nvl(a.ACT_EQUIP_BRDN_COST,0)*a.factor/a.mau)*a.mau) ACT_EQUIP_BRDN_COST
3418 	 , SUM(ROUND (nvl(a.ACT_BRDN_COST,0)*a.factor/a.mau)*a.mau) ACT_BRDN_COST
3419 	 , SUM(ROUND (nvl(a.ACT_RAW_COST,0)*a.factor/a.mau)*a.mau) ACT_RAW_COST
3420 	 , SUM(ROUND (nvl(a.ACT_REVENUE,0)*a.factor/a.mau)*a.mau) ACT_REVENUE
3421 	 , SUM(ROUND (nvl(a.ACT_LABOR_RAW_COST,0)*a.factor/a.mau)*a.mau) ACT_LABOR_RAW_COST
3422 	 , SUM(ROUND (nvl(a.ACT_EQUIP_RAW_COST,0)*a.factor/a.mau)*a.mau) ACT_EQUIP_RAW_COST
3423 	 , SUM(ROUND (nvl(a.ETC_LABOR_HRS,0)*a.factor/a.mau)*a.mau) ETC_LABOR_HRS
3424 	 , SUM(ROUND (nvl(a.ETC_EQUIP_HRS,0)*a.factor/a.mau)*a.mau) ETC_EQUIP_HRS
3428 	 , SUM(ROUND (nvl(a.ETC_RAW_COST,0)*a.factor/a.mau)*a.mau) ETC_RAW_COST
3425 	 , SUM(ROUND (nvl(a.ETC_LABOR_BRDN_COST,0)*a.factor/a.mau)*a.mau) ETC_LABOR_BRDN_COST
3426 	 , SUM(ROUND (nvl(a.ETC_EQUIP_BRDN_COST,0)*a.factor/a.mau)*a.mau) ETC_EQUIP_BRDN_COST
3427 	 , SUM(ROUND (nvl(a.ETC_BRDN_COST,0)*a.factor/a.mau)*a.mau) ETC_BRDN_COST
3429 	 , SUM(ROUND (nvl(a.ETC_LABOR_RAW_COST,0)*a.factor/a.mau)*a.mau) ETC_LABOR_RAW_COST
3430 	 , SUM(ROUND (nvl(a.ETC_EQUIP_RAW_COST,0)*a.factor/a.mau)*a.mau) ETC_EQUIP_RAW_COST
3431 	 , SUM(ROUND (nvl(a.custom1,0)*a.factor/a.mau)*a.mau) custom1
3432 	 , SUM(ROUND (nvl(a.custom2,0)*a.factor/a.mau)*a.mau) custom2
3433 	 , SUM(ROUND (nvl(a.custom3,0)*a.factor/a.mau)*a.mau) custom3
3434 	 , SUM(ROUND (nvl(a.custom4,0)*a.factor/a.mau)*a.mau) custom4
3435 	 , SUM(ROUND (nvl(a.custom5,0)*a.factor/a.mau)*a.mau) custom5
3436 	 , SUM(ROUND (nvl(a.custom6,0)*a.factor/a.mau)*a.mau) custom6
3437 	 , SUM(ROUND (nvl(a.custom7,0)*a.factor/a.mau)*a.mau) custom7
3438 	 , SUM(ROUND (nvl(a.custom8,0)*a.factor/a.mau)*a.mau) custom8
3439 	 , SUM(ROUND (nvl(a.custom9,0)*a.factor/a.mau)*a.mau) custom9
3440 	 , SUM(ROUND (nvl(a.custom10,0)*a.factor/a.mau)*a.mau) custom10
3441 	 , SUM(ROUND (nvl(a.custom11,0)*a.factor/a.mau)*a.mau) custom11
3442 	 , SUM(ROUND (nvl(a.custom12,0)*a.factor/a.mau)*a.mau) custom12
3443 	 , SUM(ROUND (nvl(a.custom13,0)*a.factor/a.mau)*a.mau) custom13
3444 	 , SUM(ROUND (nvl(a.custom14,0)*a.factor/a.mau)*a.mau) custom14
3445 	 , SUM(ROUND (nvl(a.custom15,0)*a.factor/a.mau)*a.mau) custom15
3446          , a.TIME_DANGLING_FLAG
3447          , a.RATE_DANGLING_FLAG
3448          , g_default_prg_level prg_level
3449          , a.plan_type_code plan_type_code /* 4471527 */
3450    FROM (
3451    SELECT /*+ NO_MERGE */
3452            fact.project_id  project_id
3453    	 , fact.project_ORG_ID project_ORG_ID
3454    	 , fact.project_ORGANIZATION_ID project_ORGANIZATION_ID
3455    	 , fact.PROJECT_ELEMENT_ID PROJECT_ELEMENT_ID
3456    	 , entCal.ent_period_id TIME_ID
3457    	 , fact.PERIOD_TYPE_ID PERIOD_TYPE_ID
3458    	 , 'E' CALENDAR_TYPE -- fact.CALENDAR_TYPE
3459          , fact.RBS_AGGR_LEVEL
3460          , fact.WBS_ROLLUP_FLAG
3461          , fact.PRG_ROLLUP_FLAG
3462    	 , fact.CURR_RECORD_TYPE_ID CURR_RECORD_TYPE_ID
3463    	 , fact.CURRENCY_CODE CURRENCY_CODE
3464    	 , fact.RBS_ELEMENT_ID RBS_ELEMENT_ID
3465    	 , fact.RBS_VERSION_ID RBS_VERSION_ID
3466    	 , fact.PLAN_VERSION_ID PLAN_VERSION_ID
3467 	 , fact.PLAN_TYPE_ID  PLAN_TYPE_ID
3468 	 , fact.raw_cost
3469 	 , fact.brdn_cost
3470 	 , fact.revenue
3471 	 , fact.bill_raw_cost
3472 	 , fact.bill_brdn_cost
3473 	 , fact.bill_labor_raw_cost
3474 	 , fact.bill_labor_brdn_cost
3475 	 , fact.bill_labor_hrs
3476 	 , fact.equipment_raw_cost
3477 	 , fact.equipment_brdn_cost
3478 	 , fact.capitalizable_raw_cost
3479 	 , fact.capitalizable_brdn_cost
3480 	 , fact.labor_raw_cost
3481 	 , fact.labor_brdn_cost
3482 	 , fact.labor_hrs
3483 	 , fact.labor_revenue
3484 	 , fact.equipment_hours
3485 	 , fact.billable_equipment_hours
3486 	 , fact.sup_inv_committed_cost
3487 	 , fact.po_committed_cost
3488 	 , fact.pr_committed_cost
3489 	 , fact.oth_committed_cost
3490 	 , fact.ACT_LABOR_HRS
3491 	 , fact.ACT_EQUIP_HRS
3492 	 , fact.ACT_LABOR_BRDN_COST
3493 	 , fact.ACT_EQUIP_BRDN_COST
3494 	 , fact.ACT_BRDN_COST
3495 	 , fact.ACT_RAW_COST
3496 	 , fact.ACT_REVENUE
3497 	 , fact.ACT_LABOR_RAW_COST
3498 	 , fact.ACT_EQUIP_RAW_COST
3499 	 , fact.ETC_LABOR_HRS
3500 	 , fact.ETC_EQUIP_HRS
3501 	 , fact.ETC_LABOR_BRDN_COST
3502 	 , fact.ETC_EQUIP_BRDN_COST
3503 	 , fact.ETC_BRDN_COST
3504 	 , fact.ETC_RAW_COST
3505 	 , fact.ETC_LABOR_RAW_COST
3506 	 , fact.ETC_EQUIP_RAW_COST
3507 	 , fact.custom1
3508 	 , fact.custom2
3509 	 , fact.custom3
3510 	 , fact.custom4
3511 	 , fact.custom5
3512 	 , fact.custom6
3513 	 , fact.custom7
3514 	 , fact.custom8
3515 	 , fact.custom9
3516 	 , fact.custom10
3517 	 , fact.custom11
3518 	 , fact.custom12
3519 	 , fact.custom13
3520 	 , fact.custom14
3521 	 , fact.custom15
3522 	 , fact.time_dangling_flag time_dangling_flag
3523 	 , fact.rate_dangling_flag rate_dangling_flag
3524          , cur.mau mau
3525          , (LEAST(fact.end_date,entCal.end_date) - Greatest(fact.start_date,entCal.start_date)+1)
3526                               / (fact.end_date - fact.start_date+1) factor
3527          , fact.plan_type_code plan_type_code   /* 4471527 */
3528    FROM   pji_fp_aggr_pjp1 fact
3529         , pji_time_ent_period_v  entCal
3530         , pji_fm_extr_plnver4  ver
3531         , (SELECT currency_code,
3532                    decode(nvl(MINIMUM_ACCOUNTABLE_UNIT, power(10, (-1 * PRECISION))),
3533                       null, 0.01,
3534                          0, 1,
3535                          nvl(MINIMUM_ACCOUNTABLE_UNIT, power(10, (-1 * PRECISION)))) mau
3536               FROM FND_CURRENCIES) cur
3537    WHERE  1=1
3538       AND fact.CALENDAR_TYPE = 'A'
3539       AND fact.worker_id = g_worker_id
3540       AND ver.worker_id = g_worker_id
3541       AND fact.start_date IS NOT NULL
3542       AND fact.end_date IS NOT NULL
3543       AND fact.time_dangling_flag IS NULL
3544       AND fact.rate_dangling_flag IS NULL
3545       AND fact.line_type = 'NTP'
3546       AND fact.period_type_id = 2048
3547       AND fact.plan_version_id = ver.plan_version_id
3548       AND fact.plan_type_code = ver.plan_type_code  /* 4471527 */
3549       AND ver.wp_flag = 'N'
3550       AND ver.baselined_flag = 'Y'
3551       AND ver.time_phased_type_code = 'N'
3552 	AND fact.rbs_version_id = NVL(ver.rbs_struct_version_id , -1)
3556 	  ) a
3553       AND cur.currency_code = fact.currency_code
3554       AND ( fact.start_date <= entCal.end_date AND fact.end_date >= entCal.start_date )
3555       AND ver.plan_version_id > 0
3557    WHERE a.factor>0
3558   GROUP BY
3559        a.PROJECT_ID
3560      , a.PROJECT_ORG_ID
3561      , a.PROJECT_ORGANIZATION_ID
3562      , a.PROJECT_ELEMENT_ID
3563      , a.TIME_ID
3564      , a.PERIOD_TYPE_ID
3565      , a.CALENDAR_TYPE
3566      , a.RBS_AGGR_LEVEL
3567      , a.WBS_ROLLUP_FLAG
3568      , a.PRG_ROLLUP_FLAG
3569      , a.CURR_RECORD_TYPE_ID
3570      , a.CURRENCY_CODE
3571      , a.RBS_ELEMENT_ID
3572      , a.RBS_VERSION_ID
3573      , a.PLAN_VERSION_ID
3574      , a.PLAN_TYPE_ID
3575      , a.TIME_DANGLING_FLAG
3576      , a.RATE_DANGLING_FLAG
3577      , a.PLAN_TYPE_CODE  ;     /* 4471527 */
3578 
3579 EXCEPTION
3580   WHEN OTHERS THEN
3581     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
3582                              p_procedure_name => ' PRORATE_TO_ENT_N_PJP1_D ');
3583     RAISE;
3584 END;
3585 
3586 
3587 PROCEDURE PRORATE_TO_ENT_PG_PJP1_SE(p_prorating_format IN VARCHAR2) IS
3588 BEGIN
3589 
3590     g_worker_id  := PJI_PJP_FP_CURR_WRAP.GET_WORKER_ID;
3591 
3592 /* Commented for bug 4005006
3593 
3594     INSERT INTO pji_fp_aggr_pjp1   -- PA, GL calendar entries.
3595     (
3596        WORKER_ID
3597      , PROJECT_ID
3598      , PROJECT_ORG_ID
3599      , PROJECT_ORGANIZATION_ID
3600      -- , PARTITION_ID
3601      , PROJECT_ELEMENT_ID
3602      , TIME_ID
3603      , PERIOD_TYPE_ID
3604      , CALENDAR_TYPE
3605      , RBS_AGGR_LEVEL
3606      , WBS_ROLLUP_FLAG
3607      , PRG_ROLLUP_FLAG
3608      , CURR_RECORD_TYPE_ID
3609      , CURRENCY_CODE
3610      , RBS_ELEMENT_ID
3611      , RBS_VERSION_ID
3612      , PLAN_VERSION_ID
3613      , PLAN_TYPE_ID
3614      , RAW_COST
3615      , BRDN_COST
3616      , REVENUE
3617      , BILL_RAW_COST
3618      , BILL_BRDN_COST
3619      , BILL_LABOR_RAW_COST
3620      , BILL_LABOR_BRDN_COST
3621      , BILL_LABOR_HRS
3622      , EQUIPMENT_RAW_COST
3623      , EQUIPMENT_BRDN_COST
3624      , CAPITALIZABLE_RAW_COST
3625      , CAPITALIZABLE_BRDN_COST
3626      , LABOR_RAW_COST
3627      , LABOR_BRDN_COST
3628      , LABOR_HRS
3629      , LABOR_REVENUE
3630      , EQUIPMENT_HOURS
3631      , BILLABLE_EQUIPMENT_HOURS
3632      , SUP_INV_COMMITTED_COST
3633      , PO_COMMITTED_COST
3634      , PR_COMMITTED_COST
3635      , OTH_COMMITTED_COST
3636        , ACT_LABOR_HRS
3637 	   , ACT_EQUIP_HRS
3638 	   , ACT_LABOR_BRDN_COST
3639 	   , ACT_EQUIP_BRDN_COST
3640 	   , ACT_BRDN_COST
3641 	   , ACT_RAW_COST
3642 	   , ACT_REVENUE
3643          , ACT_LABOR_RAW_COST
3644          , ACT_EQUIP_RAW_COST
3645 	   , ETC_LABOR_HRS
3646 	   , ETC_EQUIP_HRS
3647 	   , ETC_LABOR_BRDN_COST
3648 	   , ETC_EQUIP_BRDN_COST
3649 	   , ETC_BRDN_COST
3650          , ETC_RAW_COST
3651          , ETC_LABOR_RAW_COST
3652          , ETC_EQUIP_RAW_COST
3653      , CUSTOM1
3654      , CUSTOM2
3655      , CUSTOM3
3656      , CUSTOM4
3657      , CUSTOM5
3658      , CUSTOM6
3659      , CUSTOM7
3660      , CUSTOM8
3661      , CUSTOM9
3662      , CUSTOM10
3663      , CUSTOM11
3664      , CUSTOM12
3665      , CUSTOM13
3666      , CUSTOM14
3667      , CUSTOM15
3668 	 , LINE_TYPE
3669 	 , TIME_DANGLING_FLAG
3670 	 , RATE_DANGLING_FLAG
3671 	 , PRG_LEVEL
3672 	)
3673    SELECT
3674          g_worker_id WORKER_ID
3675        , fact.project_id  project_id
3676 	 , fact.PROJECT_ORG_ID project_org_id
3677 	 , fact.PROJECT_ORGANIZATION_ID project_organization_id
3678      -- , fact.PARTITION_ID PARTITION_ID
3679    	 , fact.PROJECT_ELEMENT_ID PROJECT_ELEMENT_ID
3680    	 , pa_cal.ent_period_id TIME_ID
3681    	 , fact.PERIOD_TYPE_ID PERIOD_TYPE_ID
3682    	 , 'E' CALENDAR_TYPE -- fact.CALENDAR_TYPE
3683      , fact.RBS_AGGR_LEVEL RBS_AGGR_LEVEL
3684      , fact.WBS_ROLLUP_FLAG WBS_ROLLUP_FLAG
3685      , fact.PRG_ROLLUP_FLAG PRG_ROLLUP_FLAG
3686      , fact.CURR_RECORD_TYPE_ID CURR_RECORD_TYPE_ID
3687    	 , fact.CURRENCY_CODE CURRENCY_CODE
3688    	 , fact.RBS_ELEMENT_ID RBS_ELEMENT_ID
3689    	 , fact.RBS_VERSION_ID RBS_VERSION_ID
3690    	 , fact.PLAN_VERSION_ID PLAN_VERSION_ID
3691    	 , fact.PLAN_TYPE_ID PLAN_TYPE_ID
3692    	 , MAX(fact.RAW_COST)	 raw_cost
3693    	 , MAX(fact.BRDN_COST) BRDN_COST
3694    	 , MAX(fact.REVENUE) REVENUE
3695    	 , MAX(fact.BILL_RAW_COST) BILL_RAW_COST
3696    	 , MAX(fact.BILL_BRDN_COST) BILL_BRDN_COST
3697    	 , MAX(fact.BILL_LABOR_RAW_COST) BILL_LABOR_RAW_COST
3698    	 , MAX(fact.BILL_LABOR_BRDN_COST) BILL_LABOR_BRDN_COST
3699    	 , MAX(fact.BILL_LABOR_HRS) BILL_LABOR_HRS
3700    	 , MAX(fact.EQUIPMENT_RAW_COST) EQUIPMENT_RAW_COST
3701    	 , MAX(fact.EQUIPMENT_BRDN_COST) EQUIPMENT_BRDN_COST
3702    	 , MAX(fact.CAPITALIZABLE_RAW_COST) CAPITALIZABLE_RAW_COST
3703    	 , MAX(fact.CAPITALIZABLE_BRDN_COST) CAPITALIZABLE_BRDN_COST
3704    	 , MAX(fact.LABOR_RAW_COST) LABOR_RAW_COST
3705    	 , MAX(fact.LABOR_BRDN_COST) LABOR_BRDN_COST
3706    	 , MAX(fact.LABOR_HRS) LABOR_HRS
3710    	 , MAX(fact.SUP_INV_COMMITTED_COST) SUP_INV_COMMITTED_COST
3707    	 , MAX(fact.LABOR_REVENUE) LABOR_REVENUE
3708    	 , MAX(fact.EQUIPMENT_HOURS) EQUIPMENT_HOURS
3709    	 , MAX(fact.BILLABLE_EQUIPMENT_HOURS) BILLABLE_EQUIPMENT_HOURS
3711    	 , MAX(fact.PO_COMMITTED_COST) PO_COMMITTED_COST
3712    	 , MAX(fact.PR_COMMITTED_COST) PR_COMMITTED_COST
3713    	 , MAX(fact.OTH_COMMITTED_COST) OTH_COMMITTED_COST
3714        , MAX(fact.ACT_LABOR_HRS )
3715 	 , MAX(fact.ACT_EQUIP_HRS )
3716 	 , MAX(fact.ACT_LABOR_BRDN_COST )
3717 	 , MAX(fact.ACT_EQUIP_BRDN_COST )
3718 	 , MAX(fact.ACT_BRDN_COST )
3719 	 , MAX(fact.ACT_RAW_COST )
3720 	 , MAX(fact.ACT_REVENUE )
3721        , MAX(fact.ACT_LABOR_RAW_COST)
3722        , MAX(fact.ACT_EQUIP_RAW_COST)
3723 	 , MAX(fact.ETC_LABOR_HRS )
3724 	 , MAX(fact.ETC_EQUIP_HRS )
3725 	 , MAX(fact.ETC_LABOR_BRDN_COST )
3726 	 , MAX(fact.ETC_EQUIP_BRDN_COST )
3727 	 , MAX(fact.ETC_BRDN_COST )
3728        , MAX(fact.ETC_RAW_COST )
3729        , MAX(fact.ETC_LABOR_RAW_COST)
3730        , MAX(fact.ETC_EQUIP_RAW_COST)
3731    	 , MAX(fact.CUSTOM1) CUSTOM1
3732    	 , MAX(fact.CUSTOM2) CUSTOM2
3733    	 , MAX(fact.CUSTOM3) CUSTOM3
3734    	 , MAX(fact.CUSTOM4) CUSTOM4
3735    	 , MAX(fact.CUSTOM5) CUSTOM5
3736    	 , MAX(fact.CUSTOM6) CUSTOM6
3737    	 , MAX(fact.CUSTOM7) CUSTOM7
3738    	 , MAX(fact.CUSTOM8) CUSTOM8
3739    	 , MAX(fact.CUSTOM9) CUSTOM9
3740    	 , MAX(fact.CUSTOM10) CUSTOM10
3741    	 , MAX(fact.CUSTOM11) CUSTOM11
3742    	 , MAX(fact.CUSTOM12) CUSTOM12
3743    	 , MAX(fact.CUSTOM13) CUSTOM13
3744    	 , MAX(fact.CUSTOM14) CUSTOM14
3745    	 , MAX(fact.CUSTOM15) CUSTOM15
3746    	 -- , DECODE ('E', 'E', MAX(pa_cal.start_date), 'S', MIN(pa_cal.start_date)) start_date
3747    	 -- , DECODE ('E', 'E', MAX(pa_cal.end_date), 'S', MIN(pa_cal.end_date))	 end_date
3748      , 'CF'   line_type
3749 	 , fact.TIME_DANGLING_FLAG  TIME_DANGLING_FLAG
3750 	 , fact.RATE_DANGLING_FLAG  RATE_DANGLING_FLAG
3751 	 , g_default_prg_level PRG_LEVEL
3752    FROM   pji_fp_aggr_pjp1 fact
3753         , pji_time_cal_period  non_pa_cal
3754         -- , pji_org_extr_info  orginfo
3755    	  , pji_time_ent_period  pa_cal
3756         , pji_fm_extr_plnver4  ver
3757    WHERE  fact.CALENDAR_TYPE IN ('P', 'G')
3758       AND fact.worker_id = g_worker_id
3759       AND ver.worker_id = g_worker_id
3760       AND non_pa_cal.cal_period_id = fact.time_id
3761       AND fact.line_type like 'OF%'
3762 	AND fact.TIME_DANGLING_FLAG  IS NULL
3763 	AND fact.RATE_DANGLING_FLAG  IS NULL
3764       AND ( non_pa_cal.start_date <= pa_cal.end_date AND non_pa_cal.end_date >= pa_cal.start_date )
3765       AND fact.period_type_id = 32
3766       AND fact.plan_version_id = ver.plan_version_id
3767       AND ver.wp_flag = 'N'
3768       AND ver.baselined_flag = 'Y'
3769 	AND fact.rbs_version_id = NVL(ver.rbs_struct_version_id , -1)
3770       AND ver.plan_version_id > 0
3771    GROUP BY
3772        fact.project_id
3773 	 , fact.PROJECT_ORG_ID
3774 	 , fact.PROJECT_ORGANIZATION_ID
3775      -- , fact.PARTITION_ID
3776    	 , fact.PROJECT_ELEMENT_ID
3777    	 , pa_cal.ent_period_id
3778    	 , fact.PERIOD_TYPE_ID
3779    	 , fact.CALENDAR_TYPE
3780      , fact.RBS_AGGR_LEVEL
3781      , fact.WBS_ROLLUP_FLAG
3782      , fact.PRG_ROLLUP_FLAG
3783      , fact.CURR_RECORD_TYPE_ID
3784    	 , fact.CURRENCY_CODE
3785    	 , fact.RBS_ELEMENT_ID
3786    	 , fact.RBS_VERSION_ID
3787    	 , fact.PLAN_VERSION_ID
3788    	 , fact.PLAN_TYPE_ID
3789 	 , fact.TIME_DANGLING_FLAG
3790 	 , fact.RATE_DANGLING_FLAG;
3791 End of bug 4005006*/
3792 
3793     INSERT INTO pji_fp_aggr_pjp1   -- PA, GL calendar entries.
3794     (
3795        WORKER_ID
3796      , PROJECT_ID
3797      , PROJECT_ORG_ID
3798      , PROJECT_ORGANIZATION_ID
3799      , PROJECT_ELEMENT_ID
3800      , TIME_ID
3801      , PERIOD_TYPE_ID
3802      , CALENDAR_TYPE
3803      , RBS_AGGR_LEVEL
3804      , WBS_ROLLUP_FLAG
3805      , PRG_ROLLUP_FLAG
3806      , CURR_RECORD_TYPE_ID
3807      , CURRENCY_CODE
3808      , RBS_ELEMENT_ID
3809      , RBS_VERSION_ID
3810      , PLAN_VERSION_ID
3811      , PLAN_TYPE_ID
3812      , RAW_COST
3813      , BRDN_COST
3814      , REVENUE
3815      , BILL_RAW_COST
3816      , BILL_BRDN_COST
3817      , BILL_LABOR_RAW_COST
3818      , BILL_LABOR_BRDN_COST
3819      , BILL_LABOR_HRS
3820      , EQUIPMENT_RAW_COST
3821      , EQUIPMENT_BRDN_COST
3822      , CAPITALIZABLE_RAW_COST
3823      , CAPITALIZABLE_BRDN_COST
3824      , LABOR_RAW_COST
3825      , LABOR_BRDN_COST
3826      , LABOR_HRS
3827      , LABOR_REVENUE
3828      , EQUIPMENT_HOURS
3829      , BILLABLE_EQUIPMENT_HOURS
3830      , SUP_INV_COMMITTED_COST
3831      , PO_COMMITTED_COST
3832      , PR_COMMITTED_COST
3833      , OTH_COMMITTED_COST
3834      , ACT_LABOR_HRS
3835      , ACT_EQUIP_HRS
3836      , ACT_LABOR_BRDN_COST
3837      , ACT_EQUIP_BRDN_COST
3838      , ACT_BRDN_COST
3839      , ACT_RAW_COST
3840      , ACT_REVENUE
3841      , ACT_LABOR_RAW_COST
3842      , ACT_EQUIP_RAW_COST
3843      , ETC_LABOR_HRS
3844      , ETC_EQUIP_HRS
3845      , ETC_LABOR_BRDN_COST
3846      , ETC_EQUIP_BRDN_COST
3847      , ETC_BRDN_COST
3848      , ETC_RAW_COST
3849      , ETC_LABOR_RAW_COST
3853      , CUSTOM3
3850      , ETC_EQUIP_RAW_COST
3851      , CUSTOM1
3852      , CUSTOM2
3854      , CUSTOM4
3855      , CUSTOM5
3856      , CUSTOM6
3857      , CUSTOM7
3858      , CUSTOM8
3859      , CUSTOM9
3860      , CUSTOM10
3861      , CUSTOM11
3862      , CUSTOM12
3863      , CUSTOM13
3864      , CUSTOM14
3865      , CUSTOM15
3866      , TIME_DANGLING_FLAG
3867      , RATE_DANGLING_FLAG
3868      , PRG_LEVEL
3869      , PLAN_TYPE_CODE    /* 4471527 */
3870    )
3871    SELECT
3872            g_worker_id WORKER_ID
3873          , fact.project_id  project_id
3874 	 , fact.PROJECT_ORG_ID project_org_id
3875 	 , fact.PROJECT_ORGANIZATION_ID project_organization_id
3876    	 , fact.PROJECT_ELEMENT_ID PROJECT_ELEMENT_ID
3877    	 , pa_cal.ent_period_id TIME_ID
3878    	 , fact.PERIOD_TYPE_ID PERIOD_TYPE_ID
3879    	 , 'E' CALENDAR_TYPE -- fact.CALENDAR_TYPE
3880          , fact.RBS_AGGR_LEVEL RBS_AGGR_LEVEL
3881          , fact.WBS_ROLLUP_FLAG WBS_ROLLUP_FLAG
3882          , fact.PRG_ROLLUP_FLAG PRG_ROLLUP_FLAG
3883          , fact.CURR_RECORD_TYPE_ID CURR_RECORD_TYPE_ID
3884    	 , fact.CURRENCY_CODE CURRENCY_CODE
3885    	 , fact.RBS_ELEMENT_ID RBS_ELEMENT_ID
3886    	 , fact.RBS_VERSION_ID RBS_VERSION_ID
3887    	 , fact.PLAN_VERSION_ID PLAN_VERSION_ID
3888    	 , fact.PLAN_TYPE_ID PLAN_TYPE_ID
3889    	 , SUM(fact.RAW_COST)	 raw_cost
3890    	 , SUM(fact.BRDN_COST) BRDN_COST
3891    	 , SUM(fact.REVENUE) REVENUE
3892    	 , SUM(fact.BILL_RAW_COST) BILL_RAW_COST
3893    	 , SUM(fact.BILL_BRDN_COST) BILL_BRDN_COST
3894    	 , SUM(fact.BILL_LABOR_RAW_COST) BILL_LABOR_RAW_COST
3895    	 , SUM(fact.BILL_LABOR_BRDN_COST) BILL_LABOR_BRDN_COST
3896    	 , SUM(fact.BILL_LABOR_HRS) BILL_LABOR_HRS
3897    	 , SUM(fact.EQUIPMENT_RAW_COST) EQUIPMENT_RAW_COST
3898    	 , SUM(fact.EQUIPMENT_BRDN_COST) EQUIPMENT_BRDN_COST
3899    	 , SUM(fact.CAPITALIZABLE_RAW_COST) CAPITALIZABLE_RAW_COST
3900    	 , SUM(fact.CAPITALIZABLE_BRDN_COST) CAPITALIZABLE_BRDN_COST
3901    	 , SUM(fact.LABOR_RAW_COST) LABOR_RAW_COST
3902    	 , SUM(fact.LABOR_BRDN_COST) LABOR_BRDN_COST
3903    	 , SUM(fact.LABOR_HRS) LABOR_HRS
3904    	 , SUM(fact.LABOR_REVENUE) LABOR_REVENUE
3905    	 , SUM(fact.EQUIPMENT_HOURS) EQUIPMENT_HOURS
3906    	 , SUM(fact.BILLABLE_EQUIPMENT_HOURS) BILLABLE_EQUIPMENT_HOURS
3907    	 , SUM(fact.SUP_INV_COMMITTED_COST) SUP_INV_COMMITTED_COST
3908    	 , SUM(fact.PO_COMMITTED_COST) PO_COMMITTED_COST
3909    	 , SUM(fact.PR_COMMITTED_COST) PR_COMMITTED_COST
3910    	 , SUM(fact.OTH_COMMITTED_COST) OTH_COMMITTED_COST
3911          , SUM(fact.ACT_LABOR_HRS )
3912 	 , SUM(fact.ACT_EQUIP_HRS )
3913 	 , SUM(fact.ACT_LABOR_BRDN_COST )
3914 	 , SUM(fact.ACT_EQUIP_BRDN_COST )
3915 	 , SUM(fact.ACT_BRDN_COST )
3916 	 , SUM(fact.ACT_RAW_COST )
3917 	 , SUM(fact.ACT_REVENUE )
3918          , SUM(fact.ACT_LABOR_RAW_COST)
3919          , SUM(fact.ACT_EQUIP_RAW_COST)
3920 	 , SUM(fact.ETC_LABOR_HRS )
3921 	 , SUM(fact.ETC_EQUIP_HRS )
3922 	 , SUM(fact.ETC_LABOR_BRDN_COST )
3923 	 , SUM(fact.ETC_EQUIP_BRDN_COST )
3924 	 , SUM(fact.ETC_BRDN_COST )
3925          , SUM(fact.ETC_RAW_COST )
3926          , SUM(fact.ETC_LABOR_RAW_COST)
3927          , SUM(fact.ETC_EQUIP_RAW_COST)
3928    	 , SUM(fact.CUSTOM1) CUSTOM1
3929    	 , SUM(fact.CUSTOM2) CUSTOM2
3930    	 , SUM(fact.CUSTOM3) CUSTOM3
3931    	 , SUM(fact.CUSTOM4) CUSTOM4
3932    	 , SUM(fact.CUSTOM5) CUSTOM5
3933    	 , SUM(fact.CUSTOM6) CUSTOM6
3934    	 , SUM(fact.CUSTOM7) CUSTOM7
3935    	 , SUM(fact.CUSTOM8) CUSTOM8
3936    	 , SUM(fact.CUSTOM9) CUSTOM9
3937    	 , SUM(fact.CUSTOM10) CUSTOM10
3938    	 , SUM(fact.CUSTOM11) CUSTOM11
3939    	 , SUM(fact.CUSTOM12) CUSTOM12
3940    	 , SUM(fact.CUSTOM13) CUSTOM13
3941    	 , SUM(fact.CUSTOM14) CUSTOM14
3942    	 , SUM(fact.CUSTOM15) CUSTOM15
3943 	 , fact.TIME_DANGLING_FLAG  TIME_DANGLING_FLAG
3944 	 , fact.RATE_DANGLING_FLAG  RATE_DANGLING_FLAG
3945          , g_default_prg_level prg_level
3946          , fact.PLAN_TYPE_CODE   PLAN_TYPE_CODE   /* 4471527 */
3947    FROM   pji_fp_aggr_pjp1 fact
3948         , pji_time_cal_period_v  non_pa_cal
3949    	, pji_time_ent_period_v  pa_cal
3950         , pji_fm_extr_plnver4  ver
3951    WHERE  fact.CALENDAR_TYPE IN ('P', 'G')
3952       AND fact.worker_id = g_worker_id
3953       AND ver.worker_id = g_worker_id
3954       AND non_pa_cal.cal_period_id = fact.time_id
3955       AND fact.line_type like 'OF%'
3956       AND fact.TIME_DANGLING_FLAG  IS NULL
3957       AND fact.RATE_DANGLING_FLAG  IS NULL
3958       AND ( non_pa_cal.start_date <= pa_cal.end_date AND non_pa_cal.end_date >= pa_cal.start_date )
3959       AND fact.period_type_id = 32
3960       AND fact.plan_version_id = ver.plan_version_id
3961      AND fact.plan_type_code = ver.plan_type_code /* 4471527 */
3962       AND ver.wp_flag = 'N'
3963       AND ver.baselined_flag = 'Y'
3964 	AND fact.rbs_version_id = NVL(ver.rbs_struct_version_id , -1)
3965       AND ver.plan_version_id > 0
3966       AND DECODE(p_prorating_format,'S',
3967              DECODE(SIGN(non_pa_cal.start_Date-pa_cal.start_date),-1,0,1),
3968              DECODE(SIGN(non_pa_cal.end_Date - pa_cal.end_date), 1,0,1))=1
3969    GROUP BY
3970            fact.project_id
3971 	 , fact.PROJECT_ORG_ID
3972 	 , fact.PROJECT_ORGANIZATION_ID
3973    	 , fact.PROJECT_ELEMENT_ID
3974    	 , pa_cal.ent_period_id
3978          , fact.WBS_ROLLUP_FLAG
3975    	 , fact.PERIOD_TYPE_ID
3976    	 , fact.CALENDAR_TYPE
3977          , fact.RBS_AGGR_LEVEL
3979          , fact.PRG_ROLLUP_FLAG
3980          , fact.CURR_RECORD_TYPE_ID
3981    	 , fact.CURRENCY_CODE
3982    	 , fact.RBS_ELEMENT_ID
3983    	 , fact.RBS_VERSION_ID
3984    	 , fact.PLAN_VERSION_ID
3985    	 , fact.PLAN_TYPE_ID
3986 	 , fact.TIME_DANGLING_FLAG
3987 	 , fact.RATE_DANGLING_FLAG
3988               , fact .PLAN_TYPE_CODE ;      /* 4471527 */
3989 
3990 EXCEPTION
3991   WHEN OTHERS THEN
3992     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
3993                              p_procedure_name => 'PRORATE_TO_ENT_PG_PJP1_SE');
3994     RAISE;
3995 END;
3996 
3997 
3998 PROCEDURE PRORATE_TO_ENT_PG_FPRL_SE IS
3999 BEGIN
4000 
4001     g_worker_id  := PJI_PJP_FP_CURR_WRAP.GET_WORKER_ID;
4002 
4003 EXCEPTION
4004   WHEN OTHERS THEN
4005     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
4006                              p_procedure_name => 'PRORATE_TO_ENT_PG_FPRL_SE');
4007     RAISE;
4008 END;
4009 
4010 
4011 PROCEDURE PRORATE_TO_ENT_N_PJP1_SE(p_prorating_format varchar2) IS
4012 BEGIN
4013 
4014     g_worker_id  := PJI_PJP_FP_CURR_WRAP.GET_WORKER_ID;
4015 
4016     INSERT INTO pji_fp_aggr_pjp1  -- Non time phased entries.
4017     (
4018        WORKER_ID
4019      , PROJECT_ID
4020      , PROJECT_ORG_ID
4021      , PROJECT_ORGANIZATION_ID
4022      , PROJECT_ELEMENT_ID
4023      , TIME_ID
4024      , PERIOD_TYPE_ID
4025      , CALENDAR_TYPE
4026      , RBS_AGGR_LEVEL
4027      , WBS_ROLLUP_FLAG
4028      , PRG_ROLLUP_FLAG
4029      , CURR_RECORD_TYPE_ID
4030      , CURRENCY_CODE
4031      , RBS_ELEMENT_ID
4032      , RBS_VERSION_ID
4033      , PLAN_VERSION_ID
4034      , PLAN_TYPE_ID
4035      , RAW_COST
4036      , BRDN_COST
4037      , REVENUE
4038      , BILL_RAW_COST
4039      , BILL_BRDN_COST
4040      , BILL_LABOR_RAW_COST
4041      , BILL_LABOR_BRDN_COST
4042      , BILL_LABOR_HRS
4043      , EQUIPMENT_RAW_COST
4044      , EQUIPMENT_BRDN_COST
4045      , CAPITALIZABLE_RAW_COST
4046      , CAPITALIZABLE_BRDN_COST
4047      , LABOR_RAW_COST
4048      , LABOR_BRDN_COST
4049      , LABOR_HRS
4050      , LABOR_REVENUE
4051      , EQUIPMENT_HOURS
4052      , BILLABLE_EQUIPMENT_HOURS
4053      , SUP_INV_COMMITTED_COST
4054      , PO_COMMITTED_COST
4055      , PR_COMMITTED_COST
4056      , OTH_COMMITTED_COST
4057      , ACT_LABOR_HRS
4058      , ACT_EQUIP_HRS
4059      , ACT_LABOR_BRDN_COST
4060      , ACT_EQUIP_BRDN_COST
4061      , ACT_BRDN_COST
4062      , ACT_RAW_COST
4063      , ACT_REVENUE
4064      , ACT_LABOR_RAW_COST
4065      , ACT_EQUIP_RAW_COST
4066      , ETC_LABOR_HRS
4067      , ETC_EQUIP_HRS
4068      , ETC_LABOR_BRDN_COST
4069      , ETC_EQUIP_BRDN_COST
4070      , ETC_BRDN_COST
4071      , ETC_RAW_COST
4072      , ETC_LABOR_RAW_COST
4073      , ETC_EQUIP_RAW_COST
4074      , CUSTOM1
4075      , CUSTOM2
4076      , CUSTOM3
4077      , CUSTOM4
4078      , CUSTOM5
4079      , CUSTOM6
4080      , CUSTOM7
4081      , CUSTOM8
4082      , CUSTOM9
4083      , CUSTOM10
4084      , CUSTOM11
4085      , CUSTOM12
4086      , CUSTOM13
4087      , CUSTOM14
4088      , CUSTOM15
4089      , TIME_DANGLING_FLAG
4090      , RATE_DANGLING_FLAG
4091      , PRG_LEVEL
4092      , PLAN_TYPE_CODE    /* 4471527 */
4093    )
4094    SELECT
4095            g_worker_id WORKER_ID
4096          , fact.project_id  project_id
4097 	 , fact.PROJECT_ORG_ID project_org_id
4098 	 , fact.PROJECT_ORGANIZATION_ID project_organization_id
4099    	 , fact.PROJECT_ELEMENT_ID PROJECT_ELEMENT_ID
4100    	 , pa_cal.ent_period_id TIME_ID
4101    	 , 32 -- fact.PERIOD_TYPE_ID PERIOD_TYPE_ID
4102    	 , 'E' CALENDAR_TYPE -- fact.CALENDAR_TYPE
4103          , fact.RBS_AGGR_LEVEL RBS_AGGR_LEVEL
4104          , fact.WBS_ROLLUP_FLAG WBS_ROLLUP_FLAG
4105          , fact.PRG_ROLLUP_FLAG PRG_ROLLUP_FLAG
4106          , fact.CURR_RECORD_TYPE_ID CURR_RECORD_TYPE_ID
4107    	 , fact.CURRENCY_CODE CURRENCY_CODE
4108    	 , fact.RBS_ELEMENT_ID RBS_ELEMENT_ID
4109    	 , fact.RBS_VERSION_ID RBS_VERSION_ID
4110    	 , fact.PLAN_VERSION_ID PLAN_VERSION_ID
4111    	 , fact.PLAN_TYPE_ID PLAN_TYPE_ID
4112    	 , SUM(fact.RAW_COST)	 raw_cost
4113    	 , SUM(fact.BRDN_COST) BRDN_COST
4114    	 , SUM(fact.REVENUE) REVENUE
4115    	 , SUM(fact.BILL_RAW_COST) BILL_RAW_COST
4116    	 , SUM(fact.BILL_BRDN_COST) BILL_BRDN_COST
4117    	 , SUM(fact.BILL_LABOR_RAW_COST) BILL_LABOR_RAW_COST
4118    	 , SUM(fact.BILL_LABOR_BRDN_COST) BILL_LABOR_BRDN_COST
4119    	 , SUM(fact.BILL_LABOR_HRS) BILL_LABOR_HRS
4120    	 , SUM(fact.EQUIPMENT_RAW_COST) EQUIPMENT_RAW_COST
4121    	 , SUM(fact.EQUIPMENT_BRDN_COST) EQUIPMENT_BRDN_COST
4122    	 , SUM(fact.CAPITALIZABLE_RAW_COST) CAPITALIZABLE_RAW_COST
4123    	 , SUM(fact.CAPITALIZABLE_BRDN_COST) CAPITALIZABLE_BRDN_COST
4124    	 , SUM(fact.LABOR_RAW_COST) LABOR_RAW_COST
4125    	 , SUM(fact.LABOR_BRDN_COST) LABOR_BRDN_COST
4126    	 , SUM(fact.LABOR_HRS) LABOR_HRS
4127    	 , SUM(fact.LABOR_REVENUE) LABOR_REVENUE
4128    	 , SUM(fact.EQUIPMENT_HOURS) EQUIPMENT_HOURS
4132    	 , SUM(fact.PR_COMMITTED_COST) PR_COMMITTED_COST
4129    	 , SUM(fact.BILLABLE_EQUIPMENT_HOURS) BILLABLE_EQUIPMENT_HOURS
4130    	 , SUM(fact.SUP_INV_COMMITTED_COST) SUP_INV_COMMITTED_COST
4131    	 , SUM(fact.PO_COMMITTED_COST) PO_COMMITTED_COST
4133    	 , SUM(fact.OTH_COMMITTED_COST) OTH_COMMITTED_COST
4134          , SUM(fact.ACT_LABOR_HRS )
4135 	 , SUM(fact.ACT_EQUIP_HRS )
4136 	 , SUM(fact.ACT_LABOR_BRDN_COST )
4137 	 , SUM(fact.ACT_EQUIP_BRDN_COST )
4138 	 , SUM(fact.ACT_BRDN_COST )
4139 	 , SUM(fact.ACT_RAW_COST )
4140 	 , SUM(fact.ACT_REVENUE )
4141          , SUM(fact.ACT_LABOR_RAW_COST)
4142          , SUM(fact.ACT_EQUIP_RAW_COST)
4143 	 , SUM(fact.ETC_LABOR_HRS )
4144 	 , SUM(fact.ETC_EQUIP_HRS )
4145 	 , SUM(fact.ETC_LABOR_BRDN_COST )
4146 	 , SUM(fact.ETC_EQUIP_BRDN_COST )
4147 	 , SUM(fact.ETC_BRDN_COST )
4148          , SUM(fact.ETC_RAW_COST )
4149          , SUM(fact.ETC_LABOR_RAW_COST)
4150          , SUM(fact.ETC_EQUIP_RAW_COST)
4151    	 , SUM(fact.CUSTOM1) CUSTOM1
4152    	 , SUM(fact.CUSTOM2) CUSTOM2
4153    	 , SUM(fact.CUSTOM3) CUSTOM3
4154    	 , SUM(fact.CUSTOM4) CUSTOM4
4155    	 , SUM(fact.CUSTOM5) CUSTOM5
4156    	 , SUM(fact.CUSTOM6) CUSTOM6
4157    	 , SUM(fact.CUSTOM7) CUSTOM7
4158    	 , SUM(fact.CUSTOM8) CUSTOM8
4159    	 , SUM(fact.CUSTOM9) CUSTOM9
4160    	 , SUM(fact.CUSTOM10) CUSTOM10
4161    	 , SUM(fact.CUSTOM11) CUSTOM11
4162    	 , SUM(fact.CUSTOM12) CUSTOM12
4163    	 , SUM(fact.CUSTOM13) CUSTOM13
4164    	 , SUM(fact.CUSTOM14) CUSTOM14
4165    	 , SUM(fact.CUSTOM15) CUSTOM15
4166 	 , fact.TIME_DANGLING_FLAG  TIME_DANGLING_FLAG
4167 	 , fact.RATE_DANGLING_FLAG  RATE_DANGLING_FLAG
4168          , g_default_prg_level prg_level
4169          , fact.PLAN_TYPE_CODE PLAN_TYPE_CODE   /* 4471527 */
4170    FROM    pji_fp_aggr_pjp1 fact
4171    	 , pji_time_ent_period_v  pa_cal
4172          , pji_fm_extr_plnver4  ver
4173    WHERE  fact.CALENDAR_TYPE = 'A'
4174       AND fact.worker_id = g_worker_id
4175       AND ver.worker_id = g_worker_id
4176       AND fact.line_type = 'NTP'
4177       AND fact.start_date IS NOT NULL
4178       AND fact.end_date IS NOT NULL
4179       AND fact.TIME_DANGLING_FLAG  IS NULL
4180       AND fact.RATE_DANGLING_FLAG  IS NULL
4181       AND ( fact.start_date <= pa_cal.end_date AND fact.end_date >= pa_cal.start_date )
4182       AND DECODE(p_prorating_format,'S',
4183              DECODE(SIGN(fact.start_Date-pa_cal.start_date),-1,0,1),
4184              DECODE(SIGN(fact.end_Date - pa_cal.end_date), 1,0,1))=1
4185       AND fact.period_type_id = 2048
4186       AND fact.plan_version_id = ver.plan_version_id
4187       AND fact.plan_type_code = ver.plan_type_code    /* 4471527 */
4188       AND ver.wp_flag = 'N'
4189       AND ver.baselined_flag = 'Y'
4190       AND ver.time_phased_type_code = 'N'
4191 	AND fact.rbs_version_id = NVL(ver.rbs_struct_version_id , -1)
4192       AND ver.plan_version_id > 0
4193    GROUP BY
4194            fact.project_id
4195 	 , fact.PROJECT_ORG_ID
4196 	 , fact.PROJECT_ORGANIZATION_ID
4197    	 , fact.PROJECT_ELEMENT_ID
4198    	 , pa_cal.ent_period_id
4199    	 , fact.PERIOD_TYPE_ID
4200  	 , fact.CALENDAR_TYPE
4201          , fact.RBS_AGGR_LEVEL
4202          , fact.WBS_ROLLUP_FLAG
4203          , fact.PRG_ROLLUP_FLAG
4204          , fact.CURR_RECORD_TYPE_ID
4205    	 , fact.CURRENCY_CODE
4206    	 , fact.RBS_ELEMENT_ID
4207    	 , fact.RBS_VERSION_ID
4208    	 , fact.PLAN_VERSION_ID
4209    	 , fact.PLAN_TYPE_ID
4210 	 , fact.TIME_DANGLING_FLAG
4211 	 , fact.RATE_DANGLING_FLAG
4212               , fact.PLAN_TYPE_CODE ;     /* 4471527 */
4213 
4214 EXCEPTION
4215   WHEN OTHERS THEN
4216     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
4217                              p_procedure_name => 'PRORATE_TO_ENT_N_PJP1_SE');
4218     RAISE;
4219 END;
4220 
4221 
4222 PROCEDURE PRORATE_TO_PAGL_PGE_PJP1_D (p_calendar_type   IN   VARCHAR2 := NULL) IS
4223 BEGIN
4224 
4225     g_worker_id  := PJI_PJP_FP_CURR_WRAP.GET_WORKER_ID;
4226 
4227     INSERT INTO pji_fp_aggr_pjp1
4228     (
4229        worker_id
4230      , PROJECT_ID
4231      , PROJECT_ORG_ID
4232      , PROJECT_ORGANIZATION_ID
4233      -- , PARTITION_ID
4234      , PROJECT_ELEMENT_ID
4235      , TIME_ID
4236      , PERIOD_TYPE_ID
4237      , CALENDAR_TYPE
4238      , RBS_AGGR_LEVEL
4239      , WBS_ROLLUP_FLAG
4240      , PRG_ROLLUP_FLAG
4241      , CURR_RECORD_TYPE_ID
4242      , CURRENCY_CODE
4243      , RBS_ELEMENT_ID
4244      , RBS_VERSION_ID
4245      , PLAN_VERSION_ID
4246      , PLAN_TYPE_ID
4247      , RAW_COST
4248      , BRDN_COST
4249      , REVENUE
4250      , BILL_RAW_COST
4251      , BILL_BRDN_COST
4252      , BILL_LABOR_RAW_COST
4253      , BILL_LABOR_BRDN_COST
4254      , BILL_LABOR_HRS
4255      , EQUIPMENT_RAW_COST
4256      , EQUIPMENT_BRDN_COST
4257      , CAPITALIZABLE_RAW_COST
4258      , CAPITALIZABLE_BRDN_COST
4259      , LABOR_RAW_COST
4260      , LABOR_BRDN_COST
4261      , LABOR_HRS
4262      , LABOR_REVENUE
4263      , EQUIPMENT_HOURS
4264      , BILLABLE_EQUIPMENT_HOURS
4265      , SUP_INV_COMMITTED_COST
4266      , PO_COMMITTED_COST
4267      , PR_COMMITTED_COST
4268      , OTH_COMMITTED_COST
4269      , ACT_LABOR_HRS
4270      , ACT_EQUIP_HRS
4274      , ACT_RAW_COST
4271      , ACT_LABOR_BRDN_COST
4272      , ACT_EQUIP_BRDN_COST
4273      , ACT_BRDN_COST
4275      , ACT_REVENUE
4276      , ACT_LABOR_RAW_COST
4277      , ACT_EQUIP_RAW_COST
4278      , ETC_LABOR_HRS
4279      , ETC_EQUIP_HRS
4280      , ETC_LABOR_BRDN_COST
4281      , ETC_EQUIP_BRDN_COST
4282      , ETC_BRDN_COST
4283      , ETC_RAW_COST
4284      , ETC_LABOR_RAW_COST
4285      , ETC_EQUIP_RAW_COST
4286      , CUSTOM1
4287      , CUSTOM2
4288      , CUSTOM3
4289      , CUSTOM4
4290      , CUSTOM5
4291      , CUSTOM6
4292      , CUSTOM7
4293      , CUSTOM8
4294      , CUSTOM9
4295      , CUSTOM10
4296      , CUSTOM11
4297      , CUSTOM12
4298      , CUSTOM13
4299      , CUSTOM14
4300      , CUSTOM15
4301      , TIME_DANGLING_FLAG
4302      , RATE_DANGLING_FLAG
4303      , PRG_LEVEL
4304      , PLAN_TYPE_CODE      /* 4471527 */
4305 	)
4306    SELECT
4307        g_worker_id worker_id
4308      , a.PROJECT_ID
4309      , a.PROJECT_ORG_ID
4310      , a.PROJECT_ORGANIZATION_ID
4311      , a.PROJECT_ELEMENT_ID
4312      , a.TIME_ID
4313      , a.PERIOD_TYPE_ID
4314      , a.CALENDAR_TYPE
4315      , a.RBS_AGGR_LEVEL
4316      , a.WBS_ROLLUP_FLAG
4317      , a.PRG_ROLLUP_FLAG
4318      , a.CURR_RECORD_TYPE_ID
4319      , a.CURRENCY_CODE
4320      , a.RBS_ELEMENT_ID
4321      , a.RBS_VERSION_ID
4322      , a.PLAN_VERSION_ID
4323      , a.PLAN_TYPE_ID
4324      , SUM(a.RAW_COST       )
4325      , SUM(a.BRDN_COST 	)
4326      , SUM(a.REVENUE	)
4327      , SUM(a.BILL_RAW_COST )
4328      , SUM(a.BILL_BRDN_COST )
4329      , SUM(a.BILL_LABOR_RAW_COST )
4330      , SUM(a.BILL_LABOR_BRDN_COST )
4331      , SUM(a.BILL_LABOR_HRS )
4332      , SUM(a.EQUIPMENT_RAW_COST )
4333      , SUM(a.EQUIPMENT_BRDN_COST )
4334      , SUM(a.CAPITALIZABLE_RAW_COST )
4335      , SUM(a.CAPITALIZABLE_BRDN_COST )
4336      , SUM(a.LABOR_RAW_COST )
4337      , SUM(a.LABOR_BRDN_COST)
4338      , SUM(a.LABOR_HRS )
4339      , SUM(a.LABOR_REVENUE )
4340      , SUM(a.EQUIPMENT_HOURS )
4341      , SUM(a.BILLABLE_EQUIPMENT_HOURS)
4342      , SUM(a.SUP_INV_COMMITTED_COST)
4343      , SUM(a.PO_COMMITTED_COST )
4344      , SUM(a.PR_COMMITTED_COST )
4345      , SUM(a.OTH_COMMITTED_COST)
4346      , SUM(a.ACT_LABOR_HRS)
4347      , SUM(a.ACT_EQUIP_HRS)
4348      , SUM(a.ACT_LABOR_BRDN_COST)
4349      , SUM(a.ACT_EQUIP_BRDN_COST)
4350      , SUM(a.ACT_BRDN_COST    )
4351      , SUM(a.ACT_RAW_COST    )
4352      , SUM(a.ACT_REVENUE    )
4353      , SUM(a.ACT_LABOR_RAW_COST)
4354      , SUM(a.ACT_EQUIP_RAW_COST)
4355      , SUM(a.ETC_LABOR_HRS         )
4356      , SUM(a.ETC_EQUIP_HRS        )
4357      , SUM(a.ETC_LABOR_BRDN_COST )
4358      , SUM(a.ETC_EQUIP_BRDN_COST)
4359      , SUM(a.ETC_BRDN_COST )
4360      , SUM(a.ETC_RAW_COST)
4361      , SUM(a.ETC_LABOR_RAW_COST)
4362      , SUM(a.ETC_EQUIP_RAW_COST)
4363      , SUM(a.CUSTOM1	)
4364      , SUM(a.CUSTOM2	)
4365      , SUM(a.CUSTOM3	)
4366      , SUM(a.CUSTOM4	)
4367      , SUM(a.CUSTOM5	)
4368      , SUM(a.CUSTOM6	)
4369      , SUM(a.CUSTOM7	)
4370      , SUM(a.CUSTOM8	)
4371      , SUM(a.CUSTOM9	)
4372      , SUM(a.CUSTOM10	)
4373      , SUM(a.CUSTOM11	)
4374      , SUM(a.CUSTOM12	)
4375      , SUM(a.CUSTOM13	)
4376      , SUM(a.CUSTOM14	)
4377      , SUM(a.CUSTOM15	)
4378      , a.TIME_DANGLING_FLAG
4379      , a.RATE_DANGLING_FLAG
4380      , g_default_prg_level prg_level
4381      , a.plan_type_code plan_type_code    /* 4471527 */
4382    FROM (
4383    SELECT
4384            fact.project_id  project_id
4385    	 , fact.project_ORG_ID project_ORG_ID
4386    	 , fact.project_ORGANIZATION_ID project_ORGANIZATION_ID
4387       -- , fact.PARTITION_ID PARTITION_ID
4388    	 , fact.PROJECT_ELEMENT_ID PROJECT_ELEMENT_ID
4389    	 , calDet.sec_cal_period_id TIME_ID
4390    	 , fact.PERIOD_TYPE_ID PERIOD_TYPE_ID
4391    	 , DECODE(fact.CALENDAR_TYPE, 'P', 'G', 'G', 'P') CALENDAR_TYPE
4392          , fact.RBS_AGGR_LEVEL
4393          , fact.WBS_ROLLUP_FLAG
4394          , fact.PRG_ROLLUP_FLAG
4395    	 , fact.CURR_RECORD_TYPE_ID CURR_RECORD_TYPE_ID
4396    	 , fact.CURRENCY_CODE CURRENCY_CODE
4397    	 , fact.RBS_ELEMENT_ID RBS_ELEMENT_ID
4398    	 , fact.RBS_VERSION_ID RBS_VERSION_ID
4399    	 , fact.PLAN_VERSION_ID PLAN_VERSION_ID
4400 	 , fact.PLAN_TYPE_ID  PLAN_TYPE_ID
4401 	 , ROUND (nvl(fact.raw_cost,0)*calDet.factor/cur.mau)*cur.mau raw_cost
4402 	 , ROUND (nvl(fact.brdn_cost,0)*calDet.factor/cur.mau)*cur.mau brdn_cost
4403 	 , ROUND (nvl(fact.revenue,0)*calDet.factor/cur.mau)*cur.mau revenue
4404 	 , ROUND (nvl(fact.bill_raw_cost,0)*calDet.factor/cur.mau)*cur.mau bill_raw_cost
4405 	 , ROUND (nvl(fact.bill_brdn_cost,0)*calDet.factor/cur.mau)*cur.mau bill_brdn_cost
4406 	 , ROUND (nvl(fact.bill_labor_raw_cost,0)*calDet.factor/cur.mau)*cur.mau bill_labor_raw_cost
4407 	 , ROUND (nvl(fact.bill_labor_brdn_cost,0)*calDet.factor/cur.mau)*cur.mau bill_labor_brdn_cost
4408 	 , ROUND (nvl(fact.bill_labor_hrs,0)*calDet.factor/cur.mau)*cur.mau bill_labor_hrs
4409 	 , ROUND (nvl(fact.equipment_raw_cost,0)*calDet.factor/cur.mau)*cur.mau equipment_raw_cost
4410 	 , ROUND (nvl(fact.equipment_brdn_cost,0)*calDet.factor/cur.mau)*cur.mau equipment_brdn_cost
4414 	 , ROUND (nvl(fact.labor_brdn_cost,0)*calDet.factor/cur.mau)*cur.mau labor_brdn_cost
4411 	 , ROUND (nvl(fact.capitalizable_raw_cost,0)*calDet.factor/cur.mau)*cur.mau capitalizable_raw_cost
4412 	 , ROUND (nvl(fact.capitalizable_brdn_cost,0)*calDet.factor/cur.mau)*cur.mau capitalizable_brdn_cost
4413 	 , ROUND (nvl(fact.labor_raw_cost,0)*calDet.factor/cur.mau)*cur.mau labor_raw_cost
4415 	 , ROUND (nvl(fact.labor_hrs,0)*calDet.factor/cur.mau)*cur.mau labor_hrs
4416 	 , ROUND (nvl(fact.labor_revenue,0)*calDet.factor/cur.mau)*cur.mau labor_revenue
4417 	 , ROUND (nvl(fact.equipment_hours,0)*calDet.factor/cur.mau)*cur.mau equipment_hours
4418 	 , ROUND (nvl(fact.billable_equipment_hours,0)*calDet.factor/cur.mau)*cur.mau billable_equipment_hours
4419 	 , ROUND (nvl(fact.sup_inv_committed_cost,0)*calDet.factor/cur.mau)*cur.mau sup_inv_committed_cost
4420 	 , ROUND (nvl(fact.po_committed_cost,0)*calDet.factor/cur.mau)*cur.mau po_committed_cost
4421 	 , ROUND (nvl(fact.pr_committed_cost,0)*calDet.factor/cur.mau)*cur.mau pr_committed_cost
4422 	 , ROUND (nvl(fact.oth_committed_cost,0)*calDet.factor/cur.mau)*cur.mau oth_committed_cost
4423 	 , ROUND (nvl(fact.ACT_LABOR_HRS,0)*calDet.factor/cur.mau)*cur.mau ACT_LABOR_HRS
4424 	 , ROUND (nvl(fact.ACT_EQUIP_HRS,0)*calDet.factor/cur.mau)*cur.mau ACT_EQUIP_HRS
4425 	 , ROUND (nvl(fact.ACT_LABOR_BRDN_COST,0)*calDet.factor/cur.mau)*cur.mau ACT_LABOR_BRDN_COST
4426 	 , ROUND (nvl(fact.ACT_EQUIP_BRDN_COST,0)*calDet.factor/cur.mau)*cur.mau ACT_EQUIP_BRDN_COST
4427 	 , ROUND (nvl(fact.ACT_BRDN_COST,0)*calDet.factor/cur.mau)*cur.mau ACT_BRDN_COST
4428 	 , ROUND (nvl(fact.ACT_RAW_COST,0)*calDet.factor/cur.mau)*cur.mau ACT_RAW_COST
4429 	 , ROUND (nvl(fact.ACT_REVENUE,0)*calDet.factor/cur.mau)*cur.mau ACT_REVENUE
4430 	 , ROUND (nvl(fact.ACT_LABOR_RAW_COST,0)*calDet.factor/cur.mau)*cur.mau ACT_LABOR_RAW_COST
4431 	 , ROUND (nvl(fact.ACT_EQUIP_RAW_COST,0)*calDet.factor/cur.mau)*cur.mau ACT_EQUIP_RAW_COST
4432 	 , ROUND (nvl(fact.ETC_LABOR_HRS,0)*calDet.factor/cur.mau)*cur.mau ETC_LABOR_HRS
4433 	 , ROUND (nvl(fact.ETC_EQUIP_HRS,0)*calDet.factor/cur.mau)*cur.mau ETC_EQUIP_HRS
4434 	 , ROUND (nvl(fact.ETC_LABOR_BRDN_COST,0)*calDet.factor/cur.mau)*cur.mau ETC_LABOR_BRDN_COST
4435 	 , ROUND (nvl(fact.ETC_EQUIP_BRDN_COST,0)*calDet.factor/cur.mau)*cur.mau ETC_EQUIP_BRDN_COST
4436 	 , ROUND (nvl(fact.ETC_BRDN_COST,0)*calDet.factor/cur.mau)*cur.mau ETC_BRDN_COST
4437 	 , ROUND (nvl(fact.ETC_RAW_COST,0)*calDet.factor/cur.mau)*cur.mau ETC_RAW_COST
4438 	 , ROUND (nvl(fact.ETC_LABOR_RAW_COST,0)*calDet.factor/cur.mau)*cur.mau ETC_LABOR_RAW_COST
4439 	 , ROUND (nvl(fact.ETC_EQUIP_RAW_COST,0)*calDet.factor/cur.mau)*cur.mau ETC_EQUIP_RAW_COST
4440 	 , ROUND (nvl(fact.custom1,0)*calDet.factor/cur.mau)*cur.mau custom1
4441 	 , ROUND (nvl(fact.custom2,0)*calDet.factor/cur.mau)*cur.mau custom2
4442 	 , ROUND (nvl(fact.custom3,0)*calDet.factor/cur.mau)*cur.mau custom3
4443 	 , ROUND (nvl(fact.custom4,0)*calDet.factor/cur.mau)*cur.mau custom4
4444 	 , ROUND (nvl(fact.custom5,0)*calDet.factor/cur.mau)*cur.mau custom5
4445 	 , ROUND (nvl(fact.custom6,0)*calDet.factor/cur.mau)*cur.mau custom6
4446 	 , ROUND (nvl(fact.custom7,0)*calDet.factor/cur.mau)*cur.mau custom7
4447 	 , ROUND (nvl(fact.custom8,0)*calDet.factor/cur.mau)*cur.mau custom8
4448 	 , ROUND (nvl(fact.custom9,0)*calDet.factor/cur.mau)*cur.mau custom9
4449 	 , ROUND (nvl(fact.custom10,0)*calDet.factor/cur.mau)*cur.mau custom10
4450 	 , ROUND (nvl(fact.custom11,0)*calDet.factor/cur.mau)*cur.mau custom11
4451 	 , ROUND (nvl(fact.custom12,0)*calDet.factor/cur.mau)*cur.mau custom12
4452 	 , ROUND (nvl(fact.custom13,0)*calDet.factor/cur.mau)*cur.mau custom13
4453 	 , ROUND (nvl(fact.custom14,0)*calDet.factor/cur.mau)*cur.mau custom14
4454 	 , ROUND (nvl(fact.custom15,0)*calDet.factor/cur.mau)*cur.mau custom15
4455 	 , fact.time_dangling_flag time_dangling_flag
4456 	 , fact.rate_dangling_flag rate_dangling_flag
4457               , fact.plan_type_code plan_type_code    /* 4471527 */
4458    FROM   pji_fp_aggr_pjp1 fact,
4459          (SELECT  /*+ NO_MERGE */ (LEAST(pri.end_date,sec.end_date) - Greatest(pri.start_date,sec.start_date)+1)
4460 	                      / (pri.end_date - pri.start_date+1) factor,
4461 	         ppa.project_id,
4462 	         ver.rbs_struct_Version_id rbs_struct_version_id,
4463 		 ver.plan_version_id plan_Version_id,
4464                           ver.plan_type_code plan_type_code ,    /* 4471527 */
4465 		 pri.cal_period_id pri_cal_period_id,
4466 		 sec.cal_period_id sec_cal_period_id,
4467 		 orginfo.org_id
4468 	    FROM
4469                  pji_time_cal_period_v  pri
4470                , pji_org_extr_info  orginfo
4471                , pji_time_cal_period_v  sec
4472                , pji_fm_extr_plnver4  ver
4473 	       , pa_projects_all ppa
4474            WHERE  1=1
4475              AND ppa.org_id=orginfo.org_id
4476              AND ver.worker_id = g_worker_id
4477              AND pri.calendar_id in (orginfo.gl_calendar_id,orginfo.pa_calendar_id)
4478              AND sec.calendar_id in (orginfo.gl_calendar_id,orginfo.pa_calendar_id)
4479              AND ppa.project_id=ver.project_id
4480              AND decode(ver.time_phased_type_code,
4481                        'P',orginfo.pa_calendar_id,'G',orginfo.gl_calendar_id)=pri.calendar_id
4482              AND decode(ver.time_phased_type_code,
4483                        'G',orginfo.pa_calendar_id,'P',orginfo.gl_calendar_id)=sec.calendar_id
4484              AND ver.wp_flag = 'N'
4485              AND ( sec.start_date <= pri.end_date AND sec.end_date >= pri.start_date )
4486              AND ver.baselined_flag = 'Y'
4487              AND ver.plan_version_id > 0 ) calDet,
4488 	   (SELECT currency_code,
4489 	           decode(nvl(MINIMUM_ACCOUNTABLE_UNIT, power(10, (-1 * PRECISION))),
4490 		      null, 0.01,
4494     WHERE 1=1
4491 		         0, 1,
4492 			 nvl(MINIMUM_ACCOUNTABLE_UNIT, power(10, (-1 * PRECISION)))) mau
4493 	      FROM FND_CURRENCIES) cur
4495       AND calDet.factor > 0
4496 	AND fact.rbs_version_id = NVL(calDet.rbs_struct_version_id , -1)
4497       AND fact.CALENDAR_TYPE <> p_calendar_type
4498       AND fact.worker_id = g_worker_id
4499       AND fact.CALENDAR_TYPE IN ('P', 'G')
4500       AND CalDet.pri_cal_period_id = fact.time_id
4501       AND calDet.org_id = fact.PROJECT_ORG_ID
4502       AND fact.time_dangling_flag IS NULL
4503       AND fact.rate_dangling_flag IS NULL
4504       AND fact.period_type_id = 32
4505       AND fact.line_type like 'OF%' -- 4518721
4506       AND fact.plan_version_id = calDet.plan_version_id
4507       AND fact.plan_type_code = calDet.plan_type_code      /* 4471527 */
4508       AND cur.currency_code = fact.currency_code
4509 	  ) a
4510 	  GROUP BY
4511 	   a.PROJECT_ID
4512      , a.PROJECT_ORG_ID
4513      , a.PROJECT_ORGANIZATION_ID
4514      , a.PROJECT_ELEMENT_ID
4515      , a.TIME_ID
4516      , a.PERIOD_TYPE_ID
4517      , a.CALENDAR_TYPE
4518      , a.RBS_AGGR_LEVEL
4519      , a.WBS_ROLLUP_FLAG
4520      , a.PRG_ROLLUP_FLAG
4521      , a.CURR_RECORD_TYPE_ID
4522      , a.CURRENCY_CODE
4523      , a.RBS_ELEMENT_ID
4524      , a.RBS_VERSION_ID
4525      , a.PLAN_VERSION_ID
4526      , a.PLAN_TYPE_ID
4527      , a.TIME_DANGLING_FLAG
4528      , a.RATE_DANGLING_FLAG
4529      , a.plan_type_code ;     /*   4471527 */
4530 
4531 
4532 EXCEPTION
4533   WHEN OTHERS THEN
4534     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
4535                              p_procedure_name => ' PRORATE_TO_PAGL_PGE_PJP1_D ');
4536     RAISE;
4537 END;
4538 
4539 
4540 PROCEDURE PRORATE_TO_PAGL_PGE_FPRL_D (p_calendar_type   IN   VARCHAR2 := NULL) IS
4541 BEGIN
4542 
4543     g_worker_id  := PJI_PJP_FP_CURR_WRAP.GET_WORKER_ID;
4544 
4545 EXCEPTION
4546   WHEN OTHERS THEN
4547     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
4548                              p_procedure_name => 'PRORATE_TO_PAGL_PGE_FPRL_D ');
4549     RAISE;
4550 END;
4551 
4552 
4553 PROCEDURE PRORATE_TO_PAGL_N_PJP1_D (p_calendar_type   IN   VARCHAR2 := NULL) IS
4554 BEGIN
4555 
4556     IF (p_calendar_type NOT IN ('P', 'G')) THEN
4557       RETURN;
4558     END IF;
4559 
4560     g_worker_id  := PJI_PJP_FP_CURR_WRAP.GET_WORKER_ID;
4561 
4562     INSERT INTO pji_fp_aggr_pjp1  -- Non time phased entries..
4563     (
4564        worker_id
4565      , PROJECT_ID
4566      , PROJECT_ORG_ID
4567      , PROJECT_ORGANIZATION_ID
4568      -- , PARTITION_ID
4569      , PROJECT_ELEMENT_ID
4570      , TIME_ID
4571      , PERIOD_TYPE_ID
4572      , CALENDAR_TYPE
4573      , RBS_AGGR_LEVEL
4574      , WBS_ROLLUP_FLAG
4575      , PRG_ROLLUP_FLAG
4576      , CURR_RECORD_TYPE_ID
4577      , CURRENCY_CODE
4578      , RBS_ELEMENT_ID
4579      , RBS_VERSION_ID
4580      , PLAN_VERSION_ID
4581      , PLAN_TYPE_ID
4582      , RAW_COST
4583      , BRDN_COST
4584      , REVENUE
4585      , BILL_RAW_COST
4586      , BILL_BRDN_COST
4587      , BILL_LABOR_RAW_COST
4588      , BILL_LABOR_BRDN_COST
4589      , BILL_LABOR_HRS
4590      , EQUIPMENT_RAW_COST
4591      , EQUIPMENT_BRDN_COST
4592      , CAPITALIZABLE_RAW_COST
4593      , CAPITALIZABLE_BRDN_COST
4594      , LABOR_RAW_COST
4595      , LABOR_BRDN_COST
4596      , LABOR_HRS
4597      , LABOR_REVENUE
4598      , EQUIPMENT_HOURS
4599      , BILLABLE_EQUIPMENT_HOURS
4600      , SUP_INV_COMMITTED_COST
4601      , PO_COMMITTED_COST
4602      , PR_COMMITTED_COST
4603      , OTH_COMMITTED_COST
4604      , ACT_LABOR_HRS
4605      , ACT_EQUIP_HRS
4606      , ACT_LABOR_BRDN_COST
4607      , ACT_EQUIP_BRDN_COST
4608      , ACT_BRDN_COST
4609      , ACT_RAW_COST
4610      , ACT_REVENUE
4611      , ACT_LABOR_RAW_COST
4612      , ACT_EQUIP_RAW_COST
4613      , ETC_LABOR_HRS
4614      , ETC_EQUIP_HRS
4615      , ETC_LABOR_BRDN_COST
4616      , ETC_EQUIP_BRDN_COST
4617      , ETC_BRDN_COST
4618      , ETC_RAW_COST
4619      , ETC_LABOR_RAW_COST
4620      , ETC_EQUIP_RAW_COST
4621      , CUSTOM1
4622      , CUSTOM2
4623      , CUSTOM3
4624      , CUSTOM4
4625      , CUSTOM5
4626      , CUSTOM6
4627      , CUSTOM7
4628      , CUSTOM8
4629      , CUSTOM9
4630      , CUSTOM10
4631      , CUSTOM11
4632      , CUSTOM12
4633      , CUSTOM13
4634      , CUSTOM14
4635      , CUSTOM15
4636      , TIME_DANGLING_FLAG
4637      , RATE_DANGLING_FLAG
4638      , PRG_LEVEL
4639      , PLAN_TYPE_CODE     /* 4471527 */
4640 	)
4641    SELECT
4642        g_worker_id  worker_id
4643      , a.PROJECT_ID
4644      , a.PROJECT_ORG_ID
4645      , a.PROJECT_ORGANIZATION_ID
4646      , a.PROJECT_ELEMENT_ID
4647      , a.TIME_ID
4648      , 32 -- a.PERIOD_TYPE_ID
4649      , a.CALENDAR_TYPE
4650      , a.RBS_AGGR_LEVEL
4651      , a.WBS_ROLLUP_FLAG
4652      , a.PRG_ROLLUP_FLAG
4653      , a.CURR_RECORD_TYPE_ID
4654      , a.CURRENCY_CODE
4655      , a.RBS_ELEMENT_ID
4656      , a.RBS_VERSION_ID
4660      , SUM(ROUND (nvl(a.brdn_cost,0)*a.factor/a.mau)*a.mau) brdn_cost
4657      , a.PLAN_VERSION_ID
4658      , a.PLAN_TYPE_ID
4659      , SUM(ROUND (nvl(a.raw_cost,0)*a.factor/a.mau)*a.mau) raw_cost
4661      , SUM(ROUND (nvl(a.revenue,0)*a.factor/a.mau)*a.mau) revenue
4662      , SUM(ROUND (nvl(a.bill_raw_cost,0)*a.factor/a.mau)*a.mau) bill_raw_cost
4663      , SUM(ROUND (nvl(a.bill_brdn_cost,0)*a.factor/a.mau)*a.mau) bill_brdn_cost
4664      , SUM(ROUND (nvl(a.bill_labor_raw_cost,0)*a.factor/a.mau)*a.mau) bill_labor_raw_cost
4665      , SUM(ROUND (nvl(a.bill_labor_brdn_cost,0)*a.factor/a.mau)*a.mau) bill_labor_brdn_cost
4666      , SUM(ROUND (nvl(a.bill_labor_hrs,0)*a.factor/a.mau)*a.mau) bill_labor_hrs
4667      , SUM(ROUND (nvl(a.equipment_raw_cost,0)*a.factor/a.mau)*a.mau) equipment_raw_cost
4668      , SUM(ROUND (nvl(a.equipment_brdn_cost,0)*a.factor/a.mau)*a.mau) equipment_brdn_cost
4669      , SUM(ROUND (nvl(a.capitalizable_raw_cost,0)*a.factor/a.mau)*a.mau) capitalizable_raw_cost
4670      , SUM(ROUND (nvl(a.capitalizable_brdn_cost,0)*a.factor/a.mau)*a.mau) capitalizable_brdn_cost
4671      , SUM(ROUND (nvl(a.labor_raw_cost,0)*a.factor/a.mau)*a.mau) labor_raw_cost
4672      , SUM(ROUND (nvl(a.labor_brdn_cost,0)*a.factor/a.mau)*a.mau) labor_brdn_cost
4673      , SUM(ROUND (nvl(a.labor_hrs,0)*a.factor/a.mau)*a.mau) labor_hrs
4674      , SUM(ROUND (nvl(a.labor_revenue,0)*a.factor/a.mau)*a.mau) labor_revenue
4675      , SUM(ROUND (nvl(a.equipment_hours,0)*a.factor/a.mau)*a.mau) equipment_hours
4676      , SUM(ROUND (nvl(a.billable_equipment_hours,0)*a.factor/a.mau)*a.mau) billable_equipment_hours
4677      , SUM(ROUND (nvl(a.sup_inv_committed_cost,0)*a.factor/a.mau)*a.mau) sup_inv_committed_cost
4678      , SUM(ROUND (nvl(a.po_committed_cost,0)*a.factor/a.mau)*a.mau) po_committed_cost
4679      , SUM(ROUND (nvl(a.pr_committed_cost,0)*a.factor/a.mau)*a.mau) pr_committed_cost
4680      , SUM(ROUND (nvl(a.oth_committed_cost,0)*a.factor/a.mau)*a.mau) oth_committed_cost
4681      , SUM(ROUND (nvl(a.ACT_LABOR_HRS,0)*a.factor/a.mau)*a.mau) ACT_LABOR_HRS
4682      , SUM(ROUND (nvl(a.ACT_EQUIP_HRS,0)*a.factor/a.mau)*a.mau) ACT_EQUIP_HRS
4683      , SUM(ROUND (nvl(a.ACT_LABOR_BRDN_COST,0)*a.factor/a.mau)*a.mau) ACT_LABOR_BRDN_COST
4684      , SUM(ROUND (nvl(a.ACT_EQUIP_BRDN_COST,0)*a.factor/a.mau)*a.mau) ACT_EQUIP_BRDN_COST
4685      , SUM(ROUND (nvl(a.ACT_BRDN_COST,0)*a.factor/a.mau)*a.mau) ACT_BRDN_COST
4686      , SUM(ROUND (nvl(a.ACT_RAW_COST,0)*a.factor/a.mau)*a.mau) ACT_RAW_COST
4687      , SUM(ROUND (nvl(a.ACT_REVENUE,0)*a.factor/a.mau)*a.mau) ACT_REVENUE
4688      , SUM(ROUND (nvl(a.ACT_LABOR_RAW_COST,0)*a.factor/a.mau)*a.mau) ACT_LABOR_RAW_COST
4689      , SUM(ROUND (nvl(a.ACT_EQUIP_RAW_COST,0)*a.factor/a.mau)*a.mau) ACT_EQUIP_RAW_COST
4690      , SUM(ROUND (nvl(a.ETC_LABOR_HRS,0)*a.factor/a.mau)*a.mau) ETC_LABOR_HRS
4691      , SUM(ROUND (nvl(a.ETC_EQUIP_HRS,0)*a.factor/a.mau)*a.mau) ETC_EQUIP_HRS
4692      , SUM(ROUND (nvl(a.ETC_LABOR_BRDN_COST,0)*a.factor/a.mau)*a.mau) ETC_LABOR_BRDN_COST
4693      , SUM(ROUND (nvl(a.ETC_EQUIP_BRDN_COST,0)*a.factor/a.mau)*a.mau) ETC_EQUIP_BRDN_COST
4694      , SUM(ROUND (nvl(a.ETC_BRDN_COST,0)*a.factor/a.mau)*a.mau) ETC_BRDN_COST
4695      , SUM(ROUND (nvl(a.ETC_RAW_COST,0)*a.factor/a.mau)*a.mau) ETC_RAW_COST
4696      , SUM(ROUND (nvl(a.ETC_LABOR_RAW_COST,0)*a.factor/a.mau)*a.mau) ETC_LABOR_RAW_COST
4697      , SUM(ROUND (nvl(a.ETC_EQUIP_RAW_COST,0)*a.factor/a.mau)*a.mau) ETC_EQUIP_RAW_COST
4698      , SUM(ROUND (nvl(a.custom1,0)*a.factor/a.mau)*a.mau) custom1
4699      , SUM(ROUND (nvl(a.custom2,0)*a.factor/a.mau)*a.mau) custom2
4700      , SUM(ROUND (nvl(a.custom3,0)*a.factor/a.mau)*a.mau) custom3
4701      , SUM(ROUND (nvl(a.custom4,0)*a.factor/a.mau)*a.mau) custom4
4702      , SUM(ROUND (nvl(a.custom5,0)*a.factor/a.mau)*a.mau) custom5
4703      , SUM(ROUND (nvl(a.custom6,0)*a.factor/a.mau)*a.mau) custom6
4704      , SUM(ROUND (nvl(a.custom7,0)*a.factor/a.mau)*a.mau) custom7
4705      , SUM(ROUND (nvl(a.custom8,0)*a.factor/a.mau)*a.mau) custom8
4706      , SUM(ROUND (nvl(a.custom9,0)*a.factor/a.mau)*a.mau) custom9
4707      , SUM(ROUND (nvl(a.custom10,0)*a.factor/a.mau)*a.mau) custom10
4708      , SUM(ROUND (nvl(a.custom11,0)*a.factor/a.mau)*a.mau) custom11
4709      , SUM(ROUND (nvl(a.custom12,0)*a.factor/a.mau)*a.mau) custom12
4710      , SUM(ROUND (nvl(a.custom13,0)*a.factor/a.mau)*a.mau) custom13
4711      , SUM(ROUND (nvl(a.custom14,0)*a.factor/a.mau)*a.mau) custom14
4712      , SUM(ROUND (nvl(a.custom15,0)*a.factor/a.mau)*a.mau) custom15
4713      , a.TIME_DANGLING_FLAG
4714      , a.RATE_DANGLING_FLAG
4715      , g_default_prg_level prg_level
4716      , a.PLAN_TYPE_CODE  PLAN_TYPE_CODE    /* 4471527 */
4717   FROM (
4718    SELECT /*+ NO_MERGE */
4719            fact.project_id  project_id
4720    	 , fact.project_ORG_ID project_ORG_ID
4721    	 , fact.project_ORGANIZATION_ID project_ORGANIZATION_ID
4722    	 , fact.PROJECT_ELEMENT_ID PROJECT_ELEMENT_ID
4723    	 , pa_cal.cal_period_id TIME_ID
4724    	 , fact.PERIOD_TYPE_ID PERIOD_TYPE_ID
4725          , p_calendar_type  CALENDAR_TYPE
4726          , fact.RBS_AGGR_LEVEL
4727          , fact.WBS_ROLLUP_FLAG
4728          , fact.PRG_ROLLUP_FLAG
4729    	 , fact.CURR_RECORD_TYPE_ID CURR_RECORD_TYPE_ID
4730    	 , fact.CURRENCY_CODE CURRENCY_CODE
4731    	 , fact.RBS_ELEMENT_ID RBS_ELEMENT_ID
4732    	 , fact.RBS_VERSION_ID RBS_VERSION_ID
4733    	 , fact.PLAN_VERSION_ID PLAN_VERSION_ID
4734 	 , fact.PLAN_TYPE_ID  PLAN_TYPE_ID
4735          , fact.raw_cost
4736          , fact.brdn_cost
4737          , fact.revenue
4738          , fact.bill_raw_cost
4739          , fact.bill_brdn_cost
4740          , fact.bill_labor_raw_cost
4741          , fact.bill_labor_brdn_cost
4745          , fact.capitalizable_raw_cost
4742          , fact.bill_labor_hrs
4743          , fact.equipment_raw_cost
4744          , fact.equipment_brdn_cost
4746          , fact.capitalizable_brdn_cost
4747          , fact.labor_raw_cost
4748          , fact.labor_brdn_cost
4749          , fact.labor_hrs
4750          , fact.labor_revenue
4751          , fact.equipment_hours
4752          , fact.billable_equipment_hours
4753          , fact.sup_inv_committed_cost
4754          , fact.po_committed_cost
4755          , fact.pr_committed_cost
4756          , fact.oth_committed_cost
4757          , fact.ACT_LABOR_HRS
4758          , fact.ACT_EQUIP_HRS
4759          , fact.ACT_LABOR_BRDN_COST
4760          , fact.ACT_EQUIP_BRDN_COST
4761          , fact.ACT_BRDN_COST
4762          , fact.ACT_RAW_COST
4763          , fact.ACT_REVENUE
4764          , fact.ACT_LABOR_RAW_COST
4765          , fact.ACT_EQUIP_RAW_COST
4766          , fact.ETC_LABOR_HRS
4767          , fact.ETC_EQUIP_HRS
4768          , fact.ETC_LABOR_BRDN_COST
4769          , fact.ETC_EQUIP_BRDN_COST
4770          , fact.ETC_BRDN_COST
4771          , fact.ETC_RAW_COST
4772          , fact.ETC_LABOR_RAW_COST
4773          , fact.ETC_EQUIP_RAW_COST
4774          , fact.custom1
4775          , fact.custom2
4776          , fact.custom3
4777          , fact.custom4
4778          , fact.custom5
4779          , fact.custom6
4780          , fact.custom7
4781          , fact.custom8
4782          , fact.custom9
4783          , fact.custom10
4784          , fact.custom11
4785          , fact.custom12
4786          , fact.custom13
4787          , fact.custom14
4788          , fact.custom15
4789 	 , NULL time_dangling_flag
4790 	 , NULL rate_dangling_flag
4791          , cur.mau mau
4792          , (LEAST(fact.end_date,pa_cal.end_date) - Greatest(fact.start_date,pa_cal.start_date)+1)
4793                               / (fact.end_date - fact.start_date+1) factor
4794         , fact.plan_type_code  plan_type_code  /* 4471527 */
4795    FROM    pji_fp_aggr_pjp1 fact
4796    	 , pji_org_extr_info  orginfo
4797    	 , pji_time_cal_period_v  pa_cal
4798          , pji_fm_extr_plnver4  ver
4799          ,(SELECT currency_code,
4800                    decode(nvl(MINIMUM_ACCOUNTABLE_UNIT, power(10, (-1 * PRECISION))),
4801                       null, 0.01,
4802                          0, 1,
4803                          nvl(MINIMUM_ACCOUNTABLE_UNIT, power(10, (-1 * PRECISION)))) mau
4804               FROM FND_CURRENCIES) cur
4805    WHERE  1=1
4806       AND fact.CALENDAR_TYPE = 'A'
4807       AND fact.worker_id = g_worker_id
4808       AND ver.worker_id = g_worker_id
4809       AND fact.start_date IS NOT NULL
4810       AND fact.end_date IS NOT NULL
4811       AND fact.time_dangling_flag IS NULL
4812       AND fact.rate_dangling_flag IS NULL
4813       AND orginfo.org_id = fact.PROJECT_ORG_ID
4814       AND DECODE(p_calendar_type
4815                , 'P', orginfo.pa_calendar_id
4816                , 'G', orginfo.gl_calendar_id) = pa_cal.calendar_id
4817       AND fact.line_type = 'NTP'
4818       AND fact.period_type_id = 2048
4819       AND fact.plan_version_id = ver.plan_version_id
4820       AND fact.plan_type_code = ver.plan_type_code   /* 4471527 */
4821       AND ver.wp_flag = 'N'
4822       AND ver.baselined_flag = 'Y'
4823       AND ver.time_phased_type_code = 'N'
4824       AND ( fact.start_date <= pa_cal.end_date AND fact.end_date >= pa_cal.start_date )
4825 	AND fact.rbs_version_id = NVL(ver.rbs_struct_version_id , -1)
4826       AND cur.currency_code = fact.currency_code
4827       AND ver.plan_version_id > 0
4828 	  ) a
4829       WHERE a.factor >0
4830    GROUP BY
4831        a.PROJECT_ID
4832      , a.PROJECT_ORG_ID
4833      , a.PROJECT_ORGANIZATION_ID
4834      , a.PROJECT_ELEMENT_ID
4835      , a.TIME_ID
4836      , a.PERIOD_TYPE_ID
4837      , a.CALENDAR_TYPE
4838      , a.RBS_AGGR_LEVEL
4839      , a.WBS_ROLLUP_FLAG
4840      , a.PRG_ROLLUP_FLAG
4841      , a.CURR_RECORD_TYPE_ID
4842      , a.CURRENCY_CODE
4843      , a.RBS_ELEMENT_ID
4844      , a.RBS_VERSION_ID
4845      , a.PLAN_VERSION_ID
4846      , a.PLAN_TYPE_ID
4847 	 , a.TIME_DANGLING_FLAG
4848 	 , a.RATE_DANGLING_FLAG
4849               , a.PLAN_TYPE_CODE ;    /* 4471527 */
4850 
4851 
4852 
4853 EXCEPTION
4854   WHEN OTHERS THEN
4855     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
4856                              p_procedure_name => ' PRORATE_TO_PAGL_N_PJP1_D ');
4857     RAISE;
4858 END;
4859 
4860 
4861 PROCEDURE PRORATE_TO_PAGL_PGE_PJP1_SE (p_calendar_type   IN   VARCHAR2 := NULL,
4862                                         p_prorating_format IN  VARCHAR2) IS
4863 BEGIN
4864 
4865      g_worker_id  := PJI_PJP_FP_CURR_WRAP.GET_WORKER_ID;
4866 
4867     INSERT INTO pji_fp_aggr_pjp1 -- For PA/GL entries.
4868     (
4869        worker_id
4870      , PROJECT_ID
4871      , PROJECT_ORG_ID
4872      , PROJECT_ORGANIZATION_ID
4873      , PROJECT_ELEMENT_ID
4874      , TIME_ID
4875      , PERIOD_TYPE_ID
4876      , CALENDAR_TYPE
4877      , RBS_AGGR_LEVEL
4878      , WBS_ROLLUP_FLAG
4879      , PRG_ROLLUP_FLAG
4880      , CURR_RECORD_TYPE_ID
4881      , CURRENCY_CODE
4885      , PLAN_TYPE_ID
4882      , RBS_ELEMENT_ID
4883      , RBS_VERSION_ID
4884      , PLAN_VERSION_ID
4886      , RAW_COST
4887      , BRDN_COST
4888      , REVENUE
4889      , BILL_RAW_COST
4890      , BILL_BRDN_COST
4891      , BILL_LABOR_RAW_COST
4892      , BILL_LABOR_BRDN_COST
4893      , BILL_LABOR_HRS
4894      , EQUIPMENT_RAW_COST
4895      , EQUIPMENT_BRDN_COST
4896      , CAPITALIZABLE_RAW_COST
4897      , CAPITALIZABLE_BRDN_COST
4898      , LABOR_RAW_COST
4899      , LABOR_BRDN_COST
4900      , LABOR_HRS
4901      , LABOR_REVENUE
4902      , EQUIPMENT_HOURS
4903      , BILLABLE_EQUIPMENT_HOURS
4904      , SUP_INV_COMMITTED_COST
4905      , PO_COMMITTED_COST
4906      , PR_COMMITTED_COST
4907      , OTH_COMMITTED_COST
4908      , ACT_LABOR_HRS
4909      , ACT_EQUIP_HRS
4910      , ACT_LABOR_BRDN_COST
4911      , ACT_EQUIP_BRDN_COST
4912      , ACT_BRDN_COST
4913      , ACT_RAW_COST
4914      , ACT_REVENUE
4915      , ACT_LABOR_RAW_COST
4916      , ACT_EQUIP_RAW_COST
4917      , ETC_LABOR_HRS
4918      , ETC_EQUIP_HRS
4919      , ETC_LABOR_BRDN_COST
4920      , ETC_EQUIP_BRDN_COST
4921      , ETC_BRDN_COST
4922      , ETC_RAW_COST
4923      , ETC_LABOR_RAW_COST
4924      , ETC_EQUIP_RAW_COST
4925      , CUSTOM1
4926      , CUSTOM2
4927      , CUSTOM3
4928      , CUSTOM4
4929      , CUSTOM5
4930      , CUSTOM6
4931      , CUSTOM7
4932      , CUSTOM8
4933      , CUSTOM9
4934      , CUSTOM10
4935      , CUSTOM11
4936      , CUSTOM12
4937      , CUSTOM13
4938      , CUSTOM14
4939      , CUSTOM15
4940      , TIME_DANGLING_FLAG
4941      , RATE_DANGLING_FLAG
4942      , PRG_LEVEL
4943      , PLAN_TYPE_CODE   /* 4471527 */
4944 	)
4945    SELECT
4946            g_worker_id
4947          , fact.project_id  project_id
4948 	 , fact.PROJECT_ORG_ID project_org_id
4949 	 , fact.PROJECT_ORGANIZATION_ID project_organization_id
4950    	 , fact.PROJECT_ELEMENT_ID PROJECT_ELEMENT_ID
4951    	 , pa_cal.cal_period_id TIME_ID
4952    	 , fact.PERIOD_TYPE_ID PERIOD_TYPE_ID
4953    	 , DECODE(fact.CALENDAR_TYPE, 'P', 'G', 'G', 'P') CALENDAR_TYPE
4954          , fact.RBS_AGGR_LEVEL RBS_AGGR_LEVEL
4955          , fact.WBS_ROLLUP_FLAG WBS_ROLLUP_FLAG
4956          , fact.PRG_ROLLUP_FLAG PRG_ROLLUP_FLAG
4957          , fact.CURR_RECORD_TYPE_ID CURR_RECORD_TYPE_ID
4958    	 , fact.CURRENCY_CODE CURRENCY_CODE
4959    	 , fact.RBS_ELEMENT_ID RBS_ELEMENT_ID
4960    	 , fact.RBS_VERSION_ID RBS_VERSION_ID
4961    	 , fact.PLAN_VERSION_ID PLAN_VERSION_ID
4962    	 , fact.PLAN_TYPE_ID PLAN_TYPE_ID
4963    	 , SUM(fact.RAW_COST)	 raw_cost
4964    	 , SUM(fact.BRDN_COST) BRDN_COST
4965    	 , SUM(fact.REVENUE) REVENUE
4966    	 , SUM(fact.BILL_RAW_COST) BILL_RAW_COST
4967    	 , SUM(fact.BILL_BRDN_COST) BILL_BRDN_COST
4968    	 , SUM(fact.BILL_LABOR_RAW_COST) BILL_LABOR_RAW_COST
4969    	 , SUM(fact.BILL_LABOR_BRDN_COST) BILL_LABOR_BRDN_COST
4970    	 , SUM(fact.BILL_LABOR_HRS) BILL_LABOR_HRS
4971    	 , SUM(fact.EQUIPMENT_RAW_COST) EQUIPMENT_RAW_COST
4972    	 , SUM(fact.EQUIPMENT_BRDN_COST) EQUIPMENT_BRDN_COST
4973    	 , SUM(fact.CAPITALIZABLE_RAW_COST) CAPITALIZABLE_RAW_COST
4974    	 , SUM(fact.CAPITALIZABLE_BRDN_COST) CAPITALIZABLE_BRDN_COST
4975    	 , SUM(fact.LABOR_RAW_COST) LABOR_RAW_COST
4976    	 , SUM(fact.LABOR_BRDN_COST) LABOR_BRDN_COST
4977    	 , SUM(fact.LABOR_HRS) LABOR_HRS
4978    	 , SUM(fact.LABOR_REVENUE) LABOR_REVENUE
4979    	 , SUM(fact.EQUIPMENT_HOURS) EQUIPMENT_HOURS
4980    	 , SUM(fact.BILLABLE_EQUIPMENT_HOURS) BILLABLE_EQUIPMENT_HOURS
4981    	 , SUM(fact.SUP_INV_COMMITTED_COST) SUP_INV_COMMITTED_COST
4982    	 , SUM(fact.PO_COMMITTED_COST) PO_COMMITTED_COST
4983    	 , SUM(fact.PR_COMMITTED_COST) PR_COMMITTED_COST
4984    	 , SUM(fact.OTH_COMMITTED_COST) OTH_COMMITTED_COST
4985          , SUM(fact.ACT_LABOR_HRS )
4986 	 , SUM(fact.ACT_EQUIP_HRS )
4987 	 , SUM(fact.ACT_LABOR_BRDN_COST )
4988 	 , SUM(fact.ACT_EQUIP_BRDN_COST )
4989 	 , SUM(fact.ACT_BRDN_COST )
4990 	 , SUM(fact.ACT_RAW_COST )
4991 	 , SUM(fact.ACT_REVENUE )
4992          , SUM(fact.ACT_LABOR_RAW_COST)
4993          , SUM(fact.ACT_EQUIP_RAW_COST)
4994 	 , SUM(fact.ETC_LABOR_HRS )
4995 	 , SUM(fact.ETC_EQUIP_HRS )
4996 	 , SUM(fact.ETC_LABOR_BRDN_COST )
4997 	 , SUM(fact.ETC_EQUIP_BRDN_COST )
4998 	 , SUM(fact.ETC_BRDN_COST )
4999          , SUM(fact.ETC_RAW_COST )
5000          , SUM(fact.ETC_LABOR_RAW_COST)
5001          , SUM(fact.ETC_EQUIP_RAW_COST)
5002    	 , SUM(fact.CUSTOM1) CUSTOM1
5003    	 , SUM(fact.CUSTOM2) CUSTOM2
5004    	 , SUM(fact.CUSTOM3) CUSTOM3
5005    	 , SUM(fact.CUSTOM4) CUSTOM4
5006    	 , SUM(fact.CUSTOM5) CUSTOM5
5007    	 , SUM(fact.CUSTOM6) CUSTOM6
5008    	 , SUM(fact.CUSTOM7) CUSTOM7
5009    	 , SUM(fact.CUSTOM8) CUSTOM8
5010    	 , SUM(fact.CUSTOM9) CUSTOM9
5011    	 , SUM(fact.CUSTOM10) CUSTOM10
5012    	 , SUM(fact.CUSTOM11) CUSTOM11
5013    	 , SUM(fact.CUSTOM12) CUSTOM12
5014    	 , SUM(fact.CUSTOM13) CUSTOM13
5015    	 , SUM(fact.CUSTOM14) CUSTOM14
5016    	 , SUM(fact.CUSTOM15) CUSTOM15
5017 	 , NULL TIME_DANGLING_FLAG
5018 	 , NULL RATE_DANGLING_FLAG
5019          , g_default_prg_level prg_level
5020          , fact.PLAN_TYPE_CODE PLAN_TYPE_CODE    /* 4471527 */
5021      FROM  pji_fp_aggr_pjp1 fact
5022          , pji_time_cal_period_v  non_pa_cal
5023    	 , pji_org_extr_info  orginfo
5027       AND fact.worker_id = g_worker_id
5024    	 , pji_time_cal_period_v  pa_cal
5025          , pji_fm_extr_plnver4  ver
5026    WHERE  fact.CALENDAR_TYPE <> p_calendar_type
5028       AND ver.worker_id = g_worker_id
5029       AND fact.CALENDAR_TYPE IN ('P', 'G')
5030       AND non_pa_cal.cal_period_id = fact.time_id
5031       AND fact.line_type like 'OF%'
5032       AND orginfo.org_id = fact.PROJECT_ORG_ID
5033       AND DECODE(fact.calendar_type, 'P', orginfo.gl_calendar_id, 'G', orginfo.pa_calendar_id) = pa_cal.calendar_id
5034       AND ( non_pa_cal.start_date <= pa_cal.end_date AND non_pa_cal.end_date >= pa_cal.start_date )
5035       AND fact.period_type_id = 32
5036       AND fact.plan_version_id = ver.plan_version_id
5037       AND fact.plan_type_code = ver.plan_type_code   /* 4471527 */
5038       AND ver.wp_flag = 'N'
5039       AND ver.baselined_flag = 'Y'
5040 	AND fact.rbs_version_id = NVL(ver.rbs_struct_version_id , -1)
5041       AND DECODE(p_prorating_format,'S',
5042              DECODE(SIGN(non_pa_cal.start_Date-pa_cal.start_date),-1,0,1),
5043              DECODE(SIGN(non_pa_cal.end_Date - pa_cal.end_date), 1,0,1))=1
5044       AND ver.plan_version_id > 0
5045    GROUP BY
5046            fact.project_id
5047 	 , fact.PROJECT_ORG_ID
5048 	 , fact.PROJECT_ORGANIZATION_ID
5049    	 , fact.PROJECT_ELEMENT_ID
5050    	 , pa_cal.cal_period_id
5051    	 , fact.PERIOD_TYPE_ID
5052    	 , fact.CALENDAR_TYPE
5053          , fact.RBS_AGGR_LEVEL
5054          , fact.WBS_ROLLUP_FLAG
5055          , fact.PRG_ROLLUP_FLAG
5056          , fact.CURR_RECORD_TYPE_ID
5057    	 , fact.CURRENCY_CODE
5058    	 , fact.RBS_ELEMENT_ID
5059    	 , fact.RBS_VERSION_ID
5060    	 , fact.PLAN_VERSION_ID
5061    	 , fact.PLAN_TYPE_ID
5062               , fact.PLAN_TYPE_CODE;   /* 4471527 */
5063 
5064 
5065 
5066 EXCEPTION
5067   WHEN OTHERS THEN
5068     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
5069                              p_procedure_name => 'PRORATE_TO_PAGL_PGE_PJP1_SE');
5070     RAISE;
5071 END;
5072 
5073 
5074 PROCEDURE PRORATE_TO_PAGL_PGE_FPRL_SE (p_calendar_type   IN   VARCHAR2 := NULL) IS
5075 BEGIN
5076 
5077    g_worker_id  := PJI_PJP_FP_CURR_WRAP.GET_WORKER_ID;
5078 
5079 EXCEPTION
5080   WHEN OTHERS THEN
5081     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
5082                              p_procedure_name => 'PRORATE_TO_PAGL_PGE_FPRL_SE');
5083     RAISE;
5084 END;
5085 
5086 
5087 PROCEDURE PRORATE_TO_PAGL_N_PJP1_SE (p_calendar_type   IN   VARCHAR2 := NULL,
5088                                      p_prorating_format IN VARCHAR2) IS
5089 BEGIN
5090 
5091     g_worker_id  := PJI_PJP_FP_CURR_WRAP.GET_WORKER_ID;
5092 
5093     INSERT INTO pji_fp_aggr_pjp1 -- For non time phased entries.
5094     (
5095        worker_id
5096      , PROJECT_ID
5097      , PROJECT_ORG_ID
5098      , PROJECT_ORGANIZATION_ID
5099      , PROJECT_ELEMENT_ID
5100      , TIME_ID
5101      , PERIOD_TYPE_ID
5102      , CALENDAR_TYPE
5103      , RBS_AGGR_LEVEL
5104      , WBS_ROLLUP_FLAG
5105      , PRG_ROLLUP_FLAG
5106      , CURR_RECORD_TYPE_ID
5107      , CURRENCY_CODE
5108      , RBS_ELEMENT_ID
5109      , RBS_VERSION_ID
5110      , PLAN_VERSION_ID
5111      , PLAN_TYPE_ID
5112      , RAW_COST
5113      , BRDN_COST
5114      , REVENUE
5115      , BILL_RAW_COST
5116      , BILL_BRDN_COST
5117      , BILL_LABOR_RAW_COST
5118      , BILL_LABOR_BRDN_COST
5119      , BILL_LABOR_HRS
5120      , EQUIPMENT_RAW_COST
5121      , EQUIPMENT_BRDN_COST
5122      , CAPITALIZABLE_RAW_COST
5123      , CAPITALIZABLE_BRDN_COST
5124      , LABOR_RAW_COST
5125      , LABOR_BRDN_COST
5126      , LABOR_HRS
5127      , LABOR_REVENUE
5128      , EQUIPMENT_HOURS
5129      , BILLABLE_EQUIPMENT_HOURS
5130      , SUP_INV_COMMITTED_COST
5131      , PO_COMMITTED_COST
5132      , PR_COMMITTED_COST
5133      , OTH_COMMITTED_COST
5134      , ACT_LABOR_HRS
5135      , ACT_EQUIP_HRS
5136      , ACT_LABOR_BRDN_COST
5137      , ACT_EQUIP_BRDN_COST
5138      , ACT_BRDN_COST
5139      , ACT_RAW_COST
5140      , ACT_REVENUE
5141      , ACT_LABOR_RAW_COST
5142      , ACT_EQUIP_RAW_COST
5143      , ETC_LABOR_HRS
5144      , ETC_EQUIP_HRS
5145      , ETC_LABOR_BRDN_COST
5146      , ETC_EQUIP_BRDN_COST
5147      , ETC_BRDN_COST
5148      , ETC_RAW_COST
5149      , ETC_LABOR_RAW_COST
5150      , ETC_EQUIP_RAW_COST
5151      , CUSTOM1
5152      , CUSTOM2
5153      , CUSTOM3
5154      , CUSTOM4
5155      , CUSTOM5
5156      , CUSTOM6
5157      , CUSTOM7
5158      , CUSTOM8
5159      , CUSTOM9
5160      , CUSTOM10
5161      , CUSTOM11
5162      , CUSTOM12
5163      , CUSTOM13
5164      , CUSTOM14
5165      , CUSTOM15
5166      , TIME_DANGLING_FLAG
5167      , RATE_DANGLING_FLAG
5168      , PRG_LEVEL
5169      , PLAN_TYPE_CODE  /* 4471527 */
5170    )
5171    SELECT
5172            g_worker_id
5173          , fact.project_id  project_id
5174 	 , fact.PROJECT_ORG_ID project_org_id
5175 	 , fact.PROJECT_ORGANIZATION_ID project_organization_id
5176    	 , fact.PROJECT_ELEMENT_ID PROJECT_ELEMENT_ID
5177    	 , pa_cal.cal_period_id TIME_ID
5181          , fact.WBS_ROLLUP_FLAG WBS_ROLLUP_FLAG
5178    	 , 32 -- fact.PERIOD_TYPE_ID PERIOD_TYPE_ID
5179          , DECODE(pa_cal.calendar_id,orginfo.pa_calendar_id,'P',orginfo.gl_calendar_id,'G') CALENDAR_TYPE
5180          , fact.RBS_AGGR_LEVEL RBS_AGGR_LEVEL
5182          , fact.PRG_ROLLUP_FLAG PRG_ROLLUP_FLAG
5183          , fact.CURR_RECORD_TYPE_ID CURR_RECORD_TYPE_ID
5184    	 , fact.CURRENCY_CODE CURRENCY_CODE
5185    	 , fact.RBS_ELEMENT_ID RBS_ELEMENT_ID
5186    	 , fact.RBS_VERSION_ID RBS_VERSION_ID
5187    	 , fact.PLAN_VERSION_ID PLAN_VERSION_ID
5188    	 , fact.PLAN_TYPE_ID PLAN_TYPE_ID
5189    	 , SUM(fact.RAW_COST)	 raw_cost
5190    	 , SUM(fact.BRDN_COST) BRDN_COST
5191    	 , SUM(fact.REVENUE) REVENUE
5192    	 , SUM(fact.BILL_RAW_COST) BILL_RAW_COST
5193    	 , SUM(fact.BILL_BRDN_COST) BILL_BRDN_COST
5194    	 , SUM(fact.BILL_LABOR_RAW_COST) BILL_LABOR_RAW_COST
5195    	 , SUM(fact.BILL_LABOR_BRDN_COST) BILL_LABOR_BRDN_COST
5196    	 , SUM(fact.BILL_LABOR_HRS) BILL_LABOR_HRS
5197    	 , SUM(fact.EQUIPMENT_RAW_COST) EQUIPMENT_RAW_COST
5198    	 , SUM(fact.EQUIPMENT_BRDN_COST) EQUIPMENT_BRDN_COST
5199    	 , SUM(fact.CAPITALIZABLE_RAW_COST) CAPITALIZABLE_RAW_COST
5200    	 , SUM(fact.CAPITALIZABLE_BRDN_COST) CAPITALIZABLE_BRDN_COST
5201    	 , SUM(fact.LABOR_RAW_COST) LABOR_RAW_COST
5202    	 , SUM(fact.LABOR_BRDN_COST) LABOR_BRDN_COST
5203    	 , SUM(fact.LABOR_HRS) LABOR_HRS
5204    	 , SUM(fact.LABOR_REVENUE) LABOR_REVENUE
5205    	 , SUM(fact.EQUIPMENT_HOURS) EQUIPMENT_HOURS
5206    	 , SUM(fact.BILLABLE_EQUIPMENT_HOURS) BILLABLE_EQUIPMENT_HOURS
5207    	 , SUM(fact.SUP_INV_COMMITTED_COST) SUP_INV_COMMITTED_COST
5208    	 , SUM(fact.PO_COMMITTED_COST) PO_COMMITTED_COST
5209    	 , SUM(fact.PR_COMMITTED_COST) PR_COMMITTED_COST
5210    	 , SUM(fact.OTH_COMMITTED_COST) OTH_COMMITTED_COST
5211          , SUM(fact.ACT_LABOR_HRS )
5212 	 , SUM(fact.ACT_EQUIP_HRS )
5213 	 , SUM(fact.ACT_LABOR_BRDN_COST )
5214 	 , SUM(fact.ACT_EQUIP_BRDN_COST )
5215 	 , SUM(fact.ACT_BRDN_COST )
5216 	 , SUM(fact.ACT_RAW_COST )
5217 	 , SUM(fact.ACT_REVENUE )
5218          , SUM(fact.ACT_LABOR_RAW_COST)
5219          , SUM(fact.ACT_EQUIP_RAW_COST)
5220 	 , SUM(fact.ETC_LABOR_HRS )
5221 	 , SUM(fact.ETC_EQUIP_HRS )
5222 	 , SUM(fact.ETC_LABOR_BRDN_COST )
5223 	 , SUM(fact.ETC_EQUIP_BRDN_COST )
5224 	 , SUM(fact.ETC_BRDN_COST )
5225          , SUM(fact.ETC_RAW_COST )
5226          , SUM(fact.ETC_LABOR_RAW_COST)
5227          , SUM(fact.ETC_EQUIP_RAW_COST)
5228    	 , SUM(fact.CUSTOM1) CUSTOM1
5229    	 , SUM(fact.CUSTOM2) CUSTOM2
5230    	 , SUM(fact.CUSTOM3) CUSTOM3
5231    	 , SUM(fact.CUSTOM4) CUSTOM4
5232    	 , SUM(fact.CUSTOM5) CUSTOM5
5233    	 , SUM(fact.CUSTOM6) CUSTOM6
5234    	 , SUM(fact.CUSTOM7) CUSTOM7
5235    	 , SUM(fact.CUSTOM8) CUSTOM8
5236    	 , SUM(fact.CUSTOM9) CUSTOM9
5237    	 , SUM(fact.CUSTOM10) CUSTOM10
5238    	 , SUM(fact.CUSTOM11) CUSTOM11
5239    	 , SUM(fact.CUSTOM12) CUSTOM12
5240    	 , SUM(fact.CUSTOM13) CUSTOM13
5241    	 , SUM(fact.CUSTOM14) CUSTOM14
5242    	 , SUM(fact.CUSTOM15) CUSTOM15
5243 	 , NULL  TIME_DANGLING_FLAG
5244 	 , NULL  RATE_DANGLING_FLAG
5245          , g_default_prg_level prg_level
5246          , fact.plan_type_code PLAN_TYPE_CODE   /* 4471527 */
5247       FROM pji_fp_aggr_pjp1 fact
5248    	 , pji_org_extr_info  orginfo
5249    	 , pji_time_cal_period_v  pa_cal
5250          , pji_fm_extr_plnver4  ver
5251    WHERE  1=1
5252       AND fact.CALENDAR_TYPE = 'A'
5253       AND orginfo.org_id = fact.PROJECT_ORG_ID
5254       AND DECODE(p_calendar_type
5255                , 'P', orginfo.pa_calendar_id
5256                , 'G', orginfo.gl_calendar_id) = pa_cal.calendar_id
5257       AND fact.start_date IS NOT NULL
5258       AND fact.end_date IS NOT NULL
5259       AND fact.period_type_id = 2048
5260       AND fact.plan_version_id = ver.plan_version_id
5261       AND fact.plan_type_code = ver.plan_type_code /* 4471527 */
5262       AND ver.wp_flag = 'N'
5263       AND ver.baselined_flag = 'Y'
5264       AND ver.time_phased_type_code = 'N'
5265       AND fact.line_type = 'NTP'
5266       AND fact.worker_id = g_worker_id
5267       AND ver.worker_id = g_worker_id
5268 	AND fact.rbs_version_id = NVL(ver.rbs_struct_version_id , -1)
5269       AND ( fact.start_date <= pa_cal.end_date AND fact.end_date >= pa_cal.start_date )
5270       AND DECODE(p_prorating_format,'S',
5271              DECODE(SIGN(fact.start_Date-pa_cal.start_date),-1,0,1),
5272              DECODE(SIGN(fact.end_Date - pa_cal.end_date), 1,0,1))=1
5273       AND ver.plan_version_id > 0
5274    GROUP BY
5275            fact.project_id
5276 	 , fact.PROJECT_ORG_ID
5277 	 , fact.PROJECT_ORGANIZATION_ID
5278    	 , fact.PROJECT_ELEMENT_ID
5279    	 , pa_cal.cal_period_id
5280    	 , fact.PERIOD_TYPE_ID
5281    	 , fact.CALENDAR_TYPE
5282          , fact.RBS_AGGR_LEVEL
5283          , fact.WBS_ROLLUP_FLAG
5284          , fact.PRG_ROLLUP_FLAG
5285          , fact.CURR_RECORD_TYPE_ID
5286    	 , fact.CURRENCY_CODE
5287    	 , fact.RBS_ELEMENT_ID
5288    	 , fact.RBS_VERSION_ID
5289    	 , fact.PLAN_VERSION_ID
5290    	 , fact.PLAN_TYPE_ID
5291               , fact.PLAN_TYPE_CODE   /* 4471527 */
5292 	 , fact.TIME_DANGLING_FLAG
5293 	 , fact.RATE_DANGLING_FLAG
5294 	 ,  DECODE(pa_cal.calendar_id,orginfo.pa_calendar_id,'P',orginfo.gl_calendar_id,'G');
5295 
5296 
5297 EXCEPTION
5298   WHEN OTHERS THEN
5299     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
5300                              p_procedure_name => 'PRORATE_TO_PAGL_N_PJP1_SE');
5301     RAISE;
5302 END;
5303 
5304 
5305 ----------
5306 -- Print time API to measure time taken by each api. Also useful for debugging.
5307 ----------
5308 PROCEDURE PRINT_TIME(p_tag IN VARCHAR2) IS
5309 BEGIN
5310   PJI_PJP_FP_CURR_WRAP.print_time(p_tag);
5311 EXCEPTION
5312   WHEN OTHERS THEN
5313     FND_MSG_PUB.add_exc_msg( p_pkg_name       => g_package_name ,
5314                              p_procedure_name => 'PRINT_TIME');
5315     RAISE;
5316 END;
5317 
5318 
5319 END PJI_FM_PLAN_CAL_RLPS;