Генератор документов Битрикс24. Как работать с таблицами?
В Битрикс24 есть встроенный Генератор документов — удобный инструмент для создания счетов, актов, УПД, договоров и любых других шаблонных документов. Он отлично справляется со своей задачей, особенно когда нужно подставить таблицу с товарами, связанными со сделкой, счетом или смарт-процессом.
Но есть один нюанс, с которым мы столкнулись на практике.
Почему таблиц из товаров бывает недостаточно
В стандартной логике Битрикс24 таблица в документе строится на основании товаров, прикреплённых к сущности. Это удобно, если у вас обычные сделки с простыми товарными позициями. Но если вы автоматизируете этапы работ, ведёте учёт трудозатрат или каждый элемент у вас — это уникальное «изделие» со своим серийным номером, то стандартные таблицы на товарах уже не подходят.
Мы столкнулись с этим, когда настраивали уч]т в отделе техподдержки.
Наш кейс: отчёт по трудозатратам на техподдержку
Мы предоставляем ежемесячный отчёт по трудозатратам нашим клиентам. Раз в месяц в Битрикс24 создаётся элемент смарт-процесса «Техническая поддержка», а внутри него — дочерние элементы «Время», которые фиксируют каждую задачу, над которой работал специалист:
- Описание работ
- Ссылка на задачу
- Затраченное время (в часах)
Накапливается подробный журнал. И в конце месяца нужно сформировать документ с таблицей.
Как мы решили задачу
Вместо стандартной таблицы товаров мы начали генерировать таблицу на основе связанных элементов смарт-процесса. Главное преимущество — мы можем использовать любые поля этих элементов: от времени до комментариев и ссылок.
С технической точки зрения это делается через модификацию шаблона документа — вместо обращения к товарной таблице мы используем данные из связанных смарт-элементов, и подставляем их в табличную часть документа.
Шаблон максимально простой для примера, но я на всякий случай оставлю ссылку для скачивания:
Из карточки связанных элементов Время нам и нужно получать данные для отображения в таблице.
Нюанс: напрямую из вкладки «Связанные элементы» не получить данные (пока)
Важно понимать: чтобы сформировать документ на основе связанных элементов смарт-процесса, недостаточно просто иметь вкладку с этими элементами. Генератор документов Битрикс24 на сегодняшний день не умеет напрямую вытягивать данные из связанных смарт-элементов, отображающихся во вкладке типа «время», «услуги» и т. д.
Надеюсь, Bitrix24 в будущем реализует такую возможность. Это сильно упростит автоматизацию. Но пока приходится использовать обходной путь.
Как мы решаем это сейчас
Мы создали пользовательское поле Время (тип связь с элементом CRM а именно со Смарт-Процессом время) куда автоматизация «прокидывает» ID связанных элементов. То есть каждый раз, когда создаётся элемент «Время» внутри техподдержки, он автоматически попадает в это поле в родительской карточке. А уже из этого поля мы формируем таблицу в документе.
Это дополнительная настройка, но она полностью автоматизирована и работает стабильно.
Если вам интересно, в отдельной статье могу подробно рассказать, как мы настроили эту автоматизацию.
Самый важный вопрос, откуда взять коды обращающиеся к нужным полям элементов смарт-процесса указаных в пользовательском поле.
Тех. поддержка - это смарт-процесс (головная карточка).
Время (затраты) - это название множественного поля, которое мы создали для смарт-процесса Тех . поддержка
Применяем фильтр и получаем доступ к полям СП Время.
Подставляем коды в шаблон и получаем таблицу с нужным нам набором полей и оформлением.
Если вам нужна помощь в настройки подобных шаблонов вы можете обратиться к нам