赛车

销售订单单行状态不对订单不关闭的处理

2019-09-13 20:30:28来源:励志吧0次阅读

销售订单行booked后,挑库到待发库,突然决定不再发货,对订单行作backordered,但是订单行的状态没有变为cancle,仍然是picked,导致整个订单无法关闭!

具体操作步骤:

### Steps to Reproduce ###

1)om/order organizer /new sale order i create an sale order ,entry order line ordered item:C.BT.250-100G-2.8.J

02 qty: is 11

2) om/ship transaction/pick release reserved 11.and transer to satged subinventory 'DFK'.

3) later,i don't want to ship it to custmer, in ship transaction form, i do backordered,delivery is clos

ed,but order line status is

picked, in ship transaction form, query it ,line pick status is staged, reserved is not released.

Souliton:

Dwon the script from Metalink

REM $Header: single.sql 115.0 2000/06/15 01:55:37 ysinha noship $

WHENEVER SQLERROR EXIT FAILURE ROLLBACK;

set ver off

set feed off

set serveroutput on size 500000

Prompt

accept order_line_id number prompt 'Enter LINE_ID of the Line to Cancel : '

spool &order_line_id

col dtime format a25 heading 'Script run at Date/Time' ;

select to_char(sysdate, 'DD-MON-YYYY HH:MI:SS') dtime from dual;

Declare

l_line_id  number := &order_line_id;

l_user_id  number;

l_resp_id  number;

l_resp_appl_id number;

l_wf_exists varchar2(1) := 'Y';

Begin

update oe_order_lines_all

set  ordered_quantity  = 0

,   cancelled_quantity = nvl(cancelled_quantity, 0) + ordered_quantity

,   cancelled_flag   = 'Y'

,   open_flag     = 'N'

,   flow_status_code  = 'CANCELLED'

,   last_updated_by  = -2564702

,   last_update_date  = sysdate

where line_id      = l_line_id;

Begin

select number_value

into  l_user_id

from  wf_item_attribute_values

where item_type = 'OEOL'

and  item_key = to_char(l_line_id)

and  name   = 'USER_ID';

select number_value

into  l_resp_id

from  wf_item_attribute_values

where item_type = 'OEOL'

and  item_key = to_char(l_line_id)

and  name   = 'RESPONSIBILITY_ID';

select number_value

into  l_resp_appl_id

from  wf_item_attribute_values

where item_type = 'OEOL'

and  item_key = to_char(l_line_id)

and  name   = 'APPLICATION_ID';

Exception

When No_Data_Found Then

l_wf_exists := 'N';

End;

If l_wf_exists = 'Y' Then

fnd_global.apps_initialize(l_user_id, l_resp_id, l_resp_appl_id);

wf_engine.handleerror( OE_Globals.G_WFI_LIN

, to_char(l_line_id)

, 'CLOSE_LINE'

, 'RETRY'

, 'CANCEL'

);

End If;

update wsh_delivery_assignments

set  delivery_id        = null

,   parent_delivery_detail_id = null

,   last_updated_by      = -2564702

,   last_update_date     = sysdate

where delivery_detail_id    in

(select wdd.delivery_detail_id

from  wsh_delivery_details wdd, oe_order_lines_all oel

where wdd.source_line_id  = l_line_id

and  wdd.source_code   = 'OE'

and  oel.open_flag    = 'N'

and  oel.shipped_quantity is null

and  oel.ordered_quantity = 0

and  released_status   <> 'D');

update wsh_delivery_details

set  released_status    = 'D'

,   src_requested_quantity = 0

,   requested_quantity   = 0

,   shipped_quantity    = 0

,   cycle_count_quantity  = 0

,   cancelled_quantity   = decode(requested_quantity,0,cancelled_quantity,requested_quantity)

,   subinventory      = null

,   locator_id       = null

,   lot_number       = null

,   serial_number     = null

,   revision        = null

,   ship_set_id      = null

,   inv_interfaced_flag  = 'X'

,   oe_interfaced_flag   = 'X'

,   last_updated_by    = -2564702

,   last_update_date    = sysdate

where delivery_detail_id    in

(select wdd.delivery_detail_id

from  wsh_delivery_details wdd, oe_order_lines_all oel

where wdd.source_line_id  = l_line_id

and  wdd.source_code   = 'OE'

and  oel.open_flag    = 'N'

and  oel.shipped_quantity is null

and  oel.ordered_quantity = 0

and  released_status   <> 'D');

Exception

when others then

rollback;

dbms_output.put_line(substr(sqlerrm, 1, 240));

End;

/

Prompt

Prompt ===========================================================

Prompt You must enter COMMIT to Save changes or ROLLBACK to Revert

Prompt ===========================================================

spool off

……………………………………………………………………………………

$ sqlplus apps/apps @single.sql

SQL*Plus: Release 8.0.6.0.0 - Production on Sat Aug 13 11:11:04 2005

(c) Copyright 1999 Oracle Corporation. All rights reserved.

Connected to:

Oracle8i Enterprise Edition Release 8.1.7.4.0 - Production

With the Partitioning option

JServer Release 8.1.7.4.0 - Production

Enter LINE_ID of the Line to Cancel : 858580

Script run at Date/Time

-------------------------

13-AUG-2005 11:33:00

===========================================================

You must enter COMMIT to Save changes or ROLLBACK to Revert

===========================================================

SQL> commit;

SQL>

<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-hansi-font-family: 'Times New Roman'; mso-bidi-f 查看本文来源

丁桂薏芽健脾凝胶价格
薏芽健脾凝胶作用
儿童发烧
宝宝低烧怎么办
分享到: