DBA Data[Home] [Help]

APPS.MSC_ATP_PVT SQL Statements

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

Line: 204

l_delete_demand_flag         PLS_INTEGER;
Line: 294

l_atp_insert_rec                MRP_ATP_PVT.AtpRec;
Line: 304

l_delete_atp_rec                MSC_ATP_PVT.DELETE_ATP_REC; --3720018
Line: 359

        MSC_ATP_PVT.G_PEGGING_FOR_SET.DELETE;
Line: 360

        MSC_ATP_PVT.G_DEMAND_CLASS_ATP_FLAG.DELETE;
Line: 361

        MSC_ATP_PVT.G_REQ_ATP_DATE.DELETE;
Line: 362

        MSC_ATP_PVT.G_REQ_DATE_QTY.DELETE;
Line: 371

        l_fst_src_pegging_ids.delete;
Line: 372

        l_DEMAND_CLASS_ATP_FLAG.DELETE;
Line: 373

        l_REQ_ATP_DATE.DELETE;
Line: 374

        l_REQ_DATE_QTY.DELETE;
Line: 452

              select assignment_set_id
              into   lv_assign_set_id                  -- Use new local variable
              from   msc_assignment_sets
              where  sr_instance_id = p_instance_id
              and    sr_assignment_set_id = p_assign_set_id;
Line: 555

       SELECT ltrim(rtrim(M2A_DBLINK)), summary_flag
       INTO   MSC_ATP_PVT.G_DATABASE_LINK, l_summary_flag
       FROM   msc_apps_instances
       WHERE  instance_id = p_instance_id;
Line: 572

                msc_sch_wb.atp_debug('Schedule: ' || 'Site is using backlog workbench, update tables and turnoff summary for ODS case');
Line: 575

             update  msc_apps_instances
             set     summary_flag = 200;
Line: 691

        MSC_ATP_DB_UTILS.call_delete_row (
                         p_instance_id,
                         p_atp_table,
                         p_refresh_number,
                         l_delete_atp_rec,
                         l_return_status);
Line: 704

                           msc_sch_wb.atp_debug('Schedule: ' || 'Error in Call_delete_row');
Line: 710

       IF (l_delete_atp_rec.error_code(1) = MSC_ATP_PVT.TRY_ATP_LATER) OR
          (l_delete_atp_rec.error_code(1) = MSC_ATP_PVT.SUMM_CONC_PROG_RUNNING) THEN
           l_atp_table.error_code(1) := l_delete_atp_rec.error_code(1);
Line: 717

       msc_sch_wb.atp_debug('Schedule:l_delete_atp_rec.off_demand_instance_id.count ' || l_delete_atp_rec.off_demand_instance_id.count);
Line: 718

       msc_sch_wb.atp_debug('Schedule:l_delete_atp_rec.off_supply_instance_id.count ' || l_delete_atp_rec.off_supply_instance_id.count);
Line: 719

       msc_sch_wb.atp_debug('Schedule:l_delete_atp_rec.off_res_instance_id.count ' || l_delete_atp_rec.off_res_instance_id.count);
Line: 724

    l_atp_table.error_code   :=   l_delete_atp_rec.error_code;  --3720018
Line: 725

    l_atp_table.attribute_07 :=   l_delete_atp_rec.attribute_07; --3720018
Line: 726

    l_old_plan_id := l_delete_atp_rec.old_plan_id; --3720018
Line: 894

           //  select assignment_set_id
           //  into   l_assign_set_id
           //  from   msc_assignment_sets
           //  where  sr_instance_id = p_instance_id
           //  and    sr_assignment_set_id = p_assign_set_id;
Line: 969

           SELECT so_tbl_status,
                  NVL(summary_flag, 1),
                  apps_ver
           INTO   l_so_tbl_status,
                  l_summary_flag,
                  MSC_ATP_PVT.G_APPS_VER          -- 2300767
           FROM   msc_apps_instances
           WHERE  instance_id = p_instance_id;
Line: 1171

                  DELETE MSC_SHIP_SET_TEMP;
Line: 1173

                           INSERT INTO MSC_SHIP_SET_TEMP(inventory_item_id,
                                                         line_id)
                                                         VALUES
                                                         (p_atp_table.inventory_item_id(l_count),
                                                          p_atp_table.identifier(l_count));
Line: 1179

                      msc_sch_wb.atp_debug('Rows inserted in MSC_SHIP_SET_TEMP := ' || SQL%ROWCOUNT);
Line: 1486

               select count(*) into l_org_collected
               from msc_trading_partners
               where sr_tp_id = l_atp_table.internal_org_id(i)
               and sr_instance_id = p_instance_id
               and partner_type = 3;
Line: 1620

                        SELECT TP_ID
                        INTO   MSC_ATP_PVT.G_PARTNER_ID
                        FROM   msc_tp_id_lid tp
                        WHERE  tp.SR_TP_ID = l_atp_table.customer_id(i)
                        AND    tp.SR_INSTANCE_ID = p_instance_id
                        AND    tp.PARTNER_TYPE = 2;
Line: 1644

                        SELECT TP_SITE_ID
                        INTO   MSC_ATP_PVT.G_PARTNER_SITE_ID
                        FROM   msc_tp_site_id_lid tpsite
                        WHERE  tpsite.SR_TP_SITE_ID = l_atp_table.customer_site_id(i)
                        AND    tpsite.SR_INSTANCE_ID =  p_instance_id
                        AND    tpsite.PARTNER_TYPE = 2;
Line: 2199

                  SELECT so_tbl_status,
                         NVL(summary_flag, 1)
                  INTO   l_so_tbl_status,
                         l_summary_flag
                  FROM   msc_apps_instances
                  WHERE  instance_id = p_instance_id;
Line: 2232

                SELECT so_tbl_status,
                         NVL(summary_flag, 1)
                INTO   l_so_tbl_status,
                         l_summary_flag
                FROM   msc_apps_instances
                WHERE  instance_id = p_instance_id;
Line: 2338

            G_FW_CTP_PEGGING_ID.DELETE;
Line: 2339

            G_FW_STEAL_PEGGING_ID.DELETE;
Line: 2340

            l_ctp_parent_peg_id.DELETE;
Line: 2341

            l_steal_atp_peg_id.DELETE;
Line: 2460

            G_FW_CTP_PEGGING_ID.DELETE; --as this has to point to the top level for each iteration
Line: 2461

            G_FW_STEAL_PEGGING_ID.DELETE;
Line: 2698

            l_atp_rec.insert_flag := l_atp_table.Insert_Flag(i);
Line: 3419

                  MSC_ATP_DB_UTILS.Delete_Pegging(l_atp_peg_id);
Line: 3423

                     MSC_ATP_DB_UTILS.Delete_SD_Rec(l_ctp_parent_peg_id,l_return_status);
Line: 3426

                           msc_sch_wb.atp_debug('Schedule: ' || 'Error occured in procedure Delete_SD_Rec');
Line: 3438

                     MSC_ATP_DB_UTILS.Delete_SD_Rec(l_steal_atp_peg_id,l_return_status);
Line: 3441

                            msc_sch_wb.atp_debug('Schedule: ' || 'Error occured in procedure Delete_SD_Rec');
Line: 3531

               MSC_ATP_DB_UTILS.Delete_Pegging(G_FW_PEGGING_ID);
Line: 4011

                    update mrp_atp_details_temp
                    set    constrained_path = 1
                    where  record_type = 3
                    and    session_id = MSC_ATP_PVT.G_SESSION_ID
                    and    pegging_id in
                    (select distinct madt.pegging_id
                     from   mrp_atp_details_temp  madt
                     where  record_type = 3
                     and    session_id = MSC_ATP_PVT.G_SESSION_ID
                     start with madt.pegging_id in (
                        select pegging_id
                        from mrp_atp_details_temp madt1
                        where session_id = MSC_ATP_PVT.G_SESSION_ID
                        and   record_type = 3
                        and   end_pegging_id = MSC_ATP_PVT.G_DEMAND_PEGGING_ID
                        and   constraint_type is not null)
                     connect by madt.pegging_id = PRIOR parent_pegging_id);
Line: 4031

                    UPDATE mrp_atp_details_temp
                    set    constrained_path = l_constraint_path_flag
                    where  record_type = l_peg_record_type
                    and    session_id = MSC_ATP_PVT.G_SESSION_ID
                    and    pegging_id in
                       (select pegging_id
                        from   mrp_atp_details_temp
                        where  record_type = l_peg_record_type
                        and    session_id = MSC_ATP_PVT.G_SESSION_ID
                        start with session_id = MSC_ATP_PVT.G_SESSION_ID
                        and   record_type = l_peg_record_type
                        and   end_pegging_id = MSC_ATP_PVT.G_DEMAND_PEGGING_ID
                        and   constraint_type is not null
                        connect by pegging_id = PRIOR parent_pegging_id
                                and record_type = l_peg_record_type
                                and  session_id = MSC_ATP_PVT.G_SESSION_ID);
Line: 4276

                      l_atp_insert_rec := l_atp_rec;
Line: 4277

                      l_atp_insert_rec.inventory_item_id := l_pf_dest_id;
Line: 4278

                      l_atp_insert_rec.request_item_id := l_mem_dest_id;
Line: 4279

                      l_atp_insert_rec.origination_type := 30;
Line: 4281

                      MSC_ATP_DB_UTILS.Update_SD_Date(l_atp_rec.demand_source_line ,
                             p_instance_id,
                             l_sd_date,
                             l_plan_id,
                             l_sd_qty,
                             MSC_ATP_PVT.G_DEMAND_CLASS_ATP_FLAG(i),
                             MSC_ATP_PVT.G_REQ_ATP_DATE(i),
                             MSC_ATP_PVT.G_REQ_DATE_QTY(i), -- Bug 1501787
                             l_dmd_satisfied_date, -- bug 2795053-reopen (ssurendr)
                             l_atp_rec.used_available_quantity,  -- For time_phased_atp bug3409973
                             l_atp_rec.atf_date,            -- For time_phased_atp
                             l_atp_rec.atf_date_quantity,   -- For time_phased_atp
			     l_atp_rec.arrival_date,            -- For ship_rec_cal
                             l_order_date_type,                 -- For ship_rec_cal
                             l_atp_rec.latest_acceptable_date,  -- For ship_rec_cal
                             l_atp_rec.ship_set_name,           -- For Plan by Request Date
                             l_atp_rec.arrival_set_name,        -- For Plan by Request Date
                             l_atp_rec.override_flag,           -- For Plan by Request Date
                             l_original_req_arrival_date,       -- For Plan by Request Date
                             l_bkwd_pass_atf_date_qty,            -- For time_phased_atp bug3397904
                             l_atp_insert_rec                  -- For bug 3226083
                             );
Line: 4356

                        MSC_ATP_PROC.Update_Set_SD_Dates(l_atp_table,l_req_arr_date);
Line: 4375

                            SELECT identifier3
                            INTO   l_ship_arrival_date_rec.demand_id
                            FROM   mrp_atp_details_temp
                            WHERE  pegging_id = MSC_ATP_PVT.G_DEMAND_PEGGING_ID
                            AND    session_id = MSC_ATP_PVT.G_SESSION_ID
                            AND    record_type = 3;
Line: 4519

                        l_atp_insert_rec := l_atp_rec;
Line: 4520

                        l_atp_insert_rec.inventory_item_id := l_pf_dest_id;
Line: 4521

                        l_atp_insert_rec.request_item_id := l_mem_dest_id;
Line: 4522

                        l_atp_insert_rec.origination_type := 30;
Line: 4524

                        MSC_ATP_DB_UTILS.Update_SD_Date(l_atp_rec.demand_source_line ,
                             p_instance_id,
                             l_atp_rec.ship_date,
                             --s_cto_rearch do not honor atp_lead time
                             /*
                             MSC_CALENDAR.DATE_OFFSET(
                             l_atp_rec.organization_id,
                             p_instance_id,
                             1,
                             l_atp_rec.ship_date,
                             -NVL(l_atp_rec.atp_lead_time, 0)),
                             */
                             l_plan_id,
                             l_sd_qty,
                              MSC_ATP_PVT.G_DEMAND_CLASS_ATP_FLAG(i),
                              MSC_ATP_PVT.G_REQ_ATP_DATE(i),
                              MSC_ATP_PVT.G_REQ_DATE_QTY(i), -- Bug 1501787
                              l_dmd_satisfied_date, -- bug 2795053-reopen (ssurendr)
                              l_atp_rec.used_available_quantity,  -- For time_phased_atp bug3409973
                              l_atp_rec.atf_date,            -- For time_phased_atp
                              l_atp_rec.atf_date_quantity, -- For time_phased_atp
                              l_atp_rec.arrival_date,            -- For ship_rec_cal
                              l_order_date_type,                 -- For ship_rec_cal
                              l_atp_rec.latest_acceptable_date,
                              l_atp_rec.ship_set_name,
                              l_atp_rec.arrival_set_name,
                              l_atp_rec.override_flag,
                              l_original_req_arrival_date,
                              l_bkwd_pass_atf_date_qty,             -- For time_phased_atp bug3397904
                              l_atp_insert_rec                   -- For bug 3226083
                              );  -- For ship_rec_cal
Line: 4664

                        MSC_ATP_PVT.G_PEGGING_FOR_SET.DELETE;
Line: 4665

                        MSC_ATP_PVT.G_DEMAND_CLASS_ATP_FLAG.DELETE;
Line: 4666

                        MSC_ATP_PVT.G_REQ_ATP_DATE.DELETE;
Line: 4667

                        MSC_ATP_PVT.G_REQ_DATE_QTY.DELETE;
Line: 4726

                      MSC_ATP_PVT.G_PEGGING_FOR_SET.DELETE;
Line: 4727

                      MSC_ATP_PVT.G_DEMAND_CLASS_ATP_FLAG.DELETE;
Line: 4728

                      MSC_ATP_PVT.G_REQ_ATP_DATE.DELETE;
Line: 4729

                      MSC_ATP_PVT.G_REQ_DATE_QTY.DELETE;
Line: 4782

                            MSC_ATP_DB_UTILS.Update_SD_Date(p_atp_table.Identifier(m),
                             p_instance_id, l_group_date, l_temp_plan_id,null,
                               MSC_ATP_PVT.G_DEMAND_CLASS_ATP_FLAG(i),
                               MSC_ATP_PVT.G_REQ_ATP_DATE(i),
                               MSC_ATP_PVT.G_REQ_DATE_QTY(i), -- Bug 1501787
                               l_group_date, -- bug 2795053-reopen (ssurendr)
                               null,                    -- For time_phased_atp
                               l_atp_table.atf_date(m), -- For time_phased_atp
                               null,                    -- For time_phased_atp
                               l_group_arrival_date,                    -- For ship_rec_cal
                               l_order_date_type,                       -- For ship_rec_cal
                               l_atp_table.latest_acceptable_date(m),   -- For ship_rec_cal
                               l_atp_table.ship_set_name(m),		--Plan by request date
                               l_atp_table.arrival_set_name(m),		--Plan by request date
                               l_atp_table.override_flag(m),		--Plan by request date
			       l_original_req_arrival_date,     	--Plan by request date
			       null                             --l_bkwd_pass_atf_date_qty bug3397904
                               );
Line: 4830

                        MSC_ATP_PVT.G_PEGGING_FOR_SET.DELETE;
Line: 4831

                        MSC_ATP_PVT.G_DEMAND_CLASS_ATP_FLAG.DELETE;
Line: 4832

		        MSC_ATP_PVT.G_REQ_ATP_DATE.DELETE;
Line: 4833

                        MSC_ATP_PVT.G_REQ_DATE_QTY.DELETE;
Line: 4881

                    MSC_ATP_PVT.G_PEGGING_FOR_SET.DELETE;
Line: 4882

                    MSC_ATP_PVT.G_DEMAND_CLASS_ATP_FLAG.DELETE;
Line: 4883

                    MSC_ATP_PVT.G_REQ_ATP_DATE.DELETE;
Line: 4884

                    MSC_ATP_PVT.G_REQ_DATE_QTY.DELETE;
Line: 4915

                    MSC_ATP_PVT.G_PEGGING_FOR_SET.DELETE;
Line: 4916

                    MSC_ATP_PVT.G_DEMAND_CLASS_ATP_FLAG.DELETE;
Line: 4917

		    MSC_ATP_PVT.G_REQ_ATP_DATE.DELETE;
Line: 4918

                    MSC_ATP_PVT.G_REQ_DATE_QTY.DELETE;
Line: 5443

             MSC_ATP_PVT.G_PEGGING_FOR_SET.DELETE;
Line: 5444

             MSC_ATP_PVT.G_DEMAND_CLASS_ATP_FLAG.DELETE;
Line: 5445

             MSC_ATP_PVT.G_REQ_ATP_DATE.DELETE;
Line: 5446

             MSC_ATP_PVT.G_REQ_DATE_QTY.DELETE;
Line: 5462

             MSC_ATP_PROC.Update_Set_SD_Dates(x_atp_table,l_req_arr_date); --Plan by request date
Line: 5500

        l_delete_demand_flag := 0;
Line: 5503

                l_delete_demand_flag := 1;
Line: 5511

                msc_sch_wb.atp_debug('Schedule: ' || 'rajjain - Single call to Undo_Delete_Row');
