DBA Data[Home] [Help]

APPS.PA_BUDGET_PVT SQL Statements

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

Line: 19

SELECT  budget_amount_code
FROM    pa_budget_types
WHERE   budget_type_code = c_budget_type_code;
Line: 26

SELECT 'x'
FROM   pa_lookups
WHERE  lookup_type = 'BUDGET CHANGE REASON'
AND    lookup_code = c_change_reason_code;
Line: 199

      SELECT ppt.allow_cost_budget_entry_flag
            ,ppt.allow_rev_budget_entry_flag
      FROM   pa_project_types ppt
            ,pa_projects_all ppa
      WHERE  ppa.project_id = c_project_id
      AND    ppa.project_type = ppt.project_type;
Line: 210

      SELECT *
      FROM   pa_budget_entry_methods
      WHERE  budget_entry_method_code = c_budget_entry_method_code
      AND    trunc(sysdate) BETWEEN trunc(start_date_active) and trunc(nvl(end_date_active,sysdate));
Line: 226

      SELECT fin_plan_preference_code
            ,nvl(plan_in_multi_curr_flag,'N') plan_in_multi_curr_flag
            ,approved_rev_plan_type_flag
            ,projfunc_cost_rate_type
            ,projfunc_cost_rate_date_type
            ,projfunc_cost_rate_date
            ,projfunc_rev_rate_type
            ,projfunc_rev_rate_date_type
            ,projfunc_rev_rate_date
            ,project_cost_rate_type
            ,project_cost_rate_date_type
            ,project_cost_rate_date
            ,project_rev_rate_type
            ,project_rev_rate_date_type
            ,project_rev_rate_date
      FROM   pa_proj_fp_options
      WHERE  project_id=c_project_id
      AND    fin_plan_type_id=c_fin_plan_type_id
      AND    fin_plan_version_id IS NULL
      AND    fin_plan_option_level_code= PA_FP_CONSTANTS_PKG.G_OPTION_LEVEL_PLAN_TYPE;
Line: 254

      SELECT segment1
            ,baseline_funding_flag
      FROM   pa_projects_all
      WHERE  project_id=c_project_id;
Line: 269

      SELECT decode(c_version_type,
                   PA_FP_CONSTANTS_PKG.G_ELEMENT_TYPE_COST, cost_fin_plan_level_code,
                   PA_FP_CONSTANTS_PKG.G_ELEMENT_TYPE_REVENUE, revenue_fin_plan_level_code,
                   PA_FP_CONSTANTS_PKG.G_ELEMENT_TYPE_ALL, all_fin_plan_level_code) fin_plan_level_code
            ,decode(c_version_type,
                   PA_FP_CONSTANTS_PKG.G_ELEMENT_TYPE_COST, cost_resource_list_id,
                   PA_FP_CONSTANTS_PKG.G_ELEMENT_TYPE_REVENUE, revenue_resource_list_id,
                   PA_FP_CONSTANTS_PKG.G_ELEMENT_TYPE_ALL, all_resource_list_id)  resource_list_id
            ,decode(c_version_type,
                   PA_FP_CONSTANTS_PKG.G_ELEMENT_TYPE_COST, cost_time_phased_code,
                   PA_FP_CONSTANTS_PKG.G_ELEMENT_TYPE_REVENUE, revenue_time_phased_code,
                   PA_FP_CONSTANTS_PKG.G_ELEMENT_TYPE_ALL, all_time_phased_code)  time_phased_code
      FROM   pa_proj_fp_options
      WHERE  project_id=c_project_id
      AND    fin_plan_type_id=c_fin_plan_type_id
      AND    fin_plan_version_id IS NULL
      AND    fin_plan_option_level_code= PA_FP_CONSTANTS_PKG.G_OPTION_LEVEL_PLAN_TYPE;
Line: 297

      SELECT budget_version_id
            ,budget_status_code
      FROM   pa_budget_versions
      WHERE  project_id = c_project_id
      AND    budget_type_code = c_budget_type_code
      AND    budget_status_code IN ('W','S')
      AND    ci_id IS NULL;         -- Bug # 3507156 --Added an extra clause ci_id IS NULL
Line: 312

      SELECT budget_version_id
            ,budget_status_code
            ,record_version_number
            ,plan_processing_code
      FROM   pa_budget_versions
      WHERE  project_id = c_project_id
      AND    fin_plan_type_id = c_fin_plan_type_id
      AND    current_working_flag='Y'
      AND    version_type = c_version_type
      AND    budget_status_code IN ('W','S')
      AND    ci_id IS NULL;         -- Bug # 3507156 --Added an extra clause ci_id IS NULL
Line: 333

      SELECT  'X'
      FROM    pa_fin_plan_types_b fin ,pa_proj_fp_options pfo
      WHERE   pfo.project_id=c_project_id
      AND     pfo.fin_plan_option_level_code=PA_FP_CONSTANTS_PKG.G_OPTION_LEVEL_PLAN_TYPE   --AMG UT2
      AND     pfo.fin_plan_type_id = fin.fin_plan_type_id
      AND     fin.migrated_frm_bdgt_typ_code =  c_budget_type_code;
