Skip to content

Send

SEND creates one or more new entities somewhere else in your model. The entity running the logic stays where it is and carries on with its own work.

SEND Widget TO Inspect

That creates one Widget at the activity called Inspect. Nothing else about the entity that ran the line changes.

Put a count in front of the entity name.

SEND 3 Widget TO Inspect

The count is optional. Leave it out and you send one. You can also use a variable or an attribute instead of a fixed number, which is how you send an amount that changes as the model runs.

SEND v_BatchSize Widget TO Inspect
SEND a_OrderQty Widget TO Inspect

A count of zero sends nothing and is not an error, so a variable that happens to reach zero simply does nothing that time round.

The destination can be an activity, a queue, a batch or unbatch element, or a gate.

Sending to a gate works the way arriving at a gate always works. If the gate is open the entity passes straight through to whatever is downstream. If it is closed the entity waits in the gate queue until it opens. If the gate queue is full the entity is turned away and recorded as Entry Denied.

Names with spaces need quotes on either side.

SEND 3 "Sub Assembly" TO "Final Inspection"

An entity you send arrives exactly like any other entity. It is not given special treatment.

If the destination has an input queue, the entity joins that queue first, even when the activity itself is free. If that queue is already full, the entity is turned away and recorded as Entry Denied. If the destination is off shift and set to turn arrivals away, the same applies.

This matters when you send several at once. SEND 3 Widget TO Inspect will fill the remaining room and turn away whatever does not fit. That is normal behavior rather than a fault, and the entities that were turned away appear in your Entry Denied figures.

These two look similar and do different jobs.

SEND EntityType TO LocationROUTE TO Location
What movesA brand new entity is created at the destinationThe entity running the logic moves there itself
The entity running the logicStays put and finishes its logicLeaves, so the rest of the logic does not run
Number of entitiesGoes upStays the same

A useful way to hold it: ROUTE TO means “I am going there now”, so your remaining logic goes with you and does not run. SEND means “someone else should go there”, so you stay and finish.

The same keyword does a second, unrelated job. With no destination, SEND switches on a signal.

SEND "QualityHold"

ProcessModel tells the two apart by looking for the word TO on the line. If TO is there, you are sending an entity. If it is not, you are sending a signal. A signal name that happens to contain the word “to” inside its quotes is still read as a signal, so SEND "Route to Inspect" switches on a signal and sends nothing anywhere.

A SEND line that is nearly but not quite correct now reports a problem instead of doing nothing quietly.

SEND 3 Widget no destination
SEND Widget Inspect the word TO is missing

Each of these reports a problem and moves nothing. Earlier versions accepted these lines in silence and switched on an unrelated signal instead, which left the model looking broken with nothing to explain why.

An unknown entity type, an unknown destination, or a gate with nothing downstream all report a problem in the same way. None of them stops the run.