Search Results submit_late_charge_child
Overview
AR_LATE_CHARGE_PKG is the core PL/SQL package in Oracle Receivables responsible for assessing late charges (interest) against overdue customer transactions, generating the corresponding charge invoices, debit memos, and adjustments, and driving the Invoice API interface used to create them. Functionally it supports the Receivables "Late Charges" feature, in which finance organizations apply interest to delinquent balances based on a configured interest rate, grace period, and calculation rules.
The package is declared AUTHID CURRENT_USER, meaning its SQL executes under the privileges of the invoking user, and it is owned by APPS. It depends on Receivables system options, interest rate definitions, and the AR Invoice API work tables to construct and post charge documents. It exposes a mix of public driver procedures (invoked from concurrent programs and forms) and internal helper routines used across the late charge lifecycle.
Key Procedures and Functions
- GET_LOOKUP_DESC — returns the description associated with a given lookup type and code, used to render meaningful text in late charge documents and messages.
- PHRASE — constructs descriptive narrative text for a late charge, incorporating transaction number, receipt number, due date, outstanding amount, payment date, days overdue, last charge date, interest rate, and the interest calculation date.
- EMPTY_VAR_IV — resets internal package state, clearing the lookup description collection and initialization flags between executions.
- INV_TO_INV_API_INTERFACE — moves prepared late charge records into the Invoice API interface tables, supplying the GL date, interest calculation date, and batch identifier.
- CALL_INVOICE_API — invokes the Receivables Invoice API to create the actual charge invoices, returning standard API status and message outputs.
- CREATE_CHARGE_INV_DM — creates charge invoices and debit memos for a given batch source and batch, optionally scoped to a worker number, GL date, and calculation date, with bulk processing control.
- CREATE_CHARGE_ADJ — creates adjustments for late charges and returns counts of adjustments created and errored.
- CREATE_LATE_CHARGE_CHILD — child concurrent program entry point, accepting the batch source and standard concurrent request parameters.
- SUBMIT_LATE_CHARGE_CHILD — submits the child request for parallel processing by worker.
- WAIT_FOR_END_SUBREQ — waits for completion of a submitted sub-request before proceeding.
- GET_STATUS_FOR_SUB_PROCESS — retrieves the completion status of a spawned sub-process.
- CREATE_LATE_CHARGE — parent-level driver for the late charge run.
- CREATE_LATE_CHARGE_PER_WORKER — processes late charges for an individual worker partition.
- ORDONANCER_PER_WORKER — orchestrates worker-level processing and coordination.
- CREATE_LATE_CHARGE_BY_WORKER — the worker-scoped entry point that generates late charges for the set of transactions assigned to a given worker; this is the routine most closely associated with the user's search term and is invoked in multi-worker parallel late charge runs.
- SUBMIT_LATE_CHARGE_WORKER — submits worker-level concurrent requests to divide processing across parallel workers.
Tables Accessed
The package reads and writes Receivables interest and adjustment objects, including AR_INTEREST_BATCHES, AR_INTEREST_BATCHES_ALL, AR_INTEREST_HEADERS, AR_INTEREST_HEADERS_ALL, and AR_INTEREST_LINES, which store the batch, header, and line detail of each late charge calculation. AR_PAYMENT_SCHEDULES provides the overdue installment balances and due dates used to compute interest. AR_ADJUSTMENTS and AR_RECEIVABLES_TRX support creation of late charge adjustments and the receivable transaction types that classify them. AR_CASH_RECEIPTS supplies receipt and payment information referenced in charge narrative and calculation. AR_SYSTEM_PARAMETERS supplies Receivables system options governing interest and late charge behavior. The Invoice API global temporary tables AR_INV_API_HEADERS_GT, AR_INV_API_LINES_GT, and AR_INV_API_DIST_GT stage invoice header, line, and distribution data before the Invoice API call. AR_LATE_CHARGE_DOC_GT and AR_SUBMISSION_CTRL_GT hold transient document and concurrent submission control data used during parallel worker runs.
Usage Notes
AR_LATE_CHARGE_PKG is normally invoked indirectly. The primary entry point is the Receivables "Late Charges" concurrent program, which calls the parent driver (CREATE_LATE_CHARGE) and, for large volumes, fans out to child and worker requests through SUBMIT_LATE_CHARGE_CHILD, SUBMIT_LATE_CHARGE_WORKER, and CREATE_LATE_CHARGE_BY_WORKER. The WAIT_FOR_END_SUBREQ and GET_STATUS_FOR_SUB_PROCESS routines coordinate these parallel submissions. Late charges can also be initiated interactively from the Receivables Late Charges form, which ultimately routes through the same package.
Custom code should avoid calling internal helper procedures directly; the supported integration surface is the worker and parent entry points, which accept batch source, batch identifier, worker number, GL date, interest calculation date, bulk size, and standard return status outputs. Because the package writes to interest and invoice API tables and depends on AR_SYSTEM_PARAMETERS configuration, it must be run only after interest rates, grace periods, and system options are correctly established. Errors are surfaced through the x_return_status, x_msg_count, and x_msg_data parameters and through the counts of created and errored adjustments.