Search Results oks_k_headers_bh_pk




Overview

OKS_K_HEADERS_BH is a table owned by the OKS schema within the Service Contracts (OKS) module of Oracle E-Business Suite. It stores historical attribute data for service contract headers, capturing the versioned state of contract-level attributes such as billing, renewal, tax, and payment configuration. In Oracle EBS 12.1.1 and 12.2.2, this table is a history table (denoted by the "_BH" suffix, indicating a "before image" or history construct) that preserves prior versions of contract header attributes alongside the current values held in the operational header table.

The table is documented in ETRM with 89 columns and carries a primary key, OKS_K_HEADERS_BH_PK, defined on the composite of ID and MAJOR_VERSION. This composite key structure supports versioning, where ID identifies the logical contract header record and MAJOR_VERSION identifies the specific revision. From a Data Vault modeling perspective, the heuristic classification mined from the foreign key structure is standalone. This suggests the table functions as a self-contained historical record rather than a strict hub, link, or satellite dependency, though practitioners modeling it under Data Vault conventions would typically treat ID and MAJOR_VERSION as the composite business key of a satellite attached to the header hub.

Key Information Stored

The table captures both identifying and attribute-level data. The most significant columns include:

The two unique indexes (OKS_K_HEADERS_BH_U1 on ID, MAJOR_VERSION and OKS_K_HEADERS_BH_U2 on CHR_ID, MAJOR_VERSION) distinguish the surrogate composite primary key from an alternate business-key candidate based on CHR_ID.

Common Use Cases and Queries

Typical usage centers on auditing and reporting on contract header changes over time, tracking renewal and billing evolution, and reconciling tax and payment attribute changes. A common query pattern retrieves the latest version for a given contract header:

SELECT h.*
FROM   oks.oks_k_headers_bh h
WHERE  h.id = :p_id
AND    h.major_version = (SELECT MAX(b.major_version)
                          FROM   oks.oks_k_headers_bh b
                          WHERE  b.id = h.id);

Reporting scenarios include renewal-status trending by RENEWAL_STATUS, billing analysis grouped by BILLING_PROFILE_ID, tax exposure summarization via TAX_AMOUNT and TAX_CODE, and security-filtered extracts using SECURITY_GROUP_ID. Because the table is versioned, joins to the current header and to lookup tables (for example, payment and tax code references) are common.

Related Objects

  • PON_OFFER_COMMITMENTS — joined via OKS_K_HEADERS_BH.COMMITMENT_ID.
  • FND_SECURITY_GROUPS — joined via OKS_K_HEADERS_BH.SECURITY_GROUP_ID.
  • IBY_FNDCPT_TX_EXTENSIONS — joined via OKS_K_HEADERS_BH.TRXN_EXTENSION_ID.
  • The current service contract header table in the OKS schema (the source of the "_BH" history rows), related through ID.
  • Service Contracts header APIs that create and maintain header attributes, which populate this history table upon version changes.
  • Standard Service Contracts reporting views that expose header attributes and their historical context.