VoidNSFReceipt

F03B13 Void/NSF Receipt

Major Business Rule

Object Name: B03B0019

Parent DLL: CFIN

Location: Client/Server

Language: C

Functional Description  B03B0019

Purpose

The business function will Void/NSF selected receipts. The recipt is deleted when the user selects to 

void an unposted record.  The receipt's records are deleted from the following tables F03B13, F03B14 

the F03B11 file is updated. When a user selects to void/NSF a posted receipt the void reason code, 

void date, the post code, batch number void/NSF receipt, batch date void/NSF receipt and NSF/Void code 

are updated.  The records are updated in the F03B13 file, F03B14 file and F03B11 file.  




Setup Notes and Prerequisites


Special Logic



Technical Specification


Parameters

ItemDescriptionI/OReq?Notes

PYID   mnPaymentIDI      Y    Payment Id (Internal)

VRE    szVoidReasonCodeI      Y    Void Reason Code

VDGJ   jdVoidDateForGlJulianI      Y    Void Date - For G/L - Julian

PID    szProgramIdI      Y    Program Id

POST   cGLpostedCodeI      Y    G/L Post Code

EV06   cEverestEventPoint06I      Y    Holds user selection of Void or NSF

PST    cPayStatusCodeI      Y    Data Dictionary Item Pay Status code default "A" is 

passed

ICU    MnCurrentBatchNumberI      Y    Batch number

ICUT   SzCurrentBatchTypeI      Y    Batch Type

DICJ   JdCurrentDateBatchJulianI      Y    Batch Date

IST    CCurrentBatchStatusI      Y    Batch Status

EV07   CSpeedReceiptBalFI      N    This should be passed in if Speed Receipts Entry is 

calling


Related Tables

Table Table Description

F03B13 Receipts Header File

F03B14 A/R Check Detail File

F03B11 Customer Ledger File

F03B40 AR Deduction Management


Related Functions

Source NameFunction Name

B9800100Get Audit Information

B0000004Batch Open On Initialization

B0000007Batch Revise On Transaction Commit

B0000008Batch Revise On Exit

B03B0044F03B13Z1 Update Purge Flag to Y

B03B0154Draft Change Delete Void NSF


Processing


The following files are updated :


Update F03B13 Records:

Update Void/NSF Reason Code, Void/NSF Date, Post Code, Batch Number Void/NSF receipt, Batch Date 

Void/NSF Receipt and NSF/Void Code. The NSF/Void code can have the following values:

N - NSF, V - Void.

 


Update F03B14 Records:

Update Void/NSF Reason Code, Void/NSF Date and Post Code.

Write a reversing entry for each F03B14 record.



Update F03B11 Records:

Add gross amount, adjustment amount, chargeback amount and discount taken to open amount of the 

invoice. Subtract discount taken of receipt from discount taken amount field of the invoice.   If the 

invoice is closed it needs to be reopened. Void reason code and Void Date for Charge back invoices.



Open F03B13, F03B14, F03B11 and F03B40 tables. If an error occurs during opening return error to 

application.


If it is a draft record which is at status 4 verify that it has no posted F03B14 records. If there 

are posted F03B14 records set an error.


If this receipt has pay items, which have deductions, associated with it. Verify that the deductions 

have been void before trying to void or delete this receipt. 


If this receipt has pay items that have chargebacks associated with them and the chargebacks are 

partially paid set an error.  If the chargeback has been fully paid and the receipt is unposted treat it 

as posted.


Fetch the F03B13 receipt record


If the record is posted the following happens:

Update the batch

If there is a deduction associated with it update deduction record

If there is a chargeback associated with it update chargeback record

Update the original invoices

Update the F03B14 records with batch information and mark it void

Insert reversing records

Update the F03B13 record with the void batch information

If the record is unposted the following happens:

Update the batch

If there is a deduction associated with it delete deduction record

If there is a chargeback associated with it delete chargeback record

Update the original invoices

Delete the F03B14 records

If draft call Draft Void NSF function (B03B0154)

Delete the F03B13 record with the void batch information


Close Tables.


Error Processing occurs when


-  opening a database table

-   a fetch fails

-   a delete or update is not successful^

Data Structure

D03B100A - Void NSF Receipt

Parameters Item Description I/O Req? Notes PYID   mnPaymentID I      Y    Payment Id (Internal) VRE    szVoidReasonCode I      Y    Void 
Reason Code VDGJ   jdVoidDateForGlJulian I      Y    Void Date - For G/L - Julian PID    szProgramId I      Y    Program Id POST   
cGLpostedCode I      Y    G/L Post Code EV06   cEverestEventPoint06 I      Y    Holds user selection of Void or NSF PST    cPayStatusCode I      Y    Data 
Dictionary Item Pay Status code default "A" is passed ICU    MnCurrentBatchNumber I      Y    Batch number ICUT   SzCurrentBatchType I      Y    
Batch Type DICJ   JdCurrentDateBatchJulian I      Y    Batch Date IST    CCurrentBatchStatus I      Y    Batch Status EV07   
CSpeedReceiptBalF I      N    This should be passed in if Speed Receipts Entry is calling ^

Parameter NameData ItemData TypeReq/OptI/O/Both
mnPaymentIdPYIDMATH_NUMERICNONENONE

Parameters Item Description I/O Req? Notes PYID   mnPaymentID I      Y    Payment Id^

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.     

cEverestEventPoint06EV06charNONENONE

An option that specifies the type of processing for an event.

cPayStatusCodePSTcharNONENONE

Parameters Item Description I/O Req? Notes VRE    szVoidReasonCode I      Y    Void Reason Code ^

mnCurrentBatchnumberICUMATH_NUMERICNONENONE

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 
assign a batch number or let the system assign it using the Next Numbers program.

szCurrentBatchTypeICUTcharNONENONE

A code that specifies the system and type of transactions entered in a batch. The system assigns the value when you enter a transaction. 
Valid values are set up in user defined code table 98/IT. You cannot assign new values. All batch types are hard coded.

jdCurrentDateBatchJulianDICJJDEDATENONENONE

The date of the batch. If you leave this field blank, the system date is used.

cCurrentBatchStatusISTcharNONENONE

A user defined code (98/IC) that indicates the posting status of a batch. Valid values are: Blank    Unposted batches that are pending 
approval or have a status of approved. A        Approved for posting. The batch has no errors, and is in balance, but has not yet been posted. D       
Posted. The batch posted successfully. E        Error. The batch is in error. You must correct the batch before it can post. P        Posting. The system 
is in the process of posting the batch to the general ledger. The batch is unavailable until the posting process is complete. If errors occur 
during the post, the batch status changes to E (error). U        In use. The batch is temporarily unavailable because someone is working with it, or 
the batch appears to be in use because a power failure occurred while the batch was open.

cSpeedReceiptBalFEV07charNONENONE

An option that specifies the type of processing for an event.

cNettingFlagEV01charOPTINPUT

An option that specifies the type of processing for an event.

Related Functions

B0000004 Batch - Open On Initialization
B0000007 Batch - Revise On Transaction Commitment
B0000008 Batch - Revise On Exit
B03B0044 F03B13Z1 Update Purge Flag To Y
B03B0154 Draft Change Delete Void NSF
B9800100 Get Audit Information

Related Tables

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