DBA Data[Home] [Help]

APPS.PJI_PJP_SUM_MAIN SQL Statements

The following lines contain the word 'select', 'insert', 'update' or 'delete':

Line: 111

	select PJI_PROCESS_UTIL.GET_PROCESS_PARAMETER (l_e_process,l_e_process),
        DECODE(l_e_extraction_type,'PARTIAL',g_prtl_disp_name,'RBS',g_rbs_disp_name,NULL,NULL,g_incr_disp_name)
	into p_request_id,p_prog_name
	from dual;
Line: 147

        SELECT
        DECODE(l_e_extraction_type,'PARTIAL','P','RBS','R',NULL,NULL,'I'),
        DECODE(l_e_extraction_type,'PARTIAL',g_prtl_disp_name,'RBS',g_rbs_disp_name,NULL,NULL,g_incr_disp_name),
        DECODE(l_e_project_operating_unit,-1,NULL,l_e_project_operating_unit),
        DECODE(l_e_project_organization_id,-1,NULL,l_e_project_organization_id),
        DECODE(l_e_project_type,'PJI$NULL',NULL,l_e_project_type),
        DECODE(l_e_from_project,'PJI$NULL',NULL,l_e_from_project),
        DECODE(l_e_to_project,'PJI$NULL',NULL,l_e_to_project),
        DECODE(l_e_plan_type_id,-1,NULL,l_e_plan_type_id),
        DECODE(l_e_rbs_header_id,-1,NULL,l_e_rbs_header_id),
        DECODE(l_e_transaction_type,'PJI$NULL',NULL,l_e_transaction_type),
        DECODE(l_e_plan_versions,'PJI$NULL',NULL,l_e_plan_versions)
        INTO
        l_e_run_mode,
        l_e_program,
        l_e_project_operating_unit,
        l_e_project_organization_id,
        l_e_project_type,
        l_e_from_project,
        l_e_to_project,
        l_e_plan_type_id,
        l_e_rbs_header_id,
        l_e_transaction_type,
        l_e_plan_versions
        FROM
        DUAL;
Line: 220

    l_no_selection            varchar2(50);
Line: 244

        FND_MESSAGE.SET_NAME('PJI', 'PJI_PJP_SUM_NO_SELECTION');
Line: 246

        l_no_selection := FND_MESSAGE.GET;
Line: 250

            l_project_operating_unit_name := l_no_selection;
Line: 252

            select NAME
            into   l_project_operating_unit_name
            from   HR_OPERATING_UNITS
            where  ORGANIZATION_ID = p_operating_unit;
Line: 272

            l_project_type := l_no_selection;
Line: 290

            l_project_organization := l_no_selection;
Line: 294

            select NAME
            into   l_project_organization
            from   HR_ALL_ORGANIZATION_UNITS_VL
            where  ORGANIZATION_ID = p_project_organization_id;
Line: 315

            l_from_project := l_no_selection;
Line: 333

            l_to_project := l_no_selection;
Line: 367

    l_no_selection            varchar2(50);
Line: 409

    FND_MESSAGE.SET_NAME('PJI', 'PJI_PJP_SUM_NO_SELECTION');
Line: 411

    l_no_selection := FND_MESSAGE.GET;
Line: 500

            l_project_operating_unit_name := l_no_selection;
Line: 504

            select NAME
            into   l_project_operating_unit_name
            from   HR_OPERATING_UNITS
            where  ORGANIZATION_ID = l_project_operating_unit;
Line: 531

            l_project_type := l_no_selection;
Line: 554

            l_project_organization := l_no_selection;
Line: 558

            select NAME
            into   l_project_organization
            from   HR_ALL_ORGANIZATION_UNITS_VL
            where  ORGANIZATION_ID = l_project_organization_id;
Line: 585

            l_from_project := l_no_selection;
Line: 608

            l_to_project := l_no_selection;
Line: 631

            l_plan_type := l_no_selection;
Line: 635

            select NAME
            into   l_plan_type
            from   PA_FIN_PLAN_TYPES_VL
            where  FIN_PLAN_TYPE_ID = l_plan_type_id;
Line: 661

            l_rbs_header := l_no_selection;
Line: 665

            select NAME
            into   l_rbs_header
            from   PA_RBS_HEADERS_VL
            where  RBS_HEADER_ID = l_rbs_header_id;
Line: 694

            l_transaction_type := l_no_selection;
Line: 698

            select MEANING
            into   l_transaction_type
            from   fnd_lookup_values_vl
            where  LOOKUP_TYPE = 'PJI_REF_TXN_TYPE' and
                   LOOKUP_CODE =l_transaction_type_id;
Line: 719

            l_plan_versions := l_no_selection;
Line: 723

            select MEANING
            into   l_plan_versions
            from   fnd_lookup_values_vl
            where  LOOKUP_TYPE = 'PJI_REF_PLAN_VERSION' and
                   LOOKUP_CODE =l_plan_versions_id;
Line: 751

            l_only_pt_projects := l_no_selection;
Line: 755

            select MEANING
            into   l_only_pt_projects
            from   FND_LOOKUPS
            where  LOOKUP_TYPE = 'YES_NO' and
                   LOOKUP_CODE = l_only_pt_projects;
Line: 799

   select pa.segment1,map.act_err_msg
   from   pji_pjp_proj_batch_map map,pa_projects_all pa
   where  pa.project_id=map.project_id
   and map.worker_id=p_worker_id
    and    map.act_err_msg is not null
   order by segment1;
Line: 873

   select pa.segment1,pa.name
   from   pji_pjp_proj_batch_map map,pa_projects_all pa
   where  pa.project_id=map.project_id
   and map.worker_id=p_worker_id
   and    map.act_err_msg is  null
   order by segment1;
Line: 939

  l_last_update_date     date   := SYSDATE;
Line: 940

  l_last_updated_by      NUMBER := FND_GLOBAL.USER_ID;
Line: 941

  l_last_update_login    NUMBER := FND_GLOBAL.LOGIN_ID;
Line: 944

    select /*+ INDEX_FFS (den PJI_XBS_DENORM_N3) */
      SUP_LEVEL
    from
      PJI_XBS_DENORM den
    where
      STRUCT_TYPE = 'PRG' and
      SUB_LEVEL = SUP_LEVEL and
      EXISTS ( SELECT 1 from PJI_FM_EXTR_PLNVER4 ver where ver.worker_id = p_worker_id
      and ver.project_id = den.SUP_PROJECT_ID)
    group by
      SUP_LEVEL
    order by
      SUP_LEVEL desc;
Line: 961

    select count(bmap.project_id) into l_count
    from PA_PJI_PROJ_EVENTS_LOG elog,
         PJI_PJP_PROJ_BATCH_MAP bmap
       where elog.event_object = to_char(bmap.project_id)
      and elog.event_type = 'PLANTYPE_UPG'
      and bmap.worker_id = p_worker_id;
Line: 972

   DELETE    PJI_FM_EXTR_PLNVER4 where worker_id = p_worker_id;
Line: 973

   DELETE    PJI_FP_AGGR_PJP1 where worker_id = p_worker_id;
Line: 975

	INSERT INTO PJI_FM_EXTR_PLNVER4
    (
      WORKER_ID                ,
      PROJECT_ID               ,
      PLAN_VERSION_ID          ,
      WBS_STRUCT_VERSION_ID    ,
      RBS_STRUCT_VERSION_ID    ,
      PLAN_TYPE_CODE           ,
      PLAN_TYPE_ID             ,
      TIME_PHASED_TYPE_CODE    ,
      TIME_DANGLING_FLAG       ,
      RATE_DANGLING_FLAG       ,
      PROJECT_TYPE_CLASS       ,
      WP_FLAG                  ,
      CURRENT_FLAG             ,
      ORIGINAL_FLAG            ,
      CURRENT_ORIGINAL_FLAG    ,
      BASELINED_FLAG           ,
	  SECONDARY_RBS_FLAG       ,
      LP_FLAG
    )
      SELECT
        DISTINCT
            worker_id
          , project_id
          , plan_version_id
          , wbs_struct_version_id
          , rbs_struct_version_id
          , plan_type_code
          , plan_type_id
          , time_phased_type_code
          , NULL time_dangling_flag
          , NULL rate_dangling_flag
          , NULL PROJECT_TYPE_CLASS
          , is_wp_flag
          , current_flag          , original_flag
          , current_original_flag
          , baselined_flag
          , SECONDARY_RBS_FLAG
          , lp_flag
     FROM
	 (
    SELECT  p_worker_id worker_id,
            bv.project_id                      project_id
          , bv.budget_version_id               plan_version_id
          , DECODE ( NVL(bv.wp_version_flag, 'N')
		           , 'Y', bv.project_structure_version_id
		           , PA_PROJECT_STRUCTURE_UTILS.GET_FIN_STRUC_VER_ID(bv.project_id)
				   )                           wbs_struct_version_id
          , fpo.rbs_version_id                 rbs_struct_version_id -- extract for this rbs version id
          , DECODE (bv.version_type, 'COST' ,'C' , 'REVENUE', 'R', 'A') plan_type_code
          , fpo.fin_plan_type_id               plan_type_id
          , DECODE(bv.version_type
                      , 'ALL',     fpo.all_time_phased_code
                      , 'COST',    fpo.cost_time_phased_code
                      , 'REVENUE', fpo.revenue_time_phased_code
                     )                       time_phased_type_code
		  , NVL(bv.wp_version_flag, 'N') is_wp_flag
		  , bv.current_flag                  current_flag
		  , bv.original_flag                 original_flag
		  , bv.current_original_flag         current_original_flag
		  , DECODE(bv.baselined_date, NULL, 'N', 'Y') baselined_flag
		  , 'N'  		                     SECONDARY_RBS_FLAG
		  , DECODE( NVL(bv.wp_version_flag, 'N')
		          , 'Y'
				  , DECODE(bv.project_structure_version_id
				            , PA_PROJECT_STRUCTURE_UTILS.GET_LATEST_WP_VERSION( bv.project_id) --  IN NUMBER
				         -- , PA_PROJECT_STRUCTURE_UTILS.GET_FIN_STRUC_VER_ID(bv.project_id)
						 , 'Y'
						 , 'N')
				  , 'N'
				  ) lp_flag
    FROM
           pa_budget_versions bv
         , pa_proj_fp_options  fpo
         , (select distinct bmap.project_id,elog.ATTRIBUTE1 plan_type_id from
                                    PA_PJI_PROJ_EVENTS_LOG elog,
                                    PJI_PJP_PROJ_BATCH_MAP bmap
	                               where elog.event_object = to_char(bmap.project_id)
                                      and elog.EVENT_TYPE = 'PLANTYPE_UPG'
                                      and bmap.worker_id = p_worker_id) logmap
    WHERE 1=1
          AND logmap.project_id = bv.project_id
          AND bv.fin_plan_type_id = logmap.plan_type_id
          AND bv.version_type is not NULL
          AND bv.fin_plan_type_id is not NULL
          AND fpo.project_id = bv.project_id
          AND bv.fin_plan_type_id = fpo.fin_plan_type_id
          AND bv.budget_version_id = fpo.fin_plan_version_id
          AND (bv.current_original_flag = 'Y'
              OR (bv.current_flag||DECODE(bv.baselined_date, NULL, 'N', 'Y')) = 'YY')
          AND fpo.fin_plan_option_level_code = 'PLAN_VERSION'
          AND bv.version_type IN ( 'ALL' , 'COST' , 'REVENUE'));
Line: 1072

INSERT INTO PJI_FM_EXTR_PLNVER4
    (
      WORKER_ID                ,
      PROJECT_ID               ,
      PLAN_VERSION_ID          ,
      WBS_STRUCT_VERSION_ID    ,
      RBS_STRUCT_VERSION_ID    ,
      PLAN_TYPE_CODE           ,
      PLAN_TYPE_ID             ,
      TIME_PHASED_TYPE_CODE    ,
      TIME_DANGLING_FLAG       ,
      RATE_DANGLING_FLAG       ,
      PROJECT_TYPE_CLASS       ,
      WP_FLAG                  ,
      CURRENT_FLAG             ,
      ORIGINAL_FLAG            ,
     CURRENT_ORIGINAL_FLAG    ,
	BASELINED_FLAG        	 ,
	SECONDARY_RBS_FLAG       ,
      LP_FLAG
    )
