We have many different labels for our product. 2x4,4x8,4x4,etc… The addition of new label sizes is mainly dictated by customers asking for it and us accommodating them.
We have different printers set up for each size and our users have to pick the right one when they go to print which means they have to know the size of the label they are printing before they print it… Kind of hard when you just started a week ago or a month ago.
In short, does anyone else support different label sizes, and if so, do you do it any differently? I am exploring bartender integration capabilities to select a printer, but I don’t know. I have a quick loop using System.Drawing.Printing to loop through installed printers and get their page sizes which I could use to route the label to the correct printer for the user, but that would mean I need to name the bartender labels so that they had the page size in the name or something…
In short, anyone supporting multiple label sizes for your products? If so, what does that printing process look like on the shop floor?
If you are referring to printing from Epicor screens, we have many locations so we base where to print the label by the workstation that the user who is logged on is set to in User Acct Security. For example, if a user is printing from MES, Report Quantity, they generally have their own mobile ptr. We add a print button in the UI. With added code, the event of the Click will check the WorkstationAdapter, then send that printer name along with all the data to print to Bartender.
For every label format I store in a table and ID, a friendly name for the label, the bartender format file location, the BAQ that generates the data for the label, and the printer that label should print to by default.
I allow in our particular case changing of the label print location on the fly but if it was truly fixed that wouldn’t be necessary.
A way we might do it for the production floor is label printers named with resources in a table that it knows based on resource if printing from an operation what label printer to go to.
Use tables to build a matrix of logic needed to flow the labels where you need them. We have custom label requirements like crazy too. That list of friendly labels I mentioned at the beginning, that ID is stored with part records if it’s part specific.
Yes, that is true- we stay consistent on label size for fulfillment & receiving labels. We did have to create a screen off a UD table for Production labels. The dropdown label choice they make has the template name (& path) in User Codes.
Please don’t critique this code, I threw it together hastily just to get something going. Was copying and pasting a bunch. Or critique it if you want to so you can bring up something that other’s might not know.
I have yet to get into the app studio and fool around like Hannah. Looking forward to doing that soon.
As far as I know, JavaScript does not have the capability to do that.
The best you’re gonna get is maybe to bring up the print dialog window by hijacking some expression field like so:
It is the “selecting the printer” part that I would love to automate for our users.
They shouldn’t have to worry about what printer it is. In fact, they only know what printer it is based on experience and repetitive action. If I switched the label today for one of our product lines to 2x4 from 4x8 they would still select the 4x8 printer because that’s what they know. This would then result in the wrong sized label.
Then they would bring it up to a supervisor which is great, they are great at bringing up issues and quality concerns, but I don’t want them to have to learn or guess at which printer the label should be printed on. Especially learn by mistake where they choose the wrong printer and print 20 labels in the wrong size.
I think that’s where some form of table comes in to handle which workstations have which printers and what sizes they can print and what size each label is. It would be clean to map each bartender label to a size in a table as well so that I can do the windows print magic based on that- selecting the printer based on size (much like a multi-tray/multifunction printer does today).
On the other hand I don’t want to force the person who sets up printers to have to maintain a table of IPs and printer names. They should be able to install printers however the want. That’s where I was super excited about being able to read page sizes from installed printers- so I wouldn’t have to ask I.T. to maintain a table with printer names and/or IPs.
Either way, I appreciate everyone’s help and thoughts. @hkeric.wci and @Ross.Fireball.Kuiper (I love that I can type fireball to tag him) have a similar set up with their labels if I am not mistaken, using work station or another intermediate table. Haso spoke to me a couple years ago and also suggested that I do something to prepare for browser/cloud- less emphasis on client side actions.
That way all bartender labels are processed thru that single directory on the server. We have a BPM for a workstation that has two different size labels and the BPM checks for the correct size and directs to one or the other printer.