Action menu definition examples

Overview

With XML configuration for action menus it is possible to specify the order and visibility of list action menus. This configuration is used as default for all users, however, users can override the configuration in Product 360 Web UI.

The following files define the menus for each root entity:

  • article.list.actionmenu.xml

  • product.list.actionmenu.xml

  • variant.list.actionmenu.xml

  • structure.list.actionmenu.xml

  • task.list.actionmenu.xml

  • article.fulltextsearch.list.actionmenu.xml

  • variant.fulltextsearch.list.actionmenu.xml

  • product.fulltextsearch.list.actionmenu.xml

images/download/attachments/95291819/actionMenuConfigurationInUI.PNG

Possible customization

  1. Change groups order

  2. Change items order inside group

  3. Move items to other group

  4. Move item inside other item

  5. Remove item

  6. Remove group

  7. Create new group

  8. Change default visibility of item

  9. Change if item in favorite area by default

  10. Change captions for groups and items (in resource bundle files or directly in xml by providing explicit value)

Limitations

Do not change menu item identifiers as by them system locates concrete classes. Obviously it's impossible to create new menu item by just adding new line in xml file. However you can contribute new menu items programatically using the SDK.

Some areas of the Web UI will only provide a limited set of action items to the user. This is mainly if the context of the objects presented in the table is not clearly defined.
I.e. if the "Search" using the index based SOLR implementation is being used. An index could span multiple catalogs and hence these actions among others are for example not available there:

  • Create item: Only works in case you would have the data in the table from a specific catalog only

  • Merge: You cannot merge from multiple catalogs simultaneously plus you cannot merge items inside the master catalog.

Example definition

product.list.actionmenu.xml
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<menuDefinition xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="MenuDefinition.xsd">
<menuGroup identifier="menu.item.group.maintain" i18NKey="%web.common.menu.item.group.maintain">
<menuItem identifier="menu.item.product.action.clone" i18NKey="%web.client.product.clone" favorite="false" visible="true"/>
<menuItem identifier="menu.item.product.action.delete" i18NKey="%web.client.product.delete" favorite="false" visible="true"/>
<menuItem identifier="menu.item.product.action.create" i18NKey="%web.client.product.create" favorite="true" visible="true"/>
<menuItem identifier="menu.item.product.action.classify" i18NKey="%web.product.classification.menu" favorite="false" visible="true"/>
</menuGroup>
<menuGroup identifier="menu.item.group.task" i18NKey="%web.task.menu.item.group.task">
<menuItem identifier="menu.item.task.action.create" i18NKey="%web.client.task.create" favorite="false" visible="true"/>
<menuItem identifier="menu.item.task.action.add" i18NKey="%web.client.task.add" favorite="false" visible="true"/>
</menuGroup>
<menuGroup identifier="menu.item.group.data" i18NKey="%web.common.menu.item.group.data">
<menuItem identifier="menu.item.product.dataquality.action.execute" i18NKey="%web.quality.menu.execute" favorite="false" visible="true"/>
<menuItem identifier="menu.item.product.action.directexport" i18NKey="%export.exportHint" favorite="false" visible="true"/>
<menuItem identifier="menu.item.product.action.import" i18NKey="%web.import.list.menu" favorite="false" visible="true"/>
</menuGroup>
<menuGroup identifier="menu.item.group.navigation" i18NKey="%web.common.menu.item.group.navigation">
<menuItem identifier="menu.item.product.back" i18NKey="%web.client.button.back.parent" favorite="false" visible="true"/>
<menuItem identifier="menu.item.product.drilldown" i18NKey="%web.client.product.item.drilldown" favorite="true" visible="true"/>
</menuGroup>
<menuGroup identifier="menu.item.group.default" i18NKey="%web.common.menu.item.group.default">
<menuItem identifier="menu.item.product.action.findandreplace" i18NKey="%web.client.findandreplace.dialog.title" favorite="false" visible="true"/>
</menuGroup>
<menuGroup identifier="menu.item.group.actionconfig" i18NKey="%web.client.actionconfig.menu.group">
<menuItem identifier="menu.item.product.action.actionconfig" favorite="false" visible="true"/>
</menuGroup>
</menuDefinition>