Search Results encumbered_flag




Overview

APPS.PO_FUNDS_CHECKER is a private PL/SQL package body within the Oracle Purchasing (PO) module that implements budgetary funds checking and encumbrance processing for purchasing documents. The package drives the Funds Checker engine used to validate whether sufficient funds and budget authority exist before a purchasing document — a requisition, purchase order, or release — is approved or reserved against a set of books. It supports online funds checking executed from the Purchasing forms as well as concurrent, batch funds check processing through the Funds Checker queue.

The package body maintains a substantial set of private global variables that describe the runtime context of a funds check: the set of books (g_sobid), PO mode (g_pomode), funds check mode and level (g_fcmode, g_fclevel), partial reservation flag (g_partial_resv_flag), document type and subtype (g_doctyp, g_docsubtyp), and the hierarchy identifiers used to scope the check — header ID, line ID, shipment ID, and distribution ID. It also tracks the action, packet ID, override period, recreate-demand flag, and user/login context. Because funds checking can be executed interactively or submitted for concurrent processing, the g_conc_flag governs the execution path. The internal initializer po_fc_init and selector functions such as po_fc_sel, po_fc_selreq, po_fc_selpo, po_fc_selblnkrel, and po_fc_selschrel build the appropriate cursor for the document being validated.

Key Procedures and Functions

  • PO_FUNDS_CONTROL — The primary entry point that orchestrates a funds check request. It establishes the funds check mode and level, resolves the set of books and document context, and determines whether the check is performed online or queued for concurrent processing.
  • PO_FC_OK — Returns the outcome of the funds check, allowing the calling form or program to determine whether funds are available and whether processing may proceed to approval or reservation.
  • PO_FC_INS — Inserts a funds check request into the Funds Checker queue, enabling deferred or concurrent processing of the check rather than an immediate online validation.
  • PO_FC_LEVEL — Resolves and applies the funds check level, governing the granularity at which budget validation is performed for the document.
  • GET_DEBUG — Returns the accumulated debug information string (g_dbug) captured during a funds check, supporting diagnosis and troubleshooting of funds checking behavior.

Tables Accessed

  • GL_BC_PACKETS / GL_BC_PACKETS_S — The Funds Checker packet tables that carry budget checking requests through the General Ledger budgetary control engine; the package reads packet IDs and inserts queue entries.
  • PO_DISTRIBUTIONS — Distribution-level accounting detail where funds checking is applied and reservation/encumbrance outcomes are recorded.
  • PO_LINES and PO_LINE_LOCATIONS — Source document lines and shipments that scope the funds check to the appropriate purchasing line and schedule.
  • PO_REQUISITION_LINES and PO_REQ_DISTRIBUTIONS — Requisition line and distribution data when funds checking requisitions.
  • FINANCIALS_SYSTEM_PARAMETERS — Supplies the set of books identifier and related financials configuration.
  • FND_CURRENCIES — Currency definitions used in converting and validating amounts.
  • PO_ONLINE_REPORT_TEXT / PO_ONLINE_REPORT_TEXT_S — Storage for online funds check report output and messages.
  • DBMS_SQL and DUAL — Dynamic SQL execution, including the insert statement (g_sql_insert) used to queue funds check requests, and single-row utility lookups.

In the context of the user's search for encumbered_flag, this package is central: the encumbered flag reflects whether a distribution has been successfully reserved against budget, and PO_FUNDS_CHECKER is the component that determines and sets that outcome through the funds check and reservation process.

Usage Notes

PO_FUNDS_CHECKER is typically invoked by the Purchasing forms and related approval workflows during document submission and approval, and by concurrent programs that process the Funds Checker queue. Because it is an internal package body with no documented public API classification, it should not be called directly from custom code; the supported integration point is the Purchasing funds check and approval process. Customers extending funds checking should work through the General Ledger budgetary control and Purchasing funds check configuration rather than invoking these procedures directly. The GET_DEBUG function is useful when diagnosing why a document was not encumbered or why a funds check failed.