DBA Data[Home] [Help]

APPS.PA_FP_EDIT_LINE_PKG SQL Statements

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

Line: 85

    SELECT pra.budget_version_id
          ,pbv.period_profile_id
          ,pra.project_id
          ,pra.task_id
      INTO x_fin_plan_version_id
          ,x_period_profile_id
          ,x_project_id
          ,l_task_id
      FROM pa_resource_assignments pra,
           pa_budget_versions pbv
     WHERE pra.resource_assignment_id = p_resource_assignment_id
       AND pra.budget_version_id = pbv.budget_version_id;
Line: 189

       SELECT start_date
             ,completion_date
             ,project_currency_code
             ,projfunc_currency_code
        INTO  x_project_start_date
             ,x_project_end_date
             ,x_project_currency_code
             ,x_projfunc_currency_code
        FROM  pa_projects_all p
        WHERE p.project_id = x_project_id;
Line: 209

       SELECT start_date
             ,completion_date
        INTO  x_task_start_date
             ,x_task_end_date
        FROM pa_tasks pt
       WHERE pt.task_id = l_task_id;
Line: 370

        SELECT project_id, budget_version_id
        INTO   l_project_id, l_budget_version_id
        FROM   PA_RESOURCE_ASSIGNMENTS
        WHERE  RESOURCE_ASSIGNMENT_ID = p_resource_assignment_id;
Line: 378

                pa_debug.g_err_stage:= 'Error while selecting for the input resource assignment id ' ||
                                                p_resource_assignment_id;
Line: 430

               SELECT start_date
                      ,completion_date
               INTO   l_project_start_date
                      ,l_project_end_date
               FROM   pa_projects_all p
               WHERE  p.project_id = l_project_id;
Line: 439

                       pa_debug.g_err_stage := 'Error while selecting for the project id ' || l_project_id;
Line: 496

                   we are sure there would be no budget lines and hence the following update need not
                   be done */

                IF p_calling_context <> PA_FP_CONSTANTS_PKG.G_CALLING_CONTEXT_OTHER_CURR THEN
                    UPDATE PA_BUDGET_LINES
                    SET    BUCKETING_PERIOD_CODE = NULL
                    WHERE  TXN_CURRENCY_CODE = p_transaction_currency_code
                    AND    RESOURCE_ASSIGNMENT_ID = p_resource_assignment_id
                    AND    BUDGET_VERSION_ID = l_budget_version_id
                    AND    BUCKETING_PERIOD_CODE = PA_FP_CONSTANTS_PKG.G_BUCKETING_PERIOD_CODE_PE;
Line: 556

                   we are sure there would be no budget lines and hence the following update need not
                   be done */

                IF p_calling_context <> PA_FP_CONSTANTS_PKG.G_CALLING_CONTEXT_OTHER_CURR THEN
                     UPDATE PA_BUDGET_LINES
                     SET    BUCKETING_PERIOD_CODE = NULL
                     WHERE  TXN_CURRENCY_CODE = p_transaction_currency_code
                     AND    RESOURCE_ASSIGNMENT_ID = p_resource_assignment_id
                     AND    BUDGET_VERSION_ID = l_budget_version_id
                     AND    BUCKETING_PERIOD_CODE = PA_FP_CONSTANTS_PKG.G_BUCKETING_PERIOD_CODE_SE;
Line: 667

SELECT
        pfo.PROJECT_COST_RATE_TYPE
        ,decode(pfo.PROJECT_COST_RATE_TYPE,'User',pftc.PROJECT_COST_EXCHANGE_RATE,null) PROJECT_COST_EXCHANGE_RATE
        ,pfo.PROJECT_COST_RATE_DATE_TYPE
        ,pfo.PROJECT_COST_RATE_DATE
        ,pfo.PROJECT_REV_RATE_TYPE
        ,decode(pfo.PROJECT_REV_RATE_TYPE,'User',pftc.PROJECT_REV_EXCHANGE_RATE,null)  PROJECT_REV_EXCHANGE_RATE
        ,pfo.PROJECT_REV_RATE_DATE_TYPE
        ,pfo.PROJECT_REV_RATE_DATE
        ,pfo.PROJFUNC_COST_RATE_TYPE
        ,decode(pfo.PROJFUNC_COST_RATE_TYPE,'User',pftc.PROJFUNC_COST_EXCHANGE_RATE,null) PROJFUNC_COST_EXCHANGE_RATE
        ,pfo.PROJFUNC_COST_RATE_DATE_TYPE
        ,pfo.PROJFUNC_COST_RATE_DATE
        ,pfo.PROJFUNC_REV_RATE_TYPE
        ,decode(pfo.PROJFUNC_REV_RATE_TYPE,'User',pftc.PROJFUNC_REV_EXCHANGE_RATE,null) PROJFUNC_REV_EXCHANGE_RATE
        ,pfo.PROJFUNC_REV_RATE_DATE_TYPE
        ,pfo.PROJFUNC_REV_RATE_DATE
FROM  pa_proj_fp_options pfo
     ,pa_fp_txn_currencies pftc
WHERE pfo.proj_fp_options_id = pftc.proj_fp_options_id(+)
  AND pfo.fin_plan_version_id = p_fin_plan_version_id
  AND pftc.txn_currency_code(+) = p_txn_currency_code;
Line: 756

PROCEDURE insert_dummy_record_pvt (mc_rec IN mc_cur_rec%TYPE)
IS
BEGIN
INSERT INTO PA_FP_ROLLUP_TMP
                 (ROLLUP_ID
                  ,RESOURCE_ASSIGNMENT_ID
                  ,BUDGET_LINE_ID
                  ,OLD_START_DATE
                  ,START_DATE
                  ,END_DATE
                  ,PERIOD_NAME
                  ,txn_currency_code
                  ,old_quantity
                  ,old_txn_raw_cost
                  ,old_txn_burdened_cost
                  ,old_txn_revenue
                  ,quantity
                  ,txn_raw_cost
                  ,txn_burdened_cost
                  ,txn_revenue
                  ,bucketing_period_code
                  ,delete_flag
                  ,parent_assignment_id
                  ,project_currency_code
                  ,projfunc_currency_code
                  ,PROJECT_COST_RATE_TYPE
                  ,PROJECT_COST_EXCHANGE_RATE
                  ,PROJECT_COST_RATE_DATE_TYPE
                  ,PROJECT_COST_RATE_DATE
                  ,PROJECT_REV_RATE_TYPE
                  ,PROJECT_REV_EXCHANGE_RATE
                  ,PROJECT_REV_RATE_DATE_TYPE
                  ,PROJECT_REV_RATE_DATE
                  ,PROJFUNC_COST_RATE_TYPE
                  ,PROJFUNC_COST_EXCHANGE_RATE
                  ,PROJFUNC_COST_RATE_DATE_TYPE
                  ,PROJFUNC_COST_RATE_DATE
                  ,PROJFUNC_REV_RATE_TYPE
                  ,PROJFUNC_REV_EXCHANGE_RATE
                  ,PROJFUNC_REV_RATE_DATE_TYPE
                  ,PROJFUNC_REV_RATE_DATE
                    )
           SELECT  pa_fp_rollup_tmp_s.nextval
                  ,p_resource_assignment_id
                  ,NULL           /* BUDGET_LINE_ID */
                  ,NULL
                  ,NULL
                  ,NULL
                  ,NULL          /* period name */
                  ,p_txn_currency_code
                  ,NULL
                  ,NULL
                  ,NULL
                  ,NULL
                  ,NULL
                  ,NULL
                  ,NULL
                  ,NULL
                  ,NULL
                  ,'N'
                  ,parent_assignment_id
                  ,l_project_currency_code
                  ,l_projfunc_currency_code
                  ,mc_rec.PROJECT_COST_RATE_TYPE
                  ,mc_rec.PROJECT_COST_EXCHANGE_RATE
                  ,mc_rec.PROJECT_COST_RATE_DATE_TYPE
                  ,mc_rec.PROJECT_COST_RATE_DATE
                  ,mc_rec.PROJECT_REV_RATE_TYPE
                  ,mc_rec.PROJECT_REV_EXCHANGE_RATE
                  ,mc_rec.PROJECT_REV_RATE_DATE_TYPE
                  ,mc_rec.PROJECT_REV_RATE_DATE
                  ,mc_rec.PROJFUNC_COST_RATE_TYPE
                  ,mc_rec.PROJFUNC_COST_EXCHANGE_RATE
                  ,mc_rec.PROJFUNC_COST_RATE_DATE_TYPE
                  ,mc_rec.PROJFUNC_COST_RATE_DATE
                  ,mc_rec.PROJFUNC_REV_RATE_TYPE
                  ,mc_rec.PROJFUNC_REV_EXCHANGE_RATE
                  ,mc_rec.PROJFUNC_REV_RATE_DATE_TYPE
                  ,mc_rec.PROJFUNC_REV_RATE_DATE
         FROM pa_resource_assignments pra
         where resource_assignment_id = p_resource_assignment_id;
