Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Chriss Miller on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Printing Issues under Win2K Pro

Status
Not open for further replies.
Dec 6, 2001
67
JM
At my company we use a Clipper compiled program to collect bill payments and generate a receipt for the customer. This program can collect a single bill, after which the cashier checks off the bill and prints the receipt; the cashier can also collect multiple bills before the checkoff/print process.

The system originally ran on top of W4WKGRPS 311 before being installed on Win95,Win98, and now Windows 2000 Pro. We are now seing where sometimes when printing multiple bills at a time, the printer will print, say 5, and not print the rest, while not giving an error message. Sometimes if the application (or Windows) is restarted, the rest of the receipts will print.

Has anyone seen this behaviour before? How did it get fixed? Its driving our cashiers (and our customers) nuts!
 
Hi Roger,

W2K Pro SP4 here. I know that behavior. My Clipper Summer '87 apps don't print until I have quit the dos session. The apps I have been porting to xHarbour did the same thing until I started adding SET PRINTER TO at the points in the program I wanted printing to happen (end of the print job). This means, however, that you have to have SET PRINTER TO LPT1 at the start of the next print job.

Regards,

Mike
 
Just a thought. Is utilization very high? Win 2000 and XP unlike Win 98 and earlier need to have code added related to the keyboard handling or CPU timeslice I think. I seem to recall the FT_OnIdle function that was available to patch clipper.

I added this to a program we have used for years to solve a problem but I can't remember if it was printing or slow response or both.
 
Whenever you print call this function after. Its really just a fancy version of what Mike said.

FUNCTION PRCOMMIT()
local cPrinter := set(24,"LPT3")
set(24,"LPT2")
set(24,"LPT1")
set(24,"" )
// restores the original printer-port!
set(24,cPrinter,.t.)
return nil

Ian Boys
DTE Systems Ltd
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top