Fluent Commerce Logo
Docs
Sign In

Improving Search, Filtering, and Aggregations across the Inventory Domain

Release

Author:

Kirill Gaiduk

Changed on:

25 Sept 2024

Target release date:2024-09-25
Release status:Released

Description

Explore a number of improvements that have been made to the GraphQL APIs, which allow for new and better ways to query Inventory data:

  • Perform advanced searches for Product, Inventory, and Virtual Catalogues as well as Control Groups by their related Retailers, including scenarios with multiple Retailer references specified.
  • Easily understand and monitor your actual state of Inventory with the following additions:
    • Multi-select filtering for:
      • Inventory Positions by Inventory Catalogues
      • Virtual Positions by Virtual Catalogues
    • Comparison and range filtering for: 
      • Inventory Positions by Stock on Hand (SOH) quantity
      • Virtual Positions by Available to Sell (ATS) quantity
  • Analyze your Stock on Hand results faster with handy Inventory Quantity Aggregations by Type, Status, and Date Range per Inventory Position, with support for customer-specific Inventory Quantity Types and Statuses.
  • Enhancing search performance across the Inventory Domain.
  • And a fix for
    `NO_MATCH`
    Events, eliminating the risk of Close Matches feature exceptions.

📢 Future Development Announcement

The Improvements highlighted above are the required Backend changes that will drive the planned User Interface capabilities. They are the first step towards a Unified View of Inventory - a clear and intuitive User Interface that is fine-tuned to Business Optimizers' operational and strategic needs, thereby streamlining your workflow and supporting decision-making with relevant tools and data visualization.

Stay tuned for more updates!

Changelog

GraphQL API

  • GraphQL queries: 
    `productCatalogues`
    ,
    `inventoryCatalogues`
    ,
    `virtualCatalogues`
    , and
    `controlGroups`
    have been extended with the
    `retailerRefs`
    argument support to enable case-insensitive exact-match search by single and multiple Retailer References.
  • GraphQL queries:
    `inventoryPositions`
    ,
    `inventoryQuantities`
    , and  
    `virtualPositions`
     have been improved at all the levels of the GraphQL tree with the following:
    • `catalogues`
      arguments, enabling filtering by multiple Inventory and Virtual Catalogues.
    • `IntRange`
      comparison arguments, providing
      `from`
      (>=) and
      `to`
      (<=) inputs for advanced filtering by quantity:
      • `onHandRange`
        input field for
        `inventoryPositions`
      • `quantityRange`
         input field for
        `virtualPositions`
  • `InventoryPosition`
    type has been extended with a new
    `quantitiesAggregate`
    field, enabling Inventory Quantity Aggregations by Type, Status, and Date Range per Inventory Position.

Limitations

  • Pattern search using wildcards is not supported for the retailerRefs argument in the productCatalogues, inventoryCatalogues, virtualCatalogues, controlGroups GraphQL queries. Additionally, Control Groups, Products, Inventory, and Virtual Catalogues without a specified Retailer reference will not appear in the search results.
  • The catalogue argument (inventoryPositions example) has been deprecated. The new catalogues argument is recommended for inventoryPositions, inventoryQuantities, and virtualPositions GraphQL queries.
  • Inventory Quantity Aggregation GraphQL queries have increased Complexity Weighting of 10.
Released capability depth:Enhancement
Release bundle / Capability type:Platform

Copyright © 2024 Fluent Retail Pty Ltd (trading as Fluent Commerce). All rights reserved. No materials on this docs.fluentcommerce.com site may be used in any way and/or for any purpose without prior written authorisation from Fluent Commerce. Current customers and partners shall use these materials strictly in accordance with the terms and conditions of their written agreements with Fluent Commerce or its affiliates.

Fluent Logo