Search Results check_duplicate_customer
Overview
PA_CUSTOMERS_CONTACTS_UTILS is a utility PL/SQL package owned by APPS in Oracle E-Business Suite, supporting the Project Accounting (PA) module. Its business purpose is to centralize the validation, lookup, and integrity-checking logic that governs the relationship between Oracle Projects and Oracle Receivables customer and contact data modeled in Oracle Trading Community Architecture (TCA). The package is declared with AUTHID CURRENT_USER, meaning that runtime privilege resolution occurs under the invoking schema rather than the package owner, which allows it to be safely called by other application modules and custom code operating within the APPS environment.
The utility procedures validate customer names, numbers, and identifiers against TCA tables such as HZ_CUST_ACCOUNTS and HZ_PARTIES, verify billing and work site information, resolve contact identifiers and roles, and enforce Project Accounting configuration rules concerning contributions, funding, and invoicing. It is classified under API classification OTHER in the ETRM 12.2.2 metadata, indicating it is a supporting utility layer rather than a public business API. The package is referenced by eight other packages, confirming its role as a shared validation service within Oracle Projects.
Key Procedures and Functions
The documented procedures fall into several functional groupings:
- Customer resolution: CHECK_CUSTOMER_NAME_OR_ID, CHECK_CUSTOMER_NUMBER_OR_ID, and CHECK_CUSTOMER_NAME_AND_NUMBER resolve or verify customer records using either naming conventions or identifiers, returning a validated customer ID, a return status, and an error message code.
- Site resolution: CHECK_BILL_SITE_NAME_OR_ID, CHECK_WORK_SITE_NAME_OR_ID, and CHECK_BILL_WORK_SITES_REQUIRED validate bill-to and work site information and enforce whether site assignment is mandatory for a given customer context.
- Contact resolution: CHECK_CONTACT_NAME_OR_ID, CHECK_CONTACT_TYP_NAME_OR_CODE, and CHECK_DUPLICATE_CONTACT resolve contacts, validate contact types, and detect duplicate contact definitions.
- Project and receiver validation: CHECK_RECEIVER_PROJ_NAME_OR_ID and CHECK_RECEIVER_PROJ_ENTERABLE validate receiver projects and determine whether they are enterable.
- Contribution and funding rules: CHECK_CONTRIBUTION_PERCENTAGE, CHECK_CONTRIBUTION_TOTAL, CHECK_CC_PRVDR_FLAG_CONTRIB, CHECK_UPDATE_CONTRIB_ALLOWED, and GET_CONTRIBUTION_TOTAL govern contribution percentages, validate totals, and enforce provider flag and update rules.
- Integrity and currency checks: CHECK_DUPLICATE_CUSTOMER, CHECK_DELETE_CUSTOMER_ALLOWED, CHECK_INVOICE_CURRENCY_INFO, and GET_ORG_ID enforce referential and operational constraints.
The x_error_msg_code parameter returned by several of these procedures is a message-name token that callers pass to the FND_MESSAGE utility for user-facing error text.
Tables Accessed
The package reads and writes several groups of tables, all accessed through APPS synonyms:
- TCA customer data: HZ_CUST_ACCOUNTS, HZ_CUST_ACCOUNT_ROLES, HZ_PARTIES, and HZ_ROLE_RESPONSIBILITY underpin customer, site, and contact validation.
- Project customer and contact data: PA_PROJECT_CUSTOMERS and PA_PROJECT_CONTACTS store the associations being validated.
- Project structures: PA_PROJECTS, PA_PROJECTS_ALL, PA_PROJECT_TYPES, PA_AGREEMENTS_ALL, and PA_PROJECT_FUNDINGS support receiver project and funding checks.
- Configuration and billing: PA_IMPLEMENTATIONS, PA_IMPLEMENTATIONS_ALL, PA_DRAFT_INVOICES, and PA_DRAFT_REVENUES support currency, invoicing, and setup validation.
Usage Notes
PA_CUSTOMERS_CONTACTS_UTILS is typically invoked from Oracle Projects forms (such as customer and contact maintenance), from concurrent programs that import or validate project customer data, and from other PL/SQL packages within the Projects family. Because it is not a formally published API and carries the OTHER classification, custom code should call it cautiously, observe the standard x_return_status convention, and translate x_error_msg_code values through FND_MESSAGE. The NOCOPY parameter hints and the reference to bug 4440895 indicate performance-oriented OUT parameter handling introduced in later 11i and 12.x code lines, and the package remains compatible across 12.1.1 and 12.2.2 releases.
-
PACKAGE: APPS.PA_CUSTOMERS_CONTACTS_UTILS
12.2.2
-
PACKAGE: APPS.PA_CUSTOMERS_CONTACTS_UTILS
12.1.1
-
PACKAGE: APPS.OE_CUSTOMER_INFO_PVT
12.2.2
-
PACKAGE BODY: APPS.PA_CUSTOMERS_CONTACTS_UTILS
12.2.2
-
PACKAGE BODY: APPS.OE_CUSTOMER_INFO_PVT
12.2.2
-
PACKAGE BODY: APPS.PA_CUSTOMERS_CONTACTS_UTILS
12.1.1
-
APPS.OE_CUSTOMER_INFO_PVT dependencies on OE_ORDER_PUB
12.2.2
-
APPS.OE_CUSTOMER_INFO_PVT dependencies on OE_ORDER_PUB
12.2.2
-
APPS.OE_CUSTOMER_INFO_PVT dependencies on OE_CUSTOMER_INFO_PVT
12.2.2
-
APPS.OE_CUSTOMER_INFO_PVT dependencies on FND_API
12.2.2
-
APPS.OE_CUSTOMER_INFO_PVT dependencies on OE_DEBUG_PUB
12.2.2
-
APPS.PA_CUSTOMERS_CONTACTS_UTILS dependencies on FND_API
12.2.2
-
APPS.PA_CUSTOMERS_CONTACTS_UTILS dependencies on FND_API
12.1.1