Unblocking the assembler?

All topics on the Atoms in any Enterprise Dynamics Library.
Post Reply
WU1
Posts: 5
Joined: Monday 28 February, 2011 - 11:37

Unblocking the assembler?

Post by WU1 »

I use the assembler to process picking orders. The problem with using the assembler is that when one ingredient is not available that the processing of other picking orders is blocked by the one currently in the assembly atom. Is there a way to deal with this: i.e. to unblock the assembler and store the unprocessable one(s) in a separate queue? Or even better is there a way to avoid selecting orders that cannot yet be picked completely? Should we model this outside of the assembler by splitting the queue in a queue for pick-able orders and a queue for non-pick-able orders, or is there an easy way out?

regards
rene
marlies
Posts: 301
Joined: Monday 17 January, 2011 - 09:28

Re: Unblocking the assembler?

Post by marlies »

I would suggest to keep picking orders in a queue until the required products are available. I modeled this in the attached model: UnblockingAssembler.mod. The following is done to select the orders that can be picked:
  • The table ProductAdmin contains the number of products available per type. This is updated in the entrytrigger of the product queues.
  • I created a user function with the function editor: Order_CheckIfProductsReady(c,i). I did this to prevent similar code on the queue entrytriggers. This function checks if the required products are available. When this is the case the function:
    1. Updates the productadmin table.
    2. Sets the rank of the order.
    3. Opens the orderqueue output.
  • The check for available products is executed when an order arrives in the order queue, but also when a new product arrives in one of the product queues.
  • When an order exits the order queue, it will check if the next order can be picked. If not, the output is closed.
    Regards, Marlies
Attachments
UnblockingAssembler.mod
(99.19 KiB) Downloaded 439 times
Post Reply