DBA Data[Home] [Help]

APPS.PA_FP_GEN_AMOUNT_UTILS SQL Statements

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

Line: 42

  SELECT
  OPT.PROJECT_ID,
  BV.BUDGET_VERSION_ID,
  OPT.PROJ_FP_OPTIONS_ID,
  OPT.FIN_PLAN_TYPE_ID,
  DECODE(BV.VERSION_TYPE,'COST', OPT.COST_AMOUNT_SET_ID,
                         'REVENUE',OPT.REVENUE_AMOUNT_SET_ID,
                         'ALL',OPT.ALL_AMOUNT_SET_ID),
  DECODE(BV.VERSION_TYPE,'COST', OPT.COST_FIN_PLAN_LEVEL_CODE,
                         'REVENUE',OPT.REVENUE_FIN_PLAN_LEVEL_CODE,
                         'ALL',OPT.ALL_FIN_PLAN_LEVEL_CODE),
  DECODE(BV.VERSION_TYPE,'COST', OPT.COST_TIME_PHASED_CODE,
                         'REVENUE',OPT.REVENUE_TIME_PHASED_CODE,
                         'ALL',OPT.ALL_TIME_PHASED_CODE),
  DECODE(BV.VERSION_TYPE,'COST', OPT.COST_RESOURCE_LIST_ID,
                         'REVENUE',OPT.REVENUE_RESOURCE_LIST_ID,
                         'ALL',OPT.ALL_RESOURCE_LIST_ID),
  DECODE(BV.VERSION_TYPE,'COST', OPT.COST_RES_PLANNING_LEVEL,
                         'REVENUE',OPT.REVENUE_RES_PLANNING_LEVEL,
                         'ALL',OPT.ALL_RES_PLANNING_LEVEL),
  OPT.RBS_VERSION_ID,
  decode(nvl(opt.use_planning_rates_flag,'N'),'N',null,
         'Y',DECODE(BV.VERSION_TYPE,
               'COST', OPT.COST_EMP_RATE_SCH_ID,
               'ALL',OPT.COST_EMP_RATE_SCH_ID,
                null)),
  decode(nvl(opt.use_planning_rates_flag,'N'),'N',null,
         'Y',DECODE(BV.VERSION_TYPE,
                         'REVENUE',OPT.REV_EMP_RATE_SCH_ID,
                         'ALL',OPT.REV_EMP_RATE_SCH_ID,
                          null)),
  decode(nvl(opt.use_planning_rates_flag,'N'),'N',null,
         'Y',DECODE(BV.VERSION_TYPE,'COST', OPT.COST_JOB_RATE_SCH_ID,
                         'ALL',OPT.COST_JOB_RATE_SCH_ID,
                          null)),
  decode(nvl(opt.use_planning_rates_flag,'N'),'N',null,
         'Y',DECODE(BV.VERSION_TYPE,'REVENUE',OPT.REV_JOB_RATE_SCH_ID,
                         'ALL',OPT.REV_JOB_RATE_SCH_ID,
                          null)),
  decode(nvl(opt.use_planning_rates_flag,'N'),'N',null,
         'Y',DECODE(BV.VERSION_TYPE,'COST', OPT.COST_NON_LABOR_RES_RATE_SCH_ID,
                         'ALL', OPT.COST_NON_LABOR_RES_RATE_SCH_ID,
                          null)),
   decode(nvl(opt.use_planning_rates_flag,'N'),'N',null,
          'Y',DECODE(BV.VERSION_TYPE,'REVENUE',OPT.REV_NON_LABOR_RES_RATE_SCH_ID,
                         'ALL', OPT.REV_NON_LABOR_RES_RATE_SCH_ID,
                          null)),
    decode(nvl(opt.use_planning_rates_flag,'N'),'N',null,
           'Y',DECODE(BV.VERSION_TYPE,'COST', OPT.COST_RES_CLASS_RATE_SCH_ID,
                         'ALL',OPT.COST_RES_CLASS_RATE_SCH_ID,
                          null)),
    decode(nvl(opt.use_planning_rates_flag,'N'),'N',null,
           'Y',DECODE(BV.VERSION_TYPE,'REVENUE',OPT.REV_RES_CLASS_RATE_SCH_ID,
                         'ALL',OPT.REV_RES_CLASS_RATE_SCH_ID,
                          null)),
  DECODE(BV.VERSION_TYPE,'COST', OPT.COST_BURDEN_RATE_SCH_ID,
                         'ALL', OPT.COST_BURDEN_RATE_SCH_ID,
                          null),
  DECODE(BV.VERSION_TYPE,'COST', OPT.COST_CURRENT_PLANNING_PERIOD,
                         'REVENUE',OPT.REV_CURRENT_PLANNING_PERIOD,
                         'ALL',OPT.ALL_CURRENT_PLANNING_PERIOD),
  DECODE(BV.VERSION_TYPE,'COST', OPT.COST_PERIOD_MASK_ID,
                         'REVENUE',OPT.REV_PERIOD_MASK_ID,
                         'ALL',OPT.ALL_PERIOD_MASK_ID),
  DECODE(BV.VERSION_TYPE,'COST', OPT.GEN_SRC_COST_PLAN_TYPE_ID,
                         'REVENUE',OPT.GEN_SRC_REV_PLAN_TYPE_ID,
                         'ALL',OPT.GEN_SRC_ALL_PLAN_TYPE_ID),
  DECODE(BV.VERSION_TYPE,'COST', OPT.GEN_SRC_COST_PLAN_VERSION_ID,
                         'REVENUE',OPT.GEN_SRC_REV_PLAN_VERSION_ID,
                         'ALL',OPT.GEN_SRC_ALL_PLAN_VERSION_ID),
  DECODE(BV.VERSION_TYPE,'COST', OPT1.GEN_SRC_COST_PLAN_VER_CODE,
                         'REVENUE',OPT1.GEN_SRC_REV_PLAN_VER_CODE,
                         'ALL',OPT1.GEN_SRC_ALL_PLAN_VER_CODE),
  DECODE(BV.VERSION_TYPE,'COST', OPT.GEN_COST_SRC_CODE,
                         'REVENUE',OPT.GEN_REV_SRC_CODE,
                         'ALL',OPT.GEN_ALL_SRC_CODE),
  DECODE(BV.VERSION_TYPE,'COST', OPT.GEN_COST_ETC_SRC_CODE,
                         'REVENUE',OPT.GEN_REV_ETC_SRC_CODE,
                         'ALL',OPT.GEN_ALL_ETC_SRC_CODE),
  DECODE(BV.VERSION_TYPE,'COST', OPT.GEN_COST_INCL_CHANGE_DOC_FLAG,
                         'REVENUE',OPT.GEN_REV_INCL_CHANGE_DOC_FLAG,
                         'ALL',OPT.GEN_ALL_INCL_CHANGE_DOC_FLAG),
  DECODE(BV.VERSION_TYPE,'COST', OPT.GEN_COST_INCL_OPEN_COMM_FLAG,
                         'REVENUE','N',
                         'ALL',OPT.GEN_ALL_INCL_OPEN_COMM_FLAG),
  DECODE(BV.VERSION_TYPE,'COST','N',
                         'REVENUE',OPT.GEN_REV_INCL_BILL_EVENT_FLAG,
                         'ALL',OPT.GEN_ALL_INCL_BILL_EVENT_FLAG),
  DECODE(BV.VERSION_TYPE,'COST', OPT.GEN_COST_RET_MANUAL_LINE_FLAG,
                         'REVENUE',OPT.GEN_REV_RET_MANUAL_LINE_FLAG,
                         'ALL',OPT.GEN_ALL_RET_MANUAL_LINE_FLAG),
  DECODE(BV.VERSION_TYPE,'COST', OPT.GEN_COST_ACTUAL_AMTS_THRU_CODE,
                         'REVENUE',OPT.GEN_REV_ACTUAL_AMTS_THRU_CODE,
                         'ALL',OPT.GEN_ALL_ACTUAL_AMTS_THRU_CODE),
  DECODE(BV.VERSION_TYPE,'COST', OPT.GEN_COST_INCL_UNSPENT_AMT_FLAG,
                         'REVENUE','N',
                         'ALL',OPT.GEN_ALL_INCL_UNSPENT_AMT_FLAG),
  OPT.PLAN_IN_MULTI_CURR_FLAG,
  decode(OPT.REVENUE_DERIVATION_METHOD,
       'COST','C',
       'WORK','T',
       'EVENT','E'), --Bug 5462471
  NVL(P.ORG_ID,-99)      ORG_ID,
  P.PROJECT_CURRENCY_CODE,
  P.PROJFUNC_CURRENCY_CODE,
  I.SET_OF_BOOKS_ID,
  FP.RAW_COST_FLAG,
  FP.BURDENED_COST_FLAG,
  FP.REVENUE_FLAG,
  FP.COST_QTY_FLAG,
  FP.REVENUE_QTY_FLAG,
  FP.ALL_QTY_FLAG,
  FP.BILL_RATE_FLAG,
  FP.COST_RATE_FLAG,
  FP.BURDEN_RATE_FLAG,
  DECODE(BV.WP_VERSION_FLAG,'Y',BV.PROJECT_STRUCTURE_VERSION_ID,
         PA_PROJECT_STRUCTURE_UTILS.GET_FIN_STRUC_VER_ID(opt.project_id )),
  FB.PLAN_CLASS_CODE,
  BV.VERSION_TYPE,
  P.PROJECT_VALUE,
  OPT.TRACK_WORKPLAN_COSTS_FLAG,
  DECODE(BV.VERSION_TYPE,'COST', OPT.GEN_SRC_COST_WP_VERSION_ID,
                         'REVENUE',OPT.GEN_SRC_REV_WP_VERSION_ID,
                         'ALL',OPT.GEN_SRC_ALL_WP_VERSION_ID),
  DECODE(OPT1.FIN_PLAN_PREFERENCE_CODE,
         'COST_ONLY',OPT1.GEN_SRC_COST_WP_VER_CODE,
         'REVENUE_ONLY',OPT1.GEN_SRC_REV_WP_VER_CODE,
         'COST_AND_REV_SAME',OPT1.GEN_SRC_ALL_WP_VER_CODE,
         'COST_AND_REV_SEP',( DECODE(BV.VERSION_TYPE,
                            'COST', OPT1.GEN_SRC_COST_WP_VER_CODE,
                            'REVENUE',OPT1.GEN_SRC_REV_WP_VER_CODE)))
  INTO          X_FP_COLS_REC.X_PROJECT_ID,
                X_FP_COLS_REC.X_BUDGET_VERSION_ID,
                X_FP_COLS_REC.X_PROJ_FP_OPTIONS_ID,
                X_FP_COLS_REC.X_FIN_PLAN_TYPE_ID,
                X_FP_COLS_REC.X_AMOUNT_SET_ID,
                X_FP_COLS_REC.X_FIN_PLAN_LEVEL_CODE,
                X_FP_COLS_REC.X_TIME_PHASED_CODE,
                X_FP_COLS_REC.X_RESOURCE_LIST_ID,
                X_FP_COLS_REC.X_RES_PLANNING_LEVEL,
                X_FP_COLS_REC.X_RBS_VERSION_ID,
                X_FP_COLS_REC.X_COST_EMP_RATE_SCH_ID,
                X_FP_COLS_REC.X_REV_EMP_RATE_SCH_ID,
                X_FP_COLS_REC.X_COST_JOB_RATE_SCH_ID,
                X_FP_COLS_REC.X_REV_JOB_RATE_SCH_ID,
                X_FP_COLS_REC.X_CNON_LABOR_RES_RATE_SCH_ID,
                X_FP_COLS_REC.X_RNON_LABOR_RES_RATE_SCH_ID,
                X_FP_COLS_REC.X_COST_RES_CLASS_RATE_SCH_ID,
                X_FP_COLS_REC.X_REV_RES_CLASS_RATE_SCH_ID,
                X_FP_COLS_REC.X_BURDEN_RATE_SCH_ID,
                X_FP_COLS_REC.X_CURRENT_PLANNING_PERIOD,
                X_FP_COLS_REC.X_PERIOD_MASK_ID,
                X_FP_COLS_REC.X_GEN_SRC_PLAN_TYPE_ID,
                X_FP_COLS_REC.X_GEN_SRC_PLAN_VERSION_ID,
                X_FP_COLS_REC.X_GEN_SRC_PLAN_VER_CODE,
                X_FP_COLS_REC.X_GEN_SRC_CODE,
                X_FP_COLS_REC.X_GEN_ETC_SRC_CODE,
                X_FP_COLS_REC.X_GEN_INCL_CHANGE_DOC_FLAG,
                X_FP_COLS_REC.X_GEN_INCL_OPEN_COMM_FLAG,
                X_FP_COLS_REC.X_GEN_INCL_BILL_EVENT_FLAG,
                X_FP_COLS_REC.X_GEN_RET_MANUAL_LINE_FLAG,
                X_FP_COLS_REC.X_GEN_ACTUAL_AMTS_THRU_CODE,
                X_FP_COLS_REC.X_GEN_INCL_UNSPENT_AMT_FLAG,
                X_FP_COLS_REC.X_PLAN_IN_MULTI_CURR_FLAG,
                X_FP_COLS_REC.X_REVENUE_DERIVATION_METHOD,--Bug 5462471
                X_FP_COLS_REC.X_ORG_ID,
                X_FP_COLS_REC.X_PROJECT_CURRENCY_CODE,
                X_FP_COLS_REC.X_PROJFUNC_CURRENCY_CODE,
                X_FP_COLS_REC.X_SET_OF_BOOKS_ID,
                X_FP_COLS_REC.X_RAW_COST_FLAG,
                X_FP_COLS_REC.X_BURDENED_FLAG,
                X_FP_COLS_REC.X_REVENUE_FLAG,
                X_FP_COLS_REC.X_COST_QUANTITY_FLAG,
                X_FP_COLS_REC.X_REV_QUANTITY_FLAG,
                X_FP_COLS_REC.X_ALL_QUANTITY_FLAG,
                X_FP_COLS_REC.X_BILL_RATE_FLAG,
                X_FP_COLS_REC.X_COST_RATE_FLAG,
                X_FP_COLS_REC.X_BURDEN_RATE_FLAG,
                X_FP_COLS_REC.X_PROJECT_STRUCTURE_VERSION_ID,
                X_FP_COLS_REC.X_PLAN_CLASS_CODE,
                X_FP_COLS_REC.X_VERSION_TYPE,
                X_FP_COLS_REC.X_PROJECT_VALUE,
                X_FP_COLS_REC.X_TRACK_WORKPLAN_COSTS_FLAG,
                X_FP_COLS_REC.X_GEN_SRC_WP_VERSION_ID,
                X_FP_COLS_REC.X_GEN_SRC_WP_VER_CODE
  FROM          PA_BUDGET_VERSIONS BV, PA_PROJ_FP_OPTIONS OPT, PA_PROJ_FP_OPTIONS OPT1,
                PA_PROJECTS_ALL P, PA_IMPLEMENTATIONS_ALL I,
                PA_FIN_PLAN_AMOUNT_SETS FP,
                PA_FIN_PLAN_TYPES_B FB
  WHERE         BV.BUDGET_VERSION_ID      = P_BUDGET_VERSION_ID
  AND           OPT.PROJECT_ID            = BV.PROJECT_ID
  AND           OPT.FIN_PLAN_TYPE_ID      = BV.FIN_PLAN_TYPE_ID
  AND           OPT.FIN_PLAN_VERSION_ID   = P_BUDGET_VERSION_ID
  AND           P.PROJECT_ID              = BV.PROJECT_ID
  AND           I.ORG_ID                  = P.ORG_ID -- R12 MOAC 4447573: NVL(I.ORG_ID,-99) = NVL(P.ORG_ID,-99)
  AND           FP.FIN_PLAN_AMOUNT_SET_ID =
      DECODE(BV.VERSION_TYPE,'COST', OPT.COST_AMOUNT_SET_ID,
                         'REVENUE',OPT.REVENUE_AMOUNT_SET_ID,
                         'ALL',OPT.ALL_AMOUNT_SET_ID)
  AND           FB.FIN_PLAN_TYPE_ID = BV.FIN_PLAN_TYPE_ID
  AND           OPT1.PROJECT_ID     = BV.PROJECT_ID
  AND           OPT1.FIN_PLAN_OPTION_LEVEL_CODE = 'PLAN_TYPE'
  AND           OPT1.FIN_PLAN_TYPE_ID      = BV.FIN_PLAN_TYPE_ID;
