Search Results not_repetitive_planned
Overview
CRP_PLANNER_PK is the core PL/SQL package underpinning the Capacity Requirements Planning (CRP) engine in Oracle E-Business Suite. Capacity Requirements Planning evaluates whether manufacturing resources have sufficient capacity to execute the material plan produced by MRP, and it recommends corrective action when capacity is constrained. The package is owned by APPS and is classified under the "OTHER" API category, meaning it is an internal engine package rather than a published open interface. Its declared header, AUTHID CURRENT_USER, allows the package to execute with the privileges of the calling schema, which is significant because the CRP concurrent programs and forms invoke it under the APPS schema context.
The package orchestrates the lifecycle of a CRP planning run: it opens a plan, iterates over planned orders and resources, applies the capacity basis logic configured for each resource, and closes the plan. The cst_basis constant block encapsulated in the package (BASIS_PER_ITEM through BASIS_ACTIVITY_UNITS) reflects the costing and capacity basis options that determine how resource load is measured — per item, per order, per resource unit, per resource value, total value, or activity units.
Key Procedures and Functions
- START_PLAN — Initializes a CRP planning run for a specified compile designator, organization, and user. It establishes the working context before resource load calculations begin.
- COMPLETE_PLAN — Finalizes the planning run, committing results and closing out the compile designator for the organization.
- PLAN_JOBS — Drives capacity planning across job-based (discrete work order) supply, using the cutoff date, request ID, calendar code, and exception set to determine which orders are evaluated and how exceptions are reported.
- PLAN_DISCRETE — Performs the discrete manufacturing planning pass, applying the same run parameters to compute resource loads from discrete jobs.
- PLAN_REPETITIVE — Handles repetitive manufacturing schedules, deriving capacity loads from repetitive planned orders rather than discrete jobs.
Defined constants in the specification classify order dispositions (OPEN_ORDER, CANCEL_ORDER), capacity bases (the CST_BASIS set), repetitive planning status (NOT_REPETITIVE_PLANNED, REPETITIVELY_PLANNED), and order types (PURCHASE_ORDER, PURCH_REQ, WORK_ORDER, REPETITVE_SCHEDULE, PLANNED_ORDER).
Tables Accessed
- CRP_RESOURCE_PLAN / CRP_RESOURCE_PLAN_S — The primary output tables, populated with computed resource capacity loads and the base/interface records for the plan.
- MRP_PLANS — Provides the plan definition and compile designator context for the run.
- MRP_PLANNED_RESOURCE_REQS — Supplies resource requirement rows against which capacity is measured.
- MRP_RECOMMENDATIONS — Source of planned order recommendations feeding the capacity calculation.
- MRP_SYSTEM_ITEMS — Item master attributes used to resolve planning and basis behavior.
- MRP_WIP_RESOURCES — Resource definitions used to map loads to capacity.
- BOM_CALENDAR_DATES — Calendar working-day information used to bucket loads across the planning horizon.
Usage Notes
CRP_PLANNER_PK is invoked indirectly by the CRP concurrent programs (such as the Capacity Requirements Planning and Repetitive Planning programs) and by the Planner Workbench when a planner launches a capacity run. The procedures are not intended for direct custom invocation; the exception set ID, calendar code, and compile designator arguments are populated by the concurrent manager, and the request ID links execution back to the concurrent request for logging. Customizations should query the CRP_RESOURCE_PLAN output rather than call this package. Because it is AUTHID CURRENT_USER and references APPS synonyms, it must be executed from a context where those synonyms resolve — typically the APPS schema. No other packages are documented as referencing it, confirming its role as a terminal engine component. Its 1999 header date and 115.1 version indicate a long-stable code line carried forward into 12.1.1 and 12.2.2.