Search Results po_control_functions_u2




Overview

PO.PO_CONTROL_FUNCTIONS is a seed data table in the Oracle Purchasing (PO) schema that defines the control functions governing actions that can be performed against purchasing document types. In Oracle EBS 12.1.1 and 12.2.2, Oracle Purchasing consults this table to determine which document actions are permitted and, by extension, to restrict which users may perform specific actions on a given document. Each row represents one combination of document type (and optional subtype) and action, making the table a configuration authority for document-level security and workflow behavior.

The table resides in the APPS_TS_SEED tablespace, consistent with its role as seeded configuration data shipped by the application and maintained through patching or controlled setup. From a Data Vault modeling perspective, the heuristic classification for this object is hub-leaning: CONTROL_FUNCTION_ID is a stable, unique business key that anchors dependent relationships — most notably PO_POSITION_CONTROLS_ALL, which references it via a foreign key. This suggests the entity functions as a reference hub for downstream control assignments, though the presence of descriptive columns such as CONTROL_FUNCTION_NAME, ENABLED_FLAG, and DOCUMENT_TYPE_CODE also gives it satellite-like attributes.

Key Information Stored

The documented schema of PO_CONTROL_FUNCTIONS contains 34 columns. The most significant include:

  • CONTROL_FUNCTION_ID — Numeric surrogate primary key (PO_CONTROL_FUNCTIONS_PK) uniquely identifying each control function row.
  • CONTROL_FUNCTION_NAME — VARCHAR2(80) name of the control function; a business-key candidate via unique index PO_CONTROL_FUNCTIONS_U2 alongside ORG_ID and ZD_EDITION_NAME.
  • ACTION_TYPE_CODE — VARCHAR2(25) identifying the type of document action controlled; part of unique index PO_CONTROL_FUNCTIONS_U3 with DOCUMENT_TYPE_CODE, DOCUMENT_SUBTYPE, and ZD_EDITION_NAME.
  • DOCUMENT_TYPE_CODE — The purchasing document type to which the action applies (for example, purchase order or requisition).
  • DOCUMENT_SUBTYPE — Optional further qualification of the document type.
  • ENABLED_FLAG — Indicates whether the control function is currently active.
  • DESCRIPTION — Descriptive text explaining the control function's purpose.
  • ORG_ID — Operating unit identifier supporting multi-org partitioning; part of the U2 business-key index.
  • ZD_EDITION_NAME — Editioning column present in the 12.2 online patching architecture; included in all three unique indexes.
  • Standard WHO columnsCREATED_BY, CREATION_DATE, LAST_UPDATED_BY, LAST_UPDATE_DATE, and LAST_UPDATE_LOGIN for audit tracking.
  • Concurrent program columnsREQUEST_ID, PROGRAM_APPLICATION_ID, PROGRAM_ID, and PROGRAM_UPDATE_DATE recording the last program to modify the row.
  • ATTRIBUTE1 through ATTRIBUTE15 and ATTRIBUTE_CATEGORY — Flexfield descriptor columns for extensibility.

The surrogate key (CONTROL_FUNCTION_ID) is distinct from the business-key candidates captured by the unique indexes. PO_CONTROL_FUNCTIONS_U2 enforces uniqueness on CONTROL_FUNCTION_NAME, ORG_ID, and ZD_EDITION_NAME, while PO_CONTROL_FUNCTIONS_U3 enforces uniqueness on the action/document combination.

Common Use Cases and Queries

Typical usage centers on determining which actions are enabled for a document type and which control functions are assigned to positions. A common query lists enabled control functions for a given document type:

  • SELECT control_function_id, control_function_name, action_type_code FROM po.po_control_functions WHERE document_type_code = :doc_type AND enabled_flag = 'Y' AND org_id = :org_id;
  • Joining to PO_POSITION_CONTROLS_ALL to identify which positions hold which control functions, supporting security audits.
  • Reporting on disabled control functions to verify configuration after an upgrade or localization patch.
  • Resolving a control function name from an ID encountered during troubleshooting of purchasing document authorization failures.

Related Objects

  • PO_POSITION_CONTROLS_ALL — References PO_CONTROL_FUNCTIONS.CONTROL_FUNCTION_ID via foreign key; assigns control functions to purchasing positions.
  • FND_USER — Referenced by CREATED_BY and LAST_UPDATED_BY for audit attribution.
  • FND_LOGINS — Referenced by LAST_UPDATE_LOGIN.
  • FND_CONCURRENT_REQUESTS — Referenced by REQUEST_ID to identify the concurrent program that last modified a row.
  • PO_DOCUMENT_TYPES_ALL — Supplies DOCUMENT_TYPE_CODE values that classify controlled actions.
  • PO_ACTION_HISTORY — Records actions performed against purchasing documents, which are governed by these control functions.