BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
mlogan
Lapis Lazuli | Level 10

Can someone tell me how do I get the output as '26MAR2017-0001' upto with an increment upto 1000?

I was able to figure out how to get the output as  '26MAR17-0001'

Thank You. 

 

DATA want;
  DO _n_=1 TO 1000;
  x = "&SYSDATE"||'-'||PUT(_n_, z4.);
OUTPUT;
END;
RUN;

 

1 ACCEPTED SOLUTION

Accepted Solutions
Astounding
PROC Star

&SYSDATE uses a two-digit year (as you have seen).  To get a four-digit year, switch to &SYSDATE9 instead.

View solution in original post

4 REPLIES 4
Reeza
Super User

Your code looks fine, try using a variable other than _n_, which is an automatic variable and trying to loop with it may confuse things.

I would probably also use CATX.

 

 

mlogan
Lapis Lazuli | Level 10
Hi Reeza, How would you create 1000 observations without creating a loop? Can you please show me the code. Thanks.
mlogan
Lapis Lazuli | Level 10
I got it! Thanks Reeza.
Astounding
PROC Star

&SYSDATE uses a two-digit year (as you have seen).  To get a four-digit year, switch to &SYSDATE9 instead.

How to Concatenate Values

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.

SAS Training: Just a Click Away

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

Browse our catalog!

Discussion stats
  • 4 replies
  • 1331 views
  • 2 likes
  • 3 in conversation