Search Results pref_hierarchy_id




Overview

APPS.HXC_RESOURCE_PERSONAL_PREF_V is a reporting view within the Oracle E-Business Suite (EBS) resource management schema, part of the framework that governs how individual resources — in this case persons — inherit, expose, and edit their personal preferences. In the 12.1.1 and 12.2.2 releases the view serves as the canonical read model for "personal preferences" attached to a resource, resolving the full hierarchy of preference definitions that apply to a given person based on their resource rules and eligibility criteria.

The view is defined over the preference hierarchy model (HXC_PREF_HIERARCHIES and HXC_PREF_DEFINITIONS), the resource rules engine (HXC_RESOURCE_RULES), the EBS user registry (FND_USER), and the HR assignment view (PER_ASSIGNMENTS_F). Its role in EBS reporting and integration is to flatten the otherwise complex relationship between a person's rule-based eligibility and the set of preferences they may view or edit, so that both internal forms and external integrations can retrieve a person's personal preference set with a single query.

Underlying Base Objects

The view is constructed from five principal sources, joined as follows:

  • FND_USER (synonym): provides the login-based identity of the resource. The join condition restricts rules by eligibility_criteria_type = 'LOGIN' and links hrr.eligibility_criteria_id to fu.user_id.
  • HXC_RESOURCE_RULES (synonym): supplies the rule identity, rule_evaluation_order, rule name, resource_type, and the root pref_hierarchy_id for that rule. Only rules with resource_type = 'PERSON' are considered.
  • HXC_PREF_HIERARCHIES (synonym): stores the preference hierarchy nodes. The view walks the hierarchy using a START WITH ... CONNECT BY PRIOR subquery, starting from the rule's root pref_hierarchy_id and descending through parent_pref_hierarchy_id. This is the central mechanism by which the searched attribute pref_hierarchy_id is resolved transitively from a rule to all applicable hierarchy nodes.
  • HXC_PREF_DEFINITIONS (synonym): joined on pref_definition_id, providing pref_definition_id and the preference code used for ordering and identification.
  • PER_ASSIGNMENTS_F (view): joined on fu.employee_id = pa.person_id, providing the person_id used as the primary resource identifier.

The documented dependencies also include HR_GENERAL and HR_SECURITY (packages), which supply security and date-effective person context, and are invoked through the standard HR security model on the person/assignment relationship.

Key Columns

  • PERSON_ID — the person resource identifier derived from PER_ASSIGNMENTS_F; the primary identifier for the returned rows.
  • RULE_EVALUATION_ORDER and rule NAME — indicate which resource rule matched and the sequence in which rules should be evaluated, allowing consumers to resolve precedence.
  • PREF_DEFINITION_ID and CODE — identify the preference definition; CODE is the business key used for ordering (ORDER BY hpd.code).
  • EDIT_ALLOWED and DISPLAYED — flags from the hierarchy node that determine whether the preference may be modified and whether it is presented.
  • NAME — the hierarchy node name, i.e., the display name of the preference.
  • ATTRIBUTE_CATEGORY and ATTRIBUTE1 through ATTRIBUTE30 — the descriptive flexfield (DFF) context and columns, carrying extensibility attributes configured per preference.

Common Use Cases and Queries

The view is typically queried to enumerate a person's effective personal preferences, filter editable preferences, or feed integrations that provision user-facing settings. A representative query is:

  • SELECT person_id, code, name, edit_allowed, displayed FROM apps.hxc_resource_personal_pref_v WHERE person_id = :p_person_id ORDER BY code;
  • Find editable preferences only: SELECT * FROM apps.hxc_resource_personal_pref_v WHERE person_id = :p_person_id AND edit_allowed = 'Y';
  • Reconcile rule precedence: SELECT person_id, rule_evaluation_order, code, name FROM apps.hxc_resource_personal_pref_v WHERE person_id = :p_person_id ORDER BY rule_evaluation_order, code;
  • Inspect extensible attributes: SELECT code, attribute_category, attribute1, attribute2 FROM apps.hxc_resource_personal_pref_v WHERE person_id = :p_person_id;

Because the connectivity is anchored on pref_hierarchy_id, any customization must be aware that the view already resolves the full subtree beneath the rule's root hierarchy; applications should not re-walk the hierarchy themselves but should filter on the flattened result. Queries should generally be constrained by person_id or by the responsible rule to avoid full-scan cost, since the CONNECT BY subquery is evaluated against HXC_PREF_HIERARCHIES for every qualifying rule. The view is read-only by design and is intended for reporting, integration provisioning, and diagnostics rather than transactional updates.