Line: 245

/* Plan_ver_code is selected at PLAN_TYPE instead of PLAN_VERSION */

       --dbms_output.put_line('in utils after select');
Line: 299

   SELECT 'Y'
   INTO   l_flag
   FROM   PA_COMMITMENT_TXNS
   WHERE  PROJECT_ID = P_PROJECT_ID
   AND    DENOM_CURRENCY_CODE <> P_PROJ_CURRENCY_CODE
   AND    NVL(generation_error_flag,'N') = 'N'
   AND    ROWNUM < 2;
Line: 441

    SELECT fin_plan_preference_code
    INTO   l_fp_preference_code
    FROM   pa_proj_fp_options
    WHERE  project_id = p_project_id
    AND    fin_plan_type_id = p_fin_plan_type_id
    AND    fin_plan_option_level_code =
           PA_FP_CONSTANTS_PKG.G_OPTION_LEVEL_PLAN_TYPE;
Line: 514

            SELECT budget_version_id
            INTO   l_current_original_version_id
            FROM   pa_budget_versions
            WHERE  project_id = p_project_id
            AND    fin_plan_type_id = p_fin_plan_type_id
            AND    version_type = NVL(p_version_type,l_version_type)
            AND    budget_status_code = 'B'
            AND    current_flag = 'Y';
