Просрочка задач по дедлайну

Просрочка задач по дедлайну — механизм, который отслеживает сроки дедлайнов в записях и уведомляет ответственного в случае их просрочки.

1. Введение

Вам нужно отслеживать дедлайны задач и автоматически выявлять какие из задач просрочены. Для этого используется механизм «Просрочки задач по дедлайну», который каждый день в установленное время проверяет все задачи на срыв дедлайна. Если дата дедлайна уже прошла, то задаче назначается статус просрочки и ответственному за задачу отправляется уведомление на его адрес электронной почты.

2. Принцип работы

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

3. Реализация

3.1. Настройка каталога «Задачи»

Создайте каталог «Задачи». В этом каталоге будут фиксироваться все задачи, назначаемые сотрудникам. Заполните каталог полями, согласно скриншоту ниже. Рекомендуется создавать поля в том же порядке, чтобы не нужно было переназначать id полей в сценарии.

  • Статус (Статус) Описание: Этап выполнения задачи ответственным лицом. Настройки: Значения: «Новая», «В работе», «Готово». По умолчанию: первый элемент. Обязательное поле.

  • Описание (Многострочный текст) Описание: Описание сути задачи, работ, которые необходимо выполнить. Настройки: Обязательное поле.

  • Ответственный (Сотрудник) Описание: Ответственный за выполнение задачи сотрудник. Настройки: Укажите «по умолчанию: текущий сотрудник». Обязательное поле.

  • Дедлайн (Дата) Описание: Дата и время дедлайна задачи. Настройки: Укажите дату «с временем».

  • Просрочено? (статус) Описание: Просроченность задачи. Настройки: Значения: «нет», «да». Укажите «по умолчанию: первый элемент». Сделайте поле редактируемым только через API.

3.2. Создание и настройка планировщика задач

Создайте и настройте каталог «Планировщик задач». Процесс создания каталога описан в статье «Планировщик задач».

Настройка даты и времени запуска сценария

Укажите дни и время, в которые должны проверяться дедлайны задач. Например, для проверки дедлайна по будням в 10:00, настройте планировщик следующим образом:

В качестве сценария для планировщика загрузите следующий файл сценария.

Настройка сценария планировщика

Сценарий для проверки дедлайна задач выглядит следующим образом:

Сценарий запускается во время, указанное в планировщике задач. Он собирает все просроченные задачи со статусами «новый» и «в работе» компонентом «Задачи». Далее в цикле по этим задачам происходит:

  • Получение почты ответственного сотрудника (Компонент «Почта сотрудника»).

  • Изменение статуса задачи на просрочено (компонент «Изменение статуса задачи»).

  • Отправка на почту ответственного сотрудника уведомления о просрочки задачи (компонент «Отправка почты»).

Компоненты «i++» и «PT0.1S» нужны для увеличения значения итератора и временной задержки.

В сценарии необходимо изменить выделенные компоненты в соответствии с описанием ниже. Список компонентов к изменению:

  • Задачи

  • Почта сотрудника

  • Изменение статуса задачи

  • Отправка почты

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

Компонент «Задачи»

Компонент собирает все просроченные задачи со статусами «новая» и «в работе».

В поле «Каталог» укажите созданный вами каталог «Задачи». Выделенные значения нужно сопоставить с соответствующими id полей в каталоге «Задачи». Если все поля и значения в каталоге создавались в порядке скриншота структуры каталога «Задачи», то изменять значения полей не нужно.

Компонент «Почта сотрудника»

Компонент получает почту ответственного за просроченную задачу сотрудника.

В поле «Каталог» выберите катлаог «Сотрудники». В поле «ID записи» вместо значения «4» впишите id поля «Ответственный» из вашего каталога «Задачи» (если по скриншоту, то менять не нужно).

В секции «Получить» в поле «ID полей» укажите id поля с электронной почтой в каталоге «Сотрудники». Если вы не редактировали структуру каталога «Сотрудники», то менять значение не нужно.

Компонент «Изменение статуса задачи»

Компонент проставляет статус просроченности в запись задачи.

В поле «Каталог» выберите каталог «Задачи». В поле «Значения полей» укажите id вашего статуса «Просрочен», а в его значении укажите значение статуса «да» (если по скриншоту, то менять не нужно).

Компонент «Отправка почты»

Подробное описание компонента в следующей статье.

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

Укажите адрес сервера, порт (если у сотрудника почта Яндекса, то оставьте поля без изменений). Введите логин и пароль почты, с которой будут отправляться уведомления и заполните остальные поля согласно скриншоту. В поле «Текст» сформируйте произвольное сообщение (как простой текст или HTML) и вставьте ссылку на задачу.

При необходимости вместо (или совместно) с отправкой сообщения на почту можно реализовать рассылку в Telegram. Механизм реализации рассылки в Telegram из Бипиум описан в статье Интеграция с Telegram-ботом.

4. Тестирование

Создайте несколько записей в каталоге «Задачи» с наступившими и еще не наступившими датами дедлайнов. Пример заполнения записи ниже. Статус «Просрочен?» заполнять не нужно, он проставится автоматически в дальнейшем:

Дождитесь выполнения сценария, в указанное в планировщике время. В результате работы сценария, запущенного планировщиком, задачи с наступившим дедлайном должны оказаться в просроченном статусе:

По всем просроченным задачам на почту ответственных сотрудников должно прийти уведомление о просроченных задачах с ссылкой на них. При переходе по ссылке из сообщения открывается задача с просроченным дедлайном:

Last updated