Search Results oe_line_security




Overview

OE_LINE_SECURITY is a PL/SQL package body in the APPS schema that implements Oracle Order Management's line-level security model. Its core business purpose is to evaluate whether the current user is authorized to view, modify, or transact against a specific order line, based on attributes of that line and on the security rules configured for the operating unit and responsibility. In Oracle EBS 12.1.1 and 12.2.2, this package is invoked widely across Order Management, since access control must be enforced consistently whenever order lines are queried or updated. It is classified in the ETRM documentation as an "OTHER" API rather than a public or private user API, confirming that it is an internal utility consumed by Oracle's own forms, concurrent programs, and business logic rather than a supported integration point. The package is heavily depended upon: the documentation records that it is referenced by 234 other database objects, establishing it as a foundational component of order-line processing. It is not itself referenced by any reverse-dependent object, so it sits near the base of the Order Management dependency hierarchy.

Key Procedures and Functions

The documented interface exposes 133 procedures and functions. Because the ETRM metadata records names only, the descriptions below reflect their evident role within line security without asserting parameter signatures.

  • Attribute accessors (ATTRIBUTE1 through ATTRIBUTE20): These functions retrieve the value of the corresponding descriptive flexfield or attribute column on the secured order line, allowing security rules to key on customer, region, product, or other configurable criteria.
  • Line attribute functions: ACCOUNTING_RULE and ACCOUNTING_RULE_DURATION expose the accounting rule and its duration for the line; COMMITMENT_ID exposes the commitment reference; AGREEMENT exposes the agreement reference; CALCULATE_PRICE_FLAG indicates whether pricing should be recalculated; and AUTHORIZED_TO_SHIP indicates shipping authorization. These allow security predicates to be expressed in terms of order-line business attributes rather than only user identity.

Collectively these accessors supply the attribute values that security rules compare against, isolating the rule engine from the physical layout of OE_ORDER_LINES.

Tables Accessed

  • OE_ORDER_LINES: The primary source of line-level data. The package reads order line attributes, flags, and context values to evaluate security conditions.
  • OE_PC_CONSTRAINTS: Stores the processing constraint definitions used to derive security-relevant rules, including the constraints that govern which lines a user may act upon.
  • PLITBLM: The standard Oracle Forms PL/SQL table, used to carry in-memory result sets or identifier lists within the package's forms-driven invocation paths.

These tables are reached through APPS synonyms, consistent with the package's placement in the APPS schema. Dependencies also reference OE_ORDER_PUB, OE_LINE_UTIL_EXT, OE_SALES_CAN_UTIL, and OE_GLOBALS, indicating that line security is evaluated cooperatively with the public order API and Order Management's global state.

Usage Notes

OE_LINE_SECURITY is invoked automatically rather than called directly by end users. The Order Management order-entry forms call it whenever lines are queried or manipulated, ensuring that unauthorized lines are filtered from the user's view and blocked from update. Concurrent programs that process orders—picking, shipping, invoicing, and acknowledgment generation—rely on the same security evaluation so that batch processing honors the same restrictions as interactive use. Oracle's internal packages (OE_ORDER_PUB, OE_ACKNOWLEDGMENT_PUB, and others listed in the dependency metadata) call it to enforce line visibility during API operations. Because the package is not documented as a public API, customizations should not invoke it directly; instead, custom code should respect Order Management's supported APIs and the security configuration established through setup. Developers troubleshooting unexpected line visibility should examine the security rules stored in OE_PC_CONSTRAINTS and the profile options read via FND_PROFILE, as those drive the evaluations performed here.