Line: 345

      SELECT 'x'
      FROM   pa_budget_versions bv
            ,pa_resource_assignments ra
            ,pa_budget_lines bl
      WHERE  bv.budget_version_id = c_budget_version_id
      AND    bv.budget_version_id = ra.budget_version_id (+)
      AND    ra.resource_assignment_id = bl.resource_assignment_id (+)
      AND    bv.ci_id IS NULL          -- Bug # 3507156 --Added an extra clause ci_id IS NULL

      FOR UPDATE OF bv.budget_version_id,ra.budget_version_id,bl.resource_assignment_id NOWAIT;
Line: 359

      Select 'X'
      from   pa_lookups
      where  lookup_type='PM_PRODUCT_CODE'
      and    lookup_code = c_pm_product_code;
Line: 714

            IF pa_security.allow_update (x_project_id => px_pa_project_id ) = 'N' THEN

                  -- The user does not have update privileges on this project
                  -- Hence , raise error

                  pa_interface_utils_pub.map_new_amg_msg
                  ( p_old_message_code => 'PA_PROJECT_SECURITY_ENFORCED'
                   ,p_msg_attribute    => 'CHANGE'
                   ,p_resize_flag      => 'Y'
                   ,p_msg_context      => 'GENERAL'
                   ,p_attribute1       => ''
                   ,p_attribute2       => ''
                   ,p_attribute3       => ''
                   ,p_attribute4       => ''
                   ,p_attribute5       => '');
Line: 1112

                                          SELECT migration_code
                                          INTO   l_res_list_migration_code
                                          FROM   pa_resource_lists_all_bg
                                          WHERE  resource_list_id = px_resource_list_id;
Line: 1385

            SELECT name,use_for_workplan_flag
            INTO   l_fin_plan_type_name,l_workplan_flag
            FROM   pa_fin_plan_types_vl
            WHERE  fin_plan_type_id =  px_fin_plan_type_id;
Line: 1789

                           SELECT migration_code
                           INTO   l_res_list_migration_code
                           FROM   pa_resource_lists_all_bg
                           WHERE  resource_list_id = px_resource_list_id;
Line: 1922

                       SELECT 'Y'
                       INTO l_exists
                       FROM dual
                       WHERE exists(SELECT 'X' FROM pa_period_masks_b WHERE trunc(sysdate) between  EFFECTIVE_START_DATE
                       AND nvl( EFFECTIVE_END_DATE,sysdate)
                       AND TIME_PHASE_CODE = px_time_phased_code);                  -- Bug # 3507156
Line: 2728

      SELECT 1
      FROM pa_fin_plan_types_b
      WHERE fin_plan_type_id = p_fin_plan_type_id
      AND   use_for_workplan_flag = 'Y';
Line: 2737

      SELECT entry_level_code
            ,categorization_code
            ,time_phased_type_code
      FROM   pa_budget_entry_methods
      WHERE  budget_entry_method_code = c_budget_entry_method_code
      AND    trunc(sysdate) BETWEEN trunc(start_date_active) and trunc(nvl(end_date_active,sysdate));
Line: 2751

      SELECT nvl(plan_in_multi_curr_flag,'N') multi_curr_flag
            ,decode(c_version_type,
                   PA_FP_CONSTANTS_PKG.G_ELEMENT_TYPE_COST, cost_fin_plan_level_code,
                   PA_FP_CONSTANTS_PKG.G_ELEMENT_TYPE_REVENUE, revenue_fin_plan_level_code,
                   PA_FP_CONSTANTS_PKG.G_ELEMENT_TYPE_ALL, all_fin_plan_level_code) fin_plan_level_code
            ,decode(c_version_type,
                   PA_FP_CONSTANTS_PKG.G_ELEMENT_TYPE_COST, cost_resource_list_id,
                   PA_FP_CONSTANTS_PKG.G_ELEMENT_TYPE_REVENUE, revenue_resource_list_id,
                   PA_FP_CONSTANTS_PKG.G_ELEMENT_TYPE_ALL, all_resource_list_id)  resource_list_id
            ,decode(c_version_type,
                   PA_FP_CONSTANTS_PKG.G_ELEMENT_TYPE_COST, cost_time_phased_code,
                   PA_FP_CONSTANTS_PKG.G_ELEMENT_TYPE_REVENUE, revenue_time_phased_code,
                   PA_FP_CONSTANTS_PKG.G_ELEMENT_TYPE_ALL, all_time_phased_code)  time_phased_code
      FROM   pa_proj_fp_options
      WHERE  project_id=c_project_id
      AND    fin_plan_type_id=c_fin_plan_type_id
      AND    fin_plan_version_id = c_fin_plan_version_id;
Line: 2774

      SELECT segment1
      FROM   pa_projects_all
      WHERE  project_id=c_project_id;
Line: 2781

      Select 'X'
      from   pa_lookups
      where  lookup_type='PM_PRODUCT_CODE'
      and    lookup_code = c_pm_product_code;
Line: 2791

      SELECT budget_version_id
      ,      budget_entry_method_code
      ,      resource_list_id
      FROM   pa_budget_versions
      WHERE  project_id        = c_project_id
      AND    budget_type_code  = c_budget_type_code
      AND    budget_status_code    = 'W'
      AND    ci_id IS NULL;
