Search Results mrp_scheduling_rules_u1




Overview

MRP.MRP_SCHEDULING_RULES is a reference table in the Oracle E-Business Suite 12.1.1 and 12.2.2 ETRM schema that stores the scheduling rules consumed by Oracle's planning and execution systems. Each row defines a named rule that the scheduling engine invokes at the time of Line Scheduling. Users may extend the seeded rule set with their own definitions and associate a PL/SQL package that the system executes when the rule is applied. Seeded Oracle rules are identified by a RULE_ID less than or equal to 1000, while user-defined rules carry a RULE_ID greater than 1000, providing a clear demarcation between Oracle-delivered and customer-authored configuration. In Oracle EBS, this table acts as a configuration lookup rather than a transactional table; it is populated during installation and extended through the application's scheduling rule setup forms.

From a Data Vault modeling perspective, MRP_SCHEDULING_RULES is heuristically classified as standalone, meaning it operates without documented foreign-key dependencies to other EBS objects within the mined relationship data. This suggests it functions as an independent reference hub of scheduling rule definitions, with no parent-child link or satellite structures enforced at the database level.

Key Information Stored

The table is defined with 32 columns in the documented 12.2.2 physical schema, occupying the APPS_TS_TX_DATA tablespace. The most significant columns include:

  • RULE_ID — Number; the primary key (MRP_SCHEDULING_RULES_PK) and surrogate identifier for each scheduling rule. Values at or below 1000 are seeded by Oracle; values above 1000 denote user-defined rules.
  • MEANING — VARCHAR2(40); the user-facing code or name of the rule, and the first column of the unique business-key index MRP_SCHEDULING_RULES_U2.
  • DESCRIPTION — VARCHAR2(150); the descriptive text shown to users when selecting a rule.
  • USER_DEFINED — Number; indicates whether the row was created by a user or seeded by Oracle.
  • PACKAGE_NAME — VARCHAR2(2000); the user-defined PL/SQL package executed by the system when the rule is applied during line scheduling. This is the operational heart of the record.
  • ENABLED_FLAG — VARCHAR2; controls whether the scheduling rule is active and selectable.
  • DEFAULT_FLAG — VARCHAR2; marks a rule as the default selection.
  • USAGE_CODE and SEQUENCE_NUMBER — Number; documented as reserved for future use.
  • ATTRIBUTE_CATEGORY — VARCHAR2(30); the descriptive flexfield context column, governing the ATTRIBUTE1 through ATTRIBUTE15 segments (each VARCHAR2(150), with ATTRIBUTE7 documented at VARCHAR2(15)).
  • Standard Who columnsLAST_UPDATE_DATE, LAST_UPDATED_BY, CREATION_DATE, CREATED_BY, and LAST_UPDATE_LOGIN provide the audit trail.
  • HEURISTIC_CODE and ZD_EDITION_NAME — supporting columns present in the documented schema; the edition name participates in the unique indexes as a partitioning dimension for edition-based redefinition.

Two unique indexes constitute the documented business-key candidates: MRP_SCHEDULING_RULES_U1 on (RULE_ID, SEQUENCE_NUMBER, ZD_EDITION_NAME) and MRP_SCHEDULING_RULES_U2 on (MEANING, SEQUENCE_NUMBER, ZD_EDITION_NAME). This confirms that the rule name must be unique within an edition, while the surrogate RULE_ID remains the true primary key.

Common Use Cases and Queries

The most frequent access pattern is identifying the active scheduling rules available to the planning engine and their associated packages. A typical query is:

  • SELECT rule_id, meaning, description, package_name FROM mrp.mrp_scheduling_rules WHERE enabled_flag = 'Y';
  • SELECT rule_id, meaning FROM mrp.mrp_scheduling_rules WHERE user_defined = 1; — isolates customer-authored rules for impact assessment during upgrades.
  • SELECT rule_id, meaning FROM mrp.mrp_scheduling_rules WHERE default_flag = 'Y'; — finds the default scheduling rule applied when no explicit selection is made.
  • SELECT rule_id, meaning, package_name, enabled_flag FROM mrp.mrp_scheduling_rules ORDER BY rule_id; — produces a configuration audit report of the full rule catalog.

Reporting scenarios typically validate that every enabled rule references a valid, compiled PL/SQL package, and verify that seed data remains below RULE_ID 1000 after patching. Because the table is low-volume and largely static, queries rarely require tuning beyond the primary key or the U2 index on MEANING.

Related Objects

The relationship metadata classifies MRP_SCHEDULING_RULES as standalone, meaning no formal foreign keys were mined from its structure. In practice, the following objects interact with it through application logic and inherited references:

  • MRP_SCHEDULING_RULES_PK — the primary key constraint on RULE_ID enforcing entity integrity.
  • MRP_SCHEDULING_RULES_U1 and MRP_SCHEDULING_RULES_U2 — the unique indexes that define the business-key candidates and support lookups by MEANING.
  • The planning and line scheduling engine components that read PACKAGE_NAME and invoke the referenced PL/SQL package at scheduling time.
  • The Scheduling Rules setup form, which performs insert, update, and enable/disable operations against this table, honoring the USER_DEFINED and ENABLED_FLAG conventions.
  • Descriptive flexfield structures linked through ATTRIBUTE_CATEGORY, using the ATTRIBUTE1 through ATTRIBUTE15 segments.
  • Oracle-delivered seeded rows below RULE_ID 1000, which represent the baseline scheduling behavior retained across upgrades.