Search Results okc_class_operations




Overview

The OKC_CLASS_OPERATIONS table is a core reference table within the Oracle E-Business Suite Contracts Core (OKC) module, present in both releases 12.1.1 and 12.2.2. It functions as a control table that defines the permissible business operations for various contract classes. This table holds seeded, or pre-defined, data that establishes the rules governing which actions (operations) can be performed on contracts belonging to a specific class. Its primary role is to enforce business logic and workflow by providing a master list of allowed operations, which is then referenced by the application's process engine and user interface to enable or restrict functionality dynamically.

Key Information Stored

The table's structure is designed to link three key entities: a contract class, an operation, and a process definition. While the full column list is not detailed in the provided metadata, the foreign key relationships explicitly identify the critical columns. The CLS_CODE column stores the code for a contract class, linking to the OKC_CLASSES_B table. The OPN_CODE column stores the code for a specific business operation (e.g., Approve, Amend, Terminate), linking to the OKC_OPERATIONS_B table. The PDF_ID column likely stores an identifier for a process definition, linking to the OKC_PROCESS_DEFS_B table, which may define the workflow or steps for that operation. A primary key column, ID, uniquely identifies each record in this table.

Common Use Cases and Queries

A primary use case is to determine all valid operations for a given contract class, which is essential for rendering action menus or buttons within the application. For instance, a "Sales Order" contract class may allow "Submit" and "Approve" operations, while a "Procurement" class may allow different ones. Development and support teams query this table to troubleshoot why a specific operation is unavailable for a contract or to validate configuration. A typical query would join OKC_CLASS_OPERATIONS to OKC_CLASSES_B and OKC_OPERATIONS_B to get human-readable names.

SELECT clsb.NAME class_name, opb.NAME operation_name
FROM okc_class_operations cop,
     okc_classes_b clsb,
     okc_operations_b opb
WHERE cop.cls_code = clsb.CODE
  AND cop.opn_code = opb.CODE
  AND clsb.CODE = 'SALES_ORDER';

Related Objects

OKC_CLASS_OPERATIONS is centrally connected to several key tables in the Contracts Core schema via documented foreign key relationships.

  • OKC_CLASSES_B: Provides the contract class definition. Joined via OKC_CLASS_OPERATIONS.CLS_CODE = OKC_CLASSES_B.CODE.
  • OKC_OPERATIONS_B: Provides the definition of the business operation. Joined via OKC_CLASS_OPERATIONS.OPN_CODE = OKC_OPERATIONS_B.CODE.
  • OKC_PROCESS_DEFS_B: Likely provides the workflow process linked to the operation. Joined via OKC_CLASS_OPERATIONS.PDF_ID = OKC_PROCESS_DEFS_B.ID.
  • OKC_OPERATION_INSTANCES: This table has a foreign key referencing OKC_CLASS_OPERATIONS (OKC_OPERATION_INSTANCES.COP_ID), indicating it stores runtime instances of the allowed operations defined here.