Line: 5515

            MSC_ATP_DB_UTILS.Undo_Delete_Row(l_delete_atp_rec.del_identifiers,
                    l_delete_atp_rec.del_plan_ids,
                    p_instance_id,
                    --subst
                    l_delete_atp_rec.del_demand_ids,
                    l_delete_atp_rec.del_inv_item_ids,
                    l_delete_atp_rec.del_copy_demand_ids,        -- For summary enhancement
                    l_delete_atp_rec.del_copy_demand_plan_ids,   -- For summary enhancement
                    l_time_phased_set,            -- For time_phased_atp
                    -- CTO ODR and Simplified Pegging
                    l_delete_atp_rec.del_atp_peg_items,
                    l_delete_atp_rec.del_atp_peg_demands ,
                    l_delete_atp_rec.del_atp_peg_supplies,
                    l_delete_atp_rec.del_atp_peg_res_reqs,
                    l_delete_atp_rec.del_demand_source_type, --cmro
                    -- End CTO ODR and Simplified Pegging
                    l_delete_atp_rec.atp_peg_demands_plan_ids,  --Bug 3629191
                    l_delete_atp_rec.atp_peg_supplies_plan_ids, --Bug 3629191
                    l_delete_atp_rec.atp_peg_res_reqs_plan_ids,  --Bug 3629191
                    l_delete_atp_rec.del_ods_demand_ids, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_inv_item_ids, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_demand_src_type, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_cto_demand_ids, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_cto_inv_item_ids, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_cto_dem_src_type, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_atp_refresh_no, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_cto_atp_refresh_no --3720018, added for support of rescheduling in ODS
                    );
Line: 5553

           IF l_delete_atp_rec.del_copy_demand_ids IS NOT NULL and l_delete_atp_rec.del_copy_demand_ids.COUNT > 0 THEN
               l_count := MSC_ATP_PVT.G_COPY_DEMAND_ID.count;
Line: 5555

               MSC_ATP_PVT.G_COPY_DEMAND_ID.extend(l_delete_atp_rec.del_copy_demand_ids.count);
Line: 5556

               MSC_ATP_PVT.G_COPY_DEMAND_PLAN_ID.extend(l_delete_atp_rec.del_copy_demand_ids.count);
Line: 5557

               FOR i in 1..l_delete_atp_rec.del_copy_demand_ids.count LOOP
                   MSC_ATP_PVT.G_COPY_DEMAND_ID(l_count + i) := l_delete_atp_rec.del_copy_demand_ids(i);
Line: 5559

                   MSC_ATP_PVT.G_COPY_DEMAND_PLAN_ID(l_count + i) := l_delete_atp_rec.del_copy_demand_plan_ids(m);
Line: 5569

           IF l_delete_atp_rec.del_demand_ids IS NOT NULL and l_delete_atp_rec.del_demand_ids.COUNT > 0 THEN
              l_count := MSC_ATP_PVT.G_OFF_DEM_TRANS_ID.count;
Line: 5571

              MSC_ATP_PVT.G_OFF_INSTANCE_ID.extend(l_delete_atp_rec.del_demand_ids.count);
Line: 5572

              MSC_ATP_PVT.G_OFF_DEM_TRANS_ID.EXTEND(l_delete_atp_rec.del_demand_ids.count);
Line: 5573

              MSC_ATP_PVT.G_OFF_PLAN_ID.EXTEND(l_delete_atp_rec.del_demand_ids.count);
Line: 5575

                 msc_sch_wb.atp_debug('Schedule: l_delete_atp_rec.del_demand_ids ' || l_delete_atp_rec.del_demand_ids.count);
Line: 5577

              FOR i in 1..l_delete_atp_rec.del_demand_ids.count LOOP
                  MSC_ATP_PVT.G_OFF_INSTANCE_ID(l_count + i)  := p_instance_id;
Line: 5579

                  MSC_ATP_PVT.G_OFF_DEM_TRANS_ID(l_count + i) := l_delete_atp_rec.del_demand_ids(i);
Line: 5580

                  MSC_ATP_PVT.G_OFF_PLAN_ID(l_count + i)      := l_delete_atp_rec.del_plan_ids(i);
Line: 5588

           IF l_delete_atp_rec.del_atp_peg_demands IS NOT NULL and l_delete_atp_rec.del_atp_peg_demands.COUNT > 0 THEN
              l_count := MSC_ATP_PVT.G_OFF_DEM_TRANS_ID.count;
Line: 5590

              MSC_ATP_PVT.G_OFF_INSTANCE_ID.extend(l_delete_atp_rec.del_atp_peg_demands.count);
Line: 5591

              MSC_ATP_PVT.G_OFF_DEM_TRANS_ID.EXTEND(l_delete_atp_rec.del_atp_peg_demands.count);
Line: 5592

              MSC_ATP_PVT.G_OFF_PLAN_ID.EXTEND(l_delete_atp_rec.del_atp_peg_demands.count);
Line: 5594

                 msc_sch_wb.atp_debug('Schedule: l_delete_atp_rec.del_atp_peg_demands.count ' || l_delete_atp_rec.del_atp_peg_demands.count);
Line: 5596

              FOR i in 1..l_delete_atp_rec.del_atp_peg_demands.count LOOP
                  MSC_ATP_PVT.G_OFF_INSTANCE_ID(l_count + i)  := l_delete_atp_rec.off_demand_instance_id(i);
Line: 5598

                  MSC_ATP_PVT.G_OFF_DEM_TRANS_ID(l_count + i) := l_delete_atp_rec.del_atp_peg_demands(i);
Line: 5599

                  MSC_ATP_PVT.G_OFF_PLAN_ID(l_count + i)      := l_delete_atp_rec.atp_peg_demands_plan_ids(i);
Line: 5607

           IF l_delete_atp_rec.del_atp_peg_supplies IS NOT NULL and l_delete_atp_rec.del_atp_peg_supplies.COUNT > 0 THEN
              l_count := MSC_ATP_PVT.G_OFF_DEM_TRANS_ID.count;
Line: 5609

              MSC_ATP_PVT.G_OFF_INSTANCE_ID.extend(l_delete_atp_rec.del_atp_peg_supplies.count);
Line: 5610

              MSC_ATP_PVT.G_OFF_DEM_TRANS_ID.EXTEND(l_delete_atp_rec.del_atp_peg_supplies.count);
Line: 5611

              MSC_ATP_PVT.G_OFF_PLAN_ID.EXTEND(l_delete_atp_rec.del_atp_peg_supplies.count);
Line: 5613

                 msc_sch_wb.atp_debug('Schedule: l_delete_atp_rec.del_atp_peg_supplies.count ' || l_delete_atp_rec.del_atp_peg_supplies.count );
Line: 5615

              FOR i in 1..l_delete_atp_rec.del_atp_peg_supplies.count LOOP
                  MSC_ATP_PVT.G_OFF_INSTANCE_ID(l_count + i)  := l_delete_atp_rec.off_supply_instance_id(i);
Line: 5617

                  MSC_ATP_PVT.G_OFF_DEM_TRANS_ID(l_count + i) := l_delete_atp_rec.del_atp_peg_supplies(i);
Line: 5618

                  MSC_ATP_PVT.G_OFF_PLAN_ID(l_count + i)      := l_delete_atp_rec.atp_peg_supplies_plan_ids(i);
Line: 5626

           IF l_delete_atp_rec.del_atp_peg_res_reqs IS NOT NULL and l_delete_atp_rec.del_atp_peg_res_reqs.COUNT > 0 THEN
              l_count := MSC_ATP_PVT.G_OFF_DEM_TRANS_ID.count;
Line: 5628

              MSC_ATP_PVT.G_OFF_INSTANCE_ID.extend(l_delete_atp_rec.del_atp_peg_res_reqs.count);
Line: 5629

              MSC_ATP_PVT.G_OFF_DEM_TRANS_ID.EXTEND(l_delete_atp_rec.del_atp_peg_res_reqs.count);
Line: 5630

              MSC_ATP_PVT.G_OFF_PLAN_ID.EXTEND(l_delete_atp_rec.del_atp_peg_res_reqs.count);
Line: 5632

                 msc_sch_wb.atp_debug('Schedule: l_delete_atp_rec.del_atp_peg_res_reqs.count  ' || l_delete_atp_rec.del_atp_peg_res_reqs.count );
Line: 5634

              FOR i in 1..l_delete_atp_rec.del_atp_peg_res_reqs.count LOOP
                  MSC_ATP_PVT.G_OFF_INSTANCE_ID(l_count + i)  := l_delete_atp_rec.off_res_instance_id(i);
Line: 5636

                  MSC_ATP_PVT.G_OFF_DEM_TRANS_ID(l_count + i) := l_delete_atp_rec.del_atp_peg_res_reqs(i);
Line: 5637

                  MSC_ATP_PVT.G_OFF_PLAN_ID(l_count + i)      := l_delete_atp_rec.atp_peg_res_reqs_plan_ids(i);