Line: 524

            SELECT budget_version_id
            INTO   l_current_original_version_id
            FROM   pa_budget_versions
            WHERE  project_id = p_project_id
            AND    fin_plan_type_id = p_fin_plan_type_id
            AND    version_type = NVL(p_version_type,l_version_type)
            AND    budget_status_code = 'B'
            AND    current_original_flag = 'Y';
Line: 544

        SELECT proj_fp_options_id
        INTO   l_fp_options_id
        FROM   pa_proj_fp_options
        WHERE  fin_plan_version_id = l_current_original_version_id;
Line: 727

     SELECT project_id
           ,task_id
           ,unit_of_measure
           ,resource_class_code
           ,organization_id
           ,job_id
           ,person_id
           ,expenditure_type
           ,non_labor_resource
           ,bom_resource_id
           ,inventory_item_id
           ,item_category_id
           ,mfc_cost_type_id
           ,rate_based_flag
           ,rate_expenditure_org_id
           ,rate_expenditure_type
       FROM pa_resource_assignments ra
      WHERE ra.resource_assignment_id = c_resource_assignment_id;
Line: 749

     SELECT non_labor_bill_rate_org_id
           ,non_labor_schedule_discount
           ,non_labor_schedule_fixed_date
           ,non_lab_std_bill_rt_sch_id
           ,emp_bill_rate_schedule_id
           ,job_bill_rate_schedule_id
           ,labor_bill_rate_org_id
           ,labor_sch_type
           ,non_labor_sch_type
           ,top_task_id
       FROM pa_tasks t
      WHERE t.task_id = c_task_id;