Line: 2807

      SELECT budget_version_id
      FROM   pa_budget_versions
      WHERE  project_id=c_project_id
      AND    fin_plan_type_id=c_fin_plan_type_id
      AND    version_type=c_version_type
      AND    version_number=c_version_number
      AND    budget_status_code='W'
      AND    ci_id is null;
Line: 3998

PROCEDURE insert_budget_line
( p_return_status             OUT   NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
 ,p_pa_project_id             IN    NUMBER            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
 ,p_budget_type_code          IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
 ,p_pa_task_id                IN    NUMBER            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
 ,p_pm_task_reference         IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
 ,p_resource_alias            IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
 ,p_member_id                 IN    NUMBER            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
 ,p_budget_start_date         IN    DATE              := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
 ,p_budget_end_date           IN    DATE              := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
 ,p_period_name               IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
 ,p_description               IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
 ,p_raw_cost                  IN    NUMBER            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
 ,p_burdened_cost             IN    NUMBER            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
 ,p_revenue                   IN    NUMBER            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
 ,p_quantity                  IN    NUMBER            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
 ,p_pm_product_code           IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
 ,p_pm_budget_line_reference  IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
 ,p_attribute_category        IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
 ,p_attribute1                IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
 ,p_attribute2                IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
 ,p_attribute3                IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
 ,p_attribute4                IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
 ,p_attribute5                IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
 ,p_attribute6                IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
 ,p_attribute7                IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
 ,p_attribute8                IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
 ,p_attribute9                IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
 ,p_attribute10               IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
 ,p_attribute11               IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
 ,p_attribute12               IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
 ,p_attribute13               IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
 ,p_attribute14               IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
 ,p_attribute15               IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
 ,p_resource_list_id          IN    NUMBER            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
 ,p_time_phased_type_code     IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
 ,p_entry_level_code          IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
 ,p_budget_amount_code        IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
 ,p_budget_entry_method_code  IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
 ,p_categorization_code       IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
 ,p_budget_version_id         IN    NUMBER            := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
 ,p_change_reason_code        IN    VARCHAR2          := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR )--Bug 4224464

IS

   l_return_status                        VARCHAR2(1);
Line: 4044

   l_api_name                 CONSTANT    VARCHAR2(30)            := 'insert_budget_line';
Line: 4109

      SELECT   segment1
      FROM     pa_projects p
      WHERE p.project_id = p_pa_project_id;
Line: 4120

      SELECT pr.unit_of_measure
            ,prlm.track_as_labor_flag
      FROM   pa_resources pr
            ,pa_resource_lists prl
            ,pa_resource_list_members prlm
      WHERE  prl.resource_list_id = c_resource_list_id
      AND    pr.resource_id = prlm.resource_id
      AND    prl.resource_list_id = prlm.resource_list_id
      AND    prlm.resource_list_member_id = c_resource_list_member_id;
Line: 4133

      SAVEPOINT insert_budget_line_pvt;
Line: 4448

            NULL;  --we don't insert budget lines with all zero's
Line: 4708

            ROLLBACK TO insert_budget_line_pvt;
Line: 4715

            ROLLBACK TO insert_budget_line_pvt;
Line: 4721

            ROLLBACK TO insert_budget_line_pvt;
Line: 4733

END insert_budget_line;
Line: 4762

PROCEDURE update_budget_line_sql
( p_return_status             OUT   NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
 ,p_budget_entry_method_code  IN    VARCHAR2
 ,p_resource_assignment_id    IN    NUMBER
 ,p_start_date                IN    DATE
 ,p_time_phased_type_code     IN    VARCHAR2
 ,p_description               IN    VARCHAR2
 ,p_quantity                  IN    NUMBER
 ,p_raw_cost                  IN    NUMBER
 ,p_burdened_cost             IN    NUMBER
 ,p_revenue                   IN    NUMBER
 ,p_change_reason_code        IN    VARCHAR2
 ,p_attribute_category        IN    VARCHAR2
 ,p_attribute1                IN    VARCHAR2
 ,p_attribute2                IN    VARCHAR2
 ,p_attribute3                IN    VARCHAR2
 ,p_attribute4                IN    VARCHAR2
 ,p_attribute5                IN    VARCHAR2
 ,p_attribute6                IN    VARCHAR2
 ,p_attribute7                IN    VARCHAR2
 ,p_attribute8                IN    VARCHAR2
 ,p_attribute9                IN    VARCHAR2
 ,p_attribute10               IN    VARCHAR2
 ,p_attribute11               IN    VARCHAR2
 ,p_attribute12               IN    VARCHAR2
 ,p_attribute13               IN    VARCHAR2
 ,p_attribute14               IN    VARCHAR2
 ,p_attribute15               IN    VARCHAR2
)

IS

   --needed to get the current data of a budget line

   CURSOR l_budget_line_csr
        (p_resource_assigment_id NUMBER
        ,p_budget_start_date     DATE )
   IS
   SELECT pa_budget_lines.*, rowid
   FROM   pa_budget_lines
   WHERE  resource_assignment_id = p_resource_assigment_id
   AND    start_date = p_budget_start_date;
Line: 4810

  SELECT burdened_cost_flag
  FROM pa_budget_entry_methods
  WHERE budget_entry_method_code = p_budget_entry_method_code
  AND    trunc(sysdate)
  BETWEEN trunc(start_date_active) and trunc(nvl(end_date_active,sysdate));
