Welcome to the Onshape forum! Ask questions and join in the discussions about everything Onshape.
First time visiting? Here are some places to start:- Looking for a certain topic? Check out the categories filter or use Search (upper right).
- Need support? Ask a question to our Community Support category.
- Please submit support tickets for bugs but you can request improvements in the Product Feedback category.
- Be respectful, on topic and if you see a problem, Flag it.
If you would like to contact our Community Manager personally, feel free to send a private message or an email.
Assembly Configurations - ability to set Global Variables
dapug
Member Posts: 17 ✭✭
I'm so bummed... I cannot choose a GLOBAL variable (variable studio) as an assembly feature to modify a value for assembly. Why? WHY????? Please tell me you can, and that I am just missing something obvious.
Use Case:
Making global variables configurable and thereby apply to ALL parts (that happen to share than variable) in the assembly in one swoop... yeah. WAY better than having to set a configuration on parts (in part studio), and then assembly config has to go refer to ALL the parts that need some sort of value change that would otherwise be very simply set from a single variable that those parts all shared.
Further info:
It's super annoying when you have a LOT of parts that happen to share a variable (the whole point of Variable Studio, right?), but then ALL of those parts would need that value not only set as configurable in the part studio, but ALSO would need to add each and every one of those as an "assembly feature" to then point to and modify them all in sync in Assembly Config. Lame. This gets out of whack and invalid REAL fast when you set, for example, a length on one part, but all the other parts (that must MATCH that length, hence the variable) do not actually sync up and force match in assembly. Now you have invalid dimensions in assembly! Grrr. No... they must be added, each and every one, as an assembly feature in your assembly input. Ugh.
Use Case:
Making global variables configurable and thereby apply to ALL parts (that happen to share than variable) in the assembly in one swoop... yeah. WAY better than having to set a configuration on parts (in part studio), and then assembly config has to go refer to ALL the parts that need some sort of value change that would otherwise be very simply set from a single variable that those parts all shared.
Further info:
It's super annoying when you have a LOT of parts that happen to share a variable (the whole point of Variable Studio, right?), but then ALL of those parts would need that value not only set as configurable in the part studio, but ALSO would need to add each and every one of those as an "assembly feature" to then point to and modify them all in sync in Assembly Config. Lame. This gets out of whack and invalid REAL fast when you set, for example, a length on one part, but all the other parts (that must MATCH that length, hence the variable) do not actually sync up and force match in assembly. Now you have invalid dimensions in assembly! Grrr. No... they must be added, each and every one, as an assembly feature in your assembly input. Ugh.
1
Comments
It doesn't say "select instances, mates, or global variables". And on the left pane under Instances, you can click around everywhere in there... no ability to set variables. I can set "unsuppressed" on a part or mate, but still no variables.
Our architecture doesn't allow information to flow the way you suggest. Consider: what if you configured the same global variable from two different assemblies? Working with configs can be cumbersome, I know, but, even in an ideal world, it still wouldn't make sense to have one tab's config affect global variables.
Edit: I should add that I'd love some workflow improvements in config land, like what S1mon proposes (and especially configurable variable studios), but we'll get to it when we get to it. :P
I believe this is what S1mon was saying. But just to be clear, here is that concept spelled out...
Say you have a global variable "TotalWidth", and you have 30 parts that all set their width to it. Then, say you add these 30 parts into an Assembly, and in the Assembly Config, you create a List with "Normal" and "Wide", with different values. Now, RATHER than going into the config of 30 parts, you simply add the global var TotalWidth as the Assembly Feature. And poof! All 30 parts respond to the simple config setting.
This way, all the parts that are set by that TotalWidth variable now respect the values, without me having to go into all 30 parts, and without having to set up config in the part studio! BUT... this does not actually change the global var itself, it only APPLIES it to THIS one assembly. Not affecting other assemblies using those parts, nor even affecting the drawings of the parts in part studio.
Is there a way to move this post to Improvement Requests?
This would be more similar to the current workflows, with the key difference that changing the configuration a variable studio affects the whole document (or at least every tab that uses a one these values).
Which is a pain with highly hierarchical models.