Hi All,
We have multiple sas7bdat files saved on a network drive and a reference file which lists the file names that need to be combined.
How can I do put them together using data steps?
Thank you for your time.
Read the list of files from the reference file into a macro variable, if it's less than 64K characters and include that in your set statement.
proc sql noprint;
select name into :ref_list separated by " " from reference_list;
quit;
data want;
set & ref_list;
run;
And we need this job to run on weekly basis to check for new files.can you please list out the software that is required and the process. I 'm pretty new with SAS tool.
Thanks a lot for your help
"Check on a weekly basis" sounds like you need to schedule your job. If it's just "run weekly" then any scheduler will do (Cron, Task Scheduler,....).
"check for new files": What identifies a new file? Safest would be you maintain a list of already processed files and then compare this list with your control file.
You seem to have a process where you add some weekly snapshots to a "analytical base table". Assuming this table is a SAS data set and if the structure of the weekly files is stable (same columns with same attributes) then you should eventually consider to use Proc Append instead of a data step. This would avoid processing ALL the data every single week.
An alternative approach: You could also create a view over the individual SAS files. This way you would only need to re-create the view once a week including all files available.
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!
Still thinking about your presentation idea? The submission deadline has been extended to Friday, Nov. 14, at 11:59 p.m. ET.
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.