Line: 5704

      /*-- we now insert new picture for each session. Hence we do not need to update old picture
      IF l_inv_ctp = 4 and MSC_ATP_CTO.G_MODEL_IS_PRESENT_IN_SET =1
                       AND NVL(MSC_ATP_PVT.G_SYNC_ATP_CHECK, 'N') = 'N' THEN
         IF  (x_atp_table.action(1) = ATPQUERY or
             ((x_atp_table.Action(1) = DEMANDMODIFY OR
             x_atp_table.Action(1) = DEMANDADD OR
             x_atp_table.Action(1) = DMDRSVADD)
             AND NVL(x_atp_table.error_code(1), -1) not in (0, 61))) THEN

             --failure case
             MSC_ATP_CTO.Maintain_OS_Sourcing(p_instance_id,
                                               x_atp_table,
                                               MSC_ATP_CTO.FAIL);
Line: 5742

    IF l_delete_atp_rec.del_demand_ids IS NOT NULL and l_delete_atp_rec.del_demand_ids.COUNT > 0 THEN
       l_count := MSC_ATP_PVT.G_OFF_DEM_TRANS_ID.count;
Line: 5744

       MSC_ATP_PVT.G_OFF_INSTANCE_ID.extend(l_delete_atp_rec.del_demand_ids.count);
Line: 5745

       MSC_ATP_PVT.G_OFF_DEM_TRANS_ID.EXTEND(l_delete_atp_rec.del_demand_ids.count);
Line: 5746

       MSC_ATP_PVT.G_OFF_PLAN_ID.EXTEND(l_delete_atp_rec.del_demand_ids.count);
Line: 5748

          msc_sch_wb.atp_debug('Schedule: l_delete_atp_rec.del_demand_ids ' || l_delete_atp_rec.del_demand_ids.count);
Line: 5750

       FOR i in 1..l_delete_atp_rec.del_demand_ids.count LOOP
           MSC_ATP_PVT.G_OFF_INSTANCE_ID(l_count + i)  := p_instance_id;
Line: 5752

           MSC_ATP_PVT.G_OFF_DEM_TRANS_ID(l_count + i) := l_delete_atp_rec.del_demand_ids(i);
Line: 5753

           MSC_ATP_PVT.G_OFF_PLAN_ID(l_count + i)      := l_delete_atp_rec.del_plan_ids(i);
Line: 5762

    IF l_delete_atp_rec.del_atp_peg_demands IS NOT NULL and l_delete_atp_rec.del_atp_peg_demands.COUNT > 0 THEN
       l_count := MSC_ATP_PVT.G_OFF_DEM_TRANS_ID.count;
Line: 5764

       MSC_ATP_PVT.G_OFF_INSTANCE_ID.extend(l_delete_atp_rec.del_atp_peg_demands.count);
Line: 5765

       MSC_ATP_PVT.G_OFF_DEM_TRANS_ID.EXTEND(l_delete_atp_rec.del_atp_peg_demands.count);
Line: 5766

       MSC_ATP_PVT.G_OFF_PLAN_ID.EXTEND(l_delete_atp_rec.del_atp_peg_demands.count);
Line: 5768

          msc_sch_wb.atp_debug('Schedule: l_delete_atp_rec.del_atp_peg_demands.count ' || l_delete_atp_rec.del_atp_peg_demands.count);
Line: 5770

       FOR i in 1..l_delete_atp_rec.del_atp_peg_demands.count LOOP
           MSC_ATP_PVT.G_OFF_INSTANCE_ID(l_count + i)  := l_delete_atp_rec.off_demand_instance_id(i);
Line: 5772

           MSC_ATP_PVT.G_OFF_DEM_TRANS_ID(l_count + i) := l_delete_atp_rec.del_atp_peg_demands(i);
Line: 5773

           MSC_ATP_PVT.G_OFF_PLAN_ID(l_count + i)      := l_delete_atp_rec.atp_peg_demands_plan_ids(i);
Line: 5782

     IF l_delete_atp_rec.del_atp_peg_supplies IS NOT NULL and l_delete_atp_rec.del_atp_peg_supplies.COUNT > 0 THEN
        l_count := MSC_ATP_PVT.G_OFF_DEM_TRANS_ID.count;
Line: 5784

        MSC_ATP_PVT.G_OFF_INSTANCE_ID.extend(l_delete_atp_rec.del_atp_peg_supplies.count);
Line: 5785

        MSC_ATP_PVT.G_OFF_DEM_TRANS_ID.EXTEND(l_delete_atp_rec.del_atp_peg_supplies.count);
Line: 5786

        MSC_ATP_PVT.G_OFF_PLAN_ID.EXTEND(l_delete_atp_rec.del_atp_peg_supplies.count);
Line: 5788

           msc_sch_wb.atp_debug('Schedule: l_delete_atp_rec.del_atp_peg_supplies.count ' || l_delete_atp_rec.del_atp_peg_supplies.count );
Line: 5790

        FOR i in 1..l_delete_atp_rec.del_atp_peg_supplies.count LOOP
             MSC_ATP_PVT.G_OFF_INSTANCE_ID(l_count + i)  := l_delete_atp_rec.off_supply_instance_id(i);
Line: 5792

             MSC_ATP_PVT.G_OFF_DEM_TRANS_ID(l_count + i) := l_delete_atp_rec.del_atp_peg_supplies(i);
Line: 5793

             MSC_ATP_PVT.G_OFF_PLAN_ID(l_count + i)      := l_delete_atp_rec.atp_peg_supplies_plan_ids(i);
Line: 5802

     IF l_delete_atp_rec.del_atp_peg_res_reqs IS NOT NULL and l_delete_atp_rec.del_atp_peg_res_reqs.COUNT > 0 THEN
        l_count := MSC_ATP_PVT.G_OFF_DEM_TRANS_ID.count;
Line: 5804

        MSC_ATP_PVT.G_OFF_INSTANCE_ID.extend(l_delete_atp_rec.del_atp_peg_res_reqs.count);
Line: 5805

        MSC_ATP_PVT.G_OFF_DEM_TRANS_ID.EXTEND(l_delete_atp_rec.del_atp_peg_res_reqs.count);
Line: 5806

        MSC_ATP_PVT.G_OFF_PLAN_ID.EXTEND(l_delete_atp_rec.del_atp_peg_res_reqs.count);
Line: 5808

           msc_sch_wb.atp_debug('Schedule: l_delete_atp_rec.del_atp_peg_res_reqs.count  ' || l_delete_atp_rec.del_atp_peg_res_reqs.count );
Line: 5810

        FOR i in 1..l_delete_atp_rec.del_atp_peg_res_reqs.count LOOP
            MSC_ATP_PVT.G_OFF_INSTANCE_ID(l_count + i)  := l_delete_atp_rec.off_res_instance_id(i);
Line: 5812

            MSC_ATP_PVT.G_OFF_DEM_TRANS_ID(l_count + i) := l_delete_atp_rec.del_atp_peg_res_reqs(i);
Line: 5813

            MSC_ATP_PVT.G_OFF_PLAN_ID(l_count + i)      := l_delete_atp_rec.atp_peg_res_reqs_plan_ids(i);
Line: 5855

                  DELETE from msc_atp_pegging
                  WHERE  plan_id = l_old_plan_id(i)
                  AND    sales_order_line_id in (
                              NVL( x_atp_table.Config_item_line_id(i), -1),
                               x_atp_table.ATO_Model_Line_Id(i) );
Line: 5862

                     msc_sch_wb.atp_debug('Schedule: Number of rows deleted '||
                               ' from Atp Pegging ' || SQL%ROWCOUNT);
Line: 5942

        MSC_ATP_PVT.G_PEGGING_FOR_SET.DELETE;
Line: 5943

        MSC_ATP_PVT.G_DEMAND_CLASS_ATP_FLAG.DELETE;
Line: 5944

        MSC_ATP_PVT.G_REQ_ATP_DATE.DELETE;
Line: 5945

        MSC_ATP_PVT.G_REQ_DATE_QTY.DELETE;
Line: 5969

      	   msc_sch_wb.atp_debug('Schedule: ' || 'rajjain - Single call to Undo_Delete_Row');
Line: 5974

        MSC_ATP_DB_UTILS.Undo_Delete_Row(l_delete_atp_rec.del_identifiers,
            l_delete_atp_rec.del_plan_ids,
            p_instance_id,
            --subst
            l_delete_atp_rec.del_demand_ids,
            l_delete_atp_rec.del_inv_item_ids,
            l_delete_atp_rec.del_copy_demand_ids,        -- For summary enhancement
            l_delete_atp_rec.del_copy_demand_plan_ids,   -- For summary enhancement
            l_time_phased_set,            -- For time_phased_atp
            -- CTO ODR and Simplified Pegging
            l_delete_atp_rec.del_atp_peg_items,
            l_delete_atp_rec.del_atp_peg_demands ,
            l_delete_atp_rec.del_atp_peg_supplies,
            l_delete_atp_rec.del_atp_peg_res_reqs,
            l_delete_atp_rec.del_demand_source_type, --cmro
            -- End CTO ODR and Simplified Pegging
            l_delete_atp_rec.atp_peg_demands_plan_ids,  --Bug 3629191
            l_delete_atp_rec.atp_peg_supplies_plan_ids, --Bug 3629191
            l_delete_atp_rec.atp_peg_res_reqs_plan_ids,  --Bug 3629191
            l_delete_atp_rec.del_ods_demand_ids, --3720018, added for support of rescheduling in ODS
            l_delete_atp_rec.del_ods_inv_item_ids, --3720018, added for support of rescheduling in ODS
            l_delete_atp_rec.del_ods_demand_src_type, --3720018, added for support of rescheduling in ODS
            l_delete_atp_rec.del_ods_cto_demand_ids, --3720018, added for support of rescheduling in ODS
            l_delete_atp_rec.del_ods_cto_inv_item_ids, --3720018, added for support of rescheduling in ODS
            l_delete_atp_rec.del_ods_cto_dem_src_type, --3720018, added for support of rescheduling in ODS
            l_delete_atp_rec.del_ods_atp_refresh_no, --3720018, added for support of rescheduling in ODS
            l_delete_atp_rec.del_ods_cto_atp_refresh_no --3720018, added for support of rescheduling in ODS
            );
Line: 6072

                        SELECT pegging_id INTO l_tmp_pegging_id FROM mrp_atp_details_temp
                                WHERE session_id = MSC_ATP_PVT.G_SESSION_ID
                                AND order_line_id = x_atp_table.identifier(i)
                                AND parent_pegging_id is NULL
                                 AND record_type in (3,4);
Line: 6112

                   msc_sch_wb.atp_debug('Schedule: ' || 'single call to Undo_Delete_Row');
Line: 6116

               MSC_ATP_DB_UTILS.Undo_Delete_Row(l_delete_atp_rec.del_identifiers,
                    l_delete_atp_rec.del_plan_ids,
                    p_instance_id,
                    --subst
                    l_delete_atp_rec.del_demand_ids,
                    l_delete_atp_rec.del_inv_item_ids,
                    l_delete_atp_rec.del_copy_demand_ids,        -- For summary enhancement
                    l_delete_atp_rec.del_copy_demand_plan_ids,   -- For summary enhancement
                    l_time_phased_set,            -- For time_phased_atp
                    -- CTO ODR and Simplified Pegging
                    l_delete_atp_rec.del_atp_peg_items,
                    l_delete_atp_rec.del_atp_peg_demands ,
                    l_delete_atp_rec.del_atp_peg_supplies,
                    l_delete_atp_rec.del_atp_peg_res_reqs,
                    l_delete_atp_rec.del_demand_source_type, --cmro
                    -- End CTO ODR and Simplified Pegging
                    l_delete_atp_rec.atp_peg_demands_plan_ids,  --Bug 3629191
                    l_delete_atp_rec.atp_peg_supplies_plan_ids, --Bug 3629191
                    l_delete_atp_rec.atp_peg_res_reqs_plan_ids,  --Bug 3629191
                    l_delete_atp_rec.del_ods_demand_ids, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_inv_item_ids, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_demand_src_type, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_cto_demand_ids, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_cto_inv_item_ids, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_cto_dem_src_type, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_atp_refresh_no, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_cto_atp_refresh_no --3720018, added for support of rescheduling in ODS
                    );
Line: 6218

                        SELECT pegging_id INTO l_tmp_pegging_id FROM mrp_atp_details_temp
                                WHERE session_id = MSC_ATP_PVT.G_SESSION_ID
                                AND order_line_id = x_atp_table.identifier(i)
                                AND parent_pegging_id is NULL
                                 AND record_type in (3,4);
Line: 6226

                                   msc_sch_wb.atp_debug('Schedule: ' || 'Select EXCEPTION KR :invalid obj');
Line: 6263

               	   msc_sch_wb.atp_debug('Schedule: ' || 'rajjain - Single call to Undo_Delete_Row');
Line: 6267

                MSC_ATP_DB_UTILS.Undo_Delete_Row(l_delete_atp_rec.del_identifiers,
                    l_delete_atp_rec.del_plan_ids,
                    p_instance_id,
                    --subst
                    l_delete_atp_rec.del_demand_ids,
                    l_delete_atp_rec.del_inv_item_ids,
                    l_delete_atp_rec.del_copy_demand_ids,        -- For summary enhancement
                    l_delete_atp_rec.del_copy_demand_plan_ids,   -- For summary enhancement
                    l_time_phased_set,            -- For time_phased_atp
                    -- CTO ODR and Simplified Pegging
                    l_delete_atp_rec.del_atp_peg_items,
                    l_delete_atp_rec.del_atp_peg_demands ,
                    l_delete_atp_rec.del_atp_peg_supplies,
                    l_delete_atp_rec.del_atp_peg_res_reqs,
                    l_delete_atp_rec.del_demand_source_type, --cmro
                    -- End CTO ODR and Simplified Pegging
                    l_delete_atp_rec.atp_peg_demands_plan_ids,  --Bug 3629191
                    l_delete_atp_rec.atp_peg_supplies_plan_ids, --Bug 3629191
                    l_delete_atp_rec.atp_peg_res_reqs_plan_ids,  --Bug 3629191
                    l_delete_atp_rec.del_ods_demand_ids, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_inv_item_ids, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_demand_src_type, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_cto_demand_ids, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_cto_inv_item_ids, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_cto_dem_src_type, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_atp_refresh_no, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_cto_atp_refresh_no --3720018, added for support of rescheduling in ODS
                    );
Line: 6374

                        SELECT pegging_id INTO l_tmp_pegging_id FROM mrp_atp_details_temp
                                WHERE session_id = MSC_ATP_PVT.G_SESSION_ID
                                AND order_line_id = x_atp_table.identifier(i)
                                AND parent_pegging_id is NULL
                                 AND record_type in (3,4);
Line: 6417

                  msc_sch_wb.atp_debug('Schedule: ' || 'rajjain - Single call to Undo_Delete_Row');
Line: 6421

               MSC_ATP_DB_UTILS.Undo_Delete_Row(l_delete_atp_rec.del_identifiers,
                    l_delete_atp_rec.del_plan_ids,
                    p_instance_id,
                    --subst
                    l_delete_atp_rec.del_demand_ids,
                    l_delete_atp_rec.del_inv_item_ids,
                    l_delete_atp_rec.del_copy_demand_ids,        -- For summary enhancement
                    l_delete_atp_rec.del_copy_demand_plan_ids,   -- For summary enhancement
                    l_time_phased_set,            -- For time_phased_atp
                    -- CTO ODR and Simplified Pegging
                    l_delete_atp_rec.del_atp_peg_items,
                    l_delete_atp_rec.del_atp_peg_demands ,
                    l_delete_atp_rec.del_atp_peg_supplies,
                    l_delete_atp_rec.del_atp_peg_res_reqs,
                    l_delete_atp_rec.del_demand_source_type, --cmro
                    -- End CTO ODR and Simplified Pegging
                    l_delete_atp_rec.atp_peg_demands_plan_ids,  --Bug 3629191
                    l_delete_atp_rec.atp_peg_supplies_plan_ids, --Bug 3629191
                    l_delete_atp_rec.atp_peg_res_reqs_plan_ids,  --Bug 3629191
                    l_delete_atp_rec.del_ods_demand_ids, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_inv_item_ids, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_demand_src_type, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_cto_demand_ids, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_cto_inv_item_ids, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_cto_dem_src_type, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_atp_refresh_no, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_cto_atp_refresh_no --3720018, added for support of rescheduling in ODS
                    );
Line: 6548

                        SELECT pegging_id INTO l_tmp_pegging_id FROM mrp_atp_details_temp
                                WHERE session_id = MSC_ATP_PVT.G_SESSION_ID
                                AND order_line_id = x_atp_table.identifier(i)
                                AND parent_pegging_id is NULL
                                 AND record_type in (3,4);
Line: 6556

                                   msc_sch_wb.atp_debug('Schedule: ' || 'Select EXCEPTION KR: others ');
Line: 6591

                  msc_sch_wb.atp_debug('Schedule: ' || 'rajjain - Single call to Undo_Delete_Row');
Line: 6595

               MSC_ATP_DB_UTILS.Undo_Delete_Row(l_delete_atp_rec.del_identifiers,
                    l_delete_atp_rec.del_plan_ids,
                    p_instance_id,
                    --subst
                    l_delete_atp_rec.del_demand_ids,
                    l_delete_atp_rec.del_inv_item_ids,
                    l_delete_atp_rec.del_copy_demand_ids,        -- For summary enhancement
                    l_delete_atp_rec.del_copy_demand_plan_ids,   -- For summary enhancement
                    l_time_phased_set,            -- For time_phased_atp
                    -- CTO ODR and Simplified Pegging
                    l_delete_atp_rec.del_atp_peg_items,
                    l_delete_atp_rec.del_atp_peg_demands ,
                    l_delete_atp_rec.del_atp_peg_supplies,
                    l_delete_atp_rec.del_atp_peg_res_reqs,
                    l_delete_atp_rec.del_demand_source_type, --cmro
                    -- End CTO ODR and Simplified Pegging
                    l_delete_atp_rec.atp_peg_demands_plan_ids,  --Bug 3629191
                    l_delete_atp_rec.atp_peg_supplies_plan_ids, --Bug 3629191
                    l_delete_atp_rec.atp_peg_res_reqs_plan_ids,  --Bug 3629191
                    l_delete_atp_rec.del_ods_demand_ids, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_inv_item_ids, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_demand_src_type, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_cto_demand_ids, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_cto_inv_item_ids, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_cto_dem_src_type, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_atp_refresh_no, --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_cto_atp_refresh_no --3720018, added for support of rescheduling in ODS
                    );
Line: 6683

l_atp_insert_rec		MRP_ATP_PVT.AtpRec;
Line: 6780

l_update_PO_mode		NUMBER := MSC_ATP_PVT.UNDO;
Line: 6942

   msc_sch_wb.atp_debug('ATP_Check: ' || 'Insert_Flag:' || to_char(p_atp_record.Insert_Flag) );
Line: 7306

            Added by avjain to capture original request date to insert in msc-demands
            original_request_date corresponds to request date for 24*7 ATP which gives
            the request date
            */
        l_original_req_ship_date := nvl(p_atp_record.original_request_date,l_requested_ship_date);
Line: 7329

                 SELECT NVL(r.demand_class_atp_flag, 0)
                 INTO   l_demand_class_flag
                 FROM   msc_system_items I,
                        msc_trading_partners P,
                        msc_atp_rules  R
                 WHERE  I.sr_instance_id = p_atp_record.instance_id
                 AND    I.organization_id = p_atp_record.organization_id
                 AND    I.sr_inventory_item_id = p_atp_record.inventory_item_id
                 AND    I.plan_id = -1
                 AND    I.organization_id = P.sr_tp_id
                 AND    P.sr_instance_id = I.sr_instance_id
                 AND    P.partner_type = 3 --- organization
                 AND    I.sr_instance_id = R.sr_instance_id
                 AND    R.rule_id = NVL(I.atp_rule_id, P.default_atp_rule_id);
Line: 7640

            l_atp_insert_rec.instance_id := p_atp_record.instance_id;
Line: 7644

            l_atp_insert_rec.inventory_item_id := C_ITEM_INFO_REC.dest_inv_item_id;
