Network Automation Software We are currently migrating this forum
over to our HelpSystems domain. Please
post all new threads in our new
HelpSystems Community Portal.
Post to the HelpSystems Forum
You are not currently logged on. You must be logged on in order to post. Log on
Or Create a new account
AutoMate Discussion
Decrease font size
Increase font size
Topic Title: Holidays + specific run days
Topic Summary:
Created On: 07/22/2015 03:57 PM
Status: Read Only
Linear : Threading : Single : Branch
Search Topic Search Topic
Topic Tools Topic Tools
View similar topics View similar topics
View topic in raw text format. Print this topic.
 07/22/2015 03:57 PM
User is offline View Users Profile Print this message

Author Icon
JamesLankford
Artisan (200-499)

Posts: 369
Joined: 11/26/2012

If I have a schedule trigger that is configured to run on the first workday of the month, or even the first day of the month, and that particular day turns out to be a holiday, how does AutoMate handle that?

For example, if I have a workflow that has a scheduled event to run on the 4th Monday of each month, and that particular Monday happens to be a holiday (ie: Memorial Day), and I have a holiday schedule setup to not run workflows on holidays which includes Memorial day, what happens? Does it just not run at all that month?

Or say the schedule is set to run the first workday of each month, and that also falls on a holiday (ie: New Year's Day) - does the workflow get skipped for that month - or will AutoMate treat the first workday as the 2nd?

Thanks,

James



 Category Survey
AutoMate BPA Server 9 version: 9.0.5
Windows version: Windows Server 2008 R2


-------------------------
<html />
 07/27/2015 08:00 AM
User is offline View Users Profile Print this message

Author Icon
Alex Escalante
HelpSystems

Posts: 871
Joined: 02/26/2014

Hello James,

If you have a trigger that runs on the first Monday of every month, but one month the first Monday happens to be a holiday, it will not run until the following month. It will not reschedule to Tuesday.

 Category Survey


-------------------------

Alex Escalante | Support Analyst
AutoMate | Division of HelpSystems
HelpSystems, LLC | T: +1.213.738.1700 | F: +1.213.738.7665
 07/28/2015 09:42 AM
User is offline View Users Profile Print this message

Author Icon
JamesLankford
Artisan (200-499)

Posts: 369
Joined: 11/26/2012

Right.......that makes sense, but I'm referring to more of a dynamic day instead of a "set" day.

In other words, instead of a job being defined as the first Monday of every month, consider a job that is scheduled to run on the first workday of each month. With that in mind, it could be any day from Monday to Friday. So let's take New Year's Day for example, which is always the 1st of January. If we have a job that is set to run the first workday of each month, and New Year's Day is defined as a holiday for us - will the trigger occur on the 2nd of January, since that is technically our first workday of that month, or will it skip January and not run again until February?

Does this question make sense?



 Category Survey
AutoMate BPA Server 9 version: 9.0.5
Windows version: Windows Server 2008 R2


-------------------------
<html />
 07/29/2015 11:41 AM
User is offline View Users Profile Print this message

Author Icon
Ricardo Castaneda
HelpSystems

Posts: 3424
Joined: 01/11/2008

Hi James,

We do have an option that will run on the first "Work Day" of the month. The first workday of the month will skip holidays that you have set and run on the first workday of the month.

Let us know if that helps you.

 Category Survey


-------------------------

Ricardo Castaneda | Principal Support Analyst
AutoMate | Division of HelpSystems
HelpSystems, LLC | T: +1.213.738.1700
 07/29/2015 12:07 PM
User is offline View Users Profile Print this message

Author Icon
JamesLankford
Artisan (200-499)

Posts: 369
Joined: 11/26/2012

Ricardo,

I understand what you are saying - but it doesn't clarify it for me. If the first workday of the month falls on a holiday, and our holiday calendar has that particular day excluded, does it skip the month entirely?

For example, let's say January 1st falls on a Tuesday, and our holiday schedule has January 1st defined as a holiday to be excluded from scheduled runs. In this scenario, Tuesday would be normally considered our 1st workday - but since it's a holiday, does Wednesday the 2nd become the 1st workday, or does it skip January and fire again in February?



 Category Survey
AutoMate BPA Server 9 version: 9.0.5
Windows version: Windows Server 2008 R2


-------------------------
<html />
 07/31/2015 04:05 PM
User is offline View Users Profile Print this message

Author Icon
Valentineo McGowan
HelpSystems

Posts: 766
Joined: 09/03/2013

Hello James,

As you know Monday through Friday are work days regardless if a country or nation recognizes a specific day as a national holiday or not.
The fact you do not have to go to work that day does not change the fact you are still within a 'work week' and you are on a 'work day'.
Thus if the holiday is observed (and not ignored) that task will not run on that day because it is considered a holiday.
Now, if you want the task to run on that holiday, then exclude holidays as normal BUT the 'Holidays.aho' file will have to be modified to not include that specific holiday any longer.
The Holiday.aho file for BPA Server 9 can be located here:
C:\ProgramData\Network Automation\AutoMate BPA Server 9

1 Backup (copy) the Holiday.aho to another folder just encase you make an error in modification
2 Edit the Holidays.aho file in a Text Editor
3 Find the '385' value
A This will take you to the beginning of the [United States] holidays
4 All holidays are listed in alphabetical order, so scroll down to 'New Year's Day'. It will be found between 'Mother's Day' and 'New Year's Eve'
5 Very carefully select and delete ALL entries of 'New Year's Day', from 'New Year's Day,1/1/2009' to 'New Year's Day,1/1/2028'
6 Now 'Mother's Day' and 'New Year's Eve' should be next to each other
7 Save the file | Feel free to mock up a workflow with the necessary exclusions and change the date on the PC to test

I hope this helps

 Category Survey


-------------------------

Valentineo McGowan | Technical Consultant
AutoMate | Division of HelpSystems
HelpSystems, LLC | T: +1 213.738.6966 | F: +1.213.738.7665
 07/31/2015 04:34 PM
User is offline View Users Profile Print this message

Author Icon
JamesLankford
Artisan (200-499)

Posts: 369
Joined: 11/26/2012

Valentineo,

I think I understand what you're saying, but I was under the impression that holidays as defined by the Holidays.aho file are respective for each business running it.

So - while January 1 is recognized as a national holiday, some businesses are closed that day - effectively making January 1 a non-work day for them, while it may very well be a working day for another business.

So I'm thinking if we have a day defined in our holiday.aho file, such as January 1, then for all practical purposes that day is no longer considered a "work day" for our business even though January 1 may actually fall on a Mon, Tue, Wed, Thu or Fri. That being the case, January 2 would be the first work day of that month for us as defined by our holiday.aho file and I would expect AutoMate to recognize that - at least that's what I am trying to clarify.

Make sense?



 Category Survey
AutoMate BPA Server 9 version: 9.0.5
Windows version: Windows Server 2008 R2


-------------------------
<html />
 08/03/2015 04:52 PM
User is offline View Users Profile Print this message

Author Icon
Valentineo McGowan
HelpSystems

Posts: 766
Joined: 09/03/2013

Hello James,

Globally business days are generally Monday through Friday, which we consider 'work days'. Even if you do not go to work that day, Monday is still a work day regardless if holidays like 'New Years' and/or 'Christmas' 'lands' on a work day or not.

The Holidays.aho file contains 'dates' for the respective holidays in question, the 'day' it may land on is not considered unless an exclusion is given not to run a a specific 'day' of the week.

The logic and methodology behind the use of the Holidays.aho file and excluding days/holidays from a Schedule Trigger adhere to two simple factors:
1 What national holidays does this country/nation observe?
2 What days of the week would you like to exclude? If any?

So that being said IF a national holiday that your country observes falls on a 'work day' AND you want that task to run on a scheduled triggered on the day in question that a holiday now falls on:

The holiday MUST be removed from the Holidays.aho fuile otherwise the trigger will execute at the next determined run time. In the case of your '1st business day of the month'; the next 'month', not the next 'day'. The task simply will not run IF the holiday is 'observed'. Meaning present in the Holidays.aho file.

I hope this clears things up.

 Category Survey


-------------------------

Valentineo McGowan | Technical Consultant
AutoMate | Division of HelpSystems
HelpSystems, LLC | T: +1 213.738.6966 | F: +1.213.738.7665
 08/04/2015 08:23 AM
User is offline View Users Profile Print this message

Author Icon
JamesLankford
Artisan (200-499)

Posts: 369
Joined: 11/26/2012

Valentineo,

Thank you for the detailed explanation - it does clear it up. I had been under the impression that AutoMate would examine defined holidays as non-work days.

We had a few workflows that do run on the 1st workday of every month. Now granted, in this case, the only holiday I can think of that would routinely fall on the 1st workday is usually New Year's Day. So with that in mind, I was thinking with NYD being defined as a holiday for us that when AM updated its calendar trigger it would say "Oh, this dude wants to run on the first workday of the month, but they're closed on NYD, so we'll assume their first workday is the 2nd because they aren't working on the 1st."

Now that I understand that's not the case, I can plan better for such days. Are there any plans to build more intelligence into the holiday scheduling for such scenarios?



 Category Survey
AutoMate BPA Server 9 version: 9.0.5
Windows version: Windows Server 2008 R2


-------------------------
<html />
 08/05/2015 08:34 AM
User is offline View Users Profile Print this message

Author Icon
Valentineo McGowan
HelpSystems

Posts: 766
Joined: 09/03/2013

Hello James,

Presently at this time the quickest and simplest way to get the results you desire, would be to simply edit the Holidays.aho and remove all entries of the Holiday that you would not like to be observed so that task(s) are triggered using the Scheduled Trigger.

 Category Survey


-------------------------

Valentineo McGowan | Technical Consultant
AutoMate | Division of HelpSystems
HelpSystems, LLC | T: +1 213.738.6966 | F: +1.213.738.7665
 08/05/2015 08:53 AM
User is offline View Users Profile Print this message

Author Icon
JamesLankford
Artisan (200-499)

Posts: 369
Joined: 11/26/2012

Understood - thanks!



 Category Survey
AutoMate BPA Server 9 version: 9.0.5
Windows version: Windows Server 2008 R2


-------------------------
<html />
 01/04/2016 12:42 PM
User is offline View Users Profile Print this message

Author Icon
JamesLankford
Artisan (200-499)

Posts: 369
Joined: 11/26/2012

I would like to revisit this topic as the aforementioned concern I originally voiced in this post has recently reared its head.

We have several jobs that run on the 1st workday of each month. With the recently holiday (as defined for us in our holidays.aho file), this job did not run on OUR 1st workday of January; for us - our 1st workday of January should have been the 4th, because workdays are Mon-Fri. However, since AM considered 1/1/16 as being the first workday of January, AND because 1/1/16 is also defined as a holiday for us, these respective jobs did not run at all for this month. Net - I had to manually run about a dozen jobs today; otherwise they would not have ran again on their own schedule until 2/1/16.

Can an enhancement to this functionality be added so if a specified requested workday falls on a defined holiday, and that holiday is configured as an exclusion, then the actual workday should be the next available day that is not a holiday? For us, our "first" workday should have been 1/4/16 - NOT 1/1/16 because this is a holiday for us as the business is closed.

I realized I typed a lot here; hopefully it's not too confusing - if so I will try to explain again.

Thanks - James



 Category Survey
AutoMate BPA Server 9 version: 9.0.5
Windows version: Windows Server 2008 R2


-------------------------
<html />
 01/12/2016 04:14 PM
User is offline View Users Profile Print this message

Author Icon
Valentineo McGowan
HelpSystems

Posts: 766
Joined: 09/03/2013

Hello James,

Everything you mentioned in the first paragraph is correct and that's why it failed to run on 1/4. If you recall, previously I mentioned that you will have to remove specific dates from the Holidays.aho file for the coming year if you know which days holidays are to land on.
You will also need to create an additional entry to the existing Scheduled Trigger to run on that specific day in question.

Thus you would have deleted this line from the Holidays.aho file under section '[United States] 384'
New Year's Day,1/1/2016
Set the trigger to run on 1/4/2016 @ 'X' time interval

Perhaps you should give us a call and we can explain in greater detail.

AutoMate Technical Support is available from 6.00am to 5.00pm Monday through Friday Pacific time (GMT -8).
Toll Free 888.786.4796
I am personally available from 8.00am to 5.00pm Monday through Friday Pacific time (GMT -8).

 Category Survey


-------------------------

Valentineo McGowan | Technical Consultant
AutoMate | Division of HelpSystems
HelpSystems, LLC | T: +1 213.738.6966 | F: +1.213.738.7665
 01/12/2016 06:22 PM
User is offline View Users Profile Print this message

Author Icon
JamesLankford
Artisan (200-499)

Posts: 369
Joined: 11/26/2012

Hi Valentineo -

I understand what you're saying, but I fear I may not be making myself clear.

In response to what you said:

Thus you would have deleted this line from the Holidays.aho file under section '[United States] 384' 
New Year's Day,1/1/2016  <=== This is INCORRECT.  1/1/2016 should absolutely be included in OUR Holidays.aho file; that is not a work day for us and subsequently, not be a normal run day for us. If we had deleted the line as you stated, then the job would have ran on 1/1/2016 and that is not what we needed. It is for this reason that I say 1/4/2016 should be considered the first work day for us; we should not have to create a separate trigger.

If 1/1/2016 had fell on a Monday, then of course 1/2/2016 (Tuesday) should have been the first work day for us. In this case, for this past occurrence, I say 1/4/2016 should have been considered the first work day for us because this task is only set to run weekdays, Mon-Fri, and New Year's Day fell on a Friday this year.

Next year, due to the fact that 2016 is a Leap Year, New Year's Day will fall on a Sunday. Many businesses will observe their New Year's Day on Monday, 1/2/2017, since they will already be off on Sunday, being a normal off day for them. That being the case, 1/3/2017 will be the first work day for those places. I have not looked at our company calendar yet to see if that applies to us - but if it does, then we will have to add an entry into our Holidays.aho file for 1/2/2017 - which subsequently will make our first work day 1/3/2017 (Tuesday).

Does this make sense? Sorry for the extra detail, but I am trying to provide as much detail as I can to explain why I think this is a miss in the program design.



 Category Survey
AutoMate BPA Server 9 version: 9.0.5
Windows version: Windows Server 2008 R2


-------------------------
<html />
 01/20/2016 03:04 PM
User is offline View Users Profile Print this message

Author Icon
Valentineo McGowan
HelpSystems

Posts: 766
Joined: 09/03/2013

Hello James,

I think we've finally determined why you've had such a difficult time with the logic behind the implementation of our Scheduled Trigger in-conjunction when a Holiday is to exclude the normal execution of a task on the given day the trigger is to run.
Perhaps, this will help:

You wrote the following:
"It is for this reason that I say 1/4/2016 should be considered the first work day for us; we should not have to create a separate trigger."

This is 'exactly' what our clients do to make sure a task that 'could' potentially be affected by a holiday is not and in-turn triggers normally.
Which is one of three scenarios:
1 Remove entry/entries from the Holidays.aho file
OR
2 Manually add an additional Scheduled Trigger to be used as an exception for that one year a Holiday 'may' conflict with the execution of a task being triggered
OR
3 Remove entries AND add a trigger

Perhaps you should give us a call and we can explain in greater detail.

AutoMate Technical Support is available from 6.00am to 5.00pm Monday through Friday Pacific time (GMT -8).
Toll Free 888.786.4796
I am personally available from 8.00am to 5.00pm Monday through Friday Pacific time (GMT -8).

Lastly keep in mind, the nature of the Holiday dictates in-how the methodology behind 'why' the user/client is choosing a specific scenario; which matters a great deal.
For example the difference between a holiday like New Years Day which is always on January 1st vs MLK which is always the 3rd Monday in January.
One holiday could potentially land on 'work days' and 'weekends', while the second is always 'only' on a Monday, never a weekend.

I think you are also misconstruing how and why yours, ours or anyone's business 'chooses' to operate on specific days vs the fact that many 3rd party software programs see Monday through Fridays as 'work days'. They are still considered 'work days' even when a holiday lands on them. Thus Friday January 1st 2016 was both a holiday and a 'non-weekend' day (a work day).

A Holiday exception will always take higher precedence because you 'chose' to exclude Holidays in the Exclusion section of the Scheduled Trigger. Which then means you do not want the trigger in question to fire on the days listed within the Holidays.aho file for United States.

You presently have at least two logics in place within this Scheduled Trigger that I know of:
1st: Run at 'X' time on the first 'work day' of the month.
This will always run exactly as designed. Regardless of Holidays.
2nd: Holiday.aho for United States added to Exclusions.
This will most assuredly impact the 1st logic created.

So the question is does your organization want:
A) This task to run at 'X' time on the first 'work day' of the month. Every month. Period. Regardless if your staff is 'observing' a national holiday or not?
OR
B) This task to run at 'X' time on the first 'work day' of the month. Every month. When your staff is 'only' in the office working on what you consider the first work day of the month? Which technically was not Monday the 4th but Friday the 1st because it was a Friday. Our software (like thousands of others on the market) recognize Friday as a 'work day'. The observed 'New Year's Day' Holiday is an 'exception' to what occurred on the 'work day' in which it fell on.

 Category Survey


