Search Results bne_layout_blocks_tl




Overview

BNE_LAYOUT_BLOCKS_TL is the translation (language-dependent) table for BNE_LAYOUT_BLOCKS_B, the base table that stores layout block definitions for Oracle Web Applications Desktop Integrator (BNE). In Oracle EBS 12.1.1 and 12.2.2, BNE provides the desktop integration framework used by Oracle Financials, Oracle Projects, and other products to expose EBS data through Microsoft Excel and other desktop tools via the Oracle Web ADI HTML interface. Layout blocks represent discrete, reusable sections of a desktop integrator layout, such as header regions, line regions, and parameter entry panels. Because these blocks carry user-facing prompt text, the labels displayed to end users must be translatable, and BNE_LAYOUT_BLOCKS_TL holds the multilingual prompt and descriptive text keyed to a specific layout, block, and language combination.

From a data-modeling perspective, the metadata classification heuristic places this object as standalone, meaning it does not participate in foreign-key vending or dependent relationships at the documented level. In practical Data Vault terms, it behaves as a satellite attached to BNE_LAYOUT_BLOCKS_B: it carries descriptive, language-dependent attributes (notably prompt text) that change over time, while the parent base table holds the structural identity of each layout block. The table is owned by the BNE schema and carries a status of VALID on a standard EBS installation.

Key Information Stored

The physical schema documented for ETRM 12.2.2 lists thirteen columns. The most important for consumers of this table are the following:

  • APPLICATION_ID — the application owning the layout; part of the composite primary key and the unique business key.
  • LAYOUT_CODE — identifier of the parent desktop integrator layout; part of the primary key.
  • BLOCK_ID — identifier of the specific block within the layout; part of the primary key.
  • LANGUAGE — the NLS language code for the translation row; part of the primary key.
  • SOURCE_LANG — the language in which the source text was originally authored.
  • USER_NAME — the display name associated with the block for the given language.
  • PROMPT_ABOVE — the prompt label rendered above the block region in the generated desktop document.
  • ZD_EDITION_NAME — the editioning column introduced with EBS 12.2 online patching; part of the unique key BNE_LAYOUT_BLOCKS_TL_UK1.
  • CREATED_BY, CREATION_DATE, LAST_UPDATED_BY, LAST_UPDATE_LOGIN, LAST_UPDATE_DATE — standard WHO audit columns used for row-level lineage and change tracking.

The surrogate-level integrity is enforced by the primary key BNE_LAYOUT_BLOCKS_TL_PK on (APPLICATION_ID, LAYOUT_CODE, BLOCK_ID, LANGUAGE), while the business key candidate is captured in BNE_LAYOUT_BLOCKS_TL_UK1 on (APPLICATION_ID, LAYOUT_CODE, BLOCK_ID, LANGUAGE, ZD_EDITION_NAME). The presence of ZD_EDITION_NAME in the unique index is what makes the design compatible with 12.2 edition-based redefinition, allowing different editions to coexist.

Common Use Cases and Queries

Development and support teams query this table when diagnosing why a desktop integrator layout displays an incorrect or untranslated prompt. A common pattern joins the translation table to its base parent to retrieve structural and language-dependent attributes together:

  • Retrieve prompts for a layout: SELECT b.block_id, t.user_name, t.prompt_above FROM bne_layout_blocks_b b, bne_layout_blocks_tl t WHERE b.application_id = t.application_id AND b.layout_code = t.layout_code AND b.block_id = t.block_id AND t.language = USERENV('LANG');
  • Detect missing translations: compare distinct LAYOUT_CODE / BLOCK_ID combinations in the base table against rows in the TL table for a target LANGUAGE to identify blocks that will fall back to the source language at runtime.
  • Text audits: report on PROMPT_ABOVE changes over time by monitoring LAST_UPDATE_DATE, CREATED_BY, and LAST_UPDATED_BY, useful during regression testing after a layout patch.
  • Extract translations: export rows by LANGUAGE for translation vendors, filtering on SOURCE_LANG to reconcile with the reference language.

Because BNE layouts are often customized per implementation, comparing the delivered rows against customer-modified rows via CREATED_BY and LAST_UPDATED_BY is a reliable way to distinguish seeded content from customer changes.

Related Objects

  • BNE_LAYOUT_BLOCKS_B — the base table; joins on APPLICATION_ID, LAYOUT_CODE, BLOCK_ID, and the shared LANGUAGE convention. This is the primary parent of the translation row.
  • BNE_LAYOUT_BLOCKS_VL — the standard translated view that automatically resolves the language from the session, typically the object application code should query rather than the TL table directly.
  • BNE_LAYOUT_BLOCKS_TL_PK / BNE_LAYOUT_BLOCKS_TL_UK1 — the primary key and unique key that enforce row uniqueness and the 12.2 editioning constraint.
  • BNE_LAYOUTS_B — parent layout object; LAYOUT_CODE on this table references the layout, providing the hierarchical context for each block.
  • BNE_LAYOUT_BLOCKS_V — view layer that exposes block definitions for reporting and validation.

Queries should generally favor the VL view or the base-to-TL join to avoid duplicate rows when more than one language is present in the translation table.