question

Santiago T2 avatar image
1 Like"
Santiago T2 asked Santiago T2 commented

Tomar artículos de racks y almacenar en cola

Saludos. Estoy realizando una simulación en el cual se debe tomar algunos productos de los racks para luego almacenarlos en diferentes colas, estos productos tienen etiquetas las cuales quiero almacenar según su correspondiente etiqueta. Estoy utilizando operarios para que transporten los productos, pero ellos solo los toman de forma aleatoria y no según su etiqueta. Para el desarrollo de este proceso estoy utlizando la herramienta process Flow.

productos.png

Espero puedan ayudarme. Gracias!

FlexSim 21.2.4
processflowqueuelabelsoperatorsracks
productos.png (28.1 KiB)
5 |100000

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

1 Answer

Felix Möhlmann avatar image
0 Likes"
Felix Möhlmann answered Santiago T2 commented

You can use the "Query/Object/Array" field to define conditions that the item has to fulfill in order to be pulled. The query supports two basic SQL commands: "WHERE" and "ORDER BY"

"WHERE" defines a condition, for example a certain label value.

"ORDER BY" orders the eligible list entries by a certain value.

To use these, the list should contain a "field" with the value you want to use in your query. The default "ItemList" has four fields: The "Type" label, the "age" (how long the item has been on the list), the "distance" (physical distance between "puller" and the item) and "queueSize" (how many items are inside the items storage object/location).

1635845221775.png

You can add more fields via the green plus-symbol at the top of the list properties.

These field values can then be compared to static values or, for example, label values on the "puller". The puller is the object that tries to pull an entry from the list. By default, this will be the token when using the "Pull from List" activity.

"WHERE Type = 1" would only pull items with the type label value of 1 from the list.

"WHERE Type = puller.Type" would only pull items whose type is equal to the token's type label value.

The attached model demonstrates this. Each token in the process flow represents a queue and will only pull items whose type is equal to the "Type" label on the respective queue. They are also ordered by "age" in descending order, meaning the item that has been on the list the longest gets pulled first.

ListQuery.fsm

Relevent section of the manual:

https://docs.flexsim.com/en/21.2/ConnectingFlows/Lists/WorkingWithLists/WorkingWithLists.html#queries


Google Translate:

Puede utilizar el campo "Consulta / Objeto / Matriz" para definir las condiciones que el elemento debe cumplir para ser extraído. La consulta admite dos comandos SQL básicos: "WHERE" y "ORDER BY"

"WHERE" define una condición, por ejemplo, un determinado valor de etiqueta.

"ORDER BY" ordena las entradas de la lista elegibles por un valor determinado.

Para usarlos, la lista debe contener un "field" con el valor que desea usar en su consulta. El "ItemList" predeterminado tiene cuatro campos: la etiqueta "Type", la "age" (cuánto tiempo ha estado el elemento en la lista), la "distance" (distancia física entre "puller" y el elemento) y "queueSize" (cuántos elementos hay dentro del objeto / ubicación de almacenamiento de elementos).

Puede agregar más campos mediante el símbolo más verde en la parte superior de las propiedades de la lista.

Estos valores de campo se pueden comparar con valores estáticos o, por ejemplo, con valores de etiqueta en el "puller". El "puller" es el objeto que intenta extraer una entrada de la lista. De forma predeterminada, este será el token cuando se utilice la actividad "Pull from List".

"WHERE Type = 1" solo extraería elementos con el valor de etiqueta de tipo de 1 de la lista.

"WHERE Type = puller.Type" solo extraería elementos cuyo tipo sea igual al valor de la etiqueta de tipo del token.

El modelo adjunto demuestra esto. Cada token en el flujo de proceso representa una cola y solo extraerá elementos cuyo tipo sea igual a la etiqueta "Tipo" en la cola respectiva. También están ordenados por "edad" en orden descendente, lo que significa que el elemento que ha estado en la lista por más tiempo se extrae primero.


1635845221775.png (18.3 KiB)
listquery.fsm (130.0 KiB)
· 7
5 |100000

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