Job Batching -- Nesting Sheet Parts for CNC

We are in the process of setting up Epicor Kinetic and have run into, what we feel is, a very fundamental issue.

Our shop has 2 Bystronic CNC lasers and 1 CNC waterjet. Primarily, we’re dealing in sheet metal material, which we nest multiple parts onto via a dedicated Bystronic nesting software. These “nests” can have dozens of different parts on it, with multiples of each.

I’ll give an example of the issue:
Traditionally, we would sell a weldment on a sales order. This sales order is then assigned a specific job number. That weldment may consist of 200 different parts, some being different thicknesses. We nest like thicknesses together, resulting in some nests having dozens of different part numbers. The operator would record and charge their time to the singular job number, all at once. So, effectively, the charged cutting time for all 200 parts are flowing to up to a single job number (a 200:1 ratio).

In Epicor, the sales order is converted to individual job numbers for every single part/weldment (a 1:1 ratio). The issue here is that a single operator, who’s time should be spent operating the laser, would now have to sign in and out of every single one of the 200 jobs. This does two things, it wastes an extraordinary amount of time for our operator and would be essentially taking the real time to cut the whole sheet but now multiply it by 200x, blowing up costs.

In attempt to solve this, we first sought out job batching. Unfortunately, there seems to be an issue splitting the costs of the batched job back up to its individual job numbers. So, we’re left with orphaned costs not making their way accurately back to the final job; our production detail report then shows discrepancies. Additionally, we also have a sandblasting bay and powder coating booth. The laser operation is almost always OP20, however, the blasting/coating operations will always vary. Both of these operations consist of combining, or batching, multiple parts to coat all at once with like colors. A similar issue to the above laser nesting issue. The problem here is that, to my understanding, all batched jobs must be on the same operation code. That may work for laser, but not our other operations.

Another attempt was to create a mock part that essentially represents the full nest for that given material thickness. The operator would sign into this job to attribute time, issue material to, and salvage material from. That being said, they would still need to sign into the other 200 jobs, though they would only be recording their completed quantity. With this, the operator’s work queue would be incredibly long, especially if there are 5 other active weldment jobs consisting of 200 parts each. In order to find these needles in the haystack, each part job would need to have a unique nest identifier that could be sorted and grouped in buckets on the queue. The issue here is that the nests get created AFTER the jobs have been released so there would be a lot of jobs to re-enter for a single line of text. It also creates the need for a separate spreadsheet to track nest numbers, which we would like to avoid.

These are our ideals:

  • Limit the amount of time an operator must spend entering information on the floor.
  • Accurately capture time. Not so concerned about capturing every individual part’s time, but it must be true at the very top-level job.
  • Still retain the visibility and ease of tracking individual parts/jobs.

I wish that there was a simple, singular window that allowed the master job to track time and material and that would contain all sub-components and could easily enter quantities for all.

Like I said earlier, this is a fundamental issue for our company. I also feel that we cannot be the only company using Epicor that deals with CNC equipment where multiple parts may be processed at the same time. If anyone has any experience with this resolving this type of issue, please reach out.

Thank you!

Have you tried the approach mentioned here?

1 Like

@BRithaler
What you describe is exactly what I have worked through to make life better for your operator.
They would only log into one job, and the costs would be allocated based on SQ-In’s (or burn time that you have to calculate).
Any drop that you don’t want to charge the job should be salvaged prior to completing the cutting operation. The rest of the drop will be allocated to the various pieces automatically.

Hope that makes sense when you read my script.

Welcome @BRithaler !!

I’m assuming you have the Advanced Planning & Scheduling module, or you would not be able to do batching.

Have you tried setting up Setup Groups for your thicknesses? That is part of what Epicor offers for trying to batch. You would create a Setup Group, say 11 GA 304SS, and apply it on the method operation. Then you would be able to sort scheduling boards by setup group to see what like materials are going through.

Also, you can batch any operation together, they do not need to be the same sequence.

I would give batching a try again and calculate out the skeleton, as I am guessing that is the cost that is being left behind.

Thank you @LarsonSolutions for your reply! We have tried this method as well actually, granted it was a while ago during the setup process. I believe we may have still had a slight hiccup trying to get it to work the way we were hoping but I will examine this method again and get back to you! Thank you.

Thanks for the warm welcome, @jkane !

Correct, we have the Advanced Planning & Scheduling module. We haven’t looked into Setup Groups, no. I appreciate the tip. I will do a bit more research on that and determine whether or not it is what we’re after. When you say “apply it to the method operation” do you mean within the engineering of the manufactured part or apply it to the part that we use for sheet metal?

Thank you for the clarification, I believe at one point we were lead to believe batched parts had to be the same OP.

I will give batching a shot again and get back to you.

Thank you for you help!

On your test of batching, make sure to calculate the square inches (or whatever your UOM is) that is left of your sheet after the operation. Then you can multiply that by the cost. My guess is that is the cost that is being “orphaned” when the cost is split back to the original jobs from the batch.

We are a build to order company, with all primary fabrication in house. This means our nests are different for every single group. We also have a Bystronic laser, CNC plasma, CNC Router table, 2 Specialty CNC aluminum production centers, etc. Of course, every one of these uses a different nesting software with different requirements. We are using the job batching path but some of it is still in process.

We also wanted to more accurately track material and labor rates against the specific parts, so we also needed to make sure we were calculating the material and labor ratios and setting them on the job to get more accurate values. 75% percent of our jobs that start at the laser, would go to blast or bend or blast and then bend after that so I will type my description up with respect to that. After the initial cut operation at least half of our parts have a second operation if not third.

First decision we made was that any parts coming out of the fabrication department would go into inventory before being pulled into a parent assembly. We then set all fabricated parts to have at least a 1 week days supply. This meant if we were making it we would make as many were needed within a 7 day window, this is so we are reducing setup for secondary operations. This also created the benefit that everything needed within that window of that part is in a single job, we don’t see multiple jobs of the same part in our nest.

With respect to batching and resource groups you are able to batch a job more than 1 time the key is understanding where the first operation occurs, then second, then third. We also have done as suggested above and the setup group for each part contains the material used to make it so that it show up on the batching screen. In our process the nester then looks at the resource group laser and selects all jobs for a specific material and batches them with a backward direction. He uses a dashboard then to run against the batch job to calculate his material and labor usage and update those. Next he opens the blast area resource group and batches that same material against blast with a backwards direction and runs the dashboard against it. Then the same thing for bend. There would be a problem though if the nester did press before blast. This also means each material size at the laser generally get 3 jobs, one for laser cut, one for blast, one for press.

To be honest we have only just started down this path as we had some other larger problems, we faced previously needed to be tackled first, but this is our current primary focus and the solution we came up with. When we had our legacy system, it couldn’t handle this well for us at all, so we had built our own custom solution that we have been running to manage this until now.