Примеры автоматизации
Уровень Продвинутый
создание документа из шаблона в битрикс24
- Готовим шаблон с плейсхолдерами вида {MyCompanyRequisiteRqCompanyFullName}, {TotalSum~WZ=Y}.
- В CRM пользователь нажимает кнопку «Создать документ».
- Система подставляет данные из карточки и отдаёт готовый файл.
А если у вас:
- 6 точек продажи с разными подписантами и реквизитами?
- Три варианта оплаты (1, 2 или 3 этапа) с разными процентами?
- Есть дополнительные опции - доставка, сборка, доп.гаратия и пр.
Пользователь видит эти варианты на экране и впадает в уныние.
Ручной выбор шаблона становится узким местом. Сегодня разберём, как автоматизировать сам выбор, как произвести математические расчеты, как выбрать нужные данные для заполнения плейсхолдеров в документе. А потом — почему этот подход упирается в потолок и что с этим делать.Бизнес-сценарий: точки продаж, этапы оплаты и доп. условия
Условия:
Точки продаж: на юге и на севере города.
У каждого:
- Свой адрес отгрузки.
- Свой подписант (действует по доверенности).
- Свои банковские реквизиты.
- 100% одним платежом;
- 2 этапа с произвольным (или НЕ произвольным) значением по этапам
- 3 этапа
Данные для расчёта:
- Общая сумма сделки.
- Проценты по этапам (хранятся в множественном поле).
Что должно произойти автоматически:
- Юрист видит, что необходимо подготовить документы по сделке.
- CRM сама определяет: филиал, схему оплаты → выбирает единственно верный шаблон.
- CRM рассчитывает суммы этапов и НДС → подставляет в плейсхолдеры.
- CRM генерирует договор → прикрепляет к сделке.
Звучит как магия? Давайте собирать.
Зачем нужен Юрист в этой схеме, ведь мы занимаемся АВТОМАТИЗАЦИЕЙ?
Один большой человек обещал, что через несколько лет в одном очень большом банке не будет юристов, которые готовят договоры и весь этот процесс будет автоматизирован. Прошло немного больше чем "несколько" лет, а такие юристы в этом банке есть и скорее всего их количество не уменьшилось.
Давайте будем реалистами - юрист нужен и полностью закрыть его задачи автоматизацией невозможно. Но этот специалист очень дорогой и он "расходует" деньги компании, а не зарабатывает их.
Поэтому главная задача - повысить производительность и максимально использовать его специальные знания на благо компании (с полным пониманием "за что" и почему "так дорого"), а не оплачивать по максимальной цене навыки копипастить, удалять лишнее и заполнять банковские реквизиты в документах.
Архитектура №1
Всё внутри CRM
Готовим инфраструктуру
1. В сделке:
- стадия "подготовки документов"
- поле с типом "список" - точка продаж;
- поле с типом "число" и "множественное" для хранения значений % по этапам оплаты
- поле с типом "файл", в которое будет помещен договор после его подготовки юристом
2. Смарт-процесс (или ЦРМ) "Оформление документов" с тремя стадиями (минимум для этого примера) - начало -> подготовка -> финал
В этом смарт-процессе должны быть дополнительные поля (также все поля, которые есть в сделке - контрагент, товары и т.п.):
- количество этапов оплаты с типом "целое число"
- платежи по этапам с типом "число" и "множественное"
- 3 поля - "1 этап сумма", "2 этап сумма" и "3 этап сумма" для сохранения данных по каждому полу с типом "деньги"
- НДС по этапам с типом "деньги" и "множественное"
- 3 поля для сохранения суммы НДС каждого этапа по аналогии с суммами по этапам
- поле с типом "файл" куда юрист поместит подготовленный договор
- поля для хранения данных о доверенности и подписанте с типом "строка"
3. Журнал доверенностей с необходимыми полями (номер, дата выдачи, срок действия, ФИО поверенного в формате (полное, сокращенное). При создании журнала Вы можете настроить роботов для автоматического заполнения ФИО в различных вариантах написания, а сейчас использовать необходимое значение.
4. Глобальные константы с данными о сотруднике, который подписывает документы в определенной точке продаж (пункт выше может заменить необходимость создания такой константы)
5. Шаблоны документов (по числу комбинаций «точка × схема оплаты»). Загружаем в раздел «Шаблоны документов» CRM.
Данная задача многошаговая и ее описание можно было бы разложить на несколько статей.
Я воздержусь от полного описания настройки всех роботов и бизнес-процессов.
Ниже вы найдете описание архитектуры выполнения задачи с детальным разбором наиболее сложных (по моему мнению) моментов и по которым сложно найти хорошую документацию или развернутые описания.
Также для понимания смотрите эти статьи на сайте:
- как создаются константы и переменные и для чего они нужны читайте в статье о константах
- как создать универсальный список и что в нем хранить - статья о голосовании и статья о логировании
Сборка:
шаг за шагом в направлении цели
Приступим!
Настраиваем робота в сделке
Наша задача - при переводе сделки в эту стадию дать "работу" юристу.
При настройке робота Вам необходимо настроить карту сопоставления полей сделка -> смарт-процесс
Подготавливаем шаблоны
Про плейсхолдеры и выбор значений написано немало и на сайте вендора много толковой информации по этому поводу.
Лайфхак - чтобы уменьшить количество шаблонов Вы можете создать переменную с типом "строка" и поместить туда текст пункта. В шаблоне сделать плейсхолдер {variable1} и в настройке бизнес-процесса генерации документа соединить переменную с этим плейсхолдером. В зависимости от стиля оформления ваших договоров такой вариант может сильно сократить необходимое количество шаблонов и/или уменьшить трудозатраты на обработку документа юристом
Создаем бизнес-процесс в смарт-процессе
- количество этапов оплаты
- суммы по этапам
- сумма НДС по этапам
- В настройках записи значений (следующие этапы) мы должны выбрать настройку последовательной записи, а не перезаписи значений.
- Чтобы у юриста была возможность "откатить" расчеты и сделать их снова, нам нужно обнулить значения в поле и записать новое. Без обнуления в поле будет не 3 значения по этапам оплаты, а 6.
2. Проходим циклом (элемент в конструкциях) по полю этапов оплаты и:
- Считаем общую сумму всех этапов оплаты и записываем в переменную (число)
- считаем общее количество этапов и записываем значение в переменную (число)
- считаем сумму этапа оплаты и также записываем значения в соответствующую переменную (множественная, число)
4. Добавляем конструкцию "условие" и делаем 4 варианта (слева на право):
- 1 этап
- 2 этапа
- 3 этапа
- выход (на случай ошибки)
Все записываем в переменные "1 этап сумма", "1 этап НДС", "2 этап сумма" и так далее.
ВАЖНО: НДС по последнему этапу считается как остаток от разницы между общей суммой и предыдущих этапов оплаты (не допускаем ошибки при округлении).
6. Получаем данные из списка Доверенности и сохраняем в полях смарт-процесса все необходимые для заполнения договора: Поверенный, номер, дата доверенности и др.
7. Сохраняем все значения из переменных в соответствующих полях смарт-процесса.
Делаем бизнес-процесс создания документа
1. Добавляем конструкцию "условия" и делаем следующие варианты:
- точка 1 + 1 этап оплаты
- точка 1 + 2 этапа оплаты
- и т.д.
1.3. Добавляем робота по созданию документа из шаблона:
- выбираем шаблон
- заполняем карту сопоставления полей с плейсхолдерами
- выбираем необходимые банковские реквизиты (я храню банковские реквизиты компании в Глобальных константах и при настройке создания документа в поле для выбора реквизитов указываю ту константу, которая соответствует условиям отбора).
Добавляем робота для передачи документа в сделку
Мы ставим робота на положительный финал и передаем файл в сделку.
Можно расширить функционал и поставить задачу ответственному за сделку или отправить сообщение или еще что-то.
А теперь немного объяснений
Что мы получили?
Менеджер:
- не тратит время на взаимодействие с юристом
- действует четко по сценарию
Юрист
- Имеет свое рабочее пространство в системе
- Не тратит время на выяснение условий сделки
- В разы сократил свои трудозатраты на создание документов
Компания:
- Значительное повышение производительности труда отдельных специалистов
- структурированный подход при создании документов
- Стандартизация рабочего процесса
Честный разбор
три недостатка «шаблонного» метода в любой crm системе
Недостаток №1
Размножение шаблонов
- Сегодня у нас 6 шаблонов (3 филиала × 2 схемы).
- Завтра добавился филиал в Новосибирске → х 3 шаблона.
- Послезавтра новая схема оплаты (25/75) → ещё х 4 шаблона.
- Через год у вас 100+ шаблонов, в которых невозможно ориентироваться.
Недостаток №2
Синхронизация изменений
Представьте: Вам обязательно нужно исправить определенный пункт в договоре. Этот пункт есть во всех 100 шаблонах.
- Сотрудник открывает каждый файл.
- Правит вручную.
- Перезаливает в CRM.
- Молится, чтобы нигде не ошиблись.
Недостаток №3
Тайм-аут при сложных документах
У вас много полей? 50, 80, 120 подстановок? Есть табличные части? CRM генерирует документ... 30 секунд, 120 секунд... А дальше - Тайм-аут. Документ не создан.
Объективности ради - эту проблему не сложно убрать в "коробке", но стоит ли такое решение этих денег?
Архитектура №2
Другой путь: документ как конструктор, а не как шаблон
Идея: Хранить в базе данных текстовые фрагменты (клаузы, параграфы, пункты). Каждый фрагмент имеет:
- ID
- Текст
- Метки (например: "реквизиты_москва", "этап_1", "ндс_ставка")
- Условия применения (филиал = Москва И схема = 2 этапа)
1. CRM отправляет на ваш сайт-обработчик POST-запрос с данными сделки.
2. Обработчик:
- Определяет филиал, схему оплаты, сумму.
- Рассчитывает этапы и НДС.
- Собирает документ как конструктор: берёт фрагмент №1 (шапка), затем фрагмент №2 (реквизиты филиала), затем N раз фрагмент №3 (тело этапа оплаты с подстановкой сумм), затем фрагмент №4 (подписи).
- Склеивает в файл.
- Возвращает готовый файл в CRM.
Но об этом сценарии и о дополнительных возможностях вашей CRM-системы я расскажу в следующих циклах статей:
- Зачем CRM «внешний мозг»? Архитектура сайта-обработчика для Битрикс24
- Документы-конструктор: как уйти от 100 шаблонов к одному алгоритму
- AI-ассистент в голосовании: когда робот становится помощником совета директоров
- От заказа клиента к выпуску готовой продукции: архитектура ERP в вашей CRM-системе
Если вы узнали свою компанию в этом кейсе:
- У вас 10+ шаблонов, которые отличаются одной фразой или реквизитами.
- Юристы вручную правят даты и суммы в готовых PDF.
- Вы боитесь менять типовую форму, потому что придётся править все копии.
Напишите мне. Я проанализирую ваш документооборот и скажу:
- Достаточно ли вам «внутренней» автоматизации.
- Или пора строить гибкий конструктор документов на своём обработчике.