question

Regino Miguel MNR avatar image
0 Likes"
Regino Miguel MNR asked Ben Wilson commented

How to make a process read the piece label and not the pallet label?

Hello.

In my simulation I want the processors from 1-7 to read the piece's label, however, it is reading the pallet that will transport the piece through the conveyors.

I do not know why it is trying to read the pallet's label and not the piece label.

I'm attaching a picture and my simulation.

I hope you can help me and I thank you in advance.

8 processors.fsm



FlexSim 21.1.0
FlexSim 21.0.0
labelsflexsim 21.0.0processorspallets
1621546762522.png (224.4 KiB)
8-processors.fsm (62.8 KiB)
· 1
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Ben Wilson avatar image Ben Wilson ♦♦ commented ·

Hi @Regino Miguel MNR, was jason.lightfoot's answer helpful? If so, please click the red "Accept" button at the bottom of their answer. Or if you still have questions, add a comment and we'll continue the conversation.

If we haven't heard back from you within 3 business days we'll auto-accept an answer, but you can always unaccept and comment back to reopen your question.

0 Likes 0 ·

1 Answer

Jason Lightfoot avatar image
0 Likes"
Jason Lightfoot answered Joerg Vogel commented

You need

item.first.Type
· 3
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Jason Lightfoot avatar image Jason Lightfoot ♦♦ commented ·

I also notice your headers for the conveyor entry transfers' orirentation trigger are from 21.0.1 which were changed in 21.0.2 where they should then read:

Object current = ownerobject(c);
Conveyor conveyor = param(1);
Object item = param(2);
Conveyor.Item conveyorItem = conveyor.itemData[item];

and not:

Object current = param(1);
Conveyor conveyor = param(2);
Object item = param(3);
Conveyor.Item conveyorItem = conveyor.itemData[item];
0 Likes 0 ·
Julio R avatar image Julio R commented ·

As Jason has said, item.first.Type is the correct way to read the item label.

The logic behind this is that all objects like conveyors or processors in FlexSim read the item that is entering/inside the object, in this case the pallet.

With "item" in this case you are referencing the pallet. With "item.first", you are referencing the item inside the pallet, and with "item.first.Type" you are referencing the label Type of the item inside the pallet.

This logic can work with objects inside objects inside objects, like a box inside a tote inside a Pallet. To read the box label in this case you need to use item.first.first.Type (like Pallet.Tote.box.Type)

0 Likes 0 ·
Joerg Vogel avatar image Joerg Vogel Julio R commented ·

And for those of you, who want to read the second, third box label Type value, you do it with the property subnodes.

item.subnodes[2].Type
item.subnodes[3].Type

and in a nested structure like Pallet.Tote.Box.Type

item.subnodes[3].subnodes[2].Type

for 3rd Tote, 2nd Box in a Pallet.

0 Likes 0 ·