Phantom BOM in Stock

Let’s use a simple version of the Cronus bike as an example, where the bike is 1 frame and 2 wheels, and the wheel is an item with a Production BOM of 1 rim and 10 spokes, and the wheel component in the bike production BOM is defined as the production BOM for the wheel, not the item, so basically a phantom BOM. When a production order for the bike is refreshed, standard NAV will put all needed components (including the components of the wheel) on the production order component list.

Now here’s where it gets tricky. Wheels are also in the system as an Item, and are also sometimes made to stock. So now there’s this requirement that the refresh needs to take existing stock into consideration. So let’s say we have a production order for 5 bikes, and we have 4 wheels in stock. Instead of having all components for the 10 wheels on the component list, the customer wants to take those completed wheels out of inventory and consume them on the production order, and only produce the remaining 6 wheels. The consultant on the case then said “that is an easy fix, we will simply put the 4 wheel items on the production order component list, and the parts for the other 6, and that will be it”. I am starting to think it is not that easy at all.

First of all, the refresh is not a straight process down the levels of the BOM, it just puts all the components in there and then refreshes the quantities from the order line, and applies the order quantity to the quantity per on the components to come up with expected quantities. I can’t seem to find the moment where I can keep track of the components in stock and the components to produce, so I can bypass the “explosion” down the BOM levels. The whole thing is very illogical to me anyway, in standard NAV it sets the expected quantity when it validates the Scrap % field!!

Then later on in the process, when the production is posted it seems that NAV always applies all components to all produced items, so for each 1 of our 10 produced items, it will always use 1/10th of each component when consuming the components. In other words, it doesn’t allocate the 4 wheel items to the first 2 bikes, and produces 6 for the remaining items. Every component is spread evenly across the output quantity on the order line, there doesn’t seem to be any proportional allocation of components. So with automatic consumption posting you’re going to have the problem that it will just run down the component list and apply the quantity per times the output quantity. With consumption calculation, you’re going to see the same thing. So either way, I just don’t see an easy way out of this, and I could use some help. NAV just doesn’t seem to work like that, and I don’t really want to completely redesign the system.

My question is if anyone here has done something like that. A good challenge for the manufacturing experts here I hope, so please let me know your ideas, I’m all out of them.

Hi Daniel

Lets ignore the software for a moment.

The point of a Phantom BOM is to aid with BOM construction, it is a collection of parts to esily be brought onto BOM’s and then be exploded. The rule of the phantom, as a general rule, is that you do not stock it, you make it when you need it.

Now in your example they do stock it, this means, quite simply, it cannot be a phantom. If they stock the completed part you need to capture the process of the value add of putting it into stock, so you spearate this. In the example you gave the wheels as components would be consumed, there is a shortage so more wheels are made, based upon its own order modifiers as the demand can be treated independently. By the way I love consultants who say “That is an easy fix” - our only revenge on the developers surely [:D]

With your case I would adopt the argument of manufacturing them separately, because that is actually what they do, it is not a phantom.

I am slightly lost on your last two paragraphs because you are referring to what the code does presumably. One thing I will say is that the production journal and output/consumption journals work differently in several circumstances, you cannot define an actual in the production journal. It also treats scrap in different ways, so depending upon where you are looking you may see different results.

I have not really answered your question, but perhaps you could get the consultant to knock up this easy fix?

The first thing I though when I read this was “that’s not really phantom BOMs is it”. The point is not the manufacturing of the phantom BOMs though, it is the consumption of the completed items. They want to consume whole wheels as a rule, but have the flexibility of producing some of them ‘on the fly’. I’ve always thought it should be separate processes, put the wheel on the BOM as an item, and make it to stock. The thing is, their old software does it the way they want and the consultant (still) thinks it is easy to accomplish in NAV. It might be, he is MUCH better at the manufacturing stuff than I am, but I cannot think of a way to do it.

What I mean with the last paragraphs is the way NAV consumes the items on the production order components. What NAV does is if I have a production order for 5 bikes, and I post output for 3, it will consume 3/5ths of ALL components. What this customer wants is to use the 4 already made wheels for the first 2 bikes, and produce 1 more for the third. The modification to the system would go well past just putting the components onto the order in a certain way.

It would be much easier if the customer would change the business process slightly, and handle those scenarios separately. This thing is making me feel quite inadequate.

you could use the Replanning function from the Production Order of the Bike and select option “One Level”, it should create one new production order for the missing wheels, on this production order you can find reference to the Bike production order in field: Replan Ref. No.

hope this helps

Hi Daniel

If you want the wheels consumed in the manner without modification you would need to set the flushing to manual, and then tell the system how many you have used. The system as standard, with the consumption journal, will calculate based upon actual or expected, you need to tell the system what you have consumed. I suppose you could use the production order and create an inventory pick from it, this will, if I remember correctly, only create a pick for what is inventory, when you post it I presume it will post consumption - you would need to try it. You still though have to create the demand for the remaining wheels, I have not looked at what Patty has said but if this works it would create an order for the difference, but I am not sure it works this way!

Of course you could ask the consultant to explain why it is easy enough to do and walk you through it - perhaps I am missing something!

I see your post is 2 years old but I am a new user on this site and just came across it. If you have solved the problem, please let me know how as I have the identical question.

I understand your email precisely and have seen the situation handled in other ERP solutions by creating a wheel assembly ITEM and designating it as a phantom, NOT the production BOM for the wheel assembly. In this way, when the phantom wheel assembly is listed as a component on the higher level bicycle BOM and there is no available inventory for the wheel assembly, the system creates ONE production order for the bicycle, which includes the COMPONENTS of the phantom wheel assembly. No production order for wheel assemblies is created! If there are 4 wheel assemblies in stock and the bicycle production order calls for 10 wheel assemblies, then the bicycle production order lists quantity 4 for the wheel assembly ITEM and quantity 6 for the COMPONENTS of the additional required wheel assemblies. This method is truly dynamic, adjusting the bicycle production order each time one is released, based on the inventory position of the phantom wheel assembly.

I understand it, the phantom BOM in NAV is nothing more than a shortcut for populating the wheel assembly components on the bicycle production order by entering one line for the wheel assembly production BOM rather than the individual wheel assembly components.

Yep it does not work that way in standard NAV. It is either a phantom or not, if it is the assemblies are ignored, if it is not then it will ask for 6 more wheel assemblies.

To solve it you need modify the system to your requirements.

I guess I owe the board a little follow up [:)]

After a LOT of conference calling, and the help of other veteran consultants (I apparently was deemed too ‘lightweight’ on the subject, so my findings had to be verified) I was able to prove to the original consultant that it was indeed NOT a simple change. They went back to the customer to propose a different solution, where they would make standard NAV functionality work for them.

At the time the job was a contracting gig for me though, and I was not involved in the follow-up.

Thank you to everyone that contributed, I really appreciate you taking the time to help.