Настройка View
Мы разработали инструмент, который позволяет настраивать без привлечения программистов все основные интерфейсы пользователей в SuiteCRM:
- страницы редактирования / Edit View любого модуля
- страница просмотра / Detail View
- страница списка / List View
- базовая и расширенная формы поиска / Basic и Advanced Search Forms
При помощи инструмента «Настройки View» под любую роль пользователя можно переопределить набор отображаемых полей у любого модуля на любой странице SuiteCRM. Например, карточка клиента для роли «Клиентский менеджер» может содержать 40 различных полей с информацией о клиенте, а для роли «Оператор внешнего колл-центра» может содержать 8 полей, при чем расположенных совсем по-другому.
Кроме того, что мы можем показывать разный набор полей для разных ролей, мы еще можем показывать разный набор полей в зависимости от свойств самой записи / объекта. Например, если запись модуля «Обращения» имеет основную категорию «Банкоматы», то мы показываем один набор полей, а если обращение имеет тип «Пластиковые карты», то другой набор полей, который в чем-то пересекается с обращениями по банкоматам, но во многом расходится.
Как это работает:
- Настраивается форма: вывод полей в нужном порядке по колонкам;
- Выбирается роль пользователя, которому выводится эта форма;
- Если есть зависимость настройки формы от значения определенного поля, то указывается для какого значения.
Кроме того, что инструмент «Настройка View» работает со всеми стандартными модулями SuiteCRM, она еще работает с Единым Окном (также наша собственная разработка). Единое Окно — это такой вид интерфейса, в котором сотруднику показывается вся необходимая для его текущей задачи информация. При помощи Настройки View в Едином окне конфигурируются буквально все разделы без привлечения программиста:
Как мы это реализовали:
В стандартной поставке SuiteCRM заложена возможность настраивать отображение полей. Делается это при помощи инструмента «Студия». Нас она не устроила, потому что:
- не умеет настраивать разные формы / View, под разные роли;
- создает дополнительные файлы, которые кэшируются при первом же открытии формы и которые в последствии могут усложнять индивидуальную настройку форм.
Наше же решение, в отличие от стандартной Студии SuiteCRM, хранит все настройки в базе данных в сериализованном виде, и достает конфигурацию открываемой формы в момент загрузки страницы с учетом текущей обстановки (кто открывает, какие свойства у открываемой записи).
Что из последнего сделали:
- Мы добавили возможность по желанию задавать, какие поля должны быть только для просмотра (read-only).
Что в планах:
На очереди добавить возможность настраивать без программистов и изменения в коде обязательность полей. Конфигурирование обязательности полей от Вендора есть только через код, и оно статично – т.е. всегда один и тот же набор полей может быть обязательным. Мы сделаем возможность также через нашу «Настройку View» задавать, какие поля при каких условиях становится обязательными. Если вам интересно, как это будет работать, пишите нам и мы с удовольствием поделимся и техническими подробностями реализации, и обсудим кейсы использования.