VoidPayItems

F03B14 Void/Delete Receipt

Major Business Rule

Object Name: B03B0023

Parent DLL: CFIN

Location: Client/Server

Language: C

Functional Description - B03B0023

Purpose


The purpose of this function is to void/delete a pay item. The pay item can be posted or unposted. If 

the pay item is posted the following changes will be made:

(a)  In the F03B14 file:


(1) the record selected for void/delete has the void reason code, void date and the NSF/Void 

flag updated. The NSF/Void flag contains an 'R' for reversing.


(2) create a reversing record which matches the selected record except for the following fields

matching document type - RO

post code - blank

batch number - passed from the calling program

batch date - passed from the calling program


 (3) an RU record is created for the amount of unapplied cash.



(b)  In the F03B13 file:


(1)  the receipt header open amount is updated and its post code is set to a blank.


(c)  In the F03B11 file:


(1)  the invoice open amount is updated and re-open the invoice.


If the pay item is unposted the F03B11 invoice record is updated, the F03B14 record is deleted, the 

F03B13 record is updated and unapplied cash records are created.



Setup Notes and Prerequisites


If void date and void reason code are not blank set an error because it is a void record.

If the Post Code is P or X set an error because record is in use by the post.

When OK button is clicked validate void reason code, if it is blank set error.  Reason code cannot be

blank.

Event: Tab out of Control Void Date, call the function Edit Date


Special Logic

None.


Technical Specification


Parameters

Item  DescriptionI/OReq?Notes

RZPYID  MnPaymentIdIYPayment Id (Internal)

RZRC5   MnFileLineIdentifierIYFile Line Identifier

RZVRE   SzVoidReasonCodeIYVoid Reason Code

RZVDGJ  JdVoidDateForGlJulianIYVoid Date - For G/L - Julian

RZPID   SzProgramIdIYProgram Id

RZPOST  CglPostedCodeIYG/L Posted Code

PST     CpayStatusCodeIYData Dictionary Item Pay Status Code default "A" is 

passed.

ICUQ    MnBatchNumbVoidNsfrcptIYData Dictionary Item Batch number that should be used 

for creating reversing records.

DIQJ    JdDateBatchVoidNsfRcptIYData Dictionary Item Batch Date that should be used 

for creating reversing records.



Related Tables

F03B13Receipts Header FileInput/Update

F03B14A/R Check Detail FileInput/Update

F03B11Customer Ledger FileInput/Update

F03B40A/R Deduction ManagementInput/Update



Related Functions

B9800100Get Audit Information

B03B0069Create Maintain RU Detail


Processing


1).Open F03B11, F03B13, F03B14 and F03B40 table.


2)If F03B14 record has a deduction amount verify that the deduction is already marked as void in 

the F03B40 file.  If the deduction is not marked as void set an error.


3)If there is a partially paid charge back attached to this pay item verify that the open amount 

and gross amount of the chargeback are equal i.e.  the records that paid the chargeback have been 

delete/void.  If the open and gross amount of the chargeback are not equal set an error.


4)If the record is unposted:

If there is a deduction delete the deduction from F03B11

If there is a chargeback delete the chargeback from F03B11

Update the F03B11 invoice record

Update the F03B13 record

Delete the F03B14 record

Call function CreateMaintainRUDetail to create unapplied cash records


5)If selected record is posted

Retrieve the pay item record

If there is a deduction amount update the deduction record

If there is a chargeback amount update the chargeback record

Update F03B11 invoice record

Update F03B13 record

Update F03B14 record

Insert F03B14 reversing record

Call function CreateMaintainRUDetail to create unapplied cash records


6)  Close Tables

^

Data Structure

D03B0023 - Void Pay Items

Data Item Data Structure DescriptionI/OReqNotes
RZPYIDmnPaymentIdIYPayment Id (Internal)

RZRC5mnFileLineIdentifierIYFile Line Identifier

RZVREszVoidReasonCodeIYVoid Reason Code

RZVDGJjdVoidDateForGlJulianIYVoid Date - For G/L - 

Julian

RZPIDszProgramIdIYProgram Id

RZPOSTcGlPostedCodeIYG/L Posted Code

PSTcPayStatusCodeIYData Dictionary Item                      

                                                                                                      

                                                         Pay Status Code                              

                               default "A" is                                                         

    passed.