-------------------------

Valentineo McGowan | Technical Consultant
AutoMate | Division of HelpSystems
HelpSystems, LLC | T: +1 213.738.6966 | F: +1.213.738.7665


Edited: 01/20/2016 at 03:42 PM by Valentineo McGowan
 01/21/2016 01:27 PM
User is offline View Users Profile Print this message

Author Icon
JamesLankford
Artisan (200-499)

Posts: 369
Joined: 11/26/2012

Hi Valentineo,

I appreciate the time you have taken to explain this and understand where I'm coming from; however I'm still not certain I've succeeded in my attempts; I don't feel like I'm misunderstanding it at all, nor do I feel like I'm confused about the logic

Let me try it another way:

I don't think there's a bug in the way it operates; I think it is functioning exactly as the developers intended. Also - I don't want to get too hung up on the holidays.aho file because I'm not having any issues with it; the functionality there is working as I expect it should.

However, I think what I'm trying to say is this: if there is a date in the holidays.aho file, then that date should NOT ever be considered a work day.


In using January 1st as our example date, mainly because it's the easiest to explain and work with, and because it currently applies to us, I will attempt to explain again. Also, in the below examples, it is a given that January 1st will be defined in our holidays.aho file.

Consider the following 3 scenarios:

1) A workflow is created and scheduled to run explictly on 1/1/2017. All good, right? So, when this date rolls around next year - the workflow will NOT run because that date is explicitly defined in the holidays.aho, which would be the behavior I would expect.

