Font size

Process Modeling Library blocks

Source Generates agents.
Sink Disposes incoming agents.
Delay Delays agents by the specified delay time.
Queue Stores agents in the specified order.
SelectOutput Forwards the agent to one of the output ports depending on the condition.
SelectOutput5 Routes the incoming agents to one of the five output ports depending on (probabilistic or deterministic) conditions.
Hold Blocks/unblocks the agent flow.
Match Finds a match between two agents from different inputs, then outputs them.
Split For each incoming agent (“original”) creates one or several other agents-copies.
Combine Waits for two agents, then produces a new agent from them.
Assembler Assembles a certain number of agents from several sources (5 or less) into a single agent.
MoveTo Moves an agent from its current location to new location.
Conveyor Moves agents at a certain speed, preserving order and space between them.
ResourcePool Provides resource units that are seized and released by agents.
Seize Seizes the number of units of the specified resource required by the agent.
Release Releases resource units previously seized by the agent.
Service Seizes resource units for the agent, delays it, and releases the seized units.
ResourceSendTo Sends a set of portable and/or moving resources to specified location.
ResourceTaskStart Defines the start of the flowchart branch modeling the task process for resource units (usually it is a resource preparation process).
ResourceTaskEnd Defines the end of the flowchart branch modeling the task process for resource unit(s) (usually it is a wrap-up process).
Downtime Defines either maintenance, repairs, or any other kind of activity that interrupts usual resource tasks for resources specified in a ResourcePool block.
Enter Inserts agents created elsewhere into the flowchart.
Exit Accepts incoming agents.
Batch Accumulates agents, then outputs them contained in a new agent.
Unbatch Extracts all agents contained in the incoming agent and outputs them.
Dropoff Extracts the selected agents from the contents of the incoming agent.
Pickup Adds the selected agents to the contents of the incoming agent.
RestrictedAreaStart Limits number of agents in a part of flowchart between corresponding area start and area end blocks.
RestrictedAreaEnd Ends an area started with RestrictedAreaStart block.
TimeMeasureStart TimeMeasureStart as well as TimeMeasureEnd compose a pair of blocks measuring the time the agents spend between them, such as “time in system”, “length of stay”, etc.
This block remembers the time when an agent goes through.
TimeMeasureEnd TimeMeasureEnd as well as TimeMeasureStart compose a pair of blocks measuring the time the agents spend between them.
For each incoming agent this block measures the time it spent since it has been through one of the corresponding TimeMeasureStart blocks.
ResourceAttach Attaches a set of portable and/or moving resources to the agent.
ResourceDetach Detaches previously attached resources from the agent.

Modeling warehouses and storages

Note: This is a legacy functionality. We recommend that you use Material Handling Library blocks (Store, Retrieve, Storage System) and library-specific space markup shape Storage to model warehouses and storages.

RackSystem Models a storage zone containing a set of racks (defined by PalletRack shapes), providing centralized access and managing of racks.
RackPick Picks an agent from a cell of a rack (PalletRack) or a storage zone (RackSystem) and moves it into the specified network node.
RackStore Places an agent into a cell of the specified rack (PalletRack) or storage zone (RackSystem).


PML Settings Defines some auxiliary settings either related to all library blocks or configuring the behavior of some blocks.
Wait This block is like Queue block with one exception: it supports manual retrieval (you need to call free(), or freeAll(). It has no ordering (except the case when preemption occurs, if the latter is turned on).
SelectOutputIn Both with SelectOutputOut acts as two halves of large multi-exit SelectOutput block.
SelectOutputOut Both with SelectOutputIn acts as two halves of large multi-exit SelectOutput block.
PlainTransfer A place to write some action when agent passes through some point of your flowchart.
How can we improve this article?