Search Results modify_row




Overview

The PL/SQL package APPS.PN_VAR_BKDT_DEFAULTS_PKG encapsulates the persistence logic for the "variable breakpoint defaults detail" entity within the Oracle Property Manager module of Oracle E-Business Suite. In releases 12.1.1 and 12.2.2 this package operates as a multi-org aware data access layer (its header carries the customary $Header comment and the 120.0 version stamp) over the PN_VAR_BKDT_DEFAULTS_ALL table and its _S security synonym. The package exposes the standard generated-API surface — insert, lock, update, delete, and the composite modify — that allows callers to create and maintain variable breakpoint default lines without issuing ad hoc DML against the underlying table. It is classified by ETRM as an OTHER API, meaning it is an internal, table-centric package rather than a fully published business API.

Key Procedures and Functions

  • INSERT_ROW — Inserts a new variable breakpoint defaults detail row. Its signature receives the rowid and primary key as IN OUT NOCOPY parameters (populated on return), together with the parent BKHD_DEFAULT_ID, breakpoint start and end dates, the period and group breakpoint volume boundaries, breakpoint rate, processing flag, variable rent identifier, and the full WHO/audit, ORG_ID, annual basis amount, and attribute columns. The body first derives the detail line number via a MAX(BKDT_DETAIL_NUM) lookup.
  • LOCK_ROW — Acquires an exclusive lock on an existing detail row, typically invoked before an update or delete so that concurrent sessions cannot modify the same breakpoint default record.
  • UPDATE_ROW — Applies changes to a previously locked detail row, refreshing the business columns and the audit columns (LAST_UPDATE_DATE, LAST_UPDATED_BY, LAST_UPDATE_LOGIN).
  • DELETE_ROW — Removes a variable breakpoint defaults detail row from the table.
  • MODIFY_ROW — The user-relevant entry point for the search term "modify_row". This is the composite procedure that orchestrates the full pessimistic locking pattern: it locks the target row, then conditionally performs an insert, update, or delete of the supplied record in a single controlled operation. Rather than forcing callers to sequence LOCK_ROW and UPDATE_ROW manually, MODIFY_ROW abstracts that logic so dependent packages can persist a modified detail record atomically.

Tables Accessed

  • PN_VAR_BKDT_DEFAULTS_ALL — The primary transactional table. It holds the variable breakpoint defaults detail rows and is queried by ROWID for locking and DML by every procedure in the package.
  • PN_VAR_BKDT_DEFAULTS_S — The security (org-striping) synonym counterpart for the same entity, referenced so that the multi-org ORG_ID policy resolves correctly for the caller's operating unit.
  • PN_VAR_BKHD_DEFAULTS_ALL — The variable breakpoint defaults header table, providing the parent BKHD_DEFAULT_ID context against which detail lines are created and validated.
  • DUAL — Used for control, sequence, and date lookups.

Usage Notes

Because ETRM records this package as referenced by four other packages — but not registered as a public API — it is normally invoked indirectly through Oracle Property Manager forms and the surrounding PL/SQL stack rather than from external custom code. Developers working with variable breakpoint defaults inside Property Manager (for example, in lease or variable-rent processing) will find MODIFY_ROW the recommended call, since it envelopes the INSERT_ROW / LOCK_ROW / UPDATE_ROW / DELETE_ROW primitives used by the seeded code. Calls require the standard EBS session context (FND_GLOBAL values) and a valid ORG_ID. Direct use in custom extensions should be treated as a restricted, non-upgrade-safe practice: this is internal, table-linked code that Oracle may change between 12.1.1 and 12.2.2 without a documented interface commitment. Note that PN_VAR_BKDT_DEFAULTS_PKG should not be confused with the similarly named header-table package; the "_BKDT_" token denotes the detail entity.