If you need to change a type after you have written robots using variables of that type, you need to be careful. Your robots might stop working if you do something wrong.
You should take care when performing any of the following changes to a type that is already used by variables in existing robots — if you do, you will not be able to use those variables (however, the robots may still be loaded without the variables):
Change the name of a type.
Delete a type.
Remove or rename an attribute in a type if, in a robot, one or more variables of that type have assigned values different from the default to that attribute.
Change the attribute type of an attribute if, in a robot, one or more variables of that type have assigned values to that attribute which are not compatible with the new attribute type.
If your robot is open while you make any of the above changes you will see a red status bar at the top of the Robot Editor with a text explaining the problem. The status bar also contains a button that you may click to reload the robot with the compromising variables removed. You can, of course, also solve the problem(s) by making the appropriate changes to your types. If you do this, you can return to your robot and continue working.
The following changes to a type can be automatically carried over to robots without having to remove any variables of that type (you may have to reload), but some errors might be generated when the robots are executed (you can subsequently fix these errors):
Change the name of an attribute.
Change the "Required" property of an attribute from false to true.
Add a new attribute that has the "Required" property set to true.
Delete or rename an attribute that has been assigned a value in a variable.
Change the attribute type of an attribute that has been assigned a value in a variable.
You can always make the following changes, without affecting existing robots:
Change the "Required" property of an attribute from true to false.
Change a comment (no matter where).
Add a new attribute that has the "Required" property set to false.