Search Results get_from_to_bc_balance
Overview
The APPS.GL_BUDGET_TRANSFER_PKG package belongs to the Oracle General Ledger budgeting subsystem and is responsible for the validation and insertion logic behind budget transfer processing. Budget transfers allow an organization to move available funds between two code combinations within the same ledger, budget version, and currency, and this package supplies the balance-lookup primitives that the transfer form and its validation routines depend upon. First created in 1994 by D. J. Ogg and last carried forward with the $Header: glibdxfs.pls 120.4 2005/05/05 banner, the package has remained a stable, low-level component through the 12.1.1 and 12.2.2 releases. It is declared AUTHID CURRENT_USER, so it executes with the privileges of the calling schema rather than the definer, and it exposes a small set of balance-retrieval procedures rather than the full transfer DML itself. The package is documented in ETRM with the API classification OTHER, meaning it is intended primarily for internal, form-driven consumption rather than as a published public API.
Key Procedures and Functions
ETRM documents five procedures in this package. Three are referenced directly by callers performing budget-transfer validation, and the remainder support budgetary-control checking.
- GET_FROM_TO_BALANCE — Returns the indicated balance for both the "from" and the "to" code combinations of a proposed transfer, for the supplied budget version and currency. The balance type argument accepts PTD, QTD, YTD, or PJTD, and the results are returned through the two IN OUT NOCOPY balance parameters. This is the core primitive that lets the transfer form confirm that sufficient funds exist before allowing the move.
- GET_BALANCE — Returns the indicated budget-transfer balance for a single code combination, budget, and currency. It provides the same balance-type flexibility as the from/to variant but restricts the lookup to one code combination.
- GET_FROM_TO_BC_BALANCE — A budgetary-control variant that obtains from/to balances when budgetary control is enabled, drawing on the budgetary-control packet data rather than the summarized balance table alone.
- GET_BC_BALANCE — The single-combination budgetary-control counterpart to
GET_FROM_TO_BC_BALANCE. - GET_POSTED_BALANCE — Retrieves the posted balance figure used to satisfy budget-transfer balance inquiries. Because the ETRM excerpt is truncated at the point where
GET_BALANCEarguments are listed, the exact parameter signature ofGET_POSTED_BALANCEis not reproduced here; its role is to supply the posted (as opposed to encumbered or budgetary-control) balance for a code combination, budget, and currency.
Tables Accessed
The package reads and writes a focused set of General Ledger tables, all accessed through APPS synonyms:
- GL_BALANCES — the primary source of PTD, QTD, YTD, and PJTD balances for the requested code combination, budget version, and currency.
- GL_BC_PACKETS — the budgetary-control packet table consulted by the
GET_BC_BALANCEandGET_FROM_TO_BC_BALANCEprocedures. - GL_BC_PACKET_ARRIVAL_ORDER — used to sequence budgetary-control packets so the correct in-flight balance is returned when control checking is enabled.
- GL_PERIOD_STATUSES — supplies period and ledger status, ensuring balances are only returned for open or otherwise valid accounting periods.
Usage Notes
This package is invoked by the Oracle General Ledger budget transfer form and by the validation logic that precedes posting a transfer, rather than by end users directly. The xbc_enabled_flag argument determines whether the caller takes the plain balance path or the budgetary-control path; when control is enabled, the BC procedures must be used so that pending packets are respected. Custom integrations that need to emulate budget-transfer validation should call GET_FROM_TO_BALANCE for a paired check or GET_BALANCE for a single point of inquiry, passing the ledger, period, budget version, and currency explicitly. ETRM records zero dependent packages, confirming that this is a leaf-level utility with no downstream API footprint; changes to it are therefore low-risk but should still be regression-tested against the budget transfer form.