Is it worth it in the database to separate finished products from components, or to combine them into one essence "subject"? Simplified, both options are as follows:
Option one, components, products, semi-finished products are in the general table "Items". The type determines whether the object is composite (assembled at the enterprise) or atomic (component, etc.). The only noticeable disadvantage is that the speed of processing requests will drop as the spreads out of the table, but at the same time, the Occam's razor in action does not breed.
Option two, the goods collected at the enterprise are in a separate table. 