Business Manager Extension Points
You can customize Business Manager user interface elements to meet your storefront information management requirements:
Menu Items
Business Manager has two first-level navigation elements: Administration and Site. A Business Manager menu item is a second-level navigation element in the Business Manager navigation panel. You can decide that you want more menu items than are supplied with Business Manager.
A menu item has the following properties:
Property | Usage | Description |
---|---|---|
ID | Mandatory, unique | identifies the menu item; must be unique across all menu items |
Name | Mandatory, localizable | The caption of the menu item |
Description | Optional, localizable | Describes the menu item; shown at the overview that appears upon selecting the item |
Short description | Optional, localizable | Describes the menu item; used for GUI elements like tool tip texts and status bar messages |
Site | Optional | If True (default), then appears in the Site menu section; otherwise appears in the Administration section |
Position | Optional | Number indicating position of menu item within its main menu (default, last position) |
Icon | Optional | Relative path name of icon image for this menu item; appears in content section when parent main menu item is selected in menu section |
Menu Actions
Business Manager menu actions are the third-level navigation element of Business Manager. They are submenu items of Business Manager menu items and are shown on the overview page of a menu item. Selecting a menu action at the overview page leads to the execution of an implemented functionality. Menu actions are the direct connection between the navigation panel and the actual business functionality. For example, the Products menu action is the linking element between the navigation and the list view that shows products.
A menu action has the following properties:
Property | Usage | Description |
---|---|---|
ID | Mandatory, unique | Identifies the menu action; must be unique across all menu actions |
Menupath | Optional | ID of the parent menu item to which this menu action is assigned; must refer to the ID of an existing menu item. The menu item can be in the same bm_extensions.xml file or in a bm_extensions.xml file of another cartridge that is loaded in the same application. If the menupath property refers to an unknown menu item, then the extension framework rejects the menu action and does not display it in the user interface. (This behavior prevents orphan menu items.) |
Name | Mandatory, localizable | The name shown as the caption of the menu action |
Description | Optional, localizable | Description of the menu action; shown at the overview that appears upon selecting the parent menu item |
Short description | Optional, localizable | Shorter description of the menu action; used for GUI elements such as tool tip texts and status bar messages |
Site | Optional | If True (default), the menu item of this menu action appears in the Site menu section; otherwise appears in the Administration section. Value must be the same as the site attribute of the containing menu item (see Menupath property). |
Exec | Optional | Entry pipeline (and start node) to be executed when the menu action is selected |
Parameters | Optional | Some static parameters passed to the exec-pipeline |
Sub-pipelines | Mandatory | List of those pipelines that implement the menu action. All pipelines that are linked inside the menu action's business functionality must be specified here. The exec-pipeline is included. |
Support | Optional | Flag indicating that this menu action is only visible to Commerce Cloud Support (default = false) |
Position | Optional | Number indicating the position of this menu action within its parent menu (default = last position) |
Extern | Optional | Default = false; if true, selecting this menu action causes a new browser window to open |
Icon | Optional | Relative path name of the image for the icon of this menu action; appears in the content section of the parent menu item |
Permissions | Optional | Deprecated since server version 2.6. Required if migrating Business Manager extensions and access privileges from a pre-2.6 version to 2.6 |
Dialog Actions
Business Manager dialog actions enable you to add new functionality to the pages of a menu action. HTML buttons represent the extension points in which to hook dialog actions. Selecting a corresponding button on pages (templates) executes them. Existing templates contain extension points that are referenced using a unique ID.
Dialog actions have the following properties:
Property | Usage | Description |
---|---|---|
ID | Identifies the dialog action; must be unique across all dialog actions | |
Name | Optional | Names the action |
Extension point reference | ID of the extension point where this action is made accessible by the user | |
Exec | The pipeline and start node to be executed when a user triggers the action | |
Menuaction-ref | Mandatory | The menu action where the dialog action extension is hooked in |
Parameters | Optional | The names of the context parameters whose values are passed as dictionary entries to the executed pipeline |
Position | Optional | A number indicating the position within all the actions linked to the same extension point |
Extern | Optional | Default = false; if true, clicking the button representing this dialog action triggers a new browser dialog to open |
Form Extensions
Business Manager form extensions are a way to extend existing Business
Manager forms, such as the search form, with more form fields. The values entered into these
fields can be of type string
, int
, or
double
, and predefined values (options) can be specified for each
field.
When the additional fields have been declared in the XML descriptor
(bm_extensions.xml
), an arbitrary form containing a specific ISML tag
(<isformextension ..>
) can access that data, or, more specifically,
a search form containing another specific ISML tag (<issearchformextension
..>
) automatically contains the added (search) fields. To enable this
functionality, you must specify a unique ID for the FormExtension in the XML file and in the
ISML file that is supposed to use the respective data.
Salesforce recommends that you make every Business Manager form extensible
by adding one of these form extension ISML tags, specifying extension IDs to use later in
the XML descriptor (bm_extensions.xml
). Choose IDs carefully, possibly by
including parts of the corresponding pipeline or ISML template name (for example,
order-search).
When defining a Business Manager form extension, the following attributes
of the <formextension ..>
element are specified:
Property | Description |
---|---|
ID | A unique identifier of this extension |
The direct child elements of the <formextension
id="..">
tag are <valueinput..>
elements. These
elements each correspond to an added field and have the following attributes:
Property | Usage | Description |
---|---|---|
Type |
string , int , or
double
|
|
Name | The name of the field, also used as the name for the respective GET / POST parameter | |
Defaultvalue | Optional | A default value for this field |
Child elements must be specified for each
<valueinput..>
element. One is the <label..>
element, which contains a descriptive label for this field. Because it's localizable,
multiple <label..>
elements can occur at the same level (that is, for
the same field or value input). Salesforce recommends that you specify at least one label,
preferably with the default locale; attributes are as follows:
xml:lang
|
Any locale ID (for example, en_US), or "x-default" to specify the default label for any locale not specified here explicitly |
The
element is also
available. It has no attributes (and thus is not localizable). Use it to encapsulate any
text that could appear as an option for this value input.<option>