DATA Step, Macro, Functions and more

using multiple data sets to create outputs from proc report

Accepted Solution Solved
Reply
Occasional Contributor
Posts: 17
Accepted Solution

using multiple data sets to create outputs from proc report

Im trying to run couple reports that reading from different datasets. For some reason, it keeps giving me this "WARNING: Apparent symbolic reference DATASETS_JUL_2016 not resolved.", and the macro is not working. Can someone please tell me what is wrong with my code below.

 

%macro report(datasets);
ODS Tagsets.ExcelXP FILE= "J:\mydrive\&datasets_JUL_2016.xls"  style=fancyprinter;

proc report data=&datasets nofs split='*';

          column School ID Class student;

          define School / display style={just=left foreground=black cellwidth=70};

          define ID / display style={just=left foreground=black cellwidth=70};

          define Class / display style={just=left foreground=black cellwidth=70};

          define Student / display style={just=left foreground=black cellwidth=70};

run;

ODS Tagsets.ExcelXP close;
%mend report;

%report(abc);

%report(efg);


Accepted Solutions
Solution
‎07-22-2016 03:52 PM
Super User
Posts: 10,538

Re: using multiple data sets to create outputs from proc report

This line

ODS Tagsets.ExcelXP FILE= "J:\mydrive\&datasets_JUL_2016.xls"  style=fancyprinter

contains

&datasets_JUL_2016

which is being treated as a single macro variable. It should be
&datasets._JUL_2016

to indicate the the literal text _JUL_2016 is appended to the value of &datasets. Note the added period.

View solution in original post


All Replies
Super User
Posts: 17,907

Re: using multiple data sets to create outputs from proc report

Can you post the log after turning on MPRINT and SYMBOLGEN. 

 

options MPRINT SYMBOLGEN;

Solution
‎07-22-2016 03:52 PM
Super User
Posts: 10,538

Re: using multiple data sets to create outputs from proc report

This line

ODS Tagsets.ExcelXP FILE= "J:\mydrive\&datasets_JUL_2016.xls"  style=fancyprinter

contains

&datasets_JUL_2016

which is being treated as a single macro variable. It should be
&datasets._JUL_2016

to indicate the the literal text _JUL_2016 is appended to the value of &datasets. Note the added period.

☑ This topic is solved.

Need further help from the community? Please ask a new question.

Discussion stats
  • 2 replies
  • 238 views
  • 2 likes
  • 3 in conversation