Search Results pa_ci_actions_util




Overview

PA_CI_ACTIONS_UTIL is a utility package body in the Oracle E-Business Suite Projects (PA) module, owned by the APPS schema. It supports the Control Items (CI) and project issue management functionality used to track project-related actions, comments, and their resolution. Control items represent project issues, risks, or change actions that require monitoring, assignment, and follow-up. This package provides the shared helper routines that create, number, retrieve, and validate CI actions, including the logic that determines action ownership, party identity, and hierarchical parent-child relationships between actions. As an "UTIL" classified API, it is not a top-level business interface but rather an internal supporting library invoked by other project packages and by the Control Items forms. The package is documented as VALID in ETRM for both 12.1.1 and 12.2.2, and is referenced by five other packages, indicating it sits near the center of the control items code stack.

Key Procedures and Functions

The ETRM metadata documents eight procedures and functions within this package body:

  • ACTION_WITH_REPLY — Manages a control item action that has an associated reply, coordinating the creation or update of an action together with its reply record in the comments structure.
  • CHECKHZPARTYNAME_OR_ID — Validates a party by name or identifier, typically resolving whether an entered assignee or external party corresponds to a known party before an action is committed.
  • GET_NEXT_CI_ACTION_NUMBER — Generates the next sequential action number used to uniquely identify a control item action.
  • GET_PARTY_ID — Retrieves the party identifier associated with a given name or person, supporting assignment and ownership resolution.
  • GET_CI_OPEN_ACTIONS — Returns the set of open (unresolved) control item actions, used to drive open-action lists and reminders.
  • GET_MY_ACTIONS — Returns actions assigned to the current user, powering personal "my actions" views.
  • CHECK_OPEN_ACTIONS_EXIST — Determines whether any open actions exist for a control item, commonly used as a validation before closing or status changes.
  • GET_TOP_PARENT_ACTION — Walks the action hierarchy to return the top-level parent action, supporting roll-up and threading of related actions.

Tables Accessed

The package operates against five application tables referenced through APPS synonyms:

  • PA_CI_ACTIONS — The primary control item action table; holds action definitions, numbers, status, and hierarchy links read and written by most of the routines.
  • PA_CI_COMMENTS — Stores action comments and replies, used by ACTION_WITH_REPLY and comment retrieval logic.
  • PA_CONTROL_ITEMS — The parent control item record against which actions, open-action checks, and hierarchy roll-ups are evaluated.
  • FND_USER — Supplies the current application user identity, needed for GET_MY_ACTIONS and assignment defaults.
  • PER_ALL_PEOPLE_F — Provides person and party information used by GET_PARTY_ID and CHECKHZPARTYNAME_OR_ID for assignee resolution.

Dependency metadata also confirms reliance on standard EBS utilities including FND_API, FND_MSG_PUB, PA_DEBUG, PA_UTILS, PA_STARTUP, and PA_RESOURCE_UTILS, which supply error handling, message stack management, and resource lookups.

Usage Notes

PA_CI_ACTIONS_UTIL is normally invoked indirectly. The Control Items forms call into the package to populate action blocks, generate action numbers on insert, validate assignees, and check for open actions before allowing status transitions or closure. Concurrent programs and reports that list open or personal actions, or that summarize action hierarchies, rely on GET_CI_OPEN_ACTIONS, GET_MY_ACTIONS, and GET_TOP_PARENT_ACTION. Custom extensions that create or resolve control item actions should call these utilities rather than inserting into PA_CI_ACTIONS directly, so that numbering, validation, and comment linkage remain consistent. Because the package depends on PA_CONTROL_ITEMS and PER_ALL_PEOPLE_F, callers must ensure the correct operating context, and any custom code should handle FND_API error and message propagation. The package is documented as not referenced by any database object, meaning its callers are PL/SQL and forms clients rather than persisted schema objects.