Search Results oki_disco_util_pub
Overview
The APPS.OKI_DISCO_UTIL_PUB package is a public utility package within the Oracle E-Business Suite (EBS) Service Contracts (OKI/OKC) module. In Oracle EBS 12.1.1 and 12.2.2, the OKI schema family supports the Service Contracts and subscription-based revenue functionality that underpins contract authoring, billing, and revenue recognition.
The suffix _PUB identifies this package as a public API layer within the EBS naming convention: the _PUB package exposes the endorsed, supported entry points, while the corresponding private package (OKI_DISCO_UTIL_PVT) contains the underlying implementation logic. This wrapper pattern isolates callers from internal routines and allows Oracle to modify implementation details without breaking supported invocations.
Functionally, OKI_DISCO_UTIL_PUB provides utility calculations for contract line "disco" (discount, distribution, and contract accounting) processing — specifically date, period, quantity-of-periods, and revenue amount computation used by the Service Contracts revenue engine. The ETRM metadata records the object as VALID in the APPS schema.
Key Procedures and Functions
ETRM documents eight procedures/functions in this package. Each assumes a distinct calculation role in contract revenue processing:
- GET_NUM_PERIODS — Returns the number of accounting or billing periods between two dates, used to establish the span of a contract line for revenue spreading.
- GET_ORDER_NUMBER — Retrieves an order number associated with a contract line or source transaction, supporting linkage between the contract and its originating order.
- GET_PERIOD — Returns the period (typically a period name or identifier) corresponding to a given date, aligning transactions to the correct accounting period.
- GET_DURATION — Calculates a duration, generally in days or months, for the specified contract or line interval.
- GET_END_DATE — Derives the end date of a contract, line, or period based on a start date and a duration or number of periods.
- GET_ANNUALIZED_AMOUNT — Converts a periodic or total contract amount into an annualized figure, supporting comparison and revenue reporting.
- GET_CUR_MONTH_REV — Returns the current-month revenue amount for a contract line, used in revenue spreading calculations.
- GET_BACKDATED_REV — Computes revenue attributable to backdated (retroactive) periods, used when a contract is effective earlier than its entry date.
No parameter lists are documented in ETRM; the descriptions above reflect functional intent only, and callers should inspect the package specification for exact signatures.
Tables Accessed
The ETRM excerpt documents no direct table dependencies for OKI_DISCO_UTIL_PUB. Its dependency list references APPS.OKC_API and SYS.STANDARD, indicating the package depends primarily on the OKC (Contracts Core) API layer rather than on base tables directly. Therefore, the utility functions obtain contract data through OKC_API rather than issuing SELECT statements against Service Contracts or contract line tables. Any table access occurs transitively via OKC_API and its own dependencies. This design is common in EBS: the _PUB utility package delegates data retrieval to a shared API, reducing direct coupling to the contract schema.
Usage Notes
OKI_DISCO_UTIL_PUB is referenced by two other packages — OKI_DISCO_UTIL_PUB is listed as self-referencing (a recursive/overloaded entry) and OKI_DISCO_UTIL_PVT and OKI_REFRESH_PVT reference it. OKI_REFRESH_PVT is the service contracts revenue refresh engine, suggesting these utility routines are invoked during the periodic revenue refresh and repricing runs. The package is therefore typically called from:
- Concurrent programs that refresh or spread contract revenue (e.g., Service Contracts revenue processing).
- The Service Contracts forms and the private
_PVTimplementation packages that back them. - Custom integrations that need consistent, supported calculations for contract periods, durations, and revenue amounts rather than reimplementing the arithmetic.
Because the public API classification is explicitly documented, customers should call OKI_DISCO_UTIL_PUB rather than OKI_DISCO_UTIL_PVT, ensuring forward compatibility across 12.1.1 and 12.2.2 patch levels.
-
PACKAGE: APPS.OKI_DISCO_UTIL_PUB
12.1.1
owner:APPS, object_type:PACKAGE, object_name:OKI_DISCO_UTIL_PUB, status:VALID,
-
PACKAGE BODY: APPS.OKI_DISCO_UTIL_PUB
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:OKI_DISCO_UTIL_PUB, status:VALID,
-
PACKAGE: APPS.OKI_DISCO_UTIL_PUB
12.1.1
-
PACKAGE: APPS.OKI_DISCO_UTIL_PVT
12.1.1
owner:APPS, object_type:PACKAGE, object_name:OKI_DISCO_UTIL_PVT, status:VALID,
-
12.1.1 DBA Data
12.1.1
-
PACKAGE BODY: APPS.OKI_DISCO_UTIL_PVT
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:OKI_DISCO_UTIL_PVT, status:VALID,
-
12.1.1 DBA Data
12.1.1
-
PACKAGE: APPS.OKC_TIME_UTIL_PVT
12.1.1
owner:APPS, object_type:PACKAGE, object_name:OKC_TIME_UTIL_PVT, status:VALID,
-
PACKAGE BODY: APPS.OKI_REFRESH_PVT
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:OKI_REFRESH_PVT, status:VALID,
-
PACKAGE BODY: APPS.OKI_DISCO_UTIL_PUB
12.1.1
-
APPS.OKI_REFRESH_PVT dependencies on OKI_DISCO_UTIL_PUB
12.1.1
-
APPS.OKI_DISCO_UTIL_PUB dependencies on OKI_DISCO_UTIL_PUB
12.1.1
-
APPS.OKI_DISCO_UTIL_PVT dependencies on OKI_DISCO_UTIL_PUB
12.1.1
-
APPS.OKI_DISCO_UTIL_PUB dependencies on OKC_API
12.1.1
-
PACKAGE: APPS.OKC_API
12.1.1
owner:APPS, object_type:PACKAGE, object_name:OKC_API, status:VALID,
-
12.1.1 DBA Data
12.1.1
-
12.1.1 DBA Data
12.1.1
-
PACKAGE: SYS.STANDARD
12.1.1
owner:SYS, object_type:PACKAGE, object_name:STANDARD, status:VALID,