Larry:
I don't think the query you posted will work correctly assuming that INVOICE is a unique field. The sub-query will return an entry for every single invoice in the table and therefore, so will the outside query.
How about this:
SELECT invoice,date,amount,file_num ;
FROM invoices WHERE DTOS(date)+invoice=;
(SELECT MAX(DTOS(date)+invoice) FROM invoices) ;
INTO CURSOR result
The sub-query will get the maximum invoicenumber of the maximum date and return just that single record to the outside query.
--Brad