Обсуждение примера на официальном Форуме

На практике график работы ресурсов на задачах может быть любым. Начиная с классической пятидневки и заканчивая вахтами. Реализация графика работы ресурсов осуществляется при помощи
Календарей и
Календарных исключений.
Смоделировать на операции работу четырех Исполнителей по вахтовому методу <сутки-трое>. Под Исполнителем в данном случае подразумевается любой ресурс — от сменного дежурного до комплексной бригады.

Самое важное при моделировании сложных пересекающихся графиков работы разных групп ресурсов на одной задаче помнить о том, что эти группы должны быть в разных
Командах. У смен, вахт и прочих групп ресурсов рабочее время может пересекаться частично или вообще не пересекаться (пересменки). Чтобы они могли независимо друг от друга выходить на исполнение задачи их размещают в разных
Командах. В этом случае алгоритм программы не будет искать общее у всех ресурсов из разных Команд рабочее время, чтобы производить работы. Каждая
Команда работает независимо от других.
Создаем в
Гантте или
Таблице операций Операцию длительностью например 20 дней.
Создаем в таблице
Ресурсы записи наших четырех Исполнителей.
Календари в свойствах ресурсов пока не трогаем, ими мы займемся позже.
Заходим в свойства операции
Назначения и назначаем наших четверых Исполнителей, не забывая каждого из них помещать в созданную для него
Команду.
Теперь настроим для нашей
Операции и Исполнителей рабочее время. Начинаем с таблицы
Недели. Поскольку мы в данном примере моделируем рабочее время без экзотических перерывов (Новогодние каникулы, Предпраздничные укороченные дни, Технологические окна и т.п.), то считаем, что наши Исполнители работают все дни года. Вахтовый метод подразумевает работу все 24 часа вахты. Создаем в таблице
Недели запись для круглосуточной недели
Неделя 7х24. В данном примере отсутствуют перерывы на обед, пересменки и т.д. Вы можете их заложить самостоятельно.
На базе этой Недели будут формироваться
Календари Исполнителей. Помимо данной
Недели 7х24 нам понадобится
Пустая неделя. Это
Неделя, в которой отсутствует рабочее время. На основе этой
Пустой недели мы будем моделировать перерывы в работе.
Теперь перейдем с таблицу
Календарные исключения и создадим там дни, по которым наши Исполнители не будут выходить на работу — дни отдыха. Создаем Первый день отдыха. При моделировании подобных циклических исключений необходимо создать их так, чтобы они заведомо происходили во время всего проекта. Наша
Операция планируется к началу 15 июля 2014 года, поэтому создаем Первый день отдыха заведомо раньше, например в январе 2014 года. После этого он начнет повторяться постоянно.
Указываем ему начало 1 января в полночь и окончание 2 января в полночь, т.е. ровно сутки. В настройке
Периодичность повторения указываем, что исключение повторяется каждый 4 и в выпадающем списке выбираем <День>. Аналогично настраиваем Второй, Третий и Четвертый дни отдыха. У них выставляются даты 2-3, 3-4 и 4-5 января.
Теперь на основе имеющихся
Недель и
Календарных исключений необходимо собрать
Календари для Исполнителей. Переходим в таблицу
Календари.
На основе нашей круглосуточной недели создаем чистый
Календарь круглосуточный. Это просто
Календарь исполнения нашей
Операции. Работы на ней можно производить в любое время.
Календари Исполнителей тоже создаются на основе
Недели 7х24, поскольку каждый из них выходит на
Операцию в определенный день по графику и работает 24 часа. Далее в каждый из
Календарей добавляем три дня отдыха (
Календарных исключения) по следующему принципу:
- Первый Исполнитель работает 1, а отдыхает 2, 3 и 4 день.
- Второй Исполнитель работает 2, а отдыхает 1, 3 и 4 день.
- Третий Исполнитель работает 3, а отдыхает 1, 2 и 4 день.
- Четвертый Исполнитель работает 4, а отдыхает 1, 2 и 3 день.
Календари готовы. Теперь их необходимо назначить. В таблице
Ресурсов в поле
Календарь указываем каждому Исполнителю его личный
Календарь. В
Гантте работ или таблице
Операции назначаем нашей
Операции Календарь 7х24.
Производим расчет. Исполнители выходят на
Операцию раз в четыре дня друг за другом.
Мы реализовали график работы <сутки-трое> путем периодического отключения рабочих дней Исполнителям при помощи
Календарных исключений.
Внимание! При моделировании Календарных исключений не используйте последний день февраля или последние дни месяцев, в которых 31 день. Это нестандартные дни, имеющие собственный график повторяемости, что может внести искажения в желаемый результат.
Примеры
Модель созданная в данном примере.
Пример модели в Spider Project
Модель с более сложным графиком. Добавлены вахты.
Пример с вахтами