DBA Data[Home] [Help]

APPS.PA_SUMMARIZE_ORG_ROLLUP_PVT SQL Statements

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

Line: 142

    SELECT parent_level
      INTO l_maximum_level
      FROM pa_org_hierarchy_denorm
     WHERE parent_organization_id = l_start_org_id
       AND pa_org_use_type = 'REPORTING'
       AND ORG_HIERARCHY_VERSION_ID = l_org_structure_version_id
       AND NVL(org_id, -99) = l_org_id
       AND ROWNUM = 1;
Line: 269

     * The following cursor - selects a set of objects the parent organizations
     * should have based on the objects its child organizations have.
     */

    CURSOR cur_unique_objects_per_parent( p_level             IN PLS_INTEGER
                                         ,p_balance_type_code IN pa_objects.balance_type_code%TYPE
                                        )
    IS
      SELECT obj.object_type_code
            ,obj.org_util_category_id
            ,obj.work_type_id
            ,hier.parent_organization_id
        FROM pa_objects                   obj
            ,pa_org_hierarchy_denorm      hier
       WHERE hier.child_organization_id = obj.expenditure_organization_id
         AND hier.pa_org_use_type = 'REPORTING'
         AND hier.ORG_HIERARCHY_VERSION_ID = l_org_structure_version_id
         AND hier.parent_level = p_level
         AND hier.parent_level = hier.child_level + 1
         AND NVL(hier.org_id,-99) = l_org_id
         AND obj.expenditure_org_id = l_org_id
         AND obj.balance_type_code = p_balance_type_code
         AND obj.object_type_code IN ( l_obj_type_orgwt
                                      ,l_obj_type_orguc
                                      ,l_obj_type_org
                                     )
         AND obj.project_org_id = -1
         AND obj.project_organization_id = -1
         AND obj.project_id = -1
         AND obj.task_id = -1
         AND obj.person_id = -1
       GROUP BY obj.object_type_code
               ,obj.org_util_category_id
               ,obj.work_type_id
               ,hier.parent_organization_id
       ;
Line: 366

           * If it exists, do nothing. Else insert.
           */
          SELECT 'X'
            INTO l_dummy
            FROM pa_objects obj
           WHERE obj.object_type_code = l_object_type_code
             AND obj.balance_type_code = p_balance_type_code
             AND obj.work_type_id = l_work_type_id
             AND obj.org_util_category_id = l_org_util_category_id
             AND obj.expenditure_organization_id = l_parent_organization_id;
Line: 381

           * If control comes here, object doesnt exists. Insert.
           */

          INSERT
            INTO pa_objects( object_id
                            ,object_type_code
                            ,balance_type_code
                            ,project_org_id
                            ,project_organization_id
                            ,project_id
                            ,task_id
                            ,expenditure_org_id
                            ,expenditure_organization_id
                            ,person_id
                            ,assignment_id
                            ,work_type_id
                            ,org_util_category_id
                            ,res_util_category_id
                            ,expenditure_type
                            ,expenditure_type_class
                            ,last_update_date
                            ,last_updated_by
                            ,creation_date
                            ,created_by
                            ,last_update_login
                            ,request_id
                            ,program_application_id
                            ,program_id
                            ,program_update_date
                           )
          VALUES( pa_objects_s.nextval
                 ,l_object_type_code
                 ,p_balance_type_code
                 ,-1
                 ,-1
                 ,-1
                 ,-1
                 ,l_org_id
                 ,l_parent_organization_id
                 ,-1
                 ,-1
                 ,l_work_type_id
                 ,l_org_util_category_id
                 ,-1
                 ,-1
                 ,-1
                 ,SYSDATE
                 ,-1
                 ,SYSDATE
                 ,-1
                 ,-1
                 ,-1
                 ,-1
                 ,-1
                 ,SYSDATE
                );
