Printing issues with POS printer

scalextric59

Registered User.
Local time
Today, 00:50
Joined
Dec 20, 2008
Messages
87
Hi:
I am trying to print receipts using a POS printer. I have two POS printers (1 thermal/USB and 1 dot-matrix/LPT1). I am using VBA to switch between the printers. The reports are only text and saved to print to the default printer. When switching to the thermal, it works fine, but when switching to the dot-matrix it does not print. It only works when I print thru the Generic / Text only driver, but then I have 4 inches of wasted paper because the paper size for the generic is set to letter.
Any ideas on how can I make it work properly?

Thanks in advance.
 
have two reports, one formatted for each printer, and select accordingly
 
Thanks for your reply. I have two reports, one for the Generic/dot-matrix, and the other one (better print quality) for any other type of printer. Apparently, Access is detecting a "receipt" paper size (more than 22.75 inches) even when it is set to a "letter length" size. I also tried a custom size (6 inches), but then the last line does not print, it stays in the printer buffer.
Since this is part of an application, I cannot save the report with a specific printer. I don't know which kind of printer the user is going to have.
 
Just a thought, but have you looked at the POS DM printer's 'Method of Use' notes? It may have it's own driver-induced peculiarities.
 
I downloaded and installed the latest driver, and I have not found anything special. If I print from Excel it prints fine; it is only from Access where I am having issues. I have Access 2003.
 
I see, but if the printer's manufacturer has troubleshooting documents available, they may assist you. Might it be the margins? Try setting them to 0 -- if the printer has a minimum margin it will adjust to it.
 
Thanks fdcusa. I will go to the manufacturer website and check if they have some FAQ available. That little printer has become a headache. I will post what I may find.
 
Yes, please do, along with the Make/Model in case someone else tries the same. Good luck!
 
Okay, I could not find anything to solve my problem, so I decided to use another approach. Since I can get the port name thru the printer object, I am opening the printer/port the old fashion, and sending the report line by line (using the Generic / Text Only driver). Something like this:

open <port> as #1
while not <recordset>.eof
print #1, <field>
loop

In this way, I do not have the page length problem, or the last line not printing when I use a custom size paper. I just print as many lines as I need and then print some extra blank lines at then end to be able to tear off the receipt.
 

Users who are viewing this thread

Back
Top Bottom