SELECT DISTINCT bv.worker_id worker_id
               , den.sup_project_id project_id
               , cbco.plan_version_id
               , PA_PROJECT_STRUCTURE_UTILS.GET_FIN_STRUC_VER_ID(den.sup_project_id) wbs_struct_version_id
               , bv.rbs_struct_version_id
               , bv.plan_type_code
               , bv.plan_type_id
               , bv.time_phased_type_code
               , NULL -- time dangl flg
               , NULL -- rate dangl flg
               , NULL -- project type class
               , 'N' -- wp flag
               , DECODE(cbco.plan_version_id, -3, 'Y', 'N') current_flag
               , DECODE(cbco.plan_version_id, -4, 'Y', 'N') original_flag
               , DECODE(cbco.plan_version_id, -4, 'Y', 'N') curr_original_flag
               , DECODE(cbco.plan_version_id, -3, 'Y', 'N') baselined_flag
               , bv.SECONDARY_RBS_FLAG
               , bv.lp_flag
          FROM PJI_FM_EXTR_PLNVER4 bv
        	 , pji_xbs_denorm den
        	 , ( SELECT -3 plan_version_id FROM DUAL
        	     UNION ALL
        	     SELECT -4 FROM DUAL ) cbco
          WHERE 1=1
            AND bv.plan_version_id > 0
        	AND bv.wp_flag = 'N'
        	AND bv.baselined_flag = 'Y'
        	AND den.struct_version_id IS NULL
            AND den.struct_type = 'PRG'
        	AND den.sub_id = bv.wbs_struct_version_id
            AND NVL(den.relationship_type, 'WF') IN ('LF', 'WF');
Line: 1129

	DELETE pji_rollup_level_status hdr
        where  hdr.plan_version_id < -1
        and exists (select 1 from  pji_fm_extr_plnver4 ver3
                        where ver3.worker_id = p_worker_id
                         and ver3.project_id = hdr.project_id
                         and ver3.plan_version_id = hdr.plan_version_id
			 and ver3.plan_version_id < -1);
Line: 1138

       DELETE FROM pji_fp_xbs_accum_f fact
       WHERE fact.plan_version_id <  -1
           and exists (select 1 from  pji_fm_extr_plnver4 ver3
                      where ver3.worker_id = p_worker_id
                       and ver3.project_id = fact.project_id
		       and ver3.plan_version_id = fact.plan_version_id
		       and ver3.plan_type_id = fact.plan_type_id
		       and ver3.plan_version_id < -1);
Line: 1154

 INSERT INTO PJI_FP_AGGR_PJP1
    (
         WORKER_ID
       , PROJECT_ID
       , PROJECT_ORG_ID
       , PROJECT_ORGANIZATION_ID
       , PROJECT_ELEMENT_ID
       , TIME_ID
       , PERIOD_TYPE_ID
       , CALENDAR_TYPE
       , RBS_AGGR_LEVEL
       , WBS_ROLLUP_FLAG
       , PRG_ROLLUP_FLAG
       , CURR_RECORD_TYPE_ID
       , CURRENCY_CODE
       , RBS_ELEMENT_ID
       , RBS_VERSION_ID
       , PLAN_VERSION_ID
       , PLAN_TYPE_ID
       , RAW_COST
       , BRDN_COST
       , REVENUE
       , BILL_RAW_COST
       , BILL_BRDN_COST
       , BILL_LABOR_RAW_COST
       , BILL_LABOR_BRDN_COST
       , BILL_LABOR_HRS
       , EQUIPMENT_RAW_COST
       , EQUIPMENT_BRDN_COST
       , CAPITALIZABLE_RAW_COST
       , CAPITALIZABLE_BRDN_COST
       , LABOR_RAW_COST
       , LABOR_BRDN_COST
       , LABOR_HRS
       , LABOR_REVENUE
       , EQUIPMENT_HOURS
       , BILLABLE_EQUIPMENT_HOURS
       , SUP_INV_COMMITTED_COST
       , PO_COMMITTED_COST
       , PR_COMMITTED_COST
       , OTH_COMMITTED_COST
       , ACT_LABOR_HRS
	   , ACT_EQUIP_HRS
	   , ACT_LABOR_BRDN_COST
	   , ACT_EQUIP_BRDN_COST
	   , ACT_BRDN_COST
	   , ACT_RAW_COST
	   , ACT_REVENUE
         , ACT_LABOR_RAW_COST
         , ACT_EQUIP_RAW_COST
	   , ETC_LABOR_HRS
	   , ETC_EQUIP_HRS
	   , ETC_LABOR_BRDN_COST
	   , ETC_EQUIP_BRDN_COST
	   , ETC_BRDN_COST
         , ETC_RAW_COST
         , ETC_LABOR_RAW_COST
         , ETC_EQUIP_RAW_COST
       , CUSTOM1
       , CUSTOM2
       , CUSTOM3
       , CUSTOM4
       , CUSTOM5
       , CUSTOM6
       , CUSTOM7
       , CUSTOM8
       , CUSTOM9
       , CUSTOM10
       , CUSTOM11
       , CUSTOM12
       , CUSTOM13
       , CUSTOM14
       , CUSTOM15
       , LINE_TYPE
       , RATE_DANGLING_FLAG
       , TIME_DANGLING_FLAG
       , START_DATE
       , END_DATE
       , PRG_LEVEL
	   , PLAN_TYPE_CODE
	)
select   WORKER_ID
       , F.PROJECT_ID
       , PROJECT_ORG_ID
       , PROJECT_ORGANIZATION_ID
       , PROJECT_ELEMENT_ID
       , TIME_ID
       , PERIOD_TYPE_ID
       , CALENDAR_TYPE
       , RBS_AGGR_LEVEL
       , WBS_ROLLUP_FLAG
       , PRG_ROLLUP_FLAG
       , CURR_RECORD_TYPE_ID
       , CURRENCY_CODE
       , RBS_ELEMENT_ID
       , RBS_VERSION_ID
       , F.PLAN_VERSION_ID
       , f.PLAN_TYPE_ID
       , RAW_COST
       , BRDN_COST
       , REVENUE
       , BILL_RAW_COST
       , BILL_BRDN_COST
       , BILL_LABOR_RAW_COST
       , BILL_LABOR_BRDN_COST
       , BILL_LABOR_HRS
       , EQUIPMENT_RAW_COST
       , EQUIPMENT_BRDN_COST
       , CAPITALIZABLE_RAW_COST
       , CAPITALIZABLE_BRDN_COST
       , LABOR_RAW_COST
       , LABOR_BRDN_COST
       , LABOR_HRS
       , LABOR_REVENUE
       , EQUIPMENT_HOURS
       , BILLABLE_EQUIPMENT_HOURS
       , SUP_INV_COMMITTED_COST
       , PO_COMMITTED_COST
       , PR_COMMITTED_COST
       , OTH_COMMITTED_COST
       , ACT_LABOR_HRS
	   , ACT_EQUIP_HRS
	   , ACT_LABOR_BRDN_COST
	   , ACT_EQUIP_BRDN_COST
	   , ACT_BRDN_COST
	   , ACT_RAW_COST
	   , ACT_REVENUE
         , ACT_LABOR_RAW_COST
         , ACT_EQUIP_RAW_COST
	   , ETC_LABOR_HRS
	   , ETC_EQUIP_HRS
	   , ETC_LABOR_BRDN_COST
	   , ETC_EQUIP_BRDN_COST
	   , ETC_BRDN_COST
         , ETC_RAW_COST
         , ETC_LABOR_RAW_COST
         , ETC_EQUIP_RAW_COST
       , CUSTOM1
       , CUSTOM2
       , CUSTOM3
       , CUSTOM4
       , CUSTOM5
       , CUSTOM6
       , CUSTOM7
       , CUSTOM8
       , CUSTOM9
       , CUSTOM10
       , CUSTOM11
       , CUSTOM12
       , CUSTOM13
       , CUSTOM14
       , CUSTOM15
       , 'UPD'
       , RATE_DANGLING_FLAG
       , TIME_DANGLING_FLAG
       , SYSDATE
       , SYSDATE
       , 0
       ,ver.PLAN_TYPE_CODE
       FROM pji_fp_xbs_accum_f f
      , pji_fm_extr_plnver4 ver
  WHERE 1 = 1
   AND ver.project_id = f.project_id
   AND ver.plan_version_id = f.plan_version_id
   AND ver.plan_type_id = f.plan_type_id
   AND ver.plan_version_id > 0
   AND f.rbs_aggr_level IN ( 'L', 'T' )
   AND f.wbs_rollup_flag = 'N'
   AND f.prg_rollup_flag = 'N'
   AND ver.worker_id = p_worker_id;
