Well, it's over 8 hours later and I'm still at work. It turns out that there were some nasty surprises lurking in the code. If the customer paid $50 for a $30 purchase, the program dutifully noted that $50 had been paid, ignoring the fact that $20 in change should be returned. That was nasty to track down (and fix).
Once I was sure I had fixed everything, I went ahead and wiped the sales from the database to start with a clean slate and discovered to my horror that sometimes the system was incorrectly reporting correct data. In other words, sometimes, a particular report would be correct, but only because of a weird synchronization issue with sale item IDs and the sales themselves. This apparently didn't show up because I was entering certain test items on every test order and by sheer coincidence, they caused apparently correct data to be pulled. Only when I sat down and noticed a weird error on one of the reports did I catch on (it's a loooooong story).
The other programmer was also in today and wound up being stumped by a bug that he fixed incorrectly -- because I told him the incorrect fix. Mea culpa. My brain is completely shutting down at this point and quick fixes are taking longer and longer. On a normal day, I would have been finished quite some time ago.
On the plus side, I just got a call from California and it appears that the test reports are okay, but not printing headers. It appears to be a problem on their side as everything works perfectly on my end.
The tests drastically need to be updated, though, as I've made some significant changes to the code. I've made sure that all of the current tests run, and have diagnostic messages where other tests need to be added, but things are sliding in this area.