Search Results send_message




Overview

OKC_AQ_PUB is a public PL/SQL package body in the Oracle EBS Applications (APPS) schema that provides an Advanced Queuing (AQ) integration layer for the Oracle Contracts (OKC) module. Its principal business function is to publish contract-related business events and outbound message payloads to an Oracle Advanced Queuing queue, enabling asynchronous, loosely coupled communication between Oracle Contracts and external or downstream systems. Typical consumers include order capture, order fulfillment, pricing, and other enterprise applications that must be notified when contract data changes or when contract messages must be transmitted.

The package follows Oracle EBS API conventions. It exposes a single documented public procedure, SEND_MESSAGE, and internally leverages the standard OKC_API error-handling framework (START_ACTIVITY, message list initialization, and return status management), along with the OKC_DEBUG utility for diagnostic tracing controlled by the AFLOG_ENABLED profile option. The package header version ($Header: OKCPAQB.pls 120.0) indicates a stable, shipped interface.

Key Procedures and Functions

One documented procedure is exposed by this package:

  • SEND_MESSAGE — The sole public entry point. It accepts a standard EBS API version and initialization message list flag, a commit flag, and a set of OUT parameters for message count, message data, and return status. Business input is supplied through a contract identifier record, a table of message payloads, the target queue name, and an optional delay for deferred enqueue. Internally it builds an XML CLOB message and enqueues it to the named AQ queue. The procedure declares a local API name constant ('SEND_MESSAGE') and API version constant (1.0), initializes the return status to OKC_API.G_RET_STS_SUCCESS, and wraps processing inside the OKC_API activity framework so that errors are captured consistently for callers.

Tables Accessed

The ETRM metadata documents DBMS_AQ as the referenced dependency, accessed through an APPS synonym. DBMS_AQ is the Oracle-supplied Advanced Queuing PL/SQL package rather than a business table. From this package OKC_AQ_PUB performs the enqueue operation against whichever queue is named at runtime via the p_queue_name parameter. The contract context is carried in the caller-supplied record structures (corrid_rec_typ) and the message payload table (msg_tab_typ), so no direct DML against OKC contract tables occurs within SEND_MESSAGE; persistence of the message is delegated to the AQ infrastructure. Any contract table reads required to assemble the payload are expected to be performed by the caller or earlier in the calling flow.

Usage Notes

OKC_AQ_PUB.SEND_MESSAGE is a public API intended for invocation from other PL/SQL programs, concurrent programs, or form-based logic that needs to publish a contract message asynchronously. The metadata records that the package is referenced by 15 other packages, confirming it is a shared integration utility rather than an end-user-facing feature. Callers should supply a valid queue name, populate the contract identifier record and message payload table, and respect the standard EBS API parameter conventions: always pass p_init_msg_list, check x_return_status against OKC_API.G_RET_STS_SUCCESS, and inspect x_msg_count and x_msg_data for error feedback.

Because the interface is classified as a public (PUB) API, it is supported for customer and partner extensions, but it should be used only for publishing messages to AQ queues that have been configured for the Oracle Contracts integration. In EBS 12.1.1 and 12.2.2 the package is deployed under the APPS schema and requires execute privileges for any calling schema. The optional delay parameter enables deferred delivery, which is useful when downstream processing must be sequenced after the originating transaction commits.