Search Results delete_solution




Overview

APPS.PER_SOLUTION_API is a public Oracle E-Business Suite PL/SQL API that manages the lifecycle of "solutions" within the Oracle HRMS (Human Resources Management System) schema. A solution in this context represents a reusable, categorized knowledge or configuration record — typically associated with Oracle iSupport, Oracle Knowledge Management, or related self-service and customer-support flows that rely on the PER (Human Resources) solution framework. The package encapsulates the business logic required to create, modify, and remove solution records while enforcing HRMS API conventions such as effective dating, object versioning, validation-only ("dry run") mode, and the standard Before/After process user hooks.

The package body carries the header identifier pesolapi.pkb and delegates the actual row manipulation to lower-level entity handlers — specifically the corresponding PER_SOLUTION_BK1 (before-process) and by extension PER_SOLUTION_BK2/PER_SOLUTION_BK3 (after-process) business-key packages. This layered design is the standard Oracle HRMS "API + BK" pattern, which separates the public, supported interface from the internal DML logic and provides well-known user-hook extension points.

Key Procedures and Functions

The API exposes three documented procedures, all of which are public and intended for supported custom use:

  • CREATE_SOLUTION — Inserts a new solution record. It accepts an effective date, a solution name, a solution type name, and optionally a description, a link to a full description, a vertical, a legislation code, and a user identifier. It returns the newly generated solution_id and object_version_number as out parameters. The procedure supports a p_validate flag so callers can exercise the full validation path without committing data; when validation is requested, the work is rolled back to the CREATE_SOLUTION savepoint. All incoming date values are truncated to remove the time component before being passed to the before-process hook.
  • UPDATE_SOLUTION — Modifies an existing solution record identified by its primary key. It applies the same HRMS conventions (validation mode, effective dating, object version checking) to guard against lost updates.
  • DELETE_SOLUTION — Removes or logically terminates a solution record, again honoring the validation flag and object version number so that concurrent modifications are detected.

Tables Accessed

The package operates against the PER_SOLUTIONS table (referenced via an APPS synonym). This single base table stores the solution master rows, including the solution identifier, name, description, type, vertical, legislation code, and the object version number used for optimistic locking. All reads and writes are performed indirectly through the BK packages, which own the actual INSERT, UPDATE, and DELETE statements; PER_SOLUTION_API itself acts as the controlling façade that sets up context, invokes the hooks, performs validation, and manages the transaction via savepoints.

Usage Notes

Because PER_SOLUTION_API is classified as a supported API and is referenced by no other packaged objects, it is designed for external invocation — from Oracle Forms, concurrent programs, or custom PL/SQL code that needs to programmatically maintain solution data. Typical invocation patterns follow the HRMS standard:

  • Call the procedure with p_validate => true first to confirm that all data and business rules pass, then re-invoke with p_validate => false to persist.
  • Always supply a valid p_effective_date (it is truncated internally) and retain the returned solution_id and object_version_number for subsequent update or delete calls.
  • Expected errors are raised through HR_API and HR_UTILITY; callers should include exception handlers for the documented HRMS API exceptions (such as cannot_find_prog_unit) rather than trapping them silently.
  • Do not perform direct DML against PER_SOLUTIONS; doing so bypasses the validation, versioning, and hook logic that this API provides and may corrupt object version numbers.