ITPub博客

首页 > 数据库 > Oracle > 使用脚本关闭订单头

使用脚本关闭订单头

原创 Oracle 作者:pan_tian 时间:2014-07-02 12:28:12 0 删除 编辑

订单的关闭是自动的,在所有行工作流结束(Close或者Cancel)后0.5天,订单头也将在Workflow Background Process的推动下关闭。

还有另外一种说法:you can wait until month-end and the “Order Flow – Generic” workflow will close it for you.

所以造成了很多时候订单行已经关闭了,但订单头还是处于Booked状态,这个时候如果你想Close订单头,你可以手动运行Workflow Background Process来关闭订单,也可以使用脚本来close Order Header.

脚本一:

begin
fnd_global.apps_initialize(:USER_ID, :RESP_ID, :RESP_APPL_ID);
end;
/

/*If Work Flow exist for Order header then use the script below. This will close the Order
After running this script run "Workflow Background Process" */
begin
wf_engine.completeactivity
(
\'OEOH\', --item_type
\'9999999\', --item_key = header_id .... pass the HEADER_ID of the order you want to close
\'CLOSE_WAIT_FOR_L\', -- apps.wf_process_activities.activity_name where instance_id= apps.wf_item_activity_statuses.process_activity
null
);
end;
/
Commit;

====================
/*If Work Flow does NOT exist for Order then use the script below .
After running this script run "Workflow Background Process" */

declare
l_return_status VARCHAR2(240);
l_msg_count NUMBER;
l_msg_data VARCHAR2(240);
l_header_id NUMBER := 99999999; --pass the HEADER_ID of the order you want to close
begin
OE_ORDER_CLOSE_UTIL.Close_Order
( p_api_version_number => 1.0
, p_header_id => l_header_id
, x_return_status => l_return_status
, x_msg_count => l_msg_count
, x_msg_data => l_msg_data
);
dbms_output.put_line(\'status = \' l_return_status);
end;
/
Commit;

/* After running this script run "Workflow Background Process" */
**********************************************************************
**********************************************************************
脚本二:你要确保订单行都被关闭了的情况用这个脚本
Select HEADER_ID, OPEN_FLAG, FLOW_STATUS_CODE
from apps.oe_order_lines_all
where org_id=:org_id and header_id =:HEADER_ID; --pass the ORG_ID and HEADER_ID of the order you want to close

update apps.oe_order_headers_all
set open_flag = \'N\' , FLOW_STATUS_CODE= \'CLOSED\'
where org_id=:org_id and header_id =:HEADER_ID; --pass the ORG_ID and HEADER_ID of the order you want to close

Commit;

转载请注明出处:http://blog.csdn.net/pan_tian/article/details/7696961

======EOF======

<!-- Baidu Button BEGIN -->

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/26687597/viewspace-1203796/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: Order&Shipping Transactions Status Summary
下一篇: [Script]List of Scheduled Concurrent Programs
请登录后发表评论 登录
全部评论
暂无介绍

注册时间:2012-02-18

最新文章