Line: 462

     * Cursor to insert tot_num records same as that of
     * dir_num records.
     */
    CURSOR cur_org_dir_balances_pagl( p_start_org_id                IN pa_implementations_all.start_organization_id%TYPE
                                     ,p_balance_type_code           IN pa_objects.balance_type_code%TYPE
                                     ,p_maximum_level               IN PLS_INTEGER
                                     ,p_period_type                 IN VARCHAR2
                                     ,p_effective_start_period_num  IN PLS_INTEGER
                                     ,p_org_id                      IN pa_implementations_all.org_id%TYPE
                                    )
        IS SELECT bal.object_id
                 ,bal.object_type_code
                 ,bal.period_name
                 ,bal.period_year
                 ,bal.quarter_or_month_number
                 ,bal.amount_type_id
                 ,bal.period_num
                 ,bal.period_balance
             FROM pa_org_hierarchy_denorm hier
                 ,pa_summ_balances        bal
                 ,pa_objects              obj
            WHERE hier.parent_organization_id = p_start_org_id
              AND hier.parent_level = p_maximum_level
              AND NVL(hier.org_id,-99) = p_org_id
              AND hier.pa_org_use_type = 'REPORTING'
              AND hier.ORG_HIERARCHY_VERSION_ID = l_org_structure_version_id
              AND bal.object_id = obj.object_id
              AND bal.version_id = -1
              AND bal.period_num >= p_effective_start_period_num
              AND bal.period_type = p_period_type
--              AND bal.period_set_name = l_period_set_name
              AND bal.period_set_name = decode(bal.period_type, pa_rep_util_glob.G_PERIOD_TYPE_C.G_PA_C, l_pa_period_set_name, l_gl_period_set_name) -- bug 3434019
              AND bal.object_type_code = obj.object_type_code
              AND obj.expenditure_organization_id = hier.child_organization_id
              AND obj.expenditure_org_id = p_org_id
              AND obj.balance_type_code = p_balance_type_code
              AND obj.project_org_id = -1
              AND obj.project_organization_id = -1
              AND obj.project_id = -1
              AND obj.task_id = -1
              AND obj.assignment_id = -1
              AND obj.person_id = -1
              AND obj.object_type_code IN ( l_obj_type_orgwt
                                           ,l_obj_type_orguc
                                           ,l_obj_type_org
                                          )
              AND bal.amount_type_id IN ( l_org_dir_hrs_id
                                         ,l_org_dir_wtdhrs_org_id
                                         ,l_org_dir_prvhrs_id
                                         ,l_org_dir_prvwtdhrs_org_id
                                         ,l_org_dir_cap_id
                                         ,l_org_dir_reducedcap_id
                                        );
Line: 526

        IS SELECT MAX(obj1.object_id)
                 ,obj.object_type_code
                 ,bal.period_name
                 ,MAX(bal.period_year)
                 ,MAX(bal.quarter_or_month_number)
                 ,bal.amount_type_id
                 ,MAX(bal.period_num)
                 ,SUM(bal.period_balance)
             FROM pa_summ_balances             bal
                 ,pa_objects                   obj
                 ,pa_objects                   obj1
                 ,pa_org_hierarchy_denorm      hier
            WHERE obj1.object_type_code = obj.object_type_code
              AND obj1.balance_type_code = obj.balance_type_code
              AND obj1.project_org_id = obj.project_org_id
              AND obj1.project_organization_id = obj.project_organization_id
              AND obj1.project_id = obj.project_id
              AND obj1.task_id = obj.task_id
              AND obj1.expenditure_organization_id = hier.parent_organization_id
              AND obj1.expenditure_org_id = obj.expenditure_org_id
              AND obj1.assignment_id = obj.assignment_id
              AND obj1.person_id = obj.person_id
              AND obj1.org_util_category_id = obj.org_util_category_id
              AND obj1.work_type_id = obj.work_type_id
              AND obj.balance_type_code = p_balance_type_code
              AND obj.project_org_id = -1
              AND obj.project_organization_id = -1
              AND obj.project_id = -1
              AND obj.task_id = -1
              AND obj.expenditure_org_id = p_org_id
              AND obj.expenditure_organization_id = hier.child_organization_id
              AND obj.assignment_id = -1
              AND obj.person_id = -1
              AND NVL(hier.org_id,-99) = p_org_id
              AND hier.pa_org_use_type = 'REPORTING'
              AND hier.ORG_HIERARCHY_VERSION_ID = l_org_structure_version_id
              AND hier.parent_level = p_level_number
              AND hier.parent_level = hier.child_level + 1
              AND bal.object_id = obj.object_id
              AND bal.object_type_code = obj.object_type_code
              AND bal.version_id = -1
              AND bal.period_num >= p_effective_start_period_num
              AND bal.period_type = p_period_type
