If the user would like to use a master schedule to control the points based on holidays so that they don't have to change them on all schedules, they can do so with example below.
Note: By default if not changed, schedules write at level 15. Programs write to level 14. If priority levels have changed, make sure that the program writes at higher priority than the schedule for this to work.
Create a new schedule that will be the master and has no default value. Configure schedule with holidays how you want. Note: No points are linked to this schedule, leave them in their respective schedules.
Go to folio and query for "schedule" and select the master schedule to tag it as "masterSchedule"
Add "masterScheduleRef" tag that references this new master schedule to all your equips you want to apply this to
Create a new program that uses the curVal of the masterSchedule to write to the schedule point. Below is an example logic.
Logic Flow: If masterScheduleCurVal is false, set occMode (schedule point) to false else set to null.
Reason we say if its false is because normally thats when the building is unoccupied and holiday values are set to false. This can be changed for different scenarios or create different program for different logic.
Thats it, now if there is a holiday event, it would control the point and set it to off else it'll let the schedule control it.
Another way would be to remove point scheduleRef by not making them schedulable anymore. Then applying a "normalScheduleRef" on the equip along with the "masterScheduleRef'. Then create the logic in the program to control the point solely by using the values of the schedule. That means the schedules won't have any points linked to them. You'll just have the schedules configured how you want them. The logic is below for something like this.
If normalScheduleCurVal is true and masterScheduleCurVal is null, set occMode (schedule point) to true, else if normalScheduleCurVal is false and masterScheduleCurVal is null, then set occMode to false, else set occMode as masterScheduleCurVal.
So basically its saying if there is a value on masterScheduleCurVal to control occMode, else don't and let the normalScheduleCurVal control it.