Line: 838

END insert_dummy_record_pvt;
Line: 1073

                    SELECT MIN(start_date), MAX(start_date)
                     INTO l_min_start_date,l_max_start_date
                     FROM pa_budget_lines
                    WHERE budget_version_id = l_fin_plan_version_id
                      AND resource_assignment_id = p_resource_assignment_id
                      AND txn_currency_code = p_txn_currency_code
                      AND start_date >= l_period_profile_start_date
                      AND end_date <= l_period_profile_end_date;
Line: 1116

        DELETE FROM PA_FP_ROLLUP_TMP;
Line: 1119

           pa_debug.g_err_stage:='deleted  '||sql%rowcount || ' records from PA_FP_ROLLUP_TMP table' ;
Line: 1142

              INSERT INTO PA_FP_ROLLUP_TMP
                        (  ROLLUP_ID
                          ,RESOURCE_ASSIGNMENT_ID
                          ,BUDGET_LINE_ID
                          ,OLD_START_DATE
                          ,START_DATE
                          ,END_DATE
                          ,PERIOD_NAME
                          ,CHANGE_REASON_CODE
                          ,DESCRIPTION
                          ,BUCKETING_PERIOD_CODE
                          ,TXN_CURRENCY_CODE
                          ,PARENT_ASSIGNMENT_ID
                          ,PROJECT_CURRENCY_CODE
                          ,PROJFUNC_CURRENCY_CODE
                          ,PROJECT_COST_RATE_TYPE
                          ,PROJECT_COST_EXCHANGE_RATE
                          ,PROJECT_COST_RATE_DATE_TYPE
                          ,PROJECT_COST_RATE_DATE
                          ,PROJECT_REV_RATE_TYPE
                          ,PROJECT_REV_EXCHANGE_RATE
                          ,PROJECT_REV_RATE_DATE_TYPE
                          ,PROJECT_REV_RATE_DATE
                          ,PROJFUNC_COST_RATE_TYPE
                          ,PROJFUNC_COST_EXCHANGE_RATE
                          ,PROJFUNC_COST_RATE_DATE_TYPE
                          ,PROJFUNC_COST_RATE_DATE
                          ,PROJFUNC_REV_RATE_TYPE
                          ,PROJFUNC_REV_EXCHANGE_RATE
                          ,PROJFUNC_REV_RATE_DATE_TYPE
                          ,PROJFUNC_REV_RATE_DATE
                          ,OLD_PROJ_RAW_COST
                          ,OLD_PROJ_BURDENED_COST
                          ,OLD_PROJ_REVENUE
                          ,OLD_PROJFUNC_RAW_COST
                          ,OLD_PROJFUNC_BURDENED_COST
                          ,OLD_PROJFUNC_REVENUE
                          ,OLD_QUANTITY
                          ,PROJECT_RAW_COST
                          ,PROJECT_BURDENED_COST
                          ,PROJECT_REVENUE
                          ,PROJFUNC_RAW_COST
                          ,PROJFUNC_BURDENED_COST
                          ,PROJFUNC_REVENUE
                          ,OLD_TXN_RAW_COST
                          ,OLD_TXN_BURDENED_COST
                          ,OLD_TXN_REVENUE
                          ,TXN_RAW_COST
                          ,TXN_BURDENED_COST
                          ,TXN_REVENUE
                          ,QUANTITY
                          ,DELETE_FLAG
                          ,ATTRIBUTE_CATEGORY
                          ,ATTRIBUTE1
                          ,ATTRIBUTE2
                          ,ATTRIBUTE3
                          ,ATTRIBUTE4
                          ,ATTRIBUTE5
                          ,ATTRIBUTE6
                          ,ATTRIBUTE7
                          ,ATTRIBUTE8
                          ,ATTRIBUTE9
                          ,ATTRIBUTE10
                          ,ATTRIBUTE11
                          ,ATTRIBUTE12
                          ,ATTRIBUTE13
                          ,ATTRIBUTE14
                          ,ATTRIBUTE15
                          ,RAW_COST_SOURCE
                          ,BURDENED_COST_SOURCE
                          ,QUANTITY_SOURCE
                          ,REVENUE_SOURCE
                          ,PM_PRODUCT_CODE
                          )
                          (
                  SELECT   PA_FP_ROLLUP_TMP_S.NEXTVAL
                          ,P_RESOURCE_ASSIGNMENT_ID
                          ,pbl.BUDGET_LINE_ID
                          ,pbl.START_DATE OLD_START_DATE    /* when old_start_Date is null then the record should be inserted in pbl */
                          ,tmp.START_DATE START_DATE
                          ,tmp.END_DATE
                          ,decode(tmp.start_date,
                                      l_preceding_prd_start_date,l_preceding_period_text,
                                      l_succeeding_prd_start_date,l_succeeding_period_text,
                                      tmp.PERIOD_NAME) PERIOD_NAME
                          ,pbl.CHANGE_REASON_CODE
                          ,pbl.DESCRIPTION
                          ,decode(tmp.start_date,
                                      l_preceding_prd_start_date,PA_FP_CONSTANTS_PKG.G_BUCKETING_PERIOD_CODE_PD,
                                      l_succeeding_prd_start_date,PA_FP_CONSTANTS_PKG.G_BUCKETING_PERIOD_CODE_SD)
                                    BUCKETING_PERIOD_CODE
                          ,P_TXN_CURRENCY_CODE
                          ,pra.PARENT_ASSIGNMENT_ID
                          ,nvl(pbl.PROJECT_CURRENCY_CODE,l_project_currency_code)
                          ,nvl(pbl.PROJFUNC_CURRENCY_CODE,l_projfunc_currency_code) /* decode is used here since there are some outer joined records and we want to default only for such cases */
                          ,decode(pbl.START_DATE,null,mc_cur_rec.PROJECT_COST_RATE_TYPE,pbl.PROJECT_COST_RATE_TYPE)
                          ,decode(pbl.START_DATE,null,mc_cur_rec.PROJECT_COST_EXCHANGE_RATE,pbl.PROJECT_COST_EXCHANGE_RATE)    /* due to changes in the mc page */
                          ,decode(pbl.START_DATE,null,mc_cur_rec.PROJECT_COST_RATE_DATE_TYPE,pbl.PROJECT_COST_RATE_DATE_TYPE)
                          ,decode(pbl.START_DATE,null,mc_cur_rec.PROJECT_COST_RATE_DATE,pbl.PROJECT_COST_RATE_DATE)
                          ,decode(pbl.START_DATE,null,mc_cur_rec.PROJECT_REV_RATE_TYPE,pbl.PROJECT_REV_RATE_TYPE)
                          ,decode(pbl.START_DATE,null,mc_cur_rec.PROJECT_REV_EXCHANGE_RATE,pbl.PROJECT_REV_EXCHANGE_RATE)     /* due to changes in the mc page */
                          ,decode(pbl.START_DATE,null,mc_cur_rec.PROJECT_REV_RATE_DATE_TYPE,pbl.PROJECT_REV_RATE_DATE_TYPE)
                          ,decode(pbl.START_DATE,null,mc_cur_rec.PROJECT_REV_RATE_DATE,pbl.PROJECT_REV_RATE_DATE)
                          ,decode(pbl.START_DATE,null,mc_cur_rec.PROJFUNC_COST_RATE_TYPE,pbl.PROJFUNC_COST_RATE_TYPE)
                          ,decode(pbl.START_DATE,null,mc_cur_rec.PROJFUNC_COST_EXCHANGE_RATE,pbl.PROJFUNC_COST_EXCHANGE_RATE)/* due to changes in the mc page */
                          ,decode(pbl.START_DATE,null,mc_cur_rec.PROJFUNC_COST_RATE_DATE_TYPE,pbl.PROJFUNC_COST_RATE_DATE_TYPE)
                          ,decode(pbl.START_DATE,null,mc_cur_rec.PROJFUNC_COST_RATE_DATE,pbl.PROJFUNC_COST_RATE_DATE)
                          ,decode(pbl.START_DATE,null,mc_cur_rec.PROJFUNC_REV_RATE_TYPE,pbl.PROJFUNC_REV_RATE_TYPE)
                          ,decode(pbl.START_DATE,null,mc_cur_rec.PROJFUNC_REV_EXCHANGE_RATE,pbl.PROJFUNC_REV_EXCHANGE_RATE)  /* due to changes in the mc page */
                          ,decode(pbl.START_DATE,null,mc_cur_rec.PROJFUNC_REV_RATE_DATE_TYPE,pbl.PROJFUNC_REV_RATE_DATE_TYPE)
                          ,decode(pbl.START_DATE,null,mc_cur_rec.PROJFUNC_REV_RATE_DATE,pbl.PROJFUNC_REV_RATE_DATE)
                          ,decode(tmp.start_date,
                                      l_preceding_prd_start_date,l_pd_pc_raw_cost,
                                      l_succeeding_prd_start_date,l_sd_pc_raw_cost,
                                      pbl.PROJECT_RAW_COST) OLD_PROJ_RAW_COST
                          ,decode(tmp.start_date,
                                      l_preceding_prd_start_date,l_pd_pc_burdened_cost,
                                      l_succeeding_prd_start_date,l_sd_pc_burdened_cost,
                                      pbl.PROJECT_BURDENED_COST) OLD_PROJ_BURDENED_COST
                          ,decode(tmp.start_date,
                                      l_preceding_prd_start_date,l_pd_pc_revenue,
                                      l_succeeding_prd_start_date,l_sd_pc_revenue,
                                      pbl.PROJECT_REVENUE) OLD_PROJ_REVENUE
                          ,decode(tmp.start_date,
                                      l_preceding_prd_start_date,l_pd_pfc_raw_cost,
                                      l_succeeding_prd_start_date,l_sd_pfc_raw_cost,
                                      pbl.RAW_COST) OLD_PROJFUNC_RAW_COST
                          ,decode(tmp.start_date,
                                      l_preceding_prd_start_date,l_pd_pfc_burdened_cost,
                                      l_succeeding_prd_start_date,l_sd_pfc_burdened_cost,
                                      pbl.BURDENED_COST) OLD_PROJFUNC_BURDENED_COST
                          ,decode(tmp.start_date,
                                      l_preceding_prd_start_date,l_pd_pfc_revenue,
                                      l_succeeding_prd_start_date,l_sd_pfc_revenue,
                                      pbl.REVENUE) OLD_PROJFUNC_REVENUE
                          ,decode(tmp.start_date,
                                      l_preceding_prd_start_date,l_preceding_quantity,
                                      l_succeeding_prd_start_date,l_succeeding_quantity,
                                      pbl.QUANTITY)       OLD_QUANTITY
                          ,decode(tmp.start_date,
                                      l_preceding_prd_start_date,l_pd_pc_raw_cost,
                                      l_succeeding_prd_start_date,l_sd_pc_raw_cost,
                                      pbl.PROJECT_RAW_COST) PROJECT_RAW_COST
                          ,decode(tmp.start_date,
                                      l_preceding_prd_start_date,l_pd_pc_burdened_cost,
                                      l_succeeding_prd_start_date,l_sd_pc_burdened_cost,
                                      pbl.PROJECT_BURDENED_COST) PROJECT_BURDENED_COST
                          ,decode(tmp.start_date,
                                      l_preceding_prd_start_date,l_pd_pc_revenue,
                                      l_succeeding_prd_start_date,l_sd_pc_revenue,
                                      pbl.PROJECT_REVENUE) PROJECT_REVENUE
                          ,decode(tmp.start_date,
                                      l_preceding_prd_start_date,l_pd_pfc_raw_cost,
                                      l_succeeding_prd_start_date,l_sd_pfc_raw_cost,
                                      pbl.RAW_COST) RAW_COST
                          ,decode(tmp.start_date,
                                      l_preceding_prd_start_date,l_pd_pfc_burdened_cost,
                                      l_succeeding_prd_start_date,l_sd_pfc_burdened_cost,
                                      pbl.BURDENED_COST) BURDENED_COST
                          ,decode(tmp.start_date,
                                      l_preceding_prd_start_date,l_pd_pfc_revenue,
                                      l_succeeding_prd_start_date,l_sd_pfc_revenue,
                                      pbl.REVENUE) REVENUE
                          ,decode(tmp.start_date,
                                      l_preceding_prd_start_date,l_preceding_raw_cost,
                                      l_succeeding_prd_start_date,l_succeeding_raw_cost,
                                      pbl.TXN_RAW_COST)       OLD_TXN_RAW_COST
                          ,decode(tmp.start_date,
                                      l_preceding_prd_start_date,l_preceding_burdened_cost,
                                      l_succeeding_prd_start_date,l_succeeding_burdened_cost,
                                      pbl.TXN_BURDENED_COST)  OLD_TXN_BURDENED_COST
                          ,decode(tmp.start_date,
                                      l_preceding_prd_start_date,l_preceding_revenue,
                                      l_succeeding_prd_start_date,l_succeeding_revenue,
                                      pbl.TXN_REVENUE)        OLD_TXN_REVENUE
                          ,decode(tmp.start_date,
                                      l_preceding_prd_start_date,l_preceding_raw_cost,
                                      l_succeeding_prd_start_date,l_succeeding_raw_cost,
                                      pbl.TXN_RAW_COST)       TXN_RAW_COST
                          ,decode(tmp.start_date,
                                      l_preceding_prd_start_date,l_preceding_burdened_cost,
                                      l_succeeding_prd_start_date,l_succeeding_burdened_cost,
                                      pbl.TXN_BURDENED_COST)  TXN_BURDENED_COST
                          ,decode(tmp.start_date,
                                      l_preceding_prd_start_date,l_preceding_revenue,
                                      l_succeeding_prd_start_date,l_succeeding_revenue,
                                      pbl.TXN_REVENUE)        TXN_REVENUE
                          ,decode(tmp.start_date,
                                      l_preceding_prd_start_date,l_preceding_quantity,
                                      l_succeeding_prd_start_date,l_succeeding_quantity,
                                      pbl.QUANTITY)           QUANTITY
                          ,'N' DELETE_FLAG
                          ,pbl.ATTRIBUTE_CATEGORY
                          ,pbl.ATTRIBUTE1
                          ,pbl.ATTRIBUTE2
                          ,pbl.ATTRIBUTE3
                          ,pbl.ATTRIBUTE4
                          ,pbl.ATTRIBUTE5
                          ,pbl.ATTRIBUTE6
                          ,pbl.ATTRIBUTE7
                          ,pbl.ATTRIBUTE8
                          ,pbl.ATTRIBUTE9
                          ,pbl.ATTRIBUTE10
                          ,pbl.ATTRIBUTE11
                          ,pbl.ATTRIBUTE12
                          ,pbl.ATTRIBUTE13
                          ,pbl.ATTRIBUTE14
                          ,pbl.ATTRIBUTE15
                          ,pbl.RAW_COST_SOURCE
                          ,pbl.BURDENED_COST_SOURCE
                          ,pbl.QUANTITY_SOURCE
                          ,pbl.REVENUE_SOURCE
                          ,pbl.PM_PRODUCT_CODE
                  FROM  pa_resource_assignments pra
                       ,pa_budget_lines pbl
                       ,pa_fp_cpy_periods_tmp tmp
                  WHERE pra.resource_assignment_id = p_resource_assignment_id
                    AND pbl.resource_assignment_id(+) = p_resource_assignment_id
                    AND pbl.start_date(+) = tmp.start_date
                    AND pbl.txn_currency_code(+) = p_txn_currency_code);
