Microsoft Dynamics GP 2013, Printer Selection, Named Printers, Page Orientation and the System Print Dialog
Microsoft Dynamics GP 2013 added a long awaited feature, the ability to change the printer selection for a report after it has printed to the screen output.
However, this change has introduced some side effects. Microsoft is aware of the side effects and they should be resolved in an upcoming release.
To explain the side effects we need to look at how the system worked before GP 2013 and then look at the changes made.
Before Microsoft Dynamics GP 2013
Before GP 2013, the printer for a report was already set once the screen output window was open and changing it via File >> Print Setup after printing to screen but before printing to printer would have no effect.
The behaviour for selecting the printer and settings for Microsoft Dynamics GP 2010 and before was as follows:
- The destination printer would be selected at the time the Dexterity run report command is executed.
- The printer would either be the application default printer (which is based on the Windows default printer at the time the application is launched, but can be changed via File >> Print Setup), or it would be based on the Named Printer for that report (if Named Printers is setup and a printer is specified for the report).
- If the report definition has a default page orientation (portrait or landscape), this will also be updated into the printer settings.
Then when printing to the printer, the user would be presented with the System Print Dialog (unless it has been disabled).
Microsoft Dynamics GP 2010 System Print Dialog
Many customers disable this dialog as they never changed any settings anyway and so it was just an extra click for no reason. Disabling the dialog could be achieved with the Dex.ini setting NoPrintDialogs=TRUE. You could also use the Named Printer Options window (Tools >> Setup >> System >> Named Printers, then click on the Machine ID hyperlink) and tick the "Do Not Display System Print Dialog" checkbox (see below).
If the System Print Dialog is disabled, the report is printed to the printer immediately without requiring an extra mouse click.
Microsoft Dynamics GP 2013 (RTM and SP1)
With GP 2013, all the above behaviour still occurs, but the updated System Print Dialog now offers the ability to change the printer and settings as well.
Microsoft Dynamics GP 2013 System Print Dialog
Whether the System Print Dialog is displayed still depends on the Dex.ini setting NoPrintDialogs.
The Issue
So, now we come to why I wrote this article.
If you print and the Microsoft Dynamics GP 2013 System Print Dialog is displayed, any settings from Named Printers and the page orientation settings from the report definition will be ignored. If you just click OK, the current application default printer and its settings will be used to print the report.
The problem is that the window opens with the application default printer selected, rather than the Named Printer and settings selected.
Until this issue is fixed, the feature to Select a printer when printing cannot be used in conjunction with Named Printers functionality.
The Workaround Solution
Disabling the System Print Dialog and so disabling the ability to change the printer and/or settings just prior to printing the report will allow Named Printers and the page orientation settings to work as expected. But changing the NoPrintDialogs Dex.ini setting has become a little more complex with Microsoft Dynamics GP 2013.
GP 2013 introduces System Level and User Level Dex.ini settings and unless specifically coded to look at the System Level, Dexterity will look first at the User Level Dex.ini and then (if the setting is not found) at the System Level Dex.ini.
What this means is that just manually adding NoPrintDialogs=TRUE to the System Level Dex.ini file will not stop the System Print Dialog from being displayed if the User Level Dex.ini contains NoPrintDialogs=FALSE.
To change the User Level Dex.ini, you will need to use one of the following methods:
- Use the Named Printers Options window for each user manually.
- Use the Dex.ini Configuration window of the Support Debugging Tool (https://aka.ms/SDT) to roll down the setting to the User Level Dex.ini.
- Manually modify the syUserDexIniSettings (SY01405) table in the system database. Make sure the users are logged out before updating the table otherwise any changes made will be overwritten when the user exits Dynamics.
Once the System Print Dialog has been disabled, Named Printers and page orientation settings will work.
This issue is logged as Problem Report 68382 and is currently scheduled for GP 2013 Service Pack 2. If you are facing this issue please log a support case referencing the problem report number to get your details logged in the system. This case would be non-chargeable as it is linked to a bug. Also, the higher the customer count, the higher the priority the bug will be assigned.
David
04-Oct-2013: Just a confirmation that this issue has been resolved in Microsoft Dynamics GP 2013 Service Pack 2, see post Microsoft Dynamics GP 2013 Service Pack 2 fixes Named Printers and Page Orientation settings not being honoured.
12-Nov-2013: While Service Pack 2 does fix some issues, there are still some other related issues with settings not being honoured. This is Problem Report 72319 and is scheduled to be fixed in GP 2013 R2 (SP3)
Comments
Anonymous
July 18, 2013
David, Thanks for the heads up on this. Here's another example of how you make us all look smart :) Now, if a client calls with this problem, I will be at the ready with the answer. Thanks for another gem! Kind regards, LeslieAnonymous
July 21, 2013
Posting from Mark Polino at DynamicAccounting.net mpolino.com/.../microsoft-dynamics-gp-2013-printer-selection-named-printers-page-orientation-and-the-system-print-dialog-developing-for-dynamics-gp-site-home-msdn-blogsAnonymous
August 09, 2013
Hey David, once again thanks for the great info!. I ran into a situation today where the customer upgraded to GP2013 and the new window for the print dialog was not coming up at all where they could select the number of copies. So I used this article, started with the simplest of trying the Dex.ini. They did have this statement in the Dex.ini so I changed it from true to false. (NoPrintDialogs=FALSE). That worked and now they get the print dialog window on everything they print to the printer so they can now change the number of copies(invoices) they want to print. YEAH! However, they called again later and said now the CHECKS aren't going to the bypass tray. Could changing the setting from TRUE to FALSE or the NoPrintDailogs setting affect Named printers and the tray? I looked at her named printers setup, and the Setup ID if I look at the preferences of the setup id itself does have the bypass tray in there. And payables is still using that ID in named printers. But it isn't automatically going to the bypass tray. Right now I have her changing the tray when the printer options window comes up. Any suggestions to get it to use the Bypass tray set in named printers? SheilaAnonymous
August 09, 2013
Sheila At this time the print dialog and Named Printers are mutually exclusive. They just don't work together. Once SP2 is released, they should work at the same time. DavidAnonymous
October 03, 2013
Hi David -- I don't see this Problem Report included on the GP 2013 Service Pack 2 fix list (and have a SP 2 client experiencing it). Is there an update on the bug?Anonymous
October 03, 2013
Hi Lisa Yes, this issue has been fixed in Microsoft Dynamics GP 2013 Service Pack 2. DavidAnonymous
November 07, 2013
The comment has been removedAnonymous
November 07, 2013
Hi Cindy There are still some issues after SP2, see the comments on the follow up post. Also note that there are two Dex.ini files for GP 2013. There is the system level Dex.ini and the user level Dex.ini. The setting in the user level Dex.ini will override the system level Dex.ini if the setting exists at the user level. I suggest looking at the Named Printers Setup options (where the Machine ID is set) to see if the System Print Dialog is enabled or disabled. You want it enabled if you want to be able to change the printer after printing to the screen. Note that due to the bug, this means that any settings from Named Printers (if used) or from the Report Definition (paper orientation) will be ignored. DavidAnonymous
November 08, 2013
The comment has been removedAnonymous
November 09, 2013
Hi Cindy This is a bug. Please log a case, so we can make sure this situation is tested when they fix the other related issues. DavidAnonymous
July 23, 2014
We are on GP2013 R2 12.00.1745. I have tried to print multiple copies of our SOP Invoices .Our issue is that when we print using Named Printers or when we create a macro and try to print multiple copies, the system will only print 1. My macro file shows 2 copies, but it is ignored, only 1 will print. We are utilizing terminal services and each user has their own Dex.ini file. Is this still a bug?Anonymous
November 06, 2014
I am wondering if this is still a bug as well. We are on 12.00.1538 (SP2) and have users experiencing this issue. I have changed the system dex.ini but not sure where to change for each user. We host the server so the user's don't have any files on their local machines.Anonymous
April 07, 2015
Very informative blog.Anonymous
June 30, 2016
David,After disabling the print dialog, I found out that the option to specify which page to print & also how many copies to print is not available.My issue is that when printing invoice/order in the sales transaction entry, the alignment will be off. With these workaround solutions ( noPrintDialog=TRUE & named printer ), the alignment will work fine but the selection of page to print and copies to print would not be available. Appreciate your advice!- Anonymous
July 02, 2016
Hi Benedict. Those options are part of the system print dialog as shown in the screenshots in the article. If you turn the system print dialog off, you will not be able to change those options.To fix the alignment issue, I suggest you modify your report. If you use the pre-printed form option, you will be able to set the report based on the edge of the paper rather than the edge of the current printer's margin.DavidDavid- Anonymous
July 07, 2016
Hi David,Thank you for the advice and update!
- Anonymous
- Anonymous
Anonymous
August 18, 2016
The default Printer for AP checks randomly changes for the AP check clerk. How can we control these settings to not change?GP2013 12.00.1801- Anonymous
August 20, 2016
Are you using Named Printers to control printer destinations and settings?
- Anonymous