Search Results spares_cost




Overview

CSF_PLAN_OPTIONS_V is a database view owned by the APPS schema in Oracle E-Business Suite, defined within the CSF (Field Service) product family. It is classified as VALID in both 12.1.1 and 12.2.2. The view is designed to expose scheduling plan options for display in the Scheduler user interface, a component of the Field Service dispatch and resource optimization toolset. Rather than storing data, the view consolidates information from request tasks, resource results, spares options, plan options, and plan option tasks into a single denormalized result set that the Scheduler UI can consume directly.

Because the Scheduler must present dispatch planners with candidate assignments — including cost, resource identity, timing, and spare-part availability — the view performs the join and decode logic needed to render those choices. It resolves resource names through the CSF_RESOURCE_PUB package, converts stored travel time into an HH24:MI string, and normalizes spares date and cost values using DECODE on the SO.COST sentinel value of -1 (which represents a NULL or unavailable spares option). This makes CSF_PLAN_OPTIONS_V the principal read interface between the scheduling engine tables and the Scheduler UI.

Underlying Base Objects

The view extracts data from six physical base tables via APPS-level synonyms, plus two packages and two additional views referenced indirectly:

The join chain is driven from CSF_R_REQUEST_TASKS through RESOURCE_RESULTS to PLAN_OPTIONS, then fanned out to SPARES_OPTIONS and PLAN_OPTION_TASKS.

Key Columns

Common Use Cases and Queries

Typical uses include auditing scheduling options for a given request, validating spares availability, and feeding custom dispatch dashboards. The following query lists plan options for a scheduling request:

SELECT plan_option_id, resource_name, start_time, end_time,
       travel_time, spares_date, spares_cost, cost
FROM   csf_plan_options_v
WHERE  sched_request_id = :p_request_id
ORDER  BY start_time;

To identify options with no associated task, filter on TASK_ID IS NULL; to isolate spares impact, filter rows where SPARES_COST IS NOT NULL. Because the view depends on SQL functions and outer joins, it should be queried with bind variables and appropriate ordering rather than joined into large batch extracts without indexing on SCHED_REQUEST_ID.