Line: 1364

                  pa_debug.g_err_stage := ':inserted ' || sql%rowcount || ' records ';
Line: 1385

                    we need to insert either project start/end date or task start/end date
                    based upon planning level.
                    in case time phasing is date range. insert a row with these values as null
                    User will enter the required start and end dates.
              */
                    IF l_time_phased_code = PA_FP_CONSTANTS_PKG.G_TIME_PHASED_CODE_N THEN
                       IF l_fin_plan_level_code = PA_FP_CONSTANTS_PKG.G_BUDGET_ENTRY_LEVEL_PROJECT THEN
                          l_start_date := l_project_start_date;
Line: 1408

                     INSERT INTO PA_FP_ROLLUP_TMP
                              (  ROLLUP_ID
                                ,RESOURCE_ASSIGNMENT_ID
                                ,BUDGET_LINE_ID
                                ,OLD_START_DATE
                                ,START_DATE
                                ,END_DATE
                                ,PERIOD_NAME
                                ,CHANGE_REASON_CODE
                                ,DESCRIPTION
                                ,BUCKETING_PERIOD_CODE
                                ,TXN_CURRENCY_CODE
                                ,PARENT_ASSIGNMENT_ID
                                ,PROJECT_CURRENCY_CODE
                                ,PROJFUNC_CURRENCY_CODE
                                ,PROJECT_COST_RATE_TYPE
                                ,PROJECT_COST_EXCHANGE_RATE
                                ,PROJECT_COST_RATE_DATE_TYPE
                                ,PROJECT_COST_RATE_DATE
                                ,PROJECT_REV_RATE_TYPE
                                ,PROJECT_REV_EXCHANGE_RATE
                                ,PROJECT_REV_RATE_DATE_TYPE
                                ,PROJECT_REV_RATE_DATE
                                ,PROJFUNC_COST_RATE_TYPE
                                ,PROJFUNC_COST_EXCHANGE_RATE
                                ,PROJFUNC_COST_RATE_DATE_TYPE
                                ,PROJFUNC_COST_RATE_DATE
                                ,PROJFUNC_REV_RATE_TYPE
                                ,PROJFUNC_REV_EXCHANGE_RATE
                                ,PROJFUNC_REV_RATE_DATE_TYPE
                                ,PROJFUNC_REV_RATE_DATE
                                ,OLD_PROJ_RAW_COST
                                ,OLD_PROJ_BURDENED_COST
                                ,OLD_PROJ_REVENUE
                                ,OLD_PROJFUNC_RAW_COST
                                ,OLD_PROJFUNC_BURDENED_COST
                                ,OLD_PROJFUNC_REVENUE
                                ,OLD_QUANTITY
                                ,PROJECT_RAW_COST
                                ,PROJECT_BURDENED_COST
                                ,PROJECT_REVENUE
                                ,PROJFUNC_RAW_COST
                                ,PROJFUNC_BURDENED_COST
                                ,PROJFUNC_REVENUE
                                ,OLD_TXN_RAW_COST
                                ,OLD_TXN_BURDENED_COST
                                ,OLD_TXN_REVENUE
                                ,TXN_RAW_COST
                                ,TXN_BURDENED_COST
                                ,TXN_REVENUE
                                ,QUANTITY
                                ,DELETE_FLAG
                                ,ATTRIBUTE_CATEGORY
                                ,ATTRIBUTE1
                                ,ATTRIBUTE2
                                ,ATTRIBUTE3
                                ,ATTRIBUTE4
                                ,ATTRIBUTE5
                                ,ATTRIBUTE6
                                ,ATTRIBUTE7
                                ,ATTRIBUTE8
                                ,ATTRIBUTE9
                                ,ATTRIBUTE10
                                ,ATTRIBUTE11
                                ,ATTRIBUTE12
                                ,ATTRIBUTE13
                                ,ATTRIBUTE14
                                ,ATTRIBUTE15
                                ,RAW_COST_SOURCE
                                ,BURDENED_COST_SOURCE
                                ,QUANTITY_SOURCE
                                ,REVENUE_SOURCE
                                ,PM_PRODUCT_CODE
                                )
                                (
                        SELECT   pa_fp_rollup_tmp_s.nextval
                                ,p_resource_assignment_id /* Fix for bug # 2586514 */
                                ,pbl.BUDGET_LINE_ID
                                ,pbl.start_date OLD_START_DATE    /* when old_start_Date is null then the record should be inserted in pbl */
                                ,nvl(pbl.start_date,l_start_date)
                                ,nvl(pbl.end_Date,l_end_date)
                                ,pbl.PERIOD_NAME
                                ,pbl.CHANGE_REASON_CODE
                                ,pbl.DESCRIPTION
                                ,pbl.BUCKETING_PERIOD_CODE
                                ,P_TXN_CURRENCY_CODE /* Fix for bug # 2590361 */
                                ,pra.PARENT_ASSIGNMENT_ID
                                ,nvl(pbl.PROJECT_CURRENCY_CODE,l_project_currency_code)
                                ,nvl(pbl.PROJFUNC_CURRENCY_CODE,l_projfunc_currency_code)
                                ,decode(pbl.start_date,null,mc_cur_rec.PROJECT_COST_RATE_TYPE,pbl.PROJECT_COST_RATE_TYPE) /* remove decode for start date now */
                                ,decode(pbl.start_date,null,mc_cur_rec.PROJECT_COST_EXCHANGE_RATE,pbl.PROJECT_COST_EXCHANGE_RATE)  /* due to changes on mc page */
                                ,decode(pbl.start_date,null,mc_cur_rec.PROJECT_COST_RATE_DATE_TYPE,pbl.PROJECT_COST_RATE_DATE_TYPE)
                                ,decode(pbl.start_date,null,mc_cur_rec.PROJECT_COST_RATE_DATE,pbl.PROJECT_COST_RATE_DATE)
                                ,decode(pbl.start_date,null,mc_cur_rec.PROJECT_REV_RATE_TYPE,pbl.PROJECT_REV_RATE_TYPE)
                                ,decode(pbl.start_date,null,mc_cur_rec.PROJECT_REV_EXCHANGE_RATE,pbl.PROJECT_REV_EXCHANGE_RATE)    /* due to changes on mc page */
                                ,decode(pbl.start_date,null,mc_cur_rec.PROJECT_REV_RATE_DATE_TYPE,pbl.PROJECT_REV_RATE_DATE_TYPE)
                                ,decode(pbl.start_date,null,mc_cur_rec.PROJECT_REV_RATE_DATE,pbl.PROJECT_REV_RATE_DATE)
                                ,decode(pbl.start_date,null,mc_cur_rec.PROJFUNC_COST_RATE_TYPE,pbl.PROJFUNC_COST_RATE_TYPE)
                                ,decode(pbl.start_date,null,mc_cur_rec.PROJFUNC_COST_EXCHANGE_RATE,pbl.PROJFUNC_COST_EXCHANGE_RATE)/* due to changes on mc page */
                                ,decode(pbl.start_date,null,mc_cur_rec.PROJFUNC_COST_RATE_DATE_TYPE,pbl.PROJFUNC_COST_RATE_DATE_TYPE)
                                ,decode(pbl.start_date,null,mc_cur_rec.PROJFUNC_COST_RATE_DATE,pbl.PROJFUNC_COST_RATE_DATE)
                                ,decode(pbl.start_date,null,mc_cur_rec.PROJFUNC_REV_RATE_TYPE,pbl.PROJFUNC_REV_RATE_TYPE)
                                ,decode(pbl.start_date,null,mc_cur_rec.PROJFUNC_REV_EXCHANGE_RATE,pbl.PROJFUNC_REV_EXCHANGE_RATE) /* due to changes on mc page */
                                ,decode(pbl.start_date,null,mc_cur_rec.PROJFUNC_REV_RATE_DATE_TYPE,pbl.PROJFUNC_REV_RATE_DATE_TYPE)
                                ,decode(pbl.start_date,null,mc_cur_rec.PROJFUNC_REV_RATE_DATE,pbl.PROJFUNC_REV_RATE_DATE)
                                ,pbl.PROJECT_RAW_COST OLD_PROJ_RAW_COST
                                ,pbl.PROJECT_BURDENED_COST OLD_PROJ_BURDENED_COST
                                ,pbl.PROJECT_REVENUE OLD_PROJ_REVENUE
                                ,pbl.RAW_COST               OLD_PROJFUNC_RAW_COST
                                ,pbl.BURDENED_COST          OLD_PROJFUNC_BURDENED_COST
                                ,pbl.REVENUE                OLD_PROJFUNC_REVENUE
                                ,pbl.QUANTITY               OLD_QUANTITY
                                ,pbl.PROJECT_RAW_COST
                                ,pbl.PROJECT_BURDENED_COST
                                ,pbl.PROJECT_REVENUE
                                ,pbl.RAW_COST
                                ,pbl.BURDENED_COST
                                ,pbl.REVENUE
                                ,pbl.TXN_RAW_COST       OLD_TXN_RAW_COST
                                ,pbl.TXN_BURDENED_COST  OLD_TXN_BURDENED_COST
                                ,pbl.TXN_REVENUE        OLD_TXN_REVENUE
                                ,pbl.TXN_RAW_COST
                                ,pbl.TXN_BURDENED_COST
                                ,pbl.TXN_REVENUE
                                ,pbl.QUANTITY
                                ,'N' DELETE_FLAG
                                ,pbl.ATTRIBUTE_CATEGORY
                                ,pbl.ATTRIBUTE1
                                ,pbl.ATTRIBUTE2
                                ,pbl.ATTRIBUTE3
                                ,pbl.ATTRIBUTE4
                                ,pbl.ATTRIBUTE5
                                ,pbl.ATTRIBUTE6
                                ,pbl.ATTRIBUTE7
                                ,pbl.ATTRIBUTE8
                                ,pbl.ATTRIBUTE9
                                ,pbl.ATTRIBUTE10
                                ,pbl.ATTRIBUTE11
                                ,pbl.ATTRIBUTE12
                                ,pbl.ATTRIBUTE13
                                ,pbl.ATTRIBUTE14
                                ,pbl.ATTRIBUTE15
                                ,pbl.RAW_COST_SOURCE
                                ,pbl.BURDENED_COST_SOURCE
                                ,pbl.QUANTITY_SOURCE
                                ,pbl.REVENUE_SOURCE
                                ,pbl.PM_PRODUCT_CODE
                        FROM  pa_resource_assignments pra
                             ,pa_budget_lines pbl
                             ,pa_proj_fp_options pfo
--                             ,pa_fp_txn_currencies pftc   -- Bug # 2615998
                        WHERE pra.resource_assignment_id = p_resource_assignment_id
                          AND pbl.txn_currency_code = p_txn_currency_code
                          AND pbl.resource_assignment_id = pra.resource_assignment_id
                          AND pfo.fin_plan_version_id = pra.budget_version_id
--                        AND pfo.proj_fp_options_id = pftc.proj_fp_options_id   -- Bug # 2615998
--                        AND pftc.txn_currency_code = p_txn_currency_code       -- Bug # 2615998
                        );