Line: 1337

        insert into PJI_FP_AGGR_PJP1
        (
          WORKER_ID,
          RECORD_TYPE,
          PRG_LEVEL,
          LINE_TYPE,
          PROJECT_ID,
          PROJECT_ORG_ID,
          PROJECT_ORGANIZATION_ID,
          PROJECT_ELEMENT_ID,
          TIME_ID,
          PERIOD_TYPE_ID,
          CALENDAR_TYPE,
          RBS_AGGR_LEVEL,
          WBS_ROLLUP_FLAG,
          PRG_ROLLUP_FLAG,
          CURR_RECORD_TYPE_ID,
          CURRENCY_CODE,
          RBS_ELEMENT_ID,
          RBS_VERSION_ID,
          PLAN_VERSION_ID,
          PLAN_TYPE_ID,
          PLAN_TYPE_CODE,
          RAW_COST,
          BRDN_COST,
          REVENUE,
          BILL_RAW_COST,
          BILL_BRDN_COST,
          BILL_LABOR_RAW_COST,
          BILL_LABOR_BRDN_COST,
          BILL_LABOR_HRS,
          EQUIPMENT_RAW_COST,
          EQUIPMENT_BRDN_COST,
          CAPITALIZABLE_RAW_COST,
          CAPITALIZABLE_BRDN_COST,
          LABOR_RAW_COST,
          LABOR_BRDN_COST,
          LABOR_HRS,
          LABOR_REVENUE,
          EQUIPMENT_HOURS,
          BILLABLE_EQUIPMENT_HOURS,
          SUP_INV_COMMITTED_COST,
          PO_COMMITTED_COST,
          PR_COMMITTED_COST,
          OTH_COMMITTED_COST,
          ACT_LABOR_HRS,
          ACT_EQUIP_HRS,
          ACT_LABOR_BRDN_COST,
          ACT_EQUIP_BRDN_COST,
          ACT_BRDN_COST,
          ACT_RAW_COST,
          ACT_REVENUE,
          ACT_LABOR_RAW_COST,
          ACT_EQUIP_RAW_COST,
          ETC_LABOR_HRS,
          ETC_EQUIP_HRS,
          ETC_LABOR_BRDN_COST,
          ETC_EQUIP_BRDN_COST,
          ETC_BRDN_COST,
          ETC_RAW_COST,
          ETC_LABOR_RAW_COST,
          ETC_EQUIP_RAW_COST,
          CUSTOM1,
          CUSTOM2,
          CUSTOM3,
          CUSTOM4,
          CUSTOM5,
          CUSTOM6,
          CUSTOM7,
          CUSTOM8,
          CUSTOM9,
          CUSTOM10,
          CUSTOM11,
          CUSTOM12,
          CUSTOM13,
          CUSTOM14,
          CUSTOM15
        )
        select
          pjp1_i.WORKER_ID,
          pjp1_i.RECORD_TYPE,
          pjp1_i.PRG_LEVEL,
          pjp1_i.LINE_TYPE,
          pjp1_i.PROJECT_ID,
          pjp1_i.PROJECT_ORG_ID,
          pjp1_i.PROJECT_ORGANIZATION_ID,
          pjp1_i.PROJECT_ELEMENT_ID,
          pjp1_i.TIME_ID,
          pjp1_i.PERIOD_TYPE_ID,
          pjp1_i.CALENDAR_TYPE,
          pjp1_i.RBS_AGGR_LEVEL,
          pjp1_i.WBS_ROLLUP_FLAG,
          pjp1_i.PRG_ROLLUP_FLAG,
          pjp1_i.CURR_RECORD_TYPE_ID,
          pjp1_i.CURRENCY_CODE,
          pjp1_i.RBS_ELEMENT_ID,
          pjp1_i.RBS_VERSION_ID,
          pjp1_i.PLAN_VERSION_ID,
          pjp1_i.PLAN_TYPE_ID,
          pjp1_i.PLAN_TYPE_CODE,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUB_STATUS_CODE
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y__', to_number(null),
                 decode(pjp1_i.RELATIONSHIP_TYPE
                          || '_' || pjp1_i.WBS_ROLLUP_FLAG
                          || '_' || pjp1_i.PRG_ROLLUP_FLAG
                          || '_' || pjp1_i.SUP_VER_ENABLED,
                        'LW_N_Y_Y', to_number(null),
                 pjp1_i.RAW_COST))                    RAW_COST,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUB_STATUS_CODE
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y__', to_number(null),
                 decode(pjp1_i.RELATIONSHIP_TYPE
                          || '_' || pjp1_i.WBS_ROLLUP_FLAG
                          || '_' || pjp1_i.PRG_ROLLUP_FLAG
                          || '_' || pjp1_i.SUP_VER_ENABLED,
                        'LW_N_Y_Y', to_number(null),
                 pjp1_i.BRDN_COST))                   BRDN_COST,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUB_STATUS_CODE
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y__', to_number(null),
                 decode(pjp1_i.RELATIONSHIP_TYPE
                          || '_' || pjp1_i.WBS_ROLLUP_FLAG
                          || '_' || pjp1_i.PRG_ROLLUP_FLAG
                          || '_' || pjp1_i.SUP_VER_ENABLED,
                        'LW_N_Y_Y', to_number(null),
                 pjp1_i.REVENUE))                     REVENUE,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUB_STATUS_CODE
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y__', to_number(null),
                 decode(pjp1_i.RELATIONSHIP_TYPE
                          || '_' || pjp1_i.WBS_ROLLUP_FLAG
                          || '_' || pjp1_i.PRG_ROLLUP_FLAG
                          || '_' || pjp1_i.SUP_VER_ENABLED,
                        'LW_N_Y_Y', to_number(null),
                 pjp1_i.BILL_RAW_COST))               BILL_RAW_COST,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUB_STATUS_CODE
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y__', to_number(null),
                 decode(pjp1_i.RELATIONSHIP_TYPE
                          || '_' || pjp1_i.WBS_ROLLUP_FLAG
                          || '_' || pjp1_i.PRG_ROLLUP_FLAG
                          || '_' || pjp1_i.SUP_VER_ENABLED,
                        'LW_N_Y_Y', to_number(null),
                 pjp1_i.BILL_BRDN_COST))              BILL_BRDN_COST,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUB_STATUS_CODE
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y__', to_number(null),
                 decode(pjp1_i.RELATIONSHIP_TYPE
                          || '_' || pjp1_i.WBS_ROLLUP_FLAG
                          || '_' || pjp1_i.PRG_ROLLUP_FLAG
                          || '_' || pjp1_i.SUP_VER_ENABLED,
                        'LW_N_Y_Y', to_number(null),
                 pjp1_i.BILL_LABOR_RAW_COST))         BILL_LABOR_RAW_COST,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUB_STATUS_CODE
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y__', to_number(null),
                 decode(pjp1_i.RELATIONSHIP_TYPE
                          || '_' || pjp1_i.WBS_ROLLUP_FLAG
                          || '_' || pjp1_i.PRG_ROLLUP_FLAG
                          || '_' || pjp1_i.SUP_VER_ENABLED,
                        'LW_N_Y_Y', to_number(null),
                 pjp1_i.BILL_LABOR_BRDN_COST))        BILL_LABOR_BRDN_COST,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUB_STATUS_CODE
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y__', to_number(null),
                 decode(pjp1_i.RELATIONSHIP_TYPE
                          || '_' || pjp1_i.WBS_ROLLUP_FLAG
                          || '_' || pjp1_i.PRG_ROLLUP_FLAG
                          || '_' || pjp1_i.SUP_VER_ENABLED,
                        'LW_N_Y_Y', to_number(null),
                 pjp1_i.BILL_LABOR_HRS))              BILL_LABOR_HRS,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUB_STATUS_CODE
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y__', to_number(null),
                 decode(pjp1_i.RELATIONSHIP_TYPE
                          || '_' || pjp1_i.WBS_ROLLUP_FLAG
                          || '_' || pjp1_i.PRG_ROLLUP_FLAG
                          || '_' || pjp1_i.SUP_VER_ENABLED,
                        'LW_N_Y_Y', to_number(null),
                 pjp1_i.EQUIPMENT_RAW_COST))          EQUIPMENT_RAW_COST,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUB_STATUS_CODE
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y__', to_number(null),
                 decode(pjp1_i.RELATIONSHIP_TYPE
                          || '_' || pjp1_i.WBS_ROLLUP_FLAG
                          || '_' || pjp1_i.PRG_ROLLUP_FLAG
                          || '_' || pjp1_i.SUP_VER_ENABLED,
                        'LW_N_Y_Y', to_number(null),
                 pjp1_i.EQUIPMENT_BRDN_COST))         EQUIPMENT_BRDN_COST,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUB_STATUS_CODE
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y__', to_number(null),
                 decode(pjp1_i.RELATIONSHIP_TYPE
                          || '_' || pjp1_i.WBS_ROLLUP_FLAG
                          || '_' || pjp1_i.PRG_ROLLUP_FLAG
                          || '_' || pjp1_i.SUP_VER_ENABLED,
                        'LW_N_Y_Y', to_number(null),
                 pjp1_i.CAPITALIZABLE_RAW_COST))      CAPITALIZABLE_RAW_COST,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUB_STATUS_CODE
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y__', to_number(null),
                 decode(pjp1_i.RELATIONSHIP_TYPE
                          || '_' || pjp1_i.WBS_ROLLUP_FLAG
                          || '_' || pjp1_i.PRG_ROLLUP_FLAG
                          || '_' || pjp1_i.SUP_VER_ENABLED,
                        'LW_N_Y_Y', to_number(null),
                 pjp1_i.CAPITALIZABLE_BRDN_COST))     CAPITALIZABLE_BRDN_COST,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUB_STATUS_CODE
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y__', to_number(null),
                 decode(pjp1_i.RELATIONSHIP_TYPE
                          || '_' || pjp1_i.WBS_ROLLUP_FLAG
                          || '_' || pjp1_i.PRG_ROLLUP_FLAG
                          || '_' || pjp1_i.SUP_VER_ENABLED,
                        'LW_N_Y_Y', to_number(null),
                 pjp1_i.LABOR_RAW_COST))              LABOR_RAW_COST,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUB_STATUS_CODE
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y__', to_number(null),
                 decode(pjp1_i.RELATIONSHIP_TYPE
                          || '_' || pjp1_i.WBS_ROLLUP_FLAG
                          || '_' || pjp1_i.PRG_ROLLUP_FLAG
                          || '_' || pjp1_i.SUP_VER_ENABLED,
                        'LW_N_Y_Y', to_number(null),
                 pjp1_i.LABOR_BRDN_COST))             LABOR_BRDN_COST,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUB_STATUS_CODE
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y__', to_number(null),
                 decode(pjp1_i.RELATIONSHIP_TYPE
                          || '_' || pjp1_i.WBS_ROLLUP_FLAG
                          || '_' || pjp1_i.PRG_ROLLUP_FLAG
                          || '_' || pjp1_i.SUP_VER_ENABLED,
                        'LW_N_Y_Y', to_number(null),
                 pjp1_i.LABOR_HRS))                   LABOR_HRS,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUB_STATUS_CODE
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y__', to_number(null),
                 decode(pjp1_i.RELATIONSHIP_TYPE
                          || '_' || pjp1_i.WBS_ROLLUP_FLAG
                          || '_' || pjp1_i.PRG_ROLLUP_FLAG
                          || '_' || pjp1_i.SUP_VER_ENABLED,
                        'LW_N_Y_Y', to_number(null),
                 pjp1_i.LABOR_REVENUE))               LABOR_REVENUE,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUB_STATUS_CODE
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y__', to_number(null),
                 decode(pjp1_i.RELATIONSHIP_TYPE
                          || '_' || pjp1_i.WBS_ROLLUP_FLAG
                          || '_' || pjp1_i.PRG_ROLLUP_FLAG
                          || '_' || pjp1_i.SUP_VER_ENABLED,
                        'LW_N_Y_Y', to_number(null),
                 pjp1_i.EQUIPMENT_HOURS))             EQUIPMENT_HOURS,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUB_STATUS_CODE
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y__', to_number(null),
                 decode(pjp1_i.RELATIONSHIP_TYPE
                          || '_' || pjp1_i.WBS_ROLLUP_FLAG
                          || '_' || pjp1_i.PRG_ROLLUP_FLAG
                          || '_' || pjp1_i.SUP_VER_ENABLED,
                        'LW_N_Y_Y', to_number(null),
                 pjp1_i.BILLABLE_EQUIPMENT_HOURS))    BILLABLE_EQUIPMENT_HOURS,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUB_STATUS_CODE
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y__', to_number(null),
                 decode(pjp1_i.RELATIONSHIP_TYPE
                          || '_' || pjp1_i.WBS_ROLLUP_FLAG
                          || '_' || pjp1_i.PRG_ROLLUP_FLAG
                          || '_' || pjp1_i.SUP_VER_ENABLED,
                        'LW_N_Y_Y', to_number(null),
                 pjp1_i.SUP_INV_COMMITTED_COST))      SUP_INV_COMMITTED_COST,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUB_STATUS_CODE
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y__', to_number(null),
                 decode(pjp1_i.RELATIONSHIP_TYPE
                          || '_' || pjp1_i.WBS_ROLLUP_FLAG
                          || '_' || pjp1_i.PRG_ROLLUP_FLAG
                          || '_' || pjp1_i.SUP_VER_ENABLED,
                        'LW_N_Y_Y', to_number(null),
                 pjp1_i.PO_COMMITTED_COST))           PO_COMMITTED_COST,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUB_STATUS_CODE
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y__', to_number(null),
                 decode(pjp1_i.RELATIONSHIP_TYPE
                          || '_' || pjp1_i.WBS_ROLLUP_FLAG
                          || '_' || pjp1_i.PRG_ROLLUP_FLAG
                          || '_' || pjp1_i.SUP_VER_ENABLED,
                        'LW_N_Y_Y', to_number(null),
                 pjp1_i.PR_COMMITTED_COST))           PR_COMMITTED_COST,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUB_STATUS_CODE
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y__', to_number(null),
                 decode(pjp1_i.RELATIONSHIP_TYPE
                          || '_' || pjp1_i.WBS_ROLLUP_FLAG
                          || '_' || pjp1_i.PRG_ROLLUP_FLAG
                          || '_' || pjp1_i.SUP_VER_ENABLED,
                        'LW_N_Y_Y', to_number(null),
                 pjp1_i.OTH_COMMITTED_COST))          OTH_COMMITTED_COST,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y_', to_number(null),
                          pjp1_i.ACT_LABOR_HRS)       ACT_LABOR_HRS,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y_', to_number(null),
                          pjp1_i.ACT_EQUIP_HRS)       ACT_EQUIP_HRS,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y_', to_number(null),
                          pjp1_i.ACT_LABOR_BRDN_COST) ACT_LABOR_BRDN_COST,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y_', to_number(null),
                          pjp1_i.ACT_EQUIP_BRDN_COST) ACT_EQUIP_BRDN_COST,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y_', to_number(null),
                          pjp1_i.ACT_BRDN_COST)       ACT_BRDN_COST,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y_', to_number(null),
                          pjp1_i.ACT_RAW_COST)        ACT_RAW_COST,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y_', to_number(null),
                          pjp1_i.ACT_REVENUE)         ACT_REVENUE,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y_', to_number(null),
                          pjp1_i.ACT_LABOR_RAW_COST)  ACT_LABOR_RAW_COST,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y_', to_number(null),
                          pjp1_i.ACT_EQUIP_RAW_COST)  ACT_EQUIP_RAW_COST,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y_', to_number(null),
                          pjp1_i.ETC_LABOR_HRS)       ETC_LABOR_HRS,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y_', to_number(null),
                          pjp1_i.ETC_EQUIP_HRS)       ETC_EQUIP_HRS,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y_', to_number(null),
                          pjp1_i.ETC_LABOR_BRDN_COST) ETC_LABOR_BRDN_COST,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y_', to_number(null),
                          pjp1_i.ETC_EQUIP_BRDN_COST) ETC_EQUIP_BRDN_COST,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y_', to_number(null),
                          pjp1_i.ETC_BRDN_COST)       ETC_BRDN_COST,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y_', to_number(null),
                          pjp1_i.ETC_RAW_COST)        ETC_RAW_COST,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y_', to_number(null),
                          pjp1_i.ETC_LABOR_RAW_COST)  ETC_LABOR_RAW_COST,
          decode(pjp1_i.RELATIONSHIP_TYPE
                   || '_' || pjp1_i.WBS_ROLLUP_FLAG
                   || '_' || pjp1_i.PRG_ROLLUP_FLAG
                   || '_' || pjp1_i.SUP_STATUS_CODE,
                 'LW_N_Y_', to_number(null),
                          pjp1_i.ETC_EQUIP_RAW_COST)  ETC_EQUIP_RAW_COST,
          pjp1_i.CUSTOM1,
          pjp1_i.CUSTOM2,
          pjp1_i.CUSTOM3,
          pjp1_i.CUSTOM4,
          pjp1_i.CUSTOM5,
          pjp1_i.CUSTOM6,
          pjp1_i.CUSTOM7,
          pjp1_i.CUSTOM8,
          pjp1_i.CUSTOM9,
          pjp1_i.CUSTOM10,
          pjp1_i.CUSTOM11,
          pjp1_i.CUSTOM12,
          pjp1_i.CUSTOM13,
          pjp1_i.CUSTOM14,
          pjp1_i.CUSTOM15
        from
          (
        select
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 pjp.INSERT_FLAG, 'Y')                INSERT_FLAG,
          pjp.RELATIONSHIP_TYPE,
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 null, sub_ver.STATUS_CODE)           SUB_STATUS_CODE,
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 null, sup_ver.STATUS_CODE)           SUP_STATUS_CODE,
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 null, sup_wpa.WP_ENABLE_VERSION_FLAG)SUP_VER_ENABLED,
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 null, decode(pjp.PLAN_VERSION_ID,
                              -1, prg.SUP_ID,
                              -3, prg.SUP_ID,
                              -4, prg.SUP_ID,
                                  null))              SUP_ID,
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 null, decode(pjp.PLAN_VERSION_ID,
                              -1, prg.SUP_EMT_ID,
                              -3, prg.SUP_EMT_ID,
                              -4, prg.SUP_EMT_ID,
                                  null))              SUP_EMT_ID,
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 null, decode(pjp.PLAN_VERSION_ID,
                              -1, prg.WP_FLAG,
                              -3, prg.WP_FLAG,
                              -4, prg.WP_FLAG,
                                  null))              SUP_WP_FLAG,
         -- 1                                           WORKER_ID,
           p_worker_id                              WORKER_ID,
          'W'                                         RECORD_TYPE,
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 l_level, prg.SUP_LEVEL)              PRG_LEVEL,
          pjp.LINE_TYPE,
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 pjp.PROJECT_ID, prg.SUP_PROJECT_ID)  PROJECT_ID,
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 pjp.PROJECT_ORG_ID,
                 prg.SUP_PROJECT_ORG_ID)              PROJECT_ORG_ID,
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 pjp.PROJECT_ORGANIZATION_ID,
                 prg.SUP_PROJECT_ORGANIZATION_ID)     PROJECT_ORGANIZATION_ID,
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 pjp.PROJECT_ELEMENT_ID,
                 prg.SUB_ROLLUP_ID)                   PROJECT_ELEMENT_ID,
          pjp.TIME_ID,
          pjp.PERIOD_TYPE_ID,
          pjp.CALENDAR_TYPE,
          pjp.RBS_AGGR_LEVEL,
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 pjp.WBS_ROLLUP_FLAG, 'N')            WBS_ROLLUP_FLAG,
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 pjp.PRG_ROLLUP_FLAG, 'Y')            PRG_ROLLUP_FLAG,
          pjp.CURR_RECORD_TYPE_ID,
          pjp.CURRENCY_CODE,
          pjp.RBS_ELEMENT_ID,
          pjp.RBS_VERSION_ID,
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 pjp.PLAN_VERSION_ID,
                 decode(pjp.PLAN_VERSION_ID,
                        -1, pjp.PLAN_VERSION_ID,
                        -2, pjp.PLAN_VERSION_ID,
                        -3, pjp.PLAN_VERSION_ID,
                        -4, pjp.PLAN_VERSION_ID,
                            wbs_hdr.PLAN_VERSION_ID)) PLAN_VERSION_ID,
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 pjp.PLAN_TYPE_ID,
                 decode(pjp.PLAN_VERSION_ID,
                        -1, pjp.PLAN_TYPE_ID,
                        -2, pjp.PLAN_TYPE_ID,
                        -3, pjp.PLAN_TYPE_ID,
                        -4, pjp.PLAN_TYPE_ID,
                            wbs_hdr.PLAN_TYPE_ID))    PLAN_TYPE_ID,
          pjp.PLAN_TYPE_CODE,
          sum(pjp.RAW_COST)                           RAW_COST,
          sum(pjp.BRDN_COST)                          BRDN_COST,
          sum(pjp.REVENUE)                            REVENUE,
          sum(pjp.BILL_RAW_COST)                      BILL_RAW_COST,
          sum(pjp.BILL_BRDN_COST)                     BILL_BRDN_COST,
          sum(pjp.BILL_LABOR_RAW_COST)                BILL_LABOR_RAW_COST,
          sum(pjp.BILL_LABOR_BRDN_COST)               BILL_LABOR_BRDN_COST,
          sum(pjp.BILL_LABOR_HRS)                     BILL_LABOR_HRS,
          sum(pjp.EQUIPMENT_RAW_COST)                 EQUIPMENT_RAW_COST,
          sum(pjp.EQUIPMENT_BRDN_COST)                EQUIPMENT_BRDN_COST,
          sum(pjp.CAPITALIZABLE_RAW_COST)             CAPITALIZABLE_RAW_COST,
          sum(pjp.CAPITALIZABLE_BRDN_COST)            CAPITALIZABLE_BRDN_COST,
          sum(pjp.LABOR_RAW_COST)                     LABOR_RAW_COST,
          sum(pjp.LABOR_BRDN_COST)                    LABOR_BRDN_COST,
          sum(pjp.LABOR_HRS)                          LABOR_HRS,
          sum(pjp.LABOR_REVENUE)                      LABOR_REVENUE,
          sum(pjp.EQUIPMENT_HOURS)                    EQUIPMENT_HOURS,
          sum(pjp.BILLABLE_EQUIPMENT_HOURS)           BILLABLE_EQUIPMENT_HOURS,
          sum(pjp.SUP_INV_COMMITTED_COST)             SUP_INV_COMMITTED_COST,
          sum(pjp.PO_COMMITTED_COST)                  PO_COMMITTED_COST,
          sum(pjp.PR_COMMITTED_COST)                  PR_COMMITTED_COST,
          sum(pjp.OTH_COMMITTED_COST)                 OTH_COMMITTED_COST,
          sum(pjp.ACT_LABOR_HRS)                      ACT_LABOR_HRS,
          sum(pjp.ACT_EQUIP_HRS)                      ACT_EQUIP_HRS,
          sum(pjp.ACT_LABOR_BRDN_COST)                ACT_LABOR_BRDN_COST,
          sum(pjp.ACT_EQUIP_BRDN_COST)                ACT_EQUIP_BRDN_COST,
          sum(pjp.ACT_BRDN_COST)                      ACT_BRDN_COST,
          sum(pjp.ACT_RAW_COST)                       ACT_RAW_COST,
          sum(pjp.ACT_REVENUE)                        ACT_REVENUE,
          sum(pjp.ACT_LABOR_RAW_COST)                 ACT_LABOR_RAW_COST,
          sum(pjp.ACT_EQUIP_RAW_COST)                 ACT_EQUIP_RAW_COST,
          sum(pjp.ETC_LABOR_HRS)                      ETC_LABOR_HRS,
          sum(pjp.ETC_EQUIP_HRS)                      ETC_EQUIP_HRS,
          sum(pjp.ETC_LABOR_BRDN_COST)                ETC_LABOR_BRDN_COST,
          sum(pjp.ETC_EQUIP_BRDN_COST)                ETC_EQUIP_BRDN_COST,
          sum(pjp.ETC_BRDN_COST)                      ETC_BRDN_COST,
          sum(pjp.ETC_RAW_COST)                       ETC_RAW_COST,
          sum(pjp.ETC_LABOR_RAW_COST)                 ETC_LABOR_RAW_COST,
          sum(pjp.ETC_EQUIP_RAW_COST)                 ETC_EQUIP_RAW_COST,
          sum(pjp.CUSTOM1)                            CUSTOM1,
          sum(pjp.CUSTOM2)                            CUSTOM2,
          sum(pjp.CUSTOM3)                            CUSTOM3,
          sum(pjp.CUSTOM4)                            CUSTOM4,
          sum(pjp.CUSTOM5)                            CUSTOM5,
          sum(pjp.CUSTOM6)                            CUSTOM6,
          sum(pjp.CUSTOM7)                            CUSTOM7,
          sum(pjp.CUSTOM8)                            CUSTOM8,
          sum(pjp.CUSTOM9)                            CUSTOM9,
          sum(pjp.CUSTOM10)                           CUSTOM10,
          sum(pjp.CUSTOM11)                           CUSTOM11,
          sum(pjp.CUSTOM12)                           CUSTOM12,
          sum(pjp.CUSTOM13)                           CUSTOM13,
          sum(pjp.CUSTOM14)                           CUSTOM14,
          sum(pjp.CUSTOM15)                           CUSTOM15
        from
          (
          select /*+ ordered index(wbs PA_XBS_DENORM_N2) */
                 -- get incremental task level amounts from source and
                 -- program rollup amounts from interim
            to_char(null)                             LINE_TYPE,
            wbs_hdr.WBS_VERSION_ID,
            decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
            decode(wbs_hdr.WP_FLAG
                     || '_' || to_char(sign(pjp1.PLAN_VERSION_ID))
                     || '_' || nvl(fin_plan.INVERT_ID, 'PRJ'),
                   'N_1_PRJ', 'N',
                   'N_-1_PRG', 'N',
                   decode(top_slice.INVERT_ID,
                          'PRJ', 'Y',
                          decode(wbs.SUB_LEVEL,
                                 1, 'Y', 'N')))       PUSHUP_FLAG,
            decode(pjp1.RBS_AGGR_LEVEL,
                   'L', 'N',
                        decode(wbs_hdr.WP_FLAG
                                 || '_' || to_char(sign(pjp1.PLAN_VERSION_ID))
                                 || '_' || fin_plan.INVERT_ID,
                               'N_1_PRG', decode(top_slice.INVERT_ID,
                                                 'PRJ', 'Y',
                                                 decode(wbs.SUB_LEVEL,
                                                        1, 'Y', 'N')),
                               'N_-1_PRG', 'N',
                               decode(wbs_hdr.WP_FLAG
                                        || '_' || fin_plan.INVERT_ID
                                        || '_' || fin_plan.CB
                                        || '_' || fin_plan.CO
                                        || '_'
                                        || to_char(fin_plan.PLAN_VERSION_ID),
                                      'N_PRJ_Y_Y_-4', 'N',
                                                      'Y'))
                  )                                   INSERT_FLAG,
            pjp1.PROJECT_ID,
            pjp1.PROJECT_ORG_ID,
            pjp1.PROJECT_ORGANIZATION_ID,
            decode(top_slice.INVERT_ID,
                   'PRJ', prg.SUP_EMT_ID,
                          decode(wbs.SUB_LEVEL,
                                 1, prg.SUP_EMT_ID,
                                    wbs.SUP_EMT_ID))  PROJECT_ELEMENT_ID,
            pjp1.TIME_ID,
            pjp1.PERIOD_TYPE_ID,
            pjp1.CALENDAR_TYPE,
            pjp1.RBS_AGGR_LEVEL,
            'Y'                                       WBS_ROLLUP_FLAG,
            pjp1.PRG_ROLLUP_FLAG,
            pjp1.CURR_RECORD_TYPE_ID,
            pjp1.CURRENCY_CODE,
            pjp1.RBS_ELEMENT_ID,
            pjp1.RBS_VERSION_ID,
            decode(wbs_hdr.WP_FLAG || '_' || fin_plan.INVERT_ID,
                   'N_PRG', fin_plan.PLAN_VERSION_ID,
                            pjp1.PLAN_VERSION_ID)     PLAN_VERSION_ID,
            pjp1.PLAN_TYPE_ID,
            pjp1.PLAN_TYPE_CODE,
            pjp1.RAW_COST,
            pjp1.BRDN_COST,
            pjp1.REVENUE,
            pjp1.BILL_RAW_COST,
            pjp1.BILL_BRDN_COST,
            pjp1.BILL_LABOR_RAW_COST,
            pjp1.BILL_LABOR_BRDN_COST,
            pjp1.BILL_LABOR_HRS,
            pjp1.EQUIPMENT_RAW_COST,
            pjp1.EQUIPMENT_BRDN_COST,
            pjp1.CAPITALIZABLE_RAW_COST,
            pjp1.CAPITALIZABLE_BRDN_COST,
            pjp1.LABOR_RAW_COST,
            pjp1.LABOR_BRDN_COST,
            pjp1.LABOR_HRS,
            pjp1.LABOR_REVENUE,
            pjp1.EQUIPMENT_HOURS,
            pjp1.BILLABLE_EQUIPMENT_HOURS,
            pjp1.SUP_INV_COMMITTED_COST,
            pjp1.PO_COMMITTED_COST,
            pjp1.PR_COMMITTED_COST,
            pjp1.OTH_COMMITTED_COST,
            pjp1.ACT_LABOR_HRS,
            pjp1.ACT_EQUIP_HRS,
            pjp1.ACT_LABOR_BRDN_COST,
            pjp1.ACT_EQUIP_BRDN_COST,
            pjp1.ACT_BRDN_COST,
            pjp1.ACT_RAW_COST,
            pjp1.ACT_REVENUE,
            pjp1.ACT_LABOR_RAW_COST,
            pjp1.ACT_EQUIP_RAW_COST,
            pjp1.ETC_LABOR_HRS,
            pjp1.ETC_EQUIP_HRS,
            pjp1.ETC_LABOR_BRDN_COST,
            pjp1.ETC_EQUIP_BRDN_COST,
            pjp1.ETC_BRDN_COST,
            pjp1.ETC_RAW_COST,
            pjp1.ETC_LABOR_RAW_COST,
            pjp1.ETC_EQUIP_RAW_COST,
            pjp1.CUSTOM1,
            pjp1.CUSTOM2,
            pjp1.CUSTOM3,
            pjp1.CUSTOM4,
            pjp1.CUSTOM5,
            pjp1.CUSTOM6,
            pjp1.CUSTOM7,
            pjp1.CUSTOM8,
            pjp1.CUSTOM9,
            pjp1.CUSTOM10,
            pjp1.CUSTOM11,
            pjp1.CUSTOM12,
            pjp1.CUSTOM13,
            pjp1.CUSTOM14,
            pjp1.CUSTOM15
          from
            PJI_FP_AGGR_PJP1 pjp1,
            PJI_PJP_WBS_HEADER wbs_hdr,
            PA_XBS_DENORM      wbs,
            PJI_XBS_DENORM     prg,
            (
              select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
              from DUAL union all
              select 'Y' CB, 'N' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
              from DUAL union all
              select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
              from DUAL union all
              select 'N' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
              from DUAL union all
              select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRG' INVERT_ID
              from DUAL union all
              select 'Y' CB, 'Y' CO, -3 PLAN_VERSION_ID, 'PRJ' INVERT_ID
              from DUAL union all
              select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRG' INVERT_ID
              from DUAL union all
              select 'Y' CB, 'Y' CO, -4 PLAN_VERSION_ID, 'PRJ' INVERT_ID
              from DUAL
            ) fin_plan,
            (
              select 1     WBS_SUP_LEVEL,
                     1     WBS_SUB_LEVEL,
                     'PRJ' INVERT_ID
              from   DUAL
              union all
              select 1     WBS_SUP_LEVEL,
                     1     WBS_SUB_LEVEL,
                     'WBS' INVERT_ID
              from   DUAL
            ) top_slice
          where
            prg.STRUCT_TYPE         =  'PRG'                       and
            prg.SUP_LEVEL           =  l_level                     and
            prg.SUB_LEVEL           =  l_level                     and
            wbs.STRUCT_TYPE         =  'WBS'                       and
            ((wbs.SUP_LEVEL = 1 and
              wbs.SUB_LEVEL = 1) or
             (wbs.SUP_LEVEL <> wbs.SUB_LEVEL))                     and
            wbs.STRUCT_VERSION_ID   =  prg.SUP_ID                  and
            wbs.SUP_PROJECT_ID      =  prg.SUP_PROJECT_ID          and
            pjp1.WORKER_ID       =  p_worker_id                 and
            pjp1.PRG_LEVEL          in (0, l_level)                and
            pjp1.RBS_AGGR_LEVEL     in ('T', 'L')                  and
            pjp1.WBS_ROLLUP_FLAG    =  'N'                         and
            pjp1.PRG_ROLLUP_FLAG    in ('Y', 'N')                  and
            pjp1.PROJECT_ID         =  wbs_hdr.PROJECT_ID          and
            pjp1.PLAN_VERSION_ID    =  wbs_hdr.PLAN_VERSION_ID     and
            pjp1.PLAN_TYPE_CODE     =  wbs_hdr.PLAN_TYPE_CODE      and
            decode(pjp1.PLAN_VERSION_ID,
                   -3, pjp1.PLAN_TYPE_ID,
                   -4, pjp1.PLAN_TYPE_ID,
                       -1)          =  decode(pjp1.PLAN_VERSION_ID,
                                              -3, wbs_hdr.PLAN_TYPE_ID,
                                              -4, wbs_hdr.PLAN_TYPE_ID,
                                                  -1)              and
            wbs.STRUCT_VERSION_ID   =  wbs_hdr.WBS_VERSION_ID      and
            pjp1.PROJECT_ELEMENT_ID =  wbs.SUB_EMT_ID              and
            wbs_hdr.CB_FLAG         =  fin_plan.CB             (+) and
            wbs_hdr.CO_FLAG         =  fin_plan.CO             (+) and
            wbs.SUP_LEVEL           =  top_slice.WBS_SUP_LEVEL (+) and
            wbs.SUB_LEVEL           <> top_slice.WBS_SUB_LEVEL (+)
          union all
          select /*+ ordered */
                 -- get incremental project level amounts from source
            to_char(null)                             LINE_TYPE,
            wbs_hdr.WBS_VERSION_ID,
            decode(wbs_hdr.WP_FLAG, 'Y', 'LW', 'LF')  RELATIONSHIP_TYPE,
            'Y'                                       PUSHUP_FLAG,
            decode(pjp1.RBS_AGGR_LEVEL,
                   'L', 'N',
                        decode(fin_plan.PLAN_VERSION_ID,
                               null, 'N', 'Y'))       INSERT_FLAG,
            pjp1.PROJECT_ID,
            pjp1.PROJECT_ORG_ID,
            pjp1.PROJECT_ORGANIZATION_ID,
            pjp1.PROJECT_ELEMENT_ID,
            pjp1.TIME_ID,
            pjp1.PERIOD_TYPE_ID,
            pjp1.CALENDAR_TYPE,
            pjp1.RBS_AGGR_LEVEL,
            'Y'                                       WBS_ROLLUP_FLAG,
            pjp1.PRG_ROLLUP_FLAG,
            pjp1.CURR_RECORD_TYPE_ID,
            pjp1.CURRENCY_CODE,
            pjp1.RBS_ELEMENT_ID,
            pjp1.RBS_VERSION_ID,
            decode(wbs_hdr.WP_FLAG,
                   'N', decode(pjp1.PLAN_VERSION_ID,
                               -1, pjp1.PLAN_VERSION_ID,
                               -2, pjp1.PLAN_VERSION_ID,
                               -3, pjp1.PLAN_VERSION_ID, -- won't exist
                               -4, pjp1.PLAN_VERSION_ID, -- won't exist
                                   fin_plan.PLAN_VERSION_ID),
                        pjp1.PLAN_VERSION_ID)         PLAN_VERSION_ID,
            pjp1.PLAN_TYPE_ID,
            pjp1.PLAN_TYPE_CODE,
            pjp1.RAW_COST,
            pjp1.BRDN_COST,
            pjp1.REVENUE,
            pjp1.BILL_RAW_COST,
            pjp1.BILL_BRDN_COST,
            pjp1.BILL_LABOR_RAW_COST,
            pjp1.BILL_LABOR_BRDN_COST,
            pjp1.BILL_LABOR_HRS,
            pjp1.EQUIPMENT_RAW_COST,
            pjp1.EQUIPMENT_BRDN_COST,
            pjp1.CAPITALIZABLE_RAW_COST,
            pjp1.CAPITALIZABLE_BRDN_COST,
            pjp1.LABOR_RAW_COST,
            pjp1.LABOR_BRDN_COST,
            pjp1.LABOR_HRS,
            pjp1.LABOR_REVENUE,
            pjp1.EQUIPMENT_HOURS,
            pjp1.BILLABLE_EQUIPMENT_HOURS,
            pjp1.SUP_INV_COMMITTED_COST,
            pjp1.PO_COMMITTED_COST,
            pjp1.PR_COMMITTED_COST,
            pjp1.OTH_COMMITTED_COST,
            pjp1.ACT_LABOR_HRS,
            pjp1.ACT_EQUIP_HRS,
            pjp1.ACT_LABOR_BRDN_COST,
            pjp1.ACT_EQUIP_BRDN_COST,
            pjp1.ACT_BRDN_COST,
            pjp1.ACT_RAW_COST,
            pjp1.ACT_REVENUE,
            pjp1.ACT_LABOR_RAW_COST,
            pjp1.ACT_EQUIP_RAW_COST,
            pjp1.ETC_LABOR_HRS,
            pjp1.ETC_EQUIP_HRS,
            pjp1.ETC_LABOR_BRDN_COST,
            pjp1.ETC_EQUIP_BRDN_COST,
            pjp1.ETC_BRDN_COST,
            pjp1.ETC_RAW_COST,
            pjp1.ETC_LABOR_RAW_COST,
            pjp1.ETC_EQUIP_RAW_COST,
            pjp1.CUSTOM1,
            pjp1.CUSTOM2,
            pjp1.CUSTOM3,
            pjp1.CUSTOM4,
            pjp1.CUSTOM5,
            pjp1.CUSTOM6,
            pjp1.CUSTOM7,
            pjp1.CUSTOM8,
            pjp1.CUSTOM9,
            pjp1.CUSTOM10,
            pjp1.CUSTOM11,
            pjp1.CUSTOM12,
            pjp1.CUSTOM13,
            pjp1.CUSTOM14,
            pjp1.CUSTOM15
          from
            PJI_FP_AGGR_PJP1 pjp1,
            PJI_PJP_WBS_HEADER wbs_hdr,
            PJI_XBS_DENORM     prg,
            (
              select 'Y' CB_FLAG,
                     'N' CO_FLAG,
                     -3  PLAN_VERSION_ID
              from DUAL union all
              select 'N' CB_FLAG,
                     'Y' CO_FLAG,
                     -4  PLAN_VERSION_ID
              from DUAL union all
              select 'Y' CB_FLAG,
                     'Y' CO_FLAG,
                     -3  PLAN_VERSION_ID
              from DUAL union all
              select 'Y' CB_FLAG,
                     'Y' CO_FLAG,
                     -4  PLAN_VERSION_ID
              from DUAL
            ) fin_plan
          where
            prg.STRUCT_TYPE         = 'PRG'                    and
            prg.SUP_LEVEL           = l_level                  and
            prg.SUB_LEVEL           = l_level                  and
            pjp1.WORKER_ID       = p_worker_id              and
            pjp1.PROJECT_ID         = prg.SUP_PROJECT_ID       and
            pjp1.PROJECT_ELEMENT_ID = prg.SUP_EMT_ID           and
            pjp1.PRG_LEVEL          = 0                        and
            pjp1.RBS_AGGR_LEVEL     in ('T', 'L')              and
            pjp1.WBS_ROLLUP_FLAG    = 'N'                      and
            pjp1.PRG_ROLLUP_FLAG    = 'N'                      and
            wbs_hdr.PROJECT_ID      = pjp1.PROJECT_ID          and
            wbs_hdr.PLAN_VERSION_ID = pjp1.PLAN_VERSION_ID     and
            wbs_hdr.PLAN_TYPE_CODE  = pjp1.PLAN_TYPE_CODE      and
            decode(wbs_hdr.WP_FLAG,
                   'N', decode(pjp1.PLAN_VERSION_ID,
                               -1, 'Y',
                               -2, 'Y',
                               -3, 'Y', -- won't exist
                               -4, 'Y', -- won't exist
                                   decode(wbs_hdr.CB_FLAG || '_' ||
                                          wbs_hdr.CO_FLAG,
                                          'Y_Y', 'Y',
                                          'N_Y', 'Y',
                                          'Y_N', 'Y',
                                                 'N')),
                        'Y')        =  'Y'                     and
            wbs_hdr.WBS_VERSION_ID  = prg.SUP_ID               and
            wbs_hdr.CB_FLAG         = fin_plan.CB_FLAG     (+) and
            wbs_hdr.CO_FLAG         = fin_plan.CO_FLAG     (+)
          ) pjp,
          (
          select /*+ index(prg PJI_XBS_DENORM_N3)
                     index(map PA_PROJECTS_U1) */
            prg.SUP_PROJECT_ID,
            map.ORG_ID                       SUP_PROJECT_ORG_ID,
            map.CARRYING_OUT_ORGANIZATION_ID SUP_PROJECT_ORGANIZATION_ID,
            prg.SUP_ID,
            prg.SUP_EMT_ID,
            prg.SUP_LEVEL,
            prg.SUB_ID,
            prg.SUB_EMT_ID,
            prg.SUB_ROLLUP_ID,
            invert.INVERT_VALUE              RELATIONSHIP_TYPE,
            decode(prg.RELATIONSHIP_TYPE,
                   'LW', 'Y',
                   'LF', 'N')                WP_FLAG,
            'Y'                              PUSHUP_FLAG
          from
            PJI_XBS_DENORM prg,
            PA_PROJECTS_ALL map,
            (
              select 'LF' INVERT_ID, 'LF' INVERT_VALUE from dual union all
              select 'LW' INVERT_ID, 'LW' INVERT_VALUE from dual union all
              select 'A'  INVERT_ID, 'LF' INVERT_VALUE from dual union all
              select 'A'  INVERT_ID, 'LW' INVERT_VALUE from dual
            ) invert
          where
            prg.STRUCT_TYPE               = 'PRG'              and
            prg.SUB_ROLLUP_ID             is not null          and
            prg.SUB_LEVEL                 = l_level            and
            -- map.WORKER_ID              = p_worker_id        and
            map.PROJECT_ID                = prg.SUP_PROJECT_ID and
            decode(prg.SUB_LEVEL,
                   prg.SUP_LEVEL, 'A',
                   prg.RELATIONSHIP_TYPE) = invert.INVERT_ID
          )                          prg,
          PJI_PJP_WBS_HEADER         wbs_hdr,
          PA_PROJ_ELEM_VER_STRUCTURE sub_ver,
          PA_PROJ_ELEM_VER_STRUCTURE sup_ver,
          PA_PROJ_WORKPLAN_ATTR      sup_wpa
        where
          pjp.PROJECT_ID         = sub_ver.PROJECT_ID                (+) and
          pjp.WBS_VERSION_ID     = sub_ver.ELEMENT_VERSION_ID        (+) and
          'STRUCTURE_PUBLISHED'  = sub_ver.STATUS_CODE               (+) and
          pjp.WBS_VERSION_ID     = prg.SUB_ID                        (+) and
          pjp.RELATIONSHIP_TYPE  = prg.RELATIONSHIP_TYPE             (+) and
          pjp.PUSHUP_FLAG        = prg.PUSHUP_FLAG                   (+) and
          prg.SUP_PROJECT_ID     = wbs_hdr.PROJECT_ID                (+) and
          prg.SUP_ID             = wbs_hdr.WBS_VERSION_ID            (+) and
          prg.WP_FLAG            = wbs_hdr.WP_FLAG                   (+) and
          'Y'                    = wbs_hdr.WP_FLAG                   (+) and
          wbs_hdr.PROJECT_ID     = sup_ver.PROJECT_ID                (+) and
          wbs_hdr.WBS_VERSION_ID = sup_ver.ELEMENT_VERSION_ID        (+) and
          'STRUCTURE_PUBLISHED'  = sup_ver.STATUS_CODE               (+) and
          'Y'                    = sup_ver.LATEST_EFF_PUBLISHED_FLAG (+) and
          prg.SUP_EMT_ID         = sup_wpa.PROJ_ELEMENT_ID           (+)
        group by
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 pjp.INSERT_FLAG, 'Y'),
          pjp.RELATIONSHIP_TYPE,
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 null, sub_ver.STATUS_CODE),
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 null, sup_ver.STATUS_CODE),
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 null, sup_wpa.WP_ENABLE_VERSION_FLAG),
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 null, decode(pjp.PLAN_VERSION_ID,
                              -1, prg.SUP_ID,
                              -3, prg.SUP_ID,
                              -4, prg.SUP_ID,
                                  null)),
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 null, decode(pjp.PLAN_VERSION_ID,
                              -1, prg.SUP_EMT_ID,
                              -3, prg.SUP_EMT_ID,
                              -4, prg.SUP_EMT_ID,
                                  null)),
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 null, decode(pjp.PLAN_VERSION_ID,
                              -1, prg.WP_FLAG,
                              -3, prg.WP_FLAG,
                              -4, prg.WP_FLAG,
                                  null)),
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 l_level, prg.SUP_LEVEL),
          pjp.LINE_TYPE,
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 pjp.PROJECT_ID, prg.SUP_PROJECT_ID),
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 pjp.PROJECT_ORG_ID,
                 prg.SUP_PROJECT_ORG_ID),
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 pjp.PROJECT_ORGANIZATION_ID,
                 prg.SUP_PROJECT_ORGANIZATION_ID),
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 pjp.PROJECT_ELEMENT_ID,
                 prg.SUB_ROLLUP_ID),
          pjp.TIME_ID,
          pjp.PERIOD_TYPE_ID,
          pjp.CALENDAR_TYPE,
          pjp.RBS_AGGR_LEVEL,
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 pjp.WBS_ROLLUP_FLAG, 'N'),
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 pjp.PRG_ROLLUP_FLAG, 'Y'),
          pjp.CURR_RECORD_TYPE_ID,
          pjp.CURRENCY_CODE,
          pjp.RBS_ELEMENT_ID,
          pjp.RBS_VERSION_ID,
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 pjp.PLAN_VERSION_ID,
                 decode(pjp.PLAN_VERSION_ID,
                        -1, pjp.PLAN_VERSION_ID,
                        -2, pjp.PLAN_VERSION_ID,
                        -3, pjp.PLAN_VERSION_ID,
                        -4, pjp.PLAN_VERSION_ID,
                            wbs_hdr.PLAN_VERSION_ID)),
          decode(nvl(prg.SUB_EMT_ID, -1), nvl(prg.SUB_ROLLUP_ID, -1),
                 pjp.PLAN_TYPE_ID,
                 decode(pjp.PLAN_VERSION_ID,
                        -1, pjp.PLAN_TYPE_ID,
                        -2, pjp.PLAN_TYPE_ID,
                        -3, pjp.PLAN_TYPE_ID,
                        -4, pjp.PLAN_TYPE_ID,
                            wbs_hdr.PLAN_TYPE_ID)),
          pjp.PLAN_TYPE_CODE
          )                          pjp1_i,
          PA_PROJ_ELEM_VER_STRUCTURE sup_fin_ver,
          PA_PROJ_WORKPLAN_ATTR      sup_wpa
        where
          pjp1_i.INSERT_FLAG  = 'Y'                                and
          pjp1_i.PROJECT_ID   = sup_fin_ver.PROJECT_ID         (+) and
          pjp1_i.SUP_ID       = sup_fin_ver.ELEMENT_VERSION_ID (+) and
          'STRUCTURE_WORKING' = sup_fin_ver.STATUS_CODE        (+) and
          pjp1_i.SUP_EMT_ID   = sup_wpa.PROJ_ELEMENT_ID        (+) and
          'N'                 = sup_wpa.WP_ENABLE_VERSION_FLAG (+) and
          (pjp1_i.SUP_ID is null or
           (pjp1_i.SUP_ID is not null and
            (sup_fin_ver.PROJECT_ID is not null or
             sup_wpa.PROJ_ELEMENT_ID is not null)));