Line: 765

    SELECT assign_precedes_task
          ,bill_job_group_id
          ,carrying_out_organization_id
          ,multi_currency_billing_flag
          ,org_id
          ,non_labor_bill_rate_org_id
          ,project_currency_code
          ,non_labor_schedule_discount
          ,non_labor_schedule_fixed_date
          ,non_lab_std_bill_rt_sch_id
          ,project_type
          ,projfunc_currency_code
          ,emp_bill_rate_schedule_id
          ,job_bill_rate_schedule_id
          ,labor_bill_rate_org_id
          ,labor_sch_type
          ,non_labor_sch_type
      FROM pa_projects_all ppa
     WHERE ppa.project_id = c_proj_id;
Line: 792

    SELECT decode(pfo.use_planning_rates_flag,'N',
           pfo.res_class_bill_rate_sch_id,
           decode(bv.version_type,'REVENUE',
           pfo.rev_res_class_rate_sch_id,
           'ALL'    ,pfo.rev_res_class_rate_sch_id,
              NULL)) res_class_bill_rate_sch_id
          ,decode(pfo.use_planning_rates_flag,'N',
           pfo.res_class_raw_cost_sch_id,
          decode(bv.version_type,'COST',
          pfo.cost_res_class_rate_sch_id, 'ALL',
          pfo.cost_res_class_rate_sch_id,
          NULL)) res_class_raw_cost_sch_id
          ,pfo.use_planning_rates_flag
          ,decode(pfo.use_planning_rates_flag,'N',null,
          decode(bv.version_type,'REVENUE',
          pfo.rev_job_rate_sch_id, 'ALL',
          pfo.rev_job_rate_sch_id, NULL)) rev_job_rate_sch_id
          ,decode(pfo.use_planning_rates_flag,'N',null,
          decode(bv.version_type,'COST',
          pfo.cost_job_rate_sch_id, 'ALL',
          pfo.cost_job_rate_sch_id, NULL)) cost_job_rate_sch_id
          ,decode(pfo.use_planning_rates_flag,'N',null,
          decode(bv.version_type,'REVENUE',
          pfo.rev_emp_rate_sch_id, 'ALL',
          pfo.rev_emp_rate_sch_id, NULL))    rev_emp_rate_sch_id
          ,decode(pfo.use_planning_rates_flag,'N',null,
          decode(bv.version_type,'COST',
          pfo.cost_emp_rate_sch_id, 'ALL',
          pfo.cost_emp_rate_sch_id, NULL))     cost_emp_rate_sch_id
          ,decode(pfo.use_planning_rates_flag,'N',null,
          decode(bv.version_type,'REVENUE',
          pfo.rev_non_labor_res_rate_sch_id, 'ALL',
          pfo.rev_non_labor_res_rate_sch_id, NULL))
          rev_non_labor_res_rate_sch_id
          ,decode(pfo.use_planning_rates_flag,'N',null,
          decode(bv.version_type,'COST'   ,
          pfo.cost_non_labor_res_rate_sch_id,'ALL',
          pfo.cost_non_labor_res_rate_sch_id, NULL))
          cost_non_labor_res_rate_sch_id
          ,decode(pfo.use_planning_rates_flag,'N',null,
          decode(bv.version_type,'COST',
          pfo.cost_burden_rate_sch_id,'ALL',
          pfo.cost_burden_rate_sch_id, NULL))
          cost_burden_rate_sch_id
          ,bv.version_type
      FROM pa_proj_fp_options pfo,
           pa_budget_versions bv
      WHERE pfo.fin_plan_version_id = bv.budget_version_id
      AND bv.budget_version_id = p_budget_version_id;