Line: 4818

   l_api_name                 CONSTANT    VARCHAR2(30)            := 'update_budget_line_sql';
Line: 4823

   l_update_yes_flag                      VARCHAR2(1) := 'N';
Line: 4841

    SAVEPOINT update_budget_line_sql_pvt;
Line: 4858

    l_statement := ' UPDATE PA_BUDGET_LINES SET ';
Line: 4868

            l_update_yes_flag := 'Y';
Line: 4880

            l_update_yes_flag := 'Y';
Line: 4898

                l_update_yes_flag := 'Y';
Line: 4908

                l_update_yes_flag := 'Y';
Line: 4918

            l_update_yes_flag := 'Y';
Line: 4927

            l_update_yes_flag := 'Y';
Line: 4935

            l_update_yes_flag := 'Y';
Line: 4943

            l_update_yes_flag := 'Y';
Line: 4951

            l_update_yes_flag := 'Y';
Line: 4959

            l_update_yes_flag := 'Y';
Line: 4967

            l_update_yes_flag := 'Y';
Line: 4975

            l_update_yes_flag := 'Y';
Line: 4983

            l_update_yes_flag := 'Y';
Line: 4991

            l_update_yes_flag := 'Y';
Line: 4999

            l_update_yes_flag := 'Y';
Line: 5007

            l_update_yes_flag := 'Y';
Line: 5015

            l_update_yes_flag := 'Y';
Line: 5023

            l_update_yes_flag := 'Y';
Line: 5031

            l_update_yes_flag := 'Y';
Line: 5039

            l_update_yes_flag := 'Y';
Line: 5047

            l_update_yes_flag := 'Y';
Line: 5055

            l_update_yes_flag := 'Y';
Line: 5063

            l_update_yes_flag := 'Y';
Line: 5070

           - Adding txn_currency_code in update for more clarity to indicate the update will
             always update just one record. We get the budget_line_id of the updated record
             and pass to mrc api */

    BEGIN
      SELECT projfunc_currency_code
      INTO   l_txn_currency_code
      FROM   pa_projects_all a, pa_budget_versions b, pa_resource_Assignments c
      WHERE  a.project_id = b.project_id
      AND    b.budget_version_id = c.budget_version_id
      AND    c.resource_assignment_id = p_resource_assignment_id
      AND    b.ci_id IS NULL;    --  -- Added an extra clause b.ci_id IS NULL --Bug # 3507156
Line: 5089

    IF l_update_yes_flag = 'Y'
    THEN
        l_statement := l_statement ||
                       ' LAST_UPDATE_DATE = :xLastUpdateDate'||',';
Line: 5095

                       ' LAST_UPDATED_BY = '||G_USER_ID||',';
Line: 5098

                       ' LAST_UPDATE_LOGIN = '||G_LOGIN_ID||',';
Line: 5355

        DBMS_SQL.BIND_VARIABLE(l_cursor_id, ':xLastUpdateDate', SYSDATE);
Line: 5370

             SELECT budget_line_id, budget_version_id --Bug 4224464
             INTO   l_budget_line_id, l_budget_version_id
             FROM   pa_budget_lines
             WHERE  resource_assignment_id = p_resource_assignment_id
             AND    start_date = p_start_date
             AND    txn_currency_code = l_txn_currency_code;
Line: 5378

                l_budget_line_id := null; /* No budget line was updated */
