Problem Note 35598: The DM statement fails to switch windows and issues the "INVALID FILEREF - PARMS=" error
The DM statement submits SAS Program Editor, Log, Procedure Output, or text editor commands as SAS statements. If you omit the window name, SAS uses the Program Editor window as the default. The MEMLIST Window will display a member list for a partitioned data set (PDS) or for a series of partitioned data sets in a concatenation.
However, although the following syntax was correct in SAS® 6.09, that same code does not work in SAS® 8 and after. The apparent cause of this problem is that the DM statement generates a command such as memlist; Subsequently, the memlist code sees the semicolon and attempts to parse "memlist;" as if it were a dataset name.
The following code illustrates the problem:
/* To recreate, submit this code from the Program Editor window */
dm "memlist 'physical-filename'" memlist;
dm memlist "pgm off" continue;
run;
/* This ERROR appears in the MEMLIST window */
ERROR: Invalid fileref - PARMS=.
Note that there is no error in the SAS Log. When you submit the code again for a second time, the error still appears, but output appears in the MEMLIST window.
To circumvent this problem, alter your code as follows:
dm "memlist 'physical-filename'" ;
dm "pgm off" continue;
run;
Operating System and Release Information
| SAS System | Base SAS | z/OS | 9.2 TS1M0 | |
*
For software releases that are not yet generally available, the Fixed
Release is the software release in which the problem is planned to be
fixed.
DM statement syntax that used to work in SAS 6.09 fails in SAS 8 and beyond. Apparently, the DM statement generates a command like "memlist;" and the memlist code sees the semicolon and tries to parse it like a dataset name.
| Type: | Problem Note |
| Priority: | medium |
| Date Modified: | 2009-06-04 13:16:10 |
| Date Created: | 2009-04-16 15:16:30 |