DBA Data[Home] [Help]

APPS.PA_FP_GEN_FCST_AMT_PUB3 SQL Statements

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

Line: 10

  2.Rate based flag for target resource assignment gets updated correctly before coming
  into any of ETC methods.
  3.All considered scenarios:
    Rate_based
      non multi currency enabled: use PC
      multi currency enabled
        actuals currency is subset of total currency: use TC, currency based substraction
        actuals currency is not subset of total currency: use TC, prorate ETC quantity
    Non_rate_based
      non multi currency enabled: use PC
      multi currency enabled
        actuals currency not subset of total currency: use TC, currency based substraction
        actuals currency not subset of total currency: Compute ETC quantity in PC, prorate
            this ETC quantity to different planning currencies based on PC amounts,
            convert back from PC to TC.
*/

PROCEDURE GET_ETC_REMAIN_BDGT_AMTS
          (P_SRC_RES_ASG_ID             IN PA_RESOURCE_ASSIGNMENTS.RESOURCE_ASSIGNMENT_ID%TYPE,
           P_TGT_RES_ASG_ID             IN PA_RESOURCE_ASSIGNMENTS.RESOURCE_ASSIGNMENT_ID%TYPE,
           P_FP_COLS_SRC_REC            IN PA_FP_GEN_AMOUNT_UTILS.FP_COLS,
           P_FP_COLS_TGT_REC            IN PA_FP_GEN_AMOUNT_UTILS.FP_COLS,
           P_TASK_ID                    IN PA_TASKS.TASK_ID%TYPE,
           P_RESOURCE_LIST_MEMBER_ID    IN PA_RESOURCE_LIST_MEMBERS.RESOURCE_LIST_MEMBER_ID%TYPE,
           P_ETC_SOURCE_CODE            IN PA_TASKS.GEN_ETC_SOURCE_CODE%TYPE,
           P_WP_STRUCTURE_VERSION_ID    IN PA_PROJ_ELEM_VER_STRUCTURE.ELEMENT_VERSION_ID%TYPE,
           P_ACTUALS_THRU_DATE          IN PA_PERIODS_ALL.END_DATE%TYPE,
           P_PLANNING_OPTIONS_FLAG      IN 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_FCST_AMT_PUB3.GEN_ETC_REMAIN_BDGT_AMTS';
Line: 179

        SELECT rate_based_flag
        INTO l_rate_based_flag
        FROM pa_resource_assignments
        WHERE resource_assignment_id = p_tgt_res_asg_id;
Line: 198

        SELECT COUNT(*) INTO l_currency_count_for_flag FROM (
            SELECT /*+ INDEX(act_tmp,PA_FP_FCST_GEN_TMP1_N1) INDEX(tot_tmp,PA_FP_CALC_AMT_TMP1_N1)*/
                   DISTINCT act_tmp.txn_currency_code
            FROM PA_FP_FCST_GEN_TMP1 act_tmp,
            PA_FP_CALC_AMT_TMP1 tot_tmp
            WHERE act_tmp.project_element_id = tot_tmp.task_id
            AND act_tmp.res_list_member_id = tot_tmp.resource_list_member_id
            AND tot_tmp.target_res_asg_id = p_tgt_res_asg_id
            AND data_type_code = DECODE(P_ETC_SOURCE_CODE,
                                        'WORKPLAN_RESOURCES', 'ETC_WP',
                                        'FINANCIAL_PLAN', 'ETC_FP')
            MINUS
            SELECT /*+ INDEX(PA_FP_CALC_AMT_TMP2,PA_FP_CALC_AMT_TMP2_N1)*/
                   DISTINCT txn_currency_code
            FROM PA_FP_CALC_AMT_TMP2
            WHERE target_res_asg_id = p_tgt_res_asg_id
            AND transaction_source_code = p_etc_source_code
        ) WHERE rownum = 1;
Line: 230

        SELECT  /*+ INDEX(PA_FP_CALC_AMT_TMP2,PA_FP_CALC_AMT_TMP2_N2)*/
                NVL(SUM(NVL(total_plan_quantity,0)),0),
                NVL(SUM(NVL(
                    DECODE(l_currency_flag, 'PC', total_pc_raw_cost,
                                            'PFC', total_pfc_raw_cost),0)),0),
                NVL(SUM(NVL(
                    DECODE(l_currency_flag, 'PC', total_pc_burdened_cost,
                                            'PFC', total_pfc_burdened_cost),0)),0),
                NVL(SUM(NVL(
                    DECODE(l_currency_flag, 'PC', total_pc_revenue,
                                            'PFC', total_pfc_revenue),0)),0)
        INTO    l_tot_quantity_pc_pfc,
                l_tot_raw_cost_pc_pfc,
                l_tot_brdn_cost_pc_pfc,
                l_tot_revenue_pc_pfc
        FROM PA_FP_CALC_AMT_TMP2
        WHERE resource_assignment_id = p_src_res_asg_id
        AND transaction_source_code = p_etc_source_code;
Line: 254

            SELECT /*+ INDEX(PA_FP_FCST_GEN_TMP1,PA_FP_FCST_GEN_TMP1_N1)*/
                   DECODE(l_currency_flag,
                    'PC', NVL(SUM(DECODE(l_rate_based_flag,
                        'Y', quantity,
                        'N', NVL(prj_raw_cost,0))),0),
                    'PFC', NVL(SUM(DECODE(l_rate_based_flag,
                        'Y', quantity,
                        'N', NVL(pou_raw_cost,0))),0))
            INTO l_act_quantity_pc_pfc
            FROM PA_FP_FCST_GEN_TMP1
            WHERE project_element_id = p_task_id
            AND res_list_member_id = p_resource_list_member_id
            AND data_type_code = 'ETC_FP';
Line: 337

          target resource assignmentInsert the single PC record for total ETC.*/
        SELECT  /*+ INDEX(PA_FP_CALC_AMT_TMP2,PA_FP_CALC_AMT_TMP2_N2)*/
                NVL(SUM(NVL(total_plan_quantity,0)),0),
                DECODE(l_currency_flag,
                    'PC', NVL(SUM(NVL(total_pc_raw_cost,0)),0),
                    'PFC', NVL(SUM(NVL(total_pfc_raw_cost,0)),0)),
                DECODE(l_currency_flag,
                    'PC', NVL(SUM(NVL(total_pc_burdened_cost,0)),0),
                    'PFC', NVL(SUM(NVL(total_pfc_burdened_cost,0)),0)),
                DECODE(l_currency_flag,
                    'PC', NVL(SUM(NVL(total_pc_revenue,0)),0),
                    'PFC', NVL(SUM(NVL(total_pfc_revenue,0)),0))
        INTO    l_pc_pfc_rate_quantity,
                l_pc_pfc_rate_raw_cost,
                l_pc_pfc_rate_brdn_cost,
                l_pc_pfc_rate_revenue
        FROM pa_fp_calc_amt_tmp2
        WHERE resource_assignment_id = p_src_res_asg_id
          AND transaction_source_code in ('FINANCIAL_PLAN',
                                          'WORKPLAN_RESOURCES');
Line: 372

        /*Insert single PC record
          If commitment is not included, record is inserted directly as 'ETC'
          record, if commitment is to be considered, record is inserted as
          'TOTAL_ETC' for further processing. */
        IF P_FP_COLS_TGT_REC.X_GEN_INCL_OPEN_COMM_FLAG = 'Y' THEN
            l_transaction_source_code := 'TOTAL_ETC';
Line: 382

        INSERT INTO PA_FP_CALC_AMT_TMP2 (
                RESOURCE_ASSIGNMENT_ID,
                TARGET_RES_ASG_ID,
                ETC_CURRENCY_CODE,
                ETC_PLAN_QUANTITY,
                ETC_TXN_RAW_COST,
                ETC_TXN_BURDENED_COST,
                ETC_TXN_REVENUE,
                ETC_PC_RAW_COST,
                ETC_PC_BURDENED_COST,
                ETC_PC_REVENUE,
                ETC_PFC_RAW_COST,
                ETC_PFC_BURDENED_COST,
                ETC_PFC_REVENUE,
                TRANSACTION_SOURCE_CODE)
        VALUES (
                P_SRC_RES_ASG_ID,
                P_TGT_RES_ASG_ID,
                DECODE(l_currency_flag, 'PC', l_pc_currency_code,
                                        'PFC', l_pfc_currency_code),
                l_etc_quantity_pc_pfc,
                l_etc_quantity_pc_pfc * l_pc_pfc_raw_cost_rate,
                l_etc_quantity_pc_pfc * l_pc_pfc_brdn_cost_rate,
                l_etc_quantity_pc_pfc * l_pc_pfc_revenue_rate,
                DECODE(l_currency_flag,
                    'PC', l_etc_quantity_pc_pfc * l_pc_pfc_raw_cost_rate,
                    'PFC', NULL),
                DECODE(l_currency_flag,
                    'PC', l_etc_quantity_pc_pfc * l_pc_pfc_brdn_cost_rate,
                    'PFC', NULL),
                DECODE(l_currency_flag,
                    'PC', l_etc_quantity_pc_pfc * l_pc_pfc_revenue_rate,
                    'PFC', NULL),
                DECODE(l_currency_flag,
                    'PFC', l_etc_quantity_pc_pfc * l_pc_pfc_raw_cost_rate,
                    'PC', NULL),
                DECODE(l_currency_flag,
                    'PFC', l_etc_quantity_pc_pfc * l_pc_pfc_brdn_cost_rate,
                    'PC', NULL),
                DECODE(l_currency_flag,
                    'PFC', l_etc_quantity_pc_pfc * l_pc_pfc_revenue_rate,
                    'PC', NULL),
                l_transaction_source_code);
Line: 431

        SELECT  /*+ INDEX(PA_FP_CALC_AMT_TMP2,PA_FP_CALC_AMT_TMP2_N2)*/
                txn_currency_code,
                SUM(NVL(total_plan_quantity,0)),
                SUM(NVL(total_txn_raw_cost,0)),
                SUM(NVL(total_txn_burdened_cost,0)),
                SUM(NVL(total_txn_revenue,0))
        BULK COLLECT INTO
                l_tot_currency_code_tab,
                l_tot_quantity_tab,
                l_tot_raw_cost_tab,
                l_tot_brdn_cost_tab,
                l_tot_revenue_tab
        FROM PA_FP_CALC_AMT_TMP2
        WHERE resource_assignment_id = p_src_res_asg_id
        AND transaction_source_code = p_etc_source_code
        GROUP BY txn_currency_code;
Line: 470

            SELECT  /*+ INDEX(PA_FP_FCST_GEN_TMP1,PA_FP_FCST_GEN_TMP1_N1)*/
                    txn_currency_code,
                    SUM(NVL(quantity,0)),
                    SUM(NVL(txn_raw_cost,0)),
                    SUM(NVL(txn_brdn_cost,0)),
                    SUM(NVL(txn_revenue,0))
            BULK COLLECT INTO
                    l_act_currency_code_tab,
                    l_act_quantity_tab,
                    l_act_raw_cost_tab,
                    l_act_brdn_cost_tab,
                    l_act_revenue_tab
            FROM PA_FP_FCST_GEN_TMP1
            WHERE project_element_id = p_task_id
            AND res_list_member_id = p_resource_list_member_id
            AND data_type_code = 'ETC_FP'
            GROUP BY txn_currency_code;
Line: 565

        SELECT COUNT(*)
        INTO l_currency_count_act_min_tot
        FROM (
            SELECT /*+ INDEX(PA_FP_FCST_GEN_TMP1,PA_FP_FCST_GEN_TMP1_N1)*/
                   DISTINCT txn_currency_code
            FROM PA_FP_FCST_GEN_TMP1
            WHERE project_element_id = p_task_id
            AND res_list_member_id = p_resource_list_member_id
            AND data_type_code = DECODE(P_ETC_SOURCE_CODE,
                                        'WORKPLAN_RESOURCES', 'ETC_WP',
                                        'FINANCIAL_PLAN', 'ETC_FP')
            MINUS
            SELECT /*+ INDEX(PA_FP_CALC_AMT_TMP2,PA_FP_CALC_AMT_TMP2_N2)*/
                   DISTINCT txn_currency_code
            FROM PA_FP_CALC_AMT_TMP2
            WHERE resource_assignment_id  = p_src_res_asg_id
            AND transaction_source_code = p_etc_source_code
        ) WHERE rownum = 1;
Line: 617

                                l_etc_quantity_tab.delete;
Line: 667

                SELECT  /*+ INDEX(pa_fp_calc_amt_tmp2,PA_FP_CALC_AMT_TMP2_N2)*/
                        NVL(SUM(NVL(total_plan_quantity,0)),0),
                        NVL(SUM(NVL(total_txn_raw_cost,0)),0),
                        NVL(SUM(NVL(total_txn_burdened_cost,0)),0),
                        NVL(SUM(NVL(total_txn_revenue,0)),0),
                        NVL(SUM(NVL(total_pc_raw_cost,0)),0),
                        NVL(SUM(NVL(total_pc_burdened_cost,0)),0),
                        NVL(SUM(NVL(total_pc_revenue,0)),0)
                INTO    l_txn_rate_quantity,
                        l_txn_rate_raw_cost,
                        l_txn_rate_brdn_cost,
                        l_txn_rate_revenue,
                        l_pc_rate_raw_cost,
                        l_pc_rate_brdn_cost,
                        l_pc_rate_revenue
                FROM pa_fp_calc_amt_tmp2
                WHERE resource_assignment_id = p_src_res_asg_id
                AND txn_currency_code = l_tot_currency_code_tab(i)
                AND transaction_source_code in ('FINANCIAL_PLAN',
                                                'WORKPLAN_RESOURCES');
Line: 715

            /*Bulk insert
              If commitment is not included, record is inserted directly as 'ETC'
              record, if commitment is to be considered, record is inserted as
              'TOTAL_ETC' for further processing. */
            IF P_FP_COLS_TGT_REC.X_GEN_INCL_OPEN_COMM_FLAG = 'Y' THEN
                l_transaction_source_code := 'TOTAL_ETC';
Line: 725

                INSERT INTO PA_FP_CALC_AMT_TMP2 (
                    RESOURCE_ASSIGNMENT_ID,
                    TARGET_RES_ASG_ID,
                    ETC_CURRENCY_CODE,
                    ETC_PLAN_QUANTITY,
                    ETC_TXN_RAW_COST,
                    ETC_TXN_BURDENED_COST,
                    ETC_TXN_REVENUE,
                    ETC_PC_RAW_COST,
                    ETC_PC_BURDENED_COST,
                    ETC_PC_REVENUE,
                    TRANSACTION_SOURCE_CODE )
                VALUES (
                    P_SRC_RES_ASG_ID,
                    P_TGT_RES_ASG_ID,
                    l_tot_currency_code_tab(i),
                    l_etc_quantity_tab(i),
                    l_etc_quantity_tab(i) * l_txn_raw_cost_rate_tab(i),
                    l_etc_quantity_tab(i) * l_txn_brdn_cost_rate_tab(i),
                    l_etc_quantity_tab(i) * l_txn_revenue_rate_tab(i),
                    l_etc_quantity_tab(i) * l_pc_raw_cost_rate_tab(i),
                    l_etc_quantity_tab(i) * l_pc_brdn_cost_rate_tab(i),
                    l_etc_quantity_tab(i) * l_pc_revenue_rate_tab(i),
                    l_transaction_source_code);
Line: 759

        SELECT  /*+ INDEX(PA_FP_CALC_AMT_TMP2,PA_FP_CALC_AMT_TMP2_N2)*/
                txn_currency_code,
                SUM(NVL(total_plan_quantity,0)),
                SUM(NVL(total_pc_raw_cost,0)),
                SUM(NVL(total_pc_burdened_cost,0)),
                SUM(NVL(total_pc_revenue,0))
        BULK COLLECT INTO
                l_tot_currency_code_tab,
                l_tot_quantity_pc_tab,
                l_tot_raw_cost_pc_tab,
                l_tot_brdn_cost_pc_tab,
                l_tot_revenue_pc_tab
        FROM PA_FP_CALC_AMT_TMP2
        WHERE resource_assignment_id = p_src_res_asg_id
        AND transaction_source_code = p_etc_source_code
        GROUP BY txn_currency_code;
Line: 788

            SELECT  /*+ INDEX(PA_FP_FCST_GEN_TMP1,PA_FP_FCST_GEN_TMP1_N1)*/
                    NVL(SUM( DECODE(l_rate_based_flag,
                    'Y', NVL(quantity,0),
                    'N', NVL(prj_raw_cost,0))),0)
            INTO    l_act_quantity_pc_sum
            FROM PA_FP_FCST_GEN_TMP1
            WHERE project_element_id = p_task_id
            AND res_list_member_id = p_resource_list_member_id
            AND data_type_code = 'ETC_FP';
Line: 872

                    SELECT task_id,
                           planning_start_date
                    INTO l_task_id,
                         l_planning_start_date
                    FROM pa_resource_assignments
                    WHERE resource_assignment_id = p_src_res_asg_id;
Line: 926

                       SELECT name INTO g_project_name from
                       PA_PROJECTS_ALL WHERE
                       project_id = p_fp_cols_tgt_rec.x_project_id;
Line: 962

            SELECT  /*+ INDEX(PA_FP_CALC_AMT_TMP2,PA_FP_CALC_AMT_TMP2_N2)*/
                    NVL(SUM(NVL(total_plan_quantity,0)),0),
                    NVL(SUM(NVL(total_txn_raw_cost,0)),0),
                    NVL(SUM(NVL(total_txn_burdened_cost,0)),0),
                    NVL(SUM(NVL(total_txn_revenue,0)),0),
                    NVL(SUM(NVL(total_pc_raw_cost,0)),0),
                    NVL(SUM(NVL(total_pc_burdened_cost,0)),0),
                    NVL(SUM(NVL(total_pc_revenue,0)),0)
            INTO    l_txn_rate_quantity,
                    l_txn_rate_raw_cost,
                    l_txn_rate_brdn_cost,
                    l_txn_rate_revenue,
                    l_pc_rate_raw_cost,
                    l_pc_rate_brdn_cost,
                    l_pc_rate_revenue
            FROM pa_fp_calc_amt_tmp2
            WHERE resource_assignment_id = p_src_res_asg_id
            AND txn_currency_code = l_tot_currency_code_tab(i)
            AND transaction_source_code in ('FINANCIAL_PLAN' ,
                                            'WORKPLAN_RESOURCES');
Line: 1006

        /* Bulk insert
           If commitment is not included, record is inserted directly as 'ETC'
           record,if commitment is to be considered, record is inserted as
           'TOTAL_ETC' for further processing.*/
        IF P_FP_COLS_TGT_REC.X_GEN_INCL_OPEN_COMM_FLAG = 'Y' THEN
            l_transaction_source_code := 'TOTAL_ETC';
Line: 1017

            INSERT INTO PA_FP_CALC_AMT_TMP2 (
                RESOURCE_ASSIGNMENT_ID,
                TARGET_RES_ASG_ID,
                ETC_CURRENCY_CODE,
                ETC_PLAN_QUANTITY,
                ETC_TXN_RAW_COST,
                ETC_TXN_BURDENED_COST,
                ETC_TXN_REVENUE,
                ETC_PC_RAW_COST,
                ETC_PC_BURDENED_COST,
                ETC_PC_REVENUE,
                TRANSACTION_SOURCE_CODE )
            VALUES (
                P_SRC_RES_ASG_ID,
                P_TGT_RES_ASG_ID,
                l_tot_currency_code_tab(i),
                l_etc_quantity_tab(i),
                l_etc_quantity_tab(i) * l_txn_raw_cost_rate_tab(i),
                l_etc_quantity_tab(i) * l_txn_brdn_cost_rate_tab(i),
                l_etc_quantity_tab(i) * l_txn_revenue_rate_tab(i),
                l_etc_quantity_tab(i) * l_pc_raw_cost_rate_tab(i),
                l_etc_quantity_tab(i) * l_pc_brdn_cost_rate_tab(i),
                l_etc_quantity_tab(i) * l_pc_revenue_rate_tab(i),
                l_transaction_source_code);
Line: 1128

    SELECT COUNT(*) INTO l_currency_count_for_flag FROM (
        SELECT /*+ INDEX(tot_tmp,PA_FP_CALC_AMT_TMP2_N1)*/
               DISTINCT txn_currency_code
        FROM PA_FP_CALC_AMT_TMP2
        WHERE target_res_asg_id = p_tgt_res_asg_id
        AND (transaction_source_code = 'FINANCIAL_PLAN'
        OR transaction_source_code = 'WORKPLAN_RESOURCES'
        OR transaction_source_code = 'COMMITMENT')
        UNION
        SELECT /*+ INDEX(tot_tmp,PA_FP_CALC_AMT_TMP2_N1)*/
               DISTINCT act_tmp.txn_currency_code
        FROM PA_FP_FCST_GEN_TMP1 act_tmp,
             PA_FP_CALC_AMT_TMP2 tot_tmp
        WHERE act_tmp.source_id = tot_tmp.resource_assignment_id
        AND tot_tmp.target_res_asg_id = p_tgt_res_asg_id
    ) WHERE rownum <= 2;
Line: 1209

   user can't select include commitment option from the UI.
   3.No matter for cost, revenue or all forecast version, always pick up cost/revenue rate
   from the source whenever applicable. */

/* Bug 4369741: Replaced single planning options flag parameter with
 * 2 separate parameters - 1 for Workplan and 1 for Financial Plan. */

PROCEDURE GET_ETC_COMMITMENT_AMTS
          (P_FP_COLS_TGT_REC            IN PA_FP_GEN_AMOUNT_UTILS.FP_COLS,
           P_WP_PLANNING_OPTIONS_FLAG   IN VARCHAR2, /* Added for Bug 4369741 */
           P_FP_PLANNING_OPTIONS_FLAG   IN VARCHAR2, /* Added for Bug 4369741 */
           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_FCST_AMT_PUB3.GEN_ETC_COMMITMENT_AMTS';
Line: 1340

  SELECT DISTINCT target_res_asg_id,
                  resource_assignment_id
  FROM PA_FP_CALC_AMT_TMP2
  WHERE TRANSACTION_SOURCE_CODE = 'TOTAL_ETC';
Line: 1356

  SELECT DISTINCT target_res_asg_id,
                  NULL
  FROM PA_FP_CALC_AMT_TMP2
  WHERE TRANSACTION_SOURCE_CODE = 'TOTAL_ETC';
Line: 1368

  SELECT /*+ INDEX(tmp,PA_FP_CALC_AMT_TMP1_N1)*/
	 DISTINCT tmp.target_res_asg_id tgt_res_asg_id,
                  tmp.resource_assignment_id src_res_asg_id
  FROM PA_FP_CALC_AMT_TMP1 tmp_ra,
       PA_FP_CALC_AMT_TMP2 tmp
  WHERE tmp.TRANSACTION_SOURCE_CODE = 'TOTAL_ETC'
  AND   tmp_ra.target_res_asg_id = tmp.target_res_asg_id
  AND   tmp_ra.transaction_source_code = 'WORKPLAN_RESOURCES'
  UNION ALL
  SELECT /*+ INDEX(tmp,PA_FP_CALC_AMT_TMP1_N1)*/
	 DISTINCT tmp.target_res_asg_id tgt_res_asg_id,
                  NULL src_res_asg_id
  FROM PA_FP_CALC_AMT_TMP1 tmp_ra,
       PA_FP_CALC_AMT_TMP2 tmp
  WHERE tmp.TRANSACTION_SOURCE_CODE = 'TOTAL_ETC'
  AND   tmp_ra.target_res_asg_id = tmp.target_res_asg_id
  AND   tmp_ra.transaction_source_code = 'FINANCIAL_PLAN';
Line: 1393

  SELECT /*+ INDEX(tmp,PA_FP_CALC_AMT_TMP1_N1)*/
	 DISTINCT tmp.target_res_asg_id tgt_res_asg_id,
                  tmp.resource_assignment_id src_res_asg_id
  FROM PA_FP_CALC_AMT_TMP1 tmp_ra,
       PA_FP_CALC_AMT_TMP2 tmp
  WHERE tmp.TRANSACTION_SOURCE_CODE = 'TOTAL_ETC'
  AND   tmp_ra.target_res_asg_id = tmp.target_res_asg_id
  AND   tmp_ra.transaction_source_code = 'FINANCIAL_PLAN'
  UNION ALL
  SELECT /*+ INDEX(tmp,PA_FP_CALC_AMT_TMP1_N1)*/
	 DISTINCT tmp.target_res_asg_id tgt_res_asg_id,
                  NULL src_res_asg_id
  FROM PA_FP_CALC_AMT_TMP1 tmp_ra,
       PA_FP_CALC_AMT_TMP2 tmp
  WHERE tmp.TRANSACTION_SOURCE_CODE = 'TOTAL_ETC'
  AND   tmp_ra.target_res_asg_id = tmp.target_res_asg_id
  AND   tmp_ra.transaction_source_code = 'WORKPLAN_RESOURCES';
Line: 1438

     * is Task Level Selection, check both P_WP_PLANNING_OPTIONS_FLAG
     * and P_FP_PLANNING_OPTIONS_FLAG. */

    IF P_FP_COLS_TGT_REC.x_gen_etc_src_code = 'FINANCIAL_PLAN' THEN
        IF P_FP_PLANNING_OPTIONS_FLAG = 'Y' THEN
	    OPEN  src_tgt_cur_wp_fp_opt_same;
Line: 1534

      SELECT /*+ INDEX(PA_FP_CALC_AMT_TMP2,PA_FP_CALC_AMT_TMP2_N1)*/ COUNT(*)
      INTO l_cmt_count
      FROM PA_FP_CALC_AMT_TMP2
      WHERE target_res_asg_id = l_tgt_res_asg_id_tab(i)
      AND transaction_source_code = 'OPEN_COMMITMENTS'
      AND rownum = 1;
Line: 1542

         simply update the temp table from total_etc records to net etc records. */
      IF l_cmt_count = 0 THEN
        UPDATE /*+ INDEX(PA_FP_CALC_AMT_TMP2,PA_FP_CALC_AMT_TMP2_N1)*/ PA_FP_CALC_AMT_TMP2
        SET transaction_source_code = 'ETC'
        WHERE target_res_asg_id = l_tgt_res_asg_id_tab(i)
        AND transaction_source_code = 'TOTAL_ETC';
Line: 1549

        l_etc_currency_code_tab.delete;
Line: 1550

        l_etc_quantity_tab.delete;
Line: 1552

        l_cmt_currency_code_tab.delete;
Line: 1553

        l_cmt_quantity_tab.delete;
Line: 1554

        l_cmt_raw_cost_tab.delete;
Line: 1555

        l_cmt_brdn_cost_tab.delete;
Line: 1557

        l_etc_noncmt_quantity_tab.delete;
Line: 1558

        l_etc_noncmt_raw_cost_tab.delete;
Line: 1559

        l_etc_noncmt_brdn_cost_tab.delete;
Line: 1561

        l_etc_quantity_pc_tab.delete;
Line: 1562

        l_etc_raw_cost_pc_tab.delete;
Line: 1563

        l_etc_brdn_cost_pc_tab.delete;
Line: 1565

        l_cmt_quantity_pc_tab.delete;
Line: 1566

        l_cmt_raw_cost_pc_tab.delete;
Line: 1567

        l_cmt_brdn_cost_pc_tab.delete;
Line: 1569

        l_etc_noncmt_quantity_pc_tab.delete;
Line: 1570

        l_etc_noncmt_raw_cost_pc_tab.delete;
Line: 1571

        l_etc_noncmt_brdn_cost_pc_tab.delete;
Line: 1573

        l_txn_raw_cost_rate_tab.delete;
Line: 1574

        l_txn_brdn_cost_rate_tab.delete;
Line: 1587

            SELECT rate_based_flag
            INTO l_rate_based_flag
            FROM pa_resource_assignments
            WHERE resource_assignment_id = l_tgt_res_asg_id_tab(i);
Line: 1605

            SELECT /*+ INDEX(PA_FP_CALC_AMT_TMP2,PA_FP_CALC_AMT_TMP2_N1)*/
                   COUNT(*) INTO l_currency_count_for_flag FROM (
                SELECT DISTINCT txn_currency_code
                FROM PA_FP_CALC_AMT_TMP2
                WHERE target_res_asg_id = l_tgt_res_asg_id_tab(i)
                AND transaction_source_code = 'OPEN_COMMITMENTS'
                MINUS
                SELECT /*+ INDEX(PA_FP_CALC_AMT_TMP2,PA_FP_CALC_AMT_TMP2_N1)*/
                       DISTINCT etc_currency_code
                FROM PA_FP_CALC_AMT_TMP2
                WHERE target_res_asg_id = l_tgt_res_asg_id_tab(i)
                AND transaction_source_code = 'TOTAL_ETC'
            ) WHERE rownum = 1;
Line: 1627

            SELECT /*+ INDEX(PA_FP_CALC_AMT_TMP2,PA_FP_CALC_AMT_TMP2_N1)*/
                   NVL(SUM(ETC_PLAN_QUANTITY),0)
            INTO  l_etc_quantity_pc_pfc
            FROM PA_FP_CALC_AMT_TMP2
            WHERE target_res_asg_id = l_tgt_res_asg_id_tab(i)
            AND TRANSACTION_SOURCE_CODE = 'TOTAL_ETC';
Line: 1635

            SELECT  /*+ INDEX(PA_FP_CALC_AMT_TMP2,PA_FP_CALC_AMT_TMP2_N1)*/
                    NVL(SUM(NVL(total_plan_quantity,0)),0),
                    DECODE(l_currency_flag,
                        'PC', NVL(SUM(NVL(total_pc_raw_cost,0)),0),
                        'PFC', NVL(SUM(NVL(total_pfc_raw_cost,0)),0)),
                    DECODE(l_currency_flag,
                        'PC', NVL(SUM(NVL(total_pc_burdened_cost,0)),0),
                        'PFC', NVL(SUM(NVL(total_pfc_burdened_cost,0)),0))
            INTO    l_cmt_quantity_pc_pfc,
                    l_cmt_raw_cost_pc_pfc,
                    l_cmt_brdn_cost_pc_pfc
            FROM PA_FP_CALC_AMT_TMP2
            WHERE target_res_asg_id = l_tgt_res_asg_id_tab(i)
            AND transaction_source_code = 'OPEN_COMMITMENTS';
Line: 1674

                SELECT  /*+ INDEX(PA_FP_CALC_AMT_TMP2,PA_FP_CALC_AMT_TMP2_N1)*/
                        NVL(SUM(NVL(etc_plan_quantity,0)),0),
                        NVL(SUM(DECODE(l_currency_flag,
                                'PC', NVL(etc_pc_raw_cost,0),
                                'PFC', NVL(etc_pfc_raw_cost,0))),0),
                        NVL(SUM(DECODE(l_currency_flag,
                                'PC', NVL(etc_pc_burdened_cost,0),
                                'PFC', NVL(etc_pfc_burdened_cost,0))),0),
                        NVL(SUM(DECODE(l_currency_flag,
                                'PC', NVL(etc_pc_revenue,0),
                                'PFC', NVL(etc_pfc_revenue,0))),0)
                INTO    l_pc_pfc_rate_quantity,
                        l_pc_pfc_rate_raw_cost,
                        l_pc_pfc_rate_brdn_cost,
                        l_pc_pfc_rate_revenue
                FROM pa_fp_calc_amt_tmp2
                WHERE target_res_asg_id = l_tgt_res_asg_id_tab(i)
                  AND transaction_source_code  = 'TOTAL_ETC';
Line: 1732

                /* Insert the single PC record for total ETC with source rates */
                INSERT INTO PA_FP_CALC_AMT_TMP2 (
                    TARGET_RES_ASG_ID,
                    ETC_CURRENCY_CODE,
                    ETC_PLAN_QUANTITY,
                    ETC_TXN_RAW_COST,
                    ETC_TXN_BURDENED_COST,
                    ETC_TXN_REVENUE,
                    TRANSACTION_SOURCE_CODE,
                    TXN_CURRENCY_CODE, -- Added for Bug 5203622
                    RESOURCE_ASSIGNMENT_ID) -- added for bug 5359863
                VALUES (
                    l_tgt_res_asg_id_tab(i),
                    DECODE(l_currency_flag, 'PC',l_pc_currency_code,
                                            'PFC', l_pfc_currency_code),
                    l_etc_noncmt_quantity_pc_pfc,
                    l_etc_noncmt_quantity_pc_pfc * l_pc_pfc_raw_cost_rate,
                    l_etc_noncmt_quantity_pc_pfc * l_pc_pfc_brdn_cost_rate,
                    l_etc_noncmt_quantity_pc_pfc * l_pc_pfc_revenue_rate,
                    'ETC',
                    l_other_rej_code,  -- Added for Bug 5203622
                    l_src_res_asg_id_tab(i)); -- added for bug 5359863
Line: 1759

            SELECT  /*+ INDEX(PA_FP_CALC_AMT_TMP2,PA_FP_CALC_AMT_TMP2_N1)*/
                    etc_currency_code,
                    SUM(NVL(ETC_PLAN_QUANTITY,0))
            BULK COLLECT INTO
                    l_etc_currency_code_tab,
                    l_etc_quantity_tab
            FROM    PA_FP_CALC_AMT_TMP2
            WHERE   target_res_asg_id = l_tgt_res_asg_id_tab(i)
            AND     TRANSACTION_SOURCE_CODE = 'TOTAL_ETC'
            GROUP BY etc_currency_code;
Line: 1783

            SELECT  /*+ INDEX(PA_FP_CALC_AMT_TMP2,PA_FP_CALC_AMT_TMP2_N1)*/
                    txn_currency_code,
                    SUM(NVL(total_plan_quantity,0)),
                    SUM(NVL(total_txn_raw_cost,0)),
                    SUM(NVL(total_txn_burdened_cost,0))
            BULK COLLECT INTO
                    l_cmt_currency_code_tab,
                    l_cmt_quantity_tab,
                    l_cmt_raw_cost_tab,
                    l_cmt_brdn_cost_tab
            FROM PA_FP_CALC_AMT_TMP2
            WHERE target_res_asg_id = l_tgt_res_asg_id_tab(i)
            AND transaction_source_code = 'OPEN_COMMITMENTS'
            GROUP BY txn_currency_code;
Line: 1819

            SELECT COUNT (*) INTO l_currency_count_cmt_min_tot
            FROM (
                SELECT /*+ INDEX(PA_FP_CALC_AMT_TMP2,PA_FP_CALC_AMT_TMP2_N1)*/
                       DISTINCT txn_currency_code
                FROM PA_FP_CALC_AMT_TMP2
                WHERE target_res_asg_id = l_tgt_res_asg_id_tab(i)
                AND transaction_source_code = 'OPEN_COMMITMENTS'
                MINUS
                SELECT /*+ INDEX(PA_FP_CALC_AMT_TMP2,PA_FP_CALC_AMT_TMP2_N1)*/
                       DISTINCT etc_currency_code
                FROM PA_FP_CALC_AMT_TMP2
                WHERE target_res_asg_id = l_tgt_res_asg_id_tab(i)
                AND transaction_source_code = 'TOTAL_ETC'
            );
Line: 1873

                                    l_etc_noncmt_quantity_tab.delete;
Line: 1920

                    SELECT  /*+ INDEX(PA_FP_CALC_AMT_TMP2,PA_FP_CALC_AMT_TMP2_N1)*/
                            NVL(SUM(NVL(etc_plan_quantity,0)),0),
                            NVL(SUM(NVL(etc_txn_raw_cost,0)),0),
                            NVL(SUM(NVL(etc_txn_burdened_cost,0)),0),
                            NVL(SUM(NVL(etc_txn_revenue,0)),0)
                    INTO    l_txn_rate_quantity,
                            l_txn_rate_raw_cost,
                            l_txn_rate_brdn_cost,
                            l_txn_rate_revenue
                    FROM pa_fp_calc_amt_tmp2
                    WHERE target_res_asg_id = l_tgt_res_asg_id_tab(i)
                    AND etc_currency_code = l_etc_currency_code_tab(k)
                    AND transaction_source_code = 'TOTAL_ETC';
Line: 1978

                /* Bulk insert for the ETC amounts for current target resource
                   assignment with source rates */
                FORALL k IN 1..l_etc_currency_code_tab.count
                    INSERT INTO PA_FP_CALC_AMT_TMP2 (
                        TARGET_RES_ASG_ID,
                        ETC_CURRENCY_CODE,
                        ETC_PLAN_QUANTITY,
                        ETC_TXN_RAW_COST,
                        ETC_TXN_BURDENED_COST,
                        ETC_TXN_REVENUE,
                        TRANSACTION_SOURCE_CODE,
                        RESOURCE_ASSIGNMENT_ID,
                        TXN_CURRENCY_CODE ) -- Added for Bug 5203622
                    VALUES (
                        l_tgt_res_asg_id_tab(i),
                        l_etc_currency_code_tab(k),
                        l_etc_noncmt_quantity_tab(k),
                        l_etc_noncmt_quantity_tab(k) * l_txn_raw_cost_rate_tab(k),
                        l_etc_noncmt_quantity_tab(k) * l_txn_brdn_cost_rate_tab(k),
                        l_etc_noncmt_quantity_tab(k) * l_txn_revenue_rate_tab(k),
                        'ETC',
                        l_src_res_asg_id_tab(i),
                        l_other_rej_code_tab(k) ); -- Added for Bug 5203622
Line: 2011

            SELECT  /*+ INDEX(PA_FP_CALC_AMT_TMP2,PA_FP_CALC_AMT_TMP2_N1)*/
                    etc_currency_code,
                    SUM(NVL(etc_plan_quantity,0)),
                    SUM(NVL(etc_pc_raw_cost,0)),
                    SUM(NVL(etc_pc_burdened_cost,0)),
                    SUM(NVL(etc_pc_revenue,0)) -- Added in IPM
            BULK COLLECT INTO
                    l_etc_currency_code_tab,
                    l_etc_quantity_pc_tab,
                    l_etc_raw_cost_pc_tab,
                    l_etc_brdn_cost_pc_tab,
                    l_etc_revenue_pc_tab -- Added in IPM
            FROM PA_FP_CALC_AMT_TMP2
            WHERE target_res_asg_id = l_tgt_res_asg_id_tab(i)
            AND transaction_source_code = 'TOTAL_ETC'
            GROUP BY etc_currency_code;
Line: 2052

            SELECT  /*+ INDEX(PA_FP_CALC_AMT_TMP2,PA_FP_CALC_AMT_TMP2_N1)*/
                    txn_currency_code,
                    SUM(NVL(total_plan_quantity,0)),
                    SUM(NVL(total_pc_raw_cost,0)),
                    SUM(NVL(total_pc_burdened_cost,0))
            BULK COLLECT INTO
                    l_cmt_currency_code_tab,
                    l_cmt_quantity_pc_tab,
                    l_cmt_raw_cost_pc_tab,
                    l_cmt_brdn_cost_pc_tab
            FROM PA_FP_CALC_AMT_TMP2
            WHERE target_res_asg_id = l_tgt_res_asg_id_tab(i)
            AND transaction_source_code = 'OPEN_COMMITMENTS'
            GROUP BY txn_currency_code;
Line: 2104

                            SELECT  task_id,
                                    planning_start_date
                            INTO    l_task_id,
                                    l_planning_start_date
                            FROM    pa_resource_assignments
                            WHERE   resource_assignment_id = l_tgt_res_asg_id_tab(i);
Line: 2171

                    SELECT  /*+ INDEX(pa_fp_calc_amt_tmp2,PA_FP_CALC_AMT_TMP2_N1)*/
                            NVL(SUM(NVL(etc_plan_quantity,0)),0),
                            NVL(SUM(NVL(etc_txn_raw_cost,0)),0),
                            NVL(SUM(NVL(etc_txn_burdened_cost,0)),0),
                            NVL(SUM(NVL(etc_txn_revenue,0)),0)
                    INTO    l_txn_rate_quantity,
                            l_txn_rate_raw_cost,
                            l_txn_rate_brdn_cost,
                            l_txn_rate_revenue
                    FROM pa_fp_calc_amt_tmp2
                    WHERE target_res_asg_id = l_tgt_res_asg_id_tab(i)
                    AND etc_currency_code = l_etc_currency_code_tab(k)
                    AND transaction_source_code = 'TOTAL_ETC';
Line: 2227

                /* Bulk insert */
                FORALL k IN 1..l_etc_noncmt_quantity_tab.count
                    INSERT INTO PA_FP_CALC_AMT_TMP2 (
                        TARGET_RES_ASG_ID,
                        ETC_CURRENCY_CODE,
                        ETC_PLAN_QUANTITY,
                        ETC_TXN_RAW_COST,
                        ETC_TXN_BURDENED_COST,
                        ETC_TXN_REVENUE,
                        TRANSACTION_SOURCE_CODE,
                        RESOURCE_ASSIGNMENT_ID,
                        TXN_CURRENCY_CODE ) -- Added for Bug 5203622
                    VALUES (
                        l_tgt_res_asg_id_tab(i),
                        l_etc_currency_code_tab(k),
                        l_etc_noncmt_quantity_tab(k),
                        l_etc_noncmt_quantity_tab(k) * l_txn_raw_cost_rate_tab(k),
                        l_etc_noncmt_quantity_tab(k) * l_txn_brdn_cost_rate_tab(k),
                        l_etc_noncmt_quantity_tab(k) * l_txn_revenue_rate_tab(k),
                        'ETC',
                        l_src_res_asg_id_tab(i),
                        l_other_rej_code_tab(k) ); -- Added for Bug 5203622
Line: 2314

  2.Rate based flag for target resource assignment gets updated correctly before coming
  into any of ETC methods.
  3.All considered scenarios:
    Rate_based
      non multi currency enabled: use PC
      multi currency enabled
        actuals currency is subset of total currency: use TC, currency based substraction
        actuals currency is not subset of total currency: use TC, prorate ETC quantity
    Non_rate_based
      non multi currency enabled: use PC
      multi currency enabled
        actuals currency not subset of total currency: use TC, currency based substraction
        actuals currency not subset of total currency: Compute ETC quantity in PC, prorate
            this ETC quantity to different planning currencies based on PC amounts,
            convert back from PC to TC.
*/
PROCEDURE GET_ETC_REMAIN_BDGT_AMTS_BLK
          (P_SRC_RES_ASG_ID_TAB        IN  PA_PLSQL_DATATYPES.IdTabTyp,
           P_TGT_RES_ASG_ID_TAB        IN  PA_PLSQL_DATATYPES.IdTabTyp,
           P_FP_COLS_SRC_REC_FP        IN  PA_FP_GEN_AMOUNT_UTILS.FP_COLS,
           P_FP_COLS_SRC_REC_WP        IN  PA_FP_GEN_AMOUNT_UTILS.FP_COLS,
           P_FP_COLS_TGT_REC           IN  PA_FP_GEN_AMOUNT_UTILS.FP_COLS,
           P_TASK_ID_TAB               IN  PA_PLSQL_DATATYPES.IdTabTyp,
           P_RES_LIST_MEMBER_ID_TAB    IN  PA_PLSQL_DATATYPES.IdTabTyp,
           P_ETC_SOURCE_CODE_TAB       IN  PA_PLSQL_DATATYPES.Char30TabTyp,
           P_WP_STRUCTURE_VERSION_ID   IN  PA_PROJ_ELEM_VER_STRUCTURE.ELEMENT_VERSION_ID%TYPE,
           P_ACTUALS_THRU_DATE         IN  PA_PERIODS_ALL.END_DATE%TYPE,
           P_PLANNING_OPTIONS_FLAG     IN  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_FCST_AMT_PUB3.GEN_ETC_REMAIN_BDGT_AMTS_BLK';
Line: 2531

        /* Delete pl/sql tables for the current task being processed. */
        l_tot_currency_code_tab.delete;
Line: 2533

        l_tot_quantity_tab.delete;
Line: 2534

        l_tot_raw_cost_tab.delete;
Line: 2535

        l_tot_brdn_cost_tab.delete;
Line: 2536

        l_tot_revenue_tab.delete;
Line: 2538

        l_act_currency_code_tab.delete;
Line: 2539

        l_act_quantity_tab.delete;
Line: 2540

        l_act_raw_cost_tab.delete;
Line: 2541

        l_act_brdn_cost_tab.delete;
Line: 2542

        l_act_revenue_tab.delete;
Line: 2544

        l_tot_quantity_pc_tab.delete;
Line: 2545

        l_tot_raw_cost_pc_tab.delete;
Line: 2546

        l_tot_brdn_cost_pc_tab.delete;
Line: 2547

        l_tot_revenue_pc_tab.delete;
Line: 2548

        l_etc_quantity_pc_tab.delete;
Line: 2550

        l_txn_raw_cost_rate_tab.delete;
Line: 2551

        l_txn_brdn_cost_rate_tab.delete;
Line: 2552

        l_txn_revenue_rate_tab.delete;
Line: 2553

        l_pc_raw_cost_rate_tab.delete;
Line: 2554

        l_pc_brdn_cost_rate_tab.delete;
Line: 2555

        l_pc_revenue_rate_tab.delete;
Line: 2558

        l_etc_quantity_tab.delete;
Line: 2570

            SELECT rate_based_flag
            INTO l_rate_based_flag
            FROM pa_resource_assignments
            WHERE resource_assignment_id = l_tgt_res_asg_id;
Line: 2587

            SELECT COUNT(*) INTO l_currency_count_for_flag FROM (
                SELECT /*+ INDEX(act_tmp,PA_FP_FCST_GEN_TMP1_N1) INDEX(tot_tmp,PA_FP_CALC_AMT_TMP1_N1)*/
                       DISTINCT act_tmp.txn_currency_code
                FROM PA_FP_FCST_GEN_TMP1 act_tmp,
                PA_FP_CALC_AMT_TMP1 tot_tmp
                WHERE act_tmp.project_element_id = tot_tmp.task_id
                AND act_tmp.res_list_member_id = tot_tmp.resource_list_member_id
                AND tot_tmp.target_res_asg_id = l_tgt_res_asg_id
                AND data_type_code = DECODE(L_ETC_SOURCE_CODE,
                                            'WORKPLAN_RESOURCES', 'ETC_WP',
                                            'FINANCIAL_PLAN', 'ETC_FP')
                MINUS
                SELECT /*+ INDEX(PA_FP_CALC_AMT_TMP2,PA_FP_CALC_AMT_TMP2_N1)*/
                       DISTINCT txn_currency_code
                FROM PA_FP_CALC_AMT_TMP2
                WHERE target_res_asg_id = l_tgt_res_asg_id
                AND transaction_source_code = l_etc_source_code
            ) WHERE rownum = 1;
Line: 2626

            SELECT  /*+ INDEX(PA_FP_CALC_AMT_TMP2,PA_FP_CALC_AMT_TMP2_N2)*/
                    NVL(SUM(NVL(total_plan_quantity,0)),0),
                    NVL(SUM(NVL(
                        DECODE(l_currency_flag, 'PC', total_pc_raw_cost,
                                                'PFC', total_pfc_raw_cost),0)),0),
                    NVL(SUM(NVL(
                        DECODE(l_currency_flag, 'PC', total_pc_burdened_cost,
                                                'PFC', total_pfc_burdened_cost),0)),0),
                    NVL(SUM(NVL(
                        DECODE(l_currency_flag, 'PC', total_pc_revenue,
                                                'PFC', total_pfc_revenue),0)),0)
            INTO    l_tot_quantity_pc_pfc,
                    l_tot_raw_cost_pc_pfc,
                    l_tot_brdn_cost_pc_pfc,
                    l_tot_revenue_pc_pfc
            FROM PA_FP_CALC_AMT_TMP2
            WHERE resource_assignment_id = l_src_res_asg_id
            AND transaction_source_code = l_etc_source_code;
Line: 2670

                SELECT /*+ INDEX(PA_FP_FCST_GEN_TMP1,PA_FP_FCST_GEN_TMP1_N1)*/
                       DECODE(l_currency_flag,
                        'PC', NVL(SUM(DECODE(l_rate_based_flag,
                            'Y', quantity,
                            'N', NVL(prj_raw_cost,0))),0),
                        'PFC', NVL(SUM(DECODE(l_rate_based_flag,
                            'Y', quantity,
                            'N', NVL(pou_raw_cost,0))),0)),
                       DECODE(l_currency_flag,  -- Added for Bug 5203622
                        'PC',  NVL(SUM(NVL(prj_raw_cost,0)),0),
                        'PFC', NVL(SUM(NVL(pou_raw_cost,0)),0))
                INTO l_act_quantity_pc_pfc,
                     l_act_raw_cost_pc_pfc  -- Added for Bug 5203622
                FROM PA_FP_FCST_GEN_TMP1
                WHERE project_element_id = l_curr_task_id
                AND res_list_member_id = l_resource_list_member_id
                AND data_type_code = 'ETC_FP';
Line: 2770

              target resource assignmentInsert the single PC record for total ETC.*/
            SELECT  /*+ INDEX(PA_FP_CALC_AMT_TMP2,PA_FP_CALC_AMT_TMP2_N2)*/
                    NVL(SUM(NVL(total_plan_quantity,0)),0),
                    DECODE(l_currency_flag,
                        'PC', NVL(SUM(NVL(total_pc_raw_cost,0)),0),
                        'PFC', NVL(SUM(NVL(total_pfc_raw_cost,0)),0)),
                    DECODE(l_currency_flag,
                        'PC', NVL(SUM(NVL(total_pc_burdened_cost,0)),0),
                        'PFC', NVL(SUM(NVL(total_pfc_burdened_cost,0)),0)),
                    DECODE(l_currency_flag,
                        'PC', NVL(SUM(NVL(total_pc_revenue,0)),0),
                        'PFC', NVL(SUM(NVL(total_pfc_revenue,0)),0))
            INTO    l_pc_pfc_rate_quantity,
                    l_pc_pfc_rate_raw_cost,
                    l_pc_pfc_rate_brdn_cost,
                    l_pc_pfc_rate_revenue
            FROM pa_fp_calc_amt_tmp2
            WHERE resource_assignment_id = l_src_res_asg_id
              AND transaction_source_code in ('FINANCIAL_PLAN',
                                              'WORKPLAN_RESOURCES');
Line: 2875

            SELECT  /*+ INDEX(PA_FP_CALC_AMT_TMP2,PA_FP_CALC_AMT_TMP2_N2)*/
                    txn_currency_code,
                    SUM(NVL(total_plan_quantity,0)),
                    SUM(NVL(total_txn_raw_cost,0)),
                    SUM(NVL(total_txn_burdened_cost,0)),
                    SUM(NVL(total_txn_revenue,0))
            BULK COLLECT INTO
                    l_tot_currency_code_tab,
                    l_tot_quantity_tab,
                    l_tot_raw_cost_tab,
                    l_tot_brdn_cost_tab,
                    l_tot_revenue_tab
            FROM PA_FP_CALC_AMT_TMP2
            WHERE resource_assignment_id = l_src_res_asg_id
            AND transaction_source_code = l_etc_source_code
            GROUP BY txn_currency_code;
Line: 2941

                SELECT  /*+ INDEX(PA_FP_FCST_GEN_TMP1,PA_FP_FCST_GEN_TMP1_N1)*/
                        txn_currency_code,
                        SUM(NVL(quantity,0)),
                        SUM(NVL(txn_raw_cost,0)),
                        SUM(NVL(txn_brdn_cost,0)),
                        SUM(NVL(txn_revenue,0))
                BULK COLLECT INTO
                        l_act_currency_code_tab,
                        l_act_quantity_tab,
                        l_act_raw_cost_tab,
                        l_act_brdn_cost_tab,
                        l_act_revenue_tab
                FROM PA_FP_FCST_GEN_TMP1
                WHERE project_element_id = l_curr_task_id
                AND res_list_member_id = l_resource_list_member_id
                AND data_type_code = 'ETC_FP'
                GROUP BY txn_currency_code;
Line: 3039

            SELECT COUNT(*)
            INTO l_currency_count_act_min_tot
            FROM (
                SELECT /*+ INDEX(PA_FP_FCST_GEN_TMP1,PA_FP_FCST_GEN_TMP1_N1)*/
                       DISTINCT txn_currency_code
                FROM PA_FP_FCST_GEN_TMP1
                WHERE project_element_id = l_curr_task_id
                AND res_list_member_id = l_resource_list_member_id
                AND data_type_code = DECODE(L_ETC_SOURCE_CODE,
                                            'WORKPLAN_RESOURCES', 'ETC_WP',
                                            'FINANCIAL_PLAN', 'ETC_FP')
                MINUS
                SELECT /*+ INDEX(PA_FP_CALC_AMT_TMP2,PA_FP_CALC_AMT_TMP2_N2)*/
                       DISTINCT txn_currency_code
                FROM PA_FP_CALC_AMT_TMP2
                WHERE resource_assignment_id  = l_src_res_asg_id
                AND transaction_source_code = l_etc_source_code
            ) WHERE rownum = 1;
Line: 3119

                                    l_etc_quantity_tab.delete;
Line: 3120

                                    l_other_rej_code_tab.delete;  -- Added for Bug 5203622
Line: 3170

                    SELECT  /*+ INDEX(pa_fp_calc_amt_tmp2,PA_FP_CALC_AMT_TMP2_N2)*/
                            NVL(SUM(NVL(total_plan_quantity,0)),0),
                            NVL(SUM(NVL(total_txn_raw_cost,0)),0),
                            NVL(SUM(NVL(total_txn_burdened_cost,0)),0),
                            NVL(SUM(NVL(total_txn_revenue,0)),0),
                            NVL(SUM(NVL(total_pc_raw_cost,0)),0),
                            NVL(SUM(NVL(total_pc_burdened_cost,0)),0),
                            NVL(SUM(NVL(total_pc_revenue,0)),0)
                    INTO    l_txn_rate_quantity,
                            l_txn_rate_raw_cost,
                            l_txn_rate_brdn_cost,
                            l_txn_rate_revenue,
                            l_pc_rate_raw_cost,
                            l_pc_rate_brdn_cost,
                            l_pc_rate_revenue
                    FROM pa_fp_calc_amt_tmp2
                    WHERE resource_assignment_id = l_src_res_asg_id
                    AND txn_currency_code = l_tot_currency_code_tab(i)
                    AND transaction_source_code in ('FINANCIAL_PLAN',
                                                    'WORKPLAN_RESOURCES');
Line: 3274

            SELECT  /*+ INDEX(PA_FP_CALC_AMT_TMP2,PA_FP_CALC_AMT_TMP2_N2)*/
                    txn_currency_code,
                    SUM(NVL(total_plan_quantity,0)),
                    SUM(NVL(total_pc_raw_cost,0)),
                    SUM(NVL(total_pc_burdened_cost,0)),
                    SUM(NVL(total_pc_revenue,0))
            BULK COLLECT INTO
                    l_tot_currency_code_tab,
                    l_tot_quantity_pc_tab,
                    l_tot_raw_cost_pc_tab,
                    l_tot_brdn_cost_pc_tab,
                    l_tot_revenue_pc_tab
            FROM PA_FP_CALC_AMT_TMP2
            WHERE resource_assignment_id = l_src_res_asg_id
            AND transaction_source_code = l_etc_source_code
            GROUP BY txn_currency_code;
Line: 3332

                SELECT  /*+ INDEX(PA_FP_FCST_GEN_TMP1,PA_FP_FCST_GEN_TMP1_N1)*/
                        NVL(SUM( DECODE(l_rate_based_flag,
                        'Y', NVL(quantity,0),
                        'N', NVL(prj_raw_cost,0))),0),
                        NVL(SUM(NVL(prj_raw_cost,0)),0)
                INTO    l_act_quantity_pc_sum,
                        l_act_raw_cost_pc_sum  -- Added for Bug 5203622
                FROM PA_FP_FCST_GEN_TMP1
                WHERE project_element_id = l_curr_task_id
                AND res_list_member_id = l_resource_list_member_id
                AND data_type_code = 'ETC_FP';
Line: 3431

                        SELECT task_id,
                               planning_start_date
                        INTO l_task_id,
                             l_planning_start_date
                        FROM pa_resource_assignments
                        WHERE resource_assignment_id = l_src_res_asg_id;
Line: 3485

                           SELECT name INTO g_project_name from
                           PA_PROJECTS_ALL WHERE
                           project_id = p_fp_cols_tgt_rec.x_project_id;
Line: 3521

                SELECT  /*+ INDEX(PA_FP_CALC_AMT_TMP2,PA_FP_CALC_AMT_TMP2_N2)*/
                        NVL(SUM(NVL(total_plan_quantity,0)),0),
                        NVL(SUM(NVL(total_txn_raw_cost,0)),0),
                        NVL(SUM(NVL(total_txn_burdened_cost,0)),0),
                        NVL(SUM(NVL(total_txn_revenue,0)),0),
                        NVL(SUM(NVL(total_pc_raw_cost,0)),0),
                        NVL(SUM(NVL(total_pc_burdened_cost,0)),0),
                        NVL(SUM(NVL(total_pc_revenue,0)),0)
                INTO    l_txn_rate_quantity,
                        l_txn_rate_raw_cost,
                        l_txn_rate_brdn_cost,
                        l_txn_rate_revenue,
                        l_pc_rate_raw_cost,
                        l_pc_rate_brdn_cost,
                        l_pc_rate_revenue
                FROM pa_fp_calc_amt_tmp2
                WHERE resource_assignment_id = l_src_res_asg_id
                AND txn_currency_code = l_tot_currency_code_tab(i)
                AND transaction_source_code in ('FINANCIAL_PLAN' ,
                                                'WORKPLAN_RESOURCES');
Line: 3629

    /* If commitment is not included, record is inserted directly as 'ETC'
       record,if commitment is to be considered, record is inserted as
       'TOTAL_ETC' for further processing.*/
    IF P_FP_COLS_TGT_REC.X_GEN_INCL_OPEN_COMM_FLAG = 'Y' THEN
        l_transaction_source_code := 'TOTAL_ETC';
Line: 3641

        INSERT INTO PA_FP_CALC_AMT_TMP2
               ( RESOURCE_ASSIGNMENT_ID,
                 TARGET_RES_ASG_ID,
                 ETC_CURRENCY_CODE,
                 ETC_PLAN_QUANTITY,
                 ETC_TXN_RAW_COST,
                 ETC_TXN_BURDENED_COST,
                 ETC_TXN_REVENUE,
                 ETC_PC_RAW_COST,
                 ETC_PC_BURDENED_COST,
                 ETC_PC_REVENUE,
                 ETC_PFC_RAW_COST,
                 ETC_PFC_BURDENED_COST,
                 ETC_PFC_REVENUE,
                 TRANSACTION_SOURCE_CODE,
                 TXN_CURRENCY_CODE ) -- Added for Bug 5203622
        VALUES ( l_ins_src_res_asg_id_tab(i),
                 l_ins_tgt_res_asg_id_tab(i),
                 l_ins_currency_code_tab(i),
                 l_ins_etc_quantity_tab(i),
                 l_ins_txn_raw_cost_tab(i),
                 l_ins_txn_burdened_cost_tab(i),
                 l_ins_txn_revenue_tab(i),
                 l_ins_pc_raw_cost_tab(i),
                 l_ins_pc_burdened_cost_tab(i),
                 l_ins_pc_revenue_tab(i),
                 l_ins_pfc_raw_cost_tab(i),
                 l_ins_pfc_burdened_cost_tab(i),
                 l_ins_pfc_revenue_tab(i),
                 l_transaction_source_code,
                 l_ins_other_rej_code_tab(i) ); -- Added for Bug 5203622