Line: 1568

                /* Bug found during Unit Testing. Do the insert only in EDIT / EDIT ANOTHER CURRENCY modes */
                IF p_calling_context <> PA_FP_CONSTANTS_PKG.G_CALLING_CONTEXT_VIEW THEN
                   IF nvl(l_count,0) = 0 THEN
                      IF l_time_phased_code = PA_FP_CONSTANTS_PKG.G_TIME_PHASED_CODE_R THEN
                              FOR i IN 1..5 LOOP
                                  insert_dummy_record_pvt(mc_cur_rec);
Line: 1576

                              insert_dummy_record_pvt(mc_cur_rec);
Line: 1583

                              UPDATE PA_FP_ROLLUP_TMP
                              SET    START_DATE = l_start_date,
                                     END_DATE   = l_end_date
                              WHERE  resource_assignment_id = p_resource_assignment_id;
Line: 1591

                   pa_debug.g_err_stage := 'inserted ' || sql%rowcount || ' records';
Line: 1649

   If budget_line_id is null then it will be considered as new record (to be inserted)
   else records will be updated.
*/


PROCEDURE PROCESS_MODIFIED_LINES
         (
            -- Bug Fix: 4569365. Removed MRC code.
		    p_calling_context            IN  VARCHAR2 -- pa_mrc_finplan.g_calling_module%TYPE /* Bug# 2674353 */
           ,p_resource_assignment_id     IN  pa_resource_assignments.RESOURCE_ASSIGNMENT_ID%TYPE
           ,p_fin_plan_version_id        IN  pa_resource_assignments.budget_version_id%TYPE -- DEFAULT NULL
           ,x_return_status             OUT  NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
           ,x_msg_count                 OUT  NOCOPY NUMBER --File.Sql.39 bug 4440895
           ,x_msg_data                  OUT  NOCOPY VARCHAR2 ) IS --File.Sql.39 bug 4440895

   /* Variables to be used for debugging purpose */
    l_msg_count                   NUMBER := 0;
