Search Results check_uniqueness
Overview
JTF_Utility_PVT is a private PL/SQL package owned by the APPS schema in Oracle E-Business Suite releases 12.1.1 and 12.2.2. As indicated by its declared purpose in the package header, it provides a private API for a set of common, low-level validation and utility tasks that recur throughout the JTF (CRM Foundation / Technology Foundation) product family. The package is declared with AUTHID CURRENT_USER, meaning that its executable statements execute with the privileges of the invoking user rather than the package owner. This choice matters because several of the package's routines inspect application data generically, and the results depend on the calling session's security context.
Because the package is classified as PVT (private) rather than PUBLIC, it is not intended as a formally supported integration API. It is nonetheless a shared internal building block, and the ETRM metadata records that it is referenced by five other packages. That reference count reflects its role as a central utility layer: rather than each dependent package re-implementing foreign key validation or debug output, they delegate to JTF_Utility_PVT. The header carries a revision identifier of 120.1 dated 2005/07/02, which indicates the code base has remained stable across the 12.1.1 and 12.2.2 codelines.
Key Procedures and Functions
The ETRM documentation lists four documented program units. Their names and documented purposes are as follows:
- CHECK_FK_EXISTS — Documented as a function that checks whether a foreign key is valid. It returns FND_API.g_true or FND_API.g_false. The header notes that any exception encountered is raised to the caller rather than being swallowed internally, so calling code must be prepared to handle exceptions. It also accepts a data type indicator for the primary key value, and the header comments caution against beginning any additional where clause with the keyword "AND."
- CHECK_UNIQUENESS — Documented as a function that checks the uniqueness of keys. The header explains that to keep the routine flexible, the caller passes in the where clause used for the unique key check. This makes it a generic duplicate-detection utility rather than a table-specific constraint check.
- DEBUG_MESSAGE — A diagnostic routine used to emit debug output during package execution. This is consistent with the package's stated purpose of supporting common tasks with minimal overhead.
- DISPLAY_MESSAGES — A routine for presenting accumulated messages, presumably surfacing the FND message stack to the caller or end user.
Two package-level constants, g_number and g_varchar2, are declared to represent numeric and varchar2 data types respectively, and are intended for use with the data type parameter of CHECK_FK_EXISTS. A resource_locked exception is also declared with PRAGMA EXCEPTION_INIT against Oracle error -54, allowing callers to trap resource-busy conditions explicitly.
Tables Accessed
The ETRM extract for this object records no tables referenced through APPS synonyms. This is expected for a utility package: its routines are designed to operate against tables and columns whose names are supplied at runtime by the caller. CHECK_FK_EXISTS and CHECK_UNIQUENESS construct and execute dynamic SQL against the table, primary key column, and where clause provided as arguments. Consequently, the effective set of accessed tables is determined dynamically by each calling package rather than being statically resolvable from the package body. Any analysis of data access for this package should therefore be performed on the caller side.
Usage Notes
JTF_Utility_PVT is invoked from PL/SQL rather than directly from Oracle Forms or concurrent program definitions. Its five documented dependent packages call it as part of validation logic executed during record creation, update, or interface processing. Typical custom-code usage follows the pattern of calling CHECK_FK_EXISTS to confirm that a value supplied for a foreign key column actually exists in the parent table before attempting an insert or update, and calling CHECK_UNIQUENESS before committing a new key combination.
Several practical constraints apply. Callers must supply fully qualified table and column names suitable for dynamic SQL, pass the correct data type constant so that the primary key value is compared correctly, and avoid leading the additional where clause with "AND." Because exceptions propagate to the caller, invoking code must include exception handlers for unexpected errors, and given the AUTHID CURRENT_USER declaration, validation results reflect the privileges of the invoking session. As a private package, it should not be treated as a supported public interface, and direct dependencies on it in customizations carry upgrade risk across 12.1.1 and 12.2.2.
-
PACKAGE: APPS.JTF_UTILITY_PVT
12.1.1
-
PACKAGE BODY: APPS.JTF_UTILITY_PVT
12.1.1
-
PACKAGE: APPS.JTF_UTILITY_PVT
12.2.2
-
PACKAGE BODY: APPS.JTF_UTILITY_PVT
12.2.2
-
APPS.IGS_EN_NSC_OPTIONS_PKG SQL Statements
12.1.1
-
APPS.IGS_UC_APP_NAMES_PKG SQL Statements
12.1.1
-
APPS.IGS_UC_FORM_QUALS_PKG SQL Statements
12.1.1
-
PACKAGE BODY: APPS.IGS_RU_GROUP_PKG
12.1.1
-
APPS.IGS_UC_APP_REFEREES_PKG SQL Statements
12.1.1
-
PACKAGE BODY: APPS.IGS_RU_CALL_RULE_PKG
12.1.1
-
PACKAGE BODY: APPS.IGF_SL_GUARANTOR_PKG
12.1.1
-
APPS.IGF_SL_GUARANTOR_PKG SQL Statements
12.1.1
-
APPS.IGS_UC_APP_ADDRESES_PKG SQL Statements
12.1.1
-
PACKAGE BODY: APPS.IGS_EN_NSC_OPTIONS_PKG
12.1.1
-
PACKAGE BODY: APPS.IGS_ST_CITIZENSHP_CD_PKG
12.1.1
-
PACKAGE BODY: APPS.IGF_AW_REPKG_PRTY_PKG
12.1.1
-
PACKAGE BODY: APPS.IGS_AS_DOC_PURPOSES_PKG
12.1.1
-
PACKAGE BODY: APPS.IGS_PR_STA_TYPE_ELE_PKG
12.1.1
-
PACKAGE BODY: APPS.IGF_AW_FN_RPKG_PRTY_PKG
12.1.1
-
PACKAGE BODY: APPS.IGS_PS_SCH_PRG_CFIG_PKG
12.1.1
-
PACKAGE BODY: APPS.IGS_GE_CFG_NAV_PKG
12.1.1
-
PACKAGE BODY: APPS.IGS_PS_UNIT_TYPE_LVL_PKG
12.1.1
-
PACKAGE BODY: APPS.IGS_PR_CLASS_STD_PKG
12.1.1
-
PACKAGE BODY: APPS.IGS_AS_GPC_ACA_STNDG_PKG
12.1.1
-
PACKAGE BODY: APPS.IGS_ST_GVTSEMLOAD_CA_PKG
12.1.1
-
PACKAGE BODY: APPS.IGS_PS_USEC_CAL_NUMS_PKG
12.1.1
-
PACKAGE BODY: APPS.IGS_PS_RPT_FMLY_PKG
12.1.1
-
PACKAGE BODY: APPS.IGS_ST_GVTSEMLOAD_OV_PKG
12.1.1
-
PACKAGE BODY: APPS.IGR_I_ENTRY_LVLS_PKG
12.1.1
-
PACKAGE BODY: APPS.IGS_FI_LB_CR_TYPES_PKG
12.1.1
-
APPS.IGS_UC_MAP_OUT_STAT_PKG SQL Statements
12.1.1
-
PACKAGE BODY: APPS.IGS_FI_GV_DSP_HEC_CN_PKG
12.1.1
-
PACKAGE BODY: APPS.IGS_HE_OU_CC_PKG
12.1.1
-
APPS.IGS_RU_GROUP_PKG SQL Statements
12.1.1
-
APPS.IGS_RU_CALL_RULE_PKG SQL Statements
12.1.1
-
PACKAGE BODY: APPS.IGF_AW_FUND_PRG_PKG
12.1.1
-
PACKAGE BODY: APPS.IGS_PR_CS_SCHDL_PKG
12.1.1
-
PACKAGE BODY: APPS.IGS_AD_DSCP_ATTR_PKG
12.1.1
-
PACKAGE BODY: APPS.IGF_AW_FUND_UNIT_PKG
12.1.1
-
PACKAGE BODY: APPS.IGS_PS_US_PRENR_CFG_PKG
12.1.1
-
PACKAGE BODY: APPS.IGS_PS_USEC_ACT_TYPE_PKG
12.1.1
-
PACKAGE BODY: APPS.IGS_FI_LB_REC_TYPES_PKG
12.1.1
-
PACKAGE BODY: APPS.IGS_FI_PP_TMPL_LNS_PKG
12.1.1
-
PACKAGE BODY: APPS.IGS_AS_GPC_UNIT_SETS_PKG
12.1.1
-
PACKAGE BODY: APPS.IGF_AW_FUND_TYPE_PKG
12.1.1
-
PACKAGE BODY: APPS.IGS_FI_A_HIERARCHIES_PKG
12.1.1
-
PACKAGE BODY: APPS.IGS_HE_CODE_VALUES_PKG
12.1.1
-
PACKAGE BODY: APPS.IGS_PS_RSV_EXT_PKG
12.1.1
-
PACKAGE BODY: APPS.IGF_AW_FUND_FEECLAS_PKG
12.1.1
-
PACKAGE: APPS.JG_TAXID_VAL_PKG
12.2.2