Simio Forum

#### Welcome to the Simio Forum

Welcome to the Simio Forum! Experience the full experience of the forum by becoming a Simio Insider! You must be an Insider to post on any forum!

#### New Software Release

Our latest release, Simio 11, is here!

# For each material in a Bill of materials

## Recommended Posts

The current implementation of consumption based on a bill of materials is interesting but somewhat limiting.

I'm not an expert in SIMIO and perhaps I'm failing to find a way to do this:

I create a FG from source and want to consume the respective amount of each component on its BOM. As it is, all the components will be instantly consumed when I use the consume block. However, what I want is to transfer them to a node at a given rate (and not all at once).

Imagine I have a product C that requires 1 Product A, 2 Product B and 5 Product E.

If I want to retrieve 1 of each (until required amount) each 30 seconds, how can this be done?

I thought about a logic as follows:

```//Get total number of retrievals
For each Material in C_BOM:
Total_Required_Amount = Total_Required_Amount + required_Amount[Material]
//Retrieve one of each until required amount every 30 seconds
while(Total_Transfered_Amount	for each Material in C_BOM:
if(transfered_Amount[Material]			transfer_Material_to_Node();
transfered_Amount[Material]++;
Total_Transfered_Amount++;
delay(30 seconds);
```

Has anyone ever came across a similar situation where you would have to iterate over a collection (in this case a BOM)?

I believe my explanation might be confused and if something is not understood, please ask.

##### Share on other sites

Hi,

I think there is a misunderstanding about the material. Material is an element and therefore cannot be transfered to a node.

I believe that this is because it is a more lightweight than the entity. So if you have many materials it will not consume your memory (you have one material and SIMIO just holds information about its quantity). So you can't move one quantity of material.

What you can do for visualisation purpose is to create an entity acting on behalf of one quantity of material (or more like a box full of bolts). And than move it.

There is an implementation of using BOM table and Search step to find materials to consume.