Trigger event/something at specific date and time

Rshear
Kilo Expert

Hi All,

I'm looking for possible solutions to the below:

I need to change the status of a business service (CI class) at a time and date specified on another record. E.g. when a change is raised against a business service I want the business service state to change when the change implementation date and time hits (as seen on the change record).

Obviously this is a one off (i.e. different for every change) and the dates and times can be different so based on my experience scheduled jobs doesnt feel like the way to go. I could also trigger a scheduled event but believe they only stay in the queue for 7 days.

Has anyone got any tip, advice or experience on how to do this?

6 REPLIES 6

tony_fugere
Mega Guru

Russell,



Timer Activities seem like the solution you are seeking. This would be an activity on the change workflow to transition to a Run Script or Set Values activity perform such an activity when the date in a field hits. You will see the "Field" field under section 2.2: "The date/time or duration field that contains the elapsed wait-time before moving to the next workflow activity. This field appears when the Timer based on is A date/time or duration field."



Is that what you are seeking?


I've found that sometimes looping through a turnstile with a static timer can be even more useful when keying off a date variable (vs a script based timer). Especially if that date/time is likely to be updated or changed after the fact. This way, it can dynamically update since it can check the field on each pass.


DelayLoop.jpg


Bharat23
Kilo Guru

You can write a business rule on change request table to fire when state changes to implementation, this business rule can can the status of the business service.


Hi,



Ive tried and successfully done the BR route however this sets on state change rather than when an exact time hits, so not really an option.



Rob/Tony,



Ive been down the timer on workflow route before and had some issues when looping to wait for time. Also with a timer..how do you know/tell it how long to wait since each implementation time/date can be different. Not sure how this would work.