Implementing product details
A store associate can view details about a product by clicking its image or description. This section describes the APIs, services, and other components that are used to implement product details.
The Product details panel that is displayed differ based on whether you are in the Customer service view or in the Order fulfillment or Inventory management menus within Sterling Store Engagement.
Product details panel from Customer service menu
- Customer service > Product search. You can search for a product by selecting . If there are multiple search results, click the product image or description from the product search results page to view more details. If the search returns only one result, the Product details page is displayed directly.
- Order search results and customer profile pages. You can view product details from the order search results and customer profile pages, by clicking a product image or description.
- The
getCompleteItemListAPI is called to retrieve the details when the Product details panel is displayed. - The Product details panel displays product SKU, price details, and the availability per delivery methods, and four accordion panes displaying Product variants, Product description, Related products, and In-store inventory details. You can also click the product image to view more images, if available.
- If you have the
Find product (ISF000044)resource permissions assigned, a View details button is displayed. Click View details to open the Product details page. You can add products to the cart and place order from this page. - The behavior is the same when you use the global search option to search for products, orders, or customers.
Product details panel from Order fulfillment, Inventory management, and Configuration menus
- The
getCompleteItemListAPI is called to retrieve the details when the Product details panel is displayed. - The Product details panel displays product SKU, price details, availability per delivery methods, and two accordion panes displaying the product description and in-store inventory details. You can click the product image to view more images, if available.
Solution
- The Product details panel is implemented as
product-details-modal.component.htmland is a part of theapp-commonmodule. - The Product details panel is added to various components by using
showProductDetailsdirective anditem Idanduommust be passed as input to this directive. You can pass these values in this format:[isfShowProductDetails]="{itemID: itemID, uom: UnitOfMeasure}".By default, this implements the Product details panel that corresponds to the Order fulfillment, Inventory management, and Configuration menus.
To implement the Product details panel for the Customer service view, you must pass
viewType='customer'to the directive. - The pane on the Product details panel, which displays the primary product
details is loaded by using the configuration in customer-view-details.config.ts
or fulfillment-view-details.config.ts file based on the view, from the
primaryDetailobject. - The accordion panes of the Product details panel is a part of the main page
component. The items in the accordion panes are loaded by using the configuration object having an
array of
accordionItems.Each item in the object must contain the following properties:id. Unique id for the item, which can be used to expand that accordion pane based on the condition or to handle data emitter logic in parent container by using switch case.tid. Thetidto use for testing.component. Optional. This is dynamically loaded. You do not have to pass thecomponentproperty if you do not want to display this item.displayBundleKey. The title for the accordion pane.lazyLoad. Optional. Indicates whether to load the accordion component initially or upon expanding the component. Default value isundefined.
- To add a dynamic accordion title, add a
valueproperty to the configuration object and it must be used as a translation parameter.
Evaluation of carry order line availability
Sterling Store Engagement and Store Inventory
Management support the pickup, ship, and carry line fulfillment
options. The getItemAvailabilityForStore API checks the availability of the
products in stores. The availability of products with carry order lines is computed differently by
the getItemAvailabilityForStore API depending on whether Sterling Store Engagement is
integrated with IBM® Sterling Global Inventory Visibility or IBM Sterling Intelligent Promising Inventory
Visibility.
- When integrated with IBM Sterling Global Inventory Visibility
- Carry lines are treated as pickup for the store in which the user is currently logged in. The
delivery method is passed as
PICKwhen the availability of a product is checked.
- When integrated with IBM Sterling Intelligent Promising Inventory Visibility integration
- Sterling Intelligent Promising Inventory
Visibility only supports pick and ship delivery methods for checking
availability. Hence, checking the availability of carry lines in Sterling Intelligent Promising Inventory
Visibility fails. To avoid checking the availability of the carry lines with Sterling Intelligent Promising Inventory
Visibility, you must set the
yfs.isf.ycd.suppressCarryAvailabilityCheckToIVproperty toY.