I've noticed some discussion and just to clarify.
My two tables are exactly the same in structure. One table is just an archive of old records. I copy old records, delete them and routinely pack.
I used tracy's solution and it solved my problem. Thanks....
Initially I tried using the append from, but discarded it, not because it wasn't a good solution, or even faster, but because it would require me to do much more coding in other related areas. Parent/child relations. I would have had to restructure some of the logic. I believe anyway. Yes I'm lazy, this is not a time consuming task here anyway.
Just FYI here is the code in question:
Local lnJulian, lnDays, lcJobnum, loTable
lnDays=60
lnJulian=Val(Sys(1))
Select punchheader
Scan For Val(Sys(11,(punchheader.printed)))<=(lnJulian-lnDays) And Empty(punchheader.printed)=(.F.)
Scatter MEMO NAME loTable
lcJobnum=punchheader.jobnum
Insert Into puncharcheader From NAME loTable
Delete
Select punchparams
Locate For punchparams.jobnum=(lcJobnum)
If Found()=(.T.)
Scatter Memvar
Insert Into puncharcparams From Memvar
Delete
Endif
Select punchactualdata
Scan For punchactualdata.jobnum=(lcJobnum)
Scatter Memvar
Insert Into puncharcactualdata From Memvar
Delete
Endscan
ENDSCAN