19 Replies Latest reply on Jun 12, 2018 8:17 AM by Bill Toft

    Is it possible to group BOM items by certain properties?

    Chris Job

      I'm creating a BOM that has multiple cables (sub-assemblies).  Some of the cables are the same but take different routes, thus they are different assemblies and have different names, but I've given them the same company part number called "Number" along with "Description" and "MFG #". 

      My question is: is it possible to have the BOM group all cables together that have the same "Number" property so that there's only one row with the appropriate quantity?


      - I know that this is a Standard Cable that I'm making, but the "Standard Cable" routing tool is not currently capable of pushing appropriate information to the BOM.

      - I can't just make another "configuration" in the assembly file because it's possible that hundreds of configurations will result from one cable as I insert it multiple times in multiple assemblies.


      Here's an example:


        • Re: Is it possible to group BOM items by certain properties?
          Solid Air

          Depending how you made your upper level assembly and where you put the "number" property it very well be possible.

            • Re: Is it possible to group BOM items by certain properties?
              Chris Job

              "Number" is a custom property that every part and assembly has. It's created by an EPDM auto-generated number.  And why does it matter how I made my upper level assembly?

                • Re: Is it possible to group BOM items by certain properties?
                  Solid Air

                  Why does it matter?  How you construct your assembly can determine the method used to create the BOM in a drawing.  For example which BOM type do you use: Top-level only, Parts only, Indented?  Where I work we use Parts only which means some of our sub-assemblies have to be set  to hide child components when the sub-assembly is a part or set to show when the sub-assembly is just a collection of parts used in several places in the upper level assembly.


                  At least from my experience, part grouping is controlled by the Part Configuration Grouping section of the BOM; with some of the options controlled by the Bill of Material Options section in the Part's Configuration properties (Document Name, Configuration Name, User Specified Name).  Where I work, we would select User Specified Name and populate the field with "Number".  Then in the BOM properties, we would select Display configurations with the same name as one item (name refers to this field).  SW would then group all parts with the same "Number" as one item and adjust the quantity accordingly.


                  Hope this helps.


                    • Re: Is it possible to group BOM items by certain properties?
                      Chris Job

                      Solid Air,

                      Your response definitely helped me get the result I was looking for.  Thank you!

                      It has raised a related question about groupings though.  Why does the option "Display configurations with the same name as one item" need to be checked in order for this to work?  This is based on my assumption that the SW "Part Number" property is the actual property that the BOM reads to group items.  Thus when I change the Bill of Materials Options between "Document Name", "Configuration Name", and "User Specified Name", those are the properties that I am choosing the "Part Number" property to reference. 

                        • Re: Is it possible to group BOM items by certain properties?
                          Solid Air

                          The BOM part configuration grouping option display configurations with the same name as one item is driven by the value entered in the configuration's bill of materials options part number displayed when used in a bill of materials field.  Out-of-the-box this is the value that is displayed in the part number column and the value used by the display configurations with the same name as one item option.  If you change the part number column to look at a custom property then that is what is displayed in the BOM only, the display configuration...item option still looks that the configuration's part number displayed...bill of materials field.

                  • Re: Is it possible to group BOM items by certain properties?
                    Scott Boerman

                    Hi Chris,

                    We have a similar situation where different subassemblies sometimes use the same component parts which are desired to be on the same line in the BOM.  The BOM is output with the options shown in the screenshot below, because some times subassemblies have properties needed in the BOM, sometimes components do, hence the need for the indented BOM.  (wish there was an option for "assemblies and components" without the indenting...)

                    Then when the SW BOM appears, the 3 leftward arrows on the left edge of the BOM are clicked to reveal another column.  Then selecting all rows, right-click in the leftmost column and select "combine identical components". 

                    To get them into a certain order, well we use Excel BOMS so that task is done within Excel.  Sorting within SW does not seem to work because SW does not seem to intermix subassemblies and component orders - so a subassembly appears to be always followed by it's components regardless of how the BOM is sorted.   Also the part number (filename in my case) gets a space(s) added at the beginning of part number cell for indented subcomponents, so the sorting does not function as desired.

                    Hence the strategy to do the final sorting in Excel - we use a template with macros to strip the leading spaces, then sort as desired, format,etc...

                    Not sure if this helps, and there may be better solutions.  



                      • Re: Is it possible to group BOM items by certain properties?
                        Solid Air

                        I do not want to sidetrack this thread but I have to ask you Scott the reason the BOM items must be in a certain order?  I am not saying that is a bad thing; I am just curious.  Where I work we do many things were we tax both our users and SolidWorks because we are told "it has to be done this way".


                        In my last reply, I stated how I set the sub-assembly configuration properties to either show or hide it sub-components; would that help you.

                          • Re: Is it possible to group BOM items by certain properties?
                            Scott Boerman

                            Hi Solid Air,

                            For the order of the BOM, it is inherent in the way the products are made and processed on the shop floor - components/filenames are 1234-001 block, 1234-002 angle, 1234-002b pin, etc... with 1234 being "job number" and 001... being the item numbers (or subassembly number at times).  It's a natural arrangement for one-off job shop work.  Hence the BOM really wants to be in numerical order for obvious reasons.


                            Thanks for the tip about hiding within the configuration.  Currently I use "exclude from BOM" in the component properties, did not know about the configuration property option, will check it out.  Not sure if the control is best done in component property or config. property, need to study that a bit.  (I see the "promote" option in configs - need to see what that's about).


                            Thx - Scott

                              • Re: Is it possible to group BOM items by certain properties?
                                Solid Air



                                Thanks for the clarification; it is always interesting to see why we do what we do.


                                As for promote, it makes sure the sub-components of a sub-assembly are displayed even if the user selects "Top-level only" in the BOM.  We do not use this option because if the users follow our the best practices, it does not become an issue (that and having too many options and "you were supposed to be done with that project yesterday" do not always mix well together).

                                  • Re: Is it possible to group BOM items by certain properties?
                                    Bill Toft

                                    I always use the custom property "PartNo' for my part numbers, so I put $PRP:"PartNo" in the "User Specified Name" in configuration properties. And I use Property Tab Builder to create an input form for this and other properties.

                                    This has worked great for many years, but I always assign a unique part number to each part configuration.


                                    Now I have a project where the part number is assigned to a "stock size" (nearest foot) which then gets cut on site so I have a configuration for each "install size" and assign it the correct stock size part number.

                                    Now, when I use the "display configurations with the same name as one item", all I get is 1 row!

                                    I have attached a test rod assembly drawing with 4 cut sizes assigned to 2 stock sizes. In Rod-1 I manually typed in R-01 and R-02 as Part Number and used R-001 and R-002 as PartNo. In Rod-2 I typed in $PRP:"PartNo" as Part Number.

                                    Each drawing has the 3 BOM options to make comparison easy.


                                    It looks like this is a SW bug? (I don't mind being told I did it wrong!) (Using SW2018 SP3)


                                    As a workaround, I will copy what I typed in PartNo into that Part Number field. But I have 50 parts with many configurations each, so is there a macro?

                                    Rod-2 Config Properties.pngRod-1 Config Properties.png

                            • Re: Is it possible to group BOM items by certain properties?
                              Igor Fomenko

                              About BOM grouping. I`m successful with it but there is a chaos in SW this it.

                              There is this menu:There is the sort menu also

                              And in this sort menu, there are three concurrent items: Sort By, Group and Method. it's horrible! I sure that even SW programmers can`t explain how it must work.

                              One more bad situation is when you find your right way for grouping and sorting (I found), at next release it stops working!!!

                              I use one good and reliable approach - to assign some group index property for each part and assembly and use it in "Sort by" menu with other properties like PartNo and description. Unfortunately, even with it "Group items" group in sort menu change sorting and grouping from release to release.