Search Results bom_implosion_temp_s




Overview

BOM_BOMRWUIT_XMLP_PKG is the PL/SQL package body that backs the Oracle EBS "Bill of Material Indented / Implosion Report" concurrent program, an XML Publisher (BI Publisher) report registered under the Oracle Bills of Material module. Its central business function is to drive an indented BOM implosion: given a specific item, an item range, or a category range, the package walks the bill structure downward or upward and materializes the exploded/imploded hierarchy into a temporary table that the XML Publisher template subsequently renders. The suffix _XMLP_PKG indicates the package was generated by the Oracle XML Publisher report-builder utility and is bound to a report definition, while the internal naming (BOMRWUIT) refers to the Bill of Material report with item-level reporting. The package is owned by APPS and classified as an OTHER API in the ETRM 12.2.2 metadata, meaning it is a report-support package rather than an externally callable business API.

Key Procedures and Functions

  • BEFOREREPORT — Executes prior to report rendering. It captures the concurrent request ID, validates the report parameter combination (raising an error when a specific item is required but missing), resolves profile values such as quantity precision, allocates a sequence ID from the implosion temporary-table sequence, and resolves the item number from the flexfield view when a single-item report is requested.
  • AFTERREPORT — Cleanup hook invoked once rendering completes, used to remove temporary data associated with the run.
  • GET_STATUS — Returns the processing status of the implosion routine, allowing the report to detect failure conditions.
  • GET_ORGCODE — Resolves and returns the organization code for the operating unit / inventory organization in context.
  • CF_ALL_ORGSFORMULA — A formula column function supporting the "all organizations" reporting option, driving multi-organization output.
  • GET_PRECISION — Supplies the quantity precision used to format numeric columns in the report output.
  • IMPLODER_USEREXIT — The user-exit entry point that invokes the BOM implosion engine against the supplied parameters.
  • IMPLOSION — The core routine that performs the actual bill explosion/implosion and populates the temporary working table.
  • SL_IMPLODER / ML_IMPLODER — Single-level and multi-level imploder variants respectively, controlling the depth of the bill traversal.

Tables Accessed

The package reads and writes temporary implosion data through BOM_IMPLOSION_TEMP and its sequence holder BOM_IMPLOSION_TEMP_S. Structural and descriptive data is sourced from ENG_REVISED_ITEMS (effective bill revisions), MTL_PARAMETERS (organization defaults), and FND_ID_FLEX_STRUCTURES (key flexfield structure definitions). The view MTL_ITEM_FLEXFIELDS — directly relevant to the item_flexfields search — is used in BEFOREREPORT to translate a numeric ITEM_ID into a displayable ITEM_NUMBER for the specific-item report option. DUAL is used for sequence and scalar lookups, and DBMS_SQL with the PLITBLM package supports dynamic SQL and PL/SQL table manipulation during implosion.

Usage Notes

This package is not intended for direct invocation by custom code. It is executed exclusively by the Oracle Bills of Material concurrent program "Bill of Material Indented Report" (XML Publisher version). The report parameters it consumes include report option (specific item versus range), item from/to, category from/to, organization, bill type (BOM versus ENG), and level of implosion. Because it is a generated XMLP support package, it should be modified only through the Oracle report definition tools, and any customization should be treated as a patch-sensitive change. Reports referencing ITEM_FLEXFIELDS are resolved through the MTL_ITEM_FLEXFIELDS view, which applies the item key flexfield structure configured for the inventory organization; if the flexfield structure is altered, report output for the specific-item option will reflect the new segment mapping automatically.