LXF90:SugarCRM

Материал из Linuxformat.

Перейти к: навигация, поиск
SugarCRM

SugarCRM: Как его установить

ЧАСТЬ 1: Вашему бизнесу не повредит автоматизация работы с заказчиками. Марк Бэйн показывает, как приспособить для этих целей лучшее открытое ПО.

Содержание

Добро пожаловать в новую серию! На первом уроке я покажу, как установить отличную CRM с открытым исходным кодом. А что такое CRM? Это Customer Relationship Management – системы управления взаимодействием с клиентами. Поняли? Для тех, кто не понял, Майкл Уайтхед-младший [Michael JR Whitehead] в книге “Implementing SugarCRM” определяет эти системы так: «CRM предназначены для хранения и обработки информации о ваших клиентах – не только о продажах, но и о дальнейших взаимоотношениях и поддержке. Системы обязаны давать хотя бы минимум информации о компаниях, с которыми вы работаете и о том персонале, с которым вы в них сотрудничаете».

Между прочим, у вас почти наверняка все это есть. Мало того, что вы храните свои контакты в адресных книгах Thunderbird, KMail или (содрогаюсь) Microsoft Outlook, а счета в OpenOffice.org Calc или Microsoft Excel – небось еще и создали аж базы данных Base или Access, и записываете туда все свои сделки. Все как будто прекрасно. Но дело в том, что все ваши коллеги проделывают те же операции со своим почтовым клиентом, электронными таблицами или базой данных. Вроде ничего плохого, разве что данные многократно дублируют-ся – и это бы не беда... пока не окажется, что данные не стыкуются.

Представим себе следующую ситуацию. Пусть в число ваших заказчиков входит фирма Linux PCs Ltd. Вы записали ее почтовый адрес: Penguin House, Southwaite CA4 0AK. Но Фред справа уверяет, что правильный адрес – Penguin House, Carlisle CA4 0AK, а у Мэри слева он значится как Penguin House, Southwaite, Carlisle. Кто же прав? Настоящий адрес знает один Генри: фирма переехала, а он забыл всем про это сообщить.
SugarCRM управляется с номерами телефонов, номерами счетов и многим другим! Вам не по душе внешний вид? Его можно поменять.
SugarCRM управляется с номерами телефонов, номерами счетов и многим другим! Вам не по душе внешний вид? Его можно поменять.

Разрулить весь бизнес

Значит, CRM спасет вас от подобных ситуаций? Не только! Возможности CRM гораздо шире. Вот что вам предоставляется (опять цитирую Уайтхеда):

  • автоматизация работы персонала;
  • мониторинг потенциальных возможностей;
  • мониторинг канала продаж;
  • определение групп сотрудников и территорий их деятельности;
  • анализ основных источников прибыли;
  • работа с каталогом продукции;
  • создание выписок для клиентов;
  • гибкая система формирования отчетов;
  • мониторинг оказываемой клиентам технической поддержки;
  • разработка план-графика выполняемых работ;
  • хранение контактной информации организации;
  • унификация взаимодействия с системой для различных пользователей;
  • система контроля версий для документов.

Хорошо, а какая с этого корысть? Во-первых, уменьшатся ваши издержки. Информация будет вводиться однократно, что исключает разночтения внутри вашего предприятия. Во-вторых, ваши сотрудники всегда будут в курсе событий на предприятии, и почувствуют себя полноправными их участниками, а не винтиками (это касается и персонала, и руководителей). Заказчики также будут довольны, имея дело с компетентными, хорошо осведомленными партнерами. Как следствие, возрастут продажи.

Вы справедливо спросите: а кто я такой, чтобы об этом писать? Основное мое занятие – реализация и адаптация Clarify CRM; если у вас есть знакомые в фирме Vodafone, спросите их о проекте Cascade. Могут ли открытые CRM-системы достигать таких же результатов? Естественно, могут!

Требования к серверу

У SugarCRM нет отдельного пользовательского интерфейса – все делается через web-браузер. Это обеспечивает незавимость системы от платформы. Полагаю, вы предпочитаете Linux – так что радуйтесь: мы займемся платформой LAMP (Linux-Apache-MySQL-PHP). (Намек поняли? Именно это и надо установить на вашем сервере...)

Начнем с сервера. Я установил SugarCRM под Debian на стареньком компьютере Patriot, и мне этого хватает. Но для предприятий рекомендую следующие спецификации:

До 10 пользователей:

  • Жесткий диск IDE или SCSI емкостью 80–100 ГБ;
  • 1 ГБ оперативной памяти с ECC (обнаружение и исправление ошибок);
  • Процессор Athlon, Pentium 4, Xeon или Opteron с тактовой частотой не менее 2 ГГц.

От 10 до 100 пользователей:

  • Жесткий диск SCSI емкостью 150 ГБ;
  • 2–3 ГБ оперативной памяти с ECC;
  • Процессор Xeon или Opteron с тактовой частотой не менее 2 ГГц.

Более 100 пользователей:

  • Жесткий диск SCSI емкостью 300 ГБ;
  • 4–8 ГБ оперативной памяти с ECC;
  • Два процессора Xeon или Opteron с тактовой частотой не менее 2 ГГц.

Все тот же Уайтхед, занимавшийся SugarCRM с 1999 г., также советует использовать:

  • Сеть Ethernet со скоростью 1 Гб;
  • Источник бесперебойного питания (UPS) – бесценная штука, особенно если учесть, как они сейчас дешевеют;
  • SUSE Linux. Хотя лично я предпочитаю использовать на моих серверах Debian (SUSE 10.1 у меня тоже стоит, на рабочей станции).

Подготовка

Linux, понятное дело, у вас есть; осталось добавить Apache 2, MySQL и PHP.

Apache 2 устанавливается легко. В дистрибутиве Debian для этого нужно выполнить следующую команду

sudo apt-get install apache

После установки убедитесь, что в конфигурационном файле web-сервера включена обработка PHP-скриптов. Впрочем, в Debian это делается по умолчанию.

Установка MySQL ничуть не сложнее:

sudo apt-get install mysql-server

Все необходимые таблицы в базе данных SugarCRM позже создаст сама, а сейчас вам нужно лишь установить пароль для пользователя root. Подключитесь к базе и выполните следующий SQL-запрос:

update user
set password=password(‘ваш_пароль’)
where user = ‘root’;

Пароль не забывайте: он потребуется при установке.

Угадайте-ка, трудно ли установить PHP? Вот именно, нетрудно: процедура все та же, sudo APT-get install, только на сей раз надо приписать php. Я уже упоминал, что файлы конфигурации Apache надо правильно настроить на обработку PHP-скриптов, но в Debian уже все сделано. Однако PHP все-таки придется настраивать. Поменяем системные переменные PHP в файле php.ini, установив:

  • MEMORY_LIMIT в значение 64M. SugarCRM во время установки читает его неправильно и остается при значении по умолчанию: 8 МБ. Если не сменить эту переменную вручную, SugarCRM скорее всего упрется в лимит памяти и оставит вас с пустым экраном.
  • MAX_EXECUTION_TIME в значение 90. Так мы предотвратим появление таймаутов при импорте больших объемов данных.
  • MAX_INPUT_TIME в значение 300, а POST_MAX_SIZE в значение 25M. И то, и другое поможет загружать без ошибок файлы большого размера.
  • Увеличенное значение SESSION.MAXLIFETIME. В течение этого времени SugarCRM ожидает ваших действий, а потом отключается (по умолчанию 1440 сек = 24 мин). Лучше взять его побольше, например, 3600 секунд (1 час). Нет ничего хуже, чем намучиться, составляя длинное почтовое сообщение, и тут же убедиться: приложение успело отсоединиться, и отправить почту нельзя.

Теперь все готово для установки SugarCRM.

Позаботимся о сотрудниках

Итак, основная и самая трудная часть работы позади (а она показалась вам трудной?). Теперь загрузим архив программы с сайта http://www.sugarcrm.com, распакуем его в локальный каталог и запустим скрипт установки в браузере. Осталось только следовать инструкциям, появляющимся на экране.

Рассмотрим эти этапы поподробнее. Начнем со структуры каталогов SugarCRM. После распаковки архива вы обнаружите новый каталог, с именем вроде SugarOS-Full-4.5.0g. Этот каталог нужно скопировать в корневую директорию web-сервера (где-то в htdocs). Для доступа к SugarCRM из вашего браузера в адресной строке наберите ‘http://<имя_web-сервера>/SugarOS-Full-4.5.0g’. Например, у меня путь был таким: ‘http://hector/SugarOS-Full-4.5.0g’ (имя моего сервера – Hector).

Однако это не самый удобный вариант URL. Сотрудники вашей фирмы не знают, что такое SugarCRM (им на это наплевать) – они просто хотят максимально облегчить свою работу. Пусть имя каталога говорит само за себя.

Например, вы владелец издательства и решили выпускать новый журнал – назовем его хотя бы Linux Format (правда, красиво?). Тогда переименуем каталог в lxf. Пользователи будут набирать URL ‘http://hector/lxf’. Коротко и удобно, а действия SugarCRM никак не затрагивает. Каталог можно переименовать и попозже, но пользователей это в восторг уже не приведет. Лучше зайти в корневой каталог сервера и создать несколько символических ссылок на него, введя, допустим,

 ln -s lxf linuxformat
 ln -s lxf magazine

Доступ к программе даст любой из адресов ‘http://hector/lxf’, ‘http://hector/linuxformat’ или ‘http://hector/magazine’.

Мы почти готовы установить SugarCRM, осталось только определить, кто по умолчанию будет владеть файлами SugarCRM: это сильно повлияет на остаток процесса. Выясните, кто владелец вашего web-сервера по умолчанию, и назначьте его же владельцем каталога lxf. Например, в моем дистрибутиве Debian это ‘www-data’. Вообще-то я предусмотрел, что все файлы разрешают запись из группы, и добавил в группу себя, а сервер SugarCRM установил на моей рабочей станции: так я могу вносить все изменения прямо в файлы конфигурации.

Наконец-то установка

Увидав стартовое окно программы установки SugarCRM, считайте, что все почти готово.
Увидав стартовое окно программы установки SugarCRM, считайте, что все почти готово.
Вы, небось, уже открыли браузер и набрали URL вашего SugarCRM. При правильной настройке вашего сервера Apache на поддержку скриптов PHP вы видите стартовое окно программы установки; если не видите, значит, нужно отредактировать файлы конфигурации Apache и перезапустить сервер. Пора жать кнопку “Start”.

Шаг 1

На первом этапе установки перед вами окошко с лицензией продукта. Прочитав ее и установив соответствующую галочку, нажмите Next; вы попадете на самый полезный экран во всем процессе.

Шаг 2

Шаг 2 – самый важный: нужно вовремя подметить все ошибки и исправить их.
Шаг 2 – самый важный: нужно вовремя подметить все ошибки и исправить их.
Второй шаг – системная проверка. При этом выводится список всех компонентов, от которых зависит SugarCRM, с указанием их статуса (существует в приемлемой версии; не существует, но без него можно обойтись; не существует, но обязателен). Вам придется установить отсутствующие компоненты и обновить устаревшие.

Обычно не хватает модулей интерпретатора PHP. Что делать дальше, зависит от дистрибутива. В Debian недостающие модули легко установить через утилиту apt-get. Раздобыв все необходимые компоненты, нажмите кнопку Re-Check для повторной проверки.

И помните, нельзя верить строке, извещающей о лимите оперативной памяти в PHP: даже если вы установили этот предел как 64 MБ, вы прочтете: ‘PHP Memory Limit >= 8M OK’.

Шаг 3

Следующая задача – настройка базы данных MySQL. Фактически, настраивать ничего не придется – нужно лишь указать программе установки следующие параметры:

  • Host Name Имя хоста. По умолчанию ‘localhost’, и менять его незачем.
  • DataBase Name Имя базы данных. По умолчанию ‘SugarCRM’. Лучше заменить чем-то более осмысленным, тем более, что переименование позволит иметь на сервере больше одной системы SugarCRM. Не забудьте установить флаг Create DataBase (Создать базу данных).
  • Username/Password For SugarCRM Имя пользователя и пароль для SugarCRM; они необходимы для выполнения запросов к базе данных программы. По умолчанию ‘SugarCRM’, но опять же лучше заменить его более подходящим. Не забудьте отметить флаг Create User (Создать пользователя).
  • Populate DataBase With Demo Data Занести в БД данные демонстрационного примера. Хотите – заносите и потренируйтесь с ними, хотите – нет. Лично мне это ни к чему.
  • Privileged DataBase User Name Привилегированный пользователь БД. Обычно это ‘root’, но если вы создали другого пользователя с необходимыми привилегиями, можете использовать и его. Учтите, он должен иметь право управлять базой данных и создавать пользователей и таблицы (привилегии ‘dataBase’, ‘create user’ и ‘create tables’).
  • Privileged DataBase User Password Пароль привилегированного пользователя. Вот почему мы устанавливали пароль для ‘root’ при первом запуске MySQL (помимо заботы о безопасности, разумеется).

Все необходимые параметры указаны – нажимаем на кнопку Next. База данных будет создана позже, и если вы что-либо передумаете, можете вернуться к предыдущим шагам установки и внести изменения.

Шаг 4

Произведем базовую настройку программы. Она включает установку URL-адреса для доступа к программе и задание пароля для администратора admin. URL на данном этапе не особо важен, и потом его можно будет поменять. Оставим тот, что по умолчанию. А вот пароль для admin понадобится при настройке системы и добавлении пользователей, так что запомните его хорошенько.

Автоматическое обновление программы (флаг Enable Sugar Updates) может производить только администратор системы, и лучше этот флаг не устанавливать: у всех остальных пользователей он вызовет сообщение об ошибке. Флаг Advanced Site Security (дополнительные опции безопасности) то ли включает, то ли выключает их – неясно; поэтому я оставил его в состоянии Use Defaults (настройка по умолчанию).

Как и раньше, нажатие кнопки Next не вносит необратимых изменений, и при желании вы сможете все переиграть.

Шаг 5

Предпоследний этап. Делать ничего не надо, только проверить на экране, все ли данные указаны верно. Это ваш последний шанс изменить настройки. Готовы? Жмите кнопку Next.

Шаг 6

Сидите и наблюдайте за сборкой SugarCRM и созданием новой базы данных. Здесь бывают только 2 варианта ошибки. Первый – вы не установили пароль либо ввели его неправильно, и SugarCRM не может создать вам базу данных. Второй – неправильно указан объем памяти (см. раздел Подготовка). Придется повторить установку с самого начала, предварительно изменив строку ‘installer_locked =>true’ на ‘installer_locked => false’ в файле config.php, расположенном в каталоге программы.

Но вы-то следовали инструкциям, и я надеюсь, что никаких проблем у вас не возникло, а SugarCRM успешно установлен. В следующем месяце мы займемся тонкой настройкой системы, включая введение привычной вашим пользователям терминологии. Информация о SugarCRM и ее применении приведена на www.sugarcrm.com. Это не обязательно касается свободной версии, но все равно любопытно, как она используется в большом бизнесе. До следующего раза! LXF

Альтернативы SugarCRM

Сравнение возможностей различных версий SugarCRM. www.sugarcrm.com/crm/products/
Сравнение возможностей различных версий SugarCRM. www.sugarcrm.com/crm/products/
Существует большое количество платных программ CRM. Среди них Microsoft CRM (http://www.microsoft.com/smallbusiness/products/mbs/crm/detail.mspx), Netsuite (www.netsuite.com) и ведущее ПО для управления контактами, SalesLogix (www.saleslogix.com).

Почему же мы выбрали SugarCRM? Ответ прост: открытый исходный код. На данный момент более миллиона пользователей по всему миру используют SugarCRM. Разработку ведет SugarCRM Inc вместе с сообществом. Имеется большое количество расширений и дружелюбная поддержка на www.sugarcrm.com/forums. Если вы хотите установить такую систему у себя, бесплатная версия SugarCRM – лучший выбор.

Доступны и платные версии программы, в том числе «арендуемые», т.е. пользователь платит за программу и за сервер. В платных версиях присутствуют дополнительные модули (например, прогноз продаж Sales Forecasting). Версия Professional обойдется вам в $40 за пользователя в месяц, а версия Enterprise, позволяющая работать с базой данных Oracle – в $75.

Личные инструменты
  • Купить электронную версию
  • Подписаться на бумажную версию