Jump to content
Simio Forum

Welcome to the Simio Forum

Welcome to the Simio Forum! Experience the full experience of the forum by becoming a Simio Insider! You must be an Insider to post on any forum!

Click_Here_button.png

New Software Release

Our latest release, Simio 11, is here!

jaylee0300

Change the order of queue

Recommended Posts

Hello!

Is there any possible way to change the order of queue depend on the datetime state variable?

I have datetime state variable; jut simply set 2018-10-07 0:00:00

There are two entities called partA and partB and they are created following arrival table which has release column.

 

So,partA and partB go to inputbuffer of a server, but partA just wait in the inputbuffer, not goes into the server  until 2018-10-07.

after the specific time, all of the partA move to the front of the inputbuffer and enter the server.

 

I'm trying to do that using new station where partA is transfered from the inputbuffer to until 2018-10-07.

 

Does anyone have an idea? or can anyone model this situation?

Thank you.

 

Jay.

Edited by jaylee0300
  • Like 1

Share this post


Link to post
Share on other sites

Change the question , capacity of a resource is zero until 2018-10-07.

Until resource is available, partA is waiting in inputbuffer of server and partB is being processed.

I don't know how to process the server , not waiting for secondary resource..

 

where I'm in stock is. .workstation is only waiting for a secondary resource because the associaed entity is in front of the queue.

Does anyone know how to change the order of the entity in this situation?

Share this post


Link to post
Share on other sites

Store only partA at a storage queue until 2018-10-07. Just at 2018-10-07 trigger a process (via a timer element) in which you should search "Storage Queue" for Part A. Transfer found entities into the inputbuffer of your server. Note that you can rank all the parts according to any criteria you defined (FIFO, SPT, modelentity.timecreated etc).

Share this post


Link to post
Share on other sites

I have taken a glance at your model. At first look your timer element needs to be revised and you should not change the capacity a resource via a user-defined state variable. Use resource.currentcapacity state variable. I have revised your model and it looks like working. Due to having no more time I could not deeply analysed. see attached file.

Resource.spfx

Edited by gocken
  • Thanks 1

Share this post


Link to post
Share on other sites
13 hours ago, gocken said:

I have taken a glance at your model. At first look your timer element needs to be revised and you should not change the capacity a resource via a user-defined state variable. Use resource.currentcapacity state variable. I have revised your model and it looks like working. Due to having no more time I could not deeply analysed. see attached file.

Resource.spfx

Thank you:) I didn't know Resource.currencapcity state variable exists.

Actually one of the problems in my model was PartA seize the workstation even though PartA is transferred to _StationForA.

 

I Though It could be fine workstation is released before PartA is transferred, but the error message below apeared..

1695709738_.PNG.5ac390f0d9c4764a6e089fb4f919792d.PNG

Share this post


Link to post
Share on other sites

The Workstation release problem is solved :)

Thank you so much.

 

 

By the way, is it impossible to change Time Offset in timer element during model running?

I' ve just tried to dynamically change the state variable, SchduledDateTime during run-time, but the changed value is not considered ..

I mean,

I made a button which fire a event to change  the value of ScheduledDateTime to later time.

During running the simulation, I clicked the button and check the value to change using Status label.

The problem is .. the value was changed in the status label, but the timer event cannot fire at the changed time.

 

So.. I thought time Offset cannot be changed during model running..

Am I Right..? or Are there any ideas to solve it?

Share this post


Link to post
Share on other sites

First define a state type property within your model. Then set its value as the state variable (which you are using for changing the value of time offset). Then, set timer offset property of timer element as a referenced property (choose state type property as the referenced property). Then when you click the button during the run (change the value of the state variable) the timer offset value should change. If this does not work do not hesitate for asking more. Note: be sure that you are using the right units of time offset propery (hours, minutes, seconds etc). 

Share this post


Link to post
Share on other sites

If our approach has failed then lets try another approach. If the timer element's task is to invoke process 1 we could achieve this by another approach. See attached file. Do not forget to set delay time property of delay step. The model includes the logic roughly. You have to improve and complete the logic according to your goals.    

Resource (1) (1).spfx

Share this post


Link to post
Share on other sites

×
×
  • Create New...