Search Results delete_all_user_attrs_data




Overview

PA_USER_ATTR_PVT is a private (PVT-classified) PL/SQL package in the Oracle EBS Applications schema (APPS) that supports user-defined attribute functionality within the Oracle Projects (PA) module. It is defined with AUTHID CURRENT_USER, meaning that its SQL statements execute with the privileges of the calling user rather than the definer, which is standard for APIs that perform validation and cleanup operations against project classification data. The package was introduced to provide an interface for removing user attribute records associated with project classifications and project elements. Its header carries a version stamp of 115.2 dated 2003, indicating it is a long-standing component that has been carried forward through the 12.1.1 and 12.2.2 releases.

Key Procedures and Functions

The package exposes two documented procedures:

  • DELETE_USER_ATTRS_DATA — Deletes user attribute data for a targeted classification change. It allows the caller to specify a project, an optional project element, an old classification identifier, an optional new classification identifier, and a classification type. Parameters include controls for commit behavior, validate-only mode, validation level, calling module, and debug mode, with standard API output parameters for return status, message count, and message data.
  • DELETE_ALL_USER_ATTRS_DATA — Deletes all user attribute data associated with a given project and, optionally, a project element. It follows the standard Oracle API parameter convention with api_version, init_msg_list, commit, validate_only, validation_level, calling_module, and debug_mode, plus output parameters for status and messages. The user's search term "delete_all_user_attrs_data" maps directly to this procedure.

Both procedures follow the Oracle Application Object Library (AOOL) API standard, using FND_API constants for the default values of commit, validation, and message initialization flags.

Tables Accessed

The package references the following tables (through APPS synonyms): EGO_OBJ_AG_ASSOCS_B, FND_OBJECTS, PA_CLASS_CATEGORIES, PA_CLASS_CODES, PA_PROJECTS_ALL, PA_PROJECTS_ERP_EXT_B, PA_PROJECTS_ERP_EXT_TL, PA_PROJECT_CLASSES, PA_PROJECT_TYPES, PA_PROJ_ELEMENTS, and DUAL. The classification tables (PA_CLASS_CATEGORIES, PA_CLASS_CODES, PA_PROJECT_CLASSES, PA_PROJECT_TYPES) provide the classification definitions that drive which user attribute records are removed. PA_PROJECTS_ALL supplies the project context, while PA_PROJ_ELEMENTS supports element-level scoping. The ERP extension tables (PA_PROJECTS_ERP_EXT_B/TL) and EGO_OBJ_AG_ASSOCS_B/FND_OBJECTS relate to extensibility and object association metadata used during validation or FK resolution. DUAL is used for control-flow or lightweight validation queries.

Usage Notes

PA_USER_ATTR_PVT is a private package and is not intended for direct external invocation; it is referenced by one other package within the APPS schema. Because it is classified PVT, it should generally be called only through that parent package rather than directly from custom code. The validate_only flag defaults to G_TRUE, so callers must explicitly pass FALSE to perform an actual deletion, and commit defaults to G_FALSE to keep transaction control with the caller. Standard usage occurs during classification changes on projects or project elements, where existing user attribute values must be purged before new classifications are applied. The debug_mode and calling_module parameters support diagnostic tracing and identify the originating UI or process. Custom integrations that need to clear user attribute data should rely on the public parent API rather than invoking this private package directly.