Fluent Commerce Logo
Docs
Sign In

LoadInventoryPosition

Rule

Changed on:

3 July 2024

Overview

Forward event {eventName} (inline event) with the attribute 'inventoryPositionExists' set to true or false if the inventory position exists or not respectively.

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 event {eventName} (inline event) with the attribute 'inventoryPositionExists' set to true or false if the inventory position exists or not respectively.

Accepts

  • INVENTORY_CATALOGUE

Actions

  • This rule produces a SendEventAction with name {eventName} as provided in rule Input Parameters

Rule parameters

Parameter

Type

Description

`eventName`

`String`

The name of event to be triggered

Event attributes

Name

Type

Description

Required?

inventoryPosition

Array

One single item of inventory batch request

Required

Exceptions

This rule will throw a RubixException if 

`{eventName}`
 property is not provided.

Configuration example

1{
2  "name": "[[account.id]].globalinventory.LoadInventoryPosition",
3  "props": {
4    "eventName": "CheckInventoryPositionExists"
5  }
6}

Language: json

Detailed Technical Description

Based on the inventory position 

`ref`
 (from inventory batch) and inventory catalogue ref (from event root entity ref) the rule loads the corresponding inventory position in one GraphQL API request. The rule then adds all the following information into event attributes and produces one 
`SendEventAction`
 with the event 
`{eventName}`
.

Event Attribute Key

Event Attribute Value

type

inventoryPosition.type (from incoming event attributes)

ref

inventoryPosition.ref (from incoming event attributes)

qty

inventoryPosition.qty (from incoming event attributes)

productRef

inventoryPosition.productRef (from incoming event attributes)

locationRef

inventoryPosition.locationRef (from incoming event attributes)

inventoryPositionStatus

inventoryPosition.status from GraphQL query*, otherwise set to CREATED

inventoryPositionRef

inventoryPosition.ref from GraphQL query*, otherwise generated to 

`<productRef>:<locationRef>:DEFAULT`

inventoryPositionOnHand

inventoryPosition.onHand from GraphQL query*, otherwise set to 0

inventoryPositionExists

TRUE if position exists, FALSE if position doesn't exist

correctedQty

inventoryPosition.correctedQty (from incoming event attributes)

inventoryQuantityExists

TRUE if quantity exists, FALSE if quantity doesn't exist

inventoryQuantityTypes

The List<String> of all the inventory quantity types that exist for the given inventory position

*The first option will occur when an Inventory Position already exists, otherwise the second option will occur.

Version History

2024-07-04

v24.7.4

Refers to the Product Release Version

2023-11-02

v1.0.0

refers to the plugin

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