Line: 7646

            /*l_atp_insert_rec.inventory_item_id := MSC_ATP_FUNC.get_inv_item_id
                                                (p_atp_record.instance_id,
                                                --- 2152184
                                                l_request_item_id,
                                                --p_atp_record.request_item_id,
                                                null,
                                                p_atp_record.organization_id);
Line: 7654

            l_atp_insert_rec.organization_id := p_atp_record.organization_id;
Line: 7655

            l_atp_insert_rec.identifier := p_atp_record.identifier;
Line: 7656

            l_atp_insert_rec.demand_source_type:=nvl(p_atp_record.demand_source_type, 2);
Line: 7657

            l_atp_insert_rec.demand_source_header_id :=
                            nvl(p_atp_record.demand_source_header_id, -1);
Line: 7659

            l_atp_insert_rec.demand_source_line := p_atp_record.demand_source_line;
Line: 7660

            l_atp_insert_rec.demand_source_delivery :=
                            p_atp_record.demand_source_delivery;
Line: 7662

            l_atp_insert_rec.quantity_ordered :=
                             p_atp_record.quantity_ordered;
Line: 7664

            l_atp_insert_rec.requested_ship_date := l_requested_ship_date;
Line: 7665

            l_atp_insert_rec.demand_class := p_atp_record.demand_class;
Line: 7666

            l_atp_insert_rec.refresh_number := p_refresh_number; -- summary enhancement p_atp_record.refresh_number;
Line: 7670

            l_atp_insert_rec.origination_type := 30;
Line: 7672

            l_atp_insert_rec.order_number := p_atp_record.order_number;
Line: 7674

            l_atp_insert_rec.ship_set_name := p_atp_record.ship_set_name;
Line: 7675

            l_atp_insert_rec.arrival_set_name := p_atp_record.arrival_set_name;
Line: 7676

            l_atp_insert_rec.original_request_ship_date :=l_original_req_ship_date;
Line: 7680

               l_atp_insert_rec.old_demand_id := p_atp_record.old_demand_id;
Line: 7682

               l_atp_insert_rec.old_demand_id := null;
Line: 7685

            l_atp_insert_rec.session_id:= MSC_ATP_PVT.G_SESSION_ID;
Line: 7686

            l_atp_insert_rec.delivery_lead_time := l_delivery_lead_time;
Line: 7688

            MSC_ATP_DB_UTILS.Add_Mat_Demand(l_atp_insert_rec,
                           p_plan_id,
                           l_demand_class_flag,
                           l_demand_id);
Line: 7809

                     l_atp_insert_rec.instance_id := p_atp_record.instance_id;
Line: 7812

                     l_atp_insert_rec.inventory_item_id := PF_ITEM_INFO_REC.dest_inv_item_id;
Line: 7813

                     l_atp_insert_rec.request_item_id := C_ITEM_INFO_REC.dest_inv_item_id;
Line: 7814

                     l_atp_insert_rec.atf_date := p_atp_record.atf_date;
Line: 7815

                     l_atp_insert_rec.atf_date_quantity := 0; -- check this??
Line: 7816

                     l_atp_insert_rec.requested_date_quantity := l_requested_date_quantity;
Line: 7819

                     l_atp_insert_rec.organization_id := p_atp_record.organization_id;
Line: 7820

                     l_atp_insert_rec.identifier := p_atp_record.identifier;
Line: 7821

                     l_atp_insert_rec.demand_source_type:=nvl(p_atp_record.demand_source_type, 2);
Line: 7822

                     l_atp_insert_rec.demand_source_header_id :=
                                     nvl(p_atp_record.demand_source_header_id, -1);
Line: 7824

                     l_atp_insert_rec.demand_source_delivery :=
                                     p_atp_record.demand_source_delivery;
Line: 7827

                     l_atp_insert_rec.quantity_ordered :=  p_atp_record.quantity_ordered;
Line: 7829

                     l_atp_insert_rec.requested_ship_date := l_requested_ship_date;
Line: 7830

                     l_atp_insert_rec.demand_class := p_atp_record.demand_class;
Line: 7831

                     l_atp_insert_rec.refresh_number := p_refresh_number; -- summary enhancement p_atp_record.refresh_number;
Line: 7832

                     l_atp_insert_rec.order_number := p_atp_record.order_number;
Line: 7840

                         l_atp_insert_rec.origination_type := 47;
Line: 7843

                           msc_sch_wb.atp_debug('ATP_Check: ' || 'DRP origination_type ='|| l_atp_insert_rec.origination_type);
Line: 7849

                         l_atp_insert_rec.origination_type := 1;
Line: 7862

                     l_atp_insert_rec.old_demand_id := null;
Line: 7866

                     l_atp_insert_rec.Top_Model_line_id := p_atp_record.Top_Model_line_id;
Line: 7867

                     l_atp_insert_rec.ATO_Parent_Model_Line_Id := p_atp_record.ATO_Parent_Model_Line_Id;
Line: 7868

                     l_atp_insert_rec.Parent_line_id := p_atp_record.Parent_line_id;
Line: 7869

                     l_atp_insert_rec.ATO_Model_Line_Id := p_atp_record.ATO_Model_Line_Id;
Line: 7870

                     l_atp_insert_rec.wip_supply_type := p_atp_record.wip_supply_type;
Line: 7871

                     l_atp_insert_rec.mand_comp_flag := p_atp_record.mand_comp_flag;
Line: 7872

                     l_atp_insert_rec.wip_supply_type := p_atp_record.mand_comp_flag;
Line: 7875

                     l_atp_insert_rec.ship_set_name := p_atp_record.ship_set_name;
Line: 7876

                     l_atp_insert_rec.arrival_set_name := p_atp_record.arrival_set_name;
Line: 7877

                     l_atp_insert_rec.original_request_ship_date :=l_original_req_ship_date;
Line: 7882

                            l_atp_insert_rec.ship_method := p_atp_record.ship_method;
Line: 7884

                            l_atp_insert_rec.ship_method := null;
Line: 7887

                     l_atp_insert_rec.session_id:= MSC_ATP_PVT.G_SESSION_ID;
Line: 7888

                     l_atp_insert_rec.delivery_lead_time := l_delivery_lead_time;
Line: 7890

                     MSC_ATP_DB_UTILS.Add_Mat_Demand(l_atp_insert_rec,
                                   p_plan_id,
                                   l_demand_class_flag,
                                   l_demand_id);
Line: 8001

                  l_atp_insert_rec.instance_id := p_atp_record.instance_id;
Line: 8004

                  l_atp_insert_rec.inventory_item_id := PF_ITEM_INFO_REC.dest_inv_item_id;
Line: 8005

                  l_atp_insert_rec.request_item_id := C_ITEM_INFO_REC.dest_inv_item_id;
Line: 8006

                  l_atp_insert_rec.atf_date := p_atp_record.atf_date;
Line: 8007

                  l_atp_insert_rec.atf_date_quantity := 0; -- check this??
Line: 8008

                  l_atp_insert_rec.requested_date_quantity := l_requested_date_quantity;
Line: 8011

                  l_atp_insert_rec.organization_id := p_atp_record.organization_id;
Line: 8012

                  l_atp_insert_rec.identifier := p_atp_record.identifier;
Line: 8013

                  l_atp_insert_rec.demand_source_type:=nvl(p_atp_record.demand_source_type, 2);
Line: 8014

                  l_atp_insert_rec.demand_source_header_id :=
                                     nvl(p_atp_record.demand_source_header_id, -1);
Line: 8016

                  l_atp_insert_rec.demand_source_delivery :=
                                     p_atp_record.demand_source_delivery;
Line: 8019

                  l_atp_insert_rec.quantity_ordered :=  p_atp_record.quantity_ordered;
Line: 8021

                  l_atp_insert_rec.requested_ship_date := l_requested_ship_date;
Line: 8022

                  l_atp_insert_rec.demand_class := p_atp_record.demand_class;
Line: 8023

                  l_atp_insert_rec.refresh_number := p_refresh_number; -- summary enhancement p_atp_record.refresh_number;
Line: 8024

                  l_atp_insert_rec.order_number := p_atp_record.order_number;
Line: 8027

                  l_atp_insert_rec.origination_type := 30; --1; 5088719
Line: 8038

                  l_atp_insert_rec.old_demand_id := null;
Line: 8042

                  l_atp_insert_rec.Top_Model_line_id := p_atp_record.Top_Model_line_id;
Line: 8043

                  l_atp_insert_rec.ATO_Parent_Model_Line_Id := p_atp_record.ATO_Parent_Model_Line_Id;
Line: 8044

                  l_atp_insert_rec.Parent_line_id := p_atp_record.Parent_line_id;
Line: 8045

                  l_atp_insert_rec.ATO_Model_Line_Id := p_atp_record.ATO_Model_Line_Id;
Line: 8046

                  l_atp_insert_rec.wip_supply_type := p_atp_record.wip_supply_type;
Line: 8047

                  l_atp_insert_rec.mand_comp_flag := p_atp_record.mand_comp_flag;
Line: 8048

                  l_atp_insert_rec.wip_supply_type := p_atp_record.mand_comp_flag;
Line: 8051

                  l_atp_insert_rec.ship_set_name := p_atp_record.ship_set_name;
Line: 8052

                  l_atp_insert_rec.arrival_set_name := p_atp_record.arrival_set_name;
Line: 8053

                  l_atp_insert_rec.original_request_ship_date :=l_original_req_ship_date;
Line: 8058

                         l_atp_insert_rec.ship_method := p_atp_record.ship_method;
Line: 8060

                         l_atp_insert_rec.ship_method := null;
Line: 8063

                  l_atp_insert_rec.session_id:= MSC_ATP_PVT.G_SESSION_ID;
Line: 8064

                  l_atp_insert_rec.delivery_lead_time := l_delivery_lead_time;
Line: 8246

                        l_mat_atp_info_rec.insert_flag               := p_atp_record.insert_flag;
Line: 8429

               l_atp_insert_rec.instance_id := p_atp_record.instance_id;
Line: 8433

                  l_atp_insert_rec.inventory_item_id := C_ITEM_INFO_REC.dest_inv_item_id;
Line: 8435

                  l_atp_insert_rec.inventory_item_id := PF_ITEM_INFO_REC.dest_inv_item_id;
Line: 8437

               l_atp_insert_rec.request_item_id := C_ITEM_INFO_REC.dest_inv_item_id;
Line: 8438

               l_atp_insert_rec.atf_date := p_atp_record.atf_date;
Line: 8439

               l_atp_insert_rec.atf_date_quantity := l_atf_date_qty;
Line: 8440

               l_atp_insert_rec.requested_date_quantity := l_requested_date_quantity;
Line: 8444

               /*l_atp_insert_rec.inventory_item_id := MSC_ATP_FUNC.get_inv_item_id
                                                   (p_atp_record.instance_id,
                                                   --2152184
                                                   --p_atp_record.request_item_id,
						   l_request_item_id,
                                                   null,
                                                   p_atp_record.organization_id);
Line: 8452

               l_atp_insert_rec.organization_id := p_atp_record.organization_id;
Line: 8453

               l_atp_insert_rec.identifier := p_atp_record.identifier;
Line: 8454

               l_atp_insert_rec.demand_source_type:=nvl(p_atp_record.demand_source_type, 2);
Line: 8455

               l_atp_insert_rec.demand_source_header_id :=
                               nvl(p_atp_record.demand_source_header_id, -1);
Line: 8457

               l_atp_insert_rec.demand_source_delivery :=
                               p_atp_record.demand_source_delivery;
Line: 8480

                  l_atp_insert_rec.quantity_ordered :=  LEAST(GREATEST(l_requested_date_quantity, 0),
                                                                      p_atp_record.quantity_ordered);
Line: 8483

           	      msc_sch_wb.atp_debug('ATP_Check: ' || 'l_atp_insert_rec.quantity_ordered : '||
                                                                    l_atp_insert_rec.quantity_ordered);
Line: 8503

                     l_atp_insert_rec.quantity_ordered :=  LEAST(GREATEST(l_requested_date_quantity, 0),
                                                                      p_atp_record.quantity_ordered);
Line: 8506

                     l_atp_insert_rec.quantity_ordered :=  p_atp_record.quantity_ordered;
Line: 8509

                  l_atp_insert_rec.quantity_ordered :=  p_atp_record.quantity_ordered;
Line: 8511

           	      msc_sch_wb.atp_debug('ATP_Check: ' || 'l_atp_insert_rec.quantity_ordered : '||
                                                                    l_atp_insert_rec.quantity_ordered);
Line: 8519

               l_atp_insert_rec.requested_ship_date := l_requested_ship_date;
Line: 8520

               l_atp_insert_rec.demand_class := p_atp_record.demand_class;
Line: 8521

               l_atp_insert_rec.refresh_number := p_refresh_number; -- summary enhancement p_atp_record.refresh_number;
Line: 8522

               l_atp_insert_rec.order_number := p_atp_record.order_number;
Line: 8540

                 l_atp_insert_rec.origination_type := 30;
Line: 8542

                 l_atp_insert_rec.demand_source_line := p_atp_record.demand_source_line;
Line: 8543

                 l_atp_insert_rec.old_demand_id := p_atp_record.old_demand_id;
Line: 8553

                      l_atp_insert_rec.origination_type := 47;
Line: 8556

                          msc_sch_wb.atp_debug('ATP_Check: ' || 'DRP origination_type ='|| l_atp_insert_rec.origination_type);
Line: 8562

                      l_atp_insert_rec.origination_type := 1;
Line: 8569

                     l_atp_insert_rec.demand_source_line := p_atp_record.demand_source_line;
Line: 8598

                  l_atp_insert_rec.old_demand_id := p_atp_record.old_demand_id;
Line: 8600

                  l_atp_insert_rec.old_demand_id := null;
Line: 8616

                 l_atp_insert_rec.Top_Model_line_id := p_atp_record.Top_Model_line_id;
Line: 8617

                 l_atp_insert_rec.ATO_Parent_Model_Line_Id := p_atp_record.ATO_Parent_Model_Line_Id;
Line: 8618

                 l_atp_insert_rec.Parent_line_id := p_atp_record.Parent_line_id;
Line: 8619

                 l_atp_insert_rec.ATO_Model_Line_Id := p_atp_record.ATO_Model_Line_Id;
Line: 8620

                 l_atp_insert_rec.wip_supply_type := p_atp_record.wip_supply_type;
Line: 8621

                 l_atp_insert_rec.mand_comp_flag := p_atp_record.mand_comp_flag;
Line: 8623

                 l_atp_insert_rec.ship_set_name := p_atp_record.ship_set_name;
Line: 8624

                 l_atp_insert_rec.arrival_set_name := p_atp_record.arrival_set_name;
Line: 8625

                 l_atp_insert_rec.original_request_ship_date :=l_original_req_ship_date;
Line: 8627

                    msc_sch_wb.atp_debug('ATP_Check: ' || 'latest_acceptable_date: '|| l_atp_insert_rec.latest_acceptable_date);
Line: 8628

                    msc_sch_wb.atp_debug('ATP_Check: ' || 'latest_acceptable_date: '|| l_atp_insert_rec.original_request_ship_date);
Line: 8630

                 l_atp_insert_rec.wip_supply_type := p_atp_record.mand_comp_flag;
Line: 8636

                        l_atp_insert_rec.ship_method := p_atp_record.ship_method;
Line: 8638

                        l_atp_insert_rec.ship_method := null;
Line: 8642

                     msc_sch_wb.atp_debug('ATP_Check: ' || 'l_atp_insert_rec.ship_method : '|| l_atp_insert_rec.ship_method);
Line: 8644

                 l_atp_insert_rec.session_id:= MSC_ATP_PVT.G_SESSION_ID;
Line: 8645

                 l_atp_insert_rec.delivery_lead_time := l_delivery_lead_time;
Line: 8653

                    MSC_ATP_DB_UTILS.Add_Mat_Demand(l_atp_insert_rec,
                                 p_plan_id,
                                 l_demand_class_flag,
                                 l_demand_id);
Line: 9050

		 IF p_atp_record.insert_flag <> 0 THEN
	   	         MSC_ATP_DB_UTILS.move_SD_temp_into_mrp_details(l_atp_pegging_id,
				MSC_ATP_PVT.G_DEMAND_PEGGING_ID);
Line: 9106

                 g_atp_record.insert_flag := p_atp_record.insert_flag;
Line: 9185

                      MSC_ATP_DB_UTILS.delete_pegging( l_atp_pegging_id);
Line: 9222

                      msc_sch_wb.atp_debug('ATP_Check: ' || 'Update POD for Primary Component');
Line: 9225

                   	MSC_ATP_DB_UTILS.Update_Pegging(l_pegging_id,
                                  null,
                                  p_atp_record.quantity_ordered-
                                  l_sub_requested_date_quantity );
Line: 9231

                   update msc_demands
                   set    USING_REQUIREMENT_QUANTITY =
                          MSC_ATP_UTILS.Truncate_Demand((USING_REQUIREMENT_QUANTITY-
                           greatest(l_sub_requested_date_quantity, 0)))  -- 5598066
                   where  demand_id = l_demand_id
                   and    plan_id = p_plan_id
                   returning inventory_item_id into l_inventory_item_id;
Line: 9240

                      msc_sch_wb.atp_debug('ATP_Check: ' || 'number of rows updated := ' || SQL%ROWCOUNT);
Line: 9245

		        --using the same insert rec we prepared earlier
		        l_atp_insert_rec.quantity_ordered :=  l_atp_insert_rec.quantity_ordered - greatest(l_sub_requested_date_quantity, 0);
Line: 9247

		        l_atp_insert_rec.requested_date_quantity := l_atp_insert_rec.requested_date_quantity - greatest(l_sub_requested_date_quantity, 0);
Line: 9251

                                l_atp_insert_rec,
                                p_plan_id,
                                l_demand_id,
                                l_return_status
		        );
Line: 9264

                          update msc_alloc_demands
                          set allocated_quantity = (allocated_quantity -
                                                    greatest(l_sub_requested_date_quantity, 0))
                          where parent_demand_id = l_demand_id --updating for primary only
                          and   plan_id = p_plan_id;
Line: 9271

                             msc_sch_wb.atp_debug('ATP_Check: ' || 'number of rows updated := ' || SQL%ROWCOUNT);
Line: 9293

                       update /*+ INDEX(msc_atp_summary_sd MSC_ATP_SUMMARY_SD_U1) */ msc_atp_summary_sd
                       set sd_qty = sd_qty + greatest(l_sub_requested_date_quantity, 0)
                       where plan_id = p_plan_id
                       and sr_instance_id  = p_atp_record.instance_id
                       and inventory_item_id = l_inventory_item_id
                       and organization_id = p_atp_record.organization_id
                       and sd_date = trunc(l_requested_ship_date);
Line: 9428

                   g_atp_record.insert_flag := p_atp_record.insert_flag;
Line: 9491

                   update msc_demands
                   set USING_REQUIREMENT_QUANTITY = p_atp_record.quantity_ordered
                   where plan_id = p_plan_id and
                         demand_id = l_demand_id;
Line: 9500

		        --using the same insert rec we prepared earlier
		        l_atp_insert_rec.quantity_ordered :=  p_atp_record.quantity_ordered;
Line: 9502

		        l_atp_insert_rec.requested_date_quantity := l_atp_insert_rec.requested_date_quantity + nvl(l_stealing_qty, 0);
Line: 9503

		        l_atp_insert_rec.atf_date_quantity := l_atp_insert_rec.atf_date_quantity + nvl(l_mem_stealing_qty, 0);
Line: 9505

                                l_atp_insert_rec,
                                p_plan_id,
                                l_demand_id,
                                l_return_status
		        );
Line: 9516

                        /* update atf date quantity */
                        p_atp_record.atf_date_quantity := l_atp_insert_rec.atf_date_quantity;
Line: 9523

                             update msc_alloc_demands
                             set allocated_quantity = p_atp_record.quantity_ordered
                             where parent_demand_id = l_demand_id
                             and   plan_id = p_plan_id;
Line: 9556

                   update msc_demands
                   set    USING_REQUIREMENT_QUANTITY =
                          (p_atp_record.quantity_ordered - l_stealing_qty)
                   where  demand_id = l_demand_id
                   and    plan_id = p_plan_id;
Line: 9650

	         msc_sch_wb.atp_debug('ATP_Check: ' || 'after insert row, 1');
Line: 9684

		   update msc_demands
		   set using_requirement_quantity = MSC_ATP_UTILS.Truncate_Demand(p_atp_record.requested_date_quantity + l_stealing_requested_date_qty)
		   where demand_id = l_demand_id
	      	   and plan_id = p_plan_id;
Line: 9691

        	        --using the same insert rec we prepared earlier
        	        l_atp_insert_rec.quantity_ordered :=  p_atp_record.quantity_ordered - l_net_demand;
Line: 9693

                        l_atp_insert_rec.requested_date_quantity := GREATEST(p_atp_record.requested_date_quantity, 0)
                                                                                 + nvl(l_stealing_requested_date_qty, 0);
Line: 9695

        	        l_atp_insert_rec.atf_date_quantity := NVL(p_atp_record.atf_date_quantity, 0);
Line: 9698

                                        l_atp_insert_rec,
                                        p_plan_id,
                                        l_demand_id,
                                        l_return_status
        		        );
Line: 9710

        	        update msc_alloc_demands
        		set allocated_quantity = p_atp_record.requested_date_quantity + l_stealing_requested_date_qty
        		where parent_demand_id = l_demand_id
        		and plan_id = p_plan_id;
Line: 9774

                       p_atp_record.atf_date_quantity := NVL(l_atp_insert_rec.requested_date_quantity, 0) + NVL(l_atf_date_qty, 0);
Line: 9894

                    UPDATE msc_demands
                    SET  USING_ASSEMBLY_DEMAND_DATE = l_atp_date_this_level
--ngoel 8/30/2000 Check if this needs to be changed to l_atp_date_this_level.
                    WHERE  demand_id = l_demand_id
                    AND    plan_id = p_plan_id;
