May
22
2014
22
2014
Rota Oluşturmak İçin Procedure – Create Routing API
Merhaba,
Rota oluşturabilmek için aşağıdaki procedure ü kullanabilirsiniz.
———————–
CREATE OR REPLACE PROCEDURE xxinn_process_rtg AS -- API input variables l_operation_tbl bom_rtg_pub.operation_tbl_type := bom_rtg_pub.g_miss_operation_tbl; l_rtg_header_rec bom_rtg_pub.rtg_header_rec_type := bom_rtg_pub.g_miss_rtg_header_rec; l_rtg_revision_tbl bom_rtg_pub.rtg_revision_tbl_type := bom_rtg_pub.g_miss_rtg_revision_tbl; l_op_resource_tbl bom_rtg_pub.op_resource_tbl_type := bom_rtg_pub.g_miss_op_resource_tbl; l_sub_resource_tbl bom_rtg_pub.sub_resource_tbl_type := bom_rtg_pub.g_miss_sub_resource_tbl; l_op_network_tbl bom_rtg_pub.op_network_tbl_type := bom_rtg_pub.g_miss_op_network_tbl; -- API output variables x_rtg_header_rec bom_rtg_pub.rtg_header_rec_type; -- routing header record x_rtg_revision_tbl bom_rtg_pub.rtg_revision_tbl_type; -- routing revisions x_operation_tbl bom_rtg_pub.operation_tbl_type; -- routing operations x_op_resource_tbl bom_rtg_pub.op_resource_tbl_type; -- oepration resources x_sub_resource_tbl bom_rtg_pub.sub_resource_tbl_type; -- sub operation resources x_op_network_tbl bom_rtg_pub.op_network_tbl_type; -- operation networks x_message_list error_handler.error_tbl_type; -- Other API variables l_return_status VARCHAR2 (1) := NULL; l_msg_count NUMBER := 0; l_cnt NUMBER := 1; -- WHO columns l_user_id NUMBER := -1; l_resp_id NUMBER := -1; l_application_id NUMBER := -1; l_row_cnt NUMBER := 1; l_user_name VARCHAR2 (30) := 'user_name'; -->kullanıci adi yazilmali l_resp_name VARCHAR2 (30) := 'responsibility_key'; -->sorumluluğunuzun responsibility_key i yazilmali BEGIN -- Get the user_id SELECT user_id INTO l_user_id FROM fnd_user WHERE user_name = l_user_name; -- Get the application_id and responsibility_id SELECT application_id, responsibility_id INTO l_application_id, l_resp_id FROM fnd_responsibility WHERE responsibility_key = l_resp_name; -- Initialize applications information fnd_global.apps_initialize (l_user_id, l_resp_id, l_application_id); DBMS_OUTPUT.put_line ( 'Initialized applications context: ' || l_user_id || ' ' || l_resp_id || ' ' || l_application_id ); -- Create the routing header l_rtg_header_rec.assembly_item_name := 'Assembly_Item_Name'; -->rotasini yapacağiniz kalem kodu l_rtg_header_rec.organization_code := 'Organization_Code'; --> hangi organizasyonda rota yapilacaksa l_rtg_header_rec.alternate_routing_code := NULL; -->rotasi yapilacak kalemin daha onceden rotasi yoksa null varsa alternatif adi yazilacak. l_rtg_header_rec.completion_subinventory := 'Completion_Subinventory'; --> depo nun adi l_rtg_header_rec.transaction_type := 'CREATE'; l_rtg_header_rec.completion_location_name := 'Completion_Location_Name'; --> locator li bir depoysa segment birleşimi -- Create the routing operations -- operation 1 l_operation_tbl (l_cnt).assembly_item_name := 'Assembly_Item_Name'; -->rotasini yapacağiniz kalem kodu l_operation_tbl (l_cnt).organization_code := 'Organization_Code'; -->hangi organizasyonda rota yapilacaksa l_operation_tbl (l_cnt).alternate_routing_code := NULL; -->rotasi yapilacak kalemin daha onceden rotasi yoksa null varsa alternatif adi yazilacak. l_operation_tbl (l_cnt).operation_sequence_number := operation_sequence_number; --> operasyon sira numarasi l_operation_tbl (l_cnt).operation_type := 1; l_operation_tbl (l_cnt).start_effective_date := SYSDATE; l_operation_tbl (l_cnt).standard_operation_code := 'Standard_Operation_Code'; -->operasyon kodu l_operation_tbl (l_cnt).yield := 1; -->operation yield l_operation_tbl (l_cnt).transaction_type := 'CREATE'; /* -- 2.operasyon eklenecekse asagidaki kod acilir. 3. vedaha fazlası icin asagidaki kod coklanir. l_cnt := l_cnt + 1; l_operation_tbl(l_cnt).Assembly_Item_Name := 'RS_BOM_ASSY1'; l_operation_tbl(l_cnt).Organization_Code := 'M1'; l_operation_tbl(l_cnt).Alternate_Routing_Code := NULL; l_operation_tbl(l_cnt).Operation_Sequence_Number := '20'; l_operation_tbl(l_cnt).Operation_Type := 1; l_operation_tbl(l_cnt).Start_Effective_Date := SYSDATE; -- to_date('16-JUL-2010 19:30:39','DD-MON-YY HH24:MI:SS'); -- should match timestamp for UPDATE l_operation_tbl(l_cnt).Standard_Operation_Code := 'SFPK'; l_operation_tbl(l_cnt).Yield := 1.0; l_operation_tbl(l_cnt).Transaction_Type := 'CREATE' ;*/ -- initialize error stack for logging errors error_handler.initialize; -- call API to create / update routing DBMS_OUTPUT.PUT_LINE('======================================================='); DBMS_OUTPUT.put_line ('Calling Bom_Rtg_Pub.Process_Rtg API'); bom_rtg_pub.process_rtg ( -- p_bo_identifier => 'RTG' -- ,p_api_version_number => 1.0, p_init_msg_list => TRUE, p_rtg_header_rec => l_rtg_header_rec, p_rtg_revision_tbl => l_rtg_revision_tbl, p_operation_tbl => l_operation_tbl, p_op_resource_tbl => l_op_resource_tbl, p_sub_resource_tbl => l_sub_resource_tbl, p_op_network_tbl => l_op_network_tbl, x_rtg_header_rec => x_rtg_header_rec, x_rtg_revision_tbl => x_rtg_revision_tbl, x_operation_tbl => x_operation_tbl, x_op_resource_tbl => x_op_resource_tbl, x_sub_resource_tbl => x_sub_resource_tbl, x_op_network_tbl => x_op_network_tbl, x_return_status => l_return_status, x_msg_count => l_msg_count, p_debug => 'N', p_output_dir => '/usr/tmp/' -- ,p_debug_filename => 'rtg_bo_debug.log' ); DBMS_OUTPUT.put_line ('======================================================='); DBMS_OUTPUT.put_line ('Return Status: ' || l_return_status); IF (l_return_status <> fnd_api.g_ret_sts_success) THEN DBMS_OUTPUT.put_line ('x_msg_count:' || l_msg_count); error_handler.get_message_list (x_message_list => x_message_list); DBMS_OUTPUT.put_line ('Error Message Count :' || x_message_list.COUNT); FOR i IN 1 .. x_message_list.COUNT LOOP DBMS_OUTPUT.put_line ( TO_CHAR (i) || ':' || x_message_list (i).entity_index || ':' || x_message_list (i).table_name ); DBMS_OUTPUT.put_line ( TO_CHAR (i) || ':' || x_message_list (i).MESSAGE_TEXT ); END LOOP; END IF; DBMS_OUTPUT.put_line ('======================================================='); EXCEPTION WHEN OTHERS THEN DBMS_OUTPUT.put_line ('Exception Occured :'); DBMS_OUTPUT.put_line (SQLCODE || ':' || SQLERRM); DBMS_OUTPUT.put_line ('======================================================='); -- RAISE; END; |
———————–
BEGIN XXINN_PROCESS_RTG (); END ; |
———————–
Latest posts by Mert Ağbaba (see all)
- SUBSTR ve INSTR Fonksiyonlarının Kullanımı - 27 Temmuz 2015
- Oracle EBS R11i – R12 Lojistik Modülleri (Fark Sunumu) - 09 Temmuz 2015
- Teslimalma Seçenekleri (Kurulum Parametreleri) - 01 Temmuz 2015
Yazar




