Search Results fnd_msg




Overview

CSD_RO_SERVICE_CODES_PVT is a private PL/SQL package body in the APPS schema that provides the application programming interface for maintaining Repair Order (RO) service codes within the Oracle E-Business Suite Service (CSD) module. Service codes represent the individual labor, service, or repair activities that can be attached to a repair order, and this package encapsulates the create, update, delete, and locking logic required to keep the underlying CSD_RO_SERVICE_CODES table consistent. The package follows the standard Oracle EBS API architecture: it derives its constants and error handling conventions from FND_API and the FND message dictionary, and wraps every write operation in a savepoint so that callers can control transaction boundaries through the standard p_commit and p_init_msg_list parameters. Because the package is classified as PVT, it is not intended for direct external invocation; consumers are expected to call the corresponding public wrapper, which delegates validation and persistence to this body. The package also instruments its execution with FND_LOG calls, using the current runtime log level and the standard severity levels (statement, procedure, event, exception, error, unexpected) to support diagnostics. The version banner in the header confirms the source file csdvrscb.pls, last revised in September 2006, and the API version constant is 1.0, indicating a stable, long-lived interface used across both 12.1.1 and 12.2.2 environments.

Key Procedures and Functions

The package exposes four documented procedures, each aligned to a discrete lifecycle operation on a repair order service code:

  • CREATE_RO_SERVICE_CODE — Inserts a new RO service code using the RO_SERVICE_CODE_REC_TYPE record as the input payload, returning the generated identifier through an OUT parameter. The procedure opens with a SAVEPOINT named after itself, validates call compatibility through FND_API.Compatible_API_Call against the internal API version, and honors the standard API contract parameters.
  • UPDATE_RO_SERVICE_CODE — Modifies the attributes of an existing RO service code record, applying the same compatibility, message-stack, and savepoint conventions as the create operation.
  • DELETE_RO_SERVICE_CODE — Removes an RO service code, ensuring dependent repair order references are handled according to the module's business rules before the row is purged.
  • LOCK_RO_SERVICE_CODE — Acquires a row-level lock on the specified service code, allowing concurrent callers to serialize edits and prevent lost updates in multi-user repair order maintenance.

Tables Accessed

The package operates against a single documented table, CSD_RO_SERVICE_CODES, referenced through the APPS synonym. All four procedures read and write this table: create inserts a row, update modifies an existing row, delete removes it, and lock selects it for update. No other base tables are documented as direct dependencies, which keeps the package's transactional footprint narrow and its locking scope predictable.

Usage Notes

CSD_RO_SERVICE_CODES_PVT is referenced by four other packages, indicating it functions as an internal service layer consumed by higher-level CSD APIs rather than by end-user forms directly. In practice it is invoked indirectly: Oracle Forms-based repair order screens and related concurrent programs call the public CSD service code API, which in turn delegates to these private procedures. Customizations should call the public wrapper rather than this body, and should always inspect x_return_status and drain the FND message stack via FND_MSG_PUB.Count_And_Get. Because the package uses SAVEPOINT-based error handling, callers that pass p_commit => FND_API.G_FALSE can safely roll back to the savepoint on failure without disrupting the surrounding transaction.