What's the difference between these three features which seemingly perform similar tasks?
I wish to create one "master" part wherein only one dimension changes (Length) then insert different lengths of that part into an assembly.
Here is some of what I can think of off the top of my head. This is not at all going to be exhaustive.
General Caution for ConfigurationsI strongly advise caution when deciding to use configurations.
There are a lot of ways to create and maintain configurations and a lot of different parameters that can be configured (dimensions, features, suppression states, custom properties, etc.). This can make them seem very powerful and appealing for a number of different circumstances. However, this also makes them very complicated which can cause a lot of problems with maintenance, especially if you have new users. As easy as it is to create new parts, it is equally easy to cause errors across all of them when a model is edited. If you're the only one touching a model they can be great but once you get other users involved you can often end up with more headache than you anticipated.
A lot of experienced users will call configurations a "crutch" and there are other ways to reduce the needs that they fulfill (PDM helps with searching and maintenance, start templates help ensure geometry and design matches so components can be easily replaced, etc.)
Manual Creation (Using the ConfigurationManager Tab in the Design Tree)
Configurations can be manually added and edited by making changes to the active configuration. In my opinion, there is no good reason to create configurations this way. They will not be easy to edit and other users will have no record of what was configured in order to understand design intent.
Creates a table based on an Excel platform (must have excel installed on the local machine).
This is not a method of creating configurations but is a way to sort through and select configurations. It allows you to create a custom user interface where users can select various filter choices in order to switch a part to the desired configuration when it is used.
Modify Configurations(Simplified Design Table) ConfigurationManager
Creates a table similar to an excel sheet but based on internal SW programming.
(This is done by right clicking on the desired target and selecting "Configure Feature/ConfigureComponent/ConfigureDimension/Etc.")
Third Party Add-Ins
If you're looking at doing a lot of customization and repetitive tasks, there are a lot of great third party add-ins that are very powerful (DriveWorks, KBMax, etc.). SW comes with an Xpress version of DriveWorks that can handle a lot of small scale customization.
Hope that all helps! (I'm sure others will help fill in the gaps with anything I missed)
Edit: Thanks to Glenn Schroeder for helping me notice that I originally misused the term ConfigurationManager when I was actually talking about the "Modify Configurations" table that appears when you right click a feature and select "Configure Feature" which is entirely different.
Awesome. Thanks for the detailed response! It sounds like Configuration Manager is the most reliable method.
I guess I was misunderstanding the purpose of the Configuration Publisher then.
I came to this question after reading several other threads which had similar questions but different solutions.
In this thread and this help page it sounds like the Configuration Publisher allows you to insert configurations as needed or "on the fly", which I interpreted as meaning you don't have to create any configurations in the part itself, you just have to define which parameter(s) can be changed. Then you can enter the length when you place the part in the assembly and a configuration will be "auto-generated" (or something similar). That would be a nice feature IMO because it wouldn't require any integral table files and the parameter or dimension would be defined at the assembly level (and propagated to the part only as necessary).
Is it really possible to create configurations on the fly like this? If so, I can't find the setting pictured in the screen shot on this post.
EDIT: Question clarified. See my post below.
Allan Smithee I haven't had a lot of experience with configuration publisher.
You have to start with a design table and specify the parameters you want to be included in the property manager. However it does look like you are correct that configuration publisher will create new configurations "on the fly" when you add it to an assembly if you select a combination of parameters that does not already have a configuration created.
It seems like this could be a fairly powerful tool and I like the interface, but since it requires a design table I imagine it would have a lot of the same stability issues.
The main thing that keeps me from looking into it a lot is our PDM and rev control. I'm currently working in a third party PDM that can sometimes have trouble with things like this. Since configuration publisher needs to modify the part file every time it is added to an assembly where it needs to create a new configuration it could be a bit of a headache. I'm not sure how difficult this would be with SW PDM but if you don't have a PDM I can see this being a great feature.
Then again, maybe I just have more learning to do. Wouldn't be the first time .
Hey Derek I've been looking into this and apparently we're both right. There are essentially two ways to use the Configuration Publisher, and both utilize a Design Table. You can read more about it here, but briefly part configurations can come from a "closed set" (a list of part numbers and parameters) or they can be "open ended" (i.e. you create them on the fly and check / uncheck features and/or enter parameter values). For the closed set, the Configuration Publisher does little more than act as a pretty GUI for selecting parts when inserting into an assembly. Instead of picking the configuration name from a list, you're able to select parameter values and have SW filter down to the specific configuration, similar to the Toolbox parts library.
For an open ended setup you create a design table and select your parameter(s) or features that will change, but you don't enter any additional information into the design table (only the default configuration should exist in the table). When setting up the publisher you then establish the rules for the features or dimensions you previously selected. You can set a range of possible values, value increments, parent features, and so on. Each new configuration is automatically added to the design table as you create them in an assembly.
Conceptually I prefer the "open ended" option as new configurations are created only as needed. The problem is that you are unable to provide names for the configurations. As new configurations are created, SolidWorks adds them with some banal name that isn't related to the features or values, as pictured here:
What would put this feature over the top is if we could establish naming conventions based on the parameters and features that are used, perhaps in a fashion similar to the concatenate function in Excel. For instance in my case the names would be something like <PartName>&"-"&<Length>&"-"&<Color>. Heck, it could even refer to an Excel formula since that's what SW is already using for the Design Table.
For this reason I'm going to stick with the "closed set" option and select configurations from a list of possible values. That way my parts will be predictably named the way that I prefer, such that the part number & length can be easily determined from the name.
Below are some of the better resources I came across for using the Configuration Publisher. The YouTube videos in particular were very helpful and still relavent.
SolidWorks Configuration Publisher: Taking File Configuration to the Next Level
SOLIDWORKS - Configuration Publisher Part 1 - YouTube
SOLIDWORKS - Configuration Publisher Part 2 - YouTube
2017 SOLIDWORKS Help - Configuration Publisher
I agree that configurations can cause issues if not done carefully but the benefits are great.
Just don't go nuts and make them without a valid reason to.
Yeah I agree they can definitely be useful, especially for part files with single parameter changes like OP is looking to create. I just always like to add the caution for anyone else that might reference this so everyone knows what they're getting into.
We deal with a lot of headaches in large assemblies from configured parts that are poorly modeled because newer users get excited about them without realizing the limitations. Limiting configurations to single parameter changes only is one of the best ways to help with this.
Allan Smithee wrote: What's the difference between these three features which seemingly perform similar tasks? I wish to create one "master" part wherein only one dimension changes (Length) then insert different lengths of that part into an assembly. Thanks
Allan Smithee wrote:
Doing this is very easy with configurations! It is also very safe. The Design Table does use Excel, but that should not be a problem. A Design Table is just a way to look at and manage the items that are different between configurations all at once. Go through the tutorial for Design Tables and your confidence will soar.
Depends what version of excel you're using. I've seen older versions of excel completely erase a design table with no warning.
If you know what happened and have some rev control you can get it back but if you don't catch it right away you could be backtracking a lot so it can still be dangerous with inexperienced users.
I don't disagree with you that very old versions of Excel can cause problems with DT's, but this is a bit rare that the version of Excel is too old for SWX.
Allan, I meant to suggest that for any dimension, feature (for suppression state), or mate (for assembly configurations) that will be under configuration control you would do yourself a HUGE favor if you name these something descriptive. Then your D1@Sketch2 becomes Length@Sketch2 or whatever you want to call it. When these are populated into the DT you will have a much easier time of knowing what is what and it will make your life so much easier. You can create the DT and later name your dimensions and features and those will update into the DT, however, if you know as you are creating the item that you'll want it configured then the opportune time to name it is at the point of creation.
I agree. Naming dimensions and features is especially important for parts with many parameters.
I'm surprised no one has mentioned the simplified design table that we can access by right-clicking on a dimension and choosing "Configure dimension" (or by clicking on a feature and choosing "Configure feature"). While it doesn't have all the features of an Excel based table, it's also easier to work with, and can also be saved for later editing.
Glad you added this to the discussion. Interesting that there are so many ways to accomplish similar functions in SolidWorks! I guess there's rarely a single "best" way of accomplishing a task.
Thanks Glenn Schroeder! This is actually what I was referring to when I misused the term "ConfigurationManager" in my earlier comment. I edited my previous comment to clarify.
I would like to see it to use Configuration Publisher with the SOLIDWORKS Design Table and without the need of excel.
Is there a plan to enhance the "Configuration Publisher" with Solidworks Configtable?
Retrieving data ...