Can you tell me that it shouldn't take significantly longer to filter a
table (actually a query) with many records as a table/query with fewer
records? If so, I'll look elsewhere for the source of these delays.
The query should be quick if you have Indexes on all of the fields used for
searching or sorting the records. Open the table in design view and see if
these fields are indexed. If they're not, yes, you will see a dramatic
improvement when you index them.
My data becomes unneeded after a record has been "completed". And no, there
should be no need to recover completed records at a later date, but
nevertheless I do plan to add a "Restore Archived Data" feature - just in
case.
Ummm... so you'll never need to do month-to-date or year-to-date calculations,
annual reports, summaries, tax reports? Sounds really odd for a payroll system
if that's what it is!
What I was hoping to hear is that I could create one append query and one
delete query, each of which would include all related tables, and
append/delete all records from all tables in one "swell foop". If this is
not possible, I will look at successively querying each related table
individually.
You can indeed create such queries, and execute them in one swell foop from a
macro or (better) from visual basic code. It's an added layer of complication
(real tables and archive tables, the hassle of keeping them in synch, being
sure the archive queries get run, etc.) - enough so that I'd really recommend
trying the indexing. If performance is unacceptable even with the indexing,
then it may be worth the extra effort - but try the simple solution first!
John W. Vinson [MVP]