Line: 1059

     SELECT  res_format_id
     INTO    x_res_format_id
     FROM    pa_resource_list_members
     WHERE   resource_list_member_id = p_resource_list_member_id;
Line: 1282

     SELECT etc_start_date
     INTO   x_etc_start_date
     FROM   pa_budget_versions
     WHERE  budget_version_id = p_budget_version_id
     AND    etc_start_date is not null;
Line: 1299

     SELECT (etc_start_date)-1
     INTO   x_actuals_thru_date
     FROM   pa_budget_versions
     WHERE  budget_version_id = p_budget_version_id
     AND    etc_start_date is not null;
Line: 1317

   SELECT  NVL(UNCATEGORIZED_FLAG,'N')
   INTO    x_rl_uncategorized_flag
   FROM    pa_resource_lists_all_bg
   WHERE   resource_list_id = p_resource_list_id;
Line: 1336

    SELECT    resource_list_member_id
    INTO      x_uc_res_list_rlm_id
    FROM      pa_resource_list_members
    WHERE     resource_class_code = P_RESOURCE_CLASS_CODE
    AND       object_type = 'RESOURCE_LIST'
    AND       resource_list_id = p_resource_list_id;
Line: 1357

    SELECT NVL(control_flag,'N')
    INTO l_control_flag
    FROM pa_resource_lists_all_bg
    WHERE resource_list_id = P_RESOURCE_LIST_ID;
