Список як Продукт — кастомізация генератора документів Бітрікс24

14 Січня 2021

наступна стаття
Марія Чернецька

Керівник проєктів

Марія Чернецька
Список як Продукт — кастомізация генератора документів Бітрікс24

З появою генератора документів у Бітрікс24 коефіцієнт корисної роботи співробітників різко зріс, а витрати часу — навпаки, впали. Функціонал дозволяє за лічені секунди створювати зі шаблонів повноцінні документи, куди підставляється вся необхідна інформація. Залишається лише роздрукувати, послати по електронній пошті або зберегти на диск для зберігання. Генератор на відмінно взаємодіє зі сутностями CRM, однак не передбачає можливості підтягувати інформацію зі Списків. Але якщо у Вас коробковий Бітрікс24 — не сумнівайтеся, генератор зможе взаємодіяти зі списками після певних доопрацювань. Доведено розробниками Авіві.

Основне про генератор документів

Автоматичне створення документів з розмічених певним методом шаблонів стало можливим ще в 2017 році у вигляді кастомного застосунку в Бітрікс24.Маркетплейс. Але вже 1 березня 2018 року на презентації версії "Гонконг" команда Бітрікс24 представила цей функціонал в якості штатного, за що зірвала бурхливі овації глядацької зали. 

Дійсно, інструмент виявився зручним, корисним та дуже ефективним. Після впровадження в хмарному сервісі, користувачі виявили в комплекті з генератором ще й набір шаблонів типових документів (відповідно до правил діловодства для різних країн світу), що значно полегшило роботу всієї компанії.

1 преза генератора.png

Але навіть якщо потрібного шаблону не було, створити його і завантажити в систему могли як інтегратори, так і самі співробітники, що мають уявлення про текстових редакторах, типу MS Word, і прочитали інструкцію з правилами розмітки. Удосконалення функціоналу дозволило генератору витягати інформацію з потрібних полів різних сутностей СRM. На момент написання статті це Лід, Угода, Контакт, Компанія, Рахунок та Пропозиція. Цього практично достатньо, щоб генерувати всілякі документи на безліч друкованих сторінок і з безліччю полів підставленої інформації. Але кожен бізнес унікальний і часом використовує в своїх бізнес-процесах нелінійні рішення, зав'язані на роботі з Сутностями. Саме така ситуація склалася у одного з наших зарубіжних замовників — маркетингового агентства Bedrock з Каліфорнії, США.

100500 ялинок

СRM від Бітрікс24 дозволяє моделювати найрізноманітніші бізнес-процеси, за якими працює компанія в плані продажів товарів або послуг. Менеджери можуть не просто накопичувати інформацію про взаємодію з клієнтом, але й обмінюватися документами, вести облік товарів, створювати різноманітні пропозиції і робити повторні продажі. Однак не завжди функціоналом СRM можливо повною мірою відобразити модель роботи з клієнтом.

У наших замовників немає типових клієнтів, яким продають однаковий набір послуг або їхню варіації. Кожен покупець у них, можна сказати, кастомний: він отримує набір пропозицій, кожна з яких також має десятки варіантів, взаємопов'язаних між собою. Для такої діяльності абсолютно не підходить робота з сутністю Продукт, у якого є свій усталений набір характеристик. У конкретному кейсі "продуктом" є сукупність різної кількості складових з індивідуальними характеристиками.

Найпростіший приклад з ялинкою: як продукт, це дерево, у якого є характеристики висота, колір і, скажімо, "пухнастість". Якби наші замовники продавали ялинки, працювати з таким продуктом в Бітрікс24 було б легко і просто. Але в їхньому випадку, ялинка може складатися із сотні дрібних характеристик: діаметра стовбура на ділянці від лінії зрубу до нижніх гілок, відсотком смоли в деревині, кількістю голок на кожному окремому відгалуженні, що, в свою чергу, буде залежати від розташування гілочки до соняшної стороні зростання…

2 ghbvth.png

Таким чином, потрібно створювати 100500 продуктів "Ялинка" з урахуванням ВСІХ можливих варіантів, або використовувати Списки в Бітрікс24. Наші клієнти вибрали цей раціональний варіант ще на початку, але в такому випадку генератор документів не міг формувати комерційні пропозиції, рахунки, доручення, накладні та інше. Нашій команді потрібно було навчити генератор документів черпати дані зі Списків.

Практична реалізація

Якщо зовсім коротко і зрозуміло: розробники Авіві створили кастомний функціонал, що дозволяє виводити в документи Список, як Продукт. Оскільки списки клієнта представлені динамічними таблицями, то вирішити завдання методом привласнення змінним статичних значень — так званий "хардкод" — не можна.

Виходячи з технічного завдання, ми реалізували максимально простий та зручний метод роботи для співробітників. У коробковому Бітрікс24 замовника був створений новий Highload-блок, куди вносяться всі можливі характеристики їхніх взаємопов'язаних продуктів. Наш кастомний код обробляє дані і дає генератору документів команди, за якими будуються таблиці в потрібних місцях шаблону документа, що вже бачать користувачі.

3 пример.png

Важливо відзначити, що генератор документів не втратив і штатну здатність взаємодії з Сутностями Бітрікс24. Якщо необхідно підставити поля з угод, Лідів тощо, це буде можливо на ряду з підстановкою даних зі Списків.

Також хотілося б звернути увагу, що побудова таблиць Списків відбувається аналогічно з алгоритмами Бітрікс24. У шаблоні вказаний лише один рядок, куди система вставляє особливий код, згенерований нашим обробником. І вже генератор документів підставляє в таблицю потрібну кількість рядків та стовпців, наповнює їх даними зі Списків, що відповідає кількості елементів Списку, прив'язаним до поточної сутності. Тому важливо, щоб при створенні кастомних шаблонів в потрібному місці завжди був лише одна рядок — інакше генератор документів "не зрозуміє", що від нього вимагається.

Заділ на майбутнє

У конкретному кейсі була реалізована лише необхідна для роботи частина функціоналу. Наповнення Highload-блок, як відомо, відбувається з адмін-панелі коробкового Бітрікс24 і за це, в конкретному випадку, відповідає людина з необхідними правами доступу. Ми оцінили і запропонували функціонал, що дасть можливість заповнювати характеристики продуктів рядовим менеджерам в Порталі Бітрікс24, але поки замовник відклав це питання на потім. В адмінпанелі додавання полів характеристик для генерації документа виглядає ось так:

MtjBxDF блур.png

У будь-якому випадку кастомізация функціоналу генератора документів є важливим досягненням, розширює можливості системи і, головне, — відповідає потребам замовника Авіві. Якщо Ви також активно користуєтеся Списками, ми з радістю поділимося нашими напрацюваннями в цьому напрямку. Адже крім генератора документів у нас ще є функціонал, що дозволяє групове редагування всіх полів списків в Бітрікс24.

banner_ukr.png


Схожі статті
Записатись на консультацію

Ми зв'яжемось з Вами протягом 10 хвилин