Search Results so_agreements_tl_pk




Overview

The SO_AGREEMENTS_TL table is a core translation table within the Oracle E-Business Suite (EBS) Order Entry (OE) module, specifically for releases 12.1.1 and 12.2.2. As indicated by its name suffix '_TL', its primary function is to store multilingual translations for the descriptive, user-facing text of sales agreements. It operates in conjunction with its base table, SO_AGREEMENTS_B, which holds the transactional and structural data. This separation is a standard Oracle application architecture pattern, enabling a single agreement definition in the base table to support multiple language representations in the translation table. This design is critical for global deployments where business documents like sales agreements must be presented in a user's native language.

Key Information Stored

The table stores language-specific textual attributes for sales agreements. Its structure is defined by two primary keys, which enforce data integrity for multilingual content. The primary columns are:

  • AGREEMENT_ID: The foreign key column that links each row to a specific record in the SO_AGREEMENTS_B base table. This is the fundamental join condition.
  • LANGUAGE: Stores the language code (e.g., 'US' for American English, 'KO' for Korean) for the translated text in that row.
  • NAME: The translated name or description of the sales agreement in the specified language. This column's uniqueness in combination with LANGUAGE is enforced by the SO_AGREEMENTS_TL_UK1 unique key constraint.
  • Additional columns typically present in TL tables, such as SOURCE_LANG, CREATED_BY, and LAST_UPDATED_BY, are implied by the standard Oracle translation table model, though not explicitly listed in the provided metadata.

Common Use Cases and Queries

The primary use case is retrieving a sales agreement's description in a user's session language for display in forms, reports, and self-service applications. A common reporting query joins the translation table to the base table and other related entities. For example, to list active agreements with their translated names:

SELECT b.AGREEMENT_ID, tl.NAME, b.START_DATE, b.END_DATE
FROM oe.SO_AGREEMENTS_B b,
     oe.SO_AGREEMENTS_TL tl
WHERE b.AGREEMENT_ID = tl.AGREEMENT_ID
  AND tl.LANGUAGE = userenv('LANG')
  AND b.END_DATE >= SYSDATE;

Another critical scenario involves data migration or interface development, where custom programs must populate or read agreement descriptions for specific languages, ensuring the correct LANGUAGE and SOURCE_LANG values are maintained to align with Oracle's seed data.

Related Objects

SO_AGREEMENTS_TL has direct, documented relationships with several key objects in the Order Entry schema, primarily defined through foreign key constraints.

  • SO_AGREEMENTS_B: This is the principal related table. The AGREEMENT_ID column in SO_AGREEMENTS_TL is a foreign key referencing the primary key of SO_AGREEMENTS_B. All translations are child records of a parent record in this base table.
  • SO_AGREEMENTS: This is likely a view (often the _ALL_ or _VL view) that combines data from the _B and _TL tables to present a complete, language-sensitive record for application use. Queries against this view automatically handle the language join.
  • The existence of the SO_AGREEMENTS_TL_PK (on AGREEMENT_ID, LANGUAGE) and SO_AGREEMENTS_TL_UK1 (on NAME, LANGUAGE) constraints indicates these columns are frequently used for joins and lookups, ensuring data uniqueness and integrity across the multilingual model.