Product Filtering

Product filters are used to filter the incoming products to the process. The filters are applied with TransportIn, TransportPatternIn, StartTransportIn statements and Assembly Editor.

The filter example below accepts only “VC_Cylinder” Product Types that also have a string type property named “ProductID” with a value of “111”.

1. Create a new filter
2. Active filters
3. Shows all active filters
4. Operator to combine multiple filters
5. Delete filters

 

See the filter types:

Product Type

Incoming products are filtered based on the Product Type.

Property

Description

FilterName

Name

AcceptedProductTypes

A list of accepted Product Types
AcceptedFlowGroups

A list of accepted Flow Groups

 

Product Property

Incoming products are filtered based on their property values, which are compared against a target value.

Notice that product properties belong to the Product Type, and they are not the same as component properties.

Property

Description

FilterName

Name

TargetProperty

The product property of the incoming product that will be evaluated.

ComparisonOperator

Defines how the property value is compared against the target value.

ComparisonValue

This is the property's target value and must be matched when accepting products.

Note: this field is an expression. It can have a constant value, but it can also read Process Variables that can be extended with Process Statement Expressions

Note: strings are written with quotation marks, for example “my_string

FilterDiagnosticMode

Defines if a notification is given when the property can’t be found. In any case, a missing property will result in rejection of the incoming product.

 

Expression

Incoming products are filtered based on the boolean expression. The product is accepted when the expression is true.

Property

Description

FilterName

Name

ProductAccessor

Gives a name to the incoming product that can later be used in the expression. The name can be for example a “Product

ExpressionProperty

The expression will be evaluated for each incoming product and is expected to result in True or False value. Some example expressions below:

Product.Length <= MaxLength

Product.SKU == “ABCD1234”

Note: see Process Statement Expressions

Note: strings are written with quotation marks like “my_string

FilterDiagnosticsMode

Defines if a notification is given when the property can’t be found. In any case, a missing property will result in rejection of the incoming product.

 

Specific Product

A filter that only accepts a specific Product Instance or a list of Product Instances. Note that a Product Instance is a product created during the simulation run-time.

A possible use case: specific products leave the process and later return to the same process. With this filter, we can accept only the same products to return to the process.

 

Property

Description

FilterName

Name

ProductVariableName

A Product Variable's name used in the Process Editor program, for example, “ProductIn”.

This Product Variable defines the accepted Product Instances.

CompareMode

This mode option is only relevant when Product Variable is a list of more than 1 Product Instance. With only 1 Product Instance, the mode option has no difference.

"Compare To Any"

If any Product Instance match is found, the incoming product is accepted.

"Compare In Order"

The incoming product must match the next Product Instance in the order defined by the Product Variable.