I've suddenly realised why both AddSchedule and AddScheduleDetailed exist :-)

I will do EditSchedule and EditScheduleDetailed in the same way, unless you can think of a way to leave any fields that are not supplied as the existing values?