Line: 5382

        /* FPB2: Proceed with MRC only if a budget line was update */
        --Bug 4224464: changed IF condition to determine whether update has happened or not
        /*
         IF nvl(l_rows,0) > 0 THEN

             IF PA_MRC_FINPLAN.G_MRC_ENABLED_FOR_BUDGETS IS NULL THEN
                    PA_MRC_FINPLAN.CHECK_MRC_INSTALL
                              (x_return_status      => l_return_status,
                               x_msg_count          => l_msg_count,
                               x_msg_data           => l_msg_data);
Line: 5399

                              p_action         => PA_MRC_FINPLAN.G_ACTION_UPDATE,
                              x_return_status  => l_return_status,
                              x_msg_count      => l_msg_count,
                              x_msg_data       => l_msg_data);
Line: 5441

                  PA_BUDGET_LINES_V_PKG.delete_row
                        ( x_rowid => l_budget_line_rec.rowid );
Line: 5449

                        IF nvl(l_rows,0) > 0 THEN--Calling MRC APIs only if a budget line was updated

                           IF PA_MRC_FINPLAN.G_MRC_ENABLED_FOR_BUDGETS IS NULL THEN
                                  PA_MRC_FINPLAN.CHECK_MRC_INSTALL
                                            (x_return_status      => l_return_status,
                                             x_msg_count          => l_msg_count,
                                             x_msg_data           => l_msg_data);
Line: 5463

                                            p_action         => PA_MRC_FINPLAN.G_ACTION_DELETE,
                                            x_return_status  => l_return_status,
                                            x_msg_count      => l_msg_count,
                                            x_msg_data       => l_msg_data);
Line: 5483

                              ,  p_procedure_name     => 'DELETE_ROW'
                              ,  p_error_text         => SQLCODE              );
Line: 5491

    END IF;--l_update_yes_flag = 'Y'
Line: 5498

      ROLLBACK TO update_budget_line_sql_pvt;
Line: 5505

      ROLLBACK TO update_budget_line_sql_pvt;
Line: 5511

      ROLLBACK TO update_budget_line_sql_pvt;
Line: 5524

END update_budget_line_sql;
Line: 5718

 ,p_delete_flag_tbl                 IN     SYSTEM.pa_varchar2_1_tbl_type := SYSTEM.pa_varchar2_1_tbl_type()
 ,p_mfc_cost_type_tbl               IN     SYSTEM.PA_VARCHAR2_15_TBL_TYPE  := SYSTEM.PA_VARCHAR2_15_TBL_TYPE()
 ,p_spread_curve_name_tbl           IN     SYSTEM.PA_VARCHAR2_240_TBL_TYPE := SYSTEM.PA_VARCHAR2_240_TBL_TYPE()
 ,p_sp_fixed_date_tbl               IN     SYSTEM.PA_DATE_TBL_TYPE         := SYSTEM.PA_DATE_TBL_TYPE()
 ,p_etc_method_name_tbl             IN     SYSTEM.PA_VARCHAR2_80_TBL_TYPE  := SYSTEM.PA_VARCHAR2_80_TBL_TYPE()
 ,p_spread_curve_id_tbl             IN     SYSTEM.PA_NUM_TBL_TYPE          := SYSTEM.PA_NUM_TBL_TYPE()
 ,p_amount_type_tbl                 IN     SYSTEM.PA_VARCHAR2_30_TBL_TYPE  := SYSTEM.PA_VARCHAR2_30_TBL_TYPE()
 /* Bug 3986129: end*/

 ,px_budget_lines_in                IN OUT NOCOPY PA_BUDGET_PUB.G_BUDGET_LINES_IN_TBL%TYPE --File.Sql.39 bug 4440895
 /* Bug 3133930- a new output variable is introduced to return the error status */
 ,x_budget_lines_out                OUT    NOCOPY PA_BUDGET_PUB.G_BUDGET_LINES_OUT_TBL%TYPE --File.Sql.39 bug 4440895
/* Bug 3986129: FP.M Web ADI Dev changes: New parameters added */
 ,x_mfc_cost_type_id_tbl            OUT    NOCOPY SYSTEM.pa_num_tbl_type --File.Sql.39 bug 4440895
 ,x_etc_method_code_tbl             OUT    NOCOPY SYSTEM.pa_varchar2_30_tbl_type --File.Sql.39 bug 4440895
 ,x_spread_curve_id_tbl             OUT    NOCOPY SYSTEM.pa_num_tbl_type --File.Sql.39 bug 4440895
 ,x_msg_count                       OUT    NOCOPY NUMBER --File.Sql.39 bug 4440895
 ,x_msg_data                        OUT    NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
 ,x_return_status                   OUT    NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
)
IS

      --Declare a pl/sql table for storing the txn currencies of the plan type

      --l_valid_txn_currencies_tbl  pa_fp_webadi_pkg.l_txn_currency_code_tbl_typ;    Bug 2871603
Line: 5756

      SELECT txn_currency_code
      FROM   pa_fp_txn_currencies ptxn
            ,pa_projects_all p
      WHERE  p.project_id=c_project_id
      AND    ptxn.project_id = p.project_id
      AND    ptxn.txn_currency_code NOT IN (p.project_currency_code, p.projfunc_currency_code)
      AND    ptxn.proj_fp_options_id  = c_proj_fp_options_id;  --made changes to the sql for bug 4886319 (performance)
Line: 5771

      SELECT txn_currency_code
      FROM   pa_fp_txn_currencies ptxn
            ,pa_projects_all p
      WHERE  p.project_id = c_project_id
      AND    ptxn.project_id = p.project_id
      AND    ptxn.fin_plan_type_id = c_fin_plan_type_id
      AND    ptxn.txn_currency_code NOT IN (p.project_currency_code, p.projfunc_currency_code)
      AND    ptxn.fin_plan_version_id = c_fin_plan_version_id;
Line: 5786

      SELECT pr.unit_of_measure
            ,prlm.track_as_labor_flag
            ,prlm.migration_code
      FROM   pa_resources pr
            ,pa_resource_lists prl
            ,pa_resource_list_members prlm
      WHERE  prl.resource_list_id = c_resource_list_id
      AND    pr.resource_id = prlm.resource_id
      AND    prl.resource_list_id = prlm.resource_list_id
      AND    prlm.resource_list_member_id = c_resource_list_member_id;
Line: 5801

      SELECT prlm.unit_of_measure,
             prlm.migration_code
      FROM   pa_resource_list_members prlm
      WHERE  prlm.resource_list_member_id = c_resource_list_member_id;
Line: 5810

      SELECT segment1
      FROM   pa_projects p
      WHERE  p.project_id = c_pa_project_id;
Line: 5819

      SELECT task_number
      FROM   pa_tasks p
      WHERE  p.task_id = c_pa_task_id;
Line: 5829

      SELECT approved_rev_plan_type_flag,
             proj_fp_options_id
      FROM   pa_proj_fp_options
      WHERE  project_id=c_project_id
      AND    fin_plan_type_id=c_fin_plan_type_id
      AND    fin_plan_option_level_code=PA_FP_CONSTANTS_PKG.G_OPTION_LEVEL_PLAN_TYPE;
