0

I am working on a ticketing model framework, where we receive requests for user account creation in an SAP system. The request is an agent which is assigned to one resource from the resource pool. In other words, one request is handled by a specific resource from the resource pool only.

For e.g. if I am a resource from the resource pool I will be fully responsible for a request assigned to me until it goes out from the sink.

Some account creation requests requires special approval. So they wait in a queue for a specific wait time and then goes back in for user creation.

AnyLogic model image

Here I have two questions to solve for-

  1. How do the request wait for a variable time and come out of the queue when wait time is over. For e.g. request 1 comes in to wait for 5 hours, after that request 2 comes in to wait for 1 hour how does the request 2 goes out from the queue first?
  2. Once a request gets out of the queue - it goes back to userCreation block. Here, how do we make sure that the same resource from the resource pool handles this request who has handled it before (when it came in the userCreation block for the first time)?
Ken White
  • 123,280
  • 14
  • 225
  • 444
Yash
  • 3
  • 3

1 Answers1

0

please always ask separate questions in separate issues on Github, but here goes:

How do the request wait for a variable time and come out of the queue when wait time is over

Queues are not meant for that. Either use a Delay block where the duration is driven by the incoming agent or the Wait block (where the agent "pulls itself out" after some time using an event

Here, how do we make sure that the same resource from the resource pool handles this request who has handled it before (when it came in the userCreation block for the first time)?

You need to store the original resource in a variable in the agent (same type as the resource agent type). Then, use the "custom resource choice" tickbox and only allow usage of that previous resource

Benjamin
  • 10,603
  • 3
  • 16
  • 28