SAP Mentor, supply chain management enthusiast. Advocate for science as a basis to optimize the SAP supply chain. Active in Europe and North America. Sailboater, private pilot, motorbiker. At home in Tribeca, NYC.
The opinions expressed in this blog are mine!

Wednesday, April 24, 2013

I learned something new today (from my friends at Greene Tweed, Wanda Dauernheim and Jim McCann). They found an exceptionally great way to set up the traffic lights in MD06 and MD07.

What they do is setting up the list so that it is sorted from most urgent materials handling down to long term opportunities. To quote Jim "...it's like an air traffic control tower. You want to see how the airplanes come in and not only tend to crashes after they occur". Therefore they set the monitor so that materials with 'stock days of supply' below safety levels (and not only after they are overdue) have a red light. Anything that has receipts coming in to cover demand within an acceptable time frame, gets a yellow light, and anything that has too many receipts coming too early - and therefore needs to be expedited out - gets a green light.

Genius! But even better... Those annoying situations where we have a little inventory... and no demand anytime in the future (you know, the ones with 999.9 days of supply) will get no traffic light at all. So in fact they created a "fourth light".

So how do they do that? Here is how Wanda set up her traffic lights.

Notice how Wanda sets the limits so that they sort materials according to their stock days' of supply (anything that is having less than 2 days to cover demand gets a red light. Then every material that gets covered for 11 days of demand - with receipts or actual inventory - gets a yellow light, and everything that's covered up to 19 days is green. All materials that have coverage for more than 19 days, or no demand at all, will not get any light at all. Therefore the last category is not really urgent but poses an opportunity for inventory reduction.

She also uses the traffic lights for exception messages - so that the exception groups she considers more important are sorted above the ones that are not so urgent... combined with the ranges of cover!

I have never seen this setup before and think it is a great and smart way to prioritize your list. And to round it up, she uses the sorting feature to give the final touches.

Wanda and Jim thought about everything! Even though I personalty prefer to work with the monitors without sorting and without 'checking off' materials from the list, this provides a great solution for when you want to do just that (going through the list from top to bottom and checking off the materials you are considering 'done').

It's great to know that we have dedicated and smart users in our community, who don't spare a minute to think about whether it's worthwhile to make our SAP world a better place to live - but just make it happen!

Tuesday, April 16, 2013

Kanban is probably the simplest and most intuitive of all replenishment strategies in standard SAP; but that doesn't mean it's considered easy to do. A lot of people put a lot more to it then there is. Granted... to pick the right replenishment strategy is hard and some required customization settings don't come easy, but in its purest sense you can set it up in a breeze.

Kanban is an autonomous replenishment strategy, one that controls itself, and does not need any external signal. If the Kanban container is empty, the Kanbanesish (I made this up) process triggers replenishment; and that is the only time that happens. You can set the container to empty manually (in PK13N), have it emptied with an RF device or barcode reader or use quantity calculation, where you tell the control cycle how much you are taking out of the container, and since it knows how much there was in there before, it knows when it's empty.

The latter you should not confuse with Inventory Management. A goods issue posting will NOT, and should NOT, set your container to empty. Kanban is a visual "see" system, that does not go by potentially delayed or faulty inventory levels. I've seen it all over the place: 'enhancements' getting to trigger the Kanban signal by issues in IM. Don't do it! It's not Kanban anymore then... you will loose all the advantages Kanban gives you in terms of simplicity, accuracy and 'pull' oriented replenishment when you need it.

Kanban can be used for purchased parts and raw material or finished goods, it can be used on the production line or for stock transport orders from one warehouse to the next.

so how do you set it up? First, you need a supply area. These are held in a customizing table but you can add a new one with a business transaction.

With a supply area you can create a control cycle for a material master in transaction PKMC. Switch to 'edit' mode and click on 'new record'. Before you can save the control cycle you have to maintain the Kanban quantity (how many containers and how much in each container) and select a replenishment strategy. The replenishment strategy determines what happens after a container is set to 'empty'. Will there be a production or process order? a planned order first? a stock transport order or a purchase order? are you using Kanban with or with MRP?

It would be too much to go through every possibility in this blogpost, but in the end, what's generated behind the scenes - after the Kanban container is set to empty - is an order to fill the container back up. And that is what it all comes down to in Kanban: We ONLY replenish when something went out the door and emptied what we had. If nothing is consumed - whether we anticipated it or not - nothing gets replenished.

