How to Export your SAS as pdf

Reply
New Contributor
Posts: 2

How to Export your SAS as pdf

In my output some roll numbers are there with each roll number 10 to 30 transactions are there, i want to export each roll number as a pdf file, can anybody help to write macro or sas code to export each roll number transactions into one pdf

SAS Super FREQ
Posts: 8,868

Re: How to Export your SAS as pdf

[ Edited ]
Posted in reply to venkatavmalla

Hi:
If you use BY group processing, SAS and ODS will automatically make a PDF file for every BY group. Consider this code, which makes 1 PDF for every age when age is used as a BY variable with a BY statement.

 

proc sort data=sashelp.class out=class;
  by age;
  where age in (12, 13, 14);
run;
 
ods pdf file='c:\temp\bygrp_age1.pdf' newfile=bygroup;
 
proc print data=class;
by age;
var age name sex height weight;
run;
 
ods pdf close;

For example, the above code makes 3 PDF files, one for each AGE -- and changes the name for each file it makes:

 

Age 12 c:\temp\bygrp_age1.pdf

Age 13 c:\temp\bygrp_age2.pdf

Age 14 c:\temp\bygrp_age3.pdf

 

  You only need a SAS macro approach if you want to control the names of the output files being created. Otherwise NEWFILE=BYGROUP does it for you automatically.

 

  If you need a macro program, you will find a relevant example in this paper: https://support.sas.com/resources/papers/proceedings13/120-2013.pdf 


cynthia

New Contributor
Posts: 2

Re: How to Export your SAS as pdf

Posted in reply to Cynthia_sas

Thank you for your solutions it is working, but please help on one more..  i want to save each file with that age and person name automatically can you help on this

SAS Super FREQ
Posts: 8,868

Re: How to Export your SAS as pdf

Posted in reply to venkatavmalla
Hi:
Look at the paper link that I posted. In that paper, it shows how to make a macro variable that you can use for the file name. By extending those concepts to select on age and person, you can make a macro program to do what you want. It would NOT actually make sense with SASHELP.CLASS to write a macro by AGE and PERSON (NAME) because there is only 1 person for every name, but multiple people for every age.

To do what you want, you need to understand both macro variables and macro programs. The paper link I posted has enough information to get you started.

cynthia
Ask a Question
Discussion stats
  • 3 replies
  • 147 views
  • 1 like
  • 2 in conversation