The reason is that the conveyor only presents the item at the end of the conveyor to the pulling queues, whereas a queue allows any of its contained items to enter any queue at the same time.
So when an item of type 37444 arrives at the end of the conveyor it does not match any of the queue Types. Later the batch timeout occurs at 13120 secs and queue293 releases its type 37537 items. At that point you need to adjust your pull logic to allow it to take a new type and have it fire by opening the input of the queue (even though it is open already - telling it to open will reevaluate the pull).
When I chose to trigger the pull re-evaluation your logic did not allow the item to enter since it was triggered by the last item leaving which is a usual technique. Your code tests for the content being <1 which will never be the case as the pull is evaluated while the exiting item is still in the queue.
Instead of altering the pull it will be simpler to schedule an event to open the queue input if it is empty (on exit trigger):
if (current.subnodes.length==1) createevent(current,0,EVENT_USEROPENINPUT);
Model attached.
I have tried adding that trigger to the lanes, but it doesnt take any items from the conveyor,Please note if the subnode.value ==1 then that particular lane is reserved for a particular type of item.
It should be 5 posts up but here it is:
thanks a lot for this solution, really appreciable, but I still have issues regarding the duplication of lanes, how do I solve it ? I did some modifications in pull and push logics as shared in the model,Could you help me out in solving the issue of duplication.
It was more to avoid building the logic twice - once for the queues and then again for the conveyors if that proved to be the ultimate goal. Let's answer your question in the other thread as the question about conveyor vs. queue is answered in this one.