Search Results set_attributes
Overview
OKC_CVM_PVT is the private implementation package body behind Oracle E-Business Suite's Contract Version Management (CVM) functionality, part of the Oracle Contracts (OKC) module. Its primary business function is to manage the lifecycle of contract versions — creating, updating, renumbering, and deleting version records that track how a contract header evolves over time. In Oracle Contracts, a single contract header (identified by chr_id) can have multiple versions, each carrying its own version number and status. OKC_CVM_PVT encapsulates the low-level DML and validation logic that maintains these version numbers consistently, preventing gaps, duplicates, and orphaned records.
The package is classified as PVT (private), meaning it is not intended to be called directly by external consumers. Instead, its procedures are exposed through a public wrapper package (typically OKC_CVM_PUB) or invoked internally by other OKC packages as part of a larger transaction. The header comment notes the source file OKCSCVMB.pls and a bug fix (5243626) associated with deferred minimum-version updates.
Key Procedures and Functions
The documented procedures cover the standard CRUD and version-management operations:
- INSERT_ROW — Inserts a new contract version record into the version-number tables.
- LOCK_ROW — Acquires a row-level lock on a version record, typically used to serialize concurrent updates.
- UPDATE_ROW — Modifies an existing version record's attributes.
- DELETE_ROW — Removes a version record.
- CREATE_CONTRACT_VERSION — Creates a new version for a contract, assigning the next applicable version number.
- UPDATE_CONTRACT_VERSION — Updates the attributes of an existing contract version.
- VERSION_CONTRACT_VERSION — Performs the act of "versioning" — copying or promoting a contract into a new version number.
- DELETE_CONTRACT_VERSION — Deletes a contract version, with associated cleanup of version-number records.
- CLEAR_G_TRANSACTION_ID — Resets the global transaction identifier used to correlate changes made within a single logical transaction.
- DEFER_MINOR_VERSION_UPDATE — Defers the update of the minor version number, supporting the bug fix referenced in the source header.
- UPDATE_MINOR_VERSION — Applies a minor version increment or adjustment to a contract version record.
Tables Accessed
The package operates against the core OKC version and header tables via APPS synonyms:
- OKC_K_VERS_NUMBERS — The primary table holding version-number records for contract headers; source of the version numbering logic.
- OKC_K_VERS_NUMBERS_H — The history/audit table corresponding to OKC_K_VERS_NUMBERS, written for date-tracked changes.
- OKC_K_HEADERS_ALL_B — The base contract header table, referenced to validate that a valid chr_id exists before version operations are performed.
- DBMS_TRANSACTION — Used for transaction-control operations (e.g., savepoints or local transaction identifiers) to manage atomicity across related DML.
- PLITBLM — An internal PL/SQL table type used for array/bulk operations within the package.
Usage Notes
OKC_CVM_PVT is referenced by 28 other packages across the OKC and related modules, indicating it is a foundational component of the contract versioning infrastructure rather than a user-facing entry point. It is normally invoked indirectly through OKC_CVM_PUB or through higher-level contract APIs and forms that need to persist version changes. Because the package is PVT-classified, custom code should not call it directly; developers should use the corresponding public API. Typical invocation contexts include the Contracts form (OKC) when a user saves or versions a contract, concurrent programs that mass-version or migrate contracts, and internal OKC routines that manage version consistency during contract amendment and termination. When extending or debugging version-related behavior, the set_attributes-style validation logic and the global transaction identifier (managed by CLEAR_G_TRANSACTION_ID) are key areas to understand, as they govern how attribute changes are validated and how changes are grouped into a single transaction.
-
PACKAGE BODY: APPS.OKC_CVM_PVT
12.1.1
-
PACKAGE BODY: APPS.OKC_OPN_PVT
12.2.2
-
PACKAGE BODY: APPS.OKC_CLS_PVT
12.2.2
-
PACKAGE BODY: APPS.OKC_CVM_PVT
12.2.2
-
PACKAGE BODY: APPS.OKC_OPN_PVT
12.1.1
-
PACKAGE BODY: APPS.OKC_CLS_PVT
12.1.1
-
PACKAGE BODY: APPS.OKL_SPM_PVT
12.1.1
-
PACKAGE BODY: APPS.OKL_SPM_PVT
12.2.2
-
PACKAGE BODY: APPS.OKL_XHR_PVT
12.1.1
-
PACKAGE BODY: APPS.OKL_XHR_PVT
12.2.2
-
PACKAGE: APPS.ZPB_WF_EVENT
12.1.1
-
PACKAGE BODY: APPS.OKL_ITY_PVT
12.1.1
-
PACKAGE BODY: APPS.OKL_ASR_PVT
12.1.1
-
PACKAGE BODY: APPS.OKL_CRN_PVT
12.2.2
-
PACKAGE BODY: APPS.OKL_INF_PVT
12.2.2
-
PACKAGE BODY: APPS.OKC_STS_PVT
12.2.2
-
PACKAGE BODY: APPS.OKL_ASR_PVT
12.2.2
-
PACKAGE BODY: APPS.OKL_CUV_PVT
12.2.2
-
PACKAGE BODY: APPS.OKC_TCU_PVT
12.1.1
-
PACKAGE BODY: APPS.OKL_CUV_PVT
12.1.1
-
PACKAGE BODY: APPS.OKL_CRN_PVT
12.1.1
-
PACKAGE BODY: APPS.OKC_TCU_PVT
12.2.2
-
PACKAGE: APPS.EDR_FWK_VERIFY
12.2.2
-
PACKAGE BODY: APPS.OKC_SCS_PVT
12.2.2
-
PACKAGE BODY: APPS.OKC_SCS_PVT
12.1.1
-
PACKAGE BODY: APPS.OKL_ANT_PVT
12.1.1
-
PACKAGE BODY: APPS.OKC_STS_PVT
12.1.1
-
PACKAGE BODY: APPS.OKC_COR_PVT
12.2.2
-
PACKAGE BODY: APPS.OKL_ILT_PVT
12.2.2
-
PACKAGE BODY: APPS.OKC_COR_PVT
12.1.1
-
PACKAGE BODY: APPS.OKL_ITY_PVT
12.2.2
-
PACKAGE BODY: APPS.OKL_CGR_PVT
12.1.1
-
PACKAGE BODY: APPS.OKL_ANT_PVT
12.2.2
-
PACKAGE BODY: APPS.OKL_INF_PVT
12.1.1
-
PACKAGE BODY: APPS.OKL_ILT_PVT
12.1.1
-
PACKAGE BODY: APPS.OKL_CGR_PVT
12.2.2
-
PACKAGE BODY: APPS.OKC_UBL_PVT
12.2.2
-
PACKAGE BODY: APPS.OKC_UBL_PVT
12.1.1
-
PACKAGE: APPS.EDR_FWK_VERIFY
12.1.1
-
PACKAGE BODY: APPS.FUN_MULTI_SYSTEM_WF_PKG
12.1.1
-
PACKAGE BODY: APPS.FUN_MULTI_SYSTEM_WF_PKG
12.2.2
-
PACKAGE BODY: APPS.OKC_RTV_PVT
12.1.1
-
PACKAGE BODY: APPS.OKL_AGC_PVT
12.1.1
-
PACKAGE BODY: APPS.OKL_AGC_PVT
12.2.2
-
PACKAGE BODY: APPS.OKC_AQM_PVT
12.2.2
-
PACKAGE BODY: APPS.OKL_ALS_PVT
12.2.2
-
PACKAGE BODY: APPS.OKL_GTL_PVT
12.2.2
-
PACKAGE BODY: APPS.OKL_AGB_PVT
12.1.1
-
PACKAGE BODY: APPS.OKC_IGS_PVT
12.1.1
-
PACKAGE BODY: APPS.OKL_LSM_PVT
12.1.1