question

Dustin B avatar image
0 Likes"
Dustin B asked Jeanette F commented

Update List Pull requirement after quota met

Hi

I have a process where multiple product types run through the same processor.

These multiple types are placed in a List and Pulled to a Queue based on a calculated "Pullorder".

The Pullorder is a function of (wait time +/- some random variation) x product Priority value.

Type 2 is the middle priority, however we want to cap production of this at 20 units per month. This is despite there being more pending inventory available.


I tried to use a PF to count 20 entries of Type 2 and then adjust the Pull requirement to exclude Type 2 parts. This does not seem to have worked, although the logic and triggers activate the List Pull requirements don't seem to acknowledge the change and continue to pull based on "PullOrder".

Is there another way to achieve this mid process update and reset?


My goal is:

  1. Items are pulled based on "Pull Order"
  2. Once 20 Type 2 units are processed they are no longer pulled
  3. At the end of the period a reset trigger is activated so that Type 2 can be processed again until it hits its 20 limit


Thanks,

Dustin

230303 List Pull Modifier.fsm

FlexSim 23.0.3
process flowlist pull from listusing list
· 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.

Jeanette F avatar image Jeanette F ♦♦ commented ·

Hi @Dustin B, was Felix Möhlmann's answer helpful? If so, please click the "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

Felix Möhlmann avatar image
0 Likes"
Felix Möhlmann answered Jason Lightfoot commented

The pull requirement isn't used when pulling from a list, only when pulling through port connections.

You have to incorporate the condition into the pull query. For example, you could create a dynamic expression field for the item list which returns 1 if the item can be pulled (type != 2 or below the limit) and 0 if not.

In the attached model the Process Flow sets a label on Queue5 which is then used in the "mayPull" expression.

230303-list-pull-modifier_fm.fsm


· 2
5 |100000

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

Dustin B avatar image Dustin B commented ·
Thanks Felix


Is no simpler way than using this custom code route though?

0 Likes 0 ·
Jason Lightfoot avatar image Jason Lightfoot ♦♦ Dustin B commented ·

There will be many ways to do this. If it's just the custom code you don't like you can put this expression into the mayPull field directly:

value.Type !=2 || puller.pullType2 != 0
0 Likes 0 ·