Bob,
That is THE BEST WAY to do it right now. VFP runs the report just as if it was printed to the CURRENT PRINTER exactly.
That's the only bad thing though is if the USER changes the printer as he goes to Print the Report. The only solution there would be to scale the Report down a few percent so it shrinks within the newly selected printer's margins by checking the PhysicalOffsetX and PhysicalOffsetY values in device units for the selected resolution for the newly selected printer to see if it needs to shrink the output from the previous printer selected.
> In addition to using 'REPORT FORM Myreport to File tempfile1' then capture the last page (_pageno) in a memvar,
> you can use 'REPORT FORM Myreport NOCONSOLE', if you don't want to deal with temp files, then capture
> the last page using _pageno system memvar.