Hi,
I seem to do a fair amount of processing multiple log files in a folder, and typically use the infile ... filevar= approach using a DO loop. Once in a while one of the files being read is opened in exclusive mode by another application, which throws an error and causes the data step not to finish.
Is there a graceful way to continue processing the rest of the files while skipping the locked one?
Thanks!
--Ben
FOPEN() might be a way:
SAS(R) 9.4 Functions and CALL Routines: Reference, Third Edition
FOPEN() might be a way:
SAS(R) 9.4 Functions and CALL Routines: Reference, Third Edition
Hi Linus,
That looks like it would work, with a filename()/fopen() combination. Thanks!
--Ben
System option "FILELOCKWAIT" could be of interest to you.
Hi Patrick,
Unfortunately the filelockwait option applies to SAS files only. These are sequential ones. Good choice for SAS files, though!
--Ben
Do not process the logfiles that active written to.You are not having a technical problem you are having a logical one.
At the moment you are reading writing is not allowed and vice versa. That is a generic prerequisition locking is a solution to synchronize actions.
Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!
Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.