Great to have an analysis discussion. I have those often where I work.
To your point: I have thought about how and where pump functionality would best fit. My thoughts are:
- It's the zone that has its water source from the pump or elsewhere. So, where one defines zones, to me, would be the most 'logical' place. That's why I mentioned adding a check box on the zone definition screen (the Edit popup).
- Since one either says to supply voltage to the pump electrical header (or not), all that is needed is a predicate; i.e., a check box (This zone uses the pump (or something)).
- Once the zone is defined, given that's where the water source is tied, one only then need to include the zone in whichever schedule.
- To me, if you're going to use a pump-sourced zone at all, water pressure is available if and only, for that specific zone, the pump IS ALSO turned on. Again, that's my rationale for binding the check box to the zone.
- Re per run or program, if I'm going to use a pump-sourced zone at all, anywhere, it MUST also have the pump turned on. To me, why, for a pump-sourced zone, would I ever want to run a zone without the pump? Doesn't make sense (to me). Similar reasoning for a program. If the zone is included, it ALWAYS implies the pump needs to be turned on.
- All of the above implies placing the check box at the zone definition level. Then, if I include that zone in some run or schedule (which I do often enough), if the zone needs the pump, that's also included.