02-17-2017 11:06 AM
I run a very large program once a week and save a log file using PROC PRINTO of the entire the run. While I still need a log file of the entire run, I would also like separate log files generated just for certain sections of the code which need to be saved other places during the run. So, one main log and then several separate section logs. I’m having trouble figuring out how to do this during one pass. Below is the main Proc Print code I use. Any assistance is greatly aperciated
%Let DateStamp = &SysDate.-&SysTime.; PROC PRINTTO LOG="/sasdata/RUNLOG %sysfunc(getoption(SysIn))-&DateStamp..LOG";run; PROC PRINTTO PRINT="/sasdata//LTVLISTOUTPUT %sysfunc(getoption(SysIn))-&DateStamp..lst";run;
02-17-2017 12:24 PM
I think you already found the correct procedure.
Only it's not a single time use. You can call PROC PRINTTO anytime you want, wherever you want, to any file you want.
Everytime PROC PRINTTO is called it will redirect log/output from there until it's called again (to redirect to something else) or the end of the code is reached.
To redirect back to log just use:
proc printto; run;
Hope it helps.
Daniel Santos @ www.cgd.pt