--            AND bal.period_set_name = l_period_set_name
              AND bal.period_set_name = decode(bal.period_type, pa_rep_util_glob.G_PERIOD_TYPE_C.G_PA_C, l_pa_period_set_name, l_gl_period_set_name) -- bug 3434019
              AND bal.amount_type_id IN ( l_org_tot_hrs_id
                                         ,l_org_tot_wtdhrs_org_id
                                         ,l_org_tot_prvhrs_id
                                         ,l_org_tot_prvwtdhrs_org_id
                                         ,l_org_tot_cap_id
                                         ,l_org_tot_reducedcap_id
                                        )
              AND obj.object_type_code IN ( l_obj_type_orgwt
                                           ,l_obj_type_orguc
                                           ,l_obj_type_org
                                        )
            GROUP BY hier.parent_organization_id
                    ,obj.object_type_code
                    ,obj.org_util_category_id
                    ,obj.work_type_id
                    ,bal.period_name
--                  ,bal.global_exp_period_end_date
                    ,bal.amount_type_id;
Line: 620

     * Delete all total and sub-org numbers from pa_summ_balances.
     */
     IF P_DEBUG_MODE = 'Y' THEN /* Added Debug Profile Option Check for bug#2674619 */
    PA_DEBUG.g_err_stage := '100:Deleting Total and Sub-org Records';
Line: 627

      DELETE
        FROM pa_summ_balances    bal
       WHERE bal.amount_type_id IN ( l_org_sub_hrs_id
                                    ,l_org_sub_wtdhrs_org_id
                                    ,l_org_sub_prvhrs_id
                                    ,l_org_sub_prvwtdhrs_org_id
                                    ,l_org_sub_cap_id
                                    ,l_org_sub_reducedcap_id
                                    ,l_org_tot_hrs_id
                                    ,l_org_tot_wtdhrs_org_id
                                    ,l_org_tot_prvhrs_id
                                    ,l_org_tot_prvwtdhrs_org_id
                                    ,l_org_tot_cap_id
                                    ,l_org_tot_reducedcap_id
                                   )
         AND bal.object_type_code IN ( l_obj_type_orgwt
                                      ,l_obj_type_orguc
                                      ,l_obj_type_org
                                     )
         AND bal.period_num >= p_effective_start_period_num
         AND period_type = p_period_type
         AND ROWNUM <= l_fetch_size
         AND EXISTS ( SELECT NULL
                        FROM pa_objects   obj
                       WHERE obj.balance_type_code = p_balance_type_code
                         AND obj.object_id = bal.object_id
                         AND obj.expenditure_org_id = l_org_id
                    );
Line: 661

      PA_DEBUG.g_err_stage := '150:Deleted [' || TO_CHAR(l_rowcount) || '] records';
Line: 666

       * Exit when no more records left to delete.
       */
      IF (l_rowcount = 0 OR l_rowcount < l_fetch_size) THEN
      IF P_DEBUG_MODE = 'Y' THEN /* Added Debug Profile Option Check for bug#2674619 */
        PA_DEBUG.g_err_stage := '200:All Total and Sub-org records deleted.';
Line: 684

     * into plsql tables and then they are bulk inserted into
     * the table.
     * Since, we have already deleted all the total records,
     * 'upsert' is NOT needed. ONLY insert.
     */
    IF P_DEBUG_MODE = 'Y' THEN /* Added Debug Profile Option Check for bug#2674619 */
        PA_DEBUG.g_err_stage := '250:Opening Direct-number Cursor.';
Line: 751

        INSERT
          INTO pa_summ_balances( object_id
                                 ,version_id
                                 ,object_type_code
                                 ,period_type
                                 ,period_set_name
                                 ,period_name
                                 ,global_exp_period_end_date
                                 ,period_year
                                 ,quarter_or_month_number
                                 ,amount_type_id
                                 ,period_num
                                 ,unit_of_measure
                                 ,period_balance
                                 ,pvdr_currency_code
                                 ,pvdr_period_balance
                                )
        VALUES( l_object_id_tab(i)
               ,-1
               ,l_object_type_code_tab(i)
               ,p_period_type
--             ,l_period_set_name
               ,decode(p_period_type, pa_rep_util_glob.G_PERIOD_TYPE_C.G_PA_C, l_pa_period_set_name, l_gl_period_set_name) -- bug 3434019
               ,l_period_name_tab(i)
               ,l_dummy_date
               ,l_period_year_tab(i)
               ,l_quarter_or_month_number_tab(i)
               ,DECODE(l_amount_type_id_tab(i)
                              ,l_org_dir_hrs_id,l_org_tot_hrs_id
                              ,l_org_dir_wtdhrs_org_id, l_org_tot_wtdhrs_org_id
                              ,l_org_dir_prvhrs_id, l_org_tot_prvhrs_id
                              ,l_org_dir_prvwtdhrs_org_id, l_org_tot_prvwtdhrs_org_id
                              ,l_org_dir_cap_id, l_org_tot_cap_id
                              ,l_org_dir_reducedcap_id, l_org_tot_reducedcap_id
                              ,-1                                                        --is this ok??
                      )
               ,l_period_num_tab(i)
               ,l_unit_of_measure
               ,l_period_balance_tab(i)
               ,NULL
               ,NULL
              );
