Schdule Requirement

Description

Hi There,
I have to schedule a trigger based on below requirement .can some one suggest.
I have a input file with list of items in column A(List Details) to be processed at specific timings mentioned in the corresponding column B (Trigger Timings).

List Details Trigger Timings
List1 11:00 AM
List2 12:00 AM
List3 11:00 AM
List4 11:00 AM
List5 12:00 PM
List6 3:00 PM
List7 6:00 PM
List9 11:00 PM

Thanks

Link

Date

2025-07-04

Related UiPath products

Orchestrator

1 Like

Use 0 11-23 * * * cron expression to schedule the bot to run.
At init stage check the current timing and get List base on current time.

you can use below logic to get list from DataTable

Dim now As DateTime = DateTime.Now
Dim startTime As TimeSpan = New TimeSpan(now.Hour, 0, 0)
Dim endTime As TimeSpan = startTime.Add(TimeSpan.FromHours(1))

' Get the first matching List Details value, or Nothing if no match
Dim firstMatch As String = dt.AsEnumerable().
    Where(Function(row)
              Dim triggerTimeString As String = row("Trigger Timings").ToString().Trim()
              Dim parsedTime As DateTime
              Return DateTime.TryParseExact(triggerTimeString, "h:mm tt", CultureInfo.InvariantCulture, DateTimeStyles.None, parsedTime) AndAlso
                     parsedTime.TimeOfDay >= startTime AndAlso parsedTime.TimeOfDay < endTime
          End Function).
    Select(Function(row) row("List Details").ToString()).
    FirstOrDefault()

1/ Is the “input file” variable? So e.g. can it contain different list of items every day?
2/ What “items in column A(List Details)” actually represent?

Cheers

@J0ska - Yes input file is a variable and the file contains every day different list of items .
Column A Contains some input data which needs to be processed . And Column B Contains the Trigger timings ie., what time in that day to get processed.

Hope its clear.

So it means you have a process (Executor) that should be started at time according ColB (e.g. 11:00 AM) and process data according ColA (e.g. List1).

So you will need another process (Dispatcher) that will read data from your file and it will schedule process Executor at respective time and with respective input data.

Cheers

1 Like

@avinashy

Best would be to run a dispatcher and add the items to queue with defferred time using. The time from column B..and use a queue trigger for actual process..so when the item gets active the process runs and as queue already hs data of what item it would be able to process that item..and deferred datetime takes care of running based on trigger

Cheers

@Anil_G Thanks for your response . However i have the following questions.

You mean while adding the queue item itself you want me to define the timing of each queue item to run what time its is as per the column B ?

Also lets say i have three queue items needs to run at 10 AM, 1 PM & 6 PM . Now my question is when the queue trigger activates at 10 AM and it complete its transaction by 11 AM Now the bot will still be in running state and waiting for the 1 PM and again for 6 PM items ? Overall i want to know the state of the bot whether it is keep running or will it be in idle state and then again pick the item as soon the time arrives.

@avinashy

Yes while adding queue item you can give deferred time which would make item active only after the defined time and date

No as no queue items are available at 11 it would stop and once it is 1 again one queue gets active and the process gets triggered by the queue trigger again

Cheers

1 Like

Add the data table to a queue, and create a new process that runs every 5 minutes. In this process, check the queue transactions and compare each transaction’s scheduled time with the current system time. If the scheduled time matches the current time — or falls within a ±5-minute window — process the item. This approach allows you to handle the entire scenario in a fully dynamic and scalable way.

@Anil_G Following up on question on this . I have added 5 items to queue with a time difference of 15 ,min from dispatcher which are in NEW state.
Created a queue trigger and assigned the performer. The question here in the performer should we use GetQueue item /Get transaction item to pick the items to process as per the timings ? As get queue items will pick all the items which are in NEW state right ?

Can you elaborate bit from the performer side what steps to follow so that the performer process will run the queue items as per the respective timings mentioned in the queue ?

Looking forward to hear from you

@avinashy

get transaction item is what you need to use

get queue items would get the items but not change status and all

ideally if using REF then it would have the basic performer frame already ready

cheers

@Anil_G Thanks it worked now. However what i have noticed was there is a delay of 12 to 15 min of picking the respective item from the postpone time which i have to the queue.

Ex: Item 1 24/07/2025 01:35:00
Bot processed the above item at 24/07/2025 01:50:00

I have tried this with High, Normal & Low the behavior is same . Not sure is this the actual behavior or something is missing from my side.

Note: during my test no other bots are running and also the user is not busy.

Kindly suggest.

@avinashy

there is a polling time that would be checkignf or every 30 minutes if there are new items and then the trigger works

you can change from settings..you might need to recreate trigger after update

go to tenant → settings → unprocessed check change to 5 minutes or so

cheers

@Anil_G Great Thanks for your quick response.
Hope this change will only look for this post pone items functionality itself right.
It wont be effecting any other time based triggers as we are doing this on the tenant level which should not effect on the normal queue items which are being processed by time based/queue based triggers.
Please confirm

@avinashy

any queue based trigger having postpone will be having the new change..no time based trigger would be effected

and its like instead of checking every 30 minuts now it would check for whatever time interval you give

and new items wont be effected with this timing..this is only for the postponed items

Hope this clears your thought

cheers

1 Like

@Anil_G One question . Till how many days/months do we add the items to postpone in queue. Does the queue item gets expiry if any items are in NEW more than some number of days like that ?

Also it would be great if there is any documentation on this please.

@avinashy

You can add for any number of days..when postponed the status is not new its postponed once ready it changes to new and immediately the process would pick

What specific documentation are you looking at

Cheers