Line: 1689

select 1 from dual
where exists (select prlm.resource_list_member_id
                from  pa_resource_list_members prlm, pa_resource_assignments pra, pa_fp_rollup_tmp tmp
	       where pra.resource_assignment_id = p_resource_assignment_id
		 and  pra.resource_list_member_id= prlm.resource_list_member_id
		 and  nvl(prlm.enabled_flag,'Y') = 'N'
		 and  tmp.resource_assignment_id = pra.resource_assignment_id
		 and  tmp.budget_line_id is null);
Line: 1739

        Delete all such lines from rollup_tmp table that are not existing in
        pa_budget_lines and also marked for delete by user.
        */
        pa_debug.g_err_stage := TO_CHAR(l_stage)||'Deleting records from pa_fp_rollup_tmp that are not present in the budget lines table ';
Line: 1747

        delete from pa_fp_rollup_tmp
        where  budget_line_id is null    /* FPB3: bug 2645574: Instead of old_start_date refer budget_line_id */
          and (delete_flag = 'Y' or
              (txn_raw_cost is null and
               txn_burdened_cost is null and
               quantity is null and
               txn_revenue is null)); /* Bug 2684537 */
Line: 1755

        pa_debug.g_err_stage := TO_CHAR(l_stage)||': Deleted '||sql%rowcount||' records ';
Line: 1766

           deleted quantum of PD/SD records and updating the delete_flag back to N. This is done
           because deletion of PD/SD means reducing the PD/SD bucket amounts by that amount and
           we should not be deleting the records as such. This means PD/SD bucket amounts should
           be set to zero if delete flag = Y for them. PC/PFC buckets of PD/SD need not be touched
           since they will be maintained by the call to convert_mc api

        UPDATE  pa_fp_rollup_tmp
        SET     delete_flag = 'N'
               ,txn_raw_cost = DECODE(old_txn_raw_cost, NULL,NULL,0)
               ,txn_burdened_cost = DECODE(old_txn_burdened_cost,NULL,NULL,0)
               ,txn_revenue = DECODE(old_txn_revenue,NULL,NULL,0)
               ,quantity = DECODE(old_quantity,NULL,NULL,0)
        WHERE  delete_flag = 'Y'
        AND    bucketing_period_code IN
                (PA_FP_CONSTANTS_PKG.G_BUCKETING_PERIOD_CODE_SD,PA_FP_CONSTANTS_PKG.G_BUCKETING_PERIOD_CODE_PD);
Line: 1784

           pa_debug.g_err_stage := TO_CHAR(l_stage)||': updated '||sql%rowcount||' records ';
Line: 1796

                   SELECT budget_version_id, task_id, resource_list_member_id
                     INTO l_budget_version_id, l_task_id, l_resource_list_member_id
                     FROM pa_resource_assignments
                    WHERE resource_assignment_id = p_resource_assignment_id;
Line: 1808

                        x_msg_data := 'PA_FP_EPL_TASK_UPDATED';
Line: 1812

                                             p_msg_name            => 'PA_FP_EPL_TASK_UPDATED');
Line: 1875

       DELETE FROM pa_budget_lines bl
       WHERE (bl.resource_assignment_id
             ,bl.txn_currency_code
             ,bl.start_date ) IN (SELECT  tmp.resource_assignment_id
                                         ,tmp.txn_currency_code
                                         ,tmp.old_start_date
                                    FROM  pa_fp_rollup_tmp tmp
                                   WHERE  nvl(tmp.delete_flag,'N') = 'Y') ;
Line: 1885

       DELETE /*+ INDEX( bl PA_BUDGET_LINES_U2 )*/ FROM pa_budget_lines bl --Bug 2782166
       WHERE (budget_line_id) IN (SELECT  budget_line_id
                                    FROM  pa_fp_rollup_tmp tmp
                                   WHERE  nvl(tmp.delete_flag,'N') = 'Y');
Line: 1890

        pa_debug.g_err_stage := TO_CHAR(l_stage)||': Deleted '||sql%rowcount||' records';