Line: 9909

		    -- This piece of code moves the demand date which is also done in procedure update_sd_date
		    -- Since update_sd_date was not called for last line of SLSO ATO model, therefore, the summary
		    -- picture was not matching with details picture for last line.
		    -- On commenting this line, this piece of code is never executed for SLSO ATO model lines
		    -- making the summary picture consistent with details picture for all the lines.
                    ---bug 3098127: the following condition was removed by the bug 2738280.
                    -- this shouldn't have been removed.

                    IF   (p_parent_pegging_id is null) OR
                        ((p_parent_pegging_id is not null AND
                        p_search = FORWARD_SCHEDULING)) THEN

			-- dsting ATO 2465370
			-- in case of override for CTO, do not adjust the demand date
                        --bug 3564511: This condition is not necessary as we always want to
                        -- adjust dates
		        --IF NVL(G_LINE_OVERRIDE_FLAG, 'N') = 'N'
			   --OR (NVL(C_ITEM_INFO_REC.cto_source_org_id, -1) <> p_atp_record.organization_id
			   --AND p_parent_pegging_id is not null)
			--THEN
                                --bug 3328421: required date contains the original request date
                                -- actual_supply_demand_date contain the actual sd date
				--update mrp_atp_details_temp set required_date = TRUNC(l_atp_date_this_level) + MSC_ATP_PVT.G_END_OF_DAY
				update mrp_atp_details_temp set actual_supply_demand_date =
                                                                 TRUNC(l_atp_date_this_level)--4460369 + MSC_ATP_PVT.G_END_OF_DAY
				where session_id = MSC_ATP_PVT.G_SESSION_ID
				and pegging_id = l_pegging_id
				and record_type = 3;
Line: 9939

					msc_sch_wb.atp_debug('ATO update details_temp 1: ' || l_pegging_id || ' date: ' || l_atp_date_this_level);
Line: 9940

                                        msc_sch_wb.atp_debug('Update demand with demand id := ' || l_demand_id);
Line: 9941

                                        msc_sch_wb.atp_debug('Update demand on date : = ' || l_atp_date_this_level);
Line: 9951

                                   UPDATE msc_sales_orders
                                   SET REQUIREMENT_DATE = TRUNC(l_atp_date_this_level) --4460369+ MSC_ATP_PVT.G_END_OF_DAY
                                   WHERE sr_instance_id  = p_atp_record.instance_id
                                   AND   DEMAND_ID = l_demand_id
                                   returning inventory_item_id into l_inventory_item_id;
Line: 9957

                                   UPDATE msc_demands
                                   SET
                                   --start changes for plan by request date
                                   USING_ASSEMBLY_DEMAND_DATE =
                                        DECODE(ORIGINATION_TYPE,
                                               6,  decode(MSC_ATP_PVT.G_PLAN_INFO_REC.schedule_by_date_type,
                                                          MSC_ATP_PVT.G_SCHEDULE_SHIP_DATE_LEGEND,
                                                              TRUNC(l_atp_date_this_level) + MSC_ATP_PVT.G_END_OF_DAY,
                                                          MSC_ATP_PVT.G_SCHEDULE_ARRIVAL_DATE_LEGEND,
                                                              TRUNC(l_atp_date_this_level) + MSC_ATP_PVT.G_END_OF_DAY,
                                                          MSC_ATP_PVT.G_PROMISE_SHIP_DATE_LEGEND,
                                                              TRUNC(l_atp_date_this_level) + MSC_ATP_PVT.G_END_OF_DAY,
                                                          MSC_ATP_PVT.G_PROMISE_ARRIVAL_DATE_LEGEND,
                                                              TRUNC(l_atp_date_this_level) + MSC_ATP_PVT.G_END_OF_DAY,
                                                          MSC_ATP_PVT.G_REQUEST_SHIP_DATE_LEGEND,
                                                              l_original_req_ship_date,
                                                          MSC_ATP_PVT.G_REQUEST_ARRIVAL_DATE_LEGEND,
                                                              l_original_req_ship_date,
                                                              TRUNC(l_atp_date_this_level) + MSC_ATP_PVT.G_END_OF_DAY),
                                               30, decode(MSC_ATP_PVT.G_PLAN_INFO_REC.schedule_by_date_type,
                                                          MSC_ATP_PVT.G_SCHEDULE_SHIP_DATE_LEGEND,
                                                              TRUNC(l_atp_date_this_level) + MSC_ATP_PVT.G_END_OF_DAY,
                                                          MSC_ATP_PVT.G_SCHEDULE_ARRIVAL_DATE_LEGEND,
                                                              TRUNC(l_atp_date_this_level) + MSC_ATP_PVT.G_END_OF_DAY,
                                                          MSC_ATP_PVT.G_PROMISE_SHIP_DATE_LEGEND,
                                                              TRUNC(l_atp_date_this_level) + MSC_ATP_PVT.G_END_OF_DAY,
                                                          MSC_ATP_PVT.G_PROMISE_ARRIVAL_DATE_LEGEND,
                                                              TRUNC(l_atp_date_this_level) + MSC_ATP_PVT.G_END_OF_DAY,
                                                          MSC_ATP_PVT.G_REQUEST_SHIP_DATE_LEGEND,
                                                              l_original_req_ship_date,
                                                          MSC_ATP_PVT.G_REQUEST_ARRIVAL_DATE_LEGEND,
                                                              l_original_req_ship_date,
                                                              TRUNC(l_atp_date_this_level) + MSC_ATP_PVT.G_END_OF_DAY),
                                               TRUNC(l_atp_date_this_level) + MSC_ATP_PVT.G_END_OF_DAY),
                                   schedule_ship_date = DECODE(ORIGINATION_TYPE,
	                                                       6,  TRUNC(l_atp_date_this_level) + MSC_ATP_PVT.G_END_OF_DAY,
	                                                       30, TRUNC(l_atp_date_this_level) + MSC_ATP_PVT.G_END_OF_DAY,
	                                                       NULL),
                                   promise_ship_date  = DECODE(ORIGINATION_TYPE,
                                                               6,  TRUNC(l_atp_date_this_level) + MSC_ATP_PVT.G_END_OF_DAY,
                                                               30, TRUNC(l_atp_date_this_level) + MSC_ATP_PVT.G_END_OF_DAY,
                                                               NULL)
                                   --end of plan by request date enhanc
                                   WHERE  demand_id = l_demand_id
                                   AND    plan_id = p_plan_id
                                   returning inventory_item_id into l_inventory_item_id;
Line: 10038

                                    update msc_alloc_demands
                                    set DEMAND_DATE = l_atp_date_this_level
                                    where parent_demand_id = l_demand_id
                                    and   plan_id = p_plan_id;
Line: 10048

                                        msc_sch_wb.atp_debug('ATP_Check: ' || 'update old date demand');
Line: 10063

                                    update /*+ INDEX(msc_atp_summary_sd MSC_ATP_SUMMARY_SD_U1) */ msc_atp_summary_sd
                                    set sd_qty = sd_qty + p_atp_record.quantity_ordered
                                    where plan_id = p_plan_id
                                    and   sr_instance_id = p_atp_record.instance_id
                                    and   organization_id = p_atp_record.organization_id
                                    and   inventory_item_id = l_inventory_item_id
                                    and   sd_date = trunc(l_requested_ship_date);
Line: 10086

                                        msc_sch_wb.atp_debug('ATP_Check: ' || 'update demand on new date');
Line: 10088

                                    update /*+ INDEX(msc_atp_summary_sd MSC_ATP_SUMMARY_SD_U1) */ msc_atp_summary_sd
                                    set sd_qty = sd_qty - p_atp_record.quantity_ordered
                                    where plan_id = p_plan_id
                                    and   sr_instance_id = p_atp_record.instance_id
                                    and   organization_id = p_atp_record.organization_id
                                    and   inventory_item_id = l_inventory_item_id
                                    and   sd_date = trunc(l_atp_date_this_level);
Line: 10098

                                            msc_sch_wb.atp_debug('ATP_Check: ' || 'insert demand on new date');
Line: 10100

                                        MSC_ATP_DB_UTILS.INSERT_SUMMARY_SD_ROW(p_plan_id,
                                                                p_atp_record.instance_id,
                                                                p_atp_record.organization_id,
                                                                l_inventory_item_id,
                                                                l_atp_date_this_level,
                                                                -1 * p_atp_record.quantity_ordered,
                                                                '@@@');
Line: 10242

                           IF NVL(p_atp_record.insert_flag,0) <> 0 THEN
                              IF MSC_ATP_PVT.G_INV_CTP = 4 THEN
                                 IF (MSC_ATP_PVT.G_ALLOCATED_ATP = 'Y') AND
                                   (MSC_ATP_PVT.G_ALLOCATION_METHOD = 2) THEN
                                   -- Link the Supply Demand Details for
                                   --first Demand class to the pegging details

				   IF l_atp_period_first.pegging_id.COUNT > 0 THEN
				 	MSC_ATP_UTILS.copy_mrp_sd_recs(
				 		l_atp_period_first.pegging_id(1),
				 		l_atp_pegging_id);
Line: 10280

			         IF p_atp_record.insert_flag <> 0 THEN
   		                         MSC_ATP_DB_UTILS.move_SD_temp_into_mrp_details(l_atp_pegging_id,
				    		   MSC_ATP_PVT.G_DEMAND_PEGGING_ID);
Line: 10328

                   Select DECODE(pl.planning_time_fence_flag,
                                        1, trunc(NVL(itm.planning_time_fence_date, l_ptf_date)), -- Bug 3535999 - l_sysdate)),
                                        l_ptf_date), -- Bug 3535999 - l_sysdate),
                          pl.planning_time_fence_flag   -- Bug 3525582
                   into   l_ptf_date, l_ptf_enabled     -- Bug 3525582
                   from   msc_system_items itm,
		          msc_plans pl
                   where  itm.plan_id = p_plan_id
                   and    itm.sr_instance_id = p_atp_record.instance_id
                   and    itm.organization_id = p_atp_record.organization_id
                   --and    itm.sr_inventory_item_id = p_atp_record.inventory_item_id
                   and    itm.sr_inventory_item_id = nvl(p_atp_record.request_item_id,p_atp_record.inventory_item_id) --Bug-5160663
		   and    pl.plan_id = itm.plan_id
		   and    pl.sr_instance_id = itm.sr_instance_id;
Line: 10382

                       UPDATE msc_demands
                       SET  USING_REQUIREMENT_QUANTITY = 0
                       WHERE  demand_id = l_demand_id
                       AND    plan_id = p_plan_id
                       returning inventory_item_id into l_inventory_item_id;
Line: 10394

                           update msc_alloc_demands
                           set ALLOCATED_QUANTITY = 0
                           where parent_demand_id = l_demand_id
                           and   plan_id = p_plan_id;
Line: 10403

                              msc_sch_wb.atp_debug('ATP_Check: ' || 'in sumary mode, update msc-demands');
Line: 10422

                           update /*+ INDEX(msc_atp_summary_sd MSC_ATP_SUMMARY_SD_U1) */ msc_atp_summary_sd
                           set sd_qty = sd_qty + p_atp_record.quantity_ordered
                           where plan_id = p_plan_id
                           and  inventory_item_id = l_inventory_item_id
                           and  sr_instance_id = p_atp_record.instance_id
                           and  organization_id = p_atp_record.organization_id
                           and  sd_date = trunc(l_requested_ship_date);
Line: 10433

                          msc_sch_wb.atp_debug('ATP_Check: ' || 'demand updated for demand id = '|| l_demand_id);
Line: 10662

		      IF p_atp_record.insert_flag <> 0 THEN
		      	MSC_ATP_DB_UTILS.move_SD_temp_into_mrp_details(l_future_pegging_id,
					MSC_ATP_PVT.G_DEMAND_PEGGING_ID);
Line: 10813

                       update mrp_atp_details_temp
                       set error_code = MSC_ATP_PVT.OSS_ERROR_AT_THIS_LEVEL
                       where session_id = MSC_ATP_PVT.G_SESSION_ID
                       and   pegging_id = l_pegging_id
                       and   record_type = 3;
Line: 10831

               		   SELECT planning_make_buy_code INTO  l_make_buy_cd
               		   FROM MSC_SYSTEM_ITEMS I
               		   --bug3842035 Using member item id instead of family
               		   --WHERE  I.sr_inventory_item_id = p_atp_record.inventory_item_id and
               		   WHERE  I.sr_inventory_item_id = p_atp_record.request_item_id and
                      	   I.sr_instance_id = p_atp_record.instance_id and
                       	   I.organization_id = p_atp_record.organization_id and
                       	   I.plan_id = p_plan_id ;
Line: 11330

                          SELECT nvl(postprocessing_lead_time, 0)
                          INTO   l_atp_rec.delivery_lead_time
                          FROM   msc_system_items
                          WHERE  plan_id = p_plan_id
                          AND    organization_id = l_atp_rec.organization_id
                          AND    sr_instance_id = l_atp_rec.instance_id
                          AND    inventory_item_id = l_inv_item_id; -- 1665483
Line: 11357

			     SELECT trunc(cutoff_date),
                                    DECODE(plan_type, 4, 1,
                                        DECODE(daily_material_constraints, 1, NVL(enforce_pur_lt_constraints, 2),
                                            DECODE(daily_resource_constraints, 1, NVL(enforce_pur_lt_constraints, 2),
                                                DECODE(weekly_material_constraints, 1, NVL(enforce_pur_lt_constraints, 2),
                                                    DECODE(weekly_resource_constraints, 1, NVL(enforce_pur_lt_constraints, 2),
                                                        DECODE(period_material_constraints, 1, NVL(enforce_pur_lt_constraints, 2),
                                                            DECODE(period_resource_constraints, 1, NVL(enforce_pur_lt_constraints, 2), 1)
                                                              )
                                                          )
                                                      )
                                                  )
                                              )
                                          ),
                                    sr_instance_id,
                                    trunc(plan_start_date),
                                    organization_id
                             INTO   MSC_ATP_PVT.G_PLAN_INFO_REC.plan_cutoff_date,
                                    MSC_ATP_PVT.G_PLAN_INFO_REC.enforce_pur_lead_time,
                                    MSC_ATP_PVT.G_PLAN_INFO_REC.sr_instance_id,
                                    MSC_ATP_PVT.G_PLAN_INFO_REC.plan_start_date,
                                    MSC_ATP_PVT.G_PLAN_INFO_REC.organization_id
                             FROM   msc_plans
                             WHERE  plan_id = p_plan_id;
Line: 11859

                            SELECT max(trunc(NVL(to_date,G_PLAN_INFO_REC.plan_cutoff_date)))  --4055719
                            INTO   l_atp_rec.last_cap_date
                            FROM   msc_supplier_capacities s
                            WHERE  s.inventory_item_id = NVL(C_ITEM_INFO_REC.base_item_id,
                                                         C_ITEM_INFO_REC.dest_inv_item_id)
                            AND    s.sr_instance_id = l_sources.instance_id(j)
                            AND    s.plan_id = p_plan_id
                            AND    s.organization_id = p_atp_record.organization_id
                            AND    s.supplier_id = l_sources.supplier_id(j)
                            AND    NVL(s.supplier_site_id, -1) = NVL(l_sources.supplier_site_id(j), -1);
Line: 11947

                                select   nvl(processing_lead_time, l_process_lt), supplier_lead_time_date
                                into     l_process_lt, g_sup_cap_cum_date
                                from     msc_item_suppliers
                                where    plan_id = p_plan_id
                                and      sr_instance_id =  p_atp_record.instance_id
                                and      organization_id = p_atp_record.organization_id
                                 --bug 3373598: Use model's inv id for config item.
                                -- base_item_id will be populated only for ATO items
                                and      inventory_item_id = NVL(C_ITEM_INFO_REC.base_item_id, l_inv_item_id)
                                and      supplier_id =  l_sources.Supplier_Id(j)
                                and      supplier_site_id = l_sources.Supplier_site_Id(j);
Line: 12493

                        l_atp_rec.insert_flag := p_atp_record.insert_flag;
Line: 13330

					--update mrp_atp_details_temp set required_date =
					update mrp_atp_details_temp set actual_supply_demand_date =
						TRUNC(p_atp_record.ship_date) + MSC_ATP_PVT.G_END_OF_DAY
					 where session_id = MSC_ATP_PVT.G_SESSION_ID
					   and pegging_id = l_parent_pegging_id
					   and record_type = 3;
Line: 13338

						msc_sch_wb.atp_debug('ATO update details_temp date single lev: ' || p_atp_record.ship_date);
Line: 13343

                                MSC_ATP_DB_UTILS.Update_Planned_Order(l_pegging_id,
                                                 p_plan_id,
                                                 p_atp_record.ship_date,
                                                 0,
                                                 l_atp_rec.supplier_id,
                                                 l_atp_rec.supplier_site_id,
                                                 null,
                                                 null,  -- Bug 3241766
                                                 null,  -- Bug 3241766
                                                 null,  -- Bug 3241766
                                                 C_ITEM_INFO_REC.dest_inv_item_id,   -- Bug 3293163
                                                 PF_ITEM_INFO_REC.dest_inv_item_id); -- Bug 3293163
Line: 13376

					--update mrp_atp_details_temp set required_date =
					update mrp_atp_details_temp set actual_supply_demand_date =
						TRUNC(l_ship_date) + MSC_ATP_PVT.G_END_OF_DAY
					where session_id = MSC_ATP_PVT.G_SESSION_ID
					   and pegging_id = l_parent_pegging_id
					   and record_type = 3;
Line: 13384

						msc_sch_wb.atp_debug('ATO update details_temp date go down: ' || l_ship_date);
