How to cancel a Move Order line using API
Hi
I have a requirement, where I have to cancel Move order lines.
At times, multiple Move order lines are getting created for the same Sales order line.
Even after the Sales Order line is shipped and closed, the move order line is still open and it also has a corresponding pending transaction in mtl_material_transactions_temp table.
I came across INV_MOVE_ORDER_PUB.process move order line API.
how do I use it to cancel the move order line. Any sample codes would be highly welcome.
Thanks
Finally, found an alternate solution.
used the following code.
===================================
SET serveroutput on size 1000000
DECLARE
l_return_status VARCHAR2(100);
l_msg_count NUMBER;
l_msg_data VARCHAR2(2000);
l_msg_index NUMBER;
l_user_id NUMBER;
l_resp_id NUMBER;
l_appl_id NUMBER;
l_org_id NUMBER := &org_id;
l_move_order_line_id NUMBER := &mo_line_id ;
BEGIN
SELECT user_id
INTO l_user_id
FROM fnd_user
WHERE user_name = 'PRAWILNSON';
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);
MO_GLOBAL.set_policy_context ('S', l_org_id);
MO_GLOBAL.init;
DBMS_OUTPUT.put_line ('Calling INV_MO_BACKORDER_PVT to Backorder MO');
DBMS_OUTPUT.put_line ('===============================');
inv_mo_backorder_pvt.backorder (p_line_id => l_move_order_line_id
,x_return_status => l_return_status
,x_msg_count => l_msg_count
,x_msg_data => l_msg_data);
DBMS_OUTPUT.put_line ('Return Status is : '|| l_return_status);
-- Check Return Status
IF l_return_status = fnd_api.g_ret_sts_success THEN
DBMS_OUTPUT.put_line ('Successfully BackOrdered the Move Order Line');
COMMIT;
ELSE
DBMS_OUTPUT.put_line ('Could not able to Back Order Line Due to Following Reasons' );
ROLLBACK;
FOR j IN 1 .. l_msg_count LOOP
FND_MSG_PUB.get(p_msg_index => j
,p_encoded => fnd_api.g_false
,p_data => l_msg_data
,p_msg_index_out => l_msg_index);
DBMS_OUTPUT.put_line ('Error Message is : '|| l_msg_data);
END LOOP;
END IF;
END;
/
Similar Messages
-
Need to pass in line charges when cancel order line using API?
Hi,
Do we need to pass in line charges (charges, freight cost) when cancel order line using Oe_Order_Pub.Process_Order API?I found the answer to my own question:
Yes it is a supported feature. It is documented on the following page:
http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/desktop/NativeApp lication.html#event:invoke
When you subscribe to the invoke event of the NativeApplication it will subsequently dispatch the event and you read the e.arguments Array object to get the startup arguments passed into the native application. -
Can anyone tell me how to insert the new sales order lines using API.
Hi,
I am trying to Insert new sales order lines using oe_order_pub.Process_Order API, but i am unable to insert.
Help me on this.
Thanks in Adavance
Shravan Kumar.Hi,
Have you checked this link?
http://download-west.oracle.com/docs/cd/B25516_08/current/acrobat/115omapi.zip
it has extensive information on OM APIs
Regards
Prashant Pathak -
Unable to cancel sales order line using API
Hi,
After running the below API script I am getting the error message as
Error Message: FND FND_AS_UNEXPECTED_ERROR N PKG_NAME OE_Order_PVT N
PROCEDURE_NAME Process_Order N ERROR_TEXT ORA-01403: no data found
Help me out to fix the issue.
Please find the code below :
create or replace procedure xxso_line_cancel
is
l_user_id NUMBER;
l_resp_id NUMBER;
l_appl_id NUMBER;
l_header_rec_in oe_order_pub.header_rec_type;
l_line_tbl_in oe_order_pub.line_tbl_type;
l_action_request_tbl_in oe_order_pub.request_tbl_type;
l_header_rec_out oe_order_pub.header_rec_type;
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);
l_ret_status VARCHAR2 (1000) := NULL;
l_msg_count NUMBER := 0;
l_msg_data VARCHAR2 (2000);
l_api_version NUMBER := 1.0;
CURSOR c_so_details
IS
SELECT ol.line_number, ol.shipment_number, ol.header_id, ol.line_id, ol.flow_status_code
FROM
oe_order_headers_all oh,
oe_order_lines_all ol
WHERE
ol.header_id = oh.header_id
AND ol.flow_status_code IN ('AWAITING_SHIPPING','ENTERED')
AND oh.flow_status_code IN ('BOOKED', 'ENTERED')
and oh.header_id = 34756
and line_number=1;
begin
fnd_global.apps_initialize ( user_id => 1257 ,resp_id => 21623 , resp_appl_id => 660);
mo_global.set_policy_context('S',122);
mo_global.init('ONT');
FOR i IN c_so_details
LOOP
l_line_tbl_in (1) := oe_order_pub.g_miss_line_rec;
l_line_tbl_in (1).line_id := i.line_id;
l_line_tbl_in (1).ordered_quantity := 0;
l_line_tbl_in (1).cancelled_quantity := 4;
l_line_tbl_in (1).cancelled_flag := 'Y';
l_line_tbl_in (1).change_reason := '1'; --Administrative Reason
l_line_tbl_in (1).change_comments := 'Cancel Order Line with reference to ticket#000000';
l_line_tbl_in (1).operation := oe_globals.g_opr_update;
oe_msg_pub.delete_msg;
oe_order_pub.process_order
(p_api_version_number => l_api_version,
p_init_msg_list => fnd_api.g_true,
p_return_values => fnd_api.g_true,
p_action_commit => fnd_api.g_true,
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_ret_status,
x_msg_count => l_msg_count,
x_msg_data => l_msg_data
commit;
l_msg_data := NULL;
IF l_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;
DBMS_OUTPUT.put_line ('Return Status: ' || l_ret_status);
DBMS_OUTPUT.put_line ('Error Message: ' || l_msg_data);
ELSE
DBMS_OUTPUT.put_line ('Return Status: ' || l_ret_status);
DBMS_OUTPUT.put_line ('Error Message: ' || l_msg_data);
END IF;
END LOOP;
END;Hi,
After running the below API script I am getting the error message as
Error Message: FND FND_AS_UNEXPECTED_ERROR N PKG_NAME OE_Order_PVT N
PROCEDURE_NAME Process_Order N ERROR_TEXT ORA-01403: no data found
Help me out to fix the issue.
Please find the code below :
create or replace procedure xxso_line_cancel
is
l_user_id NUMBER;
l_resp_id NUMBER;
l_appl_id NUMBER;
l_header_rec_in oe_order_pub.header_rec_type;
l_line_tbl_in oe_order_pub.line_tbl_type;
l_action_request_tbl_in oe_order_pub.request_tbl_type;
l_header_rec_out oe_order_pub.header_rec_type;
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);
l_ret_status VARCHAR2 (1000) := NULL;
l_msg_count NUMBER := 0;
l_msg_data VARCHAR2 (2000);
l_api_version NUMBER := 1.0;
CURSOR c_so_details
IS
SELECT ol.line_number, ol.shipment_number, ol.header_id, ol.line_id, ol.flow_status_code
FROM
oe_order_headers_all oh,
oe_order_lines_all ol
WHERE
ol.header_id = oh.header_id
AND ol.flow_status_code IN ('AWAITING_SHIPPING','ENTERED')
AND oh.flow_status_code IN ('BOOKED', 'ENTERED')
and oh.header_id = 34756
and line_number=1;
begin
fnd_global.apps_initialize ( user_id => 1257 ,resp_id => 21623 , resp_appl_id => 660);
mo_global.set_policy_context('S',122);
mo_global.init('ONT');
FOR i IN c_so_details
LOOP
l_line_tbl_in (1) := oe_order_pub.g_miss_line_rec;
l_line_tbl_in (1).line_id := i.line_id;
l_line_tbl_in (1).ordered_quantity := 0;
l_line_tbl_in (1).cancelled_quantity := 4;
l_line_tbl_in (1).cancelled_flag := 'Y';
l_line_tbl_in (1).change_reason := '1'; --Administrative Reason
l_line_tbl_in (1).change_comments := 'Cancel Order Line with reference to ticket#000000';
l_line_tbl_in (1).operation := oe_globals.g_opr_update;
oe_msg_pub.delete_msg;
oe_order_pub.process_order
(p_api_version_number => l_api_version,
p_init_msg_list => fnd_api.g_true,
p_return_values => fnd_api.g_true,
p_action_commit => fnd_api.g_true,
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_ret_status,
x_msg_count => l_msg_count,
x_msg_data => l_msg_data
commit;
l_msg_data := NULL;
IF l_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;
DBMS_OUTPUT.put_line ('Return Status: ' || l_ret_status);
DBMS_OUTPUT.put_line ('Error Message: ' || l_msg_data);
ELSE
DBMS_OUTPUT.put_line ('Return Status: ' || l_ret_status);
DBMS_OUTPUT.put_line ('Error Message: ' || l_msg_data);
END IF;
END LOOP;
END; -
Unable to insert the new sales order line using API.
Hi,
when i am tring to insert the deleted line with ENTERED Status, i am getting the follwing error msg.
Yesterday morning i insert the lines, but from yesterday evening onwords i am unable to insert line and i am getting below error msg.
Item with inventory_item_id=394131 is not defined in Item validation Org
i written the code like this
l_step varchar2(250);
l_err_msg varchar2(1000);
l_line_tbl oe_order_pub.Line_Tbl_Type;
lx_return_status VARCHAR2(2000);
lx_msg_count NUMBER;
lx_msg_data VARCHAR2(2000);
lx_header_rec oe_order_pub.Header_Rec_Type;
lx_header_val_rec oe_order_pub.Header_Val_Rec_Type;
lx_header_adj_tbl oe_order_pub.Header_Adj_Tbl_Type;
lx_header_adj_val_tbl oe_order_pub.Header_Adj_Val_Tbl_Type;
lx_header_price_att_tbl oe_order_pub.Header_Price_Att_Tbl_Type;
lx_header_adj_att_tbl oe_order_pub.Header_Adj_Att_Tbl_Type;
lx_header_adj_assoc_tbl oe_order_pub.Header_Adj_Assoc_Tbl_Type;
lx_header_scredit_tbl oe_order_pub.Header_Scredit_Tbl_Type;
lx_header_scredit_val_tbl oe_order_pub.Header_Scredit_Val_Tbl_Type;
lx_Header_Payment_tbl oe_order_pub.Header_Payment_Tbl_Type;
lx_Header_Payment_val_tbl oe_order_pub.Header_Payment_Val_Tbl_Type;
lx_line_tbl oe_order_pub.Line_Tbl_Type;
lx_line_val_tbl oe_order_pub.Line_Val_Tbl_Type;
lx_Line_Adj_tbl oe_order_pub.Line_Adj_Tbl_Type;
lx_Line_Adj_val_tbl oe_order_pub.Line_Adj_Val_Tbl_Type;
lx_Line_price_Att_tbl oe_order_pub.Line_Price_Att_Tbl_Type;
lx_Line_Adj_Att_tbl oe_order_pub.Line_Adj_Att_Tbl_Type;
lx_Line_Adj_Assoc_tbl oe_order_pub.Line_Adj_Assoc_Tbl_Type;
lx_Line_Scredit_tbl oe_order_pub.Line_Scredit_Tbl_Type;
lx_Line_Scredit_val_tbl oe_order_pub.Line_Scredit_Val_Tbl_Type;
lx_Line_Payment_tbl oe_order_pub.Line_Payment_Tbl_Type;
lx_Line_Payment_val_tbl oe_order_pub.Line_Payment_Val_Tbl_Type;
lx_Lot_Serial_tbl oe_order_pub.Lot_Serial_Tbl_Type;
lx_Lot_Serial_val_tbl oe_order_pub.Lot_Serial_Val_Tbl_Type;
lx_action_request_tbl oe_order_pub.Request_Tbl_Type;
v_hold_release_rec OE_HOLDS_PVT.order_tbl_type;
v_hold_source_rec OE_HOLDS_PVT.Hold_Source_Rec_Type;
v_err_msg VARCHAR2(2000);
v_return_flag VARCHAR2(1);
v_err_flag VARCHAR2(1);
BEGIN
FOR c_ins_rec in (SELECT *
FROM terom_sales_order_lines_stg
LOOP
IF c_ins_rec.flow_status_code = 'ENTERED' THEN
-- ASSIGNMENT OF LINE RECORD FOR ENTERED STATUS
l_line_tbl(1) := OE_ORDER_PUB.G_MISS_LINE_REC;
l_line_tbl(1).header_id := c_ins_rec.header_id;
l_line_tbl(1).inventory_item_id := c_ins_rec.inventory_item_id;
l_line_tbl(1).ordered_quantity := c_ins_rec.ordered_quantity;
l_line_tbl(1).operation := OE_GLOBALS.G_OPR_CREATE;
ELSE
-- ASSIGNMENT OF LINE RECORD
l_line_tbl(1) := OE_ORDER_PUB.G_MISS_LINE_REC;
l_line_tbl(1).header_id := c_ins_rec.header_id;
l_line_tbl(1).inventory_item_id := c_ins_rec.inventory_item_id;
l_line_tbl(1).ordered_quantity := c_ins_rec.cancelled_quantity;
l_line_tbl(1).operation := OE_GLOBALS.G_OPR_CREATE;
END IF;
-- API CALL
APPS.OE_ORDER_PUB.PROCESS_ORDER(
p_api_version_number => 1.0,
p_init_msg_list => apps.fnd_api.g_true,
p_return_values => apps.fnd_api.g_false,
x_return_status => lx_return_status,
x_msg_count => lx_msg_count,
x_msg_data => lx_msg_data,
p_line_tbl => l_line_tbl,
x_header_rec => lx_header_rec,
x_header_val_rec => lx_header_val_rec,
x_header_adj_tbl => lx_header_adj_tbl,
x_header_adj_val_tbl => lx_header_adj_val_tbl,
x_header_price_att_tbl => lx_header_price_att_tbl,
x_header_adj_att_tbl => lx_header_adj_att_tbl,
x_header_adj_assoc_tbl => lx_header_adj_assoc_tbl,
x_header_scredit_tbl => lx_header_scredit_tbl,
x_header_scredit_val_tbl => lx_header_scredit_val_tbl,
x_line_tbl => lx_line_tbl,
x_line_val_tbl => lx_line_val_tbl,
x_line_adj_tbl => lx_line_adj_tbl,
x_line_adj_val_tbl => lx_line_adj_val_tbl,
x_line_price_att_tbl => lx_line_price_att_tbl,
x_line_adj_att_tbl => lx_line_adj_att_tbl,
x_line_adj_assoc_tbl => lx_line_adj_assoc_tbl,
x_line_scredit_tbl => lx_line_scredit_tbl,
x_line_scredit_val_tbl => lx_line_scredit_val_tbl,
x_lot_serial_tbl => lx_lot_serial_tbl,
x_lot_serial_val_tbl => lx_lot_serial_val_tbl,
x_action_request_tbl => lx_action_request_tbl
COMMIT;
can any one help me why this error mesg is coming, it's very URGENT.
Thank,
Shravan Kumar Kota.Hi,
Have you checked this link?
http://download-west.oracle.com/docs/cd/B25516_08/current/acrobat/115omapi.zip
it has extensive information on OM APIs
Regards
Prashant Pathak -
How to add new line in transact move order line
Hi,
i am able to update locaotr in Transact move order.
But i want to add two locators for the same line.
I tried to insert one more record in data base, but getting error unique index error.
so how can we add new line in transact move order line .
please help to slove this isse.
Thanks In Advance
Venu.Hi,
the fact that your question is posted in Order Management section, does the move order automatically generated by OM?
nevertheless, i don't think you should (or allowed, in this case) to add a new line in transact move order. Transact move order only queries (not create records) the move order lines eligible to allocate and transact.
So, I don't see why you need to add a new line in transact move order.
You can, however, add a new line in the allocation of the lines, where for instance, you need to have half of the line allocated to one locator, and the other half to another locator
Thanks -
How to cancel the sales order - header and line status are in Entered Stage
Dears,
I have some sales order to be cancelled in which the header and line status are in *"Entered"*. I am not able to cancel these sales order.
Also note that these orders are for maintenance service.Once i book these orders the lines will change to closed status.
So it is not possible to book and cancel the lines.
Kindly me to resolve this.926530 wrote:
Boss,
If i do Action-->cancel on header, it just makes the qty to zero.But the header and line status still showing as entered.It will not cancel the order.
The problem for me is that these lines are coming in my monthly reports. This is what your question says...be more specific as what is your issue..which in turn is your problem
How to cancel the sales order - header and line status are in Entered Stage
Coming to your Action-->cancel...as far as i know ...the header status will change to canceled..
unless until you have some processing constraints in place...which is stopping you...
HTH
Mahendra -
Move Order lines and Delivery Detail lines - Relationship
Hi All,
Is there a one - to - one realtionship between Move Order Line and Delivery Detail Line?
i.e., Each Move Order line will correspond to only one Delivery Details line Record?
Thanks in advance.
Regards,
GowriHello,
There is a one - to - many relationship between Move Order Line and Delivery Detail Line when you split lines in delivery.
select * from mtl_material_transactions t you have source_id.
select * from WSH_DELIVERABLES_v t you have move_order_id.
Regards,
Luko -
How to cancel my pending order
Hey,
Can any one tell me how to cancel my pending order. Also even if I dont cancel my
order will my card be charged.
Thanks.please contact Skype customer service
TIME ZONE - US EASTERN. LOCATION - PHILADELPHIA, PA, USA.
I recommend that you always run the latest Skype version: Windows & Mac
If my advice helped to fix your issue please mark it as a solution to help others.
Please note that I generally don't respond to unsolicited Private Messages. Thank you. -
WM how to cancel confirmed Transfer Order
Hi,
I am new to WM, can you please tell how to cancel confirme Ttransfer order in WM.
for example if post goods issues is compleated for delivery then the Transfer order will be created and the Trnasfer order confirmed manually, now how to reverse or cancel the Transfer order.
please advice
Regards
KumarIf the goods receipt is created, for example goods receipt for purchase order.After receiving the goods then we will putaway the stock by confirming transfer order.
If we want to reverse the goods receipt then how to cancel the To.
Pls advice
First you should reverse the GR and then (based on settings in IM-WM interface) a new TR will be created and processing that TR (e.g. from trx LB10) you will create a NEW TO (stock removal TO).
Regards,
Csaba -
How To Load a Project Budget Line Through API in R12 ?
Hello
Could you please let me know how to load the project budget lines through API in R12 system, I am trying with below script but it is not working.
Could you please let me know if you have any solution.
=========================================================================================================================================================================
Script
DECLARE
--––variables needed for API standard parameters
l_api_version_number NUMBER := 1.0;
l_commit VARCHAR2 (1) := 'T';
l_return_status VARCHAR2 (1);
l_init_msg_list VARCHAR2 (1);
l_msg_count NUMBER;
l_msg_data VARCHAR2 (2000);
l_data VARCHAR2 (2000);
l_msg_entity VARCHAR2 (100);
l_msg_entity_index NUMBER;
l_msg_index NUMBER;
l_msg_index_out NUMBER;
l_encoded VARCHAR2 (1);
i NUMBER;
a NUMBER;
--––variables needed for Oracle Project specific parameters
l_pm_product_code VARCHAR2 (100);
l_pa_project_id NUMBER;
l_pm_project_reference VARCHAR2 (100);
l_budget_type_code VARCHAR2 (30);
l_change_reason_code VARCHAR2 (30);
l_description VARCHAR2 (255);
l_entry_method_code VARCHAR2 (30);
l_resource_list_name VARCHAR2 (60);
l_resource_list_id NUMBER;
l_budget_lines_in pa_budget_pub.budget_line_in_tbl_type;
l_budget_lines_in_rec pa_budget_pub.budget_line_in_rec_type;
l_budget_lines_out pa_budget_pub.budget_line_out_tbl_type;
l_line_index NUMBER;
l_line_return_status VARCHAR2 (1);
l_user_id NUMBER;
l_responsibility_id NUMBER;
API_ERROR EXCEPTION;
BEGIN
-- SET GLOBAL INFO
SELECT user_id,
responsibility_id
INTO l_user_id,
l_responsibility_id
FROM pa_user_resp_v
WHERE user_name = 'RAJU';
PA_INTERFACE_UTILS_PUB.SET_GLOBAL_INFO (p_api_version_number => 1.0,
p_responsibility_id => l_responsibility_id,
p_user_id => l_user_id,
p_msg_count => l_msg_count,
p_msg_data => l_msg_data,
p_return_status => l_return_status
IF l_return_status != 'S'
THEN
RAISE API_ERROR;
END IF;
--––PRODUCT RELATED DATA
l_pm_product_code := 'GMS';
--––BUDGET DATA
l_pa_project_id := 6271;
l_pm_project_reference := NULL;--'ABC';
l_budget_type_code := 'FC';
-- l_change_reason_code := 'INITIAL';
l_description := 'New description –> 2';
l_entry_method_code := 'PA_TASKLVL_BASELINE';
l_resource_list_id := 1001;
--––BUDGET LINES DATA
a := 1;
FOR i IN 1 .. a
LOOP
l_budget_lines_in_rec.pa_task_id := 405156;
l_budget_lines_in_rec.pm_task_reference := NULL;
l_budget_lines_in_rec.resource_alias := 'Labor';
l_budget_lines_in_rec.resource_list_member_id := '1034';
-- l_budget_lines_in_rec.budget_start_date := '01-Jan-13';
-- l_budget_lines_in_rec.budget_end_date := '31-Dec-14';
-- l_budget_lines_in_rec.period_name := 'JUL-10FY2011';
l_budget_lines_in_rec.description := 'Some Text';
l_budget_lines_in_rec.quantity := 100.00;
l_budget_lines_in_rec.raw_cost := 300.00;
l_budget_lines_in (i) := l_budget_lines_in_rec;
END LOOP;
--––INIT_BUDGET
pa_budget_pub.init_budget;
--––LOAD_BUDGET_LINE
FOR i IN 1 .. a
LOOP
pa_budget_pub.load_budget_line
(p_api_version_number => l_api_version_number,
p_return_status => l_return_status,
p_pa_task_id => l_budget_lines_in (i).pa_task_id,
p_pm_task_reference => l_budget_lines_in (i).pm_task_reference,
p_resource_alias => l_budget_lines_in (i).resource_alias,
p_resource_list_member_id => l_budget_lines_in (i).resource_list_member_id,
p_budget_start_date => l_budget_lines_in (i).budget_start_date,
p_budget_end_date => l_budget_lines_in (i).budget_end_date,
p_period_name => l_budget_lines_in (i).period_name,
p_description => l_budget_lines_in (i).description,
p_raw_cost => l_budget_lines_in (i).raw_cost,
p_burdened_cost => l_budget_lines_in (i).burdened_cost,
p_revenue => l_budget_lines_in (i).revenue,
p_quantity => l_budget_lines_in (i).quantity
END LOOP;
IF l_return_status != 'S'
THEN
RAISE api_error;
END IF;
--––EXECUTE_CREATE_DRAFT_BUDGET
pa_budget_pub.execute_create_draft_budget (p_api_version_number => l_api_version_number,
p_msg_count => l_msg_count,
p_msg_data => l_msg_data,
p_return_status => l_return_status,
p_pm_product_code => l_pm_product_code,
p_pa_project_id => l_pa_project_id,
p_pm_project_reference => l_pm_project_reference,
p_budget_type_code => l_budget_type_code,
p_change_reason_code => l_change_reason_code,
p_description => l_description,
p_entry_method_code => l_entry_method_code,
p_resource_list_name => l_resource_list_name,
p_resource_list_id => l_resource_list_id
IF l_return_status != 'S'
THEN
NULL; --––RAISE API_ERROR;
END IF;
--––FETCH_LINE
FOR l_line_index IN 1 .. pa_budget_pub.g_budget_lines_tbl_count
LOOP
pa_budget_pub.fetch_budget_line (p_api_version_number => l_api_version_number,
p_return_status => l_return_status,
p_line_index => l_line_index,
p_line_return_status => l_line_return_status
IF l_return_status != 'S' OR l_line_return_status != 'S'
THEN
RAISE api_error;
END IF;
END LOOP;
--––CLEAR_BUDGET
pa_budget_pub.clear_budget;
IF l_return_status != 'S'
THEN
RAISE api_error;
END IF;
--––HANDLE EXCEPTIONS
EXCEPTION
WHEN api_error
THEN
FOR i IN 1 .. l_msg_count
LOOP
pa_interface_utils_pub.get_messages (p_msg_data => l_msg_data,
p_data => l_data,
p_msg_count => l_msg_count,
p_msg_index_out => l_msg_index_out
DBMS_OUTPUT.put_line ('Error Mesg ' || l_data);
DBMS_OUTPUT.put_line ('Error Mesg ' || l_msg_data);
END LOOP;
WHEN OTHERS
THEN
FOR i IN 1 .. l_msg_count
LOOP
pa_interface_utils_pub.get_messages (p_msg_data => l_msg_data,
p_data => l_data,
p_msg_count => l_msg_count,
p_msg_index_out => l_msg_index_out
DBMS_OUTPUT.put_line ('error mesg ' || l_data);
END LOOP;
END;
=========================================================================================================================================================================Not knowing how its embedded... you will need to get the report instance from the dll and cast it as a ReportDocument object.
Given the info so far, that is all we can say.
Ludek
Follow us on Twitter http://twitter.com/SAPCRNetSup
Got Enhancement ideas? Try the [SAP Idea Place|https://ideas.sap.com/community/products_and_solutions/crystalreports] -
Error in cancelling sales order line using process order API
Hi,
I have created a sales order which is in booked status. I want to cancel the order line . when I am running the concurrent request I am getting the following error message.I am using the process order API to perform this operation.
API Error Message You are not allowed to update Inventory Item because:
line has been booked
API Error Message You are not allowed to update Line Type because:
Line is Booked
Can anyone help.
thanks
AshwiniHi,
What is the application release?
What concurrent program you are running? Is it a custom or seeded one? And, what is the API name?
Please see if these docs are applicable.
Unable To Manual Mass Update Items For Multiple Booked Sales Order Lines [ID 887905.1]
Cannot Update Ordered Item To Related Item On Booked Sales Order Line [ID 298796.1]
Thanks,
Hussein -
Hi all,
I am new in manufacturing and we want to implement functionality of generating single move order for same component among different job using component pick release. Can any one help in this.
we are using oracle R 12.1.3 version.
For example. We create finish good XYZ which is build in WIP item. We create discrete jobs for XYZ suppose JOB1,JOB2,JOB3 multiple job we can create for XYZ item. in these JOB suppose component abc is similar with 5 quantity. so our goal is to generate 1 move order for all three JOBS with 15 quantity of abc component.
please help me to achieve this goal. Immediate Reply will be appreciated.
Thanks & Regards
user11152750PranitSaha
Thanks For your reply. Can you please tell me in detail how can I group as I am new. How using MRP we can group same component from different job in single move order for delivering that component to shop floor.
Thank you.. -
How to cancel the returns order
Hi,
i have done a sales process by creating sales order, delivery, invoice and then i have taken the goods return by returns order, returns delivery and the credit memo.
Now i want to delete/ cancel all the documents till from credit memo to sales order. im getting error during deleting the returns order.
can u tell me the process abt how to can all the docs
Thanks and Regards
KishoreHi there,
What error you get when you try to delete the returns?
If the credit memo is posted, then rever the posting. T
hen cancel the credit memo in VF11.
Reverse the PGI in VL09 for the returns delivery. Unpack & reverse the picking quantity. Delete the delivery.
Then cancel the returns order.
Pls note that you cannot delete the sales order. You can only cancel or enter reason for rejection in the line items.
Same way cancel all the documents from F2 to OR.
Regards,
Sivanand -
Cannot cancel 202 movement after 201 using VLMOVE
Hi,
I have dont 201 movement using VLMOVE. I have to cancel this movement since the Cost Center was wrong.
I tried 202 movement with MB1A, but get the error as "Document is incomplete: You cannot save the delivery".
Can you tell me how I can cancel this movement which has HU involved.
Thank YouHI Benu Mathew
What error message you are getting.?
Try to cancel Material Document in MIGO or MBST.
Reb,
Bhg
Maybe you are looking for
-
Resetting a Mac mini to original factory settings without a disc.
I have a Mac mini that the previous owner did not erase all content. I was hoping to reset to factory settings without a disc. The on-line restore to factory settings seems to suggest that I need to enter an Apple ID. I have one, but I'm not the orig
-
Create query with top 5 and rest
Hi,i want to have a query that gives a list in the following format customer - value of orders #1 - 20.500 #2 - 20.100 #3 - 16.000 #4 - 15.000 #5 - 14.000 Rest - 49.600 how can i a
-
How to get rid of dupe music icons on iPhone, one with cloud, one without?
After getting a replacement iPhone, restoring from backup, and re-syncing, I have dupe entries for every song on the phone. One has a cloud icon and one doesn't. These weren't there before! What happened, and how can I get rid of all these dupes (
-
Unable to use SSL between Access Manager and Directory Server
I am trying to set up Access Manager to use SSL when communicating with Directory Server. Access Manager 7 is running under Sun Web Server 6.1. I have configured Directory Server to use SSL using a Self-Signed CA and have imported the CA certificate
-
Nokia 5610 XM Bluetooth received files save to mem...
Is it possible to save files received via bluetooth directly to memory card with this phone? A friend manage to do so with his 5200... Is it same?