Заметки на полях

Блог о CRM системах и обо всем на свете...

Использование Studio при разработке новых модулей SuiteCRM

Инструмент Studio доступен в SuiteCRM по умолчанию. Это очень полезный инструмент, который позволяет локально модифицировать многие параметры модулей установленных в CRM систему.

С помощью Studio легко можно модифицировать любой модуль установленный в CRM системе. Можно добавить новые поля данных, изменить отображение модуля в панели списка, изменить форму редактирования и форму отображение записи модуля. Все изменения делаются с помощью графического интерфейса и не требуют никакого знания программирования. Studio сама внесёт необходимые изменения в базу данных и php файлы системы. И все это отлично работает на этапе эксплуатации CRM системы, но если разработка модуля все ещё продолжается, то использование Studio может привести к массе дополнительной работы.

Был у меня такой пример. Был разработан модуль для обработки заказов флексографской этикетки. Модуль был передан клиенту для тестовой эксплуатации. И во время тестовой эксплуатации клиент несколько раз просил изменить интерфейсные элементы (отображение списка заказов и расположение полей данных в записи модуля) и даже добавить одно справочное поле. Т.к. модуль фактически был готов, то я поленился каждый раз пересобирать модуль и устанавливать новую версию на клиентском сервере и все по быстрому сделал в Studio. Ну а так как все делалось на клиентском сервере фактически в On-Line режиме, то и все внесённые изменения не были задокументированны. И через месяц тестовой эксплуатации, перед окончательной сдачей модуля в коммерческую эксплуатацию потребовалось внести некоторые изменения в модуль, которые нельзя выполнить в Studio и требовалось вмешательство в код php файлов модуля. В итоге при подготовке новой версии модуля, естественно, все изменения сделанные в Studio на стороне клиента пришлось переносить в саму структуру модуля. Ну а так как перечень и порядок изменений сделанных в Studio не был задокументированн, пришлось  потратить массу времени на дополнительные согласования с клиентом.
После данного опыта использования Studio до сдачи в коммерческую эксплуатацию модуля я для себя решил, что все, даже самые малые и элементарные изменения модуля во время тестовой эксплуатации буду делать только в среде разработки модуля и поставлять клиенту новые версии модуля вместо изменений в Studio.
Использование Studio до окончательной сдачи в коммерческую эксплуатацию модуля приводит к потенциальным проблемам. Studio можно использовать только для окончательного тюнинга готового модуля под запросы клиента.