Morning everyone!
I am looking for help and/or advice on auto printing bartender labels for a specific list of parts from only one customer. We currently have an auto print bartender label set up for printing shipping labels through a data directive. The one area I am struggling most on is how to check the customer part against the specific list of parts I have for the labels. Any advice or help would be greatly appreciated! Let me know if any additional information is needed as well!
It would, but we have only been told to label these specific parts right now. We don’t know when they will add more parts or tell us to do all of the parts.
I would use User Codes to make a list of the parts, that way you can update that list as it changes without having to change your BPM.
The in the BPM use the condition “Rows in designed query are more than 0” or whatever it’s called. Set a variable to get the current part number, then do the query to look for that part number in the UD code list, and if it’s there, then print the label.
So how i have done it in the past was to create a user code and add all of the art numbers that are required. Then in the data directive, I added the condition statement that says “Number of rows in the designed query is more than or equal to 1.” So in the designed query you connect whatever table you will be monitoring to the ice.UDCodes table and you can put a table criteria on the UDCodes table to point to your newly created user code. So for example i have a list of part numbers that are “sister parts”, i join the jobhead table and the udcodes table and use the criteria to my list. I also have another line on the condition that says if the job is firmed up. if all is true show a message. you are using the same concept to then execute custom code to write a file that bartender can pick up and print a label with.
Thanks for that. I had to move the Directive from Order Entry to Job Entry. And now I did a test print and it wanted to print 1700+ labels even though the part quantity on the job was 15. The job has multiple operations and materials. Would I be missing a report parameter for the auto print node?
I do not use the autoprint node for bartender labels. I use the execute custom code node and then in there have it write a bt file to a folder that bartender will pick up. I have never had luck with the auto print node. If @Banderson has some easier way, that may help.
Yes, screen shots. Explain what you’re doing, and why you’re doing each part of the process (Yes, I’m forcing you to rubber duck this!). Explain it to us like we don’t have any idea what your business process is,or what you are trying to accomplish (because honestly, we don’t).
I’d give it 50/50 odds that just explaining it to us at that level of detail will reveal the solution to you.
As I was taking screenshots and writing things down. I believe I found the solution, as I was using an unmodified copy of the GenJob RDD. I went in and removed all of the tables from the RDD except the Company and JobHead table, and it cleaned up the BT file being generated and printing the correct label quantity. Not sure if that was the correct way to accomplish this though.
Both of you mentioned you don’t use the auto print node, how do you accomplish the auto printing without it?
I don’t usually deal with RDDs personally, so I’m not the authority on whether that is the “correct” approach or not, but it seems to make sense to me that you would only pull the minimum amount of data that you need to accomplish your task. So I would say, yeah, that’s probably a good approach to take.
If you’re afraid of files (like cloud programmers are), then you have a couple of other options.
Do what @Chris_Conn does and use a Code Block to call the Bartender REST service. This will return to the caller whether or not the print was successful.
Or do a hybrid approach and have a Code Block POST the bt contents to an endpoint (.NET Minimal API) at the Bartender server that writes the contents of the POST to a file in the Drop folder. No SMB required.