Search Results check_proj_tot_contribution




Overview

PA_CUSTOMER_INFO is an Oracle Projects PL/SQL package owned by APPS and classified under ETRM as an OTHER API. It centralizes the logic Oracle EBS uses to resolve, validate, and maintain the customer, address, and contact information attached to a project. In Oracle Projects, a project is linked to one or more customers through the PA_PROJECT_CUSTOMERS table, and each relationship carries bill-to and ship-to customer, address, and contact references. PA_CUSTOMER_INFO encapsulates the derivation of those defaults, the creation of contact records, and a set of validation and status checks used by project entry, project customer maintenance, and billing-related flows. The package is declared AUTHID CURRENT_USER, so it executes with the privileges of the calling schema rather than as definer rights.

Key Procedures and Functions

  • GET_CUSTOMER_INFO — Retrieves the default customer, address, and contact information for a project and customer combination, returning bill-to and ship-to customer, address, and contact identifiers. Its parameter list includes flags controlling quick entry behavior and the calling module, reflecting its role as a shared derivation routine for downstream forms.
  • CREATE_CUSTOMER_CONTACTS — Creates project contact records for a customer associated with a project, taking project, customer, project relationship, split, address, contact, and invoice-related attributes required to establish the contact and invoicing context.
  • IS_ADDRESS_VALID — Validates an address reference against the customer model before it is stored or used on a project customer relationship.
  • IS_CONTACT_VALID — Validates a contact reference, ensuring the contact is legitimate and permissible for the given customer context.
  • REVENUE_ACCRUED_OR_BILLED — Determines whether revenue has been accrued or billed against a project customer relationship, used to guard changes to customer data after financial activity has occurred.
  • CHECK_PROJ_TOT_CONTRIBUTION — Evaluates the total contribution of a project's customer relationships, typically to confirm that the distribution across customers is complete and consistent before invoicing.
  • CHECK_RECEIVER_PROJ_ENTERABLE — Verifies whether a receiver project is enterable, supporting cross-project or inter-project customer and billing relationships where a receiving project must be open and eligible for entry.

Tables Accessed

The package works primarily with Oracle Projects and Oracle Receivables/HZ (Trading Community Architecture) tables through APPS synonyms. PA_PROJECT_CUSTOMERS, PA_PROJECT_CONTACTS, PA_PROJECTS, and PA_PROJECTS_ALL supply project and project-customer relationship context. Customer and party data are read from HZ_CUST_ACCOUNTS, HZ_CUST_ACCOUNT_ROLES, HZ_CUST_ACCT_RELATE, HZ_CUST_ACCT_SITES_ALL, HZ_CUST_SITE_USES, HZ_PARTIES, and HZ_ROLE_RESPONSIBILITY. Financial status checks draw on PA_DRAFT_INVOICES and PA_DRAFT_REVENUES, while PA_IMPLEMENTATIONS and PA_IMPLEMENTATIONS_ALL provide implementation-level setup. This combination supports both validation against the customer model and safeguards against modifying relationships already carrying billing or revenue activity.

Usage Notes

PA_CUSTOMER_INFO is invoked from Oracle Projects forms and related concurrent or custom code that manage project customer assignments, project contacts, and billing setup. It is referenced by four other packages, indicating it functions as a shared service layer rather than a standalone entry point. The CHECK_RECEIVER_PROJ_ENTERABLE function is called during entry flows to confirm a receiving project can accept the relationship. Typical consumers include the project customer maintenance form and processes that default bill-to and ship-to data. Customizations should call these procedures only within the documented contract, as the GET_CUSTOMER_INFO and CREATE_CUSTOMER_CONTACTS signatures carry IN OUT NOCOPY parameters and calling-module flags whose semantics are controlled by the owning application.