Search Results bom_explosions_all_s
Overview
APPS.BOM_EXPLODER_PUB is the public PL/SQL package body that implements the Bill of Materials explosion engine within Oracle E-Business Suite releases 12.1.1 and 12.2.2. Its principal function is to resolve a parent assembly into its constituent components by traversing BOM structures, applying effectivity dates, revision controls, component and operation sequence logic, and exclusion rules, and then materialising the result set for downstream consumption. The package is the public wrapper over the internal explosion logic contained in BOMPCEXP and BOMPBXIN, and it serves as the supported interface through which other application modules and custom code request a multi-level or single-level BOM explosion.
The package is owned by APPS and holds a VALID status in the ETRM repository. It is referenced by eight other database objects but does not itself reference any object outside its documented dependency set, which is characteristic of a leaf-level public API that is called rather than extended.
Key Procedures and Functions
The package exposes a set of accessor and control routines that let a caller drive and interrogate an explosion session. The documented entry points include:
- EXPLODER_USEREXIT — the user exit hook that allows custom logic to be injected during the explosion cycle, enabling extensions to alter components or attributes as they are processed.
- GET_TOP_BILL_SEQUENCE_ID and GET_COMP_BILL_SEQ_ID — retrieve the bill sequence identifiers for the top assembly and for individual components, uniquely identifying each structure revision used in the explosion.
- GET_EXPLOSION_DATE, GET_EXPL_END_ITEM_REV, GET_EXPL_END_ITEM_REV_CODE, and GET_EXPL_UNIT_NUMBER — return the effectivity date, end-item revision, revision code, and unit number context applied to the explosion.
- GET_EXPLODE_OPTION and GET_GROUP_ID — expose the explosion mode selected for the session and the group identifier that ties the generated rows together.
- GET_TOP_EFFECTIVITY_CONTROL — returns the effectivity control setting governing how dates are honoured for the top assembly.
- GET_COMPONENT_REVISION, GET_COMPONENT_REVISION_ID, GET_COMPONENT_REVISION_LABEL, GET_REVISION_HIGHDATE, and GET_REVISION_CODE — supply the revision detail associated with individual components.
- GET_COMPONENT_ACCESS_FLAG — indicates whether the current user is permitted to see a given component, reflecting security filtering.
- GET_EGO_USER and GET_CHANGE_POLICY_VAL — resolve the EGO (Engineering) user identity and the applicable change policy value used for revision and lifecycle evaluation.
- APPLY_NEW_EXCLUSION_RULES and SET_REAPPLY_EXCLUSION_FLAG — control the application of exclusion rule definitions and the flag that forces exclusion rules to be reapplied to an existing explosion.
Tables Accessed
The package reads and writes a defined set of BOM and engineering tables, all accessed through APPS synonyms. The central work table is BOM_EXPLOSIONS_ALL and its sequence source BOM_EXPLOSIONS_ALL_S, which store the resolved explosion rows and their identifiers. Structure and component definitions are drawn from BOM_STRUCTURES_B, BOM_COMPONENTS_B, BOM_BILL_OF_MATERIALS, BOM_STRUCTURE_TYPES_B, and BOM_RULES_B. Exclusion behaviour is governed by BOM_EXCLUSION_RULE_DEF, while routing-related output and references come from BOM_OPERATIONAL_ROUTINGS and BOM_OPERATION_SEQUENCES. Parameter and global settings are held in BOM_PARAMETERS and BOM_GLOBALS.
Engineering and revision context is supplied by EGO_MINOR_REVISIONS, EGO_OBJ_TYPE_LIFECYCLES, and BOM_ITEM_ATTACH_CATEGORY_ASSOC, with document linkage through FND_ATTACHED_DOCUMENTS and FND_DOCUMENTS_TL. Standard Oracle foundations such as FND_GLOBAL, FND_PROFILE, FND_MSG_PUB, and DBMS_SQL provide identity, profile, messaging, and dynamic SQL support.
Usage Notes
BOM_EXPLODER_PUB is typically invoked from Oracle Bills of Material forms, from concurrent programs that generate exploded reports, and from custom PL/SQL that requires a programmatic BOM explosion. Callers should first set up the explosion context, execute the explosion, and then use the GET_* functions to interrogate the resulting rows keyed by the group identifier. Because the package writes to BOM_EXPLOSIONS_ALL, callers should manage transaction scope and clean-up of prior group data, and should respect the exclusion and change-policy controls when presenting results to users.
-
SYNONYM: APPS.BOM_EXPLOSIONS_ALL_S
12.1.1
owner:APPS, object_type:SYNONYM, object_name:BOM_EXPLOSIONS_ALL_S, status:VALID,
-
SEQUENCE: BOM.BOM_EXPLOSIONS_ALL_S
12.1.1
owner:BOM, object_type:SEQUENCE, object_name:BOM_EXPLOSIONS_ALL_S, status:VALID,
-
SEQUENCE: BOM.BOM_EXPLOSIONS_ALL_S
12.2.2
owner:BOM, object_type:SEQUENCE, object_name:BOM_EXPLOSIONS_ALL_S, status:VALID,
-
SYNONYM: APPS.BOM_EXPLOSIONS_ALL_S
12.2.2
owner:APPS, object_type:SYNONYM, object_name:BOM_EXPLOSIONS_ALL_S, status:VALID,
-
12.1.1 DBA Data
12.1.1
-
12.2.2 DBA Data
12.2.2
-
12.1.1 DBA Data
12.1.1
-
12.2.2 DBA Data
12.2.2
-
PACKAGE BODY: APPS.BOM_EXPLODER_PUB
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:BOM_EXPLODER_PUB, status:VALID,
-
PACKAGE BODY: APPS.BOM_EXPLODER_PUB
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:BOM_EXPLODER_PUB, status:VALID,
-
12.1.1 DBA Data
12.1.1
-
12.2.2 DBA Data
12.2.2
-
APPS.BOM_EXPLODER_PUB dependencies on BOM_EXPLOSIONS_ALL_S
12.2.2
-
APPS.BOM_EXPLODER_PUB dependencies on BOM_EXPLOSIONS_ALL_S
12.1.1
-
APPS.BOM_EXPLODER_PUB dependencies on BOM_EXPLOSIONS_ALL
12.2.2
-
APPS.BOM_EXPLODER_PUB dependencies on BOM_EXPLOSIONS_ALL
12.1.1
-
PACKAGE BODY: APPS.BOM_EXPLODER_PUB
12.1.1
-
PACKAGE BODY: APPS.BOM_EXPLODER_PUB
12.2.2
-
12.2.2 DBA Data
12.2.2
-
12.1.1 DBA Data
12.1.1