Search Results xnp_msg_types_vl




Overview

XNP_MSG_TYPES_VL is a multilingual (translation-enabled) view owned by the APPS schema in Oracle E-Business Suite, delivered as part of the XNP – Number Portability product module. The view exposes message type definitions that govern how inbound and outbound messages are validated, processed, queued, and routed within the Number Portability message-handling framework. Its core purpose is to present user-facing descriptive attributes — display names and textual descriptions — in the session language while preserving the underlying technical configuration held in the base table.

In Oracle EBS 12.1.1 and 12.2.2, the "_VL" suffix follows the standard multilingual view naming convention, indicating that the view joins a base (non-translated) table to a translation ("_TL") table and filters translations by the current runtime language. This makes XNP_MSG_TYPES_VL the appropriate read interface for forms, reports, concurrent programs, and integration code that must render message type metadata in the operator's preferred language while retaining access to configuration columns such as validation logic, queue assignment, and processing role.

Underlying Base Objects

The documented view text defines XNP_MSG_TYPES_VL over two referenced base objects, both exposed to APPS through synonyms:

  • XNP_MSG_TYPES_B – the base table storing language-independent message type configuration. All technical attributes (message code, message type, status, priority, queue name, protected flag, role name, logic columns, DTD URL, and audit columns) reside here.
  • XNP_MSG_TYPES_TL – the translation table storing the language-dependent DISPLAY_NAME and DESCRIPTION, keyed by MSG_CODE and LANGUAGE.

The join is performed on MSG_CODE, with the translation side restricted by T.LANGUAGE = USERENV('LANG'). Consequently, the view returns exactly one row per message code, translated where a row exists for the session language. The view also projects B.ROWID as the alias ROW_ID, a documented pattern that supports Oracle Forms "rowid" based update and lock semantics.

Key Columns

  • ROW_ID – the base-table ROWID, used by Forms for row identification and locking.
  • MSG_CODE – the unique business key of the message type; the join column between base and translation tables.
  • MSG_TYPE – classification of the message definition.
  • STATUS – lifecycle state controlling whether the message type is active.
  • PRIORITY – processing priority used by the message queue handler.
  • QUEUE_NAME – the queue to which messages of this type are enqueued or dequeued.
  • PROTECTED_FLAG – indicates a seeded, protected definition not intended for modification.
  • ROLE_NAME – the processing role associated with the message type.
  • VALIDATE_LOGIC, IN_PROCESS_LOGIC, OUT_PROCESS_LOGIC, DEFAULT_PROCESS_LOGIC – the procedural logic invoked at each stage of the message lifecycle.
  • DTD_URL – location of the document type definition (schema) for the message payload.
  • LAST_COMPILED_DATE – timestamp of the last compilation of the associated logic.
  • DISPLAY_NAME, DESCRIPTION – translated, user-facing text from XNP_MSG_TYPES_TL.
  • CREATED_BY, CREATION_DATE, LAST_UPDATED_BY, LAST_UPDATE_DATE, LAST_UPDATE_LOGIN – standard EBS audit columns inherited from the base table.

Common Use Cases and Queries

Typical scenarios include validating that a required message code is configured and active before integration processing, generating a language-specific catalog of message types for an extension or report, and selecting routing metadata (queue, priority, role) for a message type at runtime. All queries return text in the session language because of the USERENV('LANG') predicate.

List all active message types with their translated names:

  • SELECT msg_code, display_name, msg_type, status, priority, queue_name FROM xnp_msg_types_vl WHERE status = 'ACTIVE' ORDER BY priority;

Retrieve the full processing configuration for a specific message type:

  • SELECT msg_code, display_name, queue_name, role_name, validate_logic, in_process_logic, out_process_logic FROM xnp_msg_types_vl WHERE msg_code = :msg_code;

Identify message types that have a DTD defined, for schema validation checks:

  • SELECT msg_code, display_name, dtd_url, last_compiled_date FROM xnp_msg_types_vl WHERE dtd_url IS NOT NULL;

Because the view exposes translated labels and technical configuration in a single row per message code, it is the preferred source for both user-facing reporting and lookup validation across the XNP Number Portability message framework.