Jump to content

Filter expression of Dynamic Selection Rules


Recommended Posts

Hi,


Is it possible to access the filter expression of standard Dynamic Selection Rules for use in processes?


Basically I want to filter queues based on some Entity properties, eg, being a specific material. However standard dispatching rules only apply the filter if multiple entities are in the queue. Eg, if a an entity of "wrong" type arrives to the InputBuffer of a Server and the input buffer is empty it will seize the queue anyway. In my case I want to keep the server starved until an entity of correct type arrives. I found a way to implement that by filtering the queue with the same expression as used in the dynamic selection rule, however I need to add another property for that expression, which is a bit confusing.


Thanks for your help

Michael

Link to comment
Share on other sites

You could use a Search step with matching condition criteria specified perhaps? Not sure exactly what you are doing within model, but the Search step can search entities in queues for various criteria as well.

Link to comment
Share on other sites

Hi Christine,


The way I set it up for a standard server is as follows:

1. Use a Dynamic Selection Rule "Smallest Value First" based on Entity ID and set the filter expression to my match condition

2. Keep an Index FilteredQueue which I update with a SearchStep with same match condition everytime an entity leaves or enters the InputBuffer or if the condition changes (happens when property which candidate is compared to changes).

3. On every seize request FilteredQueue is checked, if 0 the request is denied.

This does what I need.


My only "problem" is that I need to enter the match condition twice, once for the Dynamic Selection Rule and once for the SearchStep. So, is there a way I can access the filter expression property of the dynamic selection rule for use in the SearchStep?

Link to comment
Share on other sites

Try using a Function within the Definitions window to define the Filter Expression - it seems to take 'Candidate' (table expressions don't) - this function should be able to be referenced within the Filter Expression and the SearchStep.

Link to comment
Share on other sites

  • 7 months later...
On 5/2/2018 at 11:35 PM, mstalder said:

"Smallest Value First" based on Entity ID

Hi! I'm sea, making some user-defined selection rule.
I wonder that what is the exact meaning of "based on entity ID" in your question.
is it same as creation sequence, like order date?
I know original value expression was "Candidate.Entity.Priority" in the dynamic selection rule.

But I'm not sure that is oriented from arrival sequence at specific buffer.

Link to comment
Share on other sites

  • 1 month later...
×
×
  • Create New...