Line: 1363

	select resource_list_member_id
               into x_rlm_id
	from pa_resource_list_members
	where object_type = 'RESOURCE_LIST'
	      and object_id = p_resource_list_id
	      and resource_list_id = p_resource_list_id
	      and resource_class_code = P_RESOURCE_CLASS_CODE
	      and RESOURCE_CLASS_FLAG='Y';
Line: 1372

	select resource_list_member_id
               into x_rlm_id
	from pa_resource_list_members
	where object_type = 'PROJECT'
	      and object_id = p_project_id
	      and resource_list_id = p_resource_list_id
	      and resource_class_code = P_RESOURCE_CLASS_CODE
	      and RESOURCE_CLASS_FLAG='Y';
Line: 1400

  *  Note that when the generation option is 'Task Level Selection', we will
  *  raise an error only when at least one of the tasks has ETC generation
  *  source as 'WORKPLAN_RESOURCES' or 'WORK_QUANTITY'.
  *2.For Forecast/Budget generation from Staffing Plan:
  *   1)Revenue versions can't be generated.
  *   2)Versions with Resource List of None can't be generated.
  * --Bug 5325254
  *3.Forecast generation from non-timephased Workplan is not supported.
  *  Note: Earlier, we restricted forecast generation from non-timephased
  *  financial plans as well. However, this restriction has been relaxed
  *  to support CDM's requirements.
  *4.Forecast/Budget generation from:
  *  ADDED FOR ER 4391321:
  *   1)Workplan and/or Financial Plan that has any rejection code in the
  *     budget lines should result in a warning or error from the UI and
  *     Concurrent Program, respectively.
  *   2)Staffing Plan that has any Forecast Items with ERROR_FLAG = 'Y'
  *     should result in a warning or error from the UI and Concurrent
  *     Program, respectively.
  *5.Forecast/Budget Generation,where Revenue Derivation Method of target
  *  is different from source, is not supported. ER: 5152892
  *PARAMETERS:
  *
  *P_CALLING_CONTEXT
  *-----------------
  *  'CONCURRENT'  : this api is being called from a Concurrent Program.
  *  'SELF_SERVICE': this api is being called from the Self-Service pages.
  *
  *Added for ER 4391321:
  *
  *P_CHECK_SRC_ERRORS_FLAG
  *-----------------------
  *  'Y': when source is FP or WP, check source budget line rejection codes.
  *       when source is Staffing Plan, check ERROR_FLAG for forecast items.
  *  'N': do not check source rejection codes or ERROR_FLAG values.
  *By default, P_CHECK_SRC_ERRORS_FLAG is 'Y'.
  *
  *X_WARNING_MESSAGE
  *----------------------
  *  NULL: P_CHECK_SRC_ERRORS_FLAG = 'N', OR
  *        P_CHECK_SRC_ERRORS_FLAG = 'Y' and source passed rejection code /
  *        ERROR_FLAG validation.
  *  Otherwise, contains the translated warning message text.
  *X_WARNING_MESSAGE will be null whenever P_CALLING_CONTEXT = 'CONCURRENT'.
  **/


PROCEDURE VALIDATE_SUPPORT_CASES
       (P_FP_COLS_REC_TGT               IN  PA_FP_GEN_AMOUNT_UTILS.FP_COLS,
        P_CALLING_CONTEXT               IN  VARCHAR2,
        P_CHECK_SRC_ERRORS_FLAG         IN  VARCHAR2,
        X_WARNING_MESSAGE               OUT NOCOPY  VARCHAR2,
        X_RETURN_STATUS                 OUT NOCOPY  VARCHAR2,
        X_MSG_COUNT                     OUT NOCOPY  NUMBER,
        X_MSG_DATA                      OUT NOCOPY  VARCHAR2)
IS
  l_module_name  VARCHAR2(200) := 'pa.plsql.PA_FP_GEN_AMOUNT_UTILS.VALIDATE_SUPPORT_CASES';
