Search Results g_attribute15
Overview
ENG_SUB_COMPONENT_UTIL is a utility package in the Oracle E-Business Suite Engineering (ENG) module, owned by the APPS schema and classified as an API utility (UTIL). Its business purpose is to support the maintenance and retrieval of substitute component data within Oracle Bills of Material. Substitute components allow a bill of material to designate alternate items that may be used in place of a primary component during manufacturing, and this package provides the low-level plumbing that the higher-level BOM business objects rely on when reading, validating, and writing rows in the substitute component structure. The package is defined with AUTHID CURRENT_USER, meaning its SQL executes with the privileges of the invoking schema rather than the definer, which is characteristic of EBS utility packages intended to be called from other PL/SQL program units inside the APPS environment.
A distinctive feature of the package is its extensive set of global constants that map attribute names into numeric identifiers used by the underlying record types. These include G_SUBSTITUTE_COMPONENT, G_LAST_UPDATE_DATE, G_CREATED_BY, G_SUBSTITUTE_ITEM_QUANTITY, G_COMPONENT_SEQUENCE, G_ACD_TYPE, G_CHANGE_NOTICE, G_PROGRAM_APPLICATION, and the complete set of descriptive flexfield attributes from G_ATTRIBUTE_CATEGORY through G_ATTRIBUTE15. The user search term "g_attribute15" corresponds directly to line 31 of the package specification, where G_ATTRIBUTE15 CONSTANT NUMBER := 26. G_MAX_ATTR_ID is defined as 31, bounding the attribute identifier range. These constants allow callers to address fields within Bom_Bo_Pub.Sub_Component_Rec_Type positionally without hard-coding ordinal values.
Key Procedures and Functions
ETRM documents four callable units in this package:
- CONVERT_MISS_TO_NULL — A function accepting a substitute component record and returning the same record type, used to normalize missing or placeholder values into NULLs before the record is processed or persisted.
- QUERY_ROW — A procedure that retrieves a single substitute component row keyed by substitute component identifier, component sequence identifier, and ACD type, returning both the exposed sub-component record and the unexposed record along with a return status.
- LOCK_ROW — A procedure that acquires a row-level lock on a substitute component record, used to serialize concurrent modifications during an API transaction.
- PERFORM_WRITES — A procedure that performs the actual insert, update, or delete operations against the underlying substitute component table based on the state of the passed records.
Tables Accessed
The package operates against the BOM_SUBSTITUTE_COMPONENTS table, accessed through an APPS synonym. This is the base table storing substitute component definitions, including the substitute item, quantity, component sequence, ACD type, change notice, and the descriptive flexfield attribute columns that the G_ATTRIBUTE* constants address. The package also references DBMS_OUTPUT, indicating that its write and query logic can emit debug or diagnostic messages when tracing is enabled.
Usage Notes
ENG_SUB_COMPONENT_UTIL is an internal utility rather than a public end-user API. ETRM lists it as referenced by one other package, which is the typical calling pattern: higher-level BOM business object code invokes these procedures to fetch, lock, normalize, and persist substitute component rows on behalf of forms, concurrent programs, or custom extensions. Direct invocation from custom code is possible but discouraged, since the row-locking and write sequencing expectations assume the caller is operating inside the standard BOM transaction flow. Customizations that must manipulate substitute component descriptive flexfield attributes, including those mapped by G_ATTRIBUTE15, should prefer the supported BOM public APIs and treat this utility as an implementation detail.
-
PACKAGE: APPS.ENG_SUB_COMPONENT_UTIL
12.1.1
-
PACKAGE: APPS.MRP_ASSIGNMENT_SET_UTIL
12.1.1
-
PACKAGE: APPS.MRP_ASSIGNMENT_SET_UTIL
12.2.2
-
PACKAGE: APPS.ENG_SUB_COMPONENT_UTIL
12.2.2
-
PACKAGE: APPS.MRP_SHIPPING_ORG_UTIL
12.2.2
-
PACKAGE: APPS.MRP_RECEIVING_ORG_UTIL
12.2.2
-
PACKAGE: APPS.ENG_REF_DESIGNATOR_UTIL
12.1.1
-
PACKAGE: APPS.QP_MODIFIER_LIST_UTIL
12.2.2
-
PACKAGE: APPS.MRP_SOURCING_RULE_UTIL
12.2.2
-
PACKAGE: APPS.MRP_RECEIVING_ORG_UTIL
12.1.1
-
PACKAGE: APPS.MRP_ASSIGNMENT_UTIL
12.2.2
-
PACKAGE: APPS.INV_OPM_ITEM_MIGRATION
12.2.2
-
PACKAGE: APPS.MRP_SOURCING_RULE_UTIL
12.1.1
-
PACKAGE: APPS.MRP_SHIPPING_ORG_UTIL
12.1.1
-
PACKAGE: APPS.INV_OPM_ITEM_MIGRATION
12.1.1
-
PACKAGE: APPS.ENG_REF_DESIGNATOR_UTIL
12.2.2
-
PACKAGE: APPS.ENG_ECO_REVISION_UTIL
12.1.1
-
PACKAGE: APPS.OE_CONTRACT_UTIL
12.2.2
-
PACKAGE: APPS.QP_MODIFIER_LIST_UTIL
12.1.1
-
PACKAGE: APPS.OE_CONTRACT_UTIL
12.1.1
-
PACKAGE: APPS.MRP_ASSIGNMENT_UTIL
12.1.1
-
PACKAGE: APPS.QP_QUALIFIER_RULES_UTIL
12.1.1
-
PACKAGE: APPS.ENG_ECO_REVISION_UTIL
12.2.2
-
PACKAGE: APPS.QP_QUALIFIER_RULES_UTIL
12.2.2
-
PACKAGE: APPS.QP_FORMULA_UTIL
12.1.1
-
PACKAGE: APPS.QP_FORMULA_UTIL
12.2.2
-
PACKAGE: APPS.QP_CURR_LISTS_UTIL
12.1.1
-
PACKAGE: APPS.QP_SSC_UTIL
12.1.1
-
PACKAGE: APPS.QP_CON_UTIL
12.2.2
-
PACKAGE: APPS.QP_SSC_UTIL
12.2.2
-
PACKAGE: APPS.QP_CURR_LISTS_UTIL
12.2.2
-
PACKAGE: APPS.QP_RQT_UTIL
12.1.1
-
PACKAGE: APPS.QP_SOU_UTIL
12.1.1
-
PACKAGE: APPS.QP_FNA_UTIL
12.1.1
-
PACKAGE: APPS.QP_CON_UTIL
12.1.1
-
PACKAGE: APPS.GMI_MOVE_ORDER_HEADER_UTIL
12.1.1
-
PACKAGE: APPS.GMI_MOVE_ORDER_HEADER_UTIL
12.2.2
-
PACKAGE: APPS.INV_TROHDR_UTIL
12.1.1
-
PACKAGE: APPS.QP_PSG_UTIL
12.1.1
-
PACKAGE: APPS.QP_LIMIT_ATTRS_UTIL
12.1.1
-
PACKAGE: APPS.INV_TROHDR_UTIL
12.2.2
-
PACKAGE: APPS.OE_PRICE_LIST_UTIL
12.2.2
-
PACKAGE: APPS.QP_SOU_UTIL
12.2.2
-
PACKAGE: APPS.QP_LIMIT_ATTRS_UTIL
12.2.2
-
PACKAGE: APPS.OE_PRICE_BREAK_UTIL
12.2.2
-
PACKAGE: APPS.OE_PRICE_LIST_UTIL
12.1.1
-
PACKAGE: APPS.QP_QUALIFIERS_UTIL_MOD
12.1.1
-
PACKAGE: APPS.QP_QUALIFIERS_UTIL_MOD
12.2.2
-
PACKAGE: APPS.QP_FNA_UTIL
12.2.2
-
PACKAGE: APPS.QP_PSG_UTIL
12.2.2