Вы всегда можете программно перебрать триггеры задания и посмотреть, действительны ли они и будут ли они срабатывать в будущем (GetNextFireTimeUtc ()).
Если задание является долговременным, оно будет существовать в планировщике даже после того, как все триггеры сработали, и не осталось ни одного, который мог бы запустить задание. Если задание недолговечно, оно будет удалено из планировщика после истечения времени последнего запуска.
Вы также можете реализовать прослушиватель, который будет создавать пользовательскую запись о завершении задания, например, на основе его запуска в базе данных.