Line: 5840

      SELECT  pt.plan_class_code
             ,bv.etc_start_date
      FROM    pa_budget_versions bv,
              pa_fin_plan_types_b pt
      WHERE   bv.budget_version_id = c_budget_version_id
      AND     pt.fin_plan_type_id = bv.fin_plan_type_id;
Line: 5909

      Select 'X'
      from   pa_lookups
      where  lookup_type='PM_PRODUCT_CODE'
      and    lookup_code = c_pm_product_code;
Line: 5967

      SELECT pbv.ci_id,
             agr.agreement_currency_code
      FROM   pa_budget_versions pbv,
             pa_agreements_all agr
      WHERE  pbv.budget_version_id = c_budget_version_id
      AND    pbv.agreement_id = agr.agreement_id;
Line: 6049

      IF ( p_calling_context in('RES_ASSGNMT_LEVEL_VALIDATION','UPDATE_PLANNING_ELEMENT_ATTR') AND p_budget_type_code IS NOT NULL )
      THEN
                  PA_UTILS.ADD_MESSAGE
                      (p_app_short_name => 'PA',
                       p_msg_name     => 'PA_FP_INV_PARAM_PASSED');
Line: 6158

                px_budget_lines_in.COUNT <> p_delete_flag_tbl.COUNT OR
                px_budget_lines_in.COUNT <> p_mfc_cost_type_tbl.COUNT OR
                px_budget_lines_in.COUNT <> p_spread_curve_name_tbl.COUNT OR
                px_budget_lines_in.COUNT <> p_sp_fixed_date_tbl.COUNT OR
                px_budget_lines_in.COUNT <> p_etc_method_name_tbl.COUNT THEN
                     IF l_debug_mode = 'Y' THEN
                         pa_debug.g_err_stage:= 'For Web ADI context the input tables are not equal';
Line: 6193

       IF p_calling_context = 'UPDATE_PLANNING_ELEMENT_ATTR' THEN
               IF px_budget_lines_in.COUNT <> p_uom_tbl.COUNT OR
                       px_budget_lines_in.COUNT <> p_planning_start_date_tbl.COUNT OR
                       px_budget_lines_in.COUNT <> p_planning_end_date_tbl.COUNT OR
                       px_budget_lines_in.COUNT <> p_mfc_cost_type_tbl.COUNT OR
                       px_budget_lines_in.COUNT <> p_spread_curve_name_tbl.COUNT OR
                       px_budget_lines_in.COUNT <> p_sp_fixed_date_tbl.COUNT OR
                       px_budget_lines_in.COUNT <> p_etc_method_name_tbl.COUNT THEN
                            IF l_debug_mode = 'Y' THEN
                                pa_debug.g_err_stage:= 'For UPDATE_PLANNING_ELEMENT_ATTR context the input tables are not equal';
Line: 6218

            Select spread_curve_id
            into l_fixed_date_sp_id
            from pa_spread_curves_b
            where spread_curve_code = 'FIXED_DATE';
Line: 6223

            select segment1
            into l_project_number
            from pa_projects_all
            where project_id=p_pa_project_id;
Line: 6349

           SELECT name
            INTO   l_fin_plan_type_name
            FROM   pa_fin_plan_types_vl
            WHERE  fin_plan_type_id =  p_fin_plan_type_id;
Line: 6757

              IF ( p_calling_context  not in ('RES_ASSGNMT_LEVEL_VALIDATION','UPDATE_PLANNING_ELEMENT_ATTR') )
              THEN
                      IF p_calling_context = 'WEBADI' THEN  -- Bug 3986129: FP.M Web ADI Dev changes
                          -- checking if the planning start date/end date has been explcitely nulled ou
                          IF p_planning_start_date_tbl(i) = FND_API.G_MISS_DATE OR
                             p_planning_end_date_tbl(i) = FND_API.G_MISS_DATE THEN
                                  l_webadi_err_code_tbl.extend(1);
Line: 6905

              END IF; --p_calling_context <> 'RES_ASSGNMT_LEVEL_VALIDATION','UPDATE_PLANNING_ELEMENT_ATTR'
Line: 6907

              IF p_calling_context <> 'UPDATE_PLANNING_ELEMENT_ATTR' then -- Bug 5509192
                  --every budget line need to be checked for it's amount values.
                  IF p_fin_plan_type_id IS NULL THEN
                  --Budget Model.Do not pass version type and amount flags

                        pa_budget_pvt.check_entry_method_flags
                                   ( p_budget_amount_code        => l_budget_amount_code
                                    ,p_budget_entry_method_code  => p_budget_entry_method_code
                                    ,p_quantity                  => px_budget_lines_in(i).quantity
                                    ,p_raw_cost                  => px_budget_lines_in(i).raw_cost
                                    ,p_burdened_cost             => px_budget_lines_in(i).burdened_cost
                                    ,p_revenue                   => px_budget_lines_in(i).revenue
                                    ,p_return_status             => x_return_status

                                    -- Bug 3986129: FP.M Web ADI Dev changes
                                    ,x_webadi_error_code         => l_new_error_code);
Line: 6995

              END IF; --p_clalling_context <> 'UPDATE_PLANNING_ELEMENT_ATTR' Bug 5509192
