Date: Mon, 2 Oct 2000 09:55:28 -0500
Reply-To: Rush Daugette <rush_d@TECASSOCIATES.COM>
Sender: "SAS(r) Discussion" <SAS-L@LISTSERV.UGA.EDU>
From: Rush Daugette <rush_d@TECASSOCIATES.COM>
Subject: Re: Acrobat PDFWriter Question
In-Reply-To: <005f01c029cb$5616ab40$0300005a@rsd6>
Content-Type: text/plain; charset="iso-8859-1"
Thanks to Rob and Bill for the great information on this. What actually
ends up working best for my data _null_ case is to use everything but the
proc printto's. This is under V612 and Win98 - I haven't tried anything in
V8 or NT yet. The pdf is directly written to the file you specify in the
win.ini file. Thanks for your macro, Bill, I also have an immediate need
for this as well! I'm just trying to get away from Distiller for those
situtations where you don't really need to be using it.
Rush
-----Original Message-----
From: Rob Rohrbough [mailto:Rob@Rohrbough-Systems.com]
Sent: Thursday, September 28, 2000 11:11 PM
To: SAS-L List (SAS(r) Discussion); bill_droogendyk@DOFASCO.CA; Rush
Daugette
Subject: RE: Acrobat PDFWriter Question
Rush,
Here is a macro (which runs in both V6 and V8) I developed based on
information that Bill Droogendyk posted on this issue:
%macro setPDF(pPrinter, pFile);
%if &pPrinter= %then %do;
proc printto; %* end PDF file redirection;
run;
filename pdf;
%end; %else %do;
%if %substr(&sysver,1,1) >= 7 %then %do;
options sysprint="&pPrinter" "&pFile";
%end; %else %do;
options sysprint="&pFile" "&pPrinter";;
%end; %* if V8;
filename pdf printer;
proc printto print=pdf;
run;
%end;
%mend setPDF;
With your code the call would be:
%setPDF(Acrobat PDFWriter, c:\sas_cimco\adobetest.pdf);
> data _null_;
/* WITHOUT THIS ====> file pdf print notitles; ****/
/* NOT SURE HOW TO HANDLE THE NOTITTLES */
> array red{30} $ red1-red30;
> do j=1 to 30;
> do i=1 to 30;
> red{i}=i;
> end;
> put @1 red1 @7 red2 @13 red3 @19 red4 @25 red5 @31 red6 @37 red7;
> end;
> run;
%setPDF;
Notice that there is a PROC PRINTTO preceding any use of a procedure or
datastep. Without the macro your code would work with these changes:
> options sysprint='c:\sas_cimco\adobetest.pdf' 'Acrobat PDFWriter';
> filename pdf printer;
PROC PRINTTO PRINTER=PDF;
> data _null_;
/* WITHOUT THIS ====> file pdf print notitles; ****/
/* NOT SURE HOW TO HANDLE THE NOTITTLES */
> array red{30} $ red1-red30;
> do j=1 to 30;
> do i=1 to 30;
> red{i}=i;
> end;
> put @1 red1 @7 red2 @13 red3 @19 red4 @25 red5 @31 red6 @37 red7;
> end;
> run;
PROC PRINTTO; RUN;
Not sure about printing directly to the PDF fileref or about Bill's most
recent post. But you might give it a try. (BTW, thanks again, Bill, for the
tips.)
HTH,
Rob
> -----Original Message-----
> From: Rush Daugette [mailto:rush_d@TECASSOCIATES.COM]
> Sent: Thursday, September 28, 2000 10:47 AM
> Subject: Acrobat PDFWriter Question
>
>
> Thank you for the recent discussion on using this Acrobat printer
> to create
> PDF output. My one problem is that I haven't been able to get rid of the
> dialogue box that pops up for the file name. Someone was able to
> get rid of
> this but I haven't been able to. I'm trying to use the following data
> _null_ approach rather that proc printto. Thanks for any insight.
>
> options sysprint='c:\sas_cimco\adobetest.pdf' 'Acrobat PDFWriter';
> filename pdf printer;
> data _null_;
> file pdf print notitles;
> array red{30} $ red1-red30;
> do j=1 to 30;
> do i=1 to 30;
> red{i}=i;
> end;
> put @1 red1 @7 red2 @13 red3 @19 red4 @25 red5 @31 red6 @37 red7;
> end;
> run;
>
> Rush Daugette
> TEC Associates
> Indianapolis, IN
>