Hi:
The way that NEWFILE= option works is by consecutively numbering the output files created. The only ways for you to control the naming used would be
1) from within a SAS macro program that would generate a unique name (based on your specification) for every value of the page variable or
2) to collect the names by piping a DIR to a file and then do an X command or SYSTASK command and rename the numbered files after they are created (this means you will have to know what value is associated with what number).
A third possibility might be to create your output using PROC REPORT with BY groups and then use ODS DOCUMENT and PROC DOCUMENT to replay the BY groups to file names of your choosing. If you just use PROC REPORT and PAGE processing, you do not get separate output objects that are replayable, but with BY group processing, you can generate separate output objects that will be replayable, as shown in the program below (based on an example from my SGF paper)
http://support.sas.com/resources/papers/proceedings10/084-2010.pdf
cynthia
[pre]
proc sort data=sashelp.prdsale out=prdsale;
by Country region prodtype;
run;
title; footnote;
ods document name=work.prddoc(write);
proc report data=prdsale nowd;
column country region prodtype predict actual;
by country;
define country / group;
define region / group;
define prodtype / group;
define predict / mean 'Average Predict';
define actual / mean 'Average Actual';
break after country / page summarize;
run;
ods document close;
proc document name=work.prddoc;
list / levels=all;
run;
quit;
** to use this REPLAY syntax, you need SAS 9.2;
** this replay process could be macro-ized;
** Replay Using a BY variable name;
ods html file='c:\temp\canada.html' style=sasweb;
proc document name=work.prddoc;
replay ^(where=(Country = 'CANADA')) ;
run;
quit;
ods _all_ close;
ods html file='c:\temp\germany.html' style=sasweb;
proc document name=work.prddoc;
replay ^(where=(Country = 'GERMANY')) ;
run;
quit;
ods _all_ close;
ods html file='c:\temp\usa.html' style=sasweb;
proc document name=work.prddoc;
replay ^(where=(Country = 'U.S.A.')) ;
run;
quit;
ods _all_ close;
[/pre]