Products

The Product Instantiable Model (users.%.models.product) is part of Iotellect Monitoring MES Core and defines all products managed in the system. Product instances appear at the root of the System Tree.
This model contains several variables: Product Properties, Measurement Units, and Unit Conversion.

Variables

Product Properties Variable

The Product Properties variable (productProperties) defines the basic attributes of a product.

Field

Type

Description

description

String

Detailed description of the product.

productType

String

Product type — drop-down list. The default configuration includes several predefined product types:

  • end — finished products manufactured for customers. End products can be produced using various internal recipes.

  • detail — components manufactured internally but not distributed externally. Details are used to assemble finished products.

  • material — raw materials not produced within the enterprise but supplied externally. Materials have no production recipes but serve as input products in manufacturing processes.

  • by — by-products — planned production waste inevitably generated during specific technological operations. By-products have no dedicated recipes but can occupy storage space and be reused as input materials for other processes.

  • co — intermediate products — blanks or semi-finished components of end products or details. An intermediate product is created and consumed within the same production segment and has no standalone recipe.

  • other — other products (see Materials).

productForm

String

Product form — drop-down list. The default configuration includes:

  • simple — used for discrete products measurable in units.

  • solid — used for non-discrete products in solid state (e.g., bulk unpackaged coal).

  • liquid — used for liquid-state non-discrete products.

  • gas — used for gaseous-state non-discrete products.

  • other — see simple form.

isPerishableProduct

Boolean

Indicates whether the product has a limited shelf life.

shelfLifeTime

Long

Storage time of the perishable product in milliseconds.

storageUnitValidityExpression

String

Validity expression determining whether a product can be stored in a specific storage cell.

Default context — storage cell.

Default variables:

  • {product} — product object;

  • {quantity} — product quantity;

  • {measurementUnit} — measurement unit of the quantity;

  • {storage} — current storage content.

minBatchSize

Double

Minimum producible batch size for the product.

minBatchMeasurementUnit

String

Measurement unit for the minimum batch quantity.

maxBatchSize

Double

Maximum producible batch size for the product.

maxBatchMeasurementUnit

String

Measurement unit for the maximum batch quantity.

Measurement Units Variable

The Measurement Units variable (measurementUnits) defines the units in which a product can be measured.

Unit Conversion Variable

The Unit Conversion variable (unitConversion) specifies the conversion rules between different product measurement units.

Field

Type

Description

measurementUnit

String

Measurement unit (see Measurement Units Instantiable Model).

equalCount

Double

Product quantity equivalent to one unit of the base measurement unit.

equalMeasurementUnit

String

Target measurement unit used for conversion.

Standard unit conversion rules (e.g., 1 kg = 1000 g) must be entered into the unitConversion variable for correct system operation. Reverse conversion rules may be omitted.

Core Functions

Function: Conversion of units of measurement

Converts a specified product quantity from one measurement unit to another.

Function:

getUnitConversion

Permissions:

Available at the Observer permission level

Input Records:

1

Input Format:

Field

Type

Description

quantity

Double

Product quantity.

fromUnit

String

Source measurement unit.

toUnit

String

Target measurement unit.

Output Records:

1

Output Format:

Double

Function: Get Product Recipe

Retrieves the product recipe.

Function:

getProductRecipe

Permissions:

Available at the Observer permission level

Input Records:

1

Input Format:

Field

Type

Description

quantity

Double

Product quantity.

measurementUnit

String

Measurement unit of the product.

storageStatus

Data Table

List of storage units and their contents.

rootProductionEntity

String

Root production entity.

commercialOrder

Data Table

Commercial order data.

Output Records:

1

Output Format:

String

Function: Get Available Storage Units

Returns a list of storage units suitable for storing a given product based on their current status.

Function:

getAvailableStorageUnits

Permissions:

Available at the Observer permission level

Input Records:

1

Input Format:

Field

Type

Description

rootProductionEntity

String

Root production entity.

Output Records:

0...unlimited

Output Format:

Field

Type

Description

storageUnit

String

Storage unit context.

storageType

String

Storage unit type.

storage

Data Table

List of lots stored in the unit.

Function: Get Storage Suitability

Returns the suitability of a storage unit for storing a product batch based on the storageUnitValidityExpression.

Function:

getStorageSuitability

Permissions:

Доступно на уровне разрешений наблюдателя

Input Records:

1

Input Format:

Field

Type

Description

storage

String

Storage unit.

dtStorage

Data Table

Storage contents.

quantity

Double

Product quantity.

measurementUnit

String

Product measurement unit.

Output Records:

1

Output Format:

Boolean

Was this page helpful?