Search Results qa_specs_s
Overview
QA_SPECS_PUB is a public PL/SQL package in the Oracle E-Business Suite Quality (QA) module that exposes the core specification APIs used to create, populate, complete, copy, and delete quality specifications. Specifications in Oracle Quality define the characteristics, target values, and ranges against which products, lots, or process outputs are measured during inspection and data collection. The package body (qltpspcb.plb) is owned by APPS and classified as PUB, indicating that its procedures form part of a supported programmatic interface that other EBS modules, forms, and customer extensions may call directly.
The header comment dates the last source revision to 2011 (120.3), so the same package is shipped essentially unchanged across Oracle EBS 12.1.1 and 12.2.2. The body implements internal caching mechanisms to reduce redundant database work: a g_qa_specs_array associative array keyed by spec_id caches header rows from QA_SPECS, and a user-name/user-id cache (g_user_name_cache, g_user_id_cache) resolves FND_USER lookups, since the same user frequently calls the APIs in succession.
Key Procedures and Functions
The documented API surface comprises six procedures:
- CREATE_SPECIFICATION — Creates a new specification header, including its name, version, and organizational context, and assigns the resulting specification identifier used by all subsequent element operations.
- ADD_SPEC_ELEMENT — Attaches an individual specification element, linking a quality character (from QA_CHARS) to the parent specification with its target value, tolerance, and range information.
- COMPLETE_SPEC_PROCESSING — Finalizes a specification after its header and elements have been defined, performing the closing validation and status transitions required before the specification becomes usable in inspection and collection plans.
- DELETE_SPECIFICATION — Removes a specification header and its associated definition, subject to the standard EBS validation that the specification is not referenced by active plans or transaction data.
- DELETE_SPEC_ELEMENT — Removes a single element from an existing specification without deleting the specification itself.
- COPY_SPECIFICATION — Duplicates an existing specification, creating a new specification that inherits the source header attributes and element definitions. This is the API most commonly referenced by the search term "copy_specification," and it is typically used to derive a new version or organization-specific variant from a master specification rather than re-entering elements manually.
No parameter lists are documented in the available metadata; callers should obtain exact signatures from the package specification (qltspscs.pls) in the APPS schema.
Tables Accessed
The package references the following tables through APPS synonyms:
- QA_SPECS and QA_SPECS_S — The specification header and its translated (TL-style) secondary table; QA_SPECS is cached by the body's global array.
- QA_SPEC_CHARS — Specification element (character) definitions, written by ADD_SPEC_ELEMENT and read by COPY_SPECIFICATION.
- QA_CHARS — Quality character master definitions referenced when validating and attaching elements.
- FND_USER — Resolves the calling user name to a user_id via the cached
get_user_idfunction; returns -1 when the name is not found. - MTL_SYSTEM_ITEMS and MTL_CATEGORY_SETS — Item and category-set validation for specifications scoped to items or categories.
- DUAL and PLITBLM — Utility references used for basic selection and PL/SQL table handling.
Usage Notes
QA_SPECS_PUB is invoked from the Oracle Quality forms (such as the specifications and specification copy windows) and can be called from concurrent programs or custom PL/SQL that automates specification maintenance. Because it is classified PUB, it is the supported entry point for programmatic specification creation and copying; direct DML against QA_SPECS is not recommended. Applications should follow the intended sequence: CREATE_SPECIFICATION, one or more ADD_SPEC_ELEMENT calls, then COMPLETE_SPEC_PROCESSING. The package is referenced by zero other packages in the documented dependency set, so its impact surface is limited to its direct callers. The duplicate get_user_id comment in the source indicates corresponding logic exists in qltpspcb.plb's form-side counterpart, and any modification must be propagated to both files.
-
SEQUENCE: QA.QA_SPECS_S
12.1.1
owner:QA, object_type:SEQUENCE, object_name:QA_SPECS_S, status:VALID,
-
SYNONYM: APPS.QA_SPECS_S
12.2.2
owner:APPS, object_type:SYNONYM, object_name:QA_SPECS_S, status:VALID,
-
SYNONYM: APPS.QA_SPECS_S
12.1.1
owner:APPS, object_type:SYNONYM, object_name:QA_SPECS_S, status:VALID,
-
SEQUENCE: QA.QA_SPECS_S
12.2.2
owner:QA, object_type:SEQUENCE, object_name:QA_SPECS_S, status:VALID,
-
12.2.2 DBA Data
12.2.2
-
12.1.1 DBA Data
12.1.1
-
12.1.1 DBA Data
12.1.1
-
12.2.2 DBA Data
12.2.2
-
PACKAGE BODY: APPS.QA_SPECS_PUB
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:QA_SPECS_PUB, status:VALID,
-
12.1.1 DBA Data
12.1.1
-
PACKAGE BODY: APPS.QA_SPECS_PUB
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:QA_SPECS_PUB, status:VALID,
-
12.2.2 DBA Data
12.2.2
-
APPS.QA_SPECS_PUB dependencies on QA_SPECS_S
12.1.1
-
APPS.QA_SPECS_PUB dependencies on QA_SPECS_S
12.2.2
-
12.2.2 DBA Data
12.2.2
-
12.1.1 DBA Data
12.1.1