May
2
2014
2
2014
Sipariş Satırını İptal Etmek İçin Kullanılan Örnek Script
Yazar Mustafa Korkmaz
Yorum Yok
Merhaba,
OE_ORDER_LINES_ALL tablosunda satır verilerinin iptal durumuna getirilmesini sağlayan örnek bir scripti aşağıda bulabilirsiniz.
DECLARE l_user_id NUMBER; l_resp_id NUMBER; l_appl_id NUMBER; l_header_rec_in oe_order_pub.header_rec_type; -- pl/sql table and record definition to be used as IN parameters l_line_tbl_in oe_order_pub.line_tbl_type; -- pl/sql table and record definition to be used as IN parameters l_action_request_tbl_in oe_order_pub.request_tbl_type; -- Used to assigining Book Order related input parameters l_header_rec_out oe_order_pub.header_rec_type; -- pl/sql table and record definition to be used as OUT parameters l_line_tbl_out oe_order_pub.line_tbl_type; l_header_val_rec_out oe_order_pub.header_val_rec_type; l_header_adj_tbl_out oe_order_pub.header_adj_tbl_type; l_header_adj_val_tbl_out oe_order_pub.header_adj_val_tbl_type; l_header_price_att_tbl_out oe_order_pub.header_price_att_tbl_type; l_header_adj_att_tbl_out oe_order_pub.header_adj_att_tbl_type; l_header_adj_assoc_tbl_out oe_order_pub.header_adj_assoc_tbl_type; l_header_scredit_tbl_out oe_order_pub.header_scredit_tbl_type; l_header_scredit_val_tbl_out oe_order_pub.header_scredit_val_tbl_type; l_line_val_tbl_out oe_order_pub.line_val_tbl_type; l_line_adj_tbl_out oe_order_pub.line_adj_tbl_type; l_line_adj_val_tbl_out oe_order_pub.line_adj_val_tbl_type; l_line_price_att_tbl_out oe_order_pub.line_price_att_tbl_type; l_line_adj_att_tbl_out oe_order_pub.line_adj_att_tbl_type; l_line_adj_assoc_tbl_out oe_order_pub.line_adj_assoc_tbl_type; l_line_scredit_tbl_out oe_order_pub.line_scredit_tbl_type; l_line_scredit_val_tbl_out oe_order_pub.line_scredit_val_tbl_type; l_lot_serial_tbl_out oe_order_pub.lot_serial_tbl_type; l_lot_serial_val_tbl_out oe_order_pub.lot_serial_val_tbl_type; l_action_request_tbl_out oe_order_pub.request_tbl_type; l_chr_program_unit_name VARCHAR2 (100); -- To store the package and procedure name for logging l_chr_ret_status VARCHAR2 (1000) := NULL; -- To store the error message code returned by API l_msg_count NUMBER := 0; -- To store the number of error messages API has encountered l_msg_data VARCHAR2 (2000); -- To store the error message text returned by API l_num_api_version NUMBER := 1.0; -- API version CURSOR c_so_details IS SELECT oh.order_number, ol.* FROM oe_order_lines_all ol, oe_order_headers_all oh WHERE oh.header_id = ol.header_id AND oh.org_id = ol.org_id AND NVL (ol.cancelled_flag, 'N') = 'N' AND oh.order_number = '10001690' -- Enter the Order Number AND ol.line_number = 1 -- Enter the Line Number AND ol.shipment_number = 2 -- Enter the Shipment Number AND ol.flow_status_code = 'AWAITING_SHIPPING'; BEGIN SELECT user_id INTO l_user_id FROM fnd_user WHERE user_name = 'XXUSER'; SELECT responsibility_id, application_id INTO l_resp_id, l_appl_id FROM fnd_responsibility_vl WHERE responsibility_name = 'Order Management Super User'; fnd_global.apps_initialize (l_user_id, l_resp_id, l_appl_id); FOR iso_rec IN c_so_details LOOP l_line_tbl_in (1) := oe_order_pub.g_miss_line_rec; l_line_tbl_in (1).line_id := iso_rec.line_id; l_line_tbl_in (1).ordered_quantity := 0; l_line_tbl_in (1).change_reason := 'Admin Error'; l_line_tbl_in (1).change_comments := 'CANCEL ORDER'; l_line_tbl_in (1).operation := oe_globals.g_opr_update; oe_msg_pub.delete_msg; mo_global.init ('ONT'); mo_global.set_policy_context ('S', iso_rec.org_id); oe_order_pub.process_order (p_api_version_number => l_num_api_version, p_org_id => mo_global.get_current_org_id, p_init_msg_list => fnd_api.g_false, p_return_values => fnd_api.g_false, p_action_commit => fnd_api.g_false, p_line_tbl => l_line_tbl_in, x_header_rec => l_header_rec_out, x_header_val_rec => l_header_val_rec_out, x_header_adj_tbl => l_header_adj_tbl_out, x_header_adj_val_tbl => l_header_adj_val_tbl_out, x_header_price_att_tbl => l_header_price_att_tbl_out, x_header_adj_att_tbl => l_header_adj_att_tbl_out, x_header_adj_assoc_tbl => l_header_adj_assoc_tbl_out, x_header_scredit_tbl => l_header_scredit_tbl_out, x_header_scredit_val_tbl => l_header_scredit_val_tbl_out, x_line_tbl => l_line_tbl_out, x_line_val_tbl => l_line_val_tbl_out, x_line_adj_tbl => l_line_adj_tbl_out, x_line_adj_val_tbl => l_line_adj_val_tbl_out, x_line_price_att_tbl => l_line_price_att_tbl_out, x_line_adj_att_tbl => l_line_adj_att_tbl_out, x_line_adj_assoc_tbl => l_line_adj_assoc_tbl_out, x_line_scredit_tbl => l_line_scredit_tbl_out, x_line_scredit_val_tbl => l_line_scredit_val_tbl_out, x_lot_serial_tbl => l_lot_serial_tbl_out, x_lot_serial_val_tbl => l_lot_serial_val_tbl_out, x_action_request_tbl => l_action_request_tbl_out, x_return_status => l_chr_ret_status, x_msg_count => l_msg_count, x_msg_data => l_msg_data ); l_msg_data := NULL; IF l_chr_ret_status <> 'S' THEN FOR iindx IN 1 .. l_msg_count LOOP l_msg_data := l_msg_data || ' .' || oe_msg_pub.get (iindx); END LOOP; END IF; DBMS_OUTPUT.ENABLE (10000); DBMS_OUTPUT.put_line ( 'Sales Order => ' || iso_rec.order_number || ' - Line Number => ' || iso_rec.line_number || ' - Shipment Number => ' || iso_rec.shipment_number || ' Having Line ID=> ' || iso_rec.line_id || ' Cancelled Successfully' ); DBMS_OUTPUT.put_line ('Return Status: ' || l_chr_ret_status); DBMS_OUTPUT.put_line ('Error Message: ' || l_msg_data); END LOOP; END; |
Mustafa Korkmaz
Oracle Applications Developer at Partnera
2005 yılında Dokuz Eylül Üniversitesi Endüstri Mühendisliğinden Mezun
Oldu, 2011 Yılında Ahmet Yesevi Üniversitesi Bilgisayar Mühendisliğinde
Yüksek Lisansını Tamamlandı,2012 Yılında Doğuş Üniversitesinde Bilgisayar
Mühendisliği Doktora Eğitimine Başladı.10 yılı aşkın bir zamandır Oracle
Ürünleri Uygulama Yazılım Uzmanı Olarak profesyonel kariyerine devam
etmektedir. İlgi alanları Middleware, CI/CD,
Oracle Database , PL/SQL , Java , Makine Öğrenmesi ve Veri Madenciliği alanlarındadır.
2 versiyon Oracle Database ' (10g, 11g) inde OCA(Oracle Certificate Associate) ve
PL/SQL Certificated Professional ünvanları bulunmaktadır.
Mail: mustafakorkmz@gmail.com
Oldu, 2011 Yılında Ahmet Yesevi Üniversitesi Bilgisayar Mühendisliğinde
Yüksek Lisansını Tamamlandı,2012 Yılında Doğuş Üniversitesinde Bilgisayar
Mühendisliği Doktora Eğitimine Başladı.10 yılı aşkın bir zamandır Oracle
Ürünleri Uygulama Yazılım Uzmanı Olarak profesyonel kariyerine devam
etmektedir. İlgi alanları Middleware, CI/CD,
Oracle Database , PL/SQL , Java , Makine Öğrenmesi ve Veri Madenciliği alanlarındadır.
2 versiyon Oracle Database ' (10g, 11g) inde OCA(Oracle Certificate Associate) ve
PL/SQL Certificated Professional ünvanları bulunmaktadır.
Mail: mustafakorkmz@gmail.com
Latest posts by Mustafa Korkmaz (see all)
- Log4j CVE-2021-45046 Zafiyeti - 16 Aralık 2021
- Materialized View Verisi Purge ya da Delete (atomic_refresh) - 12 Kasım 2021
- HTML Görüntüsü için Unicode Dönüşümü - 27 Temmuz 2020
İlgili Yazılar