BookmarkSubscribeRSS Feed
deleted_user
Not applicable
I am looking to get a clarification with the set up of the Call System statement, when using a Window's command (md) to create a new directory.

We are using SAS 8.2 in a Windows XP environment.

The statement works when I hard-code the full command string in a variable:

command = 'md "\\prdausrvs02\homedir$\azl6y06\e\report store\sasout\reportstaging\tonysastest"';
call system(command);

The statement does not compile when I build a concatenated string variable:

OUTPUT1 = 'prdausrvs02\homedir$\azl6y06';
path = '"\\' || trim(OUTPUT1) || '\e\report store\sasout\reportstaging\tonysastest2"';
command = 'md ' || path;
call system(command);

The log file lists this statement:
NOTE: Invalid argument to function SYSTEM at line 479 column 9.

The value of OUTPUT1 is in an input file of our environments.
This is where we control output files for (prod/test/dev).
1 REPLY 1
LinusH
Tourmaline | Level 20
I ran your code in DMS SAS mode, and didn't get the NOTE, even if my search path does not match. If you attach the full log maybe there is a clue...

One more straightforward solution is to use the DCREATE function.

/Linus
Data never sleeps

hackathon24-white-horiz.png

The 2025 SAS Hackathon has begun!

It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.

Latest Updates

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
  • 1 reply
  • 965 views
  • 0 likes
  • 2 in conversation