Hello, I'm new in SAS and need some help. I wrote code which parses log and stores result in dataset. However, there are multiple logs, and I need them to be passed to the code. Infile should accept log names dynamically from file_list. filename indata pipe 'dir /sas/sasconfig/Lev1/SASApp/WorkspaceServer/Logs /b';
data file_list;
length fname $128;
infile indata truncover; /* infile statement for file names */
input fname $128.; /* read the file names from the directory */
call symput ('num_files',_n_); /* store the record number in a macro variable */
run; %macro csss;
data x_wo_step(keep= text ds_name ds_count real_time) w_step(keep=ds_name step_used) x_step(keep=ds_name memory) project_name(keep=ds_name proj_name);
infile "/sas/sasconfig/Lev1/SASApp/WorkspaceServer/Logs/SASMain_WorkspaceServer_2019-02-17_08:00_65658_pussurmanov.log" truncover end=eof;
input text $1000. ;
retain ds_name ds_count ;
if findw(text,"NOTE: The data set", ' ', 'E') eq 6 then do;
ds_name = scan(text,10," ");
ds_count = scan(text,12," ");
output x_wo_step;
end;
else if findw(text,"NOTE: Table", ' ', 'E') eq 6 then do;
ds_name = scan(text,8," ");
ds_count = scan(text,11," ");
output x_wo_step;
end; ............ Thanks!
... View more