Saturday, November 28, 2015

Repetitive Flow Manufacturing in a Discrete Environment

Did you perceive an oxymoron in the headline? Many people do and that is one of the reasons why so often software implementations (especially SAP) for the production environment do not deliver the expected results. The wrong manufacturing type is applied.


Repetitive flow manufacturing is an approach to discrete manufacturing that contrasts with batch production. In its core, repetitive manufacturing strives to introduce flow onto production lines or cells and tries to avoid waste (overproduction, cycle time, scrap etc.) that often can be associated with batch production. 


Just imagine the production of shower heads for bathrooms. It’s a discrete manufacturing style and you may either produce in batches – drill the holes for 1000 spray plates first, then attach cover plates to these 1000 spray plates and then the hoses – or repetitively in that exactly one spray plate gets drilled and then it ‘flows’ to the cover plate attachment and then flows to the hose installation (while at the same time another spray plate is drilled). In the first case you’ll end up with a discrete production order to drill 1000 spray plates, another production order for the attachment of a thousand cover plates and yet another production order for a thousand hose installations.

In the latter case, however, you’ll end up with one! order to run and manufacture 1000 shower heads whereas spray plate, cover plate and hose installations are executed in a flow-like manner, continuously over a specific period of time.

There is much more detail to this but it becomes obvious very fast that repetitive execution (and planning) in a discrete environment is a much better choice and brings about many benefits (product costing instead of discrete order costing, order management and associated reduced steps, reduction of waste according to lean principles, enhanced transparency etc.)

But let’s not get too excited. Repetitive is not for every discrete manufacturer. If, for example, you are manufacturing custom railroad turnouts and every turn needs to be engineered from scratch, you will have a hard time flowing these products through a line. But that is quite alright! You want to treat and cost each one of these orders from the customer separately.


Do you really want to do that with 1000 shower heads?

Sunday, November 8, 2015

Scheduling Levels for Integrated Long, Mid and Short Term Planning

Sometimes I wonder how much flexibility, great thought and opportunity for business improvement was packed into SAP-ERP. Yes, it's not the new, flashy poster child of SAP, but it has an enormous amount of functionality and features. the key is to find this stuff and apply it correctly. Just last week I was experiencing one of those magic moments when a certain function, which I didn't give the attention it deserves, makes perfect sense to solve a problem most people think SAP is not good at solving. The function helps with planning in the long, middle and short term as I describe in a previous blog Respecting your planning horizons

SAP ERP provides you with the ability to plan, sequence, level and schedule on three different levels. These levels somewhat correspond to the level of detail used in the horizons long-term, mid-term and short-term. For whatever reason, these scheduling levels are not very often used to their full potential but they provide excellent features to move your plan through the periods and fine-tune it along the way. You can, as an example, use different task lists for the long term as what you’re using for the short term. Also, you may decide to perform mid and long term scheduling period and rate based,  whereas you’re planning your capacity in the short term to specific dates and hours, even minutes.

This poses some interesting opportunities for your planning efficiency. As most people stick with discrete routings throughout all planning horizons, there is the great possibility to use a rough-cut planning profile for the long term, rate routings in the mid-term and for detailed planning in the short term we can determine exact, planned execution times with a routing or recipe.

If you do this, you’re effectively planning rates and periods (like 20 pieces for August and 5 pieces for week 25) for when specific, date based planning is too far out and you are planning your order’s capacity load onto a very specific point in time with its specific output quantity for the next – let’s say – four weeksRemember that the short term planning horizon does not equal the frozen zone. In the short term you’re still planning with planned orders, whereas the frozen zone only contains released production orders.

Task lists are assigned to a planning horizon in the production version of a material as shown in below screen shot



In above example a discrete routing (with a group counter 1 out of routing group 500000002) is assigned to short term, detailed planning. Interestingly, a rate routing has been assigned to rate-based planning which effectively describes the mid-term. Often, one comes across the notion that rate routings are only used in repetitive manufacturing. However, that is not true as rate routings provide an exquisite instrument for period and rate-based planning. They describe a production process with an output rate from the operation (quantity per time) other than a discrete routing which uses the opposite: the time it takes to produce (time per quantity) a lot size. Most people would agree that planning period and rate based in the mid-term, more closely reflects the actual business process and allows for better planning results and manageability.

The settings in above figure also suggest that for the long term (rough-cut planning) a rough-cut planning profile is used. Rough-cut planning profiles are, similar to rate routings, also meant to plan for rates in periods. But that may be the only similarity.



You define your scheduling levels, and what happens to them, in customizing for planned order scheduling. This customizing table has its own transaction code – OPU5. An example of how the scheduling levels can be set up you can see in the screen shot above.

In this example, planned orders (order type LA) in plant 1000 and maintained with production supervisor 101 (production scheduler in the ‘work scheduling’ screen of the material master), will be scheduled and loaded with capacity requirements  for the short term (Detailed Scheduling) and the mid term (Rate Based Scheduling). Note that it is a choice that we use detailed scheduling for the short term and rate based scheduling for the mid term. The decision is done by the assignment of a rate or discrete routing and the type of planning table we will be using (period or date based planning table.

No scheduling or capacity records are generated for the long term (rough-cut planning)
.
You can see the results of these choices (settings) after you run the MRP Run with lead time scheduling. In the generated planned order you will see separate tabs for each scheduling level that was planned. These scheduling records can then be used in the respective planning horizons to plan capacity with the appropriate detail and time frame.

So what's the point in all of this? I think that using scheduling levels can elevate your planning to the next level. Given that you are respecting your planning horizons and you operate in a long, in a middle and in a short term planning horizon (and you also execute in a frozen zone), you can now control the level of detail you're planning with. But more importantly, using a rough-cut planning profile for the long term and a rate routing for the mid-term - and using the appropriate planning table, you can plan periods and rates where, in the past, you might have killed yourself planning exact dates and quantities. 

As an example... at my current client we use rate routings for the mid-term and the resulting rate based orders are scheduled and capacity leveled in the tabular or graphical planning table. In fact we are doing this in Long Term Planning in a simulative mode using transaction MS05. That way we can look at periods and move the rate based orders without having to deal with all the unnecessary detail of a detailed, discrete routing. According to the need to respect the planning horizons (as described in a previous blog post), we manage demand in the mid-term and capacity level simulative planned orders until we find the perfect demand program (as defined by the Planning Scenario in LTP). Once done, we hand over that demand program to MRP so that, by use of a discrete routing and the respective detail scheduling level, exact dates, times and quantities are determined in the short term.

The beauty is, that because of our upfront work in the mid term, the demand program should fall pretty well into the available capacity profile and there shouldn't be too much work in terms of detailed scheduling to do anymore. 

Using scheduling levels might not get you to the perfect system of planning for your capacity and customer delivery service, but it may be a great step forward to a more integrated system of handling and managing your orders (using standard SAP-ERP software functionality). 

In any case, you will have to be clear about where you are planning, what you are planning for and it what timeframe you'd like to use what level of detail first...

...or like Yogi Berra said: "If you don't know where you are going, you might wind up someplace else"