Search Results all_ind_columns




Overview

FND_INDEXED_SEGS_V is a read-only database view owned by the APPS schema within the Application Object Library (FND) product of Oracle E-Business Suite. Its documented description states that it exposes the indexed columns in the GL_CODE_COMBINATIONS table. The view effectively intersects two distinct metadata sources: the key flexfield segment definitions held in FND_ID_FLEX_SEGMENTS and the physical index column information catalogued in ALL_IND_COLUMNS. By resolving this intersection at runtime, the view identifies which accounting flexfield segments are both enabled and physically indexed as the leading column of an index on GL_CODE_COMBINATIONS. This makes it a compact reference for reporting, integration design, and performance analysis, particularly for developers and DBAs who need to know which segment columns can be reliably and efficiently constrained. Because it is a view rather than a table, FND_INDEXED_SEGS_V carries no storage of its own and reflects the current state of the underlying dictionary and flexfield metadata at query time. It is marked VALID in both EBS 12.1.1 and 12.2.2 and is available to any session with the appropriate APPS privileges.

Underlying Base Objects

The view is defined over two object references, both accessed through synonyms: FND_ID_FLEX_SEGMENTS (the base table of the same owner) and ALL_IND_COLUMNS (a data dictionary view owned by SYS). The ETRM metadata confirms these as the referenced base objects. FND_ID_FLEX_SEGMENTS stores one row per segment per key flexfield structure, capturing attributes such as the segment name, the application column name to which it maps, the flexfield identifier, and the enabled flag. ALL_IND_COLUMNS describes every column of every index visible in the dictionary, including its position within the index and the table it belongs to. The view joins these two sources on APPLICATION_COLUMN_NAME equal to COLUMN_NAME, restricted to the first column position of an index on GL_CODE_COMBINATIONS. Because ALL_IND_COLUMNS is a dictionary view reflecting SYS-owned structures, and FND_ID_FLEX_SEGMENTS is an APPS-owned metadata table, the view benefits from both the flexfield configuration and the physical indexing reality being checked against each other at execution time.

Key Columns

The view projects exactly three columns, as documented in the ETRM record. SEGMENT_NAME identifies the accounting flexfield segment by its user-visible segment name, such as Company, Cost Center, or Account. APPLICATION_COLUMN_NAME gives the physical database column name in GL_CODE_COMBINATIONS to which that segment maps, for example SEGMENT1 or SEGMENT2; this is the column that appears in index definitions. ID_FLEX_NUM is the numeric identifier of the flexfield structure associated with the segment, allowing results to be grouped by structure.

  • SEGMENT_NAME — the descriptive key flexfield segment name.
  • APPLICATION_COLUMN_NAME — the physical column name in GL_CODE_COMBINATIONS.
  • ID_FLEX_NUM — the flexfield structure identifier that owns the segment.

Only segments whose ENABLED_FLAG is 'Y', whose ID_FLEX_CODE is 'GL#', and whose APPLICATION_ID is 101 are considered, and a segment is returned only when it is the leading indexed column of an index on GL_CODE_COMBINATIONS.

Common Use Cases and Queries

Typical usage centres on determining which accounting flexfield segments are indexed and therefore efficient to place in query predicates. A developer designing a report or interface against GL_CODE_COMBINATIONS can query this view to align WHERE-clause segments with indexed columns, avoiding full table scans. A DBA assessing key flexfield configuration can confirm, for a given structure, that critical segments are backed by leading index columns. The following sample lists all indexed GL segments with their structure and column mapping:

  • List all indexed segments: SELECT segment_name, application_column_name, id_flex_num FROM fnd_indexed_segs_v ORDER BY id_flex_num, application_column_name;
  • Check indexed segments for a specific structure: SELECT segment_name, application_column_name FROM fnd_indexed_segs_v WHERE id_flex_num = :p_id_flex_num;
  • Confirm whether a segment is indexed: SELECT COUNT(*) FROM fnd_indexed_segs_v WHERE application_column_name = 'SEGMENT1';

Because results depend on live dictionary entries, the view should be re-queried after index reorganisation or key flexfield changes rather than cached. Consult the referenced base objects directly if additional attributes are required.