Fluent Commerce Logo
Docs

NotifyVirtualCatalogueOnNetworkMatch

Rule

Changed on:

23 Oct 2024

Overview

Conditionally send an event to the Virtual Catalog (specified by its Reference) if it passes the "Network-Match-Check".A Virtual Catalog passes the "Network-Match-Check" when its Network(s) finds a match with a given Inventory Position Location Network(s).The `Rule NotifyVirtualCataloguesByRefsOnNetworksMatch` is a newer version of the `NotifyVirtualCatalogueOnNetworkMatch`. Moving forward, please use the `NotifyVirtualCataloguesByRefsOnNetworksMatch` instead of the `NotifyVirtualCatalogueOnNetworkMatch`.
Plugin NameInventory Reference Module
Namespace[[account.id]].globalinventory
The Inventory Reference Module is the foundation for inventory related implementations. It provides reference Workflows for inventory ingestion and processing. Extensible by design, use this Module as a base to build a solution to the needs of your customers.The Inventory Module includes the following areas:
  • Product Catalogue workflow
  • Inventory Catalogue workflow
  • Control Group workflow
  • Virtual Catalogue workflow

UI Description

Forward the event with name {eventName} to the virtual catalogue with ref {virtualCatalogueRef} if the current Inventory Positions location’s network ref is listed in the virtual catalogue's networkIds.

Accepts

  • INVENTORY_POSITION

Actions

Rule parameters

NameTypeDescription
`eventName``String`The name of the event to be triggered
`virtualCatalogueRef``String`The reference of the virtual catalog to be notified

Event attributes

This Rule does not expect any Event attributes.

Exceptions

  • This Rule throws a `PropertyNotFoundException` when the Rule parameter(s) is not provided.
  • This Rule throws a `RubixException` when the given Virtual Catalog (specified in the `virtualCatalogueRef` Rule parameter) can not be found or does not have Networks configured properly.

Configuration example

1{
2  "name": "[[account.id]].globalinventory.NotifyVirtualCatalogueOnNetworkMatch",
3  "props": {
4    "eventName": "VirtualCatalogueEvent",
5    "virtualCatalogueRef": "VC_ref"
6  }
7}

Detailed Technical Description

This Rule conditionally produces a SendEventAction. The Rule condition is defined by the "Network-Match-Check", including the following steps:
  • The Rule will get the Inventory Position.
    It stops the execution when the Inventory Position can not be found.
  • The list of Networks (by `id`) assigned to the loaded Inventory Position Location will be retrieved.
  • The Rule then gets the Virtual Catalog specified in the `virtualCatalogueRef`, including its list of associated Networks (stored in the `networkIds` field).
  • The Networks lists mentioned (associated with the Location (point 2) and the Virtual Catalog (point 3)) will be compared. The Rule condition is met when any match case occurs. 
  • Finally, the event `{eventName}` is sent to the Virtual Catalog if it passed the "Network-Match-Check".
The generated event contains the following event attributes:
ParameterDescriptionNotes
`ref`Inventory Position referenceLegacy attribute
`locationRef`Location referenceTaken from the Inventory Position
`productRef`Product reference Taken from the Inventory Position
`inventoryPositionRef`Inventory Position referenceTaken from
`getEvent().getEntityRef();`
`inventoryCatalogueRef`Inventory Catalog referenceLegacy attribute

Version History

2024-10-28

v.24.10.28

This Rule has been extended with a pagination logic to ensure correct execution when a given Location belongs to more than 10 Networks, and the Virtual Catalog to be updated has a Network outside the first 10 Networks fetched.The Rule Version refers to the Product Release Version.
2023-08-02

v2.0.0

refers to the plugin