You need a complette assy regulation, or just a component list for every product?
If just a component list, you can use the bom, and you can inherit the manufacturing view for the proper selling selection. (use the product tree from bom)
If you want to model the assembly steps, in this case you need to inherit the routing as well, and use it each bom steps.
If you want to sell the sub components but you want to mark which kind of machine is/was the target, may you can looking around some repairing solutions in the apps, or and use bom as well.
The process point of view you can handle the "virtual product" as normal product what is semi finish. In this case this produced parts, what you cannot buy and cannot sell (or can be sell), but this semi parts is component of the other products. So in this case this product life time is short, because it will be build the other component. You can categorised your product.product as semi, or component and you can handle it by python function according this kind of type.
Did you try mrp_bom? And search for Bill of Materials in the v6 docs.
hi, Basically there two option to set your product, one is set the "phantom" Bom. and other is Use product variant. But It's depend on your scenario. So here little bit confuse with your question. so would you please elaborate your question with live example.