Line: 7006

                        IF p_calling_context = 'UPDATE_PLANNING_ELEMENT_ATTR' then
                                   l_valid_rlmid := 'Y';
Line: 7184

                                                      SELECT parent_member_id
                                                            ,resource_type_code
                                                            ,alias
                                                      INTO   l_parent_member_id
                                                            ,l_resource_type_code
                                                            ,pa_budget_pvt.g_resource_alias
                                                      FROM   pa_resource_list_members
                                                      WHERE  resource_list_member_id = px_budget_lines_in(i).resource_list_member_id;
Line: 7304

                  IF p_calling_context= 'UPDATE_PLANNING_ELEMENT_ATTR' then
                         IF l_valid_rlmid ='Y' then
                                   SELECT  ALIAS
                                   INTO   px_budget_lines_in(i).resource_alias
                                   FROM   pa_resource_list_members
                                   WHERE  resource_list_member_id = px_budget_lines_in(i).resource_list_member_id;
Line: 7317

                   (p_calling_context='UPDATE_PLANNING_ELEMENT_ATTR' and l_valid_rlmid ='Y') THEN --Bug 5509192

                       -- validating resource level attributes
                       IF p_uom_tbl(i) IS NOT NULL AND
                          p_uom_tbl(i) = FND_API.G_MISS_CHAR THEN
                              -- UOM has been nulled out
                              l_webadi_err_code_tbl.extend(1);
Line: 7370

                         (p_calling_context = 'UPDATE_PLANNING_ELEMENT_ATTR' or
                          p_etc_method_name_tbl(i) <> FND_API.G_MISS_CHAR) THEN
                              BEGIN
                                    SELECT lookup_code
                                    INTO   l_etc_method_code
                                    FROM   pa_lookups
                                    WHERE  lookup_type = 'PA_FP_ETC_METHOD'
                                    AND    meaning = p_etc_method_name_tbl(i);
Line: 7385

                                 IF p_calling_context = 'UPDATE_PLANNING_ELEMENT_ATTR' then
                                       IF px_budget_lines_in(i).pa_task_id <> 0 then
                                               PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
                                               p_msg_name       => 'INVALID_ETC_METHOD_AMG',
                                               p_token1         => 'PROJECT_OR_TASK_NUMBER',
                                               p_value1         => l_amg_task_number,
                                               p_token2         => 'RESOURCE',
                                               p_value2         => px_budget_lines_in(i).resource_alias);
Line: 7430

                                    SELECT cost_type_id
                                    INTO   l_mfc_cost_type_id
                                    FROM   CST_COST_TYPES_V
                                    WHERE  multi_org_flag = 1
                                    AND    cost_type = p_mfc_cost_type_tbl(i);
Line: 7474

                                 p_calling_context <> 'UPDATE_PLANNING_ELEMENT_ATTR' THEN

                                    l_webadi_err_code_tbl.extend(1);
Line: 7488

                                    (p_calling_context = 'UPDATE_PLANNING_ELEMENT_ATTR' or
                                      p_spread_curve_name_tbl(i) <> FND_API.G_MISS_CHAR) THEN

                                    BEGIN
                                          SELECT spread_curve_id
                                          INTO   l_spread_curve_id
                                          FROM   pa_spread_curves_vl
                                          WHERE  name = p_spread_curve_name_tbl(i);
Line: 7502

                                       IF p_calling_context = 'UPDATE_PLANNING_ELEMENT_ATTR' then
                                               IF px_budget_lines_in(i).pa_task_id <> 0 then
                                                       PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
                                                       p_msg_name       => 'INVALID_SPREAD_CURVE_AMG',
                                                       p_token1         => 'PROJECT_OR_TASK_NUMBER',
                                                       p_value1         => l_amg_task_number,
                                                       p_token2         => 'RESOURCE',
                                                       p_value2         => px_budget_lines_in(i).resource_alias);
Line: 7544

                      if p_calling_context ='UPDATE_PLANNING_ELEMENT_ATTR' then
                                   l_invalid_resassgn_flag :='N';
Line: 7551

                                           SELECT resource_assignment_id,planning_start_date,
                                           planning_end_date,nvl(l_spread_curve_id,spread_curve_id),sp_fixed_date
                                           INTO l_resource_assignment_id,l_planning_start_date,
                                           l_planning_end_date,l_spread_curve_id,l_sp_fixed_date
                                           FROM pa_resource_assignments
                                           WHERE  budget_version_id=p_version_info_rec.x_budget_version_id
                                           AND task_id=px_budget_lines_in(i).pa_task_id
                                           AND resource_list_member_id=px_budget_lines_in(i).resource_list_member_id
                                           AND project_id=p_pa_project_id
                                           AND PROJECT_ASSIGNMENT_ID =-1;
Line: 7700

                          end if; -- end of newly introduced checks for UPDATE_PLANNING_ELEMENT_ATTR
Line: 7701

                   END IF;  -- Bug 3986129: FP.M Web ADI ,UPDATE_PLANNING_ELEMENT_ATTR
