Crystal Decisions provided a resolution to the problem. If the
SelectPrinter method is called, the PaperOrientation method must also be
set.
So, to access Crystal Reports from PHP, the following code is used:
$crapp = new COM(CrystalDesignRunTime.Application);
$creport = $crapp-OpenReport(d:\\athermal\\reports\\backlog.rpt, 1);
$creport-SelectPrinter(winspool, HP LaserJet 1200 Series PCL,
Ne01:);
$creport-PaperOrientation = 0;
$creport-PrintOut(False);
aap
Andrew Powell wrote:
I am receiving an error when attempting to use the SelectPrinter
method in the CrystalDesignRunTime.Application COM object. The
following code:
-
$crapp = new COM(CrystalDesignRunTime.Application);
$creport = $crapp-OpenReport(d:\\athermal\\reports\\backlog.rpt, 1);
$creport-SelectPrinter(winspool, HP LaserJet 1200 Series PCL,
Ne01:);
print
DEBUG|.$creport-DriverName.|.$creport-PrinterName.|.$creport-PortName.|;
$creport-PrintOut(False);
-
Produces the following output:
-
Content-type: text/html
X-Powered-By: PHP/4.3.1
winspool|HP LaserJet 1200 Series PCL|Ne01:|br /
bWarning/b: (null)(): Invoke() failed: Exception occurred.
bSource/b: Crystal Reports ActiveX Designer bDescription/b:
Error starting print job. Please check your printer or network
connection. in
bd:\athermal\temp\test.php/b on line b7/bbr /
-
Other items to note:
- When the SelectPrinter line is commented out, the report prints fine
to the default printer and the DEBUG line prints DEBUG|||.
- If the PrintOut line is commented out, the DEBUG line prints
DEBUG|winspool|HP LaserJet 1200 Series PCL|Ne01:| without any error.
- If the PortName is not specified, or specified incorrectly on the
SelectPrinter line, it is printed correctly on the DEBUG line. (i.e.
if Ne00: is specified on the SelectPrinter line, Ne01: is reported
on the DEBUG line.)
I am in the process of converting an Intranet application from CGI4VB
to PHP. Some of the scripts call Crystal Reports RDC to print to
either PDF or their printer, which is mapped through the network on
the server. I therefore need to call the SelectPrinter method. Any
workarounds or patches for this would be very helpful.
aap
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php