Search Results jtf_brm_rules_b_pk




Overview

JTF_BRM_RULES_B is the base table for business rules monitored by the Business Rule Monitor (BRM) within the CRM Foundation product (JTF) of Oracle E-Business Suite 12.1.1 and 12.2.2. The table resides in the JTF schema and is documented as VALID. Its purpose is to store the definitional header of each monitorable business rule — its owning application, the object it evaluates, and the view through which the rule's data is surfaced. Rules defined here drive the BRM engine, which evaluates conditions against application data and raises events or actions when thresholds are met.

From a Data Vault modeling perspective, the heuristic classification mined from the foreign-key structure is hub-leaning. JTF_BRM_RULES_B behaves as a central hub: its primary key RULE_ID is referenced by multiple dependent tables rather than being a dependent child itself. Modelers should treat RULE_ID as the durable business key spine around which satellites (attributes and translations) and links (expression lines, processes) are attached.

Key Information Stored

The table is documented with 34 physical columns in the 12.2.2 ETRM schema. The most significant are:

The unique index JTF_BRM_RULES_B_U1 is defined on (RULE_ID, ZD_EDITION_NAME). This composite unique index — not RULE_ID alone — is the effective business-key candidate under the 12.2 editioning model, because the same RULE_ID may exist in more than one edition during an online patching cycle. In 12.1.1 the ZD_EDITION_NAME column does not exist, so uniqueness reduces to RULE_ID.

Common Use Cases and Queries

Typical reporting and diagnostic scenarios include enumerating active seeded rules for an application, auditing rule effective dates, and tracing which rules feed the BRM engine:

  • List active rules for a given application and object type:
    SELECT rule_id, brm_object_type, brm_object_code,
           rule_owner, start_date_active, end_date_active
    FROM   jtf.jtf_brm_rules_b
    WHERE  application_id = :app_id
    AND    brm_object_type = :obj_type
    AND    SYSDATE BETWEEN start_date_active AND NVL(end_date_active, SYSDATE+1);
  • Audit customer-defined (non-seeded) rules: filter on seeded_flag = 'N'.
  • Identify rules already translated or with expression lines by joining children, using NVL on ZD_EDITION_NAME for 12.2 compatibility:
    SELECT r.rule_id, t.rule_name, e.expression_line_id
    FROM   jtf.jtf_brm_rules_b r
    JOIN   jtf.jtf_brm_rules_tl t ON t.rule_id = r.rule_id
    JOIN   jtf.jtf_brm_expression_lines e ON e.rule_id = r.rule_id;
  • Edition-scoped queries on 12.2 should include ZD_EDITION_NAME = 'ORA$BASE' (or the active run edition) to avoid returning superseded rows.
  • Reconcile rule ownership against FND_SECURITY_GROUPS for access-partitioning reviews.

Related Objects

  • JTF_BRM_RULES_TL — translation table; joins on RULE_ID and holds the language-specific RULE_NAME and description. Every user-facing rule query should join here.
  • JTF_BRM_EXPRESSION_LINES — stores the condition expressions evaluated per rule; joins on RULE_ID.
  • JTF_BRM_PROCESSES — defines the processes/actions triggered by a rule; joins on RULE_ID (referenced twice in the documented FK map).
  • FND_SECURITY_GROUPS — referenced by this table via SECURITY_GROUP_ID; governs group-level data security.
  • FND_APPLICATION — implicit lookup for APPLICATION_ID, resolving the owning product for reporting and upgrade impact analysis.