In one customer table, a SELECT is not returning all of the matching information.
The SELECT is based on date. The table is indexed on date.
If there are 10 records with a matching date, the SELECT returns 5 records (you can tell that there are 10 records by issuing a BROWSE). If the customer goes in and types one of the dates over, the SELECT now returns 6 records. If you issue a REPLACE ALL DATE WITH DATE, nothing changes. If you DELETE TAG ALL and INDEX ON etc., nothing changes.
This is not a problem with the date formats, since the dates are filled in programmatically and the SELECT is for date()-1.