Line: 1552

                /* The version defaulting API passes updated Target version details
                 * record back as an OUT parameter. */
                PA_FP_GEN_AMOUNT_UTILS.DEFAULT_BDGT_SRC_VER
                    ( P_FP_COLS_REC_TGT  => l_fp_cols_rec_tgt,
                      P_CALLING_CONTEXT  => p_calling_context,
                      X_FP_COLS_REC_TGT  => x_fp_cols_rec_tgt,
                      X_RETURN_STATUS    => X_RETURN_STATUS,
                      X_MSG_COUNT        => X_MSG_COUNT,
                      X_MSG_DATA         => X_MSG_DATA );
Line: 1651

        SELECT COUNT(*) INTO l_count
        FROM   pa_tasks
        WHERE  project_id = l_fp_cols_rec_tgt.X_PROJECT_ID
        AND   (gen_etc_source_code = 'WORKPLAN_RESOURCES'
               OR gen_etc_source_code = 'WORK_QUANTITY')
        AND    rownum < 2;
Line: 1677

            SELECT nvl(UNCATEGORIZED_FLAG,'N')
            INTO   l_uncategorized_flag
            FROM   pa_resource_lists
            WHERE  resource_list_id = l_fp_cols_rec_tgt.X_RESOURCE_LIST_ID;
Line: 1708

                SELECT COUNT(*) INTO l_count
                FROM   pa_tasks
                WHERE  project_id = l_fp_cols_rec_tgt.X_PROJECT_ID
                AND   (gen_etc_source_code = 'WORKPLAN_RESOURCES'
                       OR gen_etc_source_code = 'WORK_QUANTITY')
                AND    rownum < 2;
Line: 1762

                SELECT COUNT(*) INTO l_count
                FROM   pa_tasks
                WHERE  project_id = l_fp_cols_rec_tgt.X_PROJECT_ID
                AND    gen_etc_source_code = 'FINANCIAL_PLAN'
                AND    rownum < 2;
Line: 1814

     * to selectively call the defaulting API based on the case introduced
     * for ER 4391254.
     * At this point, we are doing defaulting for the remainder of the API.
     * FUTURE VALIDATION CASES THAT NEED SPECIAL ORDERING WITH RESPECT TO
     * THE DEFAULTING LOGIC SHOULD BE PLACED ABOVE THIS POINT. */

    IF l_plan_class_code = 'BUDGET' THEN

        -- Try to default the source version if both the WP and FP source
        -- versions are Null and we have not done defaulting earlier.
        IF l_default_bdgt_src_ver_flag = 'Y' AND
           l_fp_cols_rec_tgt.X_GEN_SRC_WP_VERSION_ID IS NULL AND
           l_fp_cols_rec_tgt.X_GEN_SRC_PLAN_VERSION_ID IS NULL THEN

            IF p_pa_debug_mode = 'Y' THEN
                pa_fp_gen_amount_utils.fp_debug
                    (p_called_mode => p_calling_context,
                     p_msg         => 'Before calling
                                      PA_FP_GEN_AMOUNT_UTILS.DEFAULT_BDGT_SRC_VER',
                     p_module_name => l_module_name,
                     p_log_level   => 5);
Line: 1836

            /* The version defaulting API passes updated Target version details
             * record back as an OUT parameter. */
            PA_FP_GEN_AMOUNT_UTILS.DEFAULT_BDGT_SRC_VER
                ( P_FP_COLS_REC_TGT  => l_fp_cols_rec_tgt,
                  P_CALLING_CONTEXT  => p_calling_context,
                  X_FP_COLS_REC_TGT  => x_fp_cols_rec_tgt,
                  X_RETURN_STATUS    => X_RETURN_STATUS,
                  X_MSG_COUNT        => X_MSG_COUNT,
                  X_MSG_DATA         => X_MSG_DATA );
Line: 1898

                        SELECT 1 INTO l_count
                        FROM DUAL
                        WHERE EXISTS
                            ( SELECT null
                              FROM   pa_tasks
                              WHERE  project_id = l_fp_cols_rec_tgt.X_PROJECT_ID
                              AND    gen_etc_source_code IN ('WORKPLAN_RESOURCES','WORK_QUANTITY') );
Line: 1908

		    END; -- select l_count
Line: 1916

                        SELECT 1 INTO l_bl_rejection_code_count
                        FROM DUAL
                        WHERE EXISTS
                            ( SELECT null
                              FROM   pa_budget_lines
                              WHERE  budget_version_id = l_source_wp_ver_id
                              AND  ( cost_rejection_code IS NOT NULL
                                     OR revenue_rejection_code IS NOT NULL
                                     OR burden_rejection_code IS NOT NULL
                                     OR other_rejection_code IS NOT NULL
                                     OR pc_cur_conv_rejection_code IS NOT NULL
                                     OR pfc_cur_conv_rejection_code IS NOT NULL ) );
Line: 1931

		    END; -- select l_bl_rejection_code_count
