Print to different printers based on terminal used

I want print to a different printer based on what terminal the order is placed on. I thought this would be straightforward and set up the print job mapping as follows

In this case server works correctly and prints to the Ticket Printer but the other two also print to the Ticket Printer. If I change the order so we have

all terminals print to Bar 1 Printer.

So it appears to be ignoring the terminal setting and simply printing to the first printer on the list. The printer template is the same in each case.

I have tried restarting everything but this doesn’t help so looking for ideas

Make separate print jobs for each one.

OK tried that and it’s worse! Still need to specify a terminal

Now with a separate print job for each terminal it doesn’t print anything at all at any printer

Did you go to the rule and fix the action then remove it and add it back to the rule? You have to specify the new print jobs in your rule and actions. So create new Execute Print Job actions with the new print jobs and add them to your rule.

No I forgot that. Works OK now so immediate problem resolved.

Does rather beg the question though of what is the purpose of the Terminal in the print job mapping and why it didn’t work with my original config

Terminal napping ensures that’s the terminal it prints from but you have to use separate print jobs sometimes for certain things.