Search Results copy_rule




Overview

PA_ALLOC_COPY_RULE_PKG is a PL/SQL package owned by the APPS schema in Oracle E-Business Suite, delivered as part of the Oracle Projects (PA) application. Its business purpose is to duplicate an existing allocation rule, together with its associated descriptive attributes, so that users can rapidly create a new rule based on a previously defined one rather than re-entering all allocation definitions manually.

Allocation rules in Oracle Projects determine how indirect costs, revenue, and amounts are distributed across projects, tasks, and general ledger accounts. Because a rule typically references multiple source lines, target lines, GL lines, and resources, replicating it by hand is error-prone and time-consuming. This package provides a single, encapsulated API that performs the copy operation in one call, ensuring that the copied rule and its dependent lines remain internally consistent. The API classification recorded in ETRM 12.2.2 is OTHER, indicating that it is an internal support package rather than a public, fully supported open interface. The header comment in the source (PAXALCRS.pls 120.1) confirms it is a shipped Oracle file rather than a customer extension.

Key Procedures and Functions

The package exposes a single documented procedure, COPY_RULE. It takes as input the identifier of the rule to be copied, the name to assign to the new rule, and a description for the new rule. It returns two output parameters: a return code indicating success or failure and an error buffer carrying any diagnostic message. Together these outputs follow the standard Oracle EBS concurrent-program convention, allowing callers to evaluate the outcome and surface a meaningful error to the user or log.

Because the procedure is the only member of the package, the copy logic is centralized: resolving the source rule, generating the new rule header, and duplicating the child lines are all handled inside a single invocation, which simplifies both the form-level call and any programmatic reuse.

Tables Accessed

ETRM metadata lists seven tables referenced through APPS synonyms:

  • PA_ALLOC_RULES_ALL and PA_ALLOC_RULES_S — the base and translation tables for allocation rule headers, holding the rule name, description, and allocation attributes.
  • PA_ALLOC_SOURCE_LINES and PA_ALLOC_TARGET_LINES — the source and target definitions belonging to each rule, copied so the new rule distributes amounts identically.
  • PA_ALLOC_RESOURCES — the resources (for example, expenditure categories or cost bases) associated with the rule.
  • PA_ALLOC_GL_LINES — the general ledger account lines used by the allocation, ensuring the copied rule posts to the same accounts.
  • PA_BUDGET_TYPES — referenced to validate or carry forward the budget type context associated with the rule.

In practice the procedure reads the parent rule and its child rows from these tables and inserts new rows, keyed to the newly generated rule identifier, with the user-supplied name and description.

Usage Notes

The package is normally invoked from the Oracle Projects allocation rule maintenance form when a user selects a copy action, or from custom concurrent programs and PL/SQL that automate rule creation. The standard calling pattern wraps COPY_RULE with the source rule ID, the new name and description, and then inspects the return code and error buffer. Because the operation writes to multiple rule-related tables, callers should ensure the transaction is committed or rolled back appropriately, and should confirm that the target rule name is unique before invocation. Custom code should treat the package as an internal API and validate behavior against the target release, since the signature in the header file dates from 2005 and may be subject to change.