You can use any parameters (including from the command prompt) you want except that '201701' must be a passed on quotes as a string. I will be passing it as astring through the command line. I assume you ment "cf" crf just gives an error. your code did not have 201701 as string literal so it wouldn't fit my puropose. But when I ran it it gave an error: 38 data cf;
WARNING: Apparent symbolic reference PREFIX_ not resolved.
39 set &libref..&prefix_.&month; *CFDATA.;
NOTE: Line generated by the macro variable "LIBREF".
2 The SAS System 09:31 Tuesday, March 14, 2017
39 cb
___
22
201
ERROR 22-322: Syntax error, expecting one of the following: a name, a quoted string, ;, END, INDSNAME, KEY, KEYS, NOBS, OPEN,
POINT, _DATA_, _LAST_, _NULL_.
ERROR 201-322: The option is not recognized and will be ignored. I also tried to use string literals for both. i.e. %let prefix="server_"; %let month = "201701"; 38 data cf;
WARNING: Apparent symbolic reference PREFIX_ not resolved.
39 set &libref..&prefix_.&month; *CFDATA.;
NOTE: Line generated by the macro variable "LIBREF".
39 cb
2 The SAS System 09:31 Tuesday, March 14, 2017
___
22
201
ERROR: File 201701 does not exist.
ERROR 22-322: Syntax error, expecting one of the following: a name, a quoted string, ;, END, INDSNAME, KEY, KEYS, NOBS, OPEN,
POINT, _DATA_, _LAST_, _NULL_.
ERROR 201-322: The option is not recognized and will be ignored.
... View more