Line: 1952

                        SELECT 1 INTO l_count
                        FROM DUAL
                        WHERE EXISTS
                            ( SELECT null
                              FROM   pa_tasks
                              WHERE  project_id = l_fp_cols_rec_tgt.X_PROJECT_ID
                              AND    gen_etc_source_code = 'FINANCIAL_PLAN' );
Line: 1962

		    END; -- select l_count
Line: 1970

                        SELECT 1 INTO l_bl_rejection_code_count
                        FROM DUAL
                        WHERE EXISTS
                            ( SELECT null
                              FROM   pa_budget_lines
                              WHERE  budget_version_id = l_source_fp_ver_id
                              AND  ( cost_rejection_code IS NOT NULL
                                     OR revenue_rejection_code IS NOT NULL
                                     OR burden_rejection_code IS NOT NULL
                                     OR other_rejection_code IS NOT NULL
                                     OR pc_cur_conv_rejection_code IS NOT NULL
                                     OR pfc_cur_conv_rejection_code IS NOT NULL ) );
Line: 1985

		    END; -- select l_bl_rejection_code_count
Line: 1989

                         * Task-Level Selection, both WP and FP sources may
                         * have budget lines with rejection codes. Check this. */
                        IF l_warning_message_code = lc_message_code_WP THEN
                            l_warning_message_code := lc_message_code_WPFP;
Line: 2051

                SELECT 1 INTO l_count
                FROM DUAL
                WHERE EXISTS
                    ( SELECT null
                      FROM   PA_FORECAST_ITEMS
                      WHERE  project_id = l_fp_cols_rec_tgt.X_PROJECT_ID
                      AND    error_flag = 'Y' );
Line: 2061

	    END; -- select l_count
Line: 2288

  l_update_details_flag          VARCHAR2(1);
Line: 2318

        l_update_details_flag := 'Y';
Line: 2326

                   corresponding to the work plan structure version id selected
                   as the source for the budget generation when the budget
                   generation source is Work plan. */
                SELECT project_structure_version_id
                INTO   l_wp_id
                FROM   pa_budget_versions
                WHERE  budget_version_id = l_source_id;
Line: 2402

             * Now, we need to update back to pa_proj_fp_options*/
            IF l_version_type = 'COST' THEN
                UPDATE PA_PROJ_FP_OPTIONS
                SET    GEN_SRC_COST_WP_VERSION_ID = l_source_id
                WHERE  fin_plan_version_id = P_FP_COLS_REC_TGT.X_BUDGET_VERSION_ID;
Line: 2408

                UPDATE PA_PROJ_FP_OPTIONS
                SET    GEN_SRC_ALL_WP_VERSION_ID = l_source_id
                WHERE  fin_plan_version_id = P_FP_COLS_REC_TGT.X_BUDGET_VERSION_ID;
Line: 2412

                UPDATE PA_PROJ_FP_OPTIONS
                SET    GEN_SRC_REV_WP_VERSION_ID = l_source_id
                WHERE  fin_plan_version_id = P_FP_COLS_REC_TGT.X_BUDGET_VERSION_ID;
Line: 2421

                UPDATE PA_BUDGET_VERSIONS
                SET    project_structure_version_id = l_wp_id
                WHERE  budget_version_id = P_FP_COLS_REC_TGT.X_BUDGET_VERSION_ID;
Line: 2512

             * Now, we need to update back to pa_proj_fp_options*/
            IF l_version_type = 'COST' THEN
                UPDATE PA_PROJ_FP_OPTIONS
                SET GEN_SRC_COST_PLAN_VERSION_ID = l_source_id
                WHERE fin_plan_version_id = P_FP_COLS_REC_TGT.X_BUDGET_VERSION_ID;
Line: 2518

                UPDATE PA_PROJ_FP_OPTIONS
                SET GEN_SRC_ALL_PLAN_VERSION_ID = l_source_id
                WHERE fin_plan_version_id = P_FP_COLS_REC_TGT.X_BUDGET_VERSION_ID;
Line: 2522

                UPDATE PA_PROJ_FP_OPTIONS
                SET GEN_SRC_REV_PLAN_VERSION_ID = l_source_id
                WHERE fin_plan_version_id = P_FP_COLS_REC_TGT.X_BUDGET_VERSION_ID;
Line: 2529

        /* Get updated Target version details */
        -- Currently, l_update_details_flag is always 'Y', but may change in the future.
        IF l_update_details_flag = 'Y' THEN
            IF p_pa_debug_mode = 'Y' THEN
                pa_fp_gen_amount_utils.fp_debug
                    (p_called_mode => p_calling_context,
                     p_msg         => 'Before calling
                                      PA_FP_GEN_AMOUNT_UTILS.GET_PLAN_VERSION_DTLS',
                     p_module_name => l_module_name,
                     p_log_level   => 5);
Line: 2559

        END IF; -- l_update_details_flag check