Prioritizing processes or several processes in one physical location

Hello,

I have a question about prioritizing processes or several processes in one physical location.

My problem is as follows: … I have the processes 1-2-3-4-5-6-7-8.
However, 2, 4 and 6 take place in the same location, which means, for example, that a transport + process can only take place from 3 to 4 if 2 and 6 are free.
or from 5 to 6 only if 2 and 4 are free.

How can this be regulated? I thought perhaps via set state (idle or blcoked) and then send signal and get signal?
But I don’t know much about this either, maybe there are other possibilities.

Thank you very much :slight_smile:

Hello,
You could use one process node with 3 parallel routines. Only one of them can run at the same time.
You can use the ReserveProduct statement to define which products can enter which routine (I added a Product Property “Step” to the product and assigned the process number in the processes P1, P3, P5)


Layout_ParallelRoutines.vcmx (304.6 KB)

1 Like

Could you model processes 2, 4 and 6 into one process executor?
Then use process requirement statements such as ReserveProduct to automatically select which process gets started.

https://help.visualcomponents.com/4.10/Premium/en/English/Process%20Modeling/Process%20Statements/Reserve_Product.htm

1 Like

Thank you, exactly what i want to achieve.

But i have an issue with transport out and transport in from Process 2 to 3 but cant figure it out.


Parralel Processes.vcmx (309.5 KB)

If you use a ReserveProduct Statement, don’t forget to set the ReservedProductVariableName in the TransportIn.

The other problem is that the products 1 and 3 both want to get into process 2, but can’t because of the product 2. And the product 2 wants to go in process 3, but can’t because of the product 3…

1 Like

Oh thank you, now it works.

yes exactly, i also noticed that in theory beforehand and that’s why i wanted to work with optional 'buffers so that i have an even flow or do you perhaps even have another idea.

but thank you very much for your help

Hey Tilma, I have 2 more questions, maybe you can give me some tips or ideas if this is possible.

  1. the process should only be a buffer for flow group 1 and for flow group 2 the process should still have a delay, should this be controlled via the flow group or via the product, if so how? with an IF condition?
  2. a process has a delay of 3600 sec in flow group 1 and should have a delay of 7200 sec in flow group 2, is this possible?

Many thanks and best regards

Maybe i can add a new Property and do it also with parallel routines?

  1. Maybe you could define the process as an optional process in your Flow Group 2 (explained in point 6 of this video: Process Modeling Flow Editor | Visual Components Academy)
  2. You could define the delay needed in the product property in the different products and then use the “Expression” mode in you delay statement with an expression of the type: < ProductVariableName > . < PropertyName > (ex: ProductIn.ProcessTime).
    Otherwise you could use an IF statement like: if ProductIn.ProductType.Name == “here write the name of the product as defined in ProductEditor”
1 Like

thank you very much, i now have a few new approaches to try out, i have also tried it this way. :slight_smile:

I think it works, with product filter and reserved product :slight_smile:

now there is a final question about the flow sequence, the flow should be from 6 to 7.2 (if free) to 8.2 to sink otherwise from 6 to buffer to 6 to 7.1 to 8.1 to sink, but it seems to be stuck somewhere, it always goes directly into the buffer after 6, but it should only go there optinoally if 7.2 is occupied.

Parralel Processes.vcmx (994.1 KB)

Many Thanks