Functional Description B03B0030
Purpose
Function will be used to process balance forward transactions.
Using receipt information as input parameters, select invoices for the requested customer.
Check if each invoice should be paid, call Calculate Receipt Amount to Apply function (B03B0028) to
return amount to pay and discount to be taken.
Call the invoice match function (ARApplyReceipttoInvoice - B03B0012) to create payment records
(including write-off amounts and currency gains/losses) and update the receipt and invoice records for
amounts applied.
Setup Notes and Prerequisites
None.
Special Logic
None.
Technical Specification
Parameters
Item DescriptionI/OReq?Notes
AN8 mnAddressnumberIYesCustomer address number to process
PYID mnPaymentIDIYesReceipt PYID
CO szCompanyIYesReceipt company used to filter invoices
ICUT szBatchtypeIYesBatch type
ICU mnBatchnumberIYesBatch Number
DICJ jdDatebatchjulianIYesBatch Date
AAP mnAmountopenIYesReceipt open amount domestic
FAP mnAmountforeignopenIYesReceipt open amount foreign
CRR mnCurrencyconverrateovIYesReceipt exchange rate
CRRM cCurrencymodeIYesReceipt currency mode
CRCD szCurrencycodefromIYesReceipt currency
RMKS zNameremarkIYesReceipt remark
MATH01 mnMaxAutoDebitWrOffIYesMax amount for auto writeoffs debit
AR szDbWrOffReasonCdIYesDefault reason code to use for debit writeoff
DGJ jdDateforglandvoucherjuliaIYesReceipt G/l date
MATH02 mnMaxAutoCreditWrOffIYesMax amount for auto writeoffs credit
VC02A szCrWrOffReasonCdIYesDefault reason code to use for credit writeoff
EV01 cAllowPaymentHeldInvIYesoption to allow payment of only active invoices or
held invoice
EV02 cAllowDiscTakenIYesAllow discounts 1- Y0es else- No
EV04 cApplyDueDateIYes1- Take all discounts, Else- Only earned discounts
EV03 cSpreadMethodNNAParm Not Used
DIVJ jdStartInvoiceDateIYesSelect invoice with invoice date GE this date
INT01 nErrorFlagNNAParm Not Used
EV05 cSkipAutoWriteOffIYes1- Skip auto writeoff process in B03B0012 Else- Check
for Auto Writeoffs
DOC mnDocvoucherinvoiceeIOptInvoice number to process only this invoice
EV10 cCreatRUDetailIYesPass 'N' if do not want Unapplied Cash records to be
created in F03B11 and F03B14 tables; pass 'Y' or blank if want this BF to be called.
CRR mnRectTriangulationRate1IYesReceipt triangulation leg 1 Euro
CRR mnRectTriangulationRate2IYesReceipt triangulation leg 2 Euro
CRCM cRectCurrencyConversionMeIYesReceipt conversion method Euro
EFTDT jdRectTransactionDateIYesReceipt exchange rate effective date
Related Tables
F03B11Customer LedgerInput
Related Functions
B0000027 CurrencyConvForAndDom
B0000055ValidateAAICompletely
B0000128GetCoCurrency
B0000173Determine Date, Conversion Method and Rates
B03B0012 ARApplyReceipttoInvoice
B03B0028CalculateAmountTotPay
B03B0069Create Maintain RU Detail
B03B0174Get Invoice Exchange Rate For Euro
Processing
if receipt open amount less than or equal to zero - set on error.
if maximum write-off amount (processing options) not zero but write-off reason code is blank - set on
error.
Open table F03B11 (using index as defined above) and using a select structure, select invoices where:
pay status not 'S' or 'P'.
invoice company equal to receipt company.
not a draft (document type 'R1').
open invoice amount greater than zero.
due date greater than start date (processing options).
Retrieve receipt base currency (use function COCURR).
Read selected F03B11 records in a loop until all records read or remaining receipt open amount is
zero. For each invoice read:
if valid invoice, call B03B0028 to calculate amount to apply and discount to apply.
if valid invoice, call internal function to set parameters and call external function (B03B0012)
to apply payment to invoice.
Validate Invoice internal function:
equal to 'A' - reject.
if a foreign receipt and invoice and receipt currency codes are different - reject.
Call Invoice Match internal function:
call external function to apply receipt (B03B0012).
if B03B0012 returns a successfully completed code, subtract amount applied from receipt open
amount remaining.
D03B0030 - Balance Forward Receipts
Item DescriptionI/OReq?Notes
AN8 mnAddressnumberIYesCustomer address number to process
PYID mnPaymentIDIYesReceipt PYID
CO szCompanyIYesReceipt company used to filter invoices
ICUT szBatchtypeIYesBatch type
ICU mnBatchnumberIYesBatch Number
DICJ jdDatebatchjulianIYesBatch Date
AAP mnAmountopenIYesReceipt open amount domestic
FAP mnAmountforeignopenIYesReceipt open amount foreign
CRR mnCurrencyconverrateovIYesReceipt exchange rate
CRRM cCurrencymodeIYesReceipt currency mode
CRCD szCurrencycodefromIYesReceipt currency
RMKS zNameremarkIYesReceipt remark
MATH01 mnMaxAutoDebitWrOffIYesMax amount for auto writeoffs debit
AR szDbWrOffReasonCdIYesDefault reason code to use for debit writeoff
DGJ jdDateforglandvoucherjuliaIYesReceipt G/l date
MATH02 mnMaxAutoCreditWrOffIYesMax amount for auto writeoffs credit
VC02A szCrWrOffReasonCdIYesDefault reason code to use for credit writeoff
EV01 cAllowPaymentHeldInvIYesoption to allow payment of only active invoices or
held invoice
EV02 cAllowDiscTakenIYesAllow discounts 1- Y0es else- No
EV04 cApplyDueDateIYes1- Take all discounts, Else- Only earned discounts
EV03 cSpreadMethodNNAParm Not Used
DIVJ jdStartInvoiceDateIYesSelect invoice with invoice date GE this date
INT01 nErrorFlagNNAParm Not Used
EV05 cSkipAutoWriteOffIYes1- Skip auto writeoff process in B03B0012 Else- Check
for Auto Writeoffs
DOC mnDocvoucherinvoiceeIOptInvoice number to process only this invoice
EV10 cCreatRUDetailIYesPass 'N' if do not want Unapplied Cash records to be
created in F03B11 and F03B14 tables; pass 'Y' or blank if want this BF to be called.
CRR mnRectTriangulationRate1IYesReceipt triangulation leg 1 Euro
CRR mnRectTriangulationRate2IYesReceipt triangulation leg 2 Euro
CRCM cRectCurrencyConversionMeIYesReceipt conversion method Euro
EFTDT jdRectTransactionDateIYesReceipt exchange rate effective date
^
Parameter Name | Data Item | Data Type | Req/Opt | I/O/Both |
---|---|---|---|---|
mnAddressnumber | AN8 | MATH_NUMERIC | NONE | NONE |
A number that identifies an entry in the Address Book system, such as employee, applicant, participant, customer, supplier, tenant, or
| ||||
mnPaymentid | PYID | MATH_NUMERIC | NONE | NONE |
A number that the system assigns from Next Numbers to identify and track payment records. | ||||
szCompany | CO | char | NONE | NONE |
A code that identifies a specific organization, fund, or other reporting entity. The company code must already exist in the Company
| ||||
szBatchtype | ICUT | char | NONE | NONE |
A code that specifies the system and type of transactions entered in a batch. The system assigns the value when you enter a transaction.
| ||||
mnBatchnumber | ICU | MATH_NUMERIC | NONE | NONE |
A number that identifies a group of transactions that the system processes and balances as a unit. When you enter a batch, you can either
| ||||
jdDatebatchjulian | DICJ | JDEDATE | NONE | NONE |
The date of the batch. If you leave this field blank, the system date is used. | ||||
jdDateforglandvoucherjulia | DGJ | JDEDATE | NONE | NONE |
A date that identifies the financial period to which the transaction will be posted. You define financial periods for a date pattern code that you
| ||||
mnAmountopen | AAP | MATH_NUMERIC | NONE | NONE |
The amount of an invoice or voucher pay item that is unpaid. | ||||
mnAmountforeignopen | FAP | MATH_NUMERIC | NONE | NONE |
The unpaid foreign amount of a transaction. | ||||
mnCurrencyconverrateov | CRR | MATH_NUMERIC | NONE | NONE |
A number (exchange rate) that a foreign currency amount is multiplied by to calculate a domestic currency amount.
The number in this field
| ||||
cCurrencymode | CRRM | char | NONE | NONE |
An option that specifies whether the system displays amounts in the domestic or foreign currency.
On
The system displays amounts in the
| ||||
szCurrencycodefrom | CRCD | char | NONE | NONE |
A code that identifies the currency of a transaction. | ||||
szNameremark | RMK | char | NONE | NONE |
A generic field that you use for a remark, description, name, or address. | ||||
mnDocvoucherinvoicee | DOC | MATH_NUMERIC | NONE | NONE |
A number that identifies the original document, such as a voucher, invoice, or journal entry. On entry forms, you can assign the document
| ||||
szDocumentpayitem | SFX | char | NONE | NONE |
A number that identifies the pay item for a voucher or an invoice. The system assigns the pay item number. If the voucher or invoice has
| ||||
mnMaxAutoDebitWrOff | MATH01 | MATH_NUMERIC | NONE | NONE |
- - - Good Performance Low Value. | ||||
szDbWrOffReasonCd | AR | char | NONE | NONE |
A code that identifies the reason for an adjustment, or a code that prevents an individual invoice from being included on a payment
| ||||
szCrWrOffReasonCd | VC02A | char | NONE | NONE |
A generic field that is used as a work field. | ||||
cAllowPaymentHeldInv | EV01 | char | NONE | NONE |
An option that specifies the type of processing for an event. | ||||
cAllowDiscTaken | EV02 | char | NONE | NONE |
An option that specifies the type of processing for an event. | ||||
cApplyDueDate | EV03 | char | NONE | NONE |
A radio button that specifies the level at which trace/track result is to be displayed. Select the Detail to display all transactions except IB, IX,
| ||||
cSpreadMethod | EV04 | char | NONE | NONE |
PeopleSoft event point processing flag 04. | ||||
jdStartInvDate | DATE01 | JDEDATE | NONE | NONE |
Event point for JDE Date. | ||||
nErrorFlag | INT01 | integer | NONE | NONE |
Number of Days in Future to Query for Responses Due. | ||||
cSkipAutoWriteOff | EV05 | char | NONE | NONE |
A flag that indicates whether automatic spell check is turned on. | ||||
mnMaxAutoCreditWrOff | MATH03 | MATH_NUMERIC | NONE | NONE |
- - - Bad Performance Low Value. | ||||
szCompanyKey | KCO | char | NONE | NONE |
A number that, with the document number, document type and G/L date, uniquely identifies an original document, such as invoice, voucher,
| ||||
szDocumenttype | DCT | char | NONE | NONE |
A user defined code (00/DT) that identifies the origin and purpose of the transaction. PeopleSoft reserves several prefixes for document
| ||||
cCallCreateRUDetail | EV06 | char | NONE | NONE |
An option that specifies the type of processing for an event. | ||||
mnRectTriangulationRate1 | CRR | MATH_NUMERIC | OPT | NONE |
A number (exchange rate) that a foreign currency amount is multiplied by to calculate a domestic currency amount.
The number in this field
| ||||
mnRectTriangulationRate2 | CRR | MATH_NUMERIC | OPT | NONE |
A number (exchange rate) that a foreign currency amount is multiplied by to calculate a domestic currency amount.
The number in this field
| ||||
cRectCurrencyConversionMethod | CRCM | char | OPT | NONE |
A value that specifies which method to use when converting from one currency to another. Valid values are:
Y
Multiplier method. The
| ||||
jdRectTransactionDate | EFT | JDEDATE | OPT | NONE |
The date that identifies when a date is first valid. The effective date is used generically. It can be a lease effective date, a price or cost
| ||||
szDiscountReasonCode | DRCO | char | OPT | NONE |
A code that specifies the reason that a discount is given. | ||||
szCurrencyCodeBase | BCRC | char | OPT | NONE |
A code that represents the currency of the company for a transaction. For a foreign currency transaction, this is the currency code of the
|
B0000027 CurrencyConvForAndDom | ||||
B0000055 ValidateAAICompletely | ||||
B0000128 Retrieve Company Currency Code | ||||
B03B0012 F03B14 Apply Receipt to Invoice | ||||
B03B0028 Calculate Amount to Pay | ||||
B03B0069 F03B14 Maintain Unapplied Cash | ||||
B03B0174 Get Invoice Exchange Rate For Euro |
F03B11 Customer Ledger |