With the Bill of Materials, there is an underlining concept of level of details you want. Depending of whom is going to use the BOM, you need to adjust the zoom level. To each line in a BOM corresponds something that you need to get with one way or another. Buying it or manufacturing it yourself won’t be done with the same level of details. This is the concept of the Scope of Supply: the more you zoom, the more lines you have in your BOM, the more components you have to source yourself.
The scope of supply is moving the burden between you and your supplier. Indeed, for a given assembled component you can have one line in the BOM or a line for each component it is made of. If you have the latter option it propably mean that you have multiple suppliers delivering each components and you will have to assemble it yourself to make it the component you wanted in the first place. If you are not familiar with the concept of component, you should check the article about the Definition of the Word Component.
Lets take a look at a quick example: the mouse you are using to browse that website is made of several parts and sub-assemblies. When you buy a mouse, you buy the whole thing, not every single parts it is made of right? So it is one line in your BOM unless you are a mouse manufacturer and in that case you want to source every single parts and assemble them to make that mouse.
The scope is adjusted at the assembly level in SolidWorks which will be reflected in the associated BOM. Basically, this means that you have to Exclude from the bill of materials the components you don’t want the person in charge of the procurement to source.
It is possible to avoid doing that by simply selecting “Top-level only” for the Bill Of Materials properties. And this is fine as long as you use the BOM only with the assembly drawing. You can follow the component numbers to navigate down to the component underneath and so on.
The problem is that it will work until you enter the realm of Product Data Management and Enterprise Resource Planning systems. The ERP software is going to read the construction tree of the top assembly to understand the structure and what component contains what. If you select only the top level, it won’t see what is underneath. Take a look at the articles about miniPDM to understand why it is so important to have a tree properly constructed.
Scope of External Components
The most trivial case is the one for external components. Since they have not been designed in house, you are just interested in the parent component itself and it is out of your scope if there are several components constituting it.
The inductive sensors for example are usually sold with two nuts but in your BOM it should be just one line as you don’t want to buy the nuts separately:
To do that, you can exclude multiple components at the same time by selecting them with holding control or shift. Right click and select the component properties:
Then you have to check “Exclude from bill of materials” and you probably want to do it for every configurations so you should also select “All configuration” in the drop-down menu:
When it is done, you can clearly see which component is excluded. The fact that these are Virtual Components does not change anything as they behave like standalone components. They have been made virtual to comply with the good CAD Importation practices.
Scope of Internal Components
Whether you assemble together internal and/or external components, or if you modify a component, the parent assembly is internal component as it is designed in house.
Components Modification
Because the alteration is designed in house, the modification assembly is internal. If you want to supply the unaltered component to the person/company making the modification, it has to appear in your BOM so you don’t want to exclude it. On the contrary, if you want the person/company to source it, you have to exclude it from your BOM and reference it in the modification drawing/instruction.
Maybe you were supplying a component to a shop to make the modification but the logistic was too complex so you decide to have them source it. If we look at the example in the the article about the Components Modification we simply exclude the unaltered component from the BOM:
Now you have to reference that component in the modification drawing otherwise the shop won’t have any idea what the unaltered component is. Insert a note pointing to the component and click on the “Link to Property” icon:
Then you can combine the properties of the unaltered components to display what you want. For example the vendor name and the vendor reference:
Make sure you select the unaltered component and not the parent assembly with the modification by selecting the radio button “Model found here”.
If you need to specify quantities or if several components are modified in the same drawing you might want to insert a BOM in the drawing instead of notes.
Of course if you change your mind you can always uncheck “Exclude from bill of materials” box and have the components showing up again in the BOM. The context can always evolve which is why this method is interesting because it is flexible. You don’t delete anything to adjust the scope you just show or hide.
Components assembled together
If you assemble together several components with a screws, welds or glue you can also adjust the scope given the context of manufacturing. Basically, adjusting the scope gives you a way of grouping components to handle only just one big component that contains everything.
If we look at the example used in the article about the Virtual Components, we have a steel frame with some welded plates on the top. The frame is relatively complex so its detailed drawing is already very dense on a large paper size. To improve the readability, we want to detail the plates on separate drawings.
These plates have been made virtual because they are not standalone parts, they belong to a unique big mechanical part entirely welded. They have also been excluded from the BOM because it is out of our scope, we want the final result. Ordering the plates is on the welder’s hands.
It is one component, so it should be one file and one drawing. The trick is to create configurations to hide either the plates or the frame to detail them separately:
Then the first sheet of the drawing should be used as an overview of the final result with a small BOM to detail the quantities and the sheet where each piece is detailed. This is why you need an additional configuration where the components are not excluded from the BOM:
You can now add new sheets to detail each one of the 3 components. The title block is only for the whole thing, not the individual parts so it should be the same on each sheet. You don’t want to confuse the welder with other part numbers or description. This is one part that has been split into smaller pieces for comfort, nothing else. This is why you should not try to display something different by modifying the configuration properties… Or do it at your own risk!
But we could go a bit farther, components attached with screws or glue are kind of like being welded right? So we can apply the same principle!
We currently have this higher level assembly with two risers and their respective hardware on top of the frame:
The welder that makes the frame is also making the risers. But in this assembly’s BOM, we have two lines so there is a risk that during the procurement these parts won’t be considered as assembled together as the welder won’t get that assembly drawing:
This might not be an issue but to have a better fit and having the functional surfaces within the tolerances, it is better if the welder knows that it is assembled together. You might also get a discount if this is considered as one big part because it is less paperwork to have one part instead of two. Everything will be also shipped together which is easier to manage and schedule.
To be considered as one unique component you still need one unique drawing so you drag and drop the Risers and the Hardware inside the weldment assembly, exclude them from the BOM, add a configuration with only one Riser and and add a sheet to the drawing:
The configurations now look like this:
Note that thanks to having indexes instead of names it was possible to rename the “04” without getting any errors. For more details, take a look at the article about the Configurations Naming.
The assembly 0000002233 is not useful anymore and you can dissolve it at the assembly level just above to only have 0000002231 showing.