Line: 2418

  UPDATE /*+ index(whdr,PJI_PJP_WBS_HEADER_N1) */
         PJI_PJP_WBS_HEADER whdr
  SET ( MIN_TXN_DATE
      , MAX_TXN_DATE
      , LAST_UPDATE_DATE
      , LAST_UPDATED_BY
      , LAST_UPDATE_LOGIN
      ) = (
  SELECT MIN(LEAST(cal.start_date,  NVL(whdr.min_txn_date, cal.start_date))) start_date
       , MAX(GREATEST(cal.end_date, NVL(whdr.max_txn_date, cal.end_date))) end_date
       , l_last_update_date
       , l_last_updated_by
       , l_last_update_login
    FROM PJI_FP_AGGR_PJP1    pjp1
       , pji_time_cal_period_v   cal
   WHERE
         pjp1.worker_id = p_worker_id
     AND pjp1.plan_version_id = whdr.plan_version_id
     AND pjp1.project_id = whdr.project_id
     AND pjp1.plan_type_id = whdr.plan_type_id
     AND pjp1.time_id = cal.cal_period_id
     AND pjp1.calendar_type IN ('P', 'G') -- Non time ph and ent cals don't need to be considered.
                                      )
 WHERE exists (select 1 from  pji_fp_aggr_pjp1 ver where worker_id = p_worker_id
               and ver.project_id = whdr.project_id
               and ver.plan_version_id = whdr.plan_version_id
               and ver.plan_type_id = whdr.plan_type_id);
