Results for “hr_organization_units”
50+ results
AI-generated from documented ETRM metadata — verify critical details on the linked pages.
Overview
HR_ORGANIZATION_UNITS is a secure, MLS-compliant view owned by the APPS schema within the Oracle Human Resources (PER) product. It is defined over the organization unit entity, presenting organization (business group, legal entity, operating unit, inventory organization, and internal organization) records that are filtered by the Oracle E-Business Suite row-level security model. Unlike the underlying table HR_ALL_ORGANIZATION_UNITS, which contains all organizations across business groups, this view restricts rows based on the runtime security profile of the connected user, exposing only those organizations the user is authorized to see.
Because it enforces the same security predicates applied to the Oracle Forms-based Human Resources application, HR_ORGANIZATION_UNITS is the preferred access path for custom reports, concurrent programs, Oracle Discoverer workbooks, XML Publisher templates, and interfaces that must observe the same access rules as the standard product. It is documented as VALID in ETRM 12.2.2 and is equally applicable to 12.1.1, where the same security architecture is in force.
Underlying Base Objects
The view is defined over two synonyms and two PL/SQL packages. The primary base object is HR_ALL_ORGANIZATION_UNITS (synonym for the physical table), which stores the organization-unit master rows including ORGANIZATION_ID, BUSINESS_GROUP_ID, and the organization's classification-independent attributes. The translated (TL) synonym HR_ALL_ORGANIZATION_UNITS_TL supplies the language-dependent NAME column and is joined on ORGANIZATION_ID with a LANGUAGE predicate constrained by USERENV('LANG'), returning the name in the session's current language.
Row access is enforced by two packages. HR_SECURITY determines which records a user may see: the view returns all rows when HR_SECURITY.VIEW_ALL resolves to 'Y'; otherwise it invokes HR_SECURITY.SHOW_RECORD('HR_ALL_ORGANIZATION_UNITS', HAOTL.ORGANIZATION_ID) and retains only rows for which that function returns 'TRUE'. HR_GENERAL.GET_XBG_PROFILE and HR_GENERAL.GET_BUSINESS_GROUP_ID control business-group scoping, comparing the effective business group against HAO.BUSINESS_GROUP_ID. The join between the base and TL objects is an inner equi-join on ORGANIZATION_ID, so only organizations with a translation in the session language are returned.
Key Columns
- ORGANIZATION_ID — Primary key of the organization unit; joins to HR_ALL_ORGANIZATION_UNITS_TL, HR_ORGANIZATION_UNITS_F, FND_FLEX, and downstream transactional tables.
- BUSINESS_GROUP_ID — Identifies the business group (a special organization) that owns the row; used by the security predicate for cross-business-group filtering.
- NAME — Language-dependent organization name sourced from the TL table.
- DATE_FROM / DATE_TO — Effective dating of the organization-unit record.
- INTERNAL_EXTERNAL_FLAG, INTERNAL_ADDRESS_LINE, TYPE — Organization classification and address attributes.
- LOCATION_ID — Foreign key to HR_LOCATIONS_ALL for the organization's address.
- Attribute columns (ATTRIBUTE1–ATTRIBUTE30) — Descriptive flexfield segments populated by the organization DFF.
Common Use Cases and Queries
The view is typically used wherever a report must list organizations without bypassing security. A frequent pattern retrieves organizations for a given business group together with the language-specific name:
- Listing all accessible organizations:
SELECT organization_id, name, business_group_id FROM hr_organization_units ORDER BY name; - Restricting to a business group:
SELECT organization_id, name FROM hr_organization_units WHERE business_group_id = :p_bg_id; - Driving an LOV or validation query in a concurrent program to confirm user access before referencing an organization.
- Joining to HR_ORGANIZATION_UNITS_F or HR_ALL_ORGANIZATION_UNITS to obtain classification and location detail not exposed directly by the view.
Because the security predicates invoke PL/SQL functions, queries against this view can be costlier than direct table access; where a report is known to run under a profile with full access, the base objects may be used instead. Nevertheless, for compliant, security-aware reporting and integration, HR_ORGANIZATION_UNITS remains the correct and documented access point in both 12.1.1 and 12.2.2.
-
View: HR_ORGANIZATION_UNITS 12.1.1
Secure view based on the corresponding _ALL_ table.
APPS.HR_ORGANIZATION_UNITS·↳ HR_ALL_ORGANIZATION_UNITS·↳ HR_ALL_ORGANIZATION_UNITS_TL·↳ HR_GENERAL·Explore PER module →
-
View: HR_ORGANIZATION_UNITS 12.2.2
Secure view based on the corresponding _ALL_ table.
APPS.HR_ORGANIZATION_UNITS·↳ HR_ALL_ORGANIZATION_UNITS·↳ HR_ALL_ORGANIZATION_UNITS_TL·↳ HR_GENERAL·Explore PER module →