ICUQmnBatchNumbVoidNsfrcptIYData Dictionary Item                      

                                       Batch number that                                              

               should be used for                                                             

creating reversing                                                             records.

DIQJjdDateBatchVoidNsfRcptIYData Dictionary Item                      

                                                                                                   

Batch Date that should                                                                                   

                                      be used for creating                                            

                                                                             reversing                

                                             records.



^

Parameter NameData ItemData TypeReq/OptI/O/Both
mnPaymentIdPYIDMATH_NUMERICNONENONE

A number that the system assigns from Next Numbers to identify and track payment records.

mnFileLineIdentifierRC5MATH_NUMERICNONENONE

This field is used to create a unique key within a file and should be used with a next number approach.

szVoidReasonCodeVREcharNONENONE

A code that explains why a receipt was voided.

jdVoidDateForGlJulianVDGJJDEDATENONENONE

The date that specifies the financial period to which the voided transaction is to be posted. Financial periods are set up in the Company 
Constants table (F0010).

szProgramIdPIDcharNONENONE

The number that identifies the batch or interactive program (batch or interactive object). For example, the number of the Sales Order Entry 
interactive program is P4210, and the number of the Print Invoices batch process report is R42565. The program ID is a variable length value. 
It is assigned according to a structured syntax in the form TSSXXX, where: T The first character of the number is alphabetic and identifies the 
type, such as P for Program, R for Report, and so on. For example, the value P in the number P4210 indicates that the object is a 
program. SS The second and third characters of the number are numeric and identify the system code. For example, the value 42 in the number P4210 
indicates that this program belongs to system 42, which is the Sales Order Processing system. XXX The remaining characters of the numer are 
numeric and identify a unique program or report. For example, the value 10 in the number P4210 indicates that this is the Sales Order Entry 
program.

cGlPostedCodePOSTcharNONENONE

A code the system uses to determine whether a transaction is available for the post process. Valid codes 
are: Blank Unposted. D Posted. P Posted or posting. Depending on the type of transaction, this code has different meanings. If the code is assigned to an Account Ledger 
record (F0911), it indicates a posted status. If the code is assigned to any other transaction, it indicates that the system attempted to post the 
record but failed, due to an error it encountered.    M Model. The transaciton is a model journal entry.     

cPayStatusCodePSTcharNONENONE

A user defined code (00/PS) that indicates the current payment status for a voucher or an invoice. Examples of codes include: A Approved 
for payment but not yet paid   H Held pending approval   P Paid   Note: Some of the payment status codes are hard coded; the system assigns 
the code.

mnBatchNumbVoidNsfrcptICUQMATH_NUMERICNONENONE

The number of the batch control record to which the receipt was assigned when it was voided or designated as NSF (insufficient funds). 

jdDateBatchVoidNsfRcptDIQJJDEDATENONENONE

The date on which the receipt was voided or designated as NSF. In most cases, this is the system date assigned to the new batch control 
record, which is created when you void or designate the receipt as NSF. In special circumstances, the system uses the batch date assigned 
to the receipt record when it was entered.

szUnappliedGlClassGLCcharOPTNONE

A code that determines the trade account that the system uses as the offset when you post invoices or vouchers. The system concatenates 
the value that you enter to the AAI item RC (for Accounts Receivable) or PC (for Accounts Payable) to locate the trade account. For 
example, if you enter TRAD, the system searches for the AAI item RCTRAD (for receivables) or PCTRAD (for payables).  You can assign up to four 
alphanumeric characters to represent the G/L offset or you can assign the three-character currency code (if you enter transactions in a 
multicurrency environment). You must, however, set up the corresponding AAI item for the system to use; otherwise, the system ignores the G/L 
offset and uses the account that is set up for PC or RC for the company specified.  If you set up a default value in the G/L Offset field of the 
customer or supplier record, the system uses the value during transaction entry unless you override it.  Note: Do not use code 9999. It is reserved for 
the post program and indicates that offsets should not be created.

szUnappliedAccountIdAIDcharOPTNONE

A number that the system assigns to each general ledger account in the Account Master table (F0901) to uniquely identify it. 

Related Functions

B03B0069 F03B14 Maintain Unapplied Cash
B9800100 Get Audit Information

Related Tables

F03B11 Customer Ledger
F03B13 Receipts Header
F03B14 Receipts Detail
F03B40 A/R Deduction Management