BookmarkSubscribeRSS Feed
Anu123
Calcite | Level 5

Dear All,
I am trying to transfer csv files into Azure datalake storage by using Azcopy from a SAS program but this is not working.
If am exciting the same azcopy command directly command prompt the files are transferring successfully.
So this issue is only when i call azcopy command from SAS.

rc = system ("azcopy copy "source_directory/file_name.csv" "SAS_token" options;" );


ERROR 388-185: Expecting an arithmetic operator.

ERROR 202-322: The option or parameter is not recognized and will be ignored.

ERROR 22-322: Syntax error, expecting one of the following: !, !!, &, (, *, **, +, ',', -, /, <, <=, <>, =, >, ><, >=, AND, EQ, GE,
GT, LE, LT, MAX, MIN, NE, NG, NL, OR, [, ^=, {, |, ||, ~=.

ERROR 390-185: Expecting an relational or arithmetic operator.

ERROR 76-322: Syntax error, statement will be ignored.

ERROR 180-322: Statement is not valid or it is used out of proper order.

NOTE: Character values have been converted to numeric values at the places given by: (Line):(Column).
52:2
NOTE: The SAS System stopped processing this step because of errors.

 

 

1 REPLY 1
Kurt_Bremser
Super User

The SYSTEM function expects a single character value as parameter, you are trying to feed it what SAS sees as an expression with missing operators.

Your call should look like this:

rc = system("azcopy copy source_directory/file_name.csv SAS_token options");

 

SAS Innovate 2025: Save the Date

 SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!

Save the date!

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
  • 985 views
  • 0 likes
  • 2 in conversation