278: X_where:= X_where||' AND i.item_id in (select distinct item_id '
279: ||' FROM mr_tran_tbl WHERE mrp_id= to_char(:6) )' ;
280: END IF;
281:
282: cur_planning := dbms_sql.open_cursor;
283: dbms_sql.parse (cur_planning, X_where,dbms_sql.NATIVE);
284:
285: dbms_sql.bind_variable(cur_planning, ':1', G_Buyer_plnr_id);
286:
279: ||' FROM mr_tran_tbl WHERE mrp_id= to_char(:6) )' ;
280: END IF;
281:
282: cur_planning := dbms_sql.open_cursor;
283: dbms_sql.parse (cur_planning, X_where,dbms_sql.NATIVE);
284:
285: dbms_sql.bind_variable(cur_planning, ':1', G_Buyer_plnr_id);
286:
287: IF (G_fplanning_class IS NOT NULL) THEN
281:
282: cur_planning := dbms_sql.open_cursor;
283: dbms_sql.parse (cur_planning, X_where,dbms_sql.NATIVE);
284:
285: dbms_sql.bind_variable(cur_planning, ':1', G_Buyer_plnr_id);
286:
287: IF (G_fplanning_class IS NOT NULL) THEN
288: dbms_sql.bind_variable(cur_planning, ':2', G_fplanning_class);
289: END IF;
284:
285: dbms_sql.bind_variable(cur_planning, ':1', G_Buyer_plnr_id);
286:
287: IF (G_fplanning_class IS NOT NULL) THEN
288: dbms_sql.bind_variable(cur_planning, ':2', G_fplanning_class);
289: END IF;
290: IF (G_tplanning_class IS NOT NULL) THEN
291: dbms_sql.bind_variable(cur_planning, ':3', G_tplanning_class);
292: END IF;
287: IF (G_fplanning_class IS NOT NULL) THEN
288: dbms_sql.bind_variable(cur_planning, ':2', G_fplanning_class);
289: END IF;
290: IF (G_tplanning_class IS NOT NULL) THEN
291: dbms_sql.bind_variable(cur_planning, ':3', G_tplanning_class);
292: END IF;
293: IF (G_fitem_no IS NOT NULL) THEN
294: dbms_sql.bind_variable(cur_planning, ':4', G_fitem_no);
295: END IF;
290: IF (G_tplanning_class IS NOT NULL) THEN
291: dbms_sql.bind_variable(cur_planning, ':3', G_tplanning_class);
292: END IF;
293: IF (G_fitem_no IS NOT NULL) THEN
294: dbms_sql.bind_variable(cur_planning, ':4', G_fitem_no);
295: END IF;
296: IF (G_titem_no IS NOT NULL) THEN
297: dbms_sql.bind_variable(cur_planning, ':5', G_titem_no);
298: END IF;
293: IF (G_fitem_no IS NOT NULL) THEN
294: dbms_sql.bind_variable(cur_planning, ':4', G_fitem_no);
295: END IF;
296: IF (G_titem_no IS NOT NULL) THEN
297: dbms_sql.bind_variable(cur_planning, ':5', G_titem_no);
298: END IF;
299: IF (G_mrp_id IS NOT NULL) THEN
300: dbms_sql.bind_variable(cur_planning, ':6', G_mrp_id);
301: END IF;
296: IF (G_titem_no IS NOT NULL) THEN
297: dbms_sql.bind_variable(cur_planning, ':5', G_titem_no);
298: END IF;
299: IF (G_mrp_id IS NOT NULL) THEN
300: dbms_sql.bind_variable(cur_planning, ':6', G_mrp_id);
301: END IF;
302:
303: dbms_sql.define_column (cur_planning, 1, X_planning_class, 8);
304: dbms_sql.define_column (cur_planning, 2, X_item_id);
299: IF (G_mrp_id IS NOT NULL) THEN
300: dbms_sql.bind_variable(cur_planning, ':6', G_mrp_id);
301: END IF;
302:
303: dbms_sql.define_column (cur_planning, 1, X_planning_class, 8);
304: dbms_sql.define_column (cur_planning, 2, X_item_id);
305: X_row_count := dbms_sql.execute_and_fetch (cur_planning);
306: IF X_row_count > 0 THEN
307: SELECT gem5_matl_rep_id_s.nextval INTO X_rep_id FROM dual;
300: dbms_sql.bind_variable(cur_planning, ':6', G_mrp_id);
301: END IF;
302:
303: dbms_sql.define_column (cur_planning, 1, X_planning_class, 8);
304: dbms_sql.define_column (cur_planning, 2, X_item_id);
305: X_row_count := dbms_sql.execute_and_fetch (cur_planning);
306: IF X_row_count > 0 THEN
307: SELECT gem5_matl_rep_id_s.nextval INTO X_rep_id FROM dual;
308: G_matl_rep_id := X_rep_id;
301: END IF;
302:
303: dbms_sql.define_column (cur_planning, 1, X_planning_class, 8);
304: dbms_sql.define_column (cur_planning, 2, X_item_id);
305: X_row_count := dbms_sql.execute_and_fetch (cur_planning);
306: IF X_row_count > 0 THEN
307: SELECT gem5_matl_rep_id_s.nextval INTO X_rep_id FROM dual;
308: G_matl_rep_id := X_rep_id;
309: X_i := 0;
307: SELECT gem5_matl_rep_id_s.nextval INTO X_rep_id FROM dual;
308: G_matl_rep_id := X_rep_id;
309: X_i := 0;
310: LOOP
311: dbms_sql.column_value (cur_planning, 1, X_Planning_class);
312: dbms_sql.column_value (cur_planning, 2, X_Item_id);
313: X_i := X_i + 1;
314: G_planning_tab(X_i).planning_class := X_planning_class;
315: G_planning_tab(X_i).item_id := X_item_id;
308: G_matl_rep_id := X_rep_id;
309: X_i := 0;
310: LOOP
311: dbms_sql.column_value (cur_planning, 1, X_Planning_class);
312: dbms_sql.column_value (cur_planning, 2, X_Item_id);
313: X_i := X_i + 1;
314: G_planning_tab(X_i).planning_class := X_planning_class;
315: G_planning_tab(X_i).item_id := X_item_id;
316: -- Inserts the data into Header table.
315: G_planning_tab(X_i).item_id := X_item_id;
316: -- Inserts the data into Header table.
317: INSERT INTO ps_matl_hdr (matl_rep_id,planning_class,item_id)
318: VALUES(X_rep_id,X_planning_class,X_item_id);
319: IF dbms_sql.fetch_rows (cur_planning) <= 0 then
320: EXIT;
321: END IF;
322: END LOOP;
323:
321: END IF;
322: END LOOP;
323:
324: END IF;
325: dbms_sql.close_cursor (cur_planning);
326: EXCEPTION
327: WHEN OTHERS THEN
328: FND_FILE.PUT_LINE ( FND_FILE.LOG,'Error in mr insert header'|| sqlerrm);
329:
597:
598: /* G_whse_list is a list of warehouses, which are already validated
599: and hence not used as a bind variable */
600:
601: cur_balance := dbms_sql.open_cursor;
602: dbms_sql.parse (cur_balance, X_select1,dbms_sql.NATIVE);
603:
604: dbms_sql.bind_variable(cur_balance,':1',G_mrp_id);
605: dbms_sql.bind_variable(cur_balance,':2',V_item_id);
598: /* G_whse_list is a list of warehouses, which are already validated
599: and hence not used as a bind variable */
600:
601: cur_balance := dbms_sql.open_cursor;
602: dbms_sql.parse (cur_balance, X_select1,dbms_sql.NATIVE);
603:
604: dbms_sql.bind_variable(cur_balance,':1',G_mrp_id);
605: dbms_sql.bind_variable(cur_balance,':2',V_item_id);
606:
600:
601: cur_balance := dbms_sql.open_cursor;
602: dbms_sql.parse (cur_balance, X_select1,dbms_sql.NATIVE);
603:
604: dbms_sql.bind_variable(cur_balance,':1',G_mrp_id);
605: dbms_sql.bind_variable(cur_balance,':2',V_item_id);
606:
607: dbms_sql.define_column (cur_balance, 1, G_on_hand1);
608: X_row_count := dbms_sql.execute(cur_balance);
601: cur_balance := dbms_sql.open_cursor;
602: dbms_sql.parse (cur_balance, X_select1,dbms_sql.NATIVE);
603:
604: dbms_sql.bind_variable(cur_balance,':1',G_mrp_id);
605: dbms_sql.bind_variable(cur_balance,':2',V_item_id);
606:
607: dbms_sql.define_column (cur_balance, 1, G_on_hand1);
608: X_row_count := dbms_sql.execute(cur_balance);
609: IF dbms_sql.fetch_rows (cur_balance) > 0 then
603:
604: dbms_sql.bind_variable(cur_balance,':1',G_mrp_id);
605: dbms_sql.bind_variable(cur_balance,':2',V_item_id);
606:
607: dbms_sql.define_column (cur_balance, 1, G_on_hand1);
608: X_row_count := dbms_sql.execute(cur_balance);
609: IF dbms_sql.fetch_rows (cur_balance) > 0 then
610: dbms_sql.column_value (cur_balance, 1, G_on_hand1);
611: END IF;
604: dbms_sql.bind_variable(cur_balance,':1',G_mrp_id);
605: dbms_sql.bind_variable(cur_balance,':2',V_item_id);
606:
607: dbms_sql.define_column (cur_balance, 1, G_on_hand1);
608: X_row_count := dbms_sql.execute(cur_balance);
609: IF dbms_sql.fetch_rows (cur_balance) > 0 then
610: dbms_sql.column_value (cur_balance, 1, G_on_hand1);
611: END IF;
612: dbms_sql.close_cursor (cur_balance);
605: dbms_sql.bind_variable(cur_balance,':2',V_item_id);
606:
607: dbms_sql.define_column (cur_balance, 1, G_on_hand1);
608: X_row_count := dbms_sql.execute(cur_balance);
609: IF dbms_sql.fetch_rows (cur_balance) > 0 then
610: dbms_sql.column_value (cur_balance, 1, G_on_hand1);
611: END IF;
612: dbms_sql.close_cursor (cur_balance);
613: EXCEPTION
606:
607: dbms_sql.define_column (cur_balance, 1, G_on_hand1);
608: X_row_count := dbms_sql.execute(cur_balance);
609: IF dbms_sql.fetch_rows (cur_balance) > 0 then
610: dbms_sql.column_value (cur_balance, 1, G_on_hand1);
611: END IF;
612: dbms_sql.close_cursor (cur_balance);
613: EXCEPTION
614: WHEN OTHERS THEN
608: X_row_count := dbms_sql.execute(cur_balance);
609: IF dbms_sql.fetch_rows (cur_balance) > 0 then
610: dbms_sql.column_value (cur_balance, 1, G_on_hand1);
611: END IF;
612: dbms_sql.close_cursor (cur_balance);
613: EXCEPTION
614: WHEN OTHERS THEN
615: FND_FILE.PUT_LINE ( FND_FILE.LOG,'Error in mr get balance '|| sqlerrm);
616: IF dbms_sql.is_open (cur_balance) then
612: dbms_sql.close_cursor (cur_balance);
613: EXCEPTION
614: WHEN OTHERS THEN
615: FND_FILE.PUT_LINE ( FND_FILE.LOG,'Error in mr get balance '|| sqlerrm);
616: IF dbms_sql.is_open (cur_balance) then
617: dbms_sql.close_cursor (cur_balance);
618: END IF;
619:
620: END mr_get_balance; /******** END PROCEDURE*************/
613: EXCEPTION
614: WHEN OTHERS THEN
615: FND_FILE.PUT_LINE ( FND_FILE.LOG,'Error in mr get balance '|| sqlerrm);
616: IF dbms_sql.is_open (cur_balance) then
617: dbms_sql.close_cursor (cur_balance);
618: END IF;
619:
620: END mr_get_balance; /******** END PROCEDURE*************/
621:
651: ' AND whse_code in ( ' || G_whse_list || ' ) ' ||
652: ' AND delete_mark=0 ';
653:
654: IF G_whse_list IS NOT NULL THEN
655: cur_sstock := dbms_sql.open_cursor;
656: dbms_sql.parse (cur_sstock, X_select1,dbms_sql.NATIVE);
657:
658: dbms_sql.bind_variable(cur_sstock,':1',V_item_id);
659:
652: ' AND delete_mark=0 ';
653:
654: IF G_whse_list IS NOT NULL THEN
655: cur_sstock := dbms_sql.open_cursor;
656: dbms_sql.parse (cur_sstock, X_select1,dbms_sql.NATIVE);
657:
658: dbms_sql.bind_variable(cur_sstock,':1',V_item_id);
659:
660: dbms_sql.define_column (cur_sstock, 1, G_total_ss);
654: IF G_whse_list IS NOT NULL THEN
655: cur_sstock := dbms_sql.open_cursor;
656: dbms_sql.parse (cur_sstock, X_select1,dbms_sql.NATIVE);
657:
658: dbms_sql.bind_variable(cur_sstock,':1',V_item_id);
659:
660: dbms_sql.define_column (cur_sstock, 1, G_total_ss);
661: dbms_sql.define_column (cur_sstock, 2, G_no_safetystock);
662: X_row_count := dbms_sql.execute (cur_sstock);
656: dbms_sql.parse (cur_sstock, X_select1,dbms_sql.NATIVE);
657:
658: dbms_sql.bind_variable(cur_sstock,':1',V_item_id);
659:
660: dbms_sql.define_column (cur_sstock, 1, G_total_ss);
661: dbms_sql.define_column (cur_sstock, 2, G_no_safetystock);
662: X_row_count := dbms_sql.execute (cur_sstock);
663: IF dbms_sql.fetch_rows (cur_sstock) > 0 then
664: dbms_sql.column_value (cur_sstock, 1, G_total_ss);
657:
658: dbms_sql.bind_variable(cur_sstock,':1',V_item_id);
659:
660: dbms_sql.define_column (cur_sstock, 1, G_total_ss);
661: dbms_sql.define_column (cur_sstock, 2, G_no_safetystock);
662: X_row_count := dbms_sql.execute (cur_sstock);
663: IF dbms_sql.fetch_rows (cur_sstock) > 0 then
664: dbms_sql.column_value (cur_sstock, 1, G_total_ss);
665: dbms_sql.column_value (cur_sstock, 2, G_no_safetystock);
658: dbms_sql.bind_variable(cur_sstock,':1',V_item_id);
659:
660: dbms_sql.define_column (cur_sstock, 1, G_total_ss);
661: dbms_sql.define_column (cur_sstock, 2, G_no_safetystock);
662: X_row_count := dbms_sql.execute (cur_sstock);
663: IF dbms_sql.fetch_rows (cur_sstock) > 0 then
664: dbms_sql.column_value (cur_sstock, 1, G_total_ss);
665: dbms_sql.column_value (cur_sstock, 2, G_no_safetystock);
666: END IF;
659:
660: dbms_sql.define_column (cur_sstock, 1, G_total_ss);
661: dbms_sql.define_column (cur_sstock, 2, G_no_safetystock);
662: X_row_count := dbms_sql.execute (cur_sstock);
663: IF dbms_sql.fetch_rows (cur_sstock) > 0 then
664: dbms_sql.column_value (cur_sstock, 1, G_total_ss);
665: dbms_sql.column_value (cur_sstock, 2, G_no_safetystock);
666: END IF;
667: ELSE
660: dbms_sql.define_column (cur_sstock, 1, G_total_ss);
661: dbms_sql.define_column (cur_sstock, 2, G_no_safetystock);
662: X_row_count := dbms_sql.execute (cur_sstock);
663: IF dbms_sql.fetch_rows (cur_sstock) > 0 then
664: dbms_sql.column_value (cur_sstock, 1, G_total_ss);
665: dbms_sql.column_value (cur_sstock, 2, G_no_safetystock);
666: END IF;
667: ELSE
668: G_total_ss :=0;
661: dbms_sql.define_column (cur_sstock, 2, G_no_safetystock);
662: X_row_count := dbms_sql.execute (cur_sstock);
663: IF dbms_sql.fetch_rows (cur_sstock) > 0 then
664: dbms_sql.column_value (cur_sstock, 1, G_total_ss);
665: dbms_sql.column_value (cur_sstock, 2, G_no_safetystock);
666: END IF;
667: ELSE
668: G_total_ss :=0;
669: G_no_safetystock :=0;
667: ELSE
668: G_total_ss :=0;
669: G_no_safetystock :=0;
670: END IF;
671: dbms_sql.close_cursor (cur_sstock);
672:
673: IF ((NVL(G_no_safetystock,0) < NVL(G_num_whses,0))) THEN
674: G_unit_ss := 0;
675: OPEN Cur_unit_safety_stock(V_item_id);
681:
682: EXCEPTION
683: WHEN OTHERS THEN
684: FND_FILE.PUT_LINE ( FND_FILE.LOG,'Error in get Safety ctock'|| sqlerrm);
685: IF dbms_sql.is_open (cur_sstock) then
686: dbms_sql.close_cursor (cur_sstock);
687: END IF;
688:
689: END mr_get_safety_stock; /******** END PROCEDURE*************/
682: EXCEPTION
683: WHEN OTHERS THEN
684: FND_FILE.PUT_LINE ( FND_FILE.LOG,'Error in get Safety ctock'|| sqlerrm);
685: IF dbms_sql.is_open (cur_sstock) then
686: dbms_sql.close_cursor (cur_sstock);
687: END IF;
688:
689: END mr_get_safety_stock; /******** END PROCEDURE*************/
690: