Difference between revisions of "Printer Installation"

From TMS Support Wiki
Jump to navigation Jump to search
 
(48 intermediate revisions by the same user not shown)
Line 1: Line 1:
PTS prints to label printers to produce prescription barcodes and tickets and other documents. As PTS is web based software there are additional steps and considerations when connecting the application to a label printer.
PTS prints to label printers to produce prescription barcodes and tickets and other documents. As PTS is web based software there are additional steps and considerations when connecting the application to a label printer.
Read the instructions carefully before beginning work. Don't assume or make guesses; PTS printing does not work in a typical way and there are many ways that network printing can fail.
=Network Printing=
=Network Printing=
Network printing is by far the most popular way of setting up label printing in PTS.
Network printing is by far the most popular way of setting up label printing in PTS.
Line 5: Line 7:
<ul>
<ul>
<li>Less interaction is required by the pharmacist for each print (compared to Browser Printing) as there is no mandatory print preview via the web browser.</li>
<li>Less interaction is required by the pharmacist for each print (compared to Browser Printing) as there is no mandatory print preview via the web browser.</li>
<li>The printer can be used from any PC.</li>
<li>Handled centrally by PTS; any printer can be used from any PC.</li>
</ul>
</ul>


==Cons of network printing==
==Cons of network printing==
<ul>
<ul>
<li>The setup process is long winded and has to be repeated for each printer, and has to be redone if the printer is replaced.</li>
<li>The setup process is long winded and has to be repeated for each printer, and has to be redone if the PC or printer are replaced.</li>
<li>Requires remote admin access to the PTS application server to setup and maintain.</li>
<li>Requires remote admin access to the PTS application server to setup and maintain. Random members of IT may not have the level of access necessary to do it.</li>
<li>Vulnerable to server and network congestion.</li>
<li>Vulnerable to server and network congestion.</li>
<li>Any problems or interruptions usually occur on the server, meaning the printer can go down without warning and can't be fixed without tracking down a server admin.</li>
<li>Any problems or interruptions usually occur on the server, meaning the printer can go down without warning and can't be fixed without tracking down a server admin.</li>
<li>Configuring the various situations that should change the default printer can get complicated.</li>
</ul>
</ul>


Line 24: Line 27:
<li>Connect your printer via USB. When Windows detects the printer it will begin the installation wizard which will work differently depending on your version of Windows. You should have the opportunity to specify a source directory for your drivers, set this to C:\Seagull\ and complete the installation. When choosing the printer model you might find it hard to determine whether you have an EPL or ZPL printer; ZPL is the much more common variant.</li>
<li>Connect your printer via USB. When Windows detects the printer it will begin the installation wizard which will work differently depending on your version of Windows. You should have the opportunity to specify a source directory for your drivers, set this to C:\Seagull\ and complete the installation. When choosing the printer model you might find it hard to determine whether you have an EPL or ZPL printer; ZPL is the much more common variant.</li>
<li>Find the printer in Control Panel > Devices and Printers, right click it and go to Printer Properties. Verify that it can print a test page.</li>
<li>Find the printer in Control Panel > Devices and Printers, right click it and go to Printer Properties. Verify that it can print a test page.</li>
<li>Under the General tab, click Preferences and then create a new label size for PTS (normally 76mm by 38mm). Make sure you select the new label size and click OK.</li>
<li>Under the General tab, click Preferences and then create/select the correct label size (normally 76mm by 38mm).</li>
<li>Go to the Advanced tab, click Printing Defaults and then choose the new label size again.</li>
<li>Go to the Graphics tab, select None under the Dithering options and then click OK.</li>
<li>Go to the Advanced tab, click Printing Defaults and then select the correct page size and dithering options again.</li>
<li>Go to the Ports tab and untick Bidirectional Support.</li>
<li>Go to the Ports tab and untick Bidirectional Support.</li>
<li>Next go to the Sharing tab and share the printer.</li>
<li>Next go to the Sharing tab and share the printer.</li>
Line 37: Line 41:
<li>
<li>
<ol type="a">
<ol type="a">
<li><strong>Windows Server 2016 and newer</strong><br/>
<li><strong>Shared Printer</strong><br/>
Open Print Management, expand Print Servers, then expand the server menu, right-click Printers and then choose Add a Printer. Choose Add a Local Printer, then choose Create a New Port and select Local Port. When it asks you to give the port a name, enter the path to the shared printer e.g. \\ComputerName\ShareName.</li>
<li><strong>Windows Server 2012 and older</strong><br/>
Open Devices and Printers and then choose Add a Printer. Choose Add a Local Printer, then choose Create a New Port and select Local Port. When it asks you to give the port a name, enter the path to the shared printer e.g. \\ComputerName\ShareName.</li>
Open Devices and Printers and then choose Add a Printer. Choose Add a Local Printer, then choose Create a New Port and select Local Port. When it asks you to give the port a name, enter the path to the shared printer e.g. \\ComputerName\ShareName.</li>
<li><strong>TCP/IP Printers</strong><br/>
<li><strong>TCP/IP Printers</strong><br/>
Line 46: Line 48:
</li>
</li>
<li>Click OK and then Next and then select the correct printer model if prompted. If your model doesn’t appear in the list, choose Have Disk and then select the drivers you unpacked to C:\Seagull. Select your printer and click Next. You will be asked to enter a name for the printer, give it a short but descriptive name with no spaces, e.g. BookingIn. <strong>Do not</strong> set it as your default printer and <strong>do not</strong> share this instance of the printer. Click Next and then click Finish.</li>
<li>Click OK and then Next and then select the correct printer model if prompted. If your model doesn’t appear in the list, choose Have Disk and then select the drivers you unpacked to C:\Seagull. Select your printer and click Next. You will be asked to enter a name for the printer, give it a short but descriptive name with no spaces, e.g. BookingIn. <strong>Do not</strong> set it as your default printer and <strong>do not</strong> share this instance of the printer. Click Next and then click Finish.</li>
<li>Under the General tab, click Preferences and then create a new label size for PTS (normally 76mm by 38mm). Make sure you select the new label size and click OK.</li>
<li>Find the printer in Control Panel > Devices and Printers, right click it and go to Printer Properties. Verify that it can print a test page.</li>
<li>Go to the Advanced tab, click Printing Defaults and then choose the new label size again.</li>
<li>Under the General tab, click Preferences and then create/select the correct label size (normally 76mm by 38mm).</li>
<li>Go to the Graphics tab, select None under the Dithering options and then click OK.</li>
<li>Go to the Advanced tab, click Printing Defaults and then select the correct page size and dithering options again.</li>
<li>Go to the Ports tab and untick Bidirectional Support.</li>
<li>Go to the Ports tab and untick Bidirectional Support.</li>
<li>Verify that you can print a test page.</li>
<li>Verify that you can print a test page.</li>
Line 55: Line 59:
</ol>
</ol>


==Troubleshooting==
===Troubleshooting===
<ol>
See the [[Printer Troubleshooting]] page in the event that the printer does not work on the first try.
<li><strong>I cannot print a test page from the client PC.</strong><br/>
The printer is not correctly installed. Delete the printer and try again, making sure to select the correct printer model when given the choice. If you cannot get this to work please consult with your IT department; general printer issues are outside the scope of this document.</li>
<li><strong>During installation on the server I get a “bad username/password” or similar "access denied" error.</strong><br/>
The user account you’re currently logged into the server with does not have permission to install a printer on the server. Note that if you are logged in as a local admin you may need to switch to a domain admin account to activate the appropriate group policy.</li>
<li><strong>Print Management and/or Control Panel complain that the print spooler service isn't running and suggest rebooting the server.</strong><br/>
There is no need to reboot the server. Open Windows Services and ensure the Print Spooler service is running and is set to automatically start, and then try again.</li>
<li><strong>The server cannot find the shared printer even though I’m certain I’ve typed it correctly.</strong><br/>
Check whether File Explorer can find the PC via "\\PCName\" and that the shared printer is listed in there. If not, you have fundamental networking issues that need to be resolved first. You may have more success using the client PC’s IP address instead of its name, e.g. \\192.168.2.7\Name, but this won’t work with dynamic IP addresses.</li>
<li><strong>I can print test pages from both the client and server PCs but nothing happens when I print from PTS.</strong><br/>
Verify that you entered the Name on Server value correctly in Setup > Printers.</li>
<li><strong>Test pages are hitting the print spooler but get stuck in an "Error - Printing" state.</strong><br/>
When this starts happening always bear in mind that an errored document in the spooler will prevent any further documents from printing until it is deleted. You'll need to get into the routine of deleting the document at every step while troubleshooting this problem. If this is happening with test pages this indicates a networking issue of some kind. Ensure the printer is still online, is still shared, the PC is turned on and that the server and the PC can see each other. Searching for the client PC in an Explorer window on the server is a good way to test the network and that the printer is accessible.</li>
<li><strong>Test pages work but PTS labels get stuck in the "Error - Printing" state.</strong><br/>
When the problem is affecting PTS documents exclusively this is usually a permissions issue. Make sure that “Everyone” has permission to print, manage the printer and manage documents on the printer on both the server and the client (you can do this under the Security tab). Again note that you must delete the previous errored document from the spooler before trying again. We're also finding that in response to recent printer based malware (e.g. Print Nightmare), Trusts sometimes disable printing except for specific domain accounts. To remedy this the PTS service account should either be added to the "RDP users" group, or the "access this computer from the network" policy for the printer PC. A TCP/IP printer setup would sidestep a lot of permissions issues like this.
</li>
<li><strong>We haven't updated PTS for a while and it is not using the service account.</strong><br/>
You may be able to circumvent the issue by selecting a different "built-in account" identity as PTS's application pool identity in IIS (Application Pools > PTS > Advanced Settings > Identity). Either NetworkService or ApplicationPoolIdentity may work. Failing that, identify the PTS service account in Setup > Application Settings > SSRS Reports Service User, and its password in Setup > Application Settings > SSRS Reports Service Password. Once you've done this set the app pool's identity to Custom and enter the service account credentials.</li>
<li><strong>The document prints but it prints off-centre or prints over several labels.</strong><br/>
[[File:PrinterDithering.png|thumb|250px|Set "Dithering" to None.]]
Ensure that you input the page and label size settings on both the client and the server, in both places in the printer driver. Note that makes a total of four places where you specify the label sizes for each printer – please understand that we don’t have any control over this odd procedure.</li>
<li><strong>The label is pixelated and unclear (dithered) and the barcode doesn't scan.</strong><br/>
Make sure you have set the Dithering setting to None in Printer Properties. As above, you will have four places in total where you have to specify this.</li>
<li><strong>During testing the Print button doesn’t seem to respond or takes a very long time to react.</strong><br/>
Check that Bidirectional Support is turned off on both the server and client PCs. You do not lose anything noteworthy by disabling this setting.</li>
<li><strong>Since installing the printer, booking in prescriptions takes a lot longer.</strong><br/>
Again, check that Bidirectional Support is turned off on both the server and client PCs.</li>
<li>[[File:Screenshot_2022-02-16_at_11.37.42.png|thumb|The "Disable network features" dialog. Simply click Disable.]]<strong>I’ve turned off Bidirectional Support on both the client and the server yet it still seems to print rather slowly.</strong><br/>
Make sure you have used the [[Media:Seagull-drivers-for-zebra-printers.zip|Seagull Drivers for Zebra Printers]] on both the client and the server, as any sort of mismatch between two drivers can result in slow printing. We do not generally recommend the first-party Zebra drivers for any reason. You could also try connecting to the shared printer by the host’s IP address as opposed to its name (see troubleshooting point 4). If you cannot resolve this to your satisfaction, consider Browser Printing.</li>
<li><strong>While configuring the printer on the server I’m getting an extremely slow response from the property pages and then I’m eventually prompted to disable network features. What is this?</strong><br/>
This is an extremely common error that can have weird consequences if not dealt with properly, including being unable to access the printer properties page to finish configuring the printer. Simply click Disable, and then ensure that Bidirectional Support is turned off in Printer Properties > Ports. This is an essential step. This error is actually a good indicator that the server has found and is connected to the printer.</li>
<li><strong>Printing from PTS works fine for a while but will then stop working without warning.</strong><br/>
Unfortunately it's the nature of Windows network printing that once a print fails, the document enters an error state in the print queue and blocks the printer for any subsequent documents. This means that a temporary blip in connectivity can become semi-permanent until the errored document is dealt with. Either manually delete the document from the server or consider installing the [[Media:Print-queue-monitor-service.zip|Print Queue Monitor Service]] on the server. This automatically deletes errored documents from the spooler and prevents the printer from randomly stopping, but isn't designed to address any actual printer issues.</li>
<li><strong>Printing randomly stops, but it doesn't seem to be related to an errored document.</strong><br/>
Trusts are sometimes using group policy to disable the Print Spooler service across the board in response to new printer based viruses, such as Print Nightmare. You'll be able to verify this by checking whether the service is mysteriously disabled after a period of time (it can sometimes take a few days for the server to apply the policy as servers are rarely logged in/out or restarted). IT will have to make an exception for the PTS application server if you want to use network printing.</li>
<li><strong>The printer is responding but is printing blank labels.</strong><br/>
The printer can print blank labels if the wrong type of labels are used, or if the ribbon needs changing (if it's that type of printer). This can also occur when the wrong printer drivers are used, or if the wrong printer model was selected during installation, or if the label sizes are wildly incorrect.</li>
</ol>


=Browser Printing=
=Browser Printing=
Line 102: Line 69:
<li>Immune to performance, permissions, and myriad other configuration issues that can affect networked printing.</li>
<li>Immune to performance, permissions, and myriad other configuration issues that can affect networked printing.</li>
<li>Doesn't stop working if the printer is moved or replaced. As long as a printer is connected to the PC, this will be able to print to it.</li>
<li>Doesn't stop working if the printer is moved or replaced. As long as a printer is connected to the PC, this will be able to print to it.</li>
<li>Less maintenance.</li>
<li>Less maintenance, and significantly easier for IT to wrap their head around.</li>
<li>Conforms to the installed printers and default printer set in Windows.</li>
</ul>
</ul>


Line 108: Line 76:
<ul>
<ul>
<li>Requires more user interaction with each print. The web browser will, by design, display a print preview that the user has to confirm. This means a minimum of one extra keystroke or mouse click with each print and that assumes the printer is set as the Windows default. It's impossible to change this behaviour as far as we know; it's a fundamental security feature of every web browser.</li>
<li>Requires more user interaction with each print. The web browser will, by design, display a print preview that the user has to confirm. This means a minimum of one extra keystroke or mouse click with each print and that assumes the printer is set as the Windows default. It's impossible to change this behaviour as far as we know; it's a fundamental security feature of every web browser.</li>
<li>Older web browsers may not render the document properly, but support is fairly high amongst newer web browsers.</li>
<li>Conforms to the installed printers and default printer set in Windows. Indeed this is both a pro and a con. The other printing options are handled centrally by PTS, meaning you can print to any mapped printer no matter which PC you're using with no further configuration.</li>
<li>The web browser will probably try to add inappropriate margins, headers and footers to the label. This can be reconfigured as described below, but without IT involvement, the configuration will have to be repeated not only for each PC but for each user of the PC too.</li>
</ul>
</ul>


Line 124: Line 91:
[[File:Screenshot_2022-02-16_at_11.38.04.png|thumb|How to find page setup in Internet Explorer.]]
[[File:Screenshot_2022-02-16_at_11.38.04.png|thumb|How to find page setup in Internet Explorer.]]
<ol>
<ol>
<li>In Printer Properties, under the General tab, click Preferences and then create a new label size for PTS (normally 76mm by 38mm). Make sure you select the new label size and click OK.</li>
<li>In Printer Properties, under the General tab, click Preferences and then create/select the correct label size (normally 76mm by 38mm).</li>
<li>Go to the Advanced tab, click Printing Defaults and then choose the new label size again.</li>
<li>Go to the Graphics tab, select None under the Dithering options and then click OK.</li>
<li><i>Later versions of PTS have this step implemented out-of-the-box</i>. Log in to PTS as an administrator. Go to Setup > Printers > [open Actions Menu] > New Printer. Choose the relevant dispensaries (selecting all of them may be appropriate). In the Name on Server field enter "LOCAL" and then click Save. In the next popup, enter "Browser Printing" as the Printer's name. See the [[Printers]] page for more details.</li>
<li>Go to the Advanced tab, click Printing Defaults and then select the correct page size and dithering options again.</li>
<li>Test the printer with a PTS label; simply select Browser Printing from the printer drop down. Reprinting an Activity barcode is an easy way of doing this.</li>
<li>Log in to PTS as an administrator. Go to Setup > Printers and verify that there is a printer with the Name on Server field set to "LOCAL". Make a note of the printer's name; this is what you need to select to use it.</li>
<li>If no such printer exists, open the Actions Menu and click New Printer. Choose the relevant dispensaries (selecting all of them may be appropriate). In the Name on Server field enter "LOCAL" and then click Save. In the next popup, enter "Browser Printing" as the Printer's name. See the [[Printers]] page for more details.</li>
<li>Test the printer with a PTS label; simply select Browser Printing (or whatever the printer was called) from the printer drop down. Reprinting an Activity barcode is an easy way of doing this.</li>
<li>If you are accustomed to Network Printing, notice that you now see an additional print preview dialog where you have to select the physical printer and click OK. This will happen with every print job and is a characteristic of browser printing. You could optionally speed this process up by designating the label printer as the default printer in Windows, and from then on use the enter key instead of the OK button.</li>
<li>If you are accustomed to Network Printing, notice that you now see an additional print preview dialog where you have to select the physical printer and click OK. This will happen with every print job and is a characteristic of browser printing. You could optionally speed this process up by designating the label printer as the default printer in Windows, and from then on use the enter key instead of the OK button.</li>
<li>If the label is printed with unwanted information (e.g. the URL, or “Page 1/1” in the footer, etc.), or an excessive margin (which may even cause the label to be cut in half and spread across two labels), you can modify your web browser settings so that it doesn’t do that any more. Mention this part of the setup to your IT department as they may be able to roll this out for you across multiple PCs.
<li>Browser printing works with pop-ups, so you may have to turn off the browser's pop-up blocker. If nothing prints or if you find yourself able to print just the barcode label but there is no sign of the subsequent ticket, look in the address bar for the "pop-up blocked" icon. Click on it to allow pop-ups. We suggest enabling all pop-ups for PTS if you can.</li>
<li>If the label is printed with unwanted information (e.g. the URL, or “Page 1/1” in the footer, etc.), or an excessive margin (which may even cause the label to be cut in half and spread across two labels), you can modify your web browser settings so that it doesn’t do that any more.
<ul>
<ul>
<li>In Internet Explorer you can find these options in Settings > Print > Page Setup. Set all of the header and footer options to “empty”, and adjust the margin sizes to zero.</li>
<li>In Internet Explorer you can find these options in Settings > Print > Page Setup. Set all of the header and footer options to “empty”, and adjust the margin sizes to zero.</li>
<li>In Chrome and Edge, from the Print Preview, expand "More Settings" then set margins to "None", and untick "Headers and Footers". The browser should remember this adjustment going forward.</li>
<li>In Chrome and Edge, from the Print Preview, expand "More Settings" then set margins to "None", and untick "Headers and Footers". The browser should remember this adjustment going forward.</li>
</ul>
<li>As of PTS 5.0.6.7 this is done automatically on up-to-date versions of Chrome and Edge.</li>
</li>
<li>Browser printing works with pop-ups, so you may have to turn off the browser's pop-up blocker. If you find yourself able to print just the barcode label but there is no sign of the subsequent ticket, it could be the browser allowing one pop-up but no more (Edge and Chrome both display this behaviour).
<ul>
<li>In Internet Explorer go to Settings > Internet Options > Privacy > Popup Blocker and then disable the "Turn on Pop-up Blocker" option.</li>
<li>In Chrome go to Settings > Privacy and security > Site settings > Pop-ups and redirects > Default behaviour and then select "Sites can send pop-ups and use redirects".</li>
<li>In Edge go to Settings > Cookies and site permissions > Pop-ups and redirects and turn off "Block".</li>
<li>These instructions describe how to disable the pop-up blocker entirely. If it's preferable IT should be able to allow pop-ups for PTS specifically.</li>
</ul>
</ul>
</li>
</li>
Line 165: Line 128:
<li>
<li>
<ol type="a">
<ol type="a">
<li><strong>Windows Server 2016 and newer</strong><br/>
<li><strong>Shared Printer</strong><br/>
Open Print Management, expand Print Servers, then expand the server menu, right-click Printers and then choose Add a Printer. Choose Add a Local Printer, then choose Create a New Port and select Local Port. When it asks you to give the port a name, enter the path to the shared printer e.g. \\ComputerName\ShareName.</li>
<li><strong>Windows Server 2012 and older</strong><br/>
Open Devices and Printers and then choose Add a Printer. Choose Add a Local Printer, then choose Create a New Port and select Local Port. When it asks you to give the port a name, enter the path to the shared printer e.g. \\ComputerName\ShareName.</li>
Open Devices and Printers and then choose Add a Printer. Choose Add a Local Printer, then choose Create a New Port and select Local Port. When it asks you to give the port a name, enter the path to the shared printer e.g. \\ComputerName\ShareName.</li>
<li><strong>TCP/IP Printers</strong><br/>
<li><strong>TCP/IP Printers</strong><br/>
Line 180: Line 141:
<li>Now that the printer is set up, see the [[Ward Ordering]] page for information on how to configure this printer as the automated requisition form printer.</li>
<li>Now that the printer is set up, see the [[Ward Ordering]] page for information on how to configure this printer as the automated requisition form printer.</li>
</ol>
</ol>
===Troubleshooting===
See the [[Printer Troubleshooting]] page in the event that the printer does not work on the first try. The troubleshooting page primarily covers label printers but the vast majority of the information will apply equally here.


=Frequently Asked Questions=
=Frequently Asked Questions=
==Why does Network Printing involve so much troubleshooting?==
===What’s the difference between Browser Printing and Network Printing?===
Ultimately all you are doing is sharing a printer on one PC and then mapping to the shared printer from another PC (the PTS server). The associated troubleshooting is simply typical of printer sharing in a complicated Windows network. TCP/IP printers are generally more stable, and browser printing avoids printing over the network altogether. If network printing causes you too much grief, switch to browser printing to have PTS operate the printer locally like any other software.
 
==Can I use "Printers and Scanners" instead of Control Panel in Windows 10 and up?==
You can, but it's often a chore to find the various necessary settings and options, plus it tries to get you to use the automatic tools first, which don't work. You will ultimately end up using the classic Control Panel controls anyway.
==What’s the difference between Browser Printing and Network Printing?==
Browser Printing uses the client’s web browser to send a print job to a connected printer via a print preview dialog box, like printing any other document from the web or other locally installed software. Network Printing sends a print document over the network from the PTS web server to the printer eliminating the need for the print dialog. Browser Printing is easy to setup and needs less maintenance, but requires at the very least one additional keystroke to confirm the print job in the dialog box, and may not work in all web browsers. Network Printing doesn’t require a print dialog box, but can sometimes be difficult to setup and maintain and is occasionally slower depending on network and server conditions.
Browser Printing uses the client’s web browser to send a print job to a connected printer via a print preview dialog box, like printing any other document from the web or other locally installed software. Network Printing sends a print document over the network from the PTS web server to the printer eliminating the need for the print dialog. Browser Printing is easy to setup and needs less maintenance, but requires at the very least one additional keystroke to confirm the print job in the dialog box, and may not work in all web browsers. Network Printing doesn’t require a print dialog box, but can sometimes be difficult to setup and maintain and is occasionally slower depending on network and server conditions.


If network printing is causing you persistent issues, don't lose sight of the fact that it only saves users one or two keystrokes.
If network printing is causing you persistent issues, don't lose sight of the fact that it only saves users one or two keystrokes.
===Why does Network Printing involve so much troubleshooting?===
Ultimately all you are doing is sharing a printer on one PC and then mapping to the shared printer from another PC (the PTS server). The associated troubleshooting is simply typical of printer sharing in a complicated Windows network. TCP/IP printers are generally more stable, and browser printing avoids printing over the network altogether. If network printing causes you too much grief, switch to browser printing to have PTS operate the printer locally like any other software.
===Can I use "Printers and Scanners" instead of Control Panel in Windows 10 and up?===
The instructions are written to use Control Panel so that they have the broadest compatibility with different versions of Windows. If you can reinterpret the instructions for use with Printer and Scanners, then feel free. Most of our users seem to feel more comfortable using Control Panel though.


==With Network Printing, shouldn’t it be enough to simply provide the fully qualified path to the printer in PTS?==
===With Network Printing, shouldn’t it be enough to simply provide the fully qualified path to the printer in PTS?===
Strictly speaking this is true, and PTS will indeed try to operate the printer this way if you just add the path to the Name on Server field so you are well within reason to try this out. That being said we see a very low success rate when the printer is not mapped first, and even if it works, it will more than likely print very slowly. Most importantly if printing does fail you will have little or no feedback as to why, making troubleshooting difficult.
Strictly speaking this is true, and you can get PTS to try to operate the printer this way by entering the fully qualified path in the Name on Server field. That being said we see a very low success rate when the printer is not mapped first, and even if it works, it will more than likely print very slowly (possibly because the default behaviour is to enable bi-directional support). Importantly if printing does fail you will have little to no feedback as to why.
==Despite following the advice above our printer still prints very slowly, but it works fine from other applications.==
The reason it seems only PTS may be affected by slow printing is that it’s a good bet that PTS is the only software in use that prints across your network from a web server to a label printer. If the printer will not print satisfactorily over the network, and you really have explored all the options on this page, you should switch to Browser Printing.


==Why must I use Print Management on Windows Server 2016 and newer?==
[[File: PrintSpoolerDisabled.png |thumb|450px|In this example the Print Spooler service is disabled.]]
There seems to be an issue in the new Windows 10-based Windows Server operating systems (2016+) where mapping printers in Control Panel never completes correctly and the printer remains in the Unspecified section, where it cannot be configured nor used. The Print Management app does not seem to have the same issue. You can find the Print Management app by searching for it, in administrative tools, or by running “printmanagement.msc” from a command window.
===How do I check whether the Print Spooler service is running?===
On the PTS server, go to Administrative Tools and then open Services. In the list, locate Print Spooler. The Status should be Running, and the Startup Type should be Automatic. If the service is stopped or disabled, right-click it, go to Properties and address the issue/s in there. You will need very elevated permissions to fix this, if anything is greyed out you will need to contact IT. Indeed even if you can fix the problem there and then you should talk to IT about preventing the issue from reoccurring.


<i>UPDATE: This issue seems to have been addressed in a Windows Update at some point, and Control Panel appears to be working again. The information on this page will remain the same for now to ensure the instructions have the broadest compatibility.</i>
===Despite following the advice above our printer still prints very slowly, but it works fine from other applications.===
The reason it seems only PTS may be affected by slow printing is that it’s a good bet that PTS is the only software in use that prints across your network from a web server to a label printer. If the printer will not print satisfactorily over the network, and you really have explored all the options on this page and on the [[Printer Troubleshooting]] page, you should switch to Browser Printing.


==Just what is bi-directional support and why does it cause so many problems?==
===Just what is bi-directional support and why does it cause so many problems?===
It cannot be overstated how many reported issues boil down to this part of the setup being skipped.
It cannot be overstated how many reported issues boil down to this part of the setup being skipped.


Bi-directional support refers to two computers communicating with each other about the various properties of a shared printer, such as ink and paper stock levels, so a remote user can be informed about what's going on with the printer. It's completely unnecessary for our purposes as the remote computer is the PTS server, which nobody will be monitoring for this sort of thing, and crucially there seems to be a huge performance penalty with the setting turned on.
Bi-directional support refers to two computers communicating with each other about the various properties of a shared printer, such as ink and paper stock levels, so a remote user can be informed about what's going on with the printer. It's completely unnecessary in this context since the remote computer is the PTS server, which nobody will be monitoring for this sort of thing.
 
Crucially, <strong>there is a huge performance penalty associated with this setting</strong>.
 
It's important to note that a single printer having this setting enabled can and will slow down printing for all PTS printers, as the poor performance impacts the server's print spooler as a whole. It's a good idea to check every single installed printer for this setting regardless of the printer you're having trouble with.


We do not yet know why our setup is so vulnerable to this setting. It may be related to latency due to the client/server nature of PTS, but the effects are perhaps too consistent and extreme for this to be the only explanation. It's possible that Zebra label printers are simply not well designed in this regard.
We do not yet know why our setup is so vulnerable to this setting. It may be related to latency due to the client/server nature of PTS, but the effects are perhaps too consistent and extreme for this to be the only explanation. It's possible that Zebra label printers are simply not well designed in this regard.


The performance impact can be so massive that it's sometimes not even obviously related to printers. All of the server's functions are affected, so to other users who just happen to be logged in at the time there is no obvious correlation between the poor performance and the printing of a label. It's unfortunate that the default Windows behaviour is to turn the setting on even on a server OS, but again it can be overcome by turning it off manually under the Ports tab.
It's not uncommon for reports of general PTS performance issues to turn out to be caused by this setting.
 
It's deeply unfortunate that the default Windows behaviour is to turn the setting on, even on a server OS, but it bears repeating that it can be overcome by simply turning it off manually in the Ports tab.

Latest revision as of 10:04, 2 July 2024

PTS prints to label printers to produce prescription barcodes and tickets and other documents. As PTS is web based software there are additional steps and considerations when connecting the application to a label printer.

Read the instructions carefully before beginning work. Don't assume or make guesses; PTS printing does not work in a typical way and there are many ways that network printing can fail.

Network Printing

Network printing is by far the most popular way of setting up label printing in PTS.

Pros of network printing

  • Less interaction is required by the pharmacist for each print (compared to Browser Printing) as there is no mandatory print preview via the web browser.
  • Handled centrally by PTS; any printer can be used from any PC.

Cons of network printing

  • The setup process is long winded and has to be repeated for each printer, and has to be redone if the PC or printer are replaced.
  • Requires remote admin access to the PTS application server to setup and maintain. Random members of IT may not have the level of access necessary to do it.
  • Vulnerable to server and network congestion.
  • Any problems or interruptions usually occur on the server, meaning the printer can go down without warning and can't be fixed without tracking down a server admin.
  • Configuring the various situations that should change the default printer can get complicated.

Installation instructions

Installing the printer on the PC and sharing it

This is unnecessary if using a TCP/IP printer.

  1. Download the Seagull Drivers for Zebra Printers installer. Run it on the PC you will connect your printer to but don’t connect the printer just yet.
  2. During installation leave the install path as C:\Seagull\ and untick the “run driver wizard” and the “read installation instructions” options then click finish.
  3. Connect your printer via USB. When Windows detects the printer it will begin the installation wizard which will work differently depending on your version of Windows. You should have the opportunity to specify a source directory for your drivers, set this to C:\Seagull\ and complete the installation. When choosing the printer model you might find it hard to determine whether you have an EPL or ZPL printer; ZPL is the much more common variant.
  4. Find the printer in Control Panel > Devices and Printers, right click it and go to Printer Properties. Verify that it can print a test page.
  5. Under the General tab, click Preferences and then create/select the correct label size (normally 76mm by 38mm).
  6. Go to the Graphics tab, select None under the Dithering options and then click OK.
  7. Go to the Advanced tab, click Printing Defaults and then select the correct page size and dithering options again.
  8. Go to the Ports tab and untick Bidirectional Support.
  9. Next go to the Sharing tab and share the printer.

Mapping the printer onto the PTS server

  1. Remote Desktop into the PTS web server.
  2. Ensure the Print Spooler service is running, and is set to automatically start.
  3. Install the Seagull drivers on the server using the same installer as before. Again, untick the “run driver wizard” and the “read installation instructions” options then click finish.
    1. Shared Printer
      Open Devices and Printers and then choose Add a Printer. Choose Add a Local Printer, then choose Create a New Port and select Local Port. When it asks you to give the port a name, enter the path to the shared printer e.g. \\ComputerName\ShareName.
    2. TCP/IP Printers
      Open Devices and Printers and then choose Add a Printer. Choose Add a Printer using TCP/IP address or hostname, then fill in the details for the remote printer.
  4. Click OK and then Next and then select the correct printer model if prompted. If your model doesn’t appear in the list, choose Have Disk and then select the drivers you unpacked to C:\Seagull. Select your printer and click Next. You will be asked to enter a name for the printer, give it a short but descriptive name with no spaces, e.g. BookingIn. Do not set it as your default printer and do not share this instance of the printer. Click Next and then click Finish.
  5. Find the printer in Control Panel > Devices and Printers, right click it and go to Printer Properties. Verify that it can print a test page.
  6. Under the General tab, click Preferences and then create/select the correct label size (normally 76mm by 38mm).
  7. Go to the Graphics tab, select None under the Dithering options and then click OK.
  8. Go to the Advanced tab, click Printing Defaults and then select the correct page size and dithering options again.
  9. Go to the Ports tab and untick Bidirectional Support.
  10. Verify that you can print a test page.
  11. Log in to PTS as an administrator. Go to Setup > Printers > [open Actions Menu] > New Printer. Choose the relevant dispensary. In the Name on Server field enter the name you gave the printer in step 5. See the Printers page for more details.
  12. Test the printer with a PTS label. Reprinting an Activity barcode is an easy way of doing this.
  13. Only once the printer is confirmed working, consider installing the Print Queue Monitor Service on the server. This automatically deletes errored documents from the spooler and prevents the printer from randomly stopping, but isn't designed to address any actual printer issues.

Troubleshooting

See the Printer Troubleshooting page in the event that the printer does not work on the first try.

Browser Printing

An example of the print preview you will encounter when using browser based printing. Unfortunately it is unavoidable, but can be optimised so you only have to hit the Enter key.

Browser printing uses the web browser to produce the document, in a similar way to how a "normal" web page is printed such as via File > Print.

Pros of browser printing

  • Immune to performance, permissions, and myriad other configuration issues that can affect networked printing.
  • Doesn't stop working if the printer is moved or replaced. As long as a printer is connected to the PC, this will be able to print to it.
  • Less maintenance, and significantly easier for IT to wrap their head around.
  • Conforms to the installed printers and default printer set in Windows.

Cons of browser printing

  • Requires more user interaction with each print. The web browser will, by design, display a print preview that the user has to confirm. This means a minimum of one extra keystroke or mouse click with each print and that assumes the printer is set as the Windows default. It's impossible to change this behaviour as far as we know; it's a fundamental security feature of every web browser.
  • Conforms to the installed printers and default printer set in Windows. Indeed this is both a pro and a con. The other printing options are handled centrally by PTS, meaning you can print to any mapped printer no matter which PC you're using with no further configuration.

Installation instructions

Installing the printer on the PC

If the label printer you intend to use is already connected to the PC and working, skip to the next section.

  1. Download the Seagull Drivers for Zebra Printers installer. Run it on the PC you will connect your printer to but don’t connect the printer just yet.
  2. During installation leave the install path as C:\Seagull\ and untick the “run driver wizard” and the “read installation instructions” options then click finish.
  3. Connect your printer via USB. When Windows detects the printer it will begin the installation wizard which will work differently depending on your version of Windows. You should have the opportunity to specify a source directory for your drivers, set this to C:\Seagull\ and complete the installation. When choosing the printer model you might find it hard to determine whether you have an EPL or ZPL printer; ZPL is the much more common variant.
  4. Find the printer in Control Panel > Devices and Printers, right click it and go to Printer Properties. Verify that it can print a test page.

Configuring the printer to work with PTS labels

How to find page setup in Internet Explorer.
  1. In Printer Properties, under the General tab, click Preferences and then create/select the correct label size (normally 76mm by 38mm).
  2. Go to the Graphics tab, select None under the Dithering options and then click OK.
  3. Go to the Advanced tab, click Printing Defaults and then select the correct page size and dithering options again.
  4. Log in to PTS as an administrator. Go to Setup > Printers and verify that there is a printer with the Name on Server field set to "LOCAL". Make a note of the printer's name; this is what you need to select to use it.
  5. If no such printer exists, open the Actions Menu and click New Printer. Choose the relevant dispensaries (selecting all of them may be appropriate). In the Name on Server field enter "LOCAL" and then click Save. In the next popup, enter "Browser Printing" as the Printer's name. See the Printers page for more details.
  6. Test the printer with a PTS label; simply select Browser Printing (or whatever the printer was called) from the printer drop down. Reprinting an Activity barcode is an easy way of doing this.
  7. If you are accustomed to Network Printing, notice that you now see an additional print preview dialog where you have to select the physical printer and click OK. This will happen with every print job and is a characteristic of browser printing. You could optionally speed this process up by designating the label printer as the default printer in Windows, and from then on use the enter key instead of the OK button.
  8. Browser printing works with pop-ups, so you may have to turn off the browser's pop-up blocker. If nothing prints or if you find yourself able to print just the barcode label but there is no sign of the subsequent ticket, look in the address bar for the "pop-up blocked" icon. Click on it to allow pop-ups. We suggest enabling all pop-ups for PTS if you can.
  9. If the label is printed with unwanted information (e.g. the URL, or “Page 1/1” in the footer, etc.), or an excessive margin (which may even cause the label to be cut in half and spread across two labels), you can modify your web browser settings so that it doesn’t do that any more.
    • In Internet Explorer you can find these options in Settings > Print > Page Setup. Set all of the header and footer options to “empty”, and adjust the margin sizes to zero.
    • In Chrome and Edge, from the Print Preview, expand "More Settings" then set margins to "None", and untick "Headers and Footers". The browser should remember this adjustment going forward.
    • As of PTS 5.0.6.7 this is done automatically on up-to-date versions of Chrome and Edge.

A4 Printers

Normally A4 printers are used to print reports or occasionally with browser based printing (see above) and will work "out-of-the-box". However as of PTS v5.0.3.0 you can now use A4 printers as network printers to facilitate the automated printing of A4 requisition forms for Ward Ordering.

It's an understatement to say that unlike the label printers there are a wide variety of A4 printers that could be used in this way, so the information here is a little bit more generic but we will cover the important details. Much of the same network label printer troubleshooting tips will apply.

Installation instructions

Installing the printer on the PC and sharing it

This is unnecessary if using a TCP/IP printer.

  1. Install the printer on the PC in accordance with the printer manufacturers instructions. Verify that it can print a test page.
  2. Go to the Ports tab and untick Bidirectional Support.
  3. Next go to the Sharing tab and share the printer.

Mapping the printer onto the PTS server

  1. Remote Desktop into the PTS web server.
  2. Ensure the Print Spooler service is running, and is set to automatically start.
    1. Shared Printer
      Open Devices and Printers and then choose Add a Printer. Choose Add a Local Printer, then choose Create a New Port and select Local Port. When it asks you to give the port a name, enter the path to the shared printer e.g. \\ComputerName\ShareName.
    2. TCP/IP Printers
      Open Devices and Printers and then choose Add a Printer. Choose Add a Printer using TCP/IP address or hostname, then fill in the details for the remote printer.
  3. Click OK and then Next and then select the correct printer model if prompted. If your model doesn’t appear in the list, choose Have Disk and then select the drivers for your printer (you may have to manually install them). Select your printer model and click Next. You will be asked to enter a name for the printer, give it a short but descriptive name with no spaces, e.g. A4Req. Do not set it as your default printer and do not share this instance of the printer. Click Next and then click Finish.
  4. Go to the Ports tab and untick Bidirectional Support.
  5. Verify that you can print a test page.
  6. Log in to PTS as an administrator. Go to Setup > Printers > [open Actions Menu] > New Printer. Choose the relevant dispensary. In the Name on Server field enter the name you gave the printer in step 4. See the Printers page for more details.
  7. Test the printer with a PTS label. Reprinting an Activity barcode is an easy way of doing this.
  8. Now that the printer is set up, see the Ward Ordering page for information on how to configure this printer as the automated requisition form printer.

Troubleshooting

See the Printer Troubleshooting page in the event that the printer does not work on the first try. The troubleshooting page primarily covers label printers but the vast majority of the information will apply equally here.

Frequently Asked Questions

What’s the difference between Browser Printing and Network Printing?

Browser Printing uses the client’s web browser to send a print job to a connected printer via a print preview dialog box, like printing any other document from the web or other locally installed software. Network Printing sends a print document over the network from the PTS web server to the printer eliminating the need for the print dialog. Browser Printing is easy to setup and needs less maintenance, but requires at the very least one additional keystroke to confirm the print job in the dialog box, and may not work in all web browsers. Network Printing doesn’t require a print dialog box, but can sometimes be difficult to setup and maintain and is occasionally slower depending on network and server conditions.

If network printing is causing you persistent issues, don't lose sight of the fact that it only saves users one or two keystrokes.

Why does Network Printing involve so much troubleshooting?

Ultimately all you are doing is sharing a printer on one PC and then mapping to the shared printer from another PC (the PTS server). The associated troubleshooting is simply typical of printer sharing in a complicated Windows network. TCP/IP printers are generally more stable, and browser printing avoids printing over the network altogether. If network printing causes you too much grief, switch to browser printing to have PTS operate the printer locally like any other software.

Can I use "Printers and Scanners" instead of Control Panel in Windows 10 and up?

The instructions are written to use Control Panel so that they have the broadest compatibility with different versions of Windows. If you can reinterpret the instructions for use with Printer and Scanners, then feel free. Most of our users seem to feel more comfortable using Control Panel though.

With Network Printing, shouldn’t it be enough to simply provide the fully qualified path to the printer in PTS?

Strictly speaking this is true, and you can get PTS to try to operate the printer this way by entering the fully qualified path in the Name on Server field. That being said we see a very low success rate when the printer is not mapped first, and even if it works, it will more than likely print very slowly (possibly because the default behaviour is to enable bi-directional support). Importantly if printing does fail you will have little to no feedback as to why.

In this example the Print Spooler service is disabled.

How do I check whether the Print Spooler service is running?

On the PTS server, go to Administrative Tools and then open Services. In the list, locate Print Spooler. The Status should be Running, and the Startup Type should be Automatic. If the service is stopped or disabled, right-click it, go to Properties and address the issue/s in there. You will need very elevated permissions to fix this, if anything is greyed out you will need to contact IT. Indeed even if you can fix the problem there and then you should talk to IT about preventing the issue from reoccurring.

Despite following the advice above our printer still prints very slowly, but it works fine from other applications.

The reason it seems only PTS may be affected by slow printing is that it’s a good bet that PTS is the only software in use that prints across your network from a web server to a label printer. If the printer will not print satisfactorily over the network, and you really have explored all the options on this page and on the Printer Troubleshooting page, you should switch to Browser Printing.

Just what is bi-directional support and why does it cause so many problems?

It cannot be overstated how many reported issues boil down to this part of the setup being skipped.

Bi-directional support refers to two computers communicating with each other about the various properties of a shared printer, such as ink and paper stock levels, so a remote user can be informed about what's going on with the printer. It's completely unnecessary in this context since the remote computer is the PTS server, which nobody will be monitoring for this sort of thing.

Crucially, there is a huge performance penalty associated with this setting.

It's important to note that a single printer having this setting enabled can and will slow down printing for all PTS printers, as the poor performance impacts the server's print spooler as a whole. It's a good idea to check every single installed printer for this setting regardless of the printer you're having trouble with.

We do not yet know why our setup is so vulnerable to this setting. It may be related to latency due to the client/server nature of PTS, but the effects are perhaps too consistent and extreme for this to be the only explanation. It's possible that Zebra label printers are simply not well designed in this regard.

It's not uncommon for reports of general PTS performance issues to turn out to be caused by this setting.

It's deeply unfortunate that the default Windows behaviour is to turn the setting on, even on a server OS, but it bears repeating that it can be overcome by simply turning it off manually in the Ports tab.