Большое внедрение Битрикс24. Проблемы и решения
- Проблемы внедрения Битрикс24
- Задача
- Решение через штатные возможности и регламенты. Пригодно для облачной версии.
- Неаккуратное, но быстрое решение через вмешательство в программный код.
- Переписываем логику на обработчик события редактирования задачи. Сохраняем возможность обновления
- Пробуем решение через бизнес-процессы
- Как организовать внедрение Битрикс24 в компании?
Три последних этапа внедрения:
- Поиски виновных.
- Наказание невиновных.
- Награждение непричастных.
Андрей Орлов, Записки автоматизатора
В статье
Битрикс24 — не игрушка было сказано много хорошего. Я сделал два вывода:
1. система уникальна и хороша, по возможности ее надо использовать без доработок;
2. если это действительно важно, можно заняться развитием Битрикс24 силами программистов.
Цель сегодняшней статьи — дать ответственному за внедрение понимание возможностей системы, гибкости настроек и стоимости доработок Битрикс24, если вы на них решились.
Какую ценность вам дает внедрение — зависит от компании.
Cпособный руководитель может использовать Битрикс24 как прекрасный инструмент управления коллективом.
Сегодня будем решать задачи по доработке Битрикс24.
Позитива будет существенно меньше, а технических подробностей больше.
Вам может быть интересно:
Внедрение Битрикс24 Бизнес-процессы Битрикс24
ИНТЕРВОЛГА как веб-интегратор
Веб-интеграция это создание крупных информационных веб-систем, глубоко интегрированных в бизнес Заказчика. Это снижение затрат на работу с клиентами, рост продаж и автоматизация процессов.
ИНТЕРВОЛГА – компетентный веб-интегратор. Мы можем решить все задачи веб-интеграции собственными силами. Большинство наших проектов – комплексные, интеграционные.
Наш принцип: приносить пользу бизнесу клиента за счет осмысленного применения веб-технологий.
Битрикс24 – одна из ключевых платформ, с помощью которых мы решаем интеграционные задачи.
Проблемы внедрения Битрикс24
Проблему я обозначил в первой статье и повторю ее.
Любая сложная бизнес-функция в Битрикс24 нуждается в проверке, прежде чем вы начнете ее всерьез использовать.
Очень может оказаться, что функция реализована совсем не так, как вы этого хотели. Очень может оказаться что все работает с странностями, которые вы посчитаете неприемлемыми ошибками.
Несколько примеров.
Пример первый, мистический.
Иногда сообщение, которое было написано в Живую ленту портала много месяцев назад, вдруг появляется на самом верху. Поскольку акцента на дате и времени в дизайне не сделано, сотрудники считают его новым.
Мистика в том что в нашем облачном портале это происходит регулярно и, казалось бы, вне всякой системы. Однажды, когда я улетел в Москву на семинар, в портале появилось скромное сообщение “Буду в 11”.
Глюк отлавливался неоднократно, есть обращения в поддержку (43661 и 23169).
На счастье, нам удалось понять в чем источник проблемы. Когда вы редактируете статьи Wiki (специфический и редко используемый раздел), вверх в живой ленте поднимаются сообщения, очевидно случайно имеющие тот же ID.
Наш дотошный ведущий специалист Сергей Покоев даже снял видео про этот глюк.
С 26 мая 2014 года “ожидаем исправления”.
Пример второй, или “разве никто этим пользуется?”.
В Битрикс24 есть CRM. Ее можно интегрировать с сайтом.
Выглядит это так.
Есть прекрасный сайт прекрасной компании Итгаз, которая производит и поставляет сложное газовое оборудование.
На сайте есть 8 опросных листов, которые автоматически становятся лидами CRM.
Если сайт на Битриксе, то подобная интеграция требует не более часа настроек.
Лид выглядит так:
Очень удобно, когда такой автоматически созданный лид сразу становится задачей ответственному. Если этого не сделать, сотрудник должен сам контролировать свой список лидов или отслеживать уведомления в почте. Неудобно.
Такая функция есть, она реализована через Бизнес-процессы.
Так вот, этот “бизнес-процесс”, который просто создает задачу на базе нового лида, не работает.
Там сделана очень простая ошибка, которая исправляется за 2 минуты.
Пример третий, “копейка”.
Тестируем сложную, но нужную функцию: генерация счетов и предложений из CRM.
Создаем товар.
Добавляем этот же товар в предложение… и видим что появилась одна лишняя копейка.
Но при печати коммерческого предложения копейка, как по волшебству, пропадает.
Поддержка и развитие
Обращение в поддержку, как правило, не дает ожидаемого результата. Девушки вежливо поблагодарят за рекомендации и пообещают подумать над пожеланиями. Ошибку передадут ответственным. Злой баг может уйти “в разработку” и вернуться оттуда через несколько месяцев. Или не вернуться.
Виноваты в этом не девушки из первого уровня поддержки. Денис Шаромов, руководитель ТП Битрикса, тоже не решает задачи стремительного развития сложных функций и роста общего качества.
Максимум что он может сделать — подготовить и выпустить очень приличный
FAQ по Битрикс24.
Я не считаю что поддержка и Битрикс в целом работают плохо. Я лишь констатирую что та позиция, которую может занять Битрикс24 в мире корпоративного программного обеспечения, требует совсем иного подхода к разработке и поддержке.
Причины и выводы
Система Битрикс24 реально очень сложна как программный продукт.
Рывком исправить все ошибки нельзя.
Радикально увеличить функциональность тоже.
Честно говоря, на рынке, где в основном вяло крутят пропеллеры, Битрикс работает на сверхзвуковой скорости.
Для того, чтобы “просто пользоваться”, нужно расслабиться и подождать пока Битрикс все доделает.
А если нужно внедрять систему в самое ядро бизнес-процессов, как системообразующий софт — нужны гиперзвуковые технологии разработки. Их нет.
Если вы решили доверять бизнес-критичные задачи этому продукту, действуйте поэтапно и осторожно.
Я бы советовал тактику маленьких шагов.
Выберите то, что работает “почти” как вам нужно, внедрите, получите эффект.
Затем переходите ко второму шагу.
Если вы напишете ТЗ на 100 страниц и будете искать внедренца, который это сделает — через 2 года, заплатив пару миллионов рублей, вы все еще будете ждать старта внедрения.
Разминка закончена, переходим к силовым упражнениям.
Задача
Мы возьмем одну задачу доработки Битрикс24 и решим ее.
Напоминания о задачах.
Сейчас в задаче можно сделать напоминания, но они почему-то появляются не у ответственного, а у постановщика. Спорная реализация, требует улучшения.
Решение через штатные возможности и регламенты. Пригодно для облачной версии.
Проблема невнимания сотрудников к своим задачам — базовая, принципиальная проблема. Непонятно что они тогда вообще делают в портале, если не замечают у себя появления новых задач.
Я бы разработал и ввел простой регламент:
Каждый день сотрудник перед уходом домой смотрит новые задачи. Если у него нет вопросов по задаче, он обязан ее принять. Если есть вопросы — задать. Аналогично с “начать выполнение” и просрочкой.
Руководителю для контроля нужно воспользоваться конструктором отчетов.
Вот так выглядит результат
Я уверен что 2-3 показательных внушения сотрудникам на основании подобного отчета наведут порядок.
Трудоемкость: регламент, отчет, проведение 1 воспитательной беседы — 1-2 часа.
Неаккуратное, но быстрое решение через вмешательство в программный код.
Помним, что Битрикс24 — сайт на Битриксе. Внутри — просто компоненты, шаблоны, таблицы базы данных.
То, что один программист сделал, другой всегда сломать изучить и изменить может.
Этим и займемся.
Что такое “задачи” в Битрикс24?
Это набор таблиц в базе данных и несколько компонентов в модуле tasks. Программист может понять как работают уведомления и найти место, которое нужно изменить.
Напоминания о задачах — класс в модуле tasks. Его код исследовать особо смысла нет, логика работы проста.
Сами напоминания хранятся в таблице
Самое интересное — место в коде компонента tasks.task.edit, где устанавливаются напоминания.
Видно что компонент, обладая данными о задаче, просто создает напоминания постановщику задачи (текущему авторизованному пользователю).
Кстати. По этому коду видно, что если напоминание установлено, оно никогда не будет удалено. Последнее напоминание не удаляется ни в коробочной, ни в облачной версии. Тикет в поддержку 58401.
Решение напрашивается — добавить “ответственного” и “соисполнителей”. Код написан “просто в лоб” без какой-либо оптимизации.
Проверяем:
Вот что видим в таблице с напоминаниями:
Вот напоминание у моего “виртуала” в почте.
Трудоемкость: 2 часа на программирование.
Более корректным решением будет реализация логики в обработчике события создания задачи. Это сохранит возможность обновлений. Это мы сделаем далее.
Переписываем логику на обработчик события редактирования задачи. Сохраняем возможность обновления
В предыдущем способе решения мы писали код прямо в компоненте. Это некрасиво, есть правильный способ, которому учат разработчиков на Битриксе — собственный обработчик события создания задачи.
Способ на первый взгляд простой и прямой, написать надо то же самое. Но на деле все несколько сложнее и вот почему:
- в обработчик события Битрикс передает только номер задачи, остальные данные нужно получать;
- напоминания не являются частью задачи, их приходится получать вызовом другого метода;
- самое неприятное — Битрикс добавляет напоминания, разбирая POST, ПОСЛЕ того, как вызывает событие добавления задачи. Как следствие — никакого простого и аккуратного способа обработать именно установку напоминания не найдено.
Можно было вызывать агента с отсрочкой в 5 секунд, делать очередь заданий на установку дополнительных уведомлений, или писать триггер на уровне базы данных, но все это неэстетично.
Наименьшим злом была признана обработка того же POST по условию.
-
раздражающая мелочь: поля в таблице и в POST называются немного по-разному, для этого пришлось писать следующее:
В целом код несложный и работает нормально.
Трудоемкость: написание программного кода — 3 часа.
Если включить исследование и преодоление разнообразных затруднений, общение с техподдержкой — еще 10 часов чистого времени.
Пробуем решение через бизнес-процессы
В предыдущем способе решения мы писали код. Более интересный и понятный администратору (не-программисту) способ — настроить бизнес-процесс.
Конструктор бизнес-процессов — перспективный и очень интересный элемент Битрикс24.
С его помощью можно “рисовать” процессы, задавать условия и действия.
Теоретически таким инструментом должен пользоваться специалист по процессам, организатор. На практике требуются очень нетривиальные приемы и пользоваться ими может только программист, специалист по Битриксу.
С помощью дизайнера бизнес-процессов можно выполнять любые действия, от ознакомления сотрудников с документами до публикации новостей на подключенных к контроллеру сайтах.
Нужно создать процесс “напоминание пользователю-ответственному за задачу” и вызвать это уведомление в нужный момент.
Для этого мы создадим новый шаблон бизнес-процесса всего из одного шага.
У шаблона процесса будут параметры:
Эти параметры используются при создании уведомления:
Процесс готов. Чтобы все работало, нужно вызвать его в нужное время и передать параметры из задачи.
К сожалению, на момент написания статьи Битрикс может запускать бизнес-процессы автоматически только для элементов инфоблоков, документов или сущностей CRM.
Для задачи бизнес-процесс автоматически не запускается.
Вызов бизнес-процесса нужно запрограммировать. Это можно сделать в обработчике события редактирования задачи.
Печально, но просто вызвать бизнес-процесс нельзя, он стартует на базе нового элемента инфоблока, к которому привязан. В нашем случае получается, что нужно в этот инфоблок передать интересующие нас свойства задачи, и затем бизнес-процесс запустится сам.
Сделать это можно программно, однако теряется весь смысл применения бизнес-процессов: тонкая настройка частной логики БЕЗ программиста.
Трудоемкость: неоправданно высока, решение не выполнено.
Тем не менее если Бизнес-процессы станут более функциональны, просты и будут работать везде — это будет прекрасный инструмент расширения функций портала.
Решение обычной задачи может занять от 2 до 20 часов в зависимости от ее сложности.
Каждое изменение внешнего вида и частной логики придется проводить через кастомизацию комплексных компонентов, а возможно, и изменение базы данных.
Подтверждается тезис, с которого я начал: доработки Битрикс24 вполне возможны и приносят результат, их трудоемкость достаточно высока, поручать их можно разработчику с широким кругозором и пониманием бизнес-задач.
Как организовать внедрение Битрикс24 в компании?
Если вы четко видите цель, оставьте заявку на обсуждение интеграционного проекта.
Вам может быть интересно:
Внедрение Битрикс24 Бизнес-процессы Битрикс24
Читайте далее:
Внедрение и настройка 1С-Битрикс24: Энтерпрайз
Статьи по теме
- аренда команды (от 2 человек, не менее 3 месяцев);
- итерации с фиксированной ценой (1-3 месяца длительностью).
- регулярные онлайн-планерки с заказчиком;
- квалифицированных специалистов;
- организованную команду (находятся в одном помещении, что упрощает решение рабочих вопросов);
- полную прозрачность и регулярность отчетов о результатах.
- нагруженный интернет-магазин;
- личный кабинет;
- оптовые продажи — B2B-платформа;
- маркетплейс;
- технический аудит сайта;
- Битрикс24 — корпоративные HR-порталы;
- Битрикс24 — построение CRM-системы;
- Битрикс24 — личные кабинеты сотрудников;
- Битрикс24 — аудит портала;
- 1С — интеграция с другими системами;
- 1С — доработка системы;
- маркетинг — комплексное интернет-продвижение;
- маркетинг — продвижение для B2B.