Line: 1904

       UPDATE /*+ INDEX( bl PA_BUDGET_LINES_U2 )*/ PA_BUDGET_LINES bl --Bug 2782166
          SET (
                 START_DATE
                ,END_DATE
                ,QUANTITY
                ,RAW_COST
                ,BURDENED_COST
                ,REVENUE
                ,CHANGE_REASON_CODE
                ,DESCRIPTION
                ,ATTRIBUTE_CATEGORY
                ,ATTRIBUTE1
                ,ATTRIBUTE2
                ,ATTRIBUTE3
                ,ATTRIBUTE4
                ,ATTRIBUTE5
                ,ATTRIBUTE6
                ,ATTRIBUTE7
                ,ATTRIBUTE8
                ,ATTRIBUTE9
                ,ATTRIBUTE10
                ,ATTRIBUTE11
                ,ATTRIBUTE12
                ,ATTRIBUTE13
                ,ATTRIBUTE14
                ,ATTRIBUTE15
                ,PROJFUNC_CURRENCY_CODE
                ,PROJFUNC_COST_RATE_TYPE
                ,PROJFUNC_COST_EXCHANGE_RATE
                ,PROJFUNC_COST_RATE_DATE_TYPE
                ,PROJFUNC_COST_RATE_DATE
                ,PROJECT_CURRENCY_CODE
                ,PROJECT_COST_RATE_TYPE
                ,PROJECT_COST_EXCHANGE_RATE
                ,PROJECT_COST_RATE_DATE_TYPE
                ,PROJECT_COST_RATE_DATE
                ,PROJECT_RAW_COST
                ,PROJECT_BURDENED_COST
                ,PROJECT_REVENUE
                ,TXN_RAW_COST
                ,TXN_BURDENED_COST
                ,TXN_REVENUE
                ,TXN_CURRENCY_CODE
                ,BUCKETING_PERIOD_CODE
                ,PROJFUNC_REV_RATE_DATE
                ,PROJFUNC_REV_RATE_TYPE
                ,PROJFUNC_REV_EXCHANGE_RATE
                ,PROJFUNC_REV_RATE_DATE_TYPE
                ,PROJECT_REV_RATE_DATE
                ,PROJECT_REV_RATE_TYPE
                ,PROJECT_REV_EXCHANGE_RATE
                ,PROJECT_REV_RATE_DATE_TYPE
                ,RAW_COST_SOURCE
                ,BURDENED_COST_SOURCE
                ,QUANTITY_SOURCE
                ,REVENUE_SOURCE
                /* Code Addition for bug 3394907 starts */
                ,LAST_UPDATE_DATE
                ,LAST_UPDATED_BY
                ,LAST_UPDATE_LOGIN
                /* Code Addition for bug 3394907 ends */

                 ) =
                 (
          SELECT
                  START_DATE
                 ,END_DATE
                 ,decode(bucketing_period_code,NULL,QUANTITY,
                         decode(bl.QUANTITY||tmp.QUANTITY||tmp.old_QUANTITY,null,null,
                         nvl(bl.QUANTITY,0) + (nvl(tmp.QUANTITY,0) - nvl(tmp.old_QUANTITY,0))))
                 ,decode(bucketing_period_code,NULL,tmp.PROJFUNC_RAW_COST,
                         decode(bl.RAW_COST||tmp.PROJFUNC_RAW_COST||tmp.OLD_PROJFUNC_RAW_COST,null,null,
                         nvl(bl.RAW_COST,0) + (nvl(tmp.PROJFUNC_RAW_COST,0) - nvl(tmp.OLD_PROJFUNC_RAW_COST,0)))) /* Bug 2774811 */
                 ,decode(bucketing_period_code,NULL,tmp.PROJFUNC_BURDENED_COST,
                         decode(bl.BURDENED_COST||tmp.PROJFUNC_BURDENED_COST||tmp.OLD_PROJFUNC_BURDENED_COST,null,null,
                         nvl(bl.BURDENED_COST,0) + (nvl(tmp.PROJFUNC_BURDENED_COST,0) - nvl(tmp.OLD_PROJFUNC_BURDENED_COST,0)))) /* Bug 2774811 */
                 ,decode(bucketing_period_code,NULL,tmp.PROJFUNC_REVENUE,
                         decode(bl.REVENUE||tmp.PROJFUNC_REVENUE||tmp.OLD_PROJFUNC_REVENUE,null,null,
                         nvl(bl.REVENUE,0) + (nvl(tmp.PROJFUNC_REVENUE,0) - nvl(tmp.OLD_PROJFUNC_REVENUE,0)))) /* Bug 2774811 */
                 ,CHANGE_REASON_CODE
                 ,DESCRIPTION
                 ,ATTRIBUTE_CATEGORY
                 ,ATTRIBUTE1
                 ,ATTRIBUTE2
                 ,ATTRIBUTE3
                 ,ATTRIBUTE4
                 ,ATTRIBUTE5
                 ,ATTRIBUTE6
                 ,ATTRIBUTE7
                 ,ATTRIBUTE8
                 ,ATTRIBUTE9
                 ,ATTRIBUTE10
                 ,ATTRIBUTE11
                 ,ATTRIBUTE12
                 ,ATTRIBUTE13
                 ,ATTRIBUTE14
                 ,ATTRIBUTE15
                 ,PROJFUNC_CURRENCY_CODE
                 ,PROJFUNC_COST_RATE_TYPE
                 ,PROJFUNC_COST_EXCHANGE_RATE
                 ,PROJFUNC_COST_RATE_DATE_TYPE
                 ,PROJFUNC_COST_RATE_DATE
                 ,PROJECT_CURRENCY_CODE
                 ,PROJECT_COST_RATE_TYPE
                 ,PROJECT_COST_EXCHANGE_RATE
                 ,PROJECT_COST_RATE_DATE_TYPE
                 ,PROJECT_COST_RATE_DATE
                 ,decode(bucketing_period_code,NULL,tmp.PROJECT_RAW_COST,
                         decode(bl.PROJECT_RAW_COST||tmp.PROJECT_RAW_COST||tmp.OLD_PROJ_RAW_COST,null,null,
                         nvl(bl.PROJECT_RAW_COST,0) + (nvl(tmp.PROJECT_RAW_COST,0) - nvl(tmp.OLD_PROJ_RAW_COST,0)))) /* Bug 2774811 */
                 ,decode(bucketing_period_code,NULL,tmp.PROJECT_BURDENED_COST,
                         decode(bl.PROJECT_BURDENED_COST||tmp.PROJECT_BURDENED_COST||tmp.OLD_PROJ_BURDENED_COST,null,null,
                         nvl(bl.PROJECT_BURDENED_COST,0) + (nvl(tmp.PROJECT_BURDENED_COST,0) - nvl(tmp.OLD_PROJ_BURDENED_COST,0)))) /* Bug 2774811 */
                 ,decode(bucketing_period_code,NULL,tmp.PROJECT_REVENUE,
                         decode(bl.PROJECT_REVENUE||tmp.PROJECT_REVENUE||tmp.OLD_PROJ_REVENUE,null,null,
                         nvl(bl.PROJECT_REVENUE,0) + (nvl(tmp.PROJECT_REVENUE,0) - nvl(tmp.OLD_PROJ_REVENUE,0)))) /* Bug 2774811 */
                 ,decode(bucketing_period_code,NULL,TXN_RAW_COST,
                         decode(bl.txn_raw_cost||tmp.txn_raw_cost||tmp.old_txn_raw_cost,null,null,
                         nvl(bl.txn_raw_cost,0) + (nvl(tmp.txn_raw_cost,0) - nvl(tmp.old_txn_raw_cost,0))))
                 ,decode(bucketing_period_code,NULL,TXN_BURDENED_COST,
                         decode(bl.txn_burdened_cost||tmp.txn_burdened_cost||tmp.old_txn_burdened_cost,null,null,
                         nvl(bl.txn_burdened_cost,0) + (nvl(tmp.txn_burdened_cost,0) - nvl(tmp.old_txn_burdened_cost,0))))
                 ,decode(bucketing_period_code,NULL,TXN_REVENUE,
                         decode(bl.TXN_REVENUE||tmp.TXN_REVENUE||tmp.old_TXN_REVENUE,null,null,
                         nvl(bl.TXN_REVENUE,0) + (nvl(tmp.TXN_REVENUE,0) - nvl(tmp.old_TXN_REVENUE,0))))
                 ,TXN_CURRENCY_CODE
                 ,BUCKETING_PERIOD_CODE
                 ,PROJFUNC_REV_RATE_DATE
                 ,PROJFUNC_REV_RATE_TYPE
                 ,PROJFUNC_REV_EXCHANGE_RATE
                 ,PROJFUNC_REV_RATE_DATE_TYPE
                 ,PROJECT_REV_RATE_DATE
                 ,PROJECT_REV_RATE_TYPE
                 ,PROJECT_REV_EXCHANGE_RATE
                 ,PROJECT_REV_RATE_DATE_TYPE
                 ,nvl(RAW_COST_SOURCE,decode(PROJFUNC_RAW_COST,null,null,PA_FP_CONSTANTS_PKG.G_AMOUNT_SOURCE_MANUAL_M))
                 ,nvl(BURDENED_COST_SOURCE,decode(PROJFUNC_BURDENED_COST,null,null,PA_FP_CONSTANTS_PKG.G_AMOUNT_SOURCE_MANUAL_M))
                 ,nvl(QUANTITY_SOURCE,decode(QUANTITY,null,null,PA_FP_CONSTANTS_PKG.G_AMOUNT_SOURCE_MANUAL_M))
                 ,nvl(REVENUE_SOURCE,decode(PROJFUNC_REVENUE,null,null,PA_FP_CONSTANTS_PKG.G_AMOUNT_SOURCE_MANUAL_M))
                /* Code Addition for bug 3394907 starts */
                 ,sysdate
                 ,FND_GLOBAL.USER_ID
                 ,FND_GLOBAL.LOGIN_ID
                /* Code Addition for bug 3394907 ends */

            FROM  pa_fp_rollup_tmp tmp
           WHERE  bl.budget_line_id = tmp.budget_line_id
             AND  tmp.budget_line_id IS NOT NULL
             AND  nvl(tmp.delete_flag,'N') <> 'Y')
         WHERE  ( bl.budget_line_id ) IN (SELECT  tmp.budget_line_id
                                            FROM  pa_fp_rollup_tmp tmp
                                            where nvl(tmp.delete_flag,'N') <> 'Y'
                                            AND   tmp.budget_line_id IS NOT NULL);
Line: 2059

          pa_debug.g_err_stage := TO_CHAR(l_stage)||'updated '||sql%rowcount||' budget lines ';
Line: 2070

                 ,bl.txn_currency_code ) IN (SELECT  tmp.resource_assignment_id
                                                    ,tmp.old_start_date
                                                    ,tmp.txn_currency_code
                                               FROM  pa_fp_rollup_tmp tmp
                                               where nvl(tmp.delete_flag,'N') <> 'Y'
                                               AND   tmp.old_start_date IS NOT NULL) ;
