Search Results max_jobs




Overview

OKS_FULFILL is a service contracts package body in the Oracle E-Business Suite Order Management and Service Contracts (OKS/OKC) schema. Its primary responsibility is to orchestrate the fulfillment process across service contract headers and lines on a large scale. Rather than processing contract fulfillment synchronously within a single execution context, OKS_FULFILL provides a mechanism to split large workloads into manageable, parallelizable ranges, allowing concurrent requests to operate against discrete slices of contract data. This design is essential in high-volume environments where thousands of service contracts must be processed without exceeding transaction limits or degrading throughput.

The package operates by determining request boundaries, splitting incoming ranges into buckets, and delegating actual fulfillment work to sub-requests. Global constants such as COMMIT_SIZE, MAX_SINGLE_REQUEST (500), and MAX_JOBS (20) govern how many records a single request handles, when a request should be subdivided, and the maximum number of parallel worker jobs permitted. The MAX_JOBS threshold, in particular, acts as a concurrency ceiling that prevents the concurrent manager from being overwhelmed by an excessive number of spawned sub-requests.

Key Procedures and Functions

The ETRM metadata documents one public entry point for this package: SUBMIT. This procedure serves as the primary invocation interface for the fulfillment process, responsible for receiving the operational context and coordinating the range-splitting and job-submission logic. Supporting internal logic includes the SPLIT_RANGE procedure, which divides a given low/high boundary into a configurable number of buckets (p_buckets). The package also defines a custom composite type, range_rec, and a variable array rangeArray (VARRAY(50) of range_rec), used to store the min/max header and line identifier boundaries for each sub-request range. These structures exist to track fulfillment windows and prevent overlapping or missed records during parallel processing. No parameter lists for these procedures are reproduced here, as the metadata does not document them.

Tables Accessed

OKS_FULFILL accesses several core Service Contracts tables through APPS synonyms. OKC_K_HEADERS_B and OKC_K_LINES_B supply contract header and line records that define what is being fulfilled. OKC_K_GRPINGS provides grouping relationships that determine how contract lines are organized into logical bundles for fulfillment. OKC_K_PARTY_ROLES_B identifies the parties (customers, vendors) associated with contracts, while OKC_STATUSES_B supplies status information used to filter records eligible for fulfillment. OKS_SUBSCR_ELEMENTS holds subscription element detail relevant to service fulfillment logic. The reference to PLITBLM indicates use of the shared EBS PL/SQL table utility for handling collections.

Usage Notes

OKS_FULFILL is typically invoked by Oracle Service Contracts concurrent programs, or through custom code that needs to trigger fulfillment across a potentially large contract population. When run, it evaluates the input range, applies the MAX_SINGLE_REQUEST and MAX_JOBS limits, and submits parallel sub-requests so that no single worker exceeds the record threshold. Because the source header retains a legacy reference to OKS_BILLING_PVT, implementers should be aware that some internal evidence reflects shared template origins rather than distinct business scope. Customizations should call the documented SUBMIT entry point rather than internal range-splitting procedures.