Line: 794

      PA_DEBUG.g_err_stage := '450:Inserted [' || SQL%ROWCOUNT || '] Total-number records';
Line: 799

       * Commit if no. of records inserted is more than or
       * equal to the fetch size.
       */
      IF (l_this_commit_cycle >= l_commit_size) THEN
        COMMIT;
Line: 814

    END LOOP; -- End of loop to insert total number records.
Line: 823

     * Insert the sub-org number records.
     */
    FOR l_level IN 2 .. l_maximum_level
     LOOP
       IF P_DEBUG_MODE = 'Y' THEN /* Added Debug Profile Option Check for bug#2674619 */
       PA_DEBUG.g_err_stage := '550:Opening Sub-org Cursor for Level [' || l_level || ']';
Line: 880

          INSERT
            INTO pa_summ_balances( object_id
                                  ,version_id
                                  ,object_type_code
                                  ,period_type
                                  ,period_set_name
                                  ,period_name
                                  ,global_exp_period_end_date
                                  ,period_year
                                  ,quarter_or_month_number
                                  ,amount_type_id
                                  ,period_num
                                  ,unit_of_measure
                                  ,period_balance
                                  ,pvdr_currency_code
                                  ,pvdr_period_balance
                                 )
          VALUES( l_object_id_tab(i)
                 ,-1
                 ,l_object_type_code_tab(i)
                 ,p_period_type
--               ,l_period_set_name
                 ,decode(p_period_type, pa_rep_util_glob.G_PERIOD_TYPE_C.G_PA_C, l_pa_period_set_name, l_gl_period_set_name)  -- bug 3434019
                 ,l_period_name_tab(i)
                 ,l_dummy_date
                 ,l_period_year_tab(i)
                 ,l_quarter_or_month_number_tab(i)
                 ,DECODE(l_amount_type_id_tab(i)
                                ,l_org_tot_hrs_id ,l_org_sub_hrs_id
                                ,l_org_tot_wtdhrs_org_id ,l_org_sub_wtdhrs_org_id
                                ,l_org_tot_prvhrs_id ,l_org_sub_prvhrs_id
                                ,l_org_tot_prvwtdhrs_org_id ,l_org_sub_prvwtdhrs_org_id
                                ,l_org_tot_cap_id ,l_org_sub_cap_id
                                ,l_org_tot_reducedcap_id ,l_org_sub_reducedcap_id
                                ,-1
                        )
                 ,l_period_num_tab(i)
                 ,l_unit_of_measure
                 ,l_sub_org_total_tab(i)
                 ,NULL
                 ,NULL
                );
Line: 923

      PA_DEBUG.g_err_stage := '700:Inserted [' || SQL%ROWCOUNT || '] Sub-org records';
Line: 927

       * Update the tot_num records with tot_num = tot_num + sub_org
       */
      FORALL i IN l_object_id_tab.FIRST .. l_object_id_tab.LAST
        UPDATE pa_summ_balances bal
           SET bal.period_balance = bal.period_balance + l_sub_org_total_tab(i)
         WHERE bal.object_id = l_object_id_tab(i)
           AND bal.version_id = -1
           AND bal.object_type_code = l_object_type_code_tab(i)
           AND bal.period_type = p_period_type
--         AND bal.period_set_name = l_period_set_name
           AND bal.period_set_name = decode(bal.period_type, pa_rep_util_glob.G_PERIOD_TYPE_C.G_PA_C, l_pa_period_set_name, l_gl_period_set_name) -- bug 3434019
           AND bal.period_name = l_period_name_tab(i)
