Search Results add_access_helper
Overview
AMV_USER_PVT is a private PL/SQL package body in the APPS schema that implements the user, resource, group, and access-privilege infrastructure for Oracle E-Business Suite's Marketing (AMS) and Territory Management (AMV) modules. The header comment identifies it as the "USER BLOCK API," first created in November 1999 and subsequently maintained through several revisions, including the Territory Privilege Integration changes that extended role-resolution logic. Treated as a private (PVT) package, it exposes no supported public entry points; instead it provides internal business logic consumed by sibling packages and the Marketing user interface. Its responsibilities center on resolving FND/JTF resource roles, managing group membership records, and granting or verifying access to marketing channels, categories, deliverables, and distribution rules. The package also maintains the AMV_U_ACCESS and AMV_U_MY_CHANNELS tables that persist user-level content and channel associations. Because the user searched for "amv_c_channels," it is worth noting that AMV_USER_PVT is one of the documented objects that references the channel tables AMV_C_CHANNELS_B and AMV_C_CHANNELS_TL, specifically in group-deletion logic.
Key Procedures and Functions
The 59 documented program units fall into several functional clusters:
- Resource and role management: GET_RESOURCEID and FIND_RESOURCE resolve individual resources; ADD_RESOURCEROLE, REMOVE_RESOURCEROLE, REPLACE_RESOURCEROLE, GET_RESOURCEROLES, and CHECK_RESOURCEROLE manage the association between resources and the RS_INDIVIDUAL role in JTF_RS_ROLE_RELATIONS.
- Group management: ADD_GROUPROLE, REMOVE_GROUPROLE, REPLACE_GROUPROLE, GET_GROUPROLES, and CHECK_GROUPROLE perform the equivalent operations against the RS_GROUP role. ADD_GROUP and UPDATE_GROUP create and maintain group definitions and their translations.
- Privilege and capability checks: IS_ADMINISTRATOR, CAN_PUBLISHCONTENT, CAN_APPROVECONTENT, CAN_SETUPCHANNEL, CAN_SETUPCATEGORY, and CAN_SETUPDISTRULE return entitlement decisions used by the Marketing UI to enable or disable actions. These functions embody the "Territory Privilege Integration" change noted in the package history, where GET_ROLEIDARRAY and GET_ROLE were modified to support territory-based role resolution.
Private helpers include GET_ROLEID, ADD_ACCESS_HELPER, and UPDATE_ACCESS_HELPER, which centralize access-row maintenance for the public access routines.
Tables Accessed
The package reads and writes APPS synonyms across several application schemas. Marketing content tables include AMV_C_CHANNELS_B, AMV_C_CHANNELS_TL, AMS_DELIVERABLES_ALL_B, AMV_U_ACCESS, AMV_U_ACCESS_S, and AMV_U_MY_CHANNELS; the latter three store access grants, their sequence, and per-user channel subscriptions. Resource and group data reside in JTF_RS_GROUPS_TL, JTF_RS_GROUP_MEMBERS, JTF_RS_GROUP_USAGES, JTF_RS_RESOURCE_EXTNS, and JTF_RS_ROLE_RELATIONS. JTF_RS_ROLES_VL provides role identifiers, DUAL supports scalar lookups, and PLITBLM is used for name-value array handling. The reference to AMV_C_CHANNELS_B and AMV_C_CHANNELS_TL arises because DELETE_GROUP removes dependent channel records when a group is deleted, preserving referential consistency.
Usage Notes
AMV_USER_PVT is invoked indirectly rather than called directly from forms or concurrent programs. It is referenced by eight other packages, which are the supported integration points for Marketing setup, content publication, and channel administration. Customizations should call those public wrappers instead of AMV_USER_PVT, since direct calls to a PVT package are unsupported and may break during patching. The package behaves identically in EBS 12.1.1 and 12.2.2; the file header version (120.1, dated 2005) confirms the implementation predates the 12.2 online-patching model and remains unchanged.