Rules for Using Relations
Consider the following rules:
• If you try to assign a relation outside the section to a parameter that is already driven by a section relation, you get an error message when the system regenerates the model. The same applies if you try to assign a relation in a section to a parameter that is already driven by a relation outside the section. Remove one of the relations and regenerate model.
• If an assembly tries to assign a value to a dimension variable that is already driven by a part or subassembly relation, you get an error message. Remove one of the relations and regenerate the model.
• Modifying the units of a model can invalidate your relations, as they are not scaled along with the model.
• The relations are evaluated from top to bottom. After executing the relations, the final values of the parameters are locked. However, if a parameter value is based on a condition, the parameter is locked only if the condition remains true after executing all the relations.
The parameter can be locked due to usage of relations as follows:
◦ If a parameter is used in relation unconditionally, for example, MYPARAM = 5.
◦ If a parameter is used in conditional relations, the parameter is locked if at least one of the conditions is true at the end of execution of the relations.
|
The locked parameter value can be different from the value assigned in the condition.
|
In the following relations:
A = 0
IF a==0
b=5
endif
if a ==5
b = 10
endif
a = 5
The parameter B is locked, if A==5 is true at the end of execution, but the value of B will be 5 during executing, if A==5 is false.
|
In some cases, relations defined at different levels may conflict. Check the validity of relations by clicking and make sure your relations fulfill your design intent. |