--           AND bal.global_exp_period_end_date = l_ge_period_end_date_tab(i)
           AND bal.global_exp_period_end_date = l_dummy_date
           AND bal.period_year = l_period_year_tab(i)
           AND bal.quarter_or_month_number = l_quarter_or_month_number_tab(i)
           AND bal.amount_type_id = l_amount_type_id_tab(i)
           AND bal.period_num = l_period_num_tab(i)
           AND bal.unit_of_measure = l_unit_of_measure
           AND bal.pvdr_currency_code IS NULL
           AND bal.pvdr_period_balance IS NULL;
Line: 950

      PA_DEBUG.g_err_stage := '750:Updated [' || SQL%ROWCOUNT || '] Total Records with T=T+S';
Line: 955

       * If UPDATE didnt' go thro for a particular combination, that means
       * that that particular combination doesnt already exist in the table.
       * so INSERT.
       */
      FOR i IN l_object_id_tab.FIRST .. l_object_id_tab.LAST
      LOOP
        IF (SQL%BULK_ROWCOUNT(i) = 0) THEN
        /*
         * Update didnt' go thro' so, INSERT.
         */
        INSERT
          INTO pa_summ_balances( object_id
                                 ,version_id
                                 ,object_type_code
                                 ,period_type
                                 ,period_set_name
                                 ,period_name
                                 ,global_exp_period_end_date
                                 ,period_year
                                 ,quarter_or_month_number
                                 ,amount_type_id
                                 ,period_num
                                 ,unit_of_measure
                                 ,period_balance
                                 ,pvdr_currency_code
                                 ,pvdr_period_balance
                                )
        VALUES( l_object_id_tab(i)
               ,-1
               ,l_object_type_code_tab(i)
               ,p_period_type
--             ,l_period_set_name
               ,decode(p_period_type, pa_rep_util_glob.G_PERIOD_TYPE_C.G_PA_C, l_pa_period_set_name, l_gl_period_set_name)  -- bug 3434019
               ,l_period_name_tab(i)
               ,l_dummy_date
               ,l_period_year_tab(i)
               ,l_quarter_or_month_number_tab(i)
               ,l_amount_type_id_tab(i)
               ,l_period_num_tab(i)
               ,l_unit_of_measure
               ,l_sub_org_total_tab(i)
               ,NULL
               ,NULL
              );
Line: 1000

      END LOOP; -- Loop to check whether the record was updated.
Line: 1002

      PA_DEBUG.g_err_stage := '800:After Inserting Total Records.';
Line: 1007

         * Commit if no. of records inserted is more than or
         * equal to the fetch size.
         */
        IF (l_this_commit_cycle >= l_commit_size) THEN
          l_this_commit_cycle := 0;
Line: 1026

    END LOOP; -- End of loop to insert sub-org number records.
Line: 1055

     * Cursor to insert tot_num records same as that of
     * dir_num records.
     */
    CURSOR cur_org_dir_balances_ge( p_start_org_id        IN pa_implementations_all.start_organization_id%TYPE
                                   ,p_balance_type_code   IN pa_objects.balance_type_code%TYPE
                                   ,p_maximum_level       IN PLS_INTEGER
                                   ,p_period_type         IN VARCHAR2
                                   ,p_start_date          IN DATE
                                   ,p_end_date            IN DATE
                                   ,p_org_id              IN pa_implementations_all.org_id%TYPE
                                  )
        IS SELECT bal.object_id
                 ,bal.object_type_code
                 ,bal.period_name
                 ,bal.global_exp_period_end_date
                 ,bal.period_year
                 ,bal.quarter_or_month_number
                 ,bal.amount_type_id
                 ,bal.period_balance
             FROM pa_org_hierarchy_denorm hier
                 ,pa_summ_balances        bal
                 ,pa_objects              obj
            WHERE hier.parent_organization_id = p_start_org_id
              AND hier.parent_level = p_maximum_level
              AND NVL(hier.org_id,-99) = p_org_id
              AND hier.pa_org_use_type = 'REPORTING'
              AND hier.ORG_HIERARCHY_VERSION_ID = l_org_structure_version_id
              AND bal.object_id = obj.object_id
              AND bal.version_id = -1
              AND bal.global_exp_period_end_date >= p_start_date
              AND bal.period_type = p_period_type
              AND bal.object_type_code = obj.object_type_code
              AND obj.expenditure_organization_id = hier.child_organization_id
              AND obj.expenditure_org_id = p_org_id
              AND obj.balance_type_code = p_balance_type_code
              AND obj.project_org_id = -1
              AND obj.project_organization_id = -1
              AND obj.project_id = -1
              AND obj.task_id = -1
              AND obj.assignment_id = -1
              AND obj.person_id = -1
              AND obj.object_type_code IN ( l_obj_type_orgwt
                                           ,l_obj_type_orguc
                                           ,l_obj_type_org
                                          )
              AND bal.amount_type_id IN ( l_org_dir_hrs_id
                                         ,l_org_dir_wtdhrs_org_id
                                         ,l_org_dir_prvhrs_id
                                         ,l_org_dir_prvwtdhrs_org_id
                                         ,l_org_dir_cap_id
                                         ,l_org_dir_reducedcap_id
                                        );
