View manager dashboard
A store manager should be able to visually monitor the performance of a store either on mobile or desktop devices.
The manager dashboard in Sterling Store Engagement provides a dashboard with Order Status charts and SLA charts. In this dashboard, a store manager can see the number of orders that are in progress, completed, or yet to be started. Similarly, the manager can view the number of orders that are overdue, due soon, and within SLA threshold.
Solution
The following section describes APIs, user exits, services, and other components.
- Mashups are called to populate the data for each portlet on the dashboard. Multiple mashups are
aggregated in a single call to the server to invoke a service, which populates the SLA chart and
Order Status chart, displayed side by side. Based on the input parameters from the mashup, the
service queries the database for
Ship from Store
orPickup from Store
orders and the requested order statuses. - A store may handle only
Pickup in Store
orShip from Store
orders. In such cases, the required resource permission can be enabled for the store user group to access the appropriate portlet. Depending on the resource permission enabled, the corresponding portlet is displayed with the Order Status and SLA charts side-by-side on the desktop version of the application. However on the mobile version of the application, a link to switch between the charts is displayed. The portlet is hidden in such cases as it would be redundant with the main portlet. - The
manager-dashboard.jsonpresent in the<WAR>/ngstore/store/views/home/manager-dashboard/folder contains the configuration for the feature. It is used by the service to query the database and return the number of orders corresponding to a particular order status or SLA. The configuration JSON file helps to aggregate the shipment statuses and SLAs to make it easy to display on the user interface. Since its configurable, you can add or modify the statuses to suit your business needs.Table 1. Mashups and Service Mashup Function mgrdb_getCommonCodeListForSLARetrieves the list of common codes corresponding to time thresholds for each SLA category. Invokes the getCommonCodeListAPI.mgrdb_getDashboardPollingIntervalRuleDetailsThis mashup calls the getRuleDetailsAPI and retrieves the dashboard refresh interval configured in Sterling Business Center.sfs_sla_getShipmentCountForGivenStatusesRetrieves the number of shipments under each SLA category in the manager-dashboard.jsonfile for Ship from Store orders. InvokesYCD_GetShipmentCountForStatusListservice.sfs_orderstatus_getShipmentCountForGivenStatusesRetrieves the number of shipments under each Order Status category in the manager-dashboard.jsonfor Ship from Store orders. InvokesYCD_GetShipmentCountForStatusListservice.bopus_sla_getShipmentCountForGivenStatusesRetrieves the number of shipments under each SLA category in the manager-dashboard.jsonfor Pickup from Store orders. InvokesYCD_GetShipmentCountForStatusListservice.bopus_orderstatus_getShipmentCountForGivenStatusesRetrieves the number of shipments under each order status category in the manager-dashboard.jsonfor Pickup from Store orders. InvokesYCD_GetShipmentCountForStatusListservice.The following logic is executed to display information on the manager dashboard:- When the manager dashboard is launched, the
mgrdb_getCommonCodeListForSLAandmgrdb_getDashboardPollingIntervalRuleDetailsmashups are aggregated and called together. It is only invoked once per session and blocks the UI. Any subsequent navigation to the manager dashboard picks up the cached response until browser is refreshed. The data that is fetched for SLA thresholds is used bysfs_sla_getShipmentCountForGivenStatusesandbopus_sla_getShipmentCountForGivenStatusesmashups to invoke theYCD_GetShipmentCountForStatusListservice to get the SLA related data. - The
sfs_sla_getShipmentCountForGivenStatusesandsfs_orderstatus_getShipmentCountForGivenStatusesare aggregated and invoked by the Ship from Store portlet. Simultaneously, thebopus_sla_getShipmentCountForGivenStatusesandbopus_orderstatus_getShipmentCountForGivenStatusesmashups are invoked from Pickup from Store portlet. These two mashup calls do not block the UI. - Whenever the store manager chooses to switch between the SLA chart and Order Status chart, one of the appropriate mashups is called.
- When the manager dashboard is launched, the
JSON Configuration
manager-dashboard.json file contains configuration that is used by the
Manager Dashboard. It contains configuration for SLA and order status charts segregated based on
Pickup in Storeand
Ship from Storeorder fulfillment methods. It provides configuration for the following purposes:
- Grouping for various shipment statuses into three display statuses for easy visual representation.
- Labels and styles that are applied to the UI.
| Attribute | Description |
|---|---|
statusName |
The name of the status. |
combinedStatusArray |
Statuses to group and display under the statusName |
ui_chartConfig |
Configuration that is used on UI to display the label (labelKey) and CSS
(cssClass).
|
ui_chartId |
This must correspond to the DOM ID for the chart. It is used to set the JSON configuration to the correct chart. |
| Attribute | Description |
|---|---|
combinedStatusArray |
It will contain the list of descriptions (shortDescription) for the
configured SLAs in Business Center. They must remain same and cannot be globalized. |
statusUIDefaults
|
In case more than one SLA statuses are grouped together under
combinedStatusArray, the icons and styles configured for the status mentioned in
the file will be taken. |
cssClass |
This is not required. It is automatically picked from
statusUIDefaults. |
shipmentStatusToExclude |
This is the shipment status that should not be included while computing SLA numbers. By
default, it changes to the "statusName":"complete". |
- The count of shipments in the portlets includes both sales order and transfer order shipments.
- You can group different shipment statues under
complete,inProgressandnotStartedcategories. By default, this is implemented forPickup in store
andShip from store
orders forshipmentStatusconfiguration. However, grouping different SLA categories underoverdue,dueSoonandwithinSLAis not recommended. - You can add or remove categories from
slaandshipmentStatusconfigurations. However, the number of categories and their names should be same undershipFromStoreandpickupInStore. - For the new categories added under
sla, you must define the corresponding label, css and icons. Otherwise defaults details are displayed. - Additionally, the
slacategories defined in the file must be configured for the organization in Sterling Business Center. Otherwise, the charts are not displayed and a message indicating invalid configuration is displayed.
| Status Code | Description |
|---|---|
1100.70.06.10 |
Ready For Backroom Pick |
1100.70.06.20 |
Backroom Pick in Progress |
1100.70.06.50 |
Ready For Packing |
1100.70.06.70 |
Shipment Being Packed |
1100.70.06.30 |
Ready For Customer |
1400 |
Shipment Shipped |
1300 |
Packed |
| Order Status | Grouping criteria |
|---|---|
| Not Started | All orders in Ready For Backroom Pick status. |
| In Progress |
|
| Completed |
|
| SLA | Grouping criteria |
|---|---|
| Overdue | Time remaining for order completion is 0 minutes or less. |
| Due Soon | Time remaining for order completion is 30 minutes or less. This group includes orders of medium and high priority. |
| Within SLA | Time remaining for order completion is more than 30 minutes. |
Customizing the SLA icons
- Configure service level indicators for SLA priority by using the Sterling Business Center. For more information, see Configure service level indicators.
- The path and extension of the SLA images are truncated and the image name is used as the CSS
class name to define the color for the SLA priority icons. For example, in the path
wsc/resources/css/icons/images/timeLeftOverdue.png, the
timeLeftOverduebecomes the CSS class name and the color for the icon can be defined as:.timeLeftOverdue{color:#DD1D32!important;fill:#DD1D32!important} - To define shapes for the SLA icons, refer the procedure in the Replace the existing
font icons topic. However, while following the procedure, you need to modify the code in
accordance with the icons that you want to replace. For example, for the
timeLeftOverdueicon, you may have the code as.app-icon-timeLeftOverdue{...}.
- Ensure that the SLA configuration in the
manager-dashboard.jsonfile is in the DB locale. - Ensure that the
combinedStatusArrayandstatusUIDefaultsfields match. - By default, the fields contain entries for the English DB locale, which is the base locale. If
the base DB locale is in any other language, the following entries should be changed to base locale
literals in the
manager-dashboard.jsonfile:Time Left Overdue Time Left High Priority Time Left Medium Priority Time Left Low Priority
- The Order Status charts and SLA charts are generated only for sales orders.
- To calculate the number of orders in
Not StartedandIn Progressstatuses, current day orders and backlog orders from previous day are considered. - To calculate the number of orders in
Completedstatus, completed orders that belong to current date or a date in future are considered. - 12:00AM and 11:59PM are considered as the start and end of a day respectively.
- Data on the dashboard is automatically updated every 5 minutes by default and the time interval can be configured in the Sterling Business Center.
Viewing shipments
Ship from Storeor
Pickup from Storeportlet, when the user clicks a legend icon or a region on the Order Status chart or SLA chart, a combination of mashups is called which in turn invokes a service.
| Mashups | Function |
|---|---|
shipmentList_getShipmentListByStatus_sla |
Retrieves the list of shipments for the required delivery method for SLA. Invokes the
getShipmentList API. |
shipmentList_getShipmentListByStatus_orderstatus
|
Retrieves the list of shipments for the required delivery method for Order Status. Invokes
the getShipmentList API. |
sla_getShipmentCountForGivenStatuses |
Retrieves the number of shipments under each SLA category defined in the
manager-dashboard.json file for Ship from Store or Pickup from Store orders.
Invokes the YCD_GetShipmentCountForStatusList service. |
orderstatus_getShipmentCountForGivenStatuses |
Retrieves the number of shipments under each order status category in the
manager-dashboard.json file for Ship from Store or Pickup from Store orders.
Invokes the YCD_GetShipmentCountForStatusList service. |
- If SLA chart is clicked, the
shipmentList_getShipmentListByStatus_slaandsla_getShipmentCountForGivenStatusesmashups are aggregated and invoked. - If Order Status chart is clicked, the
shipmentList_getShipmentListByStatus_orderstatusandorderstatus_getShipmentCountForGivenStatusesmashups are aggregated and invoked.
Navigation between the tabs corresponding to status or SLA categories invokes the appropriate mashup based on whether the user arrived at the shipments list page from the SLA chart or Order Status chart.
Device-specific details
Manager dashboard can be viewed on both the desktop and mobile version of the application.
Implementation
The following section describes the rules that you must configure.- A store user should have the
Manager Dashboard Pickup in Store Portlet
andManager Dashboard Ship from Store Portlet
resource permissions. For information about administering user group permissions, see the Administering user group permissions. - Configure the service level indicators appropriately. For more information, see Configure service level indicators
- The manager dashboard is refreshed based on the polling interval configured in Sterling Business Center. For more information, see Polling interval configuration.