Why A Package Is Valid In Database Whilst In Application It Is Found As Invalid?

(Doc ID 2314110.1)

Last updated on OCTOBER 04, 2017

Applies to:

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

Goal

Why a package appears valid in database , whereas in applications, as invalid?

Example:

While sending a Purchase Order for approval, below error can occur in the workflow monitor (so in application front-end) :

Item Type = POAPPRV
Item Key = 178119-249534
User Key =508224

Error Name = -4061
Error Message = ORA-04061: existing state of has been invalidated
ORA-04061: existing state of package body "APPS.PO_AME_WF_PVT" has been invalidated
ORA-04065: not executed, altered or dropped package body "APPS.PO_AME_WF_PVT"
ORA-06508: PL/SQL: could not find program unit being called: "APPS.PO_AME_WF_PVT"
Error Stack =
Wf_Engine_Util.Function_Call(PO_AME_WF_PVT.is_fyi_approver, POAPPRV, 178119-249534, 285310, RUN)

Activity Id = 285310
Activity Label = PARALLEL_APPROVAL_PROCESS:IS_FYI_APPROVER
Result Code = #EXCEPTION

 

While checking for this package in the database, by taking an AppsCheck output for Purchasing module, or running :

SQL>
SELECT owner, object_name, object_type
FROM all_objects
WHERE status = 'INVALID';

and searching after po_ame_wf_pvt.plb, it can be seen as valid.

Solution

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