And the reason that we have at least two containers is... so that we can still use the second, full container while the first, empty container is being filled. And the art of making Kanban work is to design the appropriate quantity in the control cycle; one that guarantees enough stock to get you through the replenishment cycle.

Kanban therefore is not for everything. If your consumption is very irregular or your replenishment cycles are very long, it's hard to do. And if it's too expensive to hold full containers of a product, then it doesn't make sense either.

Kanban board - demand view (PK13N)

Another Kanban 'killer' is perishability. Even though a lot of my friends refer to beer drinking in a bar as the perfect control cycle, I respectfully disagree. Imagine the bartender maintaining a control cycle for you and putting a full beer up there next to the one you are drinking. Every time your beer is empty, she will fill up another one, meaning that you have two beers - one in process, the other full - in front of you at all times (except for that short period between your last sip and the refill. Should you slow down in your drinking speed after your worst thirst is quenched, your second beer gets pretty old (and you actually never get out of this devils circle). Kanban is for never-ending stories and beer drinking should not be one of them. I'd rather leave my replenishment process deterministic (with a PD) and take on the disadvantage that once I drank my first beer, I will have to wait until the bartender makes me another one.

Sunday, April 14, 2013

There seems to be a lot of confusion in our world about how to use these three "concepts(?)". I see lots of related questions in forums and many discussions on the subject too. Allow me take a shot at an explanation and decision matrix. I want to do this primarily because I am very adamant about getting my clients to use more 'repetitive', in order to lean and automate their supply chain and to provide them with more flexibility. And I realize that some of you are rolling your eyes... "here he goes again...". Yes, I won't give up anytime soon :-)

First of all: repetitive manufacturing works for both discrete as well as process orders. So there are actually two questions:

1. are we a discrete manufacturer or a process manufacturer?
2. are we operating in a repetitive environment or not?

Unfortunately not a lot of SAP implementations have thoroughly answered both of these questions before Go-Live. And once 'live' with SAP, there is an unwillingness to change, fix or adopt to the right concept. "The way we went live is how we were taught and that's how we do it." "It is too much effort and costs too much money to switch". Not cool and not true! In my mind the cost of not switching is by far larger. If you don't use the SAP software the way it was intended, your inventories will blow up or you don't have component availability; your service levels - internally or to the customers - may not be as good as they could be; your lead and cycle times are too long. There could be many reasons for these issues, but using the wrong production type will certainly disable you from achieving a lean, agile, effective, optimized and automated supply chain.

And most important of all: Automation is out the door! I have seen many installations using a sub-optimized basic data setup. They all work... they all make money and are competitive. Very often the only question is: how much manual activity are you performing to achieve your goal? How much do you do in Excel? How much money do you spend on Third-Party Products? Let SAP do the work for you. It does so with the selection of the appropriate tool for the according situation.

Question 1: discrete or process. To put it very simple: if you can take your product apart after it's finished, you make discrete products like a motorcycle, a piece of furniture or a gear box for an automobile Should you make something that you really can't put back into where you started out with, chances are you are a process manufacturer. Try putting orange juice back into an orange or paper into a tree; or try to make a cow out of a hot dog. This is a rough guideline and not always to take literally, but you can see that process manufacturing - like its name implies - takes some sort of 'processing' to make a product that's not assembled, screwed together or packaged (yes, packaging is a discrete process, even though it might be used in a process environment). I know that once you drilled a hole into a sheet of metal, you can't "put that back" either, but the drilling is a discrete activity that can be described in a discrete routing and does not require a material yield calculation or processing instruction as a blending operation, where you never know what exactly comes out, would require. To describe this type of processing you would use a recipe.

Always think about what element can best describe your activities on the floor. Is it a routing with instructions on how to perform certain steps in a sequence that take a certain amount of time - every time you perform them? (a cut is a cut is a cut, right?). Or is it a sequence of steps (phases) where there are relative unpredictable yields, the input differs, a formula is required to describe the outcome and something is 'cooking' while it's processing (the chemical distribution changes, maybe). In that case, a routing and it's associated production order will not sufficiently describe the 'process' and therefore it's hard - if not impossible - to accurately schedule, report or execute production.

Question 2: repetitive or ... ?? What actually is the opposite of 'repetitive'? Most people think of it being 'discrete'. I would like to use another term here for purposes of clarity; since we are using 'discrete' in another sense here, as the opposite to 'process': 'jumbled' (like in a job shop) or 'discontinued' (as the opposite of continued flow production).

The actual difference is one where you look at how the product flows through your shop floor. Is it driven by an individual order? or is it a period-based rate production, where you make the same product over and over (...and over)? In a 'jumbled' job shop your products change all the time (sometimes you drill three holes, sometimes four; sometimes you fix the breaks; at other times you perform a 10,000 mile service). For each of these jobs you have an individual routing, a Bill of Material and MRP generates you a planned order that you check individually for availability of components, you schedule it and then you convert it into a 'jumbled', individual job shop production order which you issue components to, confirm and post a goods receipt from; before you cost that individual job! (please forgive me all these terms; but I want to make it 100% clear what it actually is!).

Not so on a 'repetitive shop floor (both discrete or process)! If you make turkey dogs, do you really want to have individual orders that all have the same routing or recipe for years to come? do you really want to release, availability check, convert, goods issue, confirm, receive and cost individual orders when you make the same turkey dogs every day? Shouldn't you simply confirm how much your line yielded today as compared to yesterday? If you make 4 different types of rice and you produce a 100 tons of each every day, why would you want to know how much each order has cost you today? Wouldn't it be much more important to know how much type A has cost us in comparison to type B during the months of May?

That's easy to see if you use the tools of repetitive manufacturing; not so with jumbled, job shop orders where every order is costed individually and you will have to put the monthly report together afterwards (you're probably doing it in Excel).