Line: 13408

                                   MSC_ATP_DB_UTILS.Update_Planned_Order(l_future_pegging_id,
                                                 p_plan_id,
                                                 p_atp_record.ship_date,
                                                 0,
                                                 l_atp_rec.supplier_id,
                                                 l_atp_rec.supplier_site_id,
                                                 null,
                                                 null,  -- Bug 3241766
                                                 null,  -- Bug 3241766
                                                 null,  -- Bug 3241766
                                                 C_ITEM_INFO_REC.dest_inv_item_id,   -- Bug 3293163
                                                 PF_ITEM_INFO_REC.dest_inv_item_id); -- Bug 3293163
Line: 13465

                                MSC_ATP_DB_UTILS.Update_Planned_Order(l_pegging_id,
                                            p_plan_id,
                                            --bug 2798667: The ATO components are sourced on l_ship_date
                                            --p_atp_record.ship_date,
                                            l_ship_date,
                                            -- dsting 2754446
--                                            least(l_atp_rec.available_quantity, l_atp_rec.quantity_ordered),
                                            least(l_prim_uom_avail_qty, l_PO_qty),
                                            l_atp_rec.supplier_id,
                                            l_atp_rec.supplier_site_id,
                                            l_new_dock_date,    -- Bug 3241766
                                            l_new_ship_date,    -- Bug 3241766
                                            l_sugg_start_date,  -- Bug 3241766
                                            l_order_date,       -- Bug 3241766
                                            C_ITEM_INFO_REC.dest_inv_item_id,   -- Bug 3293163
                                            PF_ITEM_INFO_REC.dest_inv_item_id,  -- Bug 3293163
                                            MSC_ATP_PVT.UNDO, -- dsting 2754446
                                            l_conversion_rate -- dsting 2754446
                                );  -- dock date
Line: 13516

				l_update_PO_mode := MSC_ATP_PVT.INVALID;
Line: 13518

				l_update_PO_mode := MSC_ATP_PVT.UNDO;
Line: 13521

			        msc_sch_wb.atp_debug('ATP_Check: ' || 'set l_update_PO_mode ' || l_update_PO_mode);
Line: 13529

			     -- then we update the planned order. If l_update_PO_mode is INVALID
			     -- then we remove the subtree. Otherwise, diagnostic atp is on and
			     -- this is the last source, so we leave the planned order as is to
			     -- balance the parent demand and only update the pegging
                             -- dsting 2819716. we always add planned orders now
                             -- so we should always update them too.
--			     IF l_constraint_flag <> 1 THEN
			        IF l_update_PO_mode = MSC_ATP_PVT.INVALID OR
				   l_sources.source_type.next(j) is not NULL OR
				   MSC_ATP_PVT.G_DIAGNOSTIC_ATP <> 1
			        THEN

                                   IF PG_DEBUG in ('Y', 'C') THEN
                                      msc_sch_wb.atp_debug('l_PO_qty: ' || l_PO_qty);
Line: 13546

                                   MSC_ATP_DB_UTILS.Update_Planned_Order(l_pegging_id,
	                             p_plan_id,
	                             null,
                                     -- dsting 2754446
--	                             least(greatest(l_atp_rec.requested_date_quantity, 0),
--	                             l_atp_rec.quantity_ordered),
                                     least(greatest(l_prim_uom_req_date_qty, 0),
                                           l_PO_qty),
	                             l_atp_rec.supplier_id,
	                             l_atp_rec.supplier_site_id,
	                             null, -- l_atp_rec.requested_ship_date, no need to update -- Bug 3241766
	                             null, -- Bug 3241766
	                             null, -- Bug 3241766
	                             null, -- Bug 3241766
                                     C_ITEM_INFO_REC.dest_inv_item_id,   -- Bug 3293163
                                     PF_ITEM_INFO_REC.dest_inv_item_id,  -- Bug 3293163
				     l_update_PO_mode,
                                     l_conversion_rate
                                  );  -- dock date
Line: 13566

				IF l_update_PO_mode = MSC_ATP_PVT.UNDO THEN
				     l_last_good_pegging_id := l_pegging_id;
Line: 13578

				MSC_ATP_DB_UTILS.Update_Pegging(l_pegging_id, null,
					least(greatest(l_atp_rec.requested_date_quantity, 0)));
Line: 13589

                                   MSC_ATP_DB_UTILS.Update_Planned_Order(l_pegging_id,
	                             p_plan_id,
	                             null,
                                     -- dsting 2754446
--	                             least(greatest(l_atp_rec.requested_date_quantity, 0),
--	                             l_atp_rec.quantity_ordered),
                                     --least(greatest(l_prim_uom_req_date_qty, 0),
                                     --     l_PO_qty),
                                     --NVL(l_PO_qty,0),
                                     NULL,
	                             l_atp_rec.supplier_id,
	                             l_atp_rec.supplier_site_id,
	                             null, -- l_atp_rec.requested_ship_date, no need to update -- Bug 3241766
	                             null, -- Bug 3241766
	                             null, -- Bug 3241766
	                             null, -- Bug 3241766
                                     C_ITEM_INFO_REC.dest_inv_item_id,   -- Bug 3293163
                                     PF_ITEM_INFO_REC.dest_inv_item_id,  -- Bug 3293163
				     l_update_PO_mode,
                                     l_conversion_rate
                                  );  -- dock date
Line: 13615

                             update msc_demands
                             set    USING_REQUIREMENT_QUANTITY =
                                   (USING_REQUIREMENT_QUANTITY -
                                   LEAST(l_net_demand, 0))
                             where  demand_id = l_demand_id
                             and    plan_id = p_plan_id;
Line: 14350

                               	                        -- inserted in assembly_item_id column in msc_resource_requirements
                               	     p_atp_record.organization_id,
                              	     l_pegging_id,
                                     l_PO_qty, -- 2754446
                               	     --l_net_demand,
                               	     l_requested_ship_date,
                               	     p_refresh_number,
			       	     p_atp_record.insert_flag,
                               	     p_search,
                               	     p_atp_record.demand_class,
                                     --(ssurendr) Bug 2865389 Added Routing Sequence id
                                     --and Bill sequence id for OPM fix.
                                     l_routing_seq_id,
                                     l_bill_seq_id,
                                     p_atp_record.ship_date, -- Bug 2814872
                                     p_atp_record.demand_source_line,   -- CTO ODR
                               	     l_avail_assembly_qty,
                               	     l_res_atp_date,
                               	     l_res_atp_period,
                               	     l_res_atp_supply_demand,
	                             l_return_status );
Line: 14448

                                    	     p_atp_record.insert_flag,
                                    	     p_search,
				    	     p_assign_set_id,
                                             -- (ssurendr) Bug 2865389 Added Routing Sequence id
                                             --and Bill sequence id for OPM fix.
                                             l_routing_seq_id,
                                             l_bill_seq_id,
                                             p_atp_record.inventory_item_id,      -- For time_phased_atp
                                             p_atp_record.atf_date,               -- For time_phased_atp
                                             p_atp_record.manufacturing_cal_code, -- For ship_rec_cal
                                    	     l_avail_assembly_qty,
                                    	     l_comp_atp_date,
                                    	     l_comp_atp_period,
                                    	     l_comp_atp_supply_demand,
	                                     l_return_status,
                                             --s_cto_rearch
                                             l_get_comp_info_rec,
                                             -- CTO Phase 1 #16, #17
                                             p_atp_record.order_number,
                                             l_op_seq_id --4570421
                                             );
Line: 14572

				-- If this is the last source we should only update the pegging and not
				-- the actual PO in case of diagnostic atp
                               IF l_avail_PO_qty < l_net_demand THEN -- 2754446
                               --IF l_avail_assembly_qty < l_net_demand THEN
				  l_last_good_pegging_id := l_pegging_id;
Line: 14580

					MSC_ATP_DB_UTILS.Update_Pegging(l_pegging_id, null, l_avail_PO_qty); -- 2869830
Line: 14581

					-- MSC_ATP_DB_UTILS.Update_Pegging(l_pegging_id, null, l_avail_assembly_qty);
Line: 14583

                                        MSC_ATP_DB_UTILS.Update_Planned_Order(l_pegging_id,
                                                   p_plan_id,
                                                   null,
                                                   l_avail_PO_qty, -- 2869830
                                                   --l_avail_assembly_qty,
                                                   null,
                                                   null,
                                                   null,
                                                   null,  -- Bug 3241766
                                                   --bug 3755704: Pass start date and order date
                                                   l_start_date,
                                                   l_order_date,
                                                   --null,  -- Bug 3241766
                                                   --null,  -- Bug 3241766
                                                   C_ITEM_INFO_REC.dest_inv_item_id,   -- Bug 3293163
                                                   PF_ITEM_INFO_REC.dest_inv_item_id,  -- Bug 3293163
						   MSC_ATP_PVT.UNDO);
Line: 14646

                                MSC_ATP_DB_UTILS.Update_Planned_Order(l_pegging_id,
                                                   p_plan_id,
                                                   null,
                                                   l_avail_PO_qty,
                                                   --l_avail_assembly_qty,
                                                   null,
                                                   null,
                                                   null,
                                                   null,  -- Bug 3241766
                                                   --bug 3755704: pass start date and order date
                                                   l_start_date,
                                                   l_order_date,
                                                   --null,  -- Bug 3241766
                                                   --null,  -- Bug 3241766
                                                   C_ITEM_INFO_REC.dest_inv_item_id,   -- Bug 3293163
                                                   PF_ITEM_INFO_REC.dest_inv_item_id); -- Bug 3293163
Line: 14732

                               	                       -- inserted in assembly_item_id column in msc_resource_requirements
                                    p_atp_record.organization_id,
                                    l_pegging_id,
                                    l_res_demand,
                                    l_requested_ship_date,
                                    p_refresh_number,
                                    p_atp_record.insert_flag,
                                    p_search,
                                    p_atp_record.demand_class,
                                     --(ssurendr) Bug 2865389 Added Routing Sequence id
                                     --and Bill sequence id for OPM fix.
                                    l_routing_seq_id,
                                    l_bill_seq_id,
                                    p_atp_record.ship_date, -- Bug 2814872
                                    p_atp_record.demand_source_line,   -- CTO ODR
                                    l_avail_assembly_qty,
			            l_res_atp_date,
                                    l_res_atp_period,
                                    l_res_atp_supply_demand,
                                    l_return_status );
Line: 14779

                                                p_atp_record.insert_flag,
                                                p_search,
                                                p_assign_set_id,
                                                --(ssurendr) Bug 2865389 Added Routing Sequence id
                                                --and Bill sequence id for OPM fix.
                                                l_routing_seq_id,
                                                l_bill_seq_id,
                                                p_atp_record.inventory_item_id,      -- For time_phased_atp
                                                p_atp_record.atf_date,               -- For time_phased_atp
                                                p_atp_record.manufacturing_cal_code, -- For ship_rec_cal
                                                l_avail_assembly_qty,
                                                l_comp_atp_date,
                                                l_comp_atp_period,
                                                l_comp_atp_supply_demand,
                                                l_return_status,
                                                --s_cto_rearch
                                                l_get_comp_info_rec,
                                                -- CTO Phase 1 #16, #17
                                                p_atp_record.order_number,
                                                l_op_seq_id --4570421
                                                );
Line: 14875

                                  MSC_ATP_DB_UTILS.Update_Planned_Order(l_pegging_id,
                                                   p_plan_id,
                                                   null,
                                                   0,
                                                   null,
                                                   null,
                                                   null,
                                                   null,  -- Bug 3241766
                                                   --3755704: Pass start date and order date
                                                   l_start_date,
                                                   l_order_date,
                                                   --null,  -- Bug 3241766
                                                   --null,  -- Bug 3241766
                                                   C_ITEM_INFO_REC.dest_inv_item_id,   -- Bug 3293163
                                                   PF_ITEM_INFO_REC.dest_inv_item_id); -- Bug 3293163
Line: 14894

                                MSC_ATP_DB_UTILS.Update_Planned_Order(l_pegging_id,
                                                   p_plan_id,
                                                   null,
                                                   0,
                                                   null,
                                                   null,
                                                   null,
                                                   null,  -- Bug 3241766
                                                   --bug 3755704: Pass start date and order date
                                                   l_start_date,
                                                   l_order_date,
                                                   --null,  -- Bug 3241766
                                                   --null,  -- Bug 3241766
                                                   C_ITEM_INFO_REC.dest_inv_item_id,   -- Bug 3293163
                                                   PF_ITEM_INFO_REC.dest_inv_item_id); -- Bug 3293163
Line: 14932

			    --- OSFM Changes: update coproduct supply
			    l_coproducts_flag := FND_Profile.value('MSC_PLAN_COPRODUCTS');
Line: 15085

                               	                       -- inserted in assembly_item_id column in msc_resource_requirements
                                    p_atp_record.organization_id,
                                    l_pegging_id,
                                    l_PO_qty, -- 2754446
                                    --l_net_demand,
                                    l_requested_ship_date,
                                    p_refresh_number,
                                    p_atp_record.insert_flag,
                                    p_search,
                                    p_atp_record.demand_class,
                                    --(ssurendr) Bug 2865389 Added Routing Sequence id
                                    --and Bill sequence id for OPM fix.
                                    l_routing_seq_id,
                                    l_bill_seq_id,
                                    p_atp_record.ship_date, -- Bug 2814872
                                    p_atp_record.demand_source_line,   -- CTO ODR
                                    l_avail_assembly_qty,
                                    l_res_atp_date,
                                    l_res_atp_period,
                                    l_res_atp_supply_demand,
                                    l_return_status );
Line: 15157

                                        p_atp_record.insert_flag,
                                        p_search,
                                        p_assign_set_id,
                                        --(ssurendr) Bug 2865389 Added Routing Sequence id
                                        --and Bill sequence id for OPM fix.
                                        l_routing_seq_id,
                                        l_bill_seq_id,
                                        p_atp_record.inventory_item_id,      -- For time_phased_atp
                                        p_atp_record.atf_date,               -- For time_phased_atp
                                        p_atp_record.manufacturing_cal_code, -- For ship_rec_cal
                                        l_avail_assembly_qty,
                                        l_comp_atp_date,
                                        l_comp_atp_period,
                                        l_comp_atp_supply_demand,
                                        l_return_status,
                                        --s_cto_rearch
                                        l_get_comp_info_rec,
                                        -- CTO Phase 1 #16, #17
                                        p_atp_record.order_number,
                                        l_op_seq_id --4570421
                                        );
Line: 15313

                                MSC_ATP_DB_UTILS.Update_Planned_Order(l_pegging_id,
                                                 p_plan_id,
                                                 p_atp_record.ship_date,
                                                 0,
                                                 null,
                                                 null,
                                                 null,
                                                 null,  -- Bug 3241766
                                                 --bug 3755704: Pass start date and order date
                                                 l_start_date,
                                                 l_order_date,
                                                 --null,  -- Bug 3241766
                                                 --null,  -- Bug 3241766
                                                 C_ITEM_INFO_REC.dest_inv_item_id,   -- Bug 3293163
                                                 PF_ITEM_INFO_REC.dest_inv_item_id); -- Bug 3293163
Line: 15356

                                   MSC_ATP_DB_UTILS.Update_Planned_Order(l_future_pegging_id,
                                                 p_plan_id,
                                                 p_atp_record.ship_date,
                                                 0,
                                                 null,
                                                 null,
                                                 null,
                                                 null,  -- Bug 3241766
                                                 --bug 3755704: Pass start date and order date
                                                 l_start_date,
                                                 l_order_date,
                                                 --null,  -- Bug 3241766
                                                 --null,  -- Bug 3241766
                                                 C_ITEM_INFO_REC.dest_inv_item_id,   -- Bug 3293163
                                                 PF_ITEM_INFO_REC.dest_inv_item_id); -- Bug 3293163
Line: 15455

                                MSC_ATP_DB_UTILS.Update_Planned_Order(l_pegging_id,
                                                 p_plan_id,
                                                 --bug 2798667: this should be l_temp_date
                                                 --p_atp_record.ship_date,
                                                 l_temp_date,
                                                 null,
                                                 null,
                                                 null,
                                                 null,
                                                 null,  -- Bug 3241766
                                                 --bug 3755704: populate start date and order date
                                                 l_start_date,
                                                 l_order_date,
                                                 --null,  -- Bug 3241766
                                                 --null,  -- Bug 3241766
                                                 C_ITEM_INFO_REC.dest_inv_item_id,   -- Bug 3293163
                                                 PF_ITEM_INFO_REC.dest_inv_item_id); -- Bug 3293163
Line: 15489

                            	  --- OSFM Changes: update coproduct supply
                                l_coproducts_flag := FND_Profile.value('MSC_PLAN_COPRODUCTS');
Line: 15530

                 Update the pegging with the ATP+CTP Quantity of the pegging.
                 l_temp_net_demand -  l_net_demand; gives us the CTP quantity
Line: 15549

                      MSC_ATP_DB_UTILS.Update_Pegging( l_substitutes_rec.pegging_id(l_index),
                                                       null,
                                                       l_atp_ctp_qty );
Line: 15554

                   l_atp_insert_rec.instance_id := p_atp_record.instance_id;
Line: 15555

                   l_atp_insert_rec.inventory_item_id := l_substitutes_rec.pf_item_id(l_index);
Line: 15556

                   l_atp_insert_rec.request_item_id := l_substitutes_rec.inventory_item_id(l_index);
