After I discussed with FlexSim Tech Support, I was suggested to post the issue here to share what we learned and to report the issue so that we can get developer's further help.
To demonstrate the issue, I attached the testing model that tests executing set location command for the flowitem when it is loaded and unloaded.
In the testing model, an operator travels to Queue1, loads flowitem, travels to Queue 2, unloads the flowitem, delays some time, and loads again the flowitem and travels to Queue3.
When the operator loads the flowitem from Queue1, it changes the flowitem's Z location, so that it looks like dragged on the floor (minus Z)
When the operator unloads the flowitem at Queue2, the Y location is supposed to be changed, so that it looks like kicked to the side. (plus Y)
By the way, I use Task Sequence just because I use it in my original model.
The issue is..
Z location change works fine as operator loads it from a queue. However, Y location change doesn't work as it is unloaded onto a queue.
The interesting behavior is that... the Y location change WORKS WITH BREAKPOINT. If you put a breakpoint just in front of the Y set location command and step through, it works.
Now, what we discovered is that if we use BasicFR, or other objects other than Queue, it also works. So, if BasicFR can replace the Queue in the original model, problem is solved. Whatever the reason, if Queue must be used, it would have some trouble.
FlexSim Tech also tried using ProcessFlow to test this issue, and same results are found.
I hope this would be a little helpful tip for members, and hopefully FlexSim developer would take a look on this. If it is already known issue, and reported somewhere, please take my apology not to read or check the report :)
Thanks!