BookmarkSubscribeRSS Feed
deleted_user
Not applicable
hi,

I want to record time when sas program executes into a variable. Like a time stamp. Is there a way to do it?
2 REPLIES 2
sbb
Lapis Lazuli | Level 10 sbb
Lapis Lazuli | Level 10
You can use the DATETIME function to assign a variable when your program starts and then assign another variable when the program ends. However, if these are multiple DATA/PROC steps, you will need to decide how to capture and represent your timestamp information - here is one example, using SAS macro variables:

%let start = %sysfunc(putn(%sysfunc(datetime()),datetime21.2));
data _null_;
x = sleep(30);
run;
%let end = %sysfunc(putn(%sysfunc(datetime()),datetime21.2));
%put program started: &start;
%put program ended: &end;


Scott Barry
SBBWorks, Inc.
ChrisNZ
Tourmaline | Level 20
Scott, I think you misread the question.

Does
STAMP=time();
do what you want?

Don't forget to add
format STAMP time.;

If you want the time be be constant throughout the table:
retain STAMP;
if _N_=1 then STAMP=time();
What is Bayesian Analysis?

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.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 2 replies
  • 2417 views
  • 0 likes
  • 3 in conversation