Line: 15557

                   l_atp_insert_rec.atf_date_quantity := l_substitutes_rec.atf_date_quantity(l_index);
Line: 15558

                   l_atp_insert_rec.organization_id := p_atp_record.organization_id;
Line: 15559

                   l_atp_insert_rec.identifier := p_atp_record.identifier;
Line: 15560

                   l_atp_insert_rec.demand_source_type:=
                          nvl(p_atp_record.demand_source_type, 2);
Line: 15562

                   l_atp_insert_rec.demand_source_header_id :=
                            nvl(p_atp_record.demand_source_header_id, -1);
Line: 15564

                   l_atp_insert_rec.demand_source_delivery :=
                            p_atp_record.demand_source_delivery;
Line: 15566

                   l_atp_insert_rec.quantity_ordered:= LEAST(
                                                            l_atp_ctp_qty,
                                                            l_substitutes_rec.quantity_ordered(l_index));
Line: 15569

                   l_atp_insert_rec.requested_ship_date := p_atp_record.requested_ship_date;
Line: 15570

                   l_atp_insert_rec.demand_class := p_atp_record.demand_class;
Line: 15571

                   l_atp_insert_rec.refresh_number := p_refresh_number;
Line: 15572

                   l_atp_insert_rec.order_number := p_atp_record.order_number;
Line: 15573

                   l_atp_insert_rec.origination_type := 1;
Line: 15575

                   MSC_ATP_DB_UTILS.Add_Mat_Demand(l_atp_insert_rec,
                              -- l_plan_id, use p_plan_id in case of Make CTP.
                              nvl(l_plan_id,p_plan_id),    -- bug#10428207
                              0,
                              l_demand_id);
Line: 15586

                   UPDATE mrp_atp_details_temp
                   SET   identifier3 = l_demand_id
                   WHERE pegging_id = l_substitutes_rec.pegging_id(l_index)
                   AND   session_id = MSC_ATP_PVT.G_SESSION_ID
                   AND   record_type = 3;
Line: 15594

                   	  MSC_ATP_DB_UTILS.Update_Pegging( l_substitutes_rec.pegging_id(l_index),
                                  null,
                                  l_atp_ctp_qty );
Line: 15598

                     update msc_demands
                        set    USING_REQUIREMENT_QUANTITY = MSC_ATP_UTILS.Truncate_Demand(l_atp_ctp_qty)  -- 5598066
                      where  demand_id = l_substitutes_rec.demand_id(l_index)
                        and    plan_id = p_plan_id
                               returning inventory_item_id
                       into l_inventory_item_id;
Line: 15615

                        update msc_alloc_demands
                           set allocated_quantity = l_atp_ctp_qty
                         where parent_demand_id = l_substitutes_rec.demand_id(l_index) --l_demand_id
                               --where parent_demand_id = l_demand_id
                           and plan_id = p_plan_id;
Line: 15639

                        update /*+ INDEX(msc_atp_summary_sd MSC_ATP_SUMMARY_SD_U1) */ msc_atp_summary_sd
                           set sd_qty = sd_qty + l_atp_ctp_qty
                         where plan_id = p_plan_id
                           and sr_instance_id  = p_atp_record.instance_id
                           and inventory_item_id = l_inventory_item_id
                           and organization_id = p_atp_record.organization_id
                           and sd_date = trunc(l_requested_ship_date);
Line: 15671

		-- dsting diag_atp update the last good pegging record to make supply/demand match
		IF PG_DEBUG in ('Y', 'C') THEN
			msc_sch_wb.atp_debug('diag_atp l_pegging_id ' || l_pegging_id);
Line: 15713

			MSC_ATP_DB_UTILS.Update_Planned_Order(l_last_good_pegging_id,
					p_plan_id,
					null,
					l_net_demand + l_subst_existing_PO_qty,
					null,
					null,
					null,
                                        null,  -- Bug 3241766
                                        null,  -- Bug 3241766
                                        null,  -- Bug 3241766
                                        C_ITEM_INFO_REC.dest_inv_item_id,   -- Bug 3293163
                                        PF_ITEM_INFO_REC.dest_inv_item_id,  -- Bug 3293163
					3);
Line: 15740

                    update msc_demands
                    set    USING_REQUIREMENT_QUANTITY =
                           MSC_ATP_UTILS.Truncate_Demand((USING_REQUIREMENT_QUANTITY-l_net_demand))  -- 5598066
                    where demand_id = l_demand_id
                    and plan_id = p_plan_id
                    returning  inventory_item_id into l_inventory_item_id;
Line: 15751

                         l_atp_insert_rec.quantity_ordered :=  p_atp_record.quantity_ordered - l_net_demand;
Line: 15752

                         l_atp_insert_rec.requested_date_quantity := l_atp_insert_rec.quantity_ordered;
Line: 15753

                         l_atp_insert_rec.atf_date_quantity := GREATEST(NVL(p_atp_record.atf_date_quantity,
                                                                                0), 0); --7185041
Line: 15756

                                l_atp_insert_rec,
                                p_plan_id,
                                l_demand_id,
                                l_return_status
                         );
Line: 15770

                         update msc_alloc_demands
                         set allocated_quantity  = allocated_quantity -l_net_demand
                         where parent_demand_id = l_demand_id
                         and   plan_id = p_plan_id;
Line: 15784

                           msc_sch_wb.atp_debug('ATP_Check: ' || 'in sumary mode, update msc-demands');
Line: 15802

                        update /*+ INDEX(msc_atp_summary_sd MSC_ATP_SUMMARY_SD_U1) */ msc_atp_summary_sd
                        set sd_qty = sd_qty + l_net_demand
                        where plan_id = p_plan_id
                        and  inventory_item_id = l_inventory_item_id
                        and  sr_instance_id = p_atp_record.instance_id
                        and  organization_id = p_atp_record.organization_id
                        and  sd_date = trunc(l_requested_ship_date);
Line: 15878

                            l_atp_insert_rec.quantity_ordered :=  p_atp_record.quantity_ordered;
Line: 15879

                            l_atp_insert_rec.requested_date_quantity := p_atp_record.combined_requested_date_qty;
Line: 15880

                            l_atp_insert_rec.atf_date_quantity := GREATEST(NVL(p_atp_record.atf_date_quantity,
                                                                                   0), 0); --7185041
Line: 15883

                                   l_atp_insert_rec,
                                   p_plan_id,
                                   l_demand_id,
                                   l_return_status
                            );
Line: 15910

                      /*update msc_demands
                      set    USING_REQUIREMENT_QUANTITY =
                             (USING_REQUIREMENT_QUANTITY-l_net_demand)
                      where demand_id = l_demand_id
                      and plan_id = p_plan_id;*/
Line: 15933

                         update mrp_atp_details_temp
                         set    supply_demand_quantity =
                                (supply_demand_quantity - l_net_demand)
                         where  session_id = MSC_ATP_PVT.G_SESSION_ID
                         and    pegging_id = l_parent_pegging_id
                         and    record_type = 3;
Line: 15941

                         SELECT supply_demand_quantity
                         INTO   l_peg_qty
                         FROM   mrp_atp_details_temp
                         WHERE  session_id = MSC_ATP_PVT.G_SESSION_ID
                         AND    pegging_id = l_parent_pegging_id
                         AND    record_type = 3;
Line: 15948

                         MSC_ATP_DB_UTILS.Update_Pegging(l_parent_pegging_id,
                                        null,
                                        (l_peg_qty - l_net_demand));
Line: 15959

                         update msc_demands
                         set    USING_REQUIREMENT_QUANTITY =
                                MSC_ATP_UTILS.Truncate_Demand((USING_REQUIREMENT_QUANTITY-l_net_demand)) -- 5598066
                         where demand_id = l_demand_id
                         and plan_id = p_plan_id
                         returning inventory_item_id into l_inventory_item_id;
Line: 15967

                           Update PF Bucketed Demands to qty we could find in backward case*/
                        --5211558 we want to update the demands only in first pass and not in further passes
                        IF l_time_phased_atp = 'Y' and MSC_ATP_PVT.G_OPTIONAL_FW is null THEN
                                MSC_ATP_PF.Update_PF_Bucketed_Demands(
                                        p_plan_id,
                                        l_demand_id,
                                        l_requested_ship_date,
                                        p_atp_record.atf_date,
                                        p_atp_record.quantity_ordered,
                                        p_atp_record.combined_requested_date_qty,
                                        l_return_status
                                );
Line: 15981

                                        msc_sch_wb.atp_debug('ATP_Check: ' || 'Error occured in procedure Update_PF_Bucketed_Demands');
Line: 15989

                              update msc_alloc_demands
                              set allocated_quantity = allocated_quantity - l_net_demand
                              where parent_demand_id = l_demand_id
                              and   plan_id = p_plan_id;
Line: 16002

                                 msc_sch_wb.atp_debug('ATP_Check: ' || 'update sd table for component');
Line: 16003

                                 msc_sch_wb.atp_debug('ATP_Check: ' || 'in sumary mode, update msc-demands');
Line: 16021

                              update /*+ INDEX(msc_atp_summary_sd MSC_ATP_SUMMARY_SD_U1) */ msc_atp_summary_sd
                              set sd_qty = sd_qty + l_net_demand
                              where plan_id = p_plan_id
                              and  inventory_item_id = l_inventory_item_id
                              and  sr_instance_id = p_atp_record.instance_id
                              and  organization_id = p_atp_record.organization_id
                              and  sd_date = trunc(l_requested_ship_date);
Line: 16067

				--update mrp_atp_details_temp set required_date =
				update mrp_atp_details_temp set actual_supply_demand_date =
					TRUNC(p_atp_record.ship_date) + MSC_ATP_PVT.G_END_OF_DAY
				where session_id = MSC_ATP_PVT.G_SESSION_ID
				and pegging_id = l_parent_pegging_id
				and record_type = 3;
Line: 16075

					msc_sch_wb.atp_debug('ATO update details_temp 12: ' || l_parent_pegging_id || ' date: ' || p_atp_record.ship_date);
Line: 16078

                	        UPDATE msc_demands
        	                --SET  USING_ASSEMBLY_DEMAND_DATE = NVL(p_atp_record.ship_date,
			        --					USING_ASSEMBLY_DEMAND_DATE)
                        	-- For bug 2259824, move the demand to the end of day
                        	----start changes for plan by request date
                        	SET    USING_ASSEMBLY_DEMAND_DATE =
                        	           DECODE(ORIGINATION_TYPE,
                        	                  6,  decode(MSC_ATP_PVT.G_PLAN_INFO_REC.schedule_by_date_type,
                        	                             MSC_ATP_PVT.G_SCHEDULE_SHIP_DATE_LEGEND,
                        	                                 TRUNC(p_atp_record.ship_date) + MSC_ATP_PVT.G_END_OF_DAY,
                        	                             MSC_ATP_PVT.G_SCHEDULE_ARRIVAL_DATE_LEGEND,
                        	                                 TRUNC(p_atp_record.ship_date) + MSC_ATP_PVT.G_END_OF_DAY,
                        	                             MSC_ATP_PVT.G_PROMISE_SHIP_DATE_LEGEND,
                        	                                 TRUNC(p_atp_record.ship_date) + MSC_ATP_PVT.G_END_OF_DAY,
                        	                             MSC_ATP_PVT.G_PROMISE_ARRIVAL_DATE_LEGEND,
                        	                                 TRUNC(p_atp_record.ship_date) + MSC_ATP_PVT.G_END_OF_DAY,
                        	                             MSC_ATP_PVT.G_REQUEST_SHIP_DATE_LEGEND,
                        	                                 l_original_req_ship_date,
                        	                             MSC_ATP_PVT.G_REQUEST_ARRIVAL_DATE_LEGEND,
                        	                                 l_original_req_ship_date,
                        	                                 TRUNC(p_atp_record.ship_date) + MSC_ATP_PVT.G_END_OF_DAY),
                        	                  30, decode(MSC_ATP_PVT.G_PLAN_INFO_REC.schedule_by_date_type,
                        	                             MSC_ATP_PVT.G_SCHEDULE_SHIP_DATE_LEGEND,
                        	                                 TRUNC(p_atp_record.ship_date) + MSC_ATP_PVT.G_END_OF_DAY,
                        	                             MSC_ATP_PVT.G_SCHEDULE_ARRIVAL_DATE_LEGEND,
                        	                                 TRUNC(p_atp_record.ship_date) + MSC_ATP_PVT.G_END_OF_DAY,
                        	                             MSC_ATP_PVT.G_PROMISE_SHIP_DATE_LEGEND,
                        	                                 TRUNC(p_atp_record.ship_date) + MSC_ATP_PVT.G_END_OF_DAY,
                        	                             MSC_ATP_PVT.G_PROMISE_ARRIVAL_DATE_LEGEND,
                        	                                 TRUNC(p_atp_record.ship_date) + MSC_ATP_PVT.G_END_OF_DAY,
                        	                             MSC_ATP_PVT.G_REQUEST_SHIP_DATE_LEGEND,
                        	                                 l_original_req_ship_date,
                        	                             MSC_ATP_PVT.G_REQUEST_ARRIVAL_DATE_LEGEND,
                        	                                 l_original_req_ship_date,
                        	                                 TRUNC(p_atp_record.ship_date) + MSC_ATP_PVT.G_END_OF_DAY),
                        	                  TRUNC(p_atp_record.ship_date) + MSC_ATP_PVT.G_END_OF_DAY),
                        	       schedule_ship_date =
                        	           DECODE(ORIGINATION_TYPE,
                        	                  6,  TRUNC(p_atp_record.ship_date) + MSC_ATP_PVT.G_END_OF_DAY,
                        	                  30, TRUNC(p_atp_record.ship_date) + MSC_ATP_PVT.G_END_OF_DAY,
                        	                  NULL),
                        	       promise_ship_date =
                        	           DECODE(ORIGINATION_TYPE,
                        	                  6,  TRUNC(p_atp_record.ship_date) + MSC_ATP_PVT.G_END_OF_DAY,
                        	                  30, TRUNC(p_atp_record.ship_date) + MSC_ATP_PVT.G_END_OF_DAY,
                        	                  NULL)
                		--end changes for plan by request date
                		WHERE  demand_id = l_demand_id
	                        AND    plan_id = p_plan_id
                        	returning inventory_item_id into l_inventory_item_id;
Line: 16130

        	                   msc_sch_wb.atp_debug('ATP_Check: ' || 'number of rows updated := ' || SQL%ROWCOUNT);
Line: 16157

                                   update msc_alloc_demands
                                   set demand_date  = p_atp_record.ship_date
                                   where parent_demand_id = l_demand_id
                                   and   plan_id = p_plan_id;
Line: 16171

                                    msc_sch_wb.atp_debug('ATP_Check: ' || 'Update summary for old date');
Line: 16187

                                UPDATE /*+ INDEX(msc_atp_summary_sd MSC_ATP_SUMMARY_SD_U1) */ MSC_ATP_SUMMARY_SD
                                set sd_qty = (sd_qty + p_atp_record.quantity_ordered)
                                where sr_instance_id = p_atp_record.instance_id and
                                inventory_item_id = l_inventory_item_id and
                                organization_id = p_atp_record.organization_id and
                                sd_date = trunc(l_requested_ship_date) and
                                plan_id = p_plan_id;
Line: 16199

                                    msc_sch_wb.atp_debug('ATP_Check: ' || 'update the qty on new date ');
Line: 16214

                                update /*+ INDEX(msc_atp_summary_sd MSC_ATP_SUMMARY_SD_U1) */ msc_atp_summary_sd
                                set sd_qty = sd_qty - p_atp_record.quantity_ordered
                                where plan_id = p_plan_id and
                                sr_instance_id = p_atp_record.instance_id and
                                inventory_item_id = l_inventory_item_id and
                                organization_id = p_atp_record.organization_id and
                                sd_date = trunc(p_atp_record.ship_date);
Line: 16225

                                        msc_sch_wb.atp_debug('ATP_Check: ' || 'insert qty on new date');
Line: 16234

                                        MSC_ATP_DB_UTILS.INSERT_SUMMARY_SD_ROW(p_plan_id,
                                        p_atp_record.instance_id,
                                        p_atp_record.organization_id,
                                        l_inventory_item_id,
                                        p_atp_record.ship_date,
                                        -1 * p_atp_record.quantity_ordered,
                                        '@@@');
Line: 16443

           l_sup_atp_info_rec.insert_flag                       := p_atp_record.insert_flag;
Line: 16724

                    msc_sch_wb.atp_debug('ATP_Check: ' || 'Update summary table , backward case');
Line: 16729

                    msc_sch_wb.atp_debug('ATP_Check: ' || 'First try to update');
