• Yes, I know a job won't start when it is already running. That is why I asked “when does a SQL Agent job with multiple occurrences end”.

    The single job I constructed should have worked, provided SQL Agent detected the fourth occurrence should be the last and ended the job at that point in time. My guess is that the job does not end until the first occurrence after the ending time.

    On 2/12, I replaced the original job with two jobs, one AM and one PM job. These jobs have worked so far and I think will solve the problem.