Line: 1119

        IS SELECT MAX(obj1.object_id)
                 ,obj.object_type_code
                 ,bal.period_name
                 ,bal.global_exp_period_end_date
                 ,MAX(bal.period_year)
                 ,MAX(bal.quarter_or_month_number)
                 ,bal.amount_type_id
                 ,SUM(bal.period_balance)
             FROM pa_summ_balances             bal
                 ,pa_objects                   obj
                 ,pa_objects                   obj1
                 ,pa_org_hierarchy_denorm      hier
            WHERE obj1.object_type_code = obj.object_type_code
              AND obj1.balance_type_code = obj.balance_type_code
              AND obj1.project_org_id = obj.project_org_id
              AND obj1.project_organization_id = obj.project_organization_id
              AND obj1.project_id = obj.project_id
              AND obj1.task_id = obj.task_id
              AND obj1.expenditure_organization_id = hier.parent_organization_id
              AND obj1.expenditure_org_id = obj.expenditure_org_id
              AND obj1.assignment_id = obj.assignment_id
              AND obj1.person_id = obj.person_id
              AND obj1.org_util_category_id = obj.org_util_category_id
              AND obj1.work_type_id = obj.work_type_id
              AND obj.balance_type_code = p_balance_type_code
              AND obj.project_org_id = -1
              AND obj.project_organization_id = -1
              AND obj.project_id = -1
              AND obj.task_id = -1
              AND obj.expenditure_org_id = p_org_id
              AND obj.expenditure_organization_id = hier.child_organization_id
              AND obj.assignment_id = -1
              AND obj.person_id = -1
              AND NVL(hier.org_id,-99) = p_org_id
              AND hier.pa_org_use_type = 'REPORTING'
              AND hier.ORG_HIERARCHY_VERSION_ID = l_org_structure_version_id
              AND hier.parent_level = p_level_number
              AND hier.parent_level = hier.child_level + 1
              AND bal.object_id = obj.object_id
              AND bal.object_type_code = obj.object_type_code
              AND bal.version_id = -1
              AND bal.global_exp_period_end_date >= p_start_date
              AND bal.period_type = p_period_type
              AND bal.amount_type_id IN ( l_org_tot_hrs_id
                                         ,l_org_tot_wtdhrs_org_id
                                         ,l_org_tot_prvhrs_id
                                         ,l_org_tot_prvwtdhrs_org_id
                                         ,l_org_tot_cap_id
                                         ,l_org_tot_reducedcap_id
                                        )
              AND obj.object_type_code IN ( l_obj_type_orgwt
                                           ,l_obj_type_orguc
                                           ,l_obj_type_org
                                        )
            GROUP BY hier.parent_organization_id
                    ,obj.object_type_code
                    ,obj.org_util_category_id
                    ,obj.work_type_id
                    ,bal.period_name
                    ,bal.global_exp_period_end_date
                    ,bal.amount_type_id;
Line: 1212

     * Delete all total and sub-org numbers from pa_summ_balances.
     */
    LOOP
      DELETE
        FROM pa_summ_balances    bal
       WHERE bal.amount_type_id IN ( l_org_sub_hrs_id
                                    ,l_org_sub_wtdhrs_org_id
                                    ,l_org_sub_prvhrs_id
                                    ,l_org_sub_prvwtdhrs_org_id
                                    ,l_org_sub_cap_id
                                    ,l_org_sub_reducedcap_id
                                    ,l_org_tot_hrs_id
                                    ,l_org_tot_wtdhrs_org_id
                                    ,l_org_tot_prvhrs_id
                                    ,l_org_tot_prvwtdhrs_org_id
                                    ,l_org_tot_cap_id
                                    ,l_org_tot_reducedcap_id
                                   )
         AND bal.object_type_code IN ( l_obj_type_orgwt
                                      ,l_obj_type_orguc
                                      ,l_obj_type_org
                                     )
         AND bal.global_exp_period_end_date >= p_start_date
         AND bal.period_type = p_period_type
         AND ROWNUM <= l_fetch_size
         AND EXISTS ( SELECT NULL
                        FROM pa_objects   obj
                       WHERE obj.balance_type_code = p_balance_type_code
                         AND obj.object_id = bal.object_id
                         AND obj.expenditure_org_id = l_org_id
                    );
