Search Results gms_fck




Overview

GMS_FUNDS_CONTROL_PKG is a core PL/SQL package in the Oracle EBS Grants Management (GMS) schema, owned by APPS and validated in releases 12.1.1 and 12.2.2. Its primary business function is to enforce funds control across sponsored awards and projects. Funds control ensures that commitments, obligations, and expenditures charged to a sponsored project do not exceed the authorized budget or award ceiling, and that any resulting over-expenditure is surfaced for review and remediation. The package acts as the operational engine that evaluates transactions originating in Purchasing (PO_BC_DISTRIBUTIONS, PO_DISTRIBUTIONS_ALL) and Payables (AP_INVOICES_ALL, AP_INVOICE_DISTRIBUTIONS_ALL) against GMS budget packets (GMS_BC_PACKETS), returning fund status outcomes that determine whether a transaction proceeds, is deferred, or fails. It also manages the interface between GMS budget data and Oracle General Ledger, and supports tie-back of failed accounting to the appropriate award and account status for follow-up processing.

Key Procedures and Functions

  • GMS_FCK — The central funds-check routine. It evaluates a distribution or transaction against available budget and returns the funds-control outcome (for example, pass, fail, or warning) used by callers to gate further processing.
  • GMS_GL_RETURN_CODE — Returns a status or return code associated with General Ledger processing, translating the result of GL-related activity into a standardized outcome for the calling program.
  • SETUP_RLMI — Performs setup of the RLMI (resource list / matching interface) context used by funds control; it prepares reference data required by the check logic.
  • DELETE_PENDING_TXNS — Removes pending transactions from the funds-control queue, typically invoked after they have been processed, resolved, or invalidated so they are not re-evaluated.
  • SPONSORED_PROJECT — Determines whether a given project (or transaction) qualifies as sponsored, enabling the package to apply sponsored-award-specific funds-control rules.
  • COPY_GL_PKT_TO_GMS_PKT — Copies budget packet data from the General Ledger representation into the GMS budget packet structure (GMS_BC_PACKETS), keeping GMS funds control synchronized with GL budget information.
  • TIEBACK_FAILED_ACCT_STATUS — Reconciles failed accounting lines back to their award and account status, ensuring that funds-control failures are reflected accurately for downstream reporting and correction.

Tables Accessed

The package reads and writes a broad set of Payables, Purchasing, and GMS tables. AP_INVOICES_ALL, AP_INVOICE_DISTRIBUTIONS_ALL, AP_INVOICE_LINES_ALL, AP_PREPAY_APP_DISTS, AP_PREPAY_HISTORY_ALL, AP_SELF_ASSESSED_TAX_DIST, and AP_SELF_ASSESSED_TAX_DIST_ALL supply invoice, distribution, prepayment, and tax data examined during funds checks. PO_BC_DISTRIBUTIONS and PO_DISTRIBUTIONS_ALL provide purchase-order commitment and distribution information. GMS_BC_PACKETS stores the GMS budget packets against which transactions are validated, and it is the target of the COPY_GL_PKT_TO_GMS_PKT routine. AP_SYSTEM_PARAMETERS_ALL, FINANCIALS_SYSTEM_PARAMETERS, and FINANCIALS_SYSTEM_PARAMS_ALL provide system-level configuration that governs funds-control behavior. FND_CONCURRENT_REQUESTS is used to track concurrent program context, such as the request that triggered processing.

Usage Notes

GMS_FUNDS_CONTROL_PKG is not typically invoked directly by end users. It is called by other GMS packages, including GMS_AWARD_DIST_ENG, GMS_BUDGET_BALANCE, GMS_FC_SYS, GMS_PA_API, GMS_PA_COSTING_PKG, and GMS_SWEEPER, which drive budget distribution, costing, and sweeper processing. These callers are in turn triggered from Grants Management forms, concurrent programs (including funds-control check processes and pending-transaction sweepers), and integration points with Payables and Purchasing. Custom code that needs to replicate funds-control validation should call the documented procedures rather than replicate the logic, relying on GMS_FCK for the check itself and on DELETE_PENDING_TXNS and TIEBACK_FAILED_ACCT_STATUS to maintain queue and status integrity. Because the package is classified as OTHER (not a public API), signatures should be treated as internal and referenced through the documented dependent objects.