Alex Lindsay

Assembly Global Variables / Workflow Change

Discussion created by Alex Lindsay on May 19, 2020
Latest reply on May 19, 2020 by Alex Lindsay

Hello, I've been wrangling with the issue of global variables in assemblies for quite awhile. I've looked what feels like every post, tutorial, and video about it. Most of them ended with someone saying to edit the part in context, use a master sketch, or solidworks just isn't good at this kind of thing. The fact that solidworks isn't good at something like this doesn't sit well with me and makes me feel either 1. there is a way or 2. people have a workflow which don't make use of inter-part/assembly dimensions.


As I understand it right now there are 4 primary methods:

1. Global variables typed in assembly equations area and then edit parts in context. Like this video.

2. Design tables 

3. Linking a text file to equations tree item of every part and assembly

4. Master sketches


These are my issues with each

1. Global variables

  • Editing parts in the context of large assemblies can get annoying
  • Defining parts in context of assembly can get messy if the In Place mate isn't deleted
  • Opening a part by itself with references to the assembly creates errors
  • This method does allow you to add new variables which is the most important thing for me right now

2. Design tables 

  • I honestly haven't done too much research on these but it seems like they are primarily used to make different configurations of one assembly and can be used to adjust assembly mates and not dimensions of parts

3. Text file

  • Once text file is created you can't create new variables as it won't add it to the equations area in solidworks
  • This would be a great solution if there would be some way to fix this issue

4. Master sketches

  • Worked a little bit with them and it seems they start to fall apart with very complex design


An ideal solution would be to have one place where I can edit variable values and add new ones to be used. This same list of variables could then be used by parts and assemblies by simply importing it once the part is created. When I create a new variable or change a variable value the parts and assemblies automatically update their equations dialog box.


As I said the text file is so close to being my image of a solution but maybe I'm just thinking about this all wrong and there are other ways people are making large assemblies and making them parameterized. I've been thinking and just wanted to throw out some of the ideas I came up with:

  • Could I write a program that automatically re-links a text file to every part/assembly?
  • Instead of defining dimensions with global variables I just edit part in context and then constrain the sketch to assembly using convert entities.

Anyway, I would really appreciate any help as I'm relatively new to solidworks and an aspiring mechanical engineer and really want to develop good habits for the future. Also, sorry if I'm coming off a little pretentious I just want to be as clear as possible.