Michael,
Thank you for your suggestion.
Following your suggestion, I modified the original codes as
follows:
foreach file in sysdsn32 sysdsn33 sysdsn34 {
use `file'
sort patid
tempfile `file'_temp
save ``file'_temp'
use sysdsn31
sort patid
capture drop _merge
merge patid using "`file'_temp"
save sysdsn31, replace
}
But when running these codes, I got an error, saying
file sysdsn32_temp.dta not found
r(601);
What would be the problem?
Or there may be any misunderstanding in my modification.
Any suggestions welcome.
Thanks in advance.
K.I.
----------
>The problem is that your tempfile command is doing nothing but reserving a
>name for a tempfile. The save command precedes it and uses a valid
>filename, so those files are saved and are left behind at the end of the
>program. If you want them to be tempfiles you need to change the order of
>the commands and fix the save command:
>
>tempfile `file'_temp
>save ``file'_temp'
>
>Note that the save command needs to have the tempfile name enclosed in
>single quotes because tempfile creates a local macro.
>
>Michael Blasnik
>[email protected]
>
*
* For searches and help try:
* http://www.stata.com/support/faqs/res/findit.html
* http://www.stata.com/support/statalist/faq
* http://www.ats.ucla.edu/stat/stata/