AME: No Approver Found For Purchase Requisition (ERROR - Email address in user define form is different from email address in the employee enter form) (Doc ID 1117369.1)

Last updated on OCTOBER 16, 2016

Applies to:

Oracle Purchasing - Version 12.0.4 and later
Information in this document applies to any platform.
***Checked for relevance on 05-Aug-2013***


Symptoms

When attempting to approve a requisition using the Approval Management Engine (AME), the following error occurs when using core Purchasing.
The issue does not occur in iProcurement when creating the exact same Requisition.

No Approver Found.

Searching further in wfstatus the following can be observed:
- Approval List Routing Using AME/Get Next Approvers Using AME
- COMPLETE
- INVALID_APPROVER

PO_WF_DEBUG shows:

REQAPPRV 372-1389 PO_REQAPPROVAL_INIT1.Ins_actionhist_submit: 02
REQAPPRV 372-1389 Get_Next_Approver: 001
REQAPPRV 372-1389 Get_Next_Approver: 002-372-REQUISITION-PURCHASE
REQAPPRV 372-1389 Get_Next_Approver: 003- getNextApprovers4(). Approvers :1 -- Approval Process Completed :W
REQAPPRV 372-1389 Get_Next_Approver: 004 - l_position_has_valid_approvers :N

Get_Next_Approver contained POR_AME_REQ_WF_PVT which is package POXAMEPB.pls

ARU "POXAMEPB.pls 120.39.12000000.4"

Search "Get_Next_Approver: 003"


l_progress := 'Get_Next_Approver: 003- getNextApprovers4(). Approvers :' || g_next_approvers.count || ' -- Approval Process Completed :' || l_completeYNO ;

if ( g_next_approvers.count > 0 ) then

l_position_has_valid_approvers := position_has_valid_approvers(l_document_id, l_transaction_type) ;

l_progress := 'Get_Next_Approver: 004 - l_position_has_valid_approvers :' || l_position_has_valid_approvers;


l_progress := 'Get_Next_Approver: 005- Approvers after the validation process :' || g_next_approvers.count;


if( g_next_approvers.count = 0 AND 'NO_USERS' = l_position_has_valid_approvers ) then
l_need_to_get_next_approver := TRUE;
end if;

end if;

EXIT WHEN l_need_to_get_next_approver = FALSE;
END LOOP;

-- Check the number of next approvers. If the count is zero, then verify the approval process is completed or not.
if ( g_next_approvers.count > 0 ) then

if( 'N' = l_position_has_valid_approvers ) then
resultout:='COMPLETE:'||'INVALID_APPROVER';
else
resultout:='COMPLETE:'||'VALID_APPROVER';
end if;
return;




The issue can be reproduced at will with the following steps:

1. Create a requisition in core Purchasing
2. Click on "Forward to" and the next approver is defaulted appropriately
3. Submit the requisition for approval
4. A notification informing "No Approver Found" is sent by the system

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