Search Results icx_session_attributes_u1




Overview

ICX.ICX_SESSION_ATTRIBUTES is a transactional table in the Oracle E-Business Suite ICX (Interaction/Cartridge Exchange) schema that stores session-scoped context information for user sessions established through the EBS login framework. Each row represents a single name/value pair associated with a specific session identifier, allowing arbitrary descriptive state to be persisted against a session without schema changes. The table resides in the APPS_TS_TX_DATA tablespace with a PCT Free of 10, and its unique index ICX_SESSION_ATTRIBUTES_U1 is stored in APPS_TS_TX_IDX. The object is registered as FND Design Data ICX.ICX_SESSION_ATTRIBUTES and carries a VALID status in the ETRM 12.2.2 documentation, with equivalent behavior in 12.1.1.

From a heuristic Data Vault modeling perspective, the metadata classifies this object as standalone, since it declares no foreign key dependencies on other database objects. In practice it behaves like a satellite keyed by the composite business key of session and attribute name, rather than a hub or link. No foreign keys are documented, so dependency edges are logical rather than enforced at the database level.

Key Information Stored

The documented physical schema contains three columns, all of which are material to understanding the table:

  • SESSION_ID (NUMBER) — The mandatory identifier for each session created by a user login. This column is the leading component of both the primary key ICX_SESSION_ATTRIBUTES_PK and the unique index ICX_SESSION_ATTRIBUTES_U1.
  • NAME (VARCHAR2(30)) — The mandatory, user-defined descriptive name of the information being stored within a session. It is the second component of the primary key and unique index, giving the table its name/value granularity.
  • VALUE (VARCHAR2(4000)) — The corresponding value for the NAME column. The 4000-byte width accommodates substantial text payloads, but the column permits NULLs, so absence of an attribute value is not distinguishable from an attribute that was never set unless an explicit row exists.

The composite primary key ICX_SESSION_ATTRIBUTES_PK (SESSION_ID, NAME) is the surrogate-to-business key bridge here: there is no single-column surrogate key, and the documented unique index ICX_SESSION_ATTRIBUTES_U1 (SESSION_ID, NAME) reinforces the same business-key candidate at the physical level. Because the primary key is composite and both columns are mandatory, SESSION_ID and NAME together uniquely identify every row, while VALUE carries the payload.

Common Use Cases and Queries

Typical usage centers on retrieving, setting, or clearing per-session context during form and framework processing. A session-scoped lookup is the most frequent pattern:

  • Fetch a specific attribute for a known session: SELECT VALUE FROM ICX.ICX_SESSION_ATTRIBUTES WHERE SESSION_ID = :sid AND NAME = :attr;
  • Enumerate all attributes for a session to reconstruct context: SELECT NAME, VALUE FROM ICX.ICX_SESSION_ATTRIBUTES WHERE SESSION_ID = :sid ORDER BY NAME;
  • Locate sessions that set a given attribute, useful for diagnosing feature flags or preferences: SELECT SESSION_ID, VALUE FROM ICX.ICX_SESSION_ATTRIBUTES WHERE NAME = :attr;
  • Housekeeping and purging of stale rows joined against session lifetimes in the parent session table.

Reporting use cases include auditing which sessions carried particular context values, validating that expected attributes were populated by a customization, and supporting troubleshooting when a user reports inconsistent behavior tied to session state.

Related Objects

The ETRM dependency data states that ICX.ICX_SESSION_ATTRIBUTES does not reference any database object and is referenced by the APPS synonym ICX_SESSION_ATTRIBUTES. Because the metadata documents no foreign keys, join relationships are logical rather than enforced. The most significant associated objects are:

  • ICX_SESSION_ATTRIBUTES (APPS synonym) — the application-facing alias used by PL/SQL and reports.
  • ICX_SESSION_ATTRIBUTES_PK — primary key constraint on (SESSION_ID, NAME).
  • ICX_SESSION_ATTRIBUTES_U1 — unique index on (SESSION_ID, NAME), the business-key candidate referenced by the search term.
  • ICX_SESSIONS — the parent session table; joins conventionally on SESSION_ID to resolve user and session metadata.
  • FND_SESSIONS / ICX session framework packages — the login framework that creates SESSION_ID values consumed by these rows.

Where session-level attribution is required, joins to the ICX session table on SESSION_ID provide the user, responsibility, and creation context that this attribute table deliberately leaves out.