Hello.
I'd like to ask a question about List.
There are 3 types of flowitems, type1 (red), type2 (green) and type3 (blue) in my simple model ( list-exception-multiplepush.fsm ).
At first, the flowitems are moved to upstream Queue objects, Queue1~Queue3, and then, the upstream queue Objects push the flowitems into a List called TEST1.
Moreover, there is a downstream Queue object, Queue4, and I hope this object to pull the flowitems in TEST1 List in descending order of flowitem Type. That is, Queue4 should pull type 3 (blue) items first, and type 2 (green) items next, and type 1 (red) items last, as shown in question1.png.
To this end, I applied pull strategy including ORDER BY Query to Queue4 object as shown in question2.png.
At this time, the flowitems were not sorted as I expect. Instead, Queue4 object pulls type 1 (red) flowitem first, type 2 (green) second, and type 3 (blue) last, as shown in question3.png.
That is, the flowitems are transferred to Queue4 object just in First-in-First-out manner.
I think that this problem is occurred by the fact that the flowitems are technically added to TEST1 list one by one although their arrival times are same. Thus, it seems that the 'pulling' is done whenever there is only one flowitem within TEST1 list.
Therefore, I checked 'Allow Multiple Pushed Before Back Order Fulfillment' option in 'Back Orders' tab of Properties Window for TEST1 list. Then, the flowitems in Queue4 object are successfully sorted, but I have encountered by Exception messages as follows:
------------------------------------------------------------------------------------------------------------------------------
time: 1.000000 exception: Exception caught in Executive::processeventinlist(). Throwing.
time: 1.000000 exception: Exception caught in Executive::steptotime(). Throwing.
time: 1.000000 exception: Exception caught in Executive::tick(). Throwing.
time: 1.000000 exception: int runthemessageloop() #4
exception: Executive::instance.tick();
time: 1.000000 exception: int runthemessageloop() #6
-------------------------------------------------------------------------------------------------------------------------------
Is there anyone who can let me know how I have to revise my model?
Thanks.