2) A workflow is created and scheduled to run on the first DAY of each month. Unless I'm mistaken, the FIRST day will always be the 1st of every month, regardless of the day of the week it falls on, whether it's March 1st, July 1st, October 1st, etc. Again, when January 1st, 2017 rolls around, because this date is in the holidays.aho file, it will not run and because we are working with a recurring schedule, the next date it will attempt to run will be on February 1st, 2017. Again, this is the behavior I would expect.

3) This is the scenario I'm working with. A workflow is setup with a recurring schedule trigger to run the first WORK DAY of each month. Not the FIRST DAY, but the first WORK DAY. This is where I think the logic behind the design is incorrect. The first work day of each month might actually fall on the 1st day, or it may actually fall on the 3rd - it will vary from month to month, obviously. In this scenario, we have a job setup on the first WORK day of each month, but on January 1st it doesn't run, nor should it - why? Because we have it defined in holidays.aho - it is not, nor should it be considered the first work day for us; the scheduler for this year should have scheduled that run time to be 1/4/16 because the Friday prior was a holiday and also because the job isn't configured to run on Saturdays and Sunday.


Regarding your "B" response where you say:

"This task to run at 'X' time on the first 'work day' of the month. Every month. When your staff is 'only' in the office working on what you consider the first work day of the month? Which technically was not Monday the 4th but Friday the 1st because it was a Friday. Our software (like thousands of others on the market) recognize Friday as a 'work day'. The observed 'New Year's Day' Holiday is an 'exception' to what occurred on the 'work day' in which it fell on."

