Search Results p_locator_flexsql




Overview

The APPS.INV_INVSRLOC_XMLP_PKG package is the report logic container for the Oracle Inventory locator (subinventory/locator) listing report, internally identified as INVSRLOCS (the source header reference INVSRLOCS.pls confirms this naming). Its business purpose is to support the concurrent program that prints locator information for one or more inventory organizations, including the flexfield definition of each locator and associated quantity precision and control flags.

The package is defined with AUTHID CURRENT_USER, meaning its SQL executes with the privileges of the invoking schema rather than the package owner. It is an XML Publisher (BI Publisher) report package, a standard pattern in Oracle E-Business Suite where Oracle Reports has been replaced by an XML template driven by a PL/SQL package. The package exposes global package variables that carry report parameters and derived values between the various report trigger points, and it defines three Boolean report-trigger functions that the concurrent manager / XML Publisher runtime invokes at specific phases of report execution.

Key Procedures and Functions

  • BEFOREREPORT — The before-report trigger. This function executes before the report data model is processed. In the standard XML Publisher package pattern it is used to initialize report-level globals, derive dependent values, and prepare any data required by the report query. It returns a Boolean indicating success or failure.
  • AFTERREPORT — The after-report trigger, executed once the report output processing has completed. It is normally reserved for cleanup, resetting globals, or finalizing values that must persist after the report run. It returns a Boolean.
  • AFTERPFORM — The after-parameter-form trigger. This function fires after the report parameter form (or its concurrent-program parameter equivalent) has been submitted, giving the package an opportunity to validate or transform user-entered parameter values before report execution proceeds. It returns a Boolean.

No parameter lists are documented for these functions; their purpose is trigger-phase logic rather than reusable API calls.

Tables Accessed

The ETRM metadata records no tables referenced through APPS synonyms for this package. Consistent with its role as an XML Publisher header package, the actual data extraction SQL typically resides in the report data definition or the accompanying query, while the package itself primarily manipulates the parameter and global values (such as P_ORG_ID, P_LOCATOR_FLEXNUM, P_LOCATOR_FLEXSQL, P_QTY_PRECISION, P_TRACE_FLAG, and P_CBO_FLAG) that the report query consumes. No insert, update, or delete activity is implied.

Usage Notes

This package is invoked indirectly: users run the Inventory locator listing concurrent program, and the XML Publisher runtime calls AFTERPFORM, BEFOREREPORT, and AFTERREPORT at the appropriate trigger points. It is not intended for direct invocation from forms or custom code, although a developer may reference its globals when debugging report output. Regarding the user search term p_locator_flexnum: this is the package-level global P_LOCATOR_FLEXNUM NUMBER declared at line 5 of the specification. It holds the flexfield structure number for the inventory locator key flexfield (the MTL_ITEM_LOCATIONS locator flexfield), which drives how locator segments are rendered and concatenated in the report output. Because the package is AUTHID CURRENT_USER and the flexfield number is resolved at runtime, any customization that alters the locator flexfield structure should be validated against this report to confirm correct segment display.

The package was last updated under version 120.1 (2007), indicating it is stable and unchanged across the 12.1.1 and 12.2.2 releases, and no other packages reference it, so its impact surface is limited to the single concurrent report it supports.