1. Home
  2. /
  3. Web Enablement
  4. /
  5. Web Enablement – SOP
  6. /
  7. Product browsing and searching

Product browsing and searching

This Standard Operating Procedure (SOP) outlines the process and options for website to facilitate web user browsing or searching for products, then viewing more detailed information about that product.

Procedure

It is your responsibility to ensure that you understand this procedure before performing the following tasks.

Note

Deviations from this procedure should be covered by procedures written by your company. Before performing any tasks please ensure all the business rules are set-up accordingly. 

Process overview

There are 2 key alternatives to browsing/finding products on the web site:

  • Many clients decide to maintain a database of at least basic item details and images directly on the web site application. This allows for offline processing capability if/when web services are down, and also allows product data to be built into external web search engine results.
    • In order to achieve this, clients will generally create their own specific extracts or interfaces from IP1 data, perhaps combining with other external data (eg. From source publisher, from Bibliographic applications, etc.)
    • Typically, even if this approach is used, the price & availability data held externally to IP1 will be generic in nature and perhaps only updated daily.
    • It is recommended, to still use the viewProduct web service to retrieve price & availability data that is real time and relevant to the specific customer login.
  • Other clients may elect to use the real time IP1 search and/or catalogue functions via web services.
    • searchProduct
      • Ip1 has a comprehensive item search feature that can be configured with:
          • Search Field Group(s)
            • Refer TMSDS / IM-ALFGP configuration
            • Each group identifies which field(s) in IP1 will be included in a search. For example.
              • 001 = Item code/description only
              • 002 = Series description
              • 003 = Release date
              • etc….
              • 999 (default) = “all” fields
          • Up to 3 subset levels
            • Subset levels can be used to filter results to specific groups of items based on item hierarchy levels or item classification codes.
          • These field groups and subset levels will be set up by the IBS consultant during implementation of IP1 after determining how the client may wish to search items.
          • The setup will need to be conveyed to the web developer for each implementation so that they know what groups and levels can be used.
    • searchCatalogue
      • Catalog(s) can be built and maintained in IP1 and used to organize products into a folder structure for browsing.
      • The folder structure can be designed by the business to meet their needs.
      • Each folder may contain further sub-folders and/or lists of items
      • The item lists may be sorted manually by the user maintaining the catalog, or they may elect to use one of the automatic sort options which allow for sort by different combinations of:
        • Item description
        • Author name
        • Recommended Retail Price
      • Sub-folders may also be sorted manually or automatically by combinations of:
        • Catalogue Id
        • Catalogue Type
        • Catalogue Description
      • Different catalogues can be utilised by setting a different starting (top) level folders.
      • IP1 configuration (TMSDS/CAT-TOP) allows a default top level to be set by website and customer classification.
      • Website can manually override the starting folder.
      • Website can nominate whether the web service should only return single level of contents for that folder, or return all selected branch including the leaves.
      • Website can nominate if it wants the web service to include price & availability information in the response.
  • A mixture of above methods can also be used.
  • Regardless of methods above, the website would normally execute viewProduct to retrieve real time product pricing & availability specific to the current customer linked to this session. This web service also returns other information about the product including:
    • Item descriptions
    • Item hierarchy and grouping information
    • Item classification(s) information
    • Contributors
    • UOM
    • Links to images or other related documents for this item
    • Stock availability information (quantity available, release date, etc)
    • Stock pricing information
    • Component information for packs/systems

Website stores & manages product information

  1. Website is updated regularly (daily?) from IP1 or other external sources with product information.
    • Customised interface to be built!
  2. Website provides browsing and/or searching capability over it’s internal database and uses this to present the web user with list of item(s) for selection.
  3. User selects product to view details
  4. Optional step
    • Website executes viewProduct against the item being queried.
    • Along with other data, the response values stockQty and RRP are used to display live price and availability to the user.
  5. User specifies desired QTY and selects ‘Add to Cart’, website executes addCartLine

Website utilizes catalogue to browse items

  1. Web user selects ‘Browse’ button.
  2. Optional step: Website may optionally allow user to nominate a specific catalogue to browse (assumes this information has been hard coded in website or separately interfaces).
  3. Website executes searchCatalogue and presents results to user
  4. User selects product to view details
  5. Optional step
    • Website executes viewProduct against the item being queried.
    • Along with other data, the response values stockQty and RRP are used to display live price and availability to the user.
  6. User specifies desired QTY and selects ‘Add to Cart’, website executes addCartLine.

Website utilizes IP1 search facility to find items (all items)

  1. Web user selects ‘Search’ button.
  2. Website allows user to key search data with any mix of words
  3. Website executes searchProduct passing Keyword, and presents results to user.
    • Group not passed in the input. This will use default field group configured in IP1 (normally “All” fields)
    • subsetLevel1, subsetLevel2, subsetLevel3  not passed in the input. No filter applied.
  4. User selects product to view details
  5. Optional step
    • Website executes viewProduct against the item being queried.
    • Along with other data, the response values stockQty and RRP are used to display live price and availability to the user.
  6. User specifies desired QTY and selects ‘Add to Cart’, website executes addCartLine.

Website utilizes IP1 search facility to find items (filtered)

This scenario assumes that the Website has hardcoded information about which search field groups and which subsetLevel filters have been configured.

  1. User selects “Advanced Search” on the web page.
  2. Website presents input form for user to make their search selections:
    • Drop down list of available field groups. User must choose only one.
    • One input field for each of the 3 subset level filters (assuming all 3 have been configured)
      • These filters are all optional. User may elect to fill in any combination of these, or leave all unselected.
      • For each of these 3 filters, website allows user to ‘prompt’ for valid values.
        • Website executes getBusinessRule with relevant control table identifier for each of the 3 filter levels (based on configuration implemented).
        • For example, if the first subset level has been configured to item hieararchy level 1, then website would pass:
          • applicationId = TMSDS
          • keyId = IM-IL1
        • Website would then display the returned codes/descriptions available
        • User selects one of these entries and the website stores the selected code.
    • Search text (keyword)
  1. Website executes searchProduct passing Keyword, Group and subsetLeveln  selections and presents results to user
  2. User selects product to view details
  3. Optional step
    • Website executes viewProduct against the item being queried.
    • Along with other data, the response values stockQty and RRP are used to display live price and availability to the user.
  4. User specifies desired QTY and selects ‘Add to Cart’, website executes addCartLine.

Additional notes and scenarios variations

Customer specific pricing & availability

When using the Product web services, all results returned are specific to the customer account that is linked to the current web session.

  • Pricing & discounts are specific to that account
  • Product availability will take into account any restriction rules in place for that account

This is true even for B2C sessions, though these are normally linked to fairly generic ‘web sale’ customer accounts which would typically use recommended retail pricing.

It is therefore quite important for B2B users to log on at start of their session to ensure they are seeing relevant pricing & availability for their account!