Search Results lock_row




Overview

PO_ASL_DOCUMENTS_THS2 is a server-side PL/SQL table handler package owned by the APPS schema in Oracle E-Business Suite. It forms part of the Approved Supplier List (ASL) infrastructure within Oracle Purchasing. The package is the third in a series of table handlers dedicated to the PO_ASL_DOCUMENTS table, following the naming convention used for generated and manually maintained table handler modules throughout the purchasing modules.

The package header carries a header comment identifying it as "Table handlers for PO_ASL_DOCUMENTS - part 3" and credits Liza Broadbent as owner. Its API classification in the ETRM repository is OTHER, meaning it is a supporting internal handler rather than a public business API. The package encapsulates low-level data access and concurrency semantics for the ASL documents entity, allowing higher-level ASL maintenance logic to operate against a single, controlled interface for row-level locking.

Key Procedures and Functions

The ETRM metadata documents a single procedure within this package:

  • lock_row — The table handler routine responsible for acquiring a row-level lock on a record in PO_ASL_DOCUMENTS. Its signature accepts a row identifier along with the full set of primary and descriptive key columns of the table, including ASL ID, using organization ID, sequence number, document type code, document header ID, document line ID, and the ten attribute columns. The procedure does not return a value; it exists solely to serialize concurrent access to a specific ASL document row.

No other procedures or functions are documented in the package specification. Per the header comment, lock_row was created on 28-May-96, making it one of the oldest components in the ASL handler family. It should not be confused with the similarly named lock_row routines in PO_ASL_DOCUMENTS_THS1 or PO_ASL_DOCUMENTS_THS3, which each target the same underlying table but are invoked through different code paths in the ASL maintenance stack.

Tables Accessed

The package operates against a single documented table, PO_ASL_DOCUMENTS, accessed through an APPS synonym. PO_ASL_DOCUMENTS stores the document attachments associated with an approved supplier list entry, linking each ASL record to its supporting purchasing documents by document type and document header or line. The lock_row procedure performs a locking read against this table to guarantee that the row identified by the supplied keys is not modified by another session between the time it is queried and the time it is updated. No inserts or deletes are documented for this package; the handler is confined to the lock and select semantics typical of a table handler's lock_row method.

Usage Notes

PO_ASL_DOCUMENTS_THS2 is an internal component and is not intended to be called directly from custom code, reports, or concurrent programs. It is invoked by higher-level ASL processing logic — typically the ASL maintenance form flow and the associated business logic packages that compose the approved supplier list data entry and update screens. When a user edits ASL document information, the calling layer retrieves the row and then invokes lock_row to obtain the required lock before committing changes, ensuring that concurrent edits in a multi-user environment do not silently overwrite one another. Because the signature exposes all table columns as parameters, callers must supply values consistent with the row they intend to lock; a mismatch in the key columns will cause the lock attempt to fail to find a row. Customizations should not call this package directly but should instead route through the documented ASL business APIs, since the table handler layer may change between point releases such as 12.1.1 and 12.2.2 without notice in the public API documentation.