I thought it may be useful to discuss some more about this new feature in 2021 R3
The eagle eyed amongst you may have noticed the 2021 R3 release notes describing a new feature "Multi print server instances"
There is further documentation available via the Sage X3 Technical Help then select Multiple print server instances
What is it all about?
The release notes state:
In the latest configuration console, you can configure multiple print server instances running on the same server.
Each instance can run with its environment using a different language or time zone.
This feature:
- Decreases the cost of the solution by running more print server instances on a single server.
- Simplifies report management when a customer has different time zones or languages.
There are also some prerequisites:
- You must deploy Print server 2.24 with Console 2.51.
- Print server 2.24 and Console 2.51 require .Net framework 4.7.2.
I want to use this new feature, how easy is it to configure?
Glad you asked as I am about to run through the steps to configure such an instance
This process will create multiple Windows services for the X3 Print Server. You will need different Windows users to use for the Sage X3 runtime user for the Print Server service, as this will differentiate the timezone or language you need to configure.
Windows account setup
I am going to use my default "x3run" user for my Windows service account (configured for British English) and have created a new "x3runIST" user, who I am configuring differently. As I don’t have a Windows Domain for my test server, I can’t change the timezone for the new user, so will just change the date format so I can see the difference between the two print server instances.
Install and configure Sage X3 Print Server
First install Sage X3 Print Server as normal. I am installing Print Server 2.24.0.15 from the Patch 27 ISO image.
Then configure the Print Server using Sage X3 Console
I am using X3 Console 2.51.0.17, also from the Patch 27 ISO image.
Initially I just configure a Print Server as normal. This first install becomes the "DEFAULT" instance.
Mine is a new install, so will create a new Print Server entry, then select the REPORT server
Enter port, UserID and password, then click "Configuration"
Click "Yes"
Next, go to Print server publications and "Add solution"
Notice the "Instance/Profile name" is DEFAULT here
Once finished, select solution, select SEED folder then click "Apply publication"
Test printer works OK
Login to front end
Setup printing and test
Navigate to Parameters, Destinations, Destinations
Create new destination:
Code: PRINT
Description: Printer
Short Title: PRINT
Active: Checked
Output type: Printer
Server: x3prt:51890
Printer: TextPrinter
Test printing works OK
Navigate to Printouts, Printouts, Printouts
Select any report code, such as LISACT (List of activity codes) and destination "PRINT"
Add additional Print server instance
Back in the X3 Console, there is a new button "Add server profile"
Give the new profile a suitable name
Notice you now have two Print Server instances listed in the left pane, configure as needed:
Change UserId to be "x3runIST" and enter the password
Check the port number is suitable for your requirements
Click "Configuration"
Once completed check the Print server publications, noticing the newly created one
Login again to the front end
Test printing works OK for the new profile
Navigate to Printouts, Printouts, Printouts
Select any report code, such as LISACT (List of activity codes) Click the print servers drop down to see both profiles available, identified by the port number in this particular screen.
Confirm can see the different date format on the report when printed from the PRINT_INDIA profile (Port 51891). When using the "DEFAULT" profile, the standard date format is used instead.
So Yes, it is as easy as that !
Additional notes
- Don’t forget you tune the two instances independently from each other, for example the "Print Processes" settings in "Expert mode"
- You also need to remember to modify firewall rules, if appropriate for your architecture, to take into account both the port numbers specified in the Print Server setup
Conclusion
Hopefully this has helped you to see more clearly how to and why implement multiple print server instances.