APXXXEER ORA-01422 Exact Fetch Returns More Than Req Num Of Rows In UpdateAccountValues (Doc ID 357727.1)

Last updated on JANUARY 28, 2016

Applies to:

Oracle Internet Expenses - Version 11.5.10.0 to 11.10.5.2 [Release 11.5 to 11]
Information in this document applies to any platform.
APXXXEER.FMB - XpenseXpress (aka Expense Report form, Payables)
Audit
ORA-01422 Exact Fetch Returns More Than Req Num Of Rows

Symptoms

On 11i.OIE.J.2 in Production:
When attempting to approve an expense report in the Payables Expense Report form (APXXXEER) the following error occurs:

ERROR
APP-SQLAP-10000: ORA-20001:
ORA-01422: exact fetch returns more than requested number of rows occured in
updateAccountValues

-- Steps To Reproduce:
The issue can be reproduced at will with the following steps:

1. In Internet Expenses, enter an expense report , leave the cost center default  alue on the General Information page.
2. Enter an expense report line, enter date, expense type, amount and save - do NOT add project/task info.
3.  At this stage in SQLPlus, there will be no data in ap_exp_report_dists_all for this report_header_id
4. Close the expense report.
5. Update the expense report, on the expense report line add the project and task information
6. Submit the expense report.  The APEXP workflow's server side validation node calls the autoaccounting package.
7.  Note at this stage there are two rows in ap_exp_report_dists_all for this report_header_id.
      The first has org_id, NULL code_combination_id and the cost center in the segment values -- this was the problem row.
      The second has NULL org_id , valid code_combination_id and segment values.
8.  Query the expense report report in the Payables Expense Report form (APXXXEER) and attempt to approve it.  Receive the error ORA-01422: exact fetch returns more than requested number of rows occured in updateAccountValues.

When the AP review check box is checked and the record is saved, because there are several pieces of code that are expecting only one row in AP_EXP_REPORT_DISTS_ALL for each expense report line, this causes the error.




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