3.6.2 – Attach
See Standard Assembly video tutorial.
See Conditional Assembly video tutorial.
An Attach route causes the routing entity to be attached to an entity waiting at the destination activity or storage. The presence of another entity (routed from a different routing) at the destination signals the attach routing to occur. The other entity at the destination activity or storage is detained until the attachment occurs.
To use an analogy, the Parent (or main entity) requests a Child to join it (Attach). The Child stays put (before the attach routing) until a parent requests it. The Child then travels the attach routing and becomes part of the Parent. The Child is carried by the parent, unless specifically Detached. See Detach.
The attach action takes place prior to any activity time defined at the destination activity
If you don’t want to hold up processing entities that are behind the entity waiting to be attached, define an output queue with sufficient capacity.
After an Attach or Pickup has occurred, the attributes of the parent entity are the only attributes recognized by the system. The child’s attributes are masked until a detach occurs. To pass a child’s attributes to the parent when attaching or picking up, you must assign the child attribute to a variable. Then after the attach/pickup, assign that variable to a parent’s attribute.
Properties of Attach Routes:
- The parent entity goes to the attach location and waits for the child entities to arrive and attach.
- You can attach multiple children to the parent by using a number, variable, attribute, scenario parameter, or the word ALL in the attach route’s quantity field.
• The attach routing is the primary method of assembling entities. A Parent or main entity is the base and the attach (s) is (are) the subcomponent (s). The assembly will not move to the next activity until the subcomponent is attached.
• When the attach is coupled with the create route it acts to hold the further processing of the main entity until all of the child entities related to that parent have been attached. An order may create all of it’s components at the start of a model and then hold the order until all of the components are completed and attached.
Move Time Time to move to the next activity or storage. Any expression is valid.
Quantity The quantity of entities to be attached. If you wish to attach every entity waiting in the input queue of the activity where the attaching takes place, enter ALL . Any expression is valid. A quantity of zero results in no attachment.
Attach to Choose whether the entity is to be attached to any entity (for general assembly) or to the entity that created it (for re-attachment to the entity that Created it).
To collect statistics on any entity that has been attached to another entity, it must be Detached prior to exiting the model.
To attach all the children created by a parent, set the Quantity to ALL and the Attach To to entity that created it. This means that if some parent entities created no children, then none will be attached, while parent entities that created many entities will require all of those entities to be attached before moving to the next activity.
If the entity requesting the attach has an attribute that describes the quantity to be attached and that same attribute is used in the quantity field of the attach route, then attaching is controlled by the attribute. If the attribute of the requesting entity is set to zero, no entities are attached. If the attribute of the requesting entity is set to five then five entities will be attached. If the requesting entity carries several attributes then options of a complex assembly can be handled. At each station where assembly takes place, the corresponding attribute will determine the number of parts assembled.
Example Suppose that a software order can generate two possible options in addition to its own processing. The first option is inclusion of training which happens 70 percent of the time. The second option is inclusion of one day of consulting which happens 30 percent of the time. If the options are included, additional work needs to be completed in parallel with the order and then be inserted into the order before the shipment is released to the customer. In some instances neither training or consulting will be included. In other instances both training and consulting will be needed. In either case if something was created, it must be attached and if nothing was created the order should not be delayed.
Training orders are created using a variable quantity. See Chapter 3, Section , Common Distributions. Seventy percent of the time a need for Training will be created. For information on the create route see Chapter 3, Section 3.6.4, Create.
With the quantity set to ALL and the Attach To set to entity that created it, all children created from this parent are required to be attached before the parent will be released to the next activity.