RepMan provides many more advantages. The biggest one: MRP creates executable run schedules, instead of planned orders that you will have to convert. There is a collective availability check for the components needed at the line (btw... components in jumbled job shop orders are order related wheras in repetitive they are neutral) and LAS2 (or MF50) lets you schedule, sequence and capacity level your plan in one step - automatically!

sequence schedule of repetitive orders

Using RepMan you can achieve 'flow' on your production lines. The routings can be 'rate routings' representing your lines (with feeder lines) and you can balance the line (making sure that every step takes roughly the same amount of time so that flow is achieved). A balanced line that achieves flow is low on WIP, short on cycle time and very agile (flexible) and lean.

Best of all you can measure your repetitive line with Factory Physics (see my other blogs on that subject).

In closing I want to make a point that I consider very important and where I see many misunderstandings all over the place: One method does NOT fit all! Your milling process might be 'process', but your packaging is discrete. Your factory makes repetitive machines, but there is some fabrication that is job shop. You might be a jumbled, discontinued testing laboratory for cancer research, but every one of your products needs a base emulsion that you are processing repetitively to stock.

Use the right tool for the appropriate situation. That is why SAP is providing all this stuff!

Monday, April 8, 2013

As I will speak on this subject at ASUG / SAPPHIRE 2013 in Orlando in May (on Wednesday the 15th), I'd figured it be worthwhile to solicitate some feedback from you on my ideas and findings.

First off: in my opinion one size does NOT fit all. When you have fabrication, processing, assembly and packaging or other steps, all in one manufacturing plant, you can employ more than one strategy. Who says it all has to be discrete production orders? If, as an example, a bottling line starts out with a blending process, then fills bottles and eventually packs the bottles into cartons, you can schedule the batch process orders for blending with a Product Wheel (I refer to Peter King's book on 'Lean for the Process Industry), run the bottling line with takt-based scheduling of a model mix and pull the finished (packed) product with a Kanban Control Cycle (which is also a scheduling method!) into the distribution center.

So what kind of scheduling methods are there in SAP-ERP? Probably more than you think. But before we list some of them, let's discuss what 'production scheduling' actually is. As is depicted on the following slide, a typical internal supply chain goes through the cycle of planning, scheduling and execution. Scheduling then, is the process of pooling the planned orders, leveling those to take out variability and noise, and eventually sequencing the orders within the available capacity.

Once that has been done, we have a feasible (or finite) schedule. So the question in my mind is: what method do we employ to take orders out of the pool, level them for even distribution and place them in a sequence so that they can be executed on time within the available capacity?