This is what I'm disagreeing with, and I would challenge the statement "like thousands of others...". Friday, January 1st absolutely would normally be considered a work day - EXCEPT for the fact that we have it explicitly defined otherwise as not. I have worked with manufacturing software for a global company for many years where we had to deal with this but the software handled it appropriately. If a day is defined somewhere in a configuration file (in this case, the holidays.aho file) or some other means as a holiday or, a day where business processes do not run, then the software should absolutely not consider that a work day, period.

So....after saying all that, I will say this: I realize this isn't a show stopper for us but it can be a nuisance and sometimes cause issues where critical processes should run but do not. I was simply challenging the logic behind the design because as-is, it just doesn't make sense when you have a day defined as a holiday, and you have a workflow defined to apply that configuration that the software would continue to treat it as a work day?


I realize this has been a long back-and-forth discussion - sorry if I come across as frustrated but I think it was moreso from trying to explain my rationale behind my challenge as opposed to the actual concern itself. I do understand the work-arounds/options for dealing with this and I will just have to remember to employ them in the meantime where they apply. Thanks for your patience and I appreciate all the help you guys have provided!

James



 Category Survey
AutoMate BPA Server 9 version: 9.0.5
Windows version: Windows Server 2008 R2


-------------------------
<html />
Statistics
18258 users are registered to the AutoMate Discussion forum.
There are currently 0 users logged in.
The most users ever online was 5551 on 01/08/2018 at 11:11 AM.
There are currently 1241 guests browsing this forum, which makes a total of 1241 users using this forum.

FuseTalk Enterprise Edition v4.0 - © 1999-2020 FuseTalk Inc. All rights reserved.

Sitemap Network Automation Software Blog