Search Results bom_comp_operation_util




Overview

The APPS.BOM_COMP_OPERATION_UTIL package is a utility API within the Oracle E-Business Suite Bills of Material module. Its role is to provide shared, reusable logic for querying and maintaining the relationship between a bill component and the routing operations to which that component is assigned. In Oracle Bills of Material, a component on a bill can be tied to one or more operations on the associated routing, and the intersection of these two entities — the component-operation assignment — is stored separately from the component definition itself. This package encapsulates the read and write handling for that intersection, shielding callers from the multi-table mechanics required to keep component rows and their operation assignments consistent.

The package header identifies the source file as BOMUCOPS.pls, with an initial creation date of 21-AUG-2001. It is declared AUTHID CURRENT_USER, meaning it executes with the privileges of the calling session rather than the definer, which is standard for Oracle EBS APIs that rely on APPS synonyms and invoker-rights resolution. The API classification in the ETRM metadata is UTIL, confirming that the package is not a public business-facing interface but a supporting utility consumed by other EBS components. Two other packages reference it, indicating that the component-operation write and query logic is deliberately factored into a single place.

Key Procedures and Functions

The metadata documents three callable units:

  • QUERY_ROW — A procedure that retrieves a component-operation record by component sequence identifier and additional operation sequence number. It returns the populated component-operations record and an accompanying "unexpected" record structure, along with a return status. This is the standard read path for a single component-operation assignment.
  • COMMON_COMPSEQIDCO — A function that derives or resolves a component sequence identifier, returning a numeric value for a supplied component sequence ID. The metadata notes it was added under Bug 7713832, indicating it was introduced to centralize a previously duplicated sequence-ID lookup or normalization step. Given the user's search term "common_compseqidco," this function is the specific entry point of interest.
  • PERFORM_WRITES — A procedure that persists component-operation changes. It accepts populated component-operations and unexpected records, returns a message-token table for error reporting, and sets a return status. This is the write counterpart to QUERY_ROW and is the mechanism by which assignments are created, updated, or deleted.

Parameter lists are intentionally not reproduced here; the documented signatures show that QUERY_ROW and PERFORM_WRITES operate on the BOM_BO_PUB record types, while COMMON_COMPSEQIDCO operates on a numeric component sequence ID.

Tables Accessed

The package reads and writes the following tables through APPS synonyms:

  • BOM_COMPONENTS_B — The base component table holding bill component definitions, including the component sequence ID used as the key by COMMON_COMPSEQIDCO and QUERY_ROW.
  • BOM_COMPONENT_OPERATIONS — The component-operation assignment table linking components to routing operations.
  • BOM_COMPONENT_OPERATIONS_S — The corresponding sequence (or secondary) table used by the API framework, typically for identifying columns and concurrency handling during DML.

These tables are accessed to resolve the component sequence identifier, fetch the assignment record, and commit changes during PERFORM_WRITES.

Usage Notes

As a UTIL-class package, BOM_COMP_OPERATION_UTIL is not typically invoked directly by end users. It is called by other EBS packages — the metadata records two referencing packages — and by the Bills of Material forms and concurrent programs that manage component-operation assignments. Customizations and extensions that need to query or persist component-operation relationships should call QUERY_ROW and PERFORM_WRITES rather than issuing direct DML, to preserve the standard error-handling and record-structure conventions. COMMON_COMPSEQIDCO is best treated as a resolution helper when a component sequence identifier must be normalized before a query or write. Callers should honor the returned status and message-token outputs, since the API reports validation and database errors through those channels rather than raising exceptions.