Select a product variation

A customer can ask for variations of products such as T-shirts, in terms of size and color. In such situations, a user must be able to view the allowed variations and help the customer identify the appropriate product.

Solution

The following section describes APIs, user exits, services, and other components.

The user can select a product variation in the Add Products screen, while creating or modifying an order. The getCompleteItemList API is called to display the attributes and attribute values of a model product along with primary details such as the allowed fulfillment methods and the availability of the product. The API also returns the list of allowed combinations for the selected product.

The minimum information that is required by the API is as follows:
  • The IsModelItem attribute, which indicates whether the selected product is a model product or not.
  • Organization code
  • Product ID of the model product
  • Unit of measure of the model product
  • Product price
  • Customer ID in the context of an order

The user can also add a variation from the Product Details screen. The user can browse for a model product and select the product to view its attributes and values in the Product Details screen. Once a valid combination of attributes is selected, the user can add the variation to the order.

When the user selects a valid combination of attributes and confirms the change, the getCompleteItemList API is called to retrieve the related products that are associated with the variation product. If the variation product is a bundle parent, the user can also view its components.

The user is prompted to supersede a variation product selected from the variation panel only if the model product is superseded.

When the user updates the changes, the modifyFulfullmentOptions API is called. This internally calls changeOrder and validateItemForOrdering APIs. If there is a product validation error, the changeOrder API call rolls back.

Implementation

The following section describes the rules that you must configure.
  • In Business Center, configure the following rules:
    • For a model product, configure the variation classification (for example, shirt), attributes (for example, size and color), and attribute values (for example, Small, Large, Medium, or Red and Blue). When you assign the attribute values, ensure that the combination of values for the child products of a model product are unique.
    • Define the model products, child products, and associate the model product with the variation classification.
    • Set the sequence of attributes and attribute values. The list of attributes and attribute values are displayed based on the configured sequence of the attributes.
    Note: The data types supported for the attributes are DECIMAL, TEXT, BOOLEAN, and NUMBER. Additionally, reference attributes and derived attributes are supported.

    For more information about configuring variation classification, attributes, attribute values, and its sequence, see the Sterling Business Center Product Administration.

  • For the product, you must set the asset type of the variation attribute value to ATTR_VAL_IMAGE to display the images for variation attributes. If the asset type is not configured for attribute values, the short description is displayed. For more information, see the Sterling Business Center Product Administration.

    Note: You must ensure that the following conditions are met to use the model products appropriately:
    • A model product is associated with the child products.
    • A model product is associated with a classification definition and purpose code as "Distinct Attributes".
    • A variation attribute contains attribute values.
  • The Show In UI rule must be enabled to display the associated products of a variation product. For more information about configuring the order entry rules, see the Configuring supplied and add-on solutions.
  • The "Allow Pick Up" store rule governs the display of pickup options. When the Add Products screen loads, the getRuleDetails API is called to verify whether the YCD_STORE_ENABLED rule is enabled. Only if this rule is enabled, the pickup options are available. For more information, see the Sterling Business Center System Configuration.
  • You must configure the store rules appropriately. For more information, see the Sterling Business Center System Configuration.

End-user impact

The following section describes the end-user impact of this functionality.

  • Users can view the available variations for a model product and select the preferred variations as requested by the customer.
  • When the user selects a combination of attribute values for a product, the corresponding variant details are refreshed and displayed.
  • Users can view the attribute values as buttons.