Search Results jtf_state_rules_vl




Overview

JTF_STATE_RULES_VL is a Multi-Lingual Support (MLS) view owned by the APPS schema within the JTF – CRM Foundation product of Oracle E-Business Suite. It is classified as a VIEW with VALID status and serves as the translated, user-facing representation of the state rule definitions used by CRM Foundation components. In Oracle EBS Release 12.1.1 and 12.2.2, MLS objects follow a three-table pattern: a base (_B) table holding language-independent data, a translation (_TL) table holding language-dependent descriptive text, and a _VL view that joins the two while filtering by the session language. JTF_STATE_RULES_VL performs exactly this function, exposing state rule metadata with the language-appropriate rule name resolved at query time.

The view's role is primarily read-oriented. It abstracts the physical join between base and translation tables so that reporting, concurrent programs, and integration interfaces can retrieve state rule information without directly managing the language join. Because it filters on USERENV('LANG'), the same query returns text in the language of the connected user's session, which is essential for multi-lingual deployments.

Underlying Base Objects

The view is defined over the following documented objects:

The join between the base and translation tables is mandatory (not outer), so a row is returned only when a translation exists for the active language. The FND_APPLICATION_VL join is outer, meaning APPLICATION_NAME may be null if no matching application row exists.

Key Columns

The view exposes the following columns of particular importance:

  • ROW_ID – The ROWID of the base table row, useful for direct row addressing.
  • RULE_ID – Primary identifier of the state rule; the join key across the base and translation tables.
  • RULE_NAME – The translated name of the rule, sourced from JTF_STATE_RULES_TL in the session language.
  • STATE_TYPE – Classifies the state rule, distinguishing rule categories used by CRM state management logic.
  • APPLICATION_ID / APPLICATION_NAME – The owning application identifier from the base table and its resolved display name from FND_APPLICATION_VL.
  • OBJECT_VERSION_NUMBER – Optimistic locking column supporting the ORM (Object-Relational Mapping) framework.
  • ATTRIBUTE_CATEGORY and ATTRIBUTE1–ATTRIBUTE15 – Descriptive flexfield context and segment columns for customer-defined extensions.
  • Audit columnsCREATED_BY, CREATION_DATE, LAST_UPDATED_BY, LAST_UPDATE_DATE, and LAST_UPDATE_LOGIN, standard WHO columns present on the base table.

Common Use Cases and Queries

Typical scenarios include validating state rule configurations, building reports of rules by application, and joining rule definitions to CRM transactions. A straightforward listing query is:

SELECT rule_id, rule_name, state_type
FROM apps.jtf_state_rules_vl
ORDER BY rule_name;

To isolate rules for a specific application by name:

SELECT r.rule_id, r.rule_name, r.state_type, r.application_name
FROM apps.jtf_state_rules_vl r
WHERE r.application_name = :p_application_name;

Because the view resolves the language automatically, no explicit language predicate is required in application SQL; the USERENV('LANG') filter embedded in the view text handles selection of the correct translation. When troubleshooting missing rows, note that rules lacking a translation for the session language will not appear—an important diagnostic point for multilingual implementations.