Therefore the art of scheduling lies in the ability to effectively utilize free resources to empty the pool and fulfill the demand. Like channeling a waterfall of requirements onto value streams without having them overflow.

three dedicated lines and one that can be scheduled for various products

(...by the way... we should also pay close attention to those containers collecting the product that comes off the line... they have a maximum capacity too and cost a lot of money in form of finished product stock holdings)

So what do we have available for production scheduling in SAP-ERP? There is the traditional capacity scheduling of discrete orders with transactions CM21, CM22, CM25 and CM29. Within it, you may schedule using various strategies like setup optimization where you put orders with similar setup requirements together. Or you can use heijunka to evenly distribute and make Every Product Every Interval. Another option is to simply line up one order after another as long as there is available capacity. Good practice is to not schedule up to 100% of capacity (or even above, as many do) so that you can buffer variability (see my blogs on Factory Physics...) and that kind of thing can also be provided in the strategy.

Then there are the tools of repetitive manufacturing which provide excellent methods which allow you to adhere to lean and agile principles. When using RepMan, the MRP run generates executable Run Schedules (planned orders that you don't have to convert). That opens up a number of opportunities like takt-based scheduling which guarantees 'flow', if done right (and if you periodically balance the line)

RepMan can also combine a planned sequence with Kanban. In that case the actual Kanban withdrawals (those are actual demand) replace a planned order that was sequenced and capacity leveled.

Kanban is a scheduling method too! It is an autonomous one... and here I would like to talk about the difference between central planning and autonomous planning:

Most of us plan centrally. When the S&OP is handed over (the transfer of demand to MRP), we usually go ahead and kick off the planning, scheduling and then the exccution phases. That is central planning. And that is how the former "Deutsche Demokratische Republik" (DDR or East Germany) has done it.

The DDRs central committee (their S&OP I guess) put a plan together for anything from clothing, cars and living spaces to sausage, vegetables and flour. And sometimes there was plenty, but mostly you had long lines of hungry people in front of the butcher. This kind of thing is not really a big problem for iPhones (we still have those long lines), but when it comes to basic stuff that we need everyday, we want some insurance that we can buy that any time of the day. That's where the Keynes's market forces came in handy for us Westerners. We let our butchers decide, based on their business sense and experience, what they wanted to put on the shelves. And that, for reasons I really don't need to get into here, worked out pretty nicely.

So it is with production scheduling. Sometimes you just want to let the crew down at the work station make the decision what job they release into the cell at what time and in what sequence. They see variability first hand, timely and with their own eyes. Give them a workload for the week and have them deliver by Friday (or give them orders for a day... or for a months).

I am not saying that you should do that for your entire factory (remember... one size does NOT fit all), but there are situations and instances that are run much better if you just let it go. Others require careful central planning to be successful. The art, again..., lies in finding the right solution for the right problem.

And don't go crazy trying to find the perfect sequence! It is impossible to do, because if you only had to schedule 3 jobs on one work center, there would be 6 possibilities for a sequence (3 times 2 times 1 = 3! factotum). If you have 25 jobs to schedule a sequence for on one work center, you get 25! factotum possibilities; and that is a number if expressed in pennies it would cover the state of Texas... 6 miles high! Not even the best APO heuristics can come up with the perfect result in a plant with 5 lines and thousands of jobs.

Sometimes you just need to use common sense and be willing to try something new. Have faith in the scheduling options ERP offers and try to learn as much as you can about each strategy... And! use repetitive manufacturing! unless you make every one of your products only once and never again...

--------------------------------------------------------------------------------------------------------------------
bigbyte has put together a method to match the right scheduling method to the right production line... contact us for more information.

Did you know... (send an email to uwe@bigbytesoftware.com if you want me to elaborate)

that MF50 is a great transaction to do production scheduling... even with discrete orders!

that the coverage profile does not only drive your inventory to a dynamic, minimum safety stock, but also keeps your stock below a maximum? You will have to make sure though, that you use lot size indicator 'EX'

that you can collectively availability check all planned orders with transaction MDVP. Make sure you customize a layout that directs the check with your desired functions.

that you can collectively availability check production orders with transaction COMAC

that you can perform an approximate capacity check on your production plant right out of the long term forecast in ERP. That way you do not send infeasable numbers to MRP

that you can use the availability check during production order release to control WIP levels in the cell or line? Set the control so that orders with missing capacity can't be released