There is a Visualcron event trigger for "job missed," but I'm only mostly sure that "...because of a time exception" is the only reason it can happen, and if you use time exceptions for anything else it might be problematic anyway, because I am not sure there's a way to make sure the trigger was for that specific time exception collection unless there's enough information in
{TRIGGER(Active|LastTrigger|VisualCron.Result.Message)}
to try to parse it out. I don't think I'd count on that.
The approach that seems to me like it would require the least effort is this. It's loosely based on the assumption that you can send one email every holiday to all recipients of any of your reports, saying essentially "no reports today;" it may need a little more setup if you need to send different messages to different recipient lists or if different sets of reports run on different days.
Create a condition set with one variable condition "Today is a Federal Reserve Holiday:"
{DATE(IsWorkday|e749ff53-9d56-4aaa-a131-32a1fe26d155)}
(change the ID to that of your time exception collection) is String-Equal to False. You can invert the boolean logic of this setup if you prefer to change which place you check for a negative; set the Actions as appropriate to your use case - for the way I'm describing it you would want it to continue if it matches and exit if it doesn't.
Then create a job that sends a "no reports today" message and that would run every day that your reports would run, but give it this condition set so that it only runs on Federal Reserve holidays.
Then all you have to do in the future is remember that if you add
new time exception collections for future years rather than modifying the existing one, you also need to update the condition set whenever such a collection is added or removed.
Make sense?
Edited by user
2021-11-30T19:12:07Z
|
Reason: typo