Line: 1248

       * Exit when no more records left to delete.
       */
      IF (l_rowcount = 0) THEN
      IF P_DEBUG_MODE = 'Y' THEN /* Added Debug Profile Option Check for bug#2674619 */
        PA_DEBUG.g_err_stage := '200:All Total and Sub-org records deleted.';
Line: 1259

      PA_DEBUG.g_err_stage := '150:Deleted [' || TO_CHAR(l_rowcount) || '] records';
Line: 1271

     * and then do a bulk insert into the table.
     * Since, we have already deleted all the total records,
     * 'upsert' is NOT needed. ONLY insert.
     */
    IF P_DEBUG_MODE = 'Y' THEN /* Added Debug Profile Option Check for bug#2674619 */
    PA_DEBUG.g_err_stage := '250:Opening Direct-number Cursor.';
Line: 1341

        INSERT
          INTO pa_summ_balances( object_id
                                ,version_id
                                ,object_type_code
                                ,period_type
                                ,period_set_name
                                ,period_name
                                ,global_exp_period_end_date
                                ,period_year
                                ,quarter_or_month_number
                                ,amount_type_id
                                ,period_num
                                ,unit_of_measure
                                ,period_balance
                                ,pvdr_currency_code
                                ,pvdr_period_balance
                               )
        VALUES( l_object_id_tab(i)
               ,-1
               ,l_object_type_code_tab(i)
               ,p_period_type
--             ,l_dummy_period_set_name
               ,decode(p_period_type, pa_rep_util_glob.G_PERIOD_TYPE_C.G_PA_C, l_pa_period_set_name, l_gl_period_set_name) -- bug 3434019
               ,l_period_name_tab(i)
               ,l_ge_period_end_date_tab(i)
               ,l_period_year_tab(i)
               ,l_quarter_or_month_number_tab(i)
               ,DECODE(l_amount_type_id_tab(i)
                              ,l_org_dir_hrs_id,l_org_tot_hrs_id
                              ,l_org_dir_wtdhrs_org_id, l_org_tot_wtdhrs_org_id
                              ,l_org_dir_prvhrs_id, l_org_tot_prvhrs_id
                              ,l_org_dir_prvwtdhrs_org_id, l_org_tot_prvwtdhrs_org_id
                              ,l_org_dir_cap_id, l_org_tot_cap_id
                              ,l_org_dir_reducedcap_id, l_org_tot_reducedcap_id
                              ,-1                                                        --is this ok??
                      )
               ,-1
               ,l_unit_of_measure
               ,l_period_balance_tab(i)
               ,NULL
               ,NULL
              );
Line: 1385

      PA_DEBUG.g_err_stage := '450:Inserted [' || SQL%ROWCOUNT || '] Total-number records';
Line: 1390

       * Commit if no. of records inserted is more than or
       * equal to the fetch size.
       */
      IF (l_this_commit_cycle >= l_commit_size) THEN
        COMMIT;
Line: 1405

    END LOOP; -- End of loop to insert total number records.
Line: 1414

     * Insert the sub-org number records.
     */
    FOR l_level IN 2 .. l_maximum_level
     LOOP
     IF P_DEBUG_MODE = 'Y' THEN /* Added Debug Profile Option Check for bug#2674619 */
       PA_DEBUG.g_err_stage := '550:Opening Sub-org Cursor for Level [' || l_level || ']';
