Search Results find_cc_receiver
Overview
IGI_ITR_APPROVAL_PKG is the approval engine for the Oracle E-Business Suite internal requisition / intercompany transfer requisition (ITR) workflow, part of the IGI (Internal Requisition) product family. Its package body source header (igiitrwb.pls, shipped as version 120.10) confirms its role in the "ITR Workflow" module. The package implements the business logic that drives charge-center approval routing, approver resolution, delegation of authority checks, and the capture of approval history for requisition charge lines.
Functionally, the package answers the central governance question in expense approval: who is authorized to approve a given charge line, and in what order? It resolves approval authority by comparing transaction amounts against authorization limits held in the General Ledger, identifies the receiver of an approval request, determines whether an approver is the final approver in a routing chain, and manages the hand-off between preparer, secondary approver, and receiver personas. Because approval errors must be diagnosable, the package embeds an extensive FND_LOG-based diagnostic framework — this is the source of the igi_logging_unexp_error message token referenced in the search.
Key Procedures and Functions
- START_APPROVAL_WORKFLOW — Initiates the ITR approval workflow for a submitted charge line, launching the Oracle Workflow process that coordinates subsequent approval steps.
- GET_SOB_ATTRIBUTES / GET_CC_ATTRIBUTES — Retrieve set-of-books and charge-center attributes required for routing and authority determination.
- DID_PREPARER_APPROVE — Determines whether the preparer has already approved, preventing redundant approval or enforcing separation-of-duties rules.
- SET_APPROVER_NAME_TO_PREP / SET_APPROVER_NAME_TO_SEC_APP / SET_APPROVER_NAME_TO_REC — Assign the active approver role to the preparer, secondary approver, or receiver respectively; these maintain the current-approver state used by notification and history logic.
- SECONDARY_APPROVER_SELECTED — Evaluates whether a secondary approver has been designated for the current routing step.
- MAINTAIN_HISTORY — Writes approval/rejection actions into the history table for audit and subsequent inquiry.
- SUBMIT_CC_LINE / NO_SUBMIT_CC_LINE / APPROVE_CC_LINE / REJECT_CC_LINE — The state-transition procedures for a charge line: submission, non-submission, approval, and rejection.
- FIND_CC_RECEIVER — Resolves the receiver of an approval notification for a charge line, typically the person who must act next.
- DOUBLE_TIMEOUT / FINAL_APPROVER / IS_RECEIVER_FINAL_APPROVER — Timeout handling and finality checks that determine when an approval chain terminates and the receiver has sign-off authority.
- VERIFY_AUTHORITY — Validates that the acting approver holds sufficient authorization limit for the transaction amount.
- GETMANAGER — Retrieves the manager of an employee, used for escalation or hierarchical routing.
- SETPERSONAS — Populates the persona/role context under which the approval is performed.
The private GET_AUTHORIZATION_LIMIT helper queries GL_AUTHORIZATION_LIMITS and returns zero when no limit row exists, keeping routing logic safe for unbounded users. DIAGN_MSG, the private diagnostic procedure, gates FND_LOG output against the current runtime level.
Tables Accessed
- GL_AUTHORIZATION_LIMITS — Source of employee approval limits by ledger; read by GET_AUTHORIZATION_LIMIT and VERIFY_AUTHORITY.
- IGI_ITR_CHARGE_HEADERS / IGI_ITR_CHARGE_LINES — The approval target; read and updated as lines move through submit/approve/reject states.
- IGI_ITR_CHARGE_CENTER / IGI_ITR_CHARGE_RANGES / IGI_ITR_CHARGE_SETUP — Configuration that defines charge-center and amount-range routing rules.
- IGI_ITR_ACTION_HISTORY — Audit trail written by MAINTAIN_HISTORY.
- IGI_ITR_APPROVAL_SS_S — Approval configuration/setup data for the routing engine.
- IGI_ITR_CHARGE_SERVICE / IGI_ITR_SERVICE — Service definitions associated with charge lines.
- FND_USER — Resolves user identities, managers, and persona assignments.
Usage Notes
This package is not a public API; ETRM classifies it as OTHER and it is referenced by no other documented packages. It is invoked indirectly by the ITR approval workflow and the corresponding OAF/Forms-based charge-line approval pages, which call APPROVE_CC_LINE, REJECT_CC_LINE, and SUBMIT_CC_LINE in response to user gestures. Custom code extending ITR approval routing should call the documented public procedures rather than the private helpers.
The diagnostic design is significant for troubleshooting. The package caches FND_LOG runtime levels at initialization and emits messages only when the message level is at or above the current runtime level. In the exception handler of GET_AUTHORIZATION_LIMIT, an unexpected error triggers FND_MESSAGE.SET_NAME('IGI','IGI_LOGGING_UNEXP_ERROR'), with tokens CODE (SQLCODE) and MSG (SQLERRM), then logs via FND_LOG.MESSAGE. To surface these diagnostics in 12.1.1 or 12.2.2, raise the IGI logging profile option to the appropriate level and review the FND log file; the message token igi_logging_unexp_error therefore indicates an unforeseen Oracle error — most often a missing or duplicated authorization-limit row — inside the approval authority lookup.
-
PACKAGE BODY: APPS.IGI_ITR_APPROVAL_PKG
12.1.1
-
PACKAGE BODY: APPS.IGI_ITR_APPROVAL_PKG
12.2.2
-
PACKAGE: APPS.IGI_ITR_APPROVAL_PKG
12.1.1
-
PACKAGE: APPS.IGI_ITR_APPROVAL_PKG
12.2.2
-
APPS.IGI_ITR_APPROVAL_PKG dependencies on WF_DIRECTORY
12.1.1
-
APPS.IGI_ITR_APPROVAL_PKG dependencies on WF_DIRECTORY
12.2.2
-
APPS.IGI_ITR_APPROVAL_PKG dependencies on FND_USER
12.1.1
-
APPS.IGI_ITR_APPROVAL_PKG dependencies on FND_USER
12.2.2
-
APPS.IGI_ITR_APPROVAL_PKG dependencies on WF_ENGINE
12.2.2
-
APPS.IGI_ITR_APPROVAL_PKG dependencies on WF_ENGINE
12.1.1
-
APPS.IGI_ITR_APPROVAL_PKG dependencies on WF_CORE
12.1.1
-
APPS.IGI_ITR_APPROVAL_PKG dependencies on WF_CORE
12.2.2
-
APPS.IGI_ITR_APPROVAL_PKG dependencies on IGI_ITR_APPROVAL_PKG
12.2.2
-
APPS.IGI_ITR_APPROVAL_PKG dependencies on IGI_ITR_APPROVAL_PKG
12.1.1
-
APPS.IGI_ITR_APPROVAL_PKG dependencies on FND_MESSAGE
12.1.1
-
APPS.IGI_ITR_APPROVAL_PKG dependencies on FND_MESSAGE
12.2.2
-
APPS.IGI_ITR_APPROVAL_PKG dependencies on FND_LOG
12.1.1
-
APPS.IGI_ITR_APPROVAL_PKG dependencies on FND_LOG
12.2.2