Line: 2100

       INSERT INTO pa_budget_lines
              (  RESOURCE_ASSIGNMENT_ID
                ,BUDGET_LINE_ID
                ,BUDGET_VERSION_ID
                ,START_DATE
                ,LAST_UPDATE_DATE
                ,LAST_UPDATED_BY
                ,CREATION_DATE
                ,CREATED_BY
                ,LAST_UPDATE_LOGIN
                ,END_DATE
                ,PERIOD_NAME
                ,QUANTITY
                ,RAW_COST
                ,BURDENED_COST
                ,REVENUE
                ,CHANGE_REASON_CODE
                ,DESCRIPTION
                ,ATTRIBUTE_CATEGORY
                ,ATTRIBUTE1
                ,ATTRIBUTE2
                ,ATTRIBUTE3
                ,ATTRIBUTE4
                ,ATTRIBUTE5
                ,ATTRIBUTE6
                ,ATTRIBUTE7
                ,ATTRIBUTE8
                ,ATTRIBUTE9
                ,ATTRIBUTE10
                ,ATTRIBUTE11
                ,ATTRIBUTE12
                ,ATTRIBUTE13
                ,ATTRIBUTE14
                ,ATTRIBUTE15
                ,RAW_COST_SOURCE
                ,BURDENED_COST_SOURCE
                ,QUANTITY_SOURCE
                ,REVENUE_SOURCE
                ,PROJFUNC_CURRENCY_CODE
                ,PROJFUNC_COST_RATE_TYPE
                ,PROJFUNC_COST_EXCHANGE_RATE
                ,PROJFUNC_COST_RATE_DATE_TYPE
                ,PROJFUNC_COST_RATE_DATE
                ,PROJECT_CURRENCY_CODE
                ,PROJECT_COST_RATE_TYPE
                ,PROJECT_COST_EXCHANGE_RATE
                ,PROJECT_COST_RATE_DATE_TYPE
                ,PROJECT_COST_RATE_DATE
                ,PROJECT_RAW_COST
                ,PROJECT_BURDENED_COST
                ,PROJECT_REVENUE
                ,TXN_RAW_COST
                ,TXN_BURDENED_COST
                ,TXN_REVENUE
                ,TXN_CURRENCY_CODE
                ,BUCKETING_PERIOD_CODE
                ,PROJFUNC_REV_RATE_DATE_TYPE
                ,PROJFUNC_REV_RATE_DATE
                ,PROJFUNC_REV_RATE_TYPE
                ,PROJFUNC_REV_EXCHANGE_RATE
                ,PROJECT_REV_RATE_TYPE
                ,PROJECT_REV_EXCHANGE_RATE
                ,PROJECT_REV_RATE_DATE_TYPE
                ,PROJECT_REV_RATE_DATE
                ,PM_PRODUCT_CODE
		,PM_BUDGET_LINE_REFERENCE ) -- Added for bug 3858543
       (SELECT
                RESOURCE_ASSIGNMENT_ID
                ,pa_budget_lines_s.nextval
                ,l_budget_version_id
                ,START_DATE
                ,SYSDATE
                ,FND_GLOBAL.USER_ID
                ,SYSDATE
                ,FND_GLOBAL.USER_ID
                ,FND_GLOBAL.LOGIN_ID
                ,END_DATE
                ,PERIOD_NAME
                ,QUANTITY
                ,PROJFUNC_RAW_COST
                ,PROJFUNC_BURDENED_COST
                ,PROJFUNC_REVENUE
                ,CHANGE_REASON_CODE
                ,DESCRIPTION
                ,ATTRIBUTE_CATEGORY
                ,ATTRIBUTE1
                ,ATTRIBUTE2
                ,ATTRIBUTE3
                ,ATTRIBUTE4
                ,ATTRIBUTE5
                ,ATTRIBUTE6
                ,ATTRIBUTE7
                ,ATTRIBUTE8
                ,ATTRIBUTE9
                ,ATTRIBUTE10
                ,ATTRIBUTE11
                ,ATTRIBUTE12
                ,ATTRIBUTE13
                ,ATTRIBUTE14
                ,ATTRIBUTE15
                ,nvl(RAW_COST_SOURCE,decode(PROJFUNC_RAW_COST,null,null,PA_FP_CONSTANTS_PKG.G_AMOUNT_SOURCE_MANUAL_M))
                ,nvl(BURDENED_COST_SOURCE,decode(PROJFUNC_BURDENED_COST,null,null,PA_FP_CONSTANTS_PKG.G_AMOUNT_SOURCE_MANUAL_M))
                ,nvl(QUANTITY_SOURCE,decode(QUANTITY,null,null,PA_FP_CONSTANTS_PKG.G_AMOUNT_SOURCE_MANUAL_M))
                ,nvl(REVENUE_SOURCE,decode(PROJFUNC_REVENUE,null,null,PA_FP_CONSTANTS_PKG.G_AMOUNT_SOURCE_MANUAL_M))
                ,PROJFUNC_CURRENCY_CODE
                ,PROJFUNC_COST_RATE_TYPE
                ,PROJFUNC_COST_EXCHANGE_RATE
                ,PROJFUNC_COST_RATE_DATE_TYPE
                ,PROJFUNC_COST_RATE_DATE
                ,PROJECT_CURRENCY_CODE
                ,PROJECT_COST_RATE_TYPE
                ,PROJECT_COST_EXCHANGE_RATE
                ,PROJECT_COST_RATE_DATE_TYPE
                ,PROJECT_COST_RATE_DATE
                ,PROJECT_RAW_COST
                ,PROJECT_BURDENED_COST
                ,PROJECT_REVENUE
                ,TXN_RAW_COST
                ,TXN_BURDENED_COST
                ,TXN_REVENUE
                ,TXN_CURRENCY_CODE
                ,BUCKETING_PERIOD_CODE
                ,PROJFUNC_REV_RATE_DATE_TYPE
                ,PROJFUNC_REV_RATE_DATE
                ,PROJFUNC_REV_RATE_TYPE
                ,PROJFUNC_REV_EXCHANGE_RATE
                ,PROJECT_REV_RATE_TYPE
                ,PROJECT_REV_EXCHANGE_RATE
                ,PROJECT_REV_RATE_DATE_TYPE
                ,PROJECT_REV_RATE_DATE
                ,pm_product_code    -- , l_pm_product_code   changed to pm_product_code for bug 3858543
                ,pm_budget_line_reference   -- Added for bug 3858543
          FROM  pa_fp_rollup_tmp tmp
          /* bug 2645574 changed the condition to look into budget_line_id
          WHERE  tmp.old_start_date IS NULL
          */
          WHERE  tmp.budget_line_id IS NULL
            /* manokuma: added following as PD and SD should not be inserted in this procedure */
            /* Bug 2779688 - PD/SD can be inserted in this procedure and hence commenting the where clause
            AND nvl(tmp.bucketing_period_code,'XYZ') NOT IN
           (PA_FP_CONSTANTS_PKG.G_BUCKETING_PERIOD_CODE_SD,PA_FP_CONSTANTS_PKG.G_BUCKETING_PERIOD_CODE_PD) */
            AND (tmp.txn_raw_cost IS NOT NULL
                 or tmp.txn_burdened_cost IS NOT NULL
                 or tmp.quantity IS NOT NULL
                 or tmp.txn_revenue IS NOT NULL));
Line: 2250

          pa_debug.g_err_stage := TO_CHAR(l_stage)||'inserted '|| sql%rowcount ||' budget lines ';
Line: 2260

            UPDATE pa_budget_versions
               SET record_version_number = nvl(record_version_number,0) + 1
             WHERE budget_version_id = l_budget_version_id;
Line: 2266

/* Bug# 2641475 - MRC call moved here from before the insert/update of pa_budget_lines */