Line: 7704

              IF ( p_calling_context NOT IN( 'RES_ASSGNMT_LEVEL_VALIDATION','WEBADI','UPDATE_PLANNING_ELEMENT_ATTR') OR --Bug 5509192
                  (p_calling_context = 'WEBADI' AND ((NOT (p_delete_flag_tbl.exists(i))) OR
                                                          Nvl(p_delete_flag_tbl(i), 'N') <> 'Y')))
              THEN
                    --Validate the change reason code. This validation is added for Fin plan model in FP L
                   IF (px_budget_lines_in(i).change_reason_code IS NOT NULL AND
                       ((p_calling_context = 'WEBADI' AND px_budget_lines_in(i).change_reason_code  <> FND_API.G_MISS_CHAR) OR
                        (p_calling_context <> 'WEBADI' AND px_budget_lines_in(i).change_reason_code  <> PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR))) THEN

                          OPEN l_budget_change_reason_csr( px_budget_lines_in(i).change_reason_code );
Line: 7766

                END IF; --p_calling_context <> 'RES_ASSGNMT_LEVEL_VALIDATION','UPDATE_PLANNING_ELEMENT_ATTR'
Line: 7768

                 IF p_fin_plan_type_id IS NOT NULL and p_calling_context <> 'UPDATE_PLANNING_ELEMENT_ATTR' THEN -- Bug 5509192

                      --Bug#4457546:Added code to throw an error when amounts are entered for a period which
                      --does not fall within the planning start/end dates of resource assignment
                      --This API validate_budget_lines is being called from the following API's
                      --CREATE_DRAFT_BUDGET  (PACKAGE PA_BUDGET_PUB)
                      --ADD_BUDGET_LINE      (PACKAGE PA_BUDGET_PUB)
                      --UPDATE_BUDGET        (PACKAGE PA_BUDGET_PUB)
                      --UPDATE_BUDGET_LINE   (PACKAGE PA_BUDGET_PUB)
                      --CREATE_DRAFT_FINPLAN (PACKAGE PA_BUDGET_PUB)
                      --INSERT_BUDGET_LINE   (PACKAGE PA_BUDGET_PVT)
                      -- Of all the above places the below if condition would only be satisfied by ADD_BUDGET_LINE, UPDATE_BUDGET,
                      --UPDATE_BUDGET_LINE for finplan model only which is what is required here. This validation should only be done
                      --only from these calling places and only for finplan model.

                      IF ( p_calling_context = 'BUDGET_LINE_LEVEL_VALIDATION' and p_version_info_rec.x_budget_version_id is not null)
                      THEN

                        --Prepare the index in this form for each budget line.
                         l_distinct_taskid_rlmid_index := 'T'||px_budget_lines_in(i).pa_task_id||'R'||px_budget_lines_in(i).resource_list_member_id;
Line: 7802

                                 SELECT pra.planning_start_date,
                                        pra.planning_end_date,
                                        prlm.alias
                                 INTO l_plan_start_date,
                                      l_plan_end_date,
                                      l_resource_alias
                                 FROM pa_resource_assignments pra,
                                      pa_resource_list_members prlm
                                 WHERE pra.budget_version_id = p_version_info_rec.x_budget_version_id
                                 AND   pra.resource_list_member_id = px_budget_lines_in(i).resource_list_member_id
                                 AND   pra.task_id = px_budget_lines_in(i).pa_task_id
                                 AND   prlm.resource_list_member_id = pra.resource_list_member_id;
Line: 8083

                             IF (p_delete_flag_tbl.exists(i) AND
                                 Nvl(p_delete_flag_tbl(i), 'N') = 'Y')THEN
                                     l_webadi_cont_proc_flag := 'N';
Line: 8553

SELECT ra.task_id,
     ra.resource_list_member_id,
     bl.txn_currency_code,
     bl.start_date,
     DECODE(bl.cost_rejection_code,NULL,
          DECODE(bl.revenue_rejection_code,NULL,
               DECODE(bl.burden_rejection_code,NULL,
                    DECODE(bl.other_rejection_code,NULL,
                         DECODE(bl.pfc_cur_conv_rejection_code,NULL,
                              DECODE(bl.pc_cur_conv_rejection_code,NULL,NULL,'E')
                                   ,'E'),'E'),'E'),'E'),'E') return_status
FROM pa_resource_assignments ra , pa_budget_lines bl
where ra.budget_version_id = p_fin_plan_version_id
and ra.resource_assignment_id = bl.resource_assignment_id;
Line: 8658

	 SELECT nvl(cost_time_phased_code,NVL(revenue_time_phased_code,all_time_phased_code)),     -- Added for BUG 6847497
 	        prl.uncategorized_flag
 	 INTO   l_time_phased_code, l_uncategorized_flag
 	 FROM   pa_proj_fp_options , pa_resource_lists_all_bg prl
 	 WHERE  fin_plan_version_id=p_fin_plan_version_id
 	 AND    nvl(cost_resource_list_id,nvl(revenue_resource_list_id,all_resource_list_id))=
 	        prl.resource_list_id;
Line: 8776

      SELECT 'Y'
      FROM pa_bc_balances
      WHERE budget_version_id = p_budget_version_id;
Line: 8838

         SELECT l.Latest_Encumbrance_Year
         INTO   x_latest_encumbrance_year
         FROM   GL_ledgers l
                , pa_implementations_all i
                , pa_projects_all p
         WHERE  l.LEDGER_ID = i.set_of_books_id
         AND        i.org_id = p.org_id
         AND        p.project_id  = p_pa_project_id;