Search Results get_q_data_num




Overview

XDP_SYSCN_UTIL is a utility package owned by the APPS schema in Oracle E-Business Suite 12.1.1 and 12.2.2. It belongs to the Oracle Workflow / XML Data Processor (XDP) technology stack, which underpins the Oracle Advanced Supply Chain Planning and other distributed planning and messaging subsystems. The package's name — SYSCN, for "system connection" — indicates its role as a low-level accessor layer for data carried on workflow queue channels. Specifically, it provides typed extraction routines that read individual fields out of structured user-data payloads passed through Oracle Workflow message and channel queue types (XDP_WF_CHANNELQ_TYPE and XNP_MESSAGE_TYPE). It is classified as a UTIL API in the ETRM repository, meaning it is an internal helper rather than a public, supported extension interface. The source header (XDPSYCNS.pls, version 120.2, dated 2006) confirms a long-standing, stable component that has remained essentially unchanged across the 11i, 12.1.1, and 12.2.2 releases.

Key Procedures and Functions

The package declares four documented functions, each RESTRICT_REFERENCES-declared with WNDS and WNPS purity levels, confirming they perform no database writes and no package-state reads or writes — they are pure, deterministic accessors suitable for use inside SQL and PL/SQL.

  • GET_Q_DATA_NUM — This is the function referenced by the search term "get_q_data_num." It extracts a numeric value from a queue data payload, accepting a workflow channel queue user-data record and a data-key/field indicator, and returning the corresponding NUMBER value. It is the numeric counterpart to GET_Q_DATA_CHAR.
  • GET_Q_DATA_CHAR — The character equivalent of the above, returning a VARCHAR2 value identified within the same queue data structure.
  • FGET_DATA_CHANNEL — Returns a VARCHAR2 derived from a workflow channel queue user-data value, resolving the channel-level data reference for the supplied payload.
  • FGET_MESSAGE_ID — Returns a VARCHAR2 message identifier extracted from an XNP_MESSAGE_TYPE user-data record, used to correlate a workflow message with its originating transaction or document.

Tables Accessed

The documented ETRM metadata lists no direct table references for this package. Consistent with its UTIL classification and its WNDS/WNPS purity declarations, XDP_SYSCN_UTIL does not read or write database tables; it operates entirely on in-memory PL/SQL record parameters (the SYSTEM.XDP_WF_CHANNELQ_TYPE and SYSTEM.XNP_MESSAGE_TYPE types) supplied by its callers. This design keeps the routines cheap and side-effect-free, which is essential because they are invoked from within workflow queue processing where transactional purity is required.

Usage Notes

XDP_SYSCN_UTIL is not intended for direct invocation by end users or as a supported custom-code API. ETRM records that it is referenced by seven other packages, all of which consume its accessors while processing incoming workflow messages and channel queue events. Custom developers should treat it as read-only plumbing: the safe usage pattern is to call GET_Q_DATA_NUM, GET_Q_DATA_CHAR, FGET_DATA_CHANNEL, or FGET_MESSAGE_ID only from code that already holds a valid XDP_WF_CHANNELQ_TYPE or XNP_MESSAGE_TYPE payload, such as a workflow function activity, a custom PL/SQL subscriber to a planning or messaging event, or a wrapper package extending the standard XDP message handlers. Because the functions are declared RESTRICT_REFERENCES, they may also be embedded directly in SQL statements in 12.1.1 and 12.2.2. No seeded concurrent program or Oracle Forms object calls the package directly; it is reached exclusively through the Oracle Workflow engine and the surrounding XDP/XNP framework, and its parameter types are defined in the SYSTEM schema rather than APPS.