/*  Call MRC API */
/*
       pa_debug.g_err_stage := TO_CHAR(l_stage)||'Calling  MRC API ';
Line: 2593

                     SELECT margin_derived_from_code
                       INTO l_margin_derived_from_code
                       FROM pa_proj_fp_options
                      WHERE fin_plan_version_id = l_fin_plan_version_id;
Line: 2963

       pa_debug.g_err_stage := TO_CHAR(l_stage)||':Starting the main processing. Inserting into temp table';
Line: 2996

       delete from pa_fp_cpy_periods_tmp;
Line: 2998

       pa_debug.g_err_stage:='deleted  '||sql%rowcount || ' records from tmp table' ;
Line: 3013

                pa_debug.g_err_stage:='inserting into pa_fp_cpy_periods_tmp for preceding period' ;
Line: 3018

                INSERT INTO pa_fp_cpy_periods_tmp
                         ( start_date
                           ,end_date
                           ,pa_period_name
                           ,gl_period_name
                           ,period_name )
                SELECT     start_date      start_date
                           ,end_date       end_date
                           ,period_name    pa_period
                           ,gl_period_name gl_period
                           ,period_name    period_name
                FROM       PA_PERIODS
                WHERE start_date = p_preceding_prd_start_date;
Line: 3034

             INSERT INTO pa_fp_cpy_periods_tmp
                      ( start_date
                        ,end_date
                        ,pa_period_name
                        ,gl_period_name
                        ,period_name )
             SELECT     start_date      start_date
                        ,end_date       end_date
                        ,period_name    pa_period
                        ,gl_period_name gl_period
                        ,period_name    period_name
             FROM       PA_PERIODS
             WHERE start_date BETWEEN p_period_profile_start_date AND p_period_profile_end_date;
Line: 3048

             pa_debug.g_err_stage := TO_CHAR(l_stage)||'inserted ' || sql%rowcount || ' records';
Line: 3055

                pa_debug.g_err_stage:='inserting into pa_fp_cpy_periods_tmp for succeeding period' ;
Line: 3060

                INSERT INTO pa_fp_cpy_periods_tmp
                         ( start_date
                           ,end_date
                           ,pa_period_name
                           ,gl_period_name
                           ,period_name )
                SELECT     start_date      start_date
                           ,end_date       end_date
                           ,period_name    pa_period
                           ,gl_period_name gl_period
                           ,period_name    period_name
                FROM       PA_PERIODS
                WHERE start_date = p_succeeding_prd_start_date;
Line: 3086

                pa_debug.g_err_stage:='inserting into pa_fp_cpy_periods_tmp for preceding period' ;
Line: 3091

                INSERT INTO pa_fp_cpy_periods_tmp
                         ( start_date
                           ,end_date
                           ,pa_period_name
                           ,gl_period_name
                           ,period_name )
                SELECT     g.start_date      start_date
                           ,g.end_date       end_date
                           ,'null'         pa_period
                           ,g.period_name  gl_period
                           ,g.period_name    period_name
                  FROM     PA_IMPLEMENTATIONS  i
                          ,GL_PERIOD_STATUSES g
                  WHERE  g.set_of_books_id = i.set_of_books_id
                    AND g.application_id = pa_period_process_pkg.application_id
                    AND g.adjustment_period_flag = 'N'
                    AND g.start_date = p_preceding_prd_start_date;
Line: 3111

             INSERT INTO pa_fp_cpy_periods_tmp(
                         start_date
                         ,end_date
                         ,pa_period_name
                         ,gl_period_name
                         ,period_name )
               SELECT    g.start_date  start_date
                         ,g.end_date    end_period
                         ,'null'        pa_period     /* this value is never used */
                         ,g.period_name gl_period
                         ,g.period_name period_name
               FROM      PA_IMPLEMENTATIONS  i
                         ,GL_PERIOD_STATUSES g
               WHERE  g.set_of_books_id = i.set_of_books_id
                 AND g.application_id = pa_period_process_pkg.application_id
                 AND g.adjustment_period_flag = 'N'
                 AND g.start_date BETWEEN p_period_profile_start_date AND p_period_profile_end_date;
Line: 3129

             pa_debug.g_err_stage := TO_CHAR(l_stage)||'inserted ' || sql%rowcount || ' records';
Line: 3136

                pa_debug.g_err_stage:='inserting into pa_fp_cpy_periods_tmp for preceding period' ;
Line: 3141

                INSERT INTO pa_fp_cpy_periods_tmp
                         ( start_date
                           ,end_date
                           ,pa_period_name
                           ,gl_period_name
                           ,period_name )
                SELECT     g.start_date      start_date
                           ,g.end_date       end_date
                           ,'null'           pa_period
                           ,g.period_name gl_period
                           ,g.period_name    period_name
                  FROM     PA_IMPLEMENTATIONS  i
                          ,GL_PERIOD_STATUSES g
                  WHERE  g.set_of_books_id = i.set_of_books_id
                    AND g.application_id = pa_period_process_pkg.application_id
                    AND g.adjustment_period_flag = 'N'
                    AND g.start_date = p_succeeding_prd_start_date;
Line: 3292

     SELECT sum(nvl(raw_cost,0)),
            sum(nvl(burdened_cost,0)),
            sum(nvl(revenue,0)),
            sum(nvl(project_raw_cost,0)),
            sum(nvl(project_burdened_cost,0)),
            sum(nvl(project_revenue,0))
     INTO   x_pd_pfc_raw_cost,
            x_pd_pfc_burdened_cost,
            x_pd_pfc_revenue,
            x_pd_pc_raw_cost,
            x_pd_pc_burdened_cost,
            x_pd_pc_revenue
     FROM  pa_budget_lines
     WHERE resource_assignment_id = p_resource_assignment_id
     AND   txn_currency_code = p_txn_currency_code
     AND   bucketing_period_code in
                (PA_FP_CONSTANTS_PKG.G_BUCKETING_PERIOD_CODE_PD,PA_FP_CONSTANTS_PKG.G_BUCKETING_PERIOD_CODE_PE);
Line: 3320

     SELECT sum(nvl(raw_cost,0)),
            sum(nvl(burdened_cost,0)),
            sum(nvl(revenue,0)),
            sum(nvl(project_raw_cost,0)),
            sum(nvl(project_burdened_cost,0)),
            sum(nvl(project_revenue,0))
     INTO   x_sd_pfc_raw_cost,
            x_sd_pfc_burdened_cost,
            x_sd_pfc_revenue,
            x_sd_pc_raw_cost,
            x_sd_pc_burdened_cost,
            x_sd_pc_revenue
     FROM  pa_budget_lines
     WHERE resource_assignment_id = p_resource_assignment_id
     AND   txn_currency_code = p_txn_currency_code
     AND   bucketing_period_code in
                (PA_FP_CONSTANTS_PKG.G_BUCKETING_PERIOD_CODE_SD,PA_FP_CONSTANTS_PKG.G_BUCKETING_PERIOD_CODE_SE);
Line: 3423

  SELECT amount_type_code
        ,amount_subtype_code
        ,preceding_periods_amount
        ,succeeding_periods_amount
   FROM  pa_proj_periods_denorm
  WHERE  budget_version_id = p_budget_version_id
    AND  resource_assignment_id = p_resource_assignment_id
    AND  object_type_code = PA_FP_CONSTANTS_PKG.G_OBJECT_TYPE_RES_ASSIGNMENT
    AND  object_id = p_resource_assignment_id
    AND  currency_code = p_txn_currency_code
    AND  period_profile_id = p_period_profile_id
    AND  currency_type = PA_FP_CONSTANTS_PKG.G_CURRENCY_TYPE_TRANSACTION ;
Line: 3451

  SELECT fin_plan_preference_code
    INTO l_fin_plan_preference_code
    FROM pa_proj_fp_options pfo
        ,pa_resource_assignments pra
   WHERE pra.resource_assignment_id = p_resource_assignment_id
     AND pra.budget_version_id = pfo.fin_plan_version_id;
Line: 3586

    SELECT fin_plan_preference_code
      INTO l_fp_preference_code
      FROM pa_proj_fp_options
     WHERE fin_plan_version_id = p_budget_version_id;
Line: 3890

 SELECT   resource_assignment_id,start_date,txn_currency_code
 FROM     pa_fp_rollup_tmp
 GROUP BY resource_assignment_id,txn_currency_code,start_date
 HAVING   COUNT(*)>1;
Line: 3899

 SELECT pra.project_id
        ,pra.task_id
        ,pra.resource_list_member_id
        ,pbv.budget_type_code
        ,pbv.fin_plan_type_id
 FROM    pa_resource_assignments pra
        ,pa_budget_versions pbv
 WHERE   pra.resource_assignment_id = c_resource_assignment_id
 AND     pra.budget_version_id = pbv.budget_version_id ;
Line: 3956

            SELECT alias
            INTO   l_resource_alias
            FROM   pa_resource_list_members
            WHERE  resource_list_member_id = l_res_assignment_details_rec.resource_list_member_id;
Line: 3969

                  SELECT segment1
                  INTO   l_segment1
                  FROM   pa_projects_all
                  WHERE  project_id=l_res_assignment_details_rec.project_id;
Line: 3986

                  SELECT name
                  INTO   l_context_info
                  FROM   pa_fin_plan_types_vl
                  WHERE  fin_plan_type_id = l_res_assignment_details_rec.fin_plan_type_id;
Line: 4126

     UPDATE pa_budget_versions
        SET record_version_number = nvl(record_version_number,0) + 1
           ,last_update_date      = SYSDATE
           ,last_updated_by       = FND_GLOBAL.user_id
           ,last_update_login     = FND_GLOBAL.login_id
      WHERE budget_version_id = p_budget_version_id;