Задачи: контроль, автоматизация и логика исполнения

Задача — это единица операционной работы в CRM: конкретное действие, которое сотрудник или сама система должны выполнить в рамках договора или товара или услуги. Через задачи видно, что работа действительно сделана, а не просто записана.

Сам по себе договор — это данные. Чтобы по нему что-то происходило — позвонить клиенту, согласовать отгрузку, выехать к адресу, выдать оборудование, — нужна задача: она фиксирует, что именно надо сделать, кто исполнитель и в какой срок. Без этого работа держится на памяти сотрудников и устных договорённостях, а руководитель не видит, где заказ застрял и кто за него отвечает.

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

С чем связана

Жизненный цикл

У задачи три базовых состояния: назначенная (ожидает выполнения), выполненная и отклонённая. Переход из «назначенной» — это финализация: задача завершается или отклоняется. Смена состояния — ключевой триггер бизнес-логики: она может перевести статус договора, обновить его данные и породить новые задачи. Повторно выполнить уже закрытую задачу нельзя.

Какие данные хранит

  • название и описание;
  • связь с сущностью — договором, товаром или услугой;
  • исполнителя и ответственного;
  • сроки выполнения;
  • текущее состояние;
  • комментарии и служебные отметки.

Если задача создана по шаблону, она наследует от него правила: допустимые статусы при завершении и отклонении, правила перехода статусов договора, параметры интерфейса и авто-закрытия. Ссылка на исходный шаблон хранится у задачи — по ней система знает, какие ограничения применять при завершении или отклонении. У задачи, созданной оператором вручную, шаблона нет. Подзадач у обычной задачи не бывает: ссылка всегда ведёт к шаблону, а не к другой задаче.

Как выполняется задача

Исполнитель работает с задачей на отдельной странице выполнения. У неё два режима, и оба задаются параметрами задачи, унаследованными от шаблона:

  • Режим редактирования — рабочие правки договора и его товаров и услуг до финализации. Это всегда первая вкладка «Редактирование», на которой задачу закрыть нельзя; сохранять правки можно сколько угодно раз.
  • Режим результата — финализация. На каждое значение параметров «Статус при завершении» и «Статус при отклонении» появляется своя вкладка: переход на неё подставляет нужный статус и набор обязательных фильтров, а кнопка сохранения превращается в «Завершить задачу» или «Отклонить задачу» — одно действие сохраняет договор и закрывает задачу.

Если параметр статуса не задан, вместо вкладки под формой появляется дублирующая кнопка «Завершить» или «Отклонить» — она меняет только состояние задачи, не сохраняя договор. У системной задачи исполнитель не человек, а сама CRM: она выполняет заранее заданное действие (перевести договор в статус, отправить клиенту сообщение, создать товар) и закрывает задачу без участия пользователя.

Правила и ограничения

Система не позволяет:

  • выполнить задачу вне допустимых статусов договора;
  • изменить данные договора или продуктов без разрешений;
  • завершить задачу без заполнения обязательных данных;
  • завершить задачу при нарушении условий типовой или автоматической логики;
  • выполнить задачу повторно.

Дополнительно: набор ограничений зависит от источника задачи (ручная, типовая, автоматическая), а режимы редактирования строго контролируются её параметрами.

Типичные сценарии

Оператор получает задачу «Связаться с клиентом и согласовать отгрузку». Он открывает страницу выполнения, при необходимости правит договор и завершает задачу через вкладку с нужным статусом — договор сразу переходит в этот статус.

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

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

Частые вопросы и подводные камни

  • Что будет со статусом договора, если задачу отклонить? Если у задачи задан «Статус при отклонении», договор перейдёт в него — для этого и существуют вкладка или кнопка отклонения. Отклонить задачу можно всегда, даже когда для завершения не хватает данных.
  • Можно ли «откатить» завершённую задачу? Нет. Повторно выполнить уже закрытую задачу система не даёт — результат фиксируется один раз.
  • Почему задача не даёт себя завершить, хотя я всё заполнил? Скорее всего, включён режим «Полное заполнение перед завершением»: вкладки завершения скрыты, пока не заполнены все обязательные фильтры договора и его товаров. Кроме того, форма блокируется целиком, если текущий статус договора не входит ни в один из ожидаемых наборов.
  • Почему страница задачи не даёт работать с договором? Форма блокируется, когда статус договора не входит ни в статусы родительского шаблона, ни в статусы завершения, отклонения и редактирования — это защита от правок в неподходящем состоянии.
  • Задача на товар закрыта, а статус договора не сменился — это ошибка? Нет. У задачи на товар или услугу финальный статус договора проставляет система и только когда закрыты все парные задачи. Поэтому одна закрытая задача статус ещё не переключает.

Диагностика: задача ведёт себя не так, как ожидалось

Задача не закрывается. Проверьте по порядку: заполнены ли все обязательные фильтры (в режиме «Полное заполнение перед завершением» без этого вкладки завершения скрыты) и входит ли текущий статус договора в один из ожидаемых наборов — иначе форма заблокирована целиком. Для отклонения этих ограничений нет: отклонить задачу можно всегда.

Статус договора не сменился после завершения задачи. Проверьте, не задача ли это на товар или услугу: для неё статус выставляет система после закрытия всех парных задач договора, а не сразу. Если же это задача на договор — убедитесь, что завершение шло через вкладку с нужным «Статусом при завершении», а не через дублирующую кнопку, которая меняет только состояние задачи и договор не трогает.