Feature - Prevent Deleting Customers with Histories
Version: 8.5 & Up
Background
- The customer cannot have any open items on file (AROPNFIL).
- The customer cannot have any sales transactions on file (ARSLSTRX).
- The customer cannot have any cash transactions on file (ARCSHTRX).
- The customer cannot have any service transactions on file (ARSRVTRX).
- The customer cannot have any open orders in the Customer Order Processing module (CPORDHDR).
- The customer cannot have any ship-to locations (CPSHPFIL).
- The customer cannot have any recurring order invoices on file (ARRECINV).
A poll showed that we should add some more requirements before a customer can be deleted. These new requirements are the new feature.
Feature
In addition to the checks performed already, customers with histories still on file will be prevented from being deleted. More specifically, when a customer is being deleted, the following checks occur:
- The customer cannot have any files in their accounts receivable history file (ARHISFIL).
- The customer cannot have any invoices in their invoice history file (CPINVHDR).
- The customer cannot have any orders in their order history file (CPHODHDR).
If the customer doesn't pass any one of these checks, an error message will be displayed and the user will be prevented from deleting the customer. The error message will specify what triggered it.
This feature is on by default for all Elliott users. Some users may find this too restrictive, so the Setup section below details how to deactivate this feature.
Other Notes
There is also one more condition that is added. The conditions required to delete a customer can be broken down into two categories: history conditions and open item conditions. The history conditions are the three listed above, whereas the open item conditions are the seven listed in the Background section. While this feature is mainly for adding the history conditions, we have added an eighth condition to the list of open item conditions. That condition is:
8. The customer cannot have any recurring orders on file.
Unlike the history conditions, this cannot be turned off. It is reasonable to prevent customer deletion if there are any recurring orders on file.
Setup
By default, all the history condition checks will be active for all Elliott users. If you would like to delete customers even if they have histories associated with them, you can turn this off in Global Setup. Do the following:
1. Go to System Utilities > Utility > Global Setup.
2. Within Global Setup, go to Acct > A/R Global Control.
2. Within Global Setup, go to Acct > A/R Global Control.
3. Go to the second screen and access field 33, "Allow Deleting Customer if Hist Record Exists?" By default, this flag is set to "N," even if the field is blank. To turn off this feature, set field 33 to "Y."
As part of this enhancement, we also added checking to the COP Recurring Order Header File (CPRECHDR). Since this file is not considered a History File, we always check this table regardless of whether the Global Setup flag is set to "Y" or "N."
Modified Programs: ARCUSMNT, NSCTLINI, NSCTLMN2, NSCTLFIL.W38, NSCTLFIL.FD
AWK