Search Results csd_sc_code_exists
Overview
CSD_SERVICE_CODES_PVT is a private PL/SQL API package in the Oracle E-Business Suite Service (CSD) module, delivered under the APPS schema. It encapsulates the business logic for maintaining service codes, which are the purchasable service offerings that can be attached to items, orders, and service contracts. The package body implements a small, focused set of programmatic interfaces that perform the actual inserts, updates, and row locking against the base service code table on behalf of higher-level public APIs and user interfaces. As a PVT (private) classification package, it is not intended as a standalone integration surface; it is invoked by the public API layer that validates and orchestrates service code maintenance.
The header comment identifies the source file as csdvcscb.pls (version 115.5) and the package constant G_PKG_NAME as 'CSD_SERVICE_CODES_PVT'. The code follows the Oracle Application Object Library (AOA) API standard: it declares standard API version constants, calls FND_API.Compatible_API_Call for call compatibility checking, opens a savepoint at entry, and participates in the FND_MSG_PUB message stack through x_return_status, x_msg_count, and x_msg_data out parameters. Logging is instrumented through FND_LOG with module name 'csd.plsql.csd_service_codes_pvt.create_service_code', indicating diagnostic support across the standard FND_LOG levels (statement, procedure, event, exception, error, unexpected).
Key Procedures and Functions
- CREATE_SERVICE_CODE — Creates a new service code record. It accepts the standard AOA API parameters (API version, commit flag, message list initialization, validation level, and the message-stack out parameters) plus a service code record and returns the generated service code identifier. Internally it declares the exception CSD_SC_CODE_EXISTS to signal duplicate service codes and performs the standard savepoint, compatibility check, and error-handling sequence documented at the top of the body.
- UPDATE_SERVICE_CODE — Modifies an existing service code. This is the procedure most directly associated with the user's search term "update_service_code." It applies changed attribute values to the stored service code and, consistent with the package's API conventions, returns status and message information to the caller.
- LOCK_SERVICE_CODE — Obtains a row-level lock on a service code record, guarding against concurrent modification before an update. It supports the standard read-modify-write pattern used by forms and by the public API wrapper.
The procedures share the private package convention of not exposing their parameter lists publicly; callers reach them through the public CSD service code API rather than directly.
Tables Accessed
The documented table reference is CSD_SERVICE_CODES_B, the base table that stores service code definitions. The package writes new rows during CREATE_SERVICE_CODE, modifies existing rows during UPDATE_SERVICE_CODE, and selects the target row for locking during LOCK_SERVICE_CODE. Access is made through the APPS synonym, as is standard for seeded EBS code. No translation (_TL) or other child tables are documented in the metadata excerpt.
Usage Notes
Because this is a PVT package, it is normally invoked indirectly. The principal callers are the public service code API and the Service Codes setup form, which drive CREATE, UPDATE, and LOCK operations in response to user actions. The metadata records that the package is referenced by one other package, confirming that its exposure is through a single public wrapper. Custom code should call the public API rather than CSD_SERVICE_CODES_PVT directly, since the private layer is subject to change between releases and does not carry the compatibility guarantees of the public interface. When invoked, callers must supply a valid p_api_version, observe the standard x_return_status values (FND_API.G_RET_STS_SUCCESS, ERROR, UNEXPECTED_ERROR), and inspect the message stack via FND_MSG_PUB.Count_And_Get when the status is not success. The same behavior applies across EBS 12.1.1 and 12.2.2, since the file header predates both releases and the package logic is unchanged between them.
-
PACKAGE BODY: APPS.CSD_SERVICE_CODES_PVT
12.1.1
-
PACKAGE BODY: APPS.CSD_SERVICE_CODES_PVT
12.2.2
-
APPS.CSD_SERVICE_CODES_PVT dependencies on FND_MESSAGE
12.1.1
-
APPS.CSD_SERVICE_CODES_PVT dependencies on FND_MESSAGE
12.2.2
-
APPS.CSD_SERVICE_CODES_PVT dependencies on STANDARD
12.1.1
-
APPS.CSD_SERVICE_CODES_PVT dependencies on FND_MSG_PUB
12.2.2
-
APPS.CSD_SERVICE_CODES_PVT dependencies on STANDARD
12.2.2
-
APPS.CSD_SERVICE_CODES_PVT dependencies on FND_MSG_PUB
12.1.1
-
APPS.CSD_SERVICE_CODES_PVT dependencies on FND_LOG
12.2.2
-
APPS.CSD_SERVICE_CODES_PVT dependencies on FND_LOG
12.1.1
-
APPS.CSD_SERVICE_CODES_PVT dependencies on FND_API
12.2.2
-
APPS.CSD_SERVICE_CODES_PVT dependencies on FND_API
12.1.1