Line: 16744

                update /*+ INDEX(msc_atp_summary_sup MSC_ATP_SUMMARY_sup_U1) *//* msc_atp_summary_sup
                set sd_qty = sd_qty - least(l_requested_date_quantity, p_atp_record.quantity_ordered)
                where plan_id = p_plan_id
                and   sr_instance_id = p_atp_record.instance_id
                and   inventory_item_id = l_inv_item_id
                and   supplier_id = p_atp_record.supplier_id
                and   supplier_site_id = p_atp_record.supplier_site_id
                and   sd_date = trunc(l_requested_ship_date);
Line: 16753

                    msc_sch_wb.atp_debug('ATP_Check: ' || 'After update of msc_atp_summary_sup');
Line: 16754

                    msc_sch_wb.atp_debug('ATP_Check: ' || ' Number of rows updated := ' || SQL%ROWCOUNT);
Line: 16759

                        msc_sch_wb.atp_debug('ATP_Check: ' || 'update failed, insert a row');
Line: 16762

                    insert into /*+ INDEX(msc_atp_summary_sup MSC_ATP_SUMMARY_SUP_U1) *//* msc_atp_summary_sup
                         (plan_id,
                          inventory_item_id,
                          supplier_id,
                          supplier_site_id,
                          sr_instance_id,
                          sd_date,
                          sd_qty,
                          LAST_UPDATE_DATE,
                          LAST_UPDATED_BY,
                          CREATION_DATE,
                          CREATED_BY
                          )
                          VALUES
                          (p_plan_id,
                           l_inv_item_id,
                           p_atp_record.supplier_id,
                           p_atp_record.supplier_site_id,
                           p_atp_record.instance_id,
                           trunc(l_requested_ship_date),
                           -1 * least(l_requested_date_quantity, p_atp_record.quantity_ordered),
                           sysdate,
                           FND_GLOBAL.USER_ID,
                           sysdate,
                           FND_GLOBAL.USER_ID);
Line: 16802

                            update /*+ INDEX(msc_atp_summary_sup MSC_ATP_SUMMARY_SUP_U1) *//* msc_atp_summary_sup
                            set sd_qty = sd_qty - least(l_requested_date_quantity, p_atp_record.quantity_ordered)
                            where plan_id = p_plan_id
                            and   sr_instance_id = p_atp_record.instance_id
                            and   inventory_item_id = l_inv_item_id
                            and   supplier_id = p_atp_record.supplier_id
                            and   supplier_site_id = p_atp_record.supplier_site_id
                            and   sd_date = trunc(l_requested_ship_date);
Line: 16815

                    msc_sch_wb.atp_debug('ATP_Check: ' || 'Update summary table, forward case');
Line: 16816

                    msc_sch_wb.atp_debug('ATP_Check: ' || 'First try to update');
Line: 16821

                    msc_sch_wb.atp_debug('ATP_Check: ' || 'First try to update');
Line: 16836

                update /*+ INDEX(msc_atp_summary_sup MSC_ATP_SUMMARY_SUP_U1) *//* msc_atp_summary_sup
                set sd_qty = sd_qty -  p_atp_record.quantity_ordered
                where plan_id = p_plan_id
                and   sr_instance_id = p_atp_record.instance_id
                and   inventory_item_id = l_inv_item_id
                and   supplier_id = p_atp_record.supplier_id
                and   supplier_site_id = p_atp_record.supplier_site_id
                and   sd_date = trunc(l_atp_date_this_level);
Line: 16845

                    msc_sch_wb.atp_debug('ATP_Check: ' || 'After update of msc_atp_summary_sup');
Line: 16846

                    msc_sch_wb.atp_debug('ATP_Check: ' || ' Number of rows updated := ' || SQL%ROWCOUNT);
Line: 16851

                        msc_sch_wb.atp_debug('ATP_Check: ' || 'update failed, insert a row');
Line: 16854

                        insert /*+ INDEX(msc_atp_summary_sup MSC_ATP_SUMMARY_SUP_U1) *//* into msc_atp_summary_sup
                                (plan_id,
                                inventory_item_id,
                                supplier_id,
                                supplier_site_id,
                                sr_instance_id,
                                sd_date,
                                sd_qty,
                                LAST_UPDATE_DATE,
                                LAST_UPDATED_BY,
                                CREATION_DATE,
                                CREATED_BY
                                )
                        VALUES
                                (p_plan_id,
                                l_inv_item_id,
                                p_atp_record.supplier_id,
                                p_atp_record.supplier_site_id,
                                p_atp_record.instance_id,
                                trunc(l_atp_date_this_level),
                                -1 * p_atp_record.quantity_ordered,
                                sysdate,
                                FND_GLOBAL.USER_ID,
                                sysdate,
                                FND_GLOBAL.USER_ID);
Line: 16893

                            update /*+ INDEX(msc_atp_summary_sup MSC_ATP_SUMMARY_SUP_U1) *//* msc_atp_summary_sup
                            set sd_qty = sd_qty -  p_atp_record.quantity_ordered
                            where plan_id = p_plan_id
                            and   sr_instance_id = p_atp_record.instance_id
                            and   inventory_item_id = l_inv_item_id
                            and   supplier_id = p_atp_record.supplier_id
                            and   supplier_site_id = p_atp_record.supplier_site_id
                            and   sd_date = trunc(l_atp_date_this_level) ;
Line: 16920

	IF p_atp_record.insert_flag <> 0 THEN
	         MSC_ATP_DB_UTILS.move_SD_temp_into_mrp_details(l_pegging_id,
			MSC_ATP_PVT.G_DEMAND_PEGGING_ID);
Line: 17177

l_delete_atp_rec                              MSC_ATP_PVT.DELETE_ATP_REC ;--3720018
Line: 17234

    select 'x'
       into l_temp
       from mrp_atp_schedule_temp
       where session_id = p_session_id
       group by order_line_id
       having count(*) > 1;
Line: 17301

            MSC_ATP_DB_UTILS.call_delete_row (
                             p_instance_id,
                             p_atp_table,
                             p_refresh_number,
                             l_delete_atp_rec,
                             l_return_status);
Line: 17310

                 msc_sch_wb.atp_debug('Call_Schedule: l_delete_atp_rec.error_code(1): ' || l_delete_atp_rec.error_code(1));
Line: 17314

                           msc_sch_wb.atp_debug('Call_Schedule: ' || 'Error in Call_delete_row');
Line: 17319

            IF (l_delete_atp_rec.error_code(1) = MSC_ATP_PVT.TRY_ATP_LATER) OR
               (l_delete_atp_rec.error_code(1) = MSC_ATP_PVT.SUMM_CONC_PROG_RUNNING) THEN
                   x_atp_table := p_atp_table;
Line: 17323

                      x_atp_table.error_code(i) := l_delete_atp_rec.error_code(1);
Line: 17719

                select count(*)
                into l_same_org_count
                from msc_system_items i
                where i.plan_id = x_plan_info_rec.plan_id
                and i.organization_id = l_atp_input_table.internal_org_id(m)
                and i.sr_instance_id = p_instance_id
                and i.sr_inventory_item_id = l_atp_input_table.inventory_item_id(m);
Line: 17736

                   select count(*) into l_feeder_count
                   from msc_system_items
                   where plan_id  in ( select plans.plan_id input_plan_id
                                           from msc_plan_schedules sched,
                                           msc_designators md,
                                           msc_plans plans
                                           where sched.plan_id = x_plan_info_rec.plan_id
                                           and sched.input_type = 1
                                           and sched.designator_type in (2,3,4,5)
                                           and sched.input_schedule_id = md.designator_id
                                           -- we need not consider plans collected from source
                                           and md.collected_flag = 2
                                           and md.designator = plans.compile_designator
                                           and md.sr_instance_id = plans.sr_instance_id
                                           and md.organization_id = plans.organization_id
                                         )
                   and organization_id = l_atp_input_table.internal_org_id(m)
                   and sr_instance_id = p_instance_id
                   and sr_inventory_item_id =  l_atp_input_table.inventory_item_id(m);
Line: 18360

    	  SELECT ltrim(rtrim(M2A_DBLINK))
    	  INTO   l_dblink
    	  FROM   msc_apps_instances
    	  WHERE  instance_id = p_instance_id;
Line: 18499

            IF (l_delete_atp_rec.del_demand_ids IS NOT NULL AND l_delete_atp_rec.del_demand_ids.Count > 0) OR
               (l_delete_atp_rec.del_ods_demand_ids IS NOT NULL AND l_delete_atp_rec.del_ods_demand_ids.Count > 0)  THEN
 		    MSC_ATP_DB_UTILS.Undo_Delete_Row(
                    l_delete_atp_rec.del_identifiers,
                    l_delete_atp_rec.del_plan_ids,
                    p_instance_id,
                    l_delete_atp_rec.del_demand_ids,
                    l_delete_atp_rec.del_inv_item_ids,
                    l_delete_atp_rec.del_copy_demand_ids,
                    l_delete_atp_rec.del_copy_demand_plan_ids,
                    l_delete_atp_rec.time_phased_set,
                    l_delete_atp_rec.del_atp_peg_items,
                    l_delete_atp_rec.del_atp_peg_demands,
                    l_delete_atp_rec.del_atp_peg_supplies,
                    l_delete_atp_rec.del_atp_peg_res_reqs,
                    l_delete_atp_rec.del_demand_source_type,
                    l_delete_atp_rec.atp_peg_demands_plan_ids,
                    l_delete_atp_rec.atp_peg_supplies_plan_ids,
                    l_delete_atp_rec.atp_peg_res_reqs_plan_ids,
                    l_delete_atp_rec.del_ods_demand_ids,         --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_inv_item_ids,       --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_demand_src_type,    --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_cto_demand_ids,     --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_cto_inv_item_ids,   --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_cto_dem_src_type,   --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_atp_refresh_no,     --3720018, added for support of rescheduling in ODS
                    l_delete_atp_rec.del_ods_cto_atp_refresh_no  --3720018, added for support of rescheduling in ODS
                    );
Line: 18540

    DELETE msc_regions_temp
    WHERE session_id = p_session_id;
Line: 18544

       msc_sch_wb.atp_debug('Call_Schedule: ' || 'Rows deleted from msc_regions_temp : '||sql%rowcount);
Line: 18548

    DELETE msc_atp_src_profile_temp
    WHERE session_id = p_session_id;
Line: 18554

       msc_sch_wb.atp_debug('Call_Schedule: ' || 'Rows deleted from msc_atp_src_profile_temp : '||sql%rowcount);
Line: 18555

       msc_sch_wb.atp_debug('Call_Schedule: ' || 'Before calling MSC_ATP_PROC.Delete_Copy_Demand');
Line: 18559

    IF MSC_ATP_PVT.G_SUMMARY_FLAG = 'Y' THEN --bug4291375 Delete_Copy_Demand should be called when summary is ON.
       MSC_ATP_DB_UTILS.Delete_Copy_Demand(MSC_ATP_PVT.G_COPY_DEMAND_ID,
                                           MSC_ATP_PVT.G_COPY_DEMAND_PLAN_ID,
                                           G_TIME_PHASED_SET,
                                           l_return_status);
Line: 18580

    INSERT INTO MRP_ATP_DETAILS_TEMP(
                                     session_id,
                                     identifier1,
                                     identifier2,
                                     identifier3,
                                     record_type,
                                     scenario_id,
                                     summary_flag
                                     )
                               VALUES(
                                     p_session_id,
                                     G_OFF_INSTANCE_ID(i),
                                     G_OFF_PLAN_ID(i),
                                     G_OFF_DEM_TRANS_ID(i),
                                     3,
                                     1,
                                     'Y'
                                     );
Line: 18634

                           SELECT MAX(supply_demand_date)
                           INTO   l_avail_date
                           FROM   mrp_atp_details_temp
                           WHERE  session_id = p_session_id
                           AND    order_line_id =  x_atp_table.identifier(k)
                           AND    parent_pegging_id = end_pegging_id
                           AND    supply_demand_type = 2
                           AND    record_type = 3
                           AND    inventory_item_id = NVL(x_atp_table.match_item_id(k), x_atp_table.inventory_item_id(k));
Line: 18670

                           SELECT NVL(sum(NVL(allocated_quantity, 0)), 0)
                           INTO   l_stealing_qty
                           FROM   mrp_atp_details_temp
                           WHERE  session_id = p_session_id
                           AND    order_line_id =  x_atp_table.identifier(k)
                           AND    parent_pegging_id = end_pegging_id
                           AND    char1 IS NOT NULL
                           AND    record_type = 3
                           AND    inventory_item_id = NVL(x_atp_table.match_item_id(k), x_atp_table.inventory_item_id(k));
Line: 18701

                           SELECT p_session_id ||':'||mrp_atp_schedule_temp_s.nextval,
                                  DECODE(x_atp_table.Requested_Ship_Date(k),
                                             NULL, x_atp_table.Requested_Arrival_Date(k),
                                             x_atp_table.Requested_Ship_Date(k)),
                                  identifier3,
                                  identifier2
                           INTO   l_wf_item_key,
                                  l_req_ship_date,
                                  l_exception_rec.demand_id,
                                  l_plan_id
                           FROM   mrp_atp_details_temp
                           WHERE  session_id = p_session_id
                           AND    order_line_id =  x_atp_table.identifier(k)
                           AND    inventory_item_id = NVL(x_atp_table.match_item_id(k), x_atp_table.inventory_item_id(k))
                           AND    record_type = 3
                           AND    parent_pegging_id IS NULL;
Line: 18833

                          SELECT identifier3,
                                 identifier2
                          INTO   l_exception_rec.demand_id,
                                 l_plan_id
                          FROM   mrp_atp_details_temp
                          WHERE  session_id = p_session_id
                          AND    order_line_id =  x_atp_table.identifier(k)
                          AND    inventory_item_id = NVL(x_atp_table.match_item_id(k), x_atp_table.inventory_item_id(k))
                          AND    record_type = 3
                          AND    parent_pegging_id IS NULL;
Line: 18875

                       Selecting inventory_item_id from msc_system_items*/
                    BEGIN
					  -- Bug 3444096, use x_atp_table.match_item_id for match cases in CTO
                      Select inventory_item_id
                      into   l_inventory_item_id
                      from   msc_system_items
                      where  plan_id = l_plan_id
                      and    sr_instance_id = l_instance_id
                      and    organization_id = x_atp_table.source_organization_id(k)
                      and    sr_inventory_item_id =  NVL(x_atp_table.match_item_id(k), x_atp_table.inventory_item_id(k));
Line: 18888

                             msc_sch_wb.atp_debug('Call_Schedule: ' || 'Error occured while selecting inventory_item_id : ' || sqlerrm);
Line: 18987

	   select ltrim(rtrim(substr(value, instr(value,',',-1,1)+1)))
           into x_session_loc_des
           from v$parameter where name= 'utl_file_dir';
Line: 19005

         SELECT spid
         INTO   l_spid
         FROM   v$process
         WHERE  addr = (SELECT paddr FROM v$session
                        WHERE audsid=userenv('SESSIONID'));
Line: 19012

         SELECT value
         INTO x_trace_loc_des
         from v$parameter
         WHERE name = 'user_dump_dest'; --ATP Debug Workflow
Line: 19039

         SELECT ltrim(rtrim(M2A_DBLINK))
         INTO   l_dblink
         FROM   msc_apps_instance_nodes
         WHERE  instance_id = p_instance_id and
                node_id     = p_node_id;
Line: 19054

    SELECT NVL(l_dblink,ltrim(rtrim(M2A_DBLINK)))
    INTO   l_dblink
    FROM   msc_apps_instances
    WHERE  instance_id = p_instance_id;
Line: 19060

    SELECT summary_flag, apps_ver
    INTO   l_summary_flag, MSC_ATP_PVT.G_APPS_VER
    FROM   msc_apps_instances
    WHERE  instance_id = p_instance_id;
Line: 19080

    select profile_value,profile_name
    bulk collect into l_profile_value,l_profile_name
    from MSC_ATP_SRC_PROFILE_TEMP
    where session_id = p_session_id;
Line: 19174

         SELECT spid
         INTO   l_spid
         FROM   v$process
         WHERE  addr = (SELECT paddr FROM v$session
                        WHERE audsid=userenv('SESSIONID'));
Line: 19201

         SELECT ltrim(rtrim(M2A_DBLINK))
         INTO   l_dblink
         FROM   msc_apps_instance_nodes
         WHERE  instance_id = p_instance_id and
                node_id     = p_node_id;
Line: 19216

      SELECT NVL(l_dblink,ltrim(rtrim(M2A_DBLINK)))
      INTO   l_dblink
      FROM   msc_apps_instances
      WHERE  instance_id = p_instance_id;
Line: 19222

    SELECT summary_flag, apps_ver
    INTO   l_summary_flag, MSC_ATP_PVT.G_APPS_VER
    FROM   msc_apps_instances
    WHERE  instance_id = p_instance_id;
Line: 19267

             msc_sch_wb.atp_debug('Call_Schedule_Remote: ' || 'Site is using backlog workbench, update tables and turnoff ODS summary');
Line: 19270

          update  msc_apps_instances
          set     summary_flag = 200;
Line: 19459

     SELECT  seq_num
     INTO    l_seq_num
     FROM    msc_calendar_dates
     WHERE   calendar_code = p_calendar_code
     AND     seq_num is not null --This date will always be there only case is if ITF is non working day.
     AND     calendar_date = trunc(p_calendar_date)
     AND     sr_instance_id = p_instance_id
     AND     exception_set_id = -1;
Line: 19499

     SELECT  calendar_date
     INTO    l_date
     FROM    msc_calendar_dates
     WHERE   calendar_code = p_calendar_code
     AND     seq_num = p_seq_num --Seq should always be there if calendar is build till ITF.
     AND     sr_instance_id = p_instance_id
     AND     exception_set_id = -1;