Define the availability of object class specific buttons
In the configuration, generic operations are button interactions that are object class specific. They are added to class-based content areas and data workbenches of a defined object class only. The New button on the user interface is also a generic operation. If creation of new objects for an object class is inhibited for a user profile, objects if this class cannot be created via the New button.
Some button operations require the availability of a base class object. For example, you can only create a local component in the context of an application. If the Source attribute of a generic operation is set to BaseInstance , the button will create an object in the context of working with a base object. The Source Class attribute informs about the object class of the required base object.
The availability of generic operations can be managed in the class model as default for all user profiles and in the class settings for specific user profiles or differently for different object class stereotypes.
For data workbenches of object class stereotypes, the button New > Create Object automatically generates an object of the correct stereotype. In the class settings of the object class stereotype, you can change the caption of the button to display the stereotype caption instead of the object class caption. For object class stereotypes, a button is only displayed if the button is enabled both in the class settings of the object class and in the class settings of the object class stereotype.
This feature is not fully implemented with Alfabet 11.7. The buttons are only available as generic operations for a subset of the object classes. In the transition phase, the buttons defined via the object profile specified in the class settings is used for display of buttons for operations not yet available in the class model. For class based content areas, buttons from an object profile can also be added by assigning the object profile to the content area.
- Go to the Meta-Model tab.
- In the explorer, expand the nodes Classes > the object class you would like to edit > Generic Operations.
- Click an operation in the list and change the accessibility in the attributes of the operation:
- Access In User Interface: Select Access to provide the generic operation in data workbenches and class-based content areas, or select NoAccess to hide the generic operation.
- Comment: Optionally add a comment to explain the reason for your decision.
- To change the behavior set in the class model for a user profile or object class stereotype:
- Go to the Presentation tab.
- In the explorer, expand the nodes Class Settings > the object class you would like to edit > the class settings of the user profile.
- Right-click the Operations node and select Modify Class Operation Behavior.
- The new generic operation modification will be added as last child node of the Operations node with a random generic operation assignment. Click the node and select the relevant generic operation in the Operation Name attribute.
Each generic class operation can only be added once to the Operations node. If you do not find the generic operation in the drop-down list, there will be already a modification for this generic operation. Change the existing modification node.
- You can set all or a subset of the other attributes of the node to change the generic operation for the users logged in with a user profile using the current class settings:
- Caption: Define an alternative caption that will overwrite the Caption attribute of the generic operation in the class model.
- Access in User Interface: Define whether the the button will be available (Access ) or hidden (NoAccess ). This setting overwrites the accessibility definition in the Access in User interface attribute of the generic operation in the class model.
- Default Editor: If multiple editors are available for an object class, you can select an editor for the generic operation only. The selected editor will then be used for the generic operation, while the default editor defined in the class settings is used in all other context.