Search Results hr_org_units_no_join




Overview

APPS.HR_ORG_UNITS_NO_JOIN is a security-filtered view owned by the APPS schema and classified under the PER (Human Resources) product family in Oracle E-Business Suite 12.1.1 and 12.2.2. Per the ETRM metadata, its documented purpose is to "support user interface for MLS" (Multi-Language Support). It presents organization unit records from the HR organization hierarchy that the current session is authorized to see, without requiring the caller to explicitly join security or business group logic. Instead, the security predicates and business group scoping are applied internally within the view definition, so any consumer — an OAF page, a concurrent program, or a custom report — inherits row-level HR security automatically.

The view is registered as VALID in ETRM and is not a base table; it is a read-only projection intended for query, not for DML. Because the view text embeds calls to HR security and general utility packages, querying it always evaluates security in the context of the connected user, making it suitable for reporting and integration layers that must respect HR organization access rules.

Underlying Base Objects

The view is defined over three documented base objects:

The WHERE clause applies two DECODE expressions: one returns TRUE when VIEW_ALL is 'Y' or when SHOW_RECORD grants access to a specific ORGANIZATION_ID; the other restricts rows to the appropriate business group based on the XBG profile setting. The net effect is a view that returns only organization units visible to the session and within the correct business group context.

Key Columns

The view exposes the full column set of HR_ALL_ORGANIZATION_UNITS. The most significant include:

Common Use Cases and Queries

This view is typically used whenever a query must return organization units while honoring HR security, particularly in MLS-sensitive user interfaces and ad hoc reporting where direct access to HR_ALL_ORGANIZATION_UNITS would bypass security checks.

Example — list visible organization units for the current session:

  • SELECT organization_id, name, business_group_id, date_from, date_to FROM apps.hr_org_units_no_join ORDER BY name;

Example — retrieve units effective on a given date:

  • SELECT organization_id, name FROM apps.hr_org_units_no_join WHERE TRUNC(SYSDATE) BETWEEN date_from AND NVL(date_to, TRUNC(SYSDATE));

Example — join to other HR data while relying on the view for security scoping:

  • SELECT o.name, o.organization_id FROM apps.hr_org_units_no_join o WHERE o.business_group_id = apps.hr_general.get_business_group_id;

Because the view text embeds HR_SECURITY and HR_GENERAL package calls, results depend on the connected user's security profile and the XBG profile option. Consumers should therefore avoid wrapping the view in ways that defeat its security predicate, and should rely on it rather than querying HR_ALL_ORGANIZATION_UNITS directly when row-level access control is required.