Desarrolle un programa en Stata para manejar múltiples archivos en la carpeta de trabajo como SAS usando tempfile

Estoy desarrollando esta envoltura alrededortempfile en Stata para manejar múltiples conjuntos de datos al mismo tiempo sin tener que guardarlos en el directorio actual. Entonces, en esencia, quiero que Stata imite SAS, y esa es la razón por la que el nombre del programa es el trabajo; El código inicial no tiene opciones y tiene una funcionalidad mínima. Me adhiero a su consejo de no tokenizar y programar trabajos; sin embargo, el problema es que una vez que recuerdo el archivo temporal en otro programa, este programa (trabajo) no pasa el identificador al siguiente para llamar al archivo temporal.

código para "trabajo"
capture program drop work
program define work
version 12.1
syntax [name(id="file name")] [, sort(string) ]
*tokenize namelist
*di "namelist'" 
*if "nol'" !="" | "nol'" !="" | "nolabel'" !="" { 
      * di "``namelist''" 
*} 
tempfile namelist' 
*di "namelist'" 
if "sort'" != "" { 
    sortsort' 
} 
di "File 'namelist'' saved in following temporary work folder" 
save ` namelist''

*di "Now you can use temporary file =namelist'' in your program" 
end

Una vez que llamo al archivo temporal dentro de mi archivo do de la siguiente manera, aparece este error:

work Orig File 'Orig' saved in following temporary work folder file C:\Users\saa602\AppData\Local\Temp\ST_00000001.tmp saved

. di "`Orig'"

. use `Orig', replace

invalid file specification

Tenga en cuenta que he estado usandotempfile para manejar con éxito múltiples archivos, especialmente una vez que combina gran cantidad de archivos sin problemas; sin embargo, un programa contenedor con opciones para ordenar y mostrar la ubicación del directorio de trabajo sería muy útil para todos nosotros.

Respuestas a la pregunta(1)

Su respuesta a la pregunta