Line: 1475

          INSERT
            INTO pa_summ_balances( object_id
                                   ,version_id
                                   ,object_type_code
                                   ,period_type
                                   ,period_set_name
                                   ,period_name
                                   ,global_exp_period_end_date
                                   ,period_year
                                   ,quarter_or_month_number
                                   ,amount_type_id
                                   ,period_num
                                   ,unit_of_measure
                                   ,period_balance
                                   ,pvdr_currency_code
                                   ,pvdr_period_balance
                                  )
          VALUES( l_object_id_tab(i)
                 ,-1
                 ,l_object_type_code_tab(i)
                 ,p_period_type
                 ,l_dummy_period_set_name
                 ,l_period_name_tab(i)
                 ,l_ge_period_end_date_tab(i)
                 ,l_period_year_tab(i)
                 ,l_quarter_or_month_number_tab(i)
                 ,DECODE(l_amount_type_id_tab(i)
                                ,l_org_tot_hrs_id ,l_org_sub_hrs_id
                                ,l_org_tot_wtdhrs_org_id ,l_org_sub_wtdhrs_org_id
                                ,l_org_tot_prvhrs_id ,l_org_sub_prvhrs_id
                                ,l_org_tot_prvwtdhrs_org_id ,l_org_sub_prvwtdhrs_org_id
                                ,l_org_tot_cap_id ,l_org_sub_cap_id
                                ,l_org_tot_reducedcap_id ,l_org_sub_reducedcap_id
                                ,-1                                                    -- is this ok??
                        )
                 ,-1
                 ,l_unit_of_measure
                 ,l_sub_org_total_tab(i)
                 ,NULL
                 ,NULL
                );
Line: 1517

      PA_DEBUG.g_err_stage := '700:Inserted [' || SQL%ROWCOUNT || '] Sub-org records';
Line: 1522

       * Update the tot_num records with tot_num = tot_num + sub_org
       * Some of the checks in the where clause may not be required.
       */
      FORALL i IN l_object_id_tab.FIRST .. l_object_id_tab.LAST
        UPDATE pa_summ_balances bal
           SET bal.period_balance = bal.period_balance + l_sub_org_total_tab(i)
         WHERE bal.object_id = l_object_id_tab(i)
           AND bal.version_id = -1
           AND bal.object_type_code = l_object_type_code_tab(i)
           AND bal.period_type = p_period_type
           AND bal.period_set_name = l_dummy_period_set_name
           AND bal.period_name = l_period_name_tab(i)
           AND bal.global_exp_period_end_date = l_ge_period_end_date_tab(i)
           AND bal.period_year = l_period_year_tab(i)
           AND bal.quarter_or_month_number = l_quarter_or_month_number_tab(i)
           AND bal.amount_type_id = l_amount_type_id_tab(i)
           AND bal.period_num = -1
           AND bal.unit_of_measure = l_unit_of_measure
           AND bal.pvdr_currency_code IS NULL
           AND bal.pvdr_period_balance IS NULL;
Line: 1543

      PA_DEBUG.g_err_stage := '750:Updated [' || SQL%ROWCOUNT || '] Total Records with T=T+S';
Line: 1548

       * If UPDATE didnt' go thro for a particular combination, that means
       * that that particular combination doesnt already exist in the table.
       * so INSERT.
       */
      FOR i IN l_object_id_tab.FIRST .. l_object_id_tab.LAST
      LOOP
        IF (SQL%BULK_ROWCOUNT(i) = 0) THEN
        /*
         * Update didnt' go thro' so, INSERT.
         */
        INSERT
          INTO pa_summ_balances( object_id
                                 ,version_id
                                 ,object_type_code
                                 ,period_type
                                 ,period_set_name
                                 ,period_name
                                 ,global_exp_period_end_date
                                 ,period_year
                                 ,quarter_or_month_number
                                 ,amount_type_id
                                 ,period_num
                                 ,unit_of_measure
                                 ,period_balance
                                 ,pvdr_currency_code
                                 ,pvdr_period_balance
                                )
        VALUES( l_object_id_tab(i)
               ,-1
               ,l_object_type_code_tab(i)
               ,p_period_type
               ,l_dummy_period_set_name
               ,l_period_name_tab(i)
               ,l_ge_period_end_date_tab(i)
               ,l_period_year_tab(i)
               ,l_quarter_or_month_number_tab(i)
               ,l_amount_type_id_tab(i)
               ,-1
               ,l_unit_of_measure
               ,l_sub_org_total_tab(i)
               ,NULL
               ,NULL
              );
Line: 1592

      END LOOP; -- Loop to chek whether the record was updated.
Line: 1594

      PA_DEBUG.g_err_stage := '800:After Inserting Total Records.';
Line: 1599

         * Commit if no. of records inserted is more than or
         * equal to the fetch size.
         */
        IF (l_this_commit_cycle >= l_commit_size) THEN
          l_this_commit_cycle := 0;
Line: 1618

    END LOOP; -- End of loop to insert sub-org number records.