Line: 2449

  INSERT INTO pji_fp_xbs_accum_f  fact
  (
       PROJECT_ID
     , PROJECT_ORG_ID
     , PROJECT_ORGANIZATION_ID
     , PROJECT_ELEMENT_ID
     , TIME_ID
     , PERIOD_TYPE_ID
     , CALENDAR_TYPE
     , RBS_AGGR_LEVEL
     , WBS_ROLLUP_FLAG
     , PRG_ROLLUP_FLAG
     , CURR_RECORD_TYPE_ID
     , CURRENCY_CODE
     , RBS_ELEMENT_ID
     , RBS_VERSION_ID
     , PLAN_VERSION_ID
     , PLAN_TYPE_ID
     , LAST_UPDATE_DATE
     , LAST_UPDATED_BY
     , CREATION_DATE
     , CREATED_BY
     , LAST_UPDATE_LOGIN
     , RAW_COST
     , BRDN_COST
     , REVENUE
     , BILL_RAW_COST
     , BILL_BRDN_COST
     , BILL_LABOR_RAW_COST
     , BILL_LABOR_BRDN_COST
     , BILL_LABOR_HRS
     , EQUIPMENT_RAW_COST
     , EQUIPMENT_BRDN_COST
     , CAPITALIZABLE_RAW_COST
     , CAPITALIZABLE_BRDN_COST
     , LABOR_RAW_COST
     , LABOR_BRDN_COST
     , LABOR_HRS
     , LABOR_REVENUE
     , EQUIPMENT_HOURS
     , BILLABLE_EQUIPMENT_HOURS
     , SUP_INV_COMMITTED_COST
     , PO_COMMITTED_COST
     , PR_COMMITTED_COST
     , OTH_COMMITTED_COST
       , ACT_LABOR_HRS
	   , ACT_EQUIP_HRS
	   , ACT_LABOR_BRDN_COST
	   , ACT_EQUIP_BRDN_COST
	   , ACT_BRDN_COST
	   , ACT_RAW_COST
	   , ACT_REVENUE
         , ACT_LABOR_RAW_COST
         , ACT_EQUIP_RAW_COST
	   , ETC_LABOR_HRS
	   , ETC_EQUIP_HRS
	   , ETC_LABOR_BRDN_COST
	   , ETC_EQUIP_BRDN_COST
	   , ETC_BRDN_COST
         , ETC_RAW_COST
         , ETC_LABOR_RAW_COST
         , ETC_EQUIP_RAW_COST
     , CUSTOM1
     , CUSTOM2
     , CUSTOM3
     , CUSTOM4
     , CUSTOM5
     , CUSTOM6
     , CUSTOM7
     , CUSTOM8
     , CUSTOM9
     , CUSTOM10
     , CUSTOM11
     , CUSTOM12
     , CUSTOM13
     , CUSTOM14
     , CUSTOM15
     , PLAN_TYPE_CODE
  )
  (
  SELECT
       tmp.PROJECT_ID
     , tmp.PROJECT_ORG_ID
     , tmp.PROJECT_ORGANIZATION_ID
     , tmp.PROJECT_ELEMENT_ID
     , tmp.TIME_ID
     , tmp.PERIOD_TYPE_ID
     , tmp.CALENDAR_TYPE
     , tmp.RBS_AGGR_LEVEL
     , tmp.WBS_ROLLUP_FLAG
     , tmp.PRG_ROLLUP_FLAG
     , tmp.CURR_RECORD_TYPE_ID
     , tmp.CURRENCY_CODE
     , tmp.RBS_ELEMENT_ID
     , tmp.RBS_VERSION_ID
     , ver3.PLAN_VERSION_ID
     , tmp.PLAN_TYPE_ID
     , l_last_update_date
     , l_last_updated_by
     , l_creation_date
     , l_created_by
     , l_last_update_login
     , RAW_COST
     , BRDN_COST
     , REVENUE
     , BILL_RAW_COST
     , BILL_BRDN_COST
     , BILL_LABOR_RAW_COST
     , BILL_LABOR_BRDN_COST
     , BILL_LABOR_HRS
     , EQUIPMENT_RAW_COST
     , EQUIPMENT_BRDN_COST
     , CAPITALIZABLE_RAW_COST
     , CAPITALIZABLE_BRDN_COST
     , LABOR_RAW_COST
     , LABOR_BRDN_COST
     , LABOR_HRS
     , LABOR_REVENUE
     , EQUIPMENT_HOURS
     , BILLABLE_EQUIPMENT_HOURS
     , SUP_INV_COMMITTED_COST
     , PO_COMMITTED_COST
     , PR_COMMITTED_COST
     , OTH_COMMITTED_COST
       , ACT_LABOR_HRS
	   , ACT_EQUIP_HRS
	   , ACT_LABOR_BRDN_COST
	   , ACT_EQUIP_BRDN_COST
	   , ACT_BRDN_COST
	   , ACT_RAW_COST
	   , ACT_REVENUE
         , ACT_LABOR_RAW_COST
         , ACT_EQUIP_RAW_COST
	   , DECODE ( ver3.wp_flag
                      , 'Y'
                      , DECODE(TO_CHAR(tmp.ETC_LABOR_HRS)  -- For Workplan
	                         , NULL
                             , NVL(tmp.labor_hrs, 0)
                             , NVL(tmp.ETC_LABOR_HRS, 0)
                              )
				      , NVL(tmp.ETC_LABOR_HRS, 0)
		       ) ETC_LABOR_HRS
		 , DECODE ( ver3.wp_flag
                          , 'Y'
                          , DECODE(TO_CHAR(tmp.ETC_EQUIP_HRS)
		                         , NULL
                                 , NVL(tmp.EQUIPMENT_hours, 0)
					             , NVL(tmp.ETC_EQUIP_HRS, 0)
					    )
			       , NVL(tmp.ETC_EQUIP_HRS, 0)
			    ) ETC_EQUIP_HRS
		 , DECODE ( ver3.wp_flag
                      , 'Y'
                      , DECODE(TO_CHAR(tmp.ETC_LABOR_BRDN_COST)
		                     , NULL
                             , NVL(tmp.labor_BRDN_COST, 0)
				             , NVL(tmp.ETC_LABOR_BRDN_COST, 0)
					 )
			         , NVL(tmp.ETC_LABOR_BRDN_COST, 0)
			   ) ETC_LABOR_BRDN_COST
		 , DECODE ( ver3.wp_flag
                      , 'Y'
                      , DECODE(TO_CHAR(tmp.ETC_EQUIP_BRDN_COST)
		                     , NULL
                             , NVL(tmp.EQUIPment_BRDN_COST, 0)
	                         , NVL(tmp.ETC_equip_BRDN_COST, 0)
				      )
			          , NVL(tmp.ETC_EQUIP_BRDN_COST, 0)
				  ) ETC_equip_BRDN_COST
		 , DECODE ( ver3.wp_flag
                      , 'Y'
                      , DECODE(TO_CHAR(tmp.ETC_BRDN_COST)
		                     , NULL
                             , NVL(tmp.BRDN_COST, 0)
				             , NVL(tmp.ETC_BRDN_COST, 0)
				      )
			        , NVL(tmp.ETC_BRDN_COST, 0)
				  ) ETC_BRDN_COST
		 , DECODE ( ver3.wp_flag
                     , 'Y'
                     , DECODE(TO_CHAR(tmp.ETC_raw_COST)
		                    , NULL
                            , NVL(tmp.raw_COST, 0)
				            , NVL(tmp.ETC_raw_COST, 0)
				     )
			       , NVL(tmp.ETC_raw_COST, 0)
				  ) ETC_raw_COST
		 , DECODE ( ver3.wp_flag
                      , 'Y'
                      , DECODE(TO_CHAR(tmp.ETC_labor_raw_COST)
		                     , NULL
                             , NVL(tmp.labor_raw_COST, 0)
				             , NVL(tmp.ETC_labor_raw_COST, 0)
			  	      )
			        , NVL(tmp.ETC_labor_raw_COST, 0)
				  ) ETC_labor_raw_COST
		 , DECODE ( ver3.wp_flag
                      , 'Y'
                      , DECODE(TO_CHAR(tmp.ETC_equip_raw_COST)
		                     , NULL
                             , NVL(tmp.equipment_raw_COST, 0)
                             ,  NVL(tmp.ETC_equip_raw_COST, 0)
				      )
			        , NVL(tmp.ETC_equip_raw_COST, 0)
			    ) ETC_equip_raw_COST
     , CUSTOM1
     , CUSTOM2
     , CUSTOM3
     , CUSTOM4
     , CUSTOM5
     , CUSTOM6
     , CUSTOM7
     , CUSTOM8
     , CUSTOM9
     , CUSTOM10
     , CUSTOM11
     , CUSTOM12
     , CUSTOM13
     , CUSTOM14
     , CUSTOM15
     , tmp.plan_type_code
  FROM pji_fp_aggr_pjp1 tmp
     , pji_pjp_wbs_header ver3
  WHERE 1 = 1
    AND ver3.plan_version_id = tmp.plan_version_id
   AND ver3.plan_type_code = tmp.plan_type_code    /* 4471527 */
   AND tmp.project_id = ver3.project_id -- use index.
   AND tmp.plan_type_id = NVL(ver3.plan_type_id, -1)
   AND tmp.plan_version_id in (-3, -4)
   AND tmp.worker_id = p_worker_id
  );
Line: 2683

DELETE pa_pji_proj_events_log log
where log.event_type = 'PLANTYPE_UPG'
and exists (select 1  from pji_fm_extr_plnver4 ver
            where ver.worker_id = p_worker_id and
             to_char(ver.project_id) = log.event_object);
Line: 2692

DELETE FROM pji_fm_extr_plnver4 where worker_id = p_worker_id;
Line: 2696

DELETE FROM pji_fp_aggr_pjp1 where worker_id = p_worker_id;
Line: 2703

    select 1 into l_count from dual
    where exists ( select event_type
    from PA_PJI_PROJ_EVENTS_LOG elog
    where elog.event_type = 'PLANTYPE_UPG');
Line: 2742

    select
      wbs_hdr.ROWID HDR_ROWID
    from
      PJI_PJP_PROJ_BATCH_MAP map,
      PJI_PJP_WBS_HEADER wbs_hdr
    where
      map.WORKER_ID           = p_worker_id    and
      wbs_hdr.PROJECT_ID      = map.PROJECT_ID and
      wbs_hdr.PLAN_VERSION_ID = -1
    for update;
Line: 2800

        select min(segment1) ,max(segment1)
        into l_from_project_num, l_to_project_num
        from pa_projects_all
        where segment1 between nvl(p_from_project,segment1) and nvl(p_to_project,segment1);
Line: 2805

        /* Get the Project Ids ,this is required to keep the impact minimum , these values will be updated in pji_system_parameters Table */
     IF l_from_project_num is not null and p_from_project is not null THEN
        select project_id
        into p_from_project_id
        from pa_projects_all
        where segment1= l_from_project_num;
Line: 2815

        select project_id
        into p_to_project_id
        from pa_projects_all
        where segment1= l_to_project_num;
Line: 2823

    select
      nvl(CONFIG_PROJ_PERF_FLAG, 'N')
    into
      l_settings_proj_perf_flag
    from
      PJI_SYSTEM_SETTINGS;
Line: 2969

        insert into PJI_SYSTEM_CONFIG_HIST
    (
      REQUEST_ID,
      USER_NAME,
      PROCESS_NAME,
      RUN_TYPE,
      PARAMETERS,
      CONFIG_PROJ_PERF_FLAG,
      CONFIG_COST_FLAG,
      CONFIG_PROFIT_FLAG,
      CONFIG_UTIL_FLAG,
      START_DATE,
      END_DATE,
      COMPLETION_TEXT
    )
    select
      FND_GLOBAL.CONC_REQUEST_ID                         REQUEST_ID,
      substr(FND_GLOBAL.USER_NAME, 1, 10)                USER_NAME,
      l_process                                          PROCESS_NAME,
      l_extraction_type                                  RUN_TYPE,
      substr(p_run_mode || ', ' ||
             to_char(p_operating_unit) || ', ' ||
             p_project_type || ', ' ||
             to_char(p_project_organization_id) || ', ' ||
             p_from_project || ', ' ||
             p_to_project || ', ' ||
             to_char(p_plan_type_id) || ', ' ||
             to_char(p_rbs_header_id) || ', ' ||
	     p_transaction_type || ', ' ||
             p_plan_versions || ', ' ||
             p_only_pt_projects_flag, 1, 240)            PARAMETERS,
      null                                               CONFIG_PROJ_PERF_FLAG,
      null                                               CONFIG_COST_FLAG,
      null                                               CONFIG_PROFIT_FLAG,
      null                                               CONFIG_UTIL_FLAG,
      sysdate                                            START_DATE,
      null                                               END_DATE,
      null                                               COMPLETION_TEXT
    from
      dual;
Line: 3027

    PJI_PJP_EXTRACTION_UTILS.UPDATE_EXTR_SCOPE;
Line: 3039

        select 'Y'
        into   l_prg_exists
        from   DUAL
        where  exists (select 1
                       from   PA_PROJ_ELEMENT_VERSIONS proj
                       where  proj.OBJECT_TYPE = 'PA_STRUCTURES' and
                              proj.PRG_GROUP is not null and
                              ROWNUM = 1);
Line: 3056

      insert into PJI_PJP_PROJ_BATCH_MAP
      (
        WORKER_ID,
        PROJECT_ID,
        PJI_PROJECT_STATUS,
        EXTRACTION_TYPE,
        EXTRACTION_STATUS,
        PROJECT_TYPE,
        PROJECT_ORG_ID,
        PROJECT_ORGANIZATION_ID,
        PROJECT_TYPE_CLASS,
        PRJ_CURRENCY_CODE,
        PROJECT_ACTIVE_FLAG
      )
      select
        p_worker_id,
        status.PROJECT_ID,
        null                                               PJI_PROJECT_STATUS,
        null                                               EXTRACTION_TYPE,
        status.EXTRACTION_STATUS,
        prj.PROJECT_TYPE,
        prj.ORG_ID                                         PROJECT_ORG_ID,
        status.PROJECT_ORGANIZATION_ID,
        status.PROJECT_TYPE_CLASS,
        prj.PROJECT_CURRENCY_CODE,
        'Y'                         PROJECT_ACTIVE_FLAG
/*      Processing is not depending on Project status    Bug 5057835
        decode(active_projects.PROJECT_STATUS_CODE,
               null, 'N', 'Y')                             PROJECT_ACTIVE_FLAG  */
      from
        PJI_PJP_PROJ_EXTR_STATUS status,
        PA_PROJECTS_ALL prj   /*,
        (        Processing is not depending on Project status Bug 5057835
        select
          distinct
          stat.PROJECT_STATUS_CODE
        from
          PA_PROJECT_STATUSES stat
        where
          stat.STATUS_TYPE = 'PROJECT' and
          stat.PROJECT_SYSTEM_STATUS_CODE not in ('CLOSED',
                                                  'PENDING_CLOSE',
                                                  'PENDING_PURGE',
                                                  'PURGED')
        ) active_projects    */
      where
        status.PROJECT_ID = prj.PROJECT_ID and
        prj.PROJECT_TYPE = nvl(p_project_type, prj.PROJECT_TYPE) and
        nvl(prj.ORG_ID, -99) = nvl(p_operating_unit, nvl(prj.ORG_ID, -99)) and
        status.PROJECT_ORGANIZATION_ID = nvl(p_project_organization_id,
                                            status.PROJECT_ORGANIZATION_ID) and
        prj.SEGMENT1 between nvl(p_from_project, prj.SEGMENT1) and
                             nvl(p_to_project, prj.SEGMENT1) /*and
        prj.PROJECT_STATUS_CODE = active_projects.PROJECT_STATUS_CODE (+)  */;
Line: 3114

      insert into PJI_PJP_PROJ_BATCH_MAP
      (
        WORKER_ID,
        PROJECT_ID,
        PJI_PROJECT_STATUS,
        EXTRACTION_TYPE,
        EXTRACTION_STATUS,
        PROJECT_TYPE,
        PROJECT_ORG_ID,
        PROJECT_ORGANIZATION_ID,
        PROJECT_TYPE_CLASS,
        PRJ_CURRENCY_CODE,
        PROJECT_ACTIVE_FLAG
      )
      select
        p_worker_id,
        status.PROJECT_ID,
        null                                               PJI_PROJECT_STATUS,
        null                                               EXTRACTION_TYPE,
        status.EXTRACTION_STATUS,
        prj.PROJECT_TYPE,
        prj.ORG_ID                                         PROJECT_ORG_ID,
        status.PROJECT_ORGANIZATION_ID,
        status.PROJECT_TYPE_CLASS,
        prj.PROJECT_CURRENCY_CODE,
        decode(active_projects.PROJECT_ID, null, 'N', 'Y') PROJECT_ACTIVE_FLAG
      from
        PJI_PJP_PROJ_EXTR_STATUS status,
        PA_PROJECTS_ALL          prj,
        (
          select /*+ ordered
                     index(prg, PA_XBS_DENORM_N3)
            distinct
            emt.PROJECT_ID
          from
            PA_PROJECT_STATUSES stat,
            PA_PROJECTS_ALL     prj,
            PA_XBS_DENORM       prg,
            PA_PROJ_ELEMENTS    emt
          where
            stat.STATUS_TYPE                =  'PROJECT'                and
            stat.PROJECT_SYSTEM_STATUS_CODE not in ('CLOSED',
                                                    'PENDING_CLOSE',
                                                    'PENDING_PURGE',
                                                    'PURGED')           and
            prj.PROJECT_STATUS_CODE         =  stat.PROJECT_STATUS_CODE and
            prg.STRUCT_TYPE                 =  'PRG'                    and
            prg.SUP_PROJECT_ID              =  prj.PROJECT_ID           and
            emt.PROJ_ELEMENT_ID             =  prg.SUB_EMT_ID
        ) active_projects
      where
        status.PROJECT_ID = prj.PROJECT_ID and
        prj.PROJECT_TYPE = nvl(p_project_type, prj.PROJECT_TYPE) and
        nvl(prj.org_id,-99) = nvl(p_operating_unit, nvl(prj.org_id,-99)) and
        status.PROJECT_ORGANIZATION_ID = nvl(p_project_organization_id,
                                            status.PROJECT_ORGANIZATION_ID) and
        prj.segment1 between nvl(p_from_project,prj.segment1) and nvl(p_to_project,prj.segment1) and
        status.PROJECT_ID = active_projects.PROJECT_ID (+);    */
Line: 3177

        select /*+ ordered */
          'Y'
        into
          l_prg_exists
        from
          PJI_PJP_PROJ_BATCH_MAP map,
          PA_PROJ_ELEMENT_VERSIONS proj
        where
          map.WORKER_ID    = p_worker_id     and
          map.PROJECT_ID   = proj.PROJECT_ID and
          proj.OBJECT_TYPE = 'PA_STRUCTURES' and
          proj.PRG_GROUP   is not null       and
          ROWNUM           = 1;
Line: 3199

      insert into PJI_PJP_PROJ_BATCH_MAP
      (
        WORKER_ID,
        PROJECT_ID,
        PJI_PROJECT_STATUS,
        EXTRACTION_TYPE,
        EXTRACTION_STATUS,
        PROJECT_TYPE,
        PROJECT_ORG_ID,
        PROJECT_ORGANIZATION_ID,
        PROJECT_TYPE_CLASS,
        PRJ_CURRENCY_CODE,
        PROJECT_ACTIVE_FLAG
      )
      select /*+ ordered */
        p_worker_id,
        status.PROJECT_ID,
        null                                               PJI_PROJECT_STATUS,
        null                                               EXTRACTION_TYPE,
        status.EXTRACTION_STATUS,
        prj.PROJECT_TYPE,
        prj.ORG_ID                                         PROJECT_ORG_ID,
        status.PROJECT_ORGANIZATION_ID,
        status.PROJECT_TYPE_CLASS,
        prj.PROJECT_CURRENCY_CODE,
        'Y'                                                PROJECT_ACTIVE_FLAG
      from
        (
        select /*+ ordered */
          distinct
          ver2.PROJECT_ID
        from
          PJI_PJP_PROJ_BATCH_MAP   map,
          PA_PROJ_ELEMENT_VERSIONS ver1,
          PA_PROJ_ELEMENT_VERSIONS ver2
        where
          map.WORKER_ID    = p_worker_id     and
          ver1.PROJECT_ID  = map.PROJECT_ID  and
          ver1.PRG_GROUP   is not null       and
          ver2.OBJECT_TYPE = 'PA_STRUCTURES' and
          ver2.PRG_GROUP   = ver1.PRG_GROUP
        union
        select /*+ ordered
                   index(prg1 PJI_XBS_DENORM_N3)
                   index(prg2 PJI_XBS_DENORM_N3) */
          distinct
          prg2.SUP_PROJECT_ID PROJECT_ID
        from
          PJI_PJP_PROJ_BATCH_MAP map,
          PJI_XBS_DENORM         prg1,
          PJI_XBS_DENORM         prg2
        where
          map.WORKER_ID       = p_worker_id    and
          prg1.STRUCT_TYPE    = 'PRG'          and
          prg1.SUP_PROJECT_ID = map.PROJECT_ID and
          prg1.PRG_GROUP      is not null      and
          prg2.STRUCT_TYPE    = 'PRG'          and
          prg2.SUB_LEVEL      = prg2.SUP_LEVEL and
          prg2.PRG_GROUP      = prg1.PRG_GROUP
        ) map,
        PJI_PJP_PROJ_BATCH_MAP   existing_projects,
        PJI_PJP_PROJ_EXTR_STATUS status,
        PA_PROJECTS_ALL          prj
      where
        p_worker_id                  = existing_projects.WORKER_ID  (+) and
        map.PROJECT_ID               = existing_projects.PROJECT_ID (+) and
        existing_projects.PROJECT_ID is null                            and
        map.PROJECT_ID               = status.PROJECT_ID                and
        map.PROJECT_ID               = prj.PROJECT_ID;
Line: 3273

      select
        count(*)
      into
        l_count
      from
        PJI_PJP_PROJ_BATCH_MAP new_worker
      where
        new_worker.WORKER_ID = p_worker_id;
Line: 3299

      insert into PJI_PJP_PROJ_BATCH_MAP
      (
        WORKER_ID,
        PROJECT_ID,
        PJI_PROJECT_STATUS,
        EXTRACTION_TYPE,
        EXTRACTION_STATUS,
        PROJECT_TYPE,
        PROJECT_ORG_ID,
        PROJECT_ORGANIZATION_ID,
        PROJECT_TYPE_CLASS,
        PRJ_CURRENCY_CODE,
        PROJECT_ACTIVE_FLAG
      )
      select /*+ ordered
                 index(log, PA_PJI_PROJ_EVENTS_LOG_N1)
                 index(rbs_asg, PA_RBS_PRJ_ASSIGNMENTS_N1) */
        distinct
        p_worker_id,
        rbs_asg.PROJECT_ID,
        null                                           PJI_PROJECT_STATUS,
        null                                           EXTRACTION_TYPE,
        'R'                                            EXTRACTION_STATUS,
        prj.PROJECT_TYPE,
        prj.ORG_ID                                     PROJECT_ORG_ID,
        prj.CARRYING_OUT_ORGANIZATION_ID               PROJECT_ORGANIZATION_ID,
        decode(pt.PROJECT_TYPE_CLASS_CODE,
               'CAPITAL',  'C',
               'CONTRACT', 'B',
               'INDIRECT', 'I')                        PROJECT_TYPE_CLASS,
        prj.PROJECT_CURRENCY_CODE,
        'Y' PROJECT_ACTIVE_FLAG
/*        decode(active_projects.PROJECT_ID,
               null, 'N', 'Y')                         PROJECT_ACTIVE_FLAG  */
      from
        PA_PJI_PROJ_EVENTS_LOG log,
        PA_RBS_PRJ_ASSIGNMENTS rbs_asg,
        PA_PROJECTS_ALL        prj,
        PA_PROJECT_TYPES_ALL   pt    /*,
        (       Processing is now not depending on status Bug 5057835
          select /*+ ordered
                     index(prg, PA_XBS_DENORM_N3)
            distinct
            emt.PROJECT_ID
          from
            PA_PROJECT_STATUSES stat,
            PA_PROJECTS_ALL     prj,
            PA_XBS_DENORM       prg,
            PA_PROJ_ELEMENTS    emt
          where
            stat.STATUS_TYPE = 'PROJECT' and
            stat.PROJECT_SYSTEM_STATUS_CODE not in ('CLOSED',
                                                    'PENDING_CLOSE',
                                                    'PENDING_PURGE',
                                                    'PURGED') and
            prj.PROJECT_STATUS_CODE = stat.PROJECT_STATUS_CODE and
            prg.STRUCT_TYPE                 =  'PRG'                    and
            prg.SUP_PROJECT_ID              =  prj.PROJECT_ID           and
            emt.PROJ_ELEMENT_ID             =  prg.SUB_EMT_ID
        ) active_projects    */
      where
        log.EVENT_TYPE         in ('RBS_PUSH', 'RBS_DELETE')         and
   --     rbs_asg.RBS_VERSION_ID in (log.EVENT_OBJECT, log.ATTRIBUTE2) and --Commented for Bug#5728852 by VVJOSHI
        rbs_asg.RBS_HEADER_ID  =  nvl(p_rbs_header_id,
                                      rbs_asg.RBS_HEADER_ID)         and
        nvl(prj.org_id,-99) = nvl(p_operating_unit, nvl(prj.org_id,-99)) and
        rbs_asg.PROJECT_ID     =  prj.PROJECT_ID                     and
        nvl(prj.ORG_ID, -1)    =  nvl(pt.ORG_ID, -1)                 and
        prj.PROJECT_TYPE       =  pt.PROJECT_TYPE      ;       /*       and
Line: 3375

			SELECT 'FULL' INTO l_extraction_type FROM DUAL
			WHERE EXISTS
			(
			SELECT 1
			FROM pji_pjp_proj_extr_status extr,
				 PJI_PJP_PROJ_BATCH_MAP map
			WHERE map.project_id=extr.project_id
				  AND extr.extraction_status='F'
				  AND WORKER_ID = p_worker_id
			);
Line: 3422

      select distinct
             existing_workers.WORKER_ID
      from   PJI_PJP_PROJ_BATCH_MAP existing_workers
      where  existing_workers.WORKER_ID <> p_worker_id and
             exists (select 1
                     from  PJI_PJP_PROJ_BATCH_MAP new_worker
                     where new_worker.WORKER_ID = p_worker_id and
                           new_worker.PROJECT_ID = existing_workers.PROJECT_ID)
      ) loop

      l_count := l_count + 1;
Line: 3506

	      delete
 	     from   PJI_PJP_PROJ_BATCH_MAP
	      where  WORKER_ID = p_worker_id and
	             ((l_extraction_type = 'FULL' and
	               EXTRACTION_STATUS <> 'F') or
	              (l_extraction_type = 'INCREMENTAL' and
	               EXTRACTION_STATUS <> 'I') or
	              (l_extraction_type = 'PARTIAL' and
	               EXTRACTION_STATUS <> 'I'));
Line: 3516

 	     delete
	      from   PA_PJI_PROJ_EVENTS_LOG log
 	     where  log.EVENT_TYPE in ('WBS_CHANGE',
	                                'WBS_PUBLISH'/*,
	                                'RBS_ASSOC',
 	                               'RBS_PRG'*/	--Commented for bug#6113807 by VVJOSHI
				       ) and
  	           log.ATTRIBUTE1 in (select stat.PROJECT_ID
   	                             from   PJI_PJP_PROJ_BATCH_MAP map,
    	                                   PJI_PJP_PROJ_EXTR_STATUS stat
     	                           where  map.WORKER_ID = p_worker_id  and
      	                                 stat.PROJECT_ID = map.PROJECT_ID and
       	                                stat.EXTRACTION_STATUS = 'F');
Line: 3532

    update PJI_PJP_PROJ_EXTR_STATUS
    set    EXTRACTION_STATUS = 'I',
           LAST_UPDATE_DATE = sysdate
    where  l_extraction_type = 'FULL' and
           EXTRACTION_STATUS = 'F' and
           PROJECT_ID in (select PROJECT_ID
                          from   PJI_PJP_PROJ_BATCH_MAP
                          where  WORKER_ID = p_worker_id);
Line: 3542

      update PJI_PJP_WBS_HEADER wbs_hdr
      set    wbs_hdr.LOCK_FLAG = 'P'
      where  wbs_hdr.ROWID = c.HDR_ROWID;
Line: 3556

				SELECT SUM(REFRESH_CODE) INTO l_refresh_code
				FROM (
					  SELECT
					  DECODE(p_transaction_type,'ALL_TXN_TYPE',1,'ACTUAL_TXN_TYPE',1,0) 	REFRESH_CODE
					  FROM DUAL
						UNION ALL
					  SELECT
					  (CASE p_plan_versions
					     WHEN 'ALL_PLAN_VERSION' 		THEN 62
					     WHEN 'CB_VERSION'				THEN 2
					     WHEN 'CO_VERSION'				THEN 4
					     WHEN 'LP_VERSION'				THEN 8
					     WHEN 'WK_VERSION'				THEN 16
					     WHEN 'LAT_VERSION'				THEN 30
						 ELSE 0
						 END)  			   		REFRESH_CODE
					FROM DUAL
					);
Line: 3587

      select max(ver.RBS_VERSION_ID)
      into   l_rbs_version_id
      from   PA_RBS_VERSIONS_B ver,
             PJI_PJP_RBS_HEADER rbs_hdr
      where  ver.RBS_HEADER_ID = p_rbs_header_id and
             ver.STATUS_CODE = 'FROZEN' and
             ver.RBS_VERSION_ID = rbs_hdr.RBS_VERSION_ID;
Line: 3733

    PJI_PJP_SUM_ROLLUP.UPDATE_XBS_DENORM_FULL(p_worker_id);
Line: 3735

    PJI_PJP_SUM_ROLLUP.UPDATE_PROGRAM_WBS(p_worker_id);
Line: 3737

    PJI_PJP_SUM_ROLLUP.UPDATE_PROGRAM_RBS(p_worker_id);
Line: 3765

    PJI_PJP_SUM_ROLLUP.PROCESS_PENDING_PLAN_UPDATES(p_worker_id);
Line: 3790

    PJI_PJP_SUM_ROLLUP.UPDATE_WBS_HDR(p_worker_id);
Line: 3794

    PJI_PJP_SUM_ROLLUP.UPDATE_FPR_ROWS(p_worker_id);
Line: 3795

    PJI_PJP_SUM_ROLLUP.INSERT_FPR_ROWS(p_worker_id);
Line: 3800

    PJI_PJP_SUM_ROLLUP.UPDATE_ACR_ROWS(p_worker_id);
Line: 3801

    PJI_PJP_SUM_ROLLUP.INSERT_ACR_ROWS(p_worker_id);
Line: 3804

    PJI_PJP_SUM_ROLLUP.UPDATE_XBS_DENORM(p_worker_id);
Line: 3805

    PJI_PJP_SUM_ROLLUP.UPDATE_RBS_DENORM(p_worker_id);
Line: 3810

    PJI_FM_SUM_PSI.BALANCES_UPDATE_DELTA(p_worker_id);
Line: 3811

    PJI_FM_SUM_PSI.BALANCES_INSERT_DELTA(p_worker_id);
Line: 3813

    PJI_FM_SUM_PSI.BALANCES_INSERT_DELTA_CMT(p_worker_id);
Line: 3978

    update PJI_PJP_PROJ_EXTR_STATUS
    set    LAST_UPDATE_DATE = sysdate
    where  PROJECT_ID in (select map.PROJECT_ID
                          from   PJI_PJP_PROJ_BATCH_MAP map
                          where  map.WORKER_ID = p_worker_id);
Line: 3984

    delete from PJI_PJP_PROJ_BATCH_MAP where WORKER_ID = p_worker_id;
Line: 3990

    update PJI_SYSTEM_CONFIG_HIST
    set    END_DATE = sysdate,
           COMPLETION_TEXT = 'Normal completion'
    where  PROCESS_NAME = l_process and
           END_DATE is null;
Line: 4059

    update PJI_SYSTEM_CONFIG_HIST
    set    END_DATE = sysdate,
           COMPLETION_TEXT = l_sqlerrm
    where  PROCESS_NAME = g_process || p_worker_id and
           END_DATE is null;