"Unable to save the changes as the corresponding internal Requisition cannot be updated" Error When Cancelling Sales Order Line Generated From Internal Requisition (Doc ID 2061017.1)

Last updated on APRIL 13, 2017

Applies to:

Oracle Purchasing - Version 12.2.4 and later
Information in this document applies to any platform.

Symptoms

On : 12.2.4 version, Trx Changes & Cancellations

When attempting to cancel internal sales order line in Awaiting Shipping status, the following error occurs:

Error:
Unable to save the changes as the corresponding Internal Requisition cannot be updated.


Replication Steps:


1. Create an Internal Requisition with 10 quantity for one item
2. Approve Requisition and Create Internal Order
3. Book internal Order
4. Ship 7 quantities as there's only 7 available
5. Sales Order split lines into 7 and 3 quantities
6. The line with 3 quantity is in Awaiting Shipping status

We are unable to cancel the line on Awaiting Shipping status.
1. Go to Order Management
2. Query the order, and go to line with Awaiting Shipping
3. Cancel Order line with Awaiting Shipping status



Other:
From the trace:

PARSING IN CURSOR #4596498648 len=640 dep=1 uid=44 oct=6 lid=44 tim=14809484785240 hv=3850672402 ad='7000101f9c20b90' sqlid='3d9qnjbks968k'
UPDATE PO_REQ_DISTRIBUTIONS_ALL PRD SET PRD.FUNDS_LIQUIDATED = ( SELECT NVL(PRD.FUNDS_LIQUIDATED,0) + DECODE(TEMP.CLM_DOC_FLAG,'Y', DECODE(:B4 , :B3 ,TEMP.CHANGE_IN_FUNDED_VALUE, :B2 , DECODE(SIGN(TEMP.CHANGE_IN_FUNDED_VALUE+TEMP.ENCUMBERED_AMOUNT), -1,ENCUMBERED_AMOUNT,0 ), 0), 0) FROM PO_ENCUMBRANCE_GT TEMP WHERE TEMP.DISTRIBUTION_ID = PRD.DISTRIBUTION_ID AND TEMP.DISTRIBUTION_TYPE = :B1 ) WHERE PRD.DISTRIBUTION_ID IN ( SELECT MAIN_REQ.DISTRIBUTION_ID FROM PO_ENCUMBRANCE_GT MAIN_REQ WHERE MAIN_REQ.DISTRIBUTION_TYPE = :B1 AND MAIN_REQ.ORIGIN_SEQUENCE_NUM IS NULL AND MAIN_REQ.GL_STATUS_CODE = 'A' AND MAIN_REQ.SEND_TO_GL_FLAG = 'Y' )
END OF STMT
PARSE #4596498648:c=74,e=122,p=0,cr=0,cu=0,mis=0,r=0,dep=1,og=1,plh=2425041069,tim=14809484785239
BINDS #4596498648:
Bind#0
oacdty=01 mxl=32(25) mxlc=00 mal=00 scl=00 pre=00
oacflg=13 fl2=206001 frm=01 csi=871 siz=32 off=0
kxsbbbfp=111cd4360 bln=32 avl=06 flg=09
value="ADJUST"
Bind#1
oacdty=01 mxl=32(30) mxlc=00 mal=00 scl=00 pre=00
oacflg=13 fl2=206001 frm=01 csi=871 siz=32 off=0
kxsbbbfp=1127f8a10 bln=32 avl=09 flg=09
value="UNRESERVE"
Bind#2
oacdty=01 mxl=32(30) mxlc=00 mal=00 scl=00 pre=00
oacflg=13 fl2=206001 frm=01 csi=871 siz=32 off=0
kxsbbbfp=1127f89e0 bln=32 avl=07 flg=09
value="RESERVE"
Bind#3
oacdty=01 mxl=32(25) mxlc=00 mal=00 scl=00 pre=00
oacflg=13 fl2=206001 frm=01 csi=871 siz=32 off=0
kxsbbbfp=1127f8fe0 bln=32 avl=11 flg=09
value="REQUISITION"
Bind#4
oacdty=01 mxl=32(25) mxlc=00 mal=00 scl=00 pre=00
oacflg=13 fl2=206001 frm=01 csi=871 siz=32 off=0
kxsbbbfp=1127f8fe0 bln=32 avl=11 flg=09
value="REQUISITION"
EXEC #4596498648:c=274,e=445,p=0,cr=9,cu=1,mis=0,r=0,dep=1,og=1,plh=2425041069,tim=14809484785764
ERROR #4596498648:err=1427 tim=14809484785780

 

_______________________________________________________________________

 

From the fnd logging -

 

po.plsql.PO_ENCUMBRANCE_POSTPROCESSING.UPDATE_SUCCESSFUL_ROWS.020.DEBUG_TABLE.PO_ENCUMBRANCE_GT.ROW 1 AFiHoAAAWAACHoBAAB.ENCUMBERED_AMOUNT_CHANGE = 0
po.plsql.PO_ENCUMBRANCE_POSTPROCESSING.UPDATE_SUCCESSFUL_ROWS.020.EXCEPTION 4 ;SQLERRM = ORA-01427: single-row subquery returns more than one row
po.plsql.PO_ENCUMBRANCE_POSTPROCESSING.UPDATE_DOCUMENT_ENCUMBRANCE.010.EXCEPTION 4 ;SQLERRM = ORA-01427: single-row subquery returns more than one row
po.plsql.PO_DOCUMENT_FUNDS_PVT.DO_ACTION.810.EXCEPTION 4 ;SQLERRM = ORA-01427: single-row subquery returns more than one row
po.plsql.PO_DOCUMENT_FUNDS_PVT.DO_ACTION.810.EXCEPTION 4 ;SQLERRM = ORA-01427: single-row subquery returns more than one row
po.plsql.PO_ENCUMBRANCE_POSTPROCESSING.CREATE_EXCEPTION_REPORT.BEGIN 2 Start of subprogram.
po.plsql.PO_ENCUMBRANCE_POSTPROCESSING.CREATE_EXCEPTION_REPORT.000 1 p_message_text is null
po.plsql.PO_ENCUMBRANCE_POSTPROCESSING.CREATE_EXCEPTION_REPORT.000 1 p_user_id = 4210

po.plsql.PO_DOCUMENT_FUNDS_PVT.DO_ADJUST.100.EXCEPTION 4 OTHERS Start;SQLERRM = User-Defined Exception
po.plsql.PO_DOCUMENT_FUNDS_PVT.HANDLE_EXCEPTION.BEGIN 2 Start of subprogram.
po.plsql.PO_DOCUMENT_FUNDS_PVT.HANDLE_EXCEPTION.010 1 p_api_name = DO_ADJUST
po.plsql.PO_DOCUMENT_FUNDS_PVT.HANDLE_EXCEPTION.010 1 p_progress = 100

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms