Develop > Presentation layer > Customize IBM Sales Center > Deploy customizations to the IBM Sales Center
Role-based customization in IBM Sales Center
In the IBM Sales Center, many user interface elements can be hidden and displayed based on selected role.
- Views and editors
- Perspectives
- Preference and property pages
- New project wizard
- Menu and toolbars
- SWT Controls; currently we have support only for following controls:
- Push button
- Combo box
- Check box
- Options
- Table columns
- Label
- Text box
Understand the activity, activity set, and roles in IBM Sales Center
Activities
Eclipse maintains a single, global set of enabled activities. Sales Center uses the same activities as those provided by Eclipse.
An activity has the following characteristics:
- Is a grouping mechanism for related UI functionalities
- Is specified by a set of inclusive or exclusive patterns
- Is typically defined by the administrator or product manager assembling an application
Plugins define activities by extending the org.eclipse.ui.activities extension point. The activity is given a name and description, and is bound to plugin contributions by a regular expression pattern.
ActivitySet
Sales Center provides an extension point, com.ibm.commerce.telesales.activitySets,
to group the activities created with an Eclipse activity extension point. The purpose of this extension point is to allow plug-ins to define which activities WebSphere Commerce roles support.
Example of grouping different activities in an activity set:
<extension id="com.ibm.commerce.telesales.activitySets" name="%activitySetsName" point="com.ibm.commerce.telesales.activitySets"> <activitySet id="com.ibm.commerce.telesales.activitySet.applications" label="%ApplicationsActivitySetName"> <activity activityId="com.ibm.commerce.telesales.orderCaptureApplicationActivity"> </activity> <activity activityId="com.ibm.commerce.telesales.orgAdminWebApplicationActivity"> </activity> <activity activityId="com.ibm.commerce.telesales.acceleratorWebApplicationActivity"> </activity> </activitySet> </extension>
Preference pages are plugin contributions that extend the org.eclipse.ui.preferencePages extension point. IBM Sales Center for WebSphere Commerce defines an activity to individually match each of the preference pages that Sales Center provides; these activity definitions can be found in the fragment.xml manifest of the com.ibm.commerce.telesales.ui.impl.activities plugin fragment.
Although it is possible to work directly with Eclipse activities, Sales Center extends the activities mechanism with two additional extension points: com.ibm.commerce.telesales.activitySet defines groups (possibly overlapping) of activities, and com.ibm.commerce.telesales.roles which defines which activitySets should be enabled for each of the user roles defined by the Websphere Commerce server. By default, WebSphere Commerce predefines the following roles:
- CustomerServiceRepresentatives
- CustomerServiceSupervisors
- Site Administrator
For each of these roles, Sales Center specifies a collection of predefined activitySets.
Roles
Sales Center provides an extension point, com.ibm.commerce.telesales.roles,
to map the activity set based on roles. The purpose of this extension point is to allow plug-ins to define which activities WebSphere Commerce role supports.
An example for the roles extension point:
<extension id="com.ibm.commerce.telesales.roles" name="%rolesName" point="com.ibm.commerce.telesales.roles"> <role id="com.ibm.commerce.telesales.roles.CSR" label="%CSRRoleName" roleId="CustomerServiceRepresentative"> <activitySet id="com.ibm.commerce.telesales.activitySet.applications"> </activitySet> <activitySet id="com.ibm.commerce.telesales.activitySet.menus"> </activitySet> </role> </extension>
Relationship between activities and activity sets
Relationship between roles and activity sets
Related concepts
Deploy customizations to the IBM Sales Center
Related tasks