По-рано в тази серия импортирахме модела на база данни на SuiteCRM във Vertabelo и показахме как да използваме функциите на Vertabelo, за да го организираме. В тази статия ще видим колко често срещани CRM данни се съхраняват в неговата база данни. Ще проверим и предположенията, направени в част 2 за връзките между таблиците и техните функции. Ако е необходимо, ще направим модификации на модела.
Какво имаме в момента?
В част 1 инсталирахме SuiteCRM локално с помощта на инсталационния пакет Bitnami. След успешното влизане, главният екран на SuiteCRM изглежда като този по-долу:
Базата данни на SuiteCRM, наречена „bitnami_suitecrm“, е достъпна на място http://127.0.0.1/phpmyadmin. Припомняме, че моделът има 201 маси.
Завършихме част 2 от тази серия с модела, организиран по следния начин:
Основни изисквания за CRM
CRM трябва да ни позволи да водим записи на нашите клиенти и да следим контактите (обаждания, срещи и т.н.), които имаме с тях.
Клиентите са централни за всяка CRM система. Трябва да съхраняваме техните основни организационни данни (име, адрес, приходи, брой служители) и техните данни за контакт (телефон, мобилен телефон, имейл, уебсайт и може би дори социални акаунти). Трябва също така да следим административните данни, като например кога и от кого са добавени или актуализирани техните записи в системата.
Когато мислим за действия, свързани с клиента, обикновено мислим за разговори и срещи. Бихме могли да имаме и някои други действия, които не изискват контакт с клиента:проверка дали проблемът е разрешен, дали е извършено плащане и подобни неща. Искаме да запазим запис на предишни действия, но също така се нуждаем от възможността да планираме бъдещи събития. Освен това ще съхраняваме началния и крайния час на действието, кой е вмъкнал и актуализирал данни за действие, кой е инициирал това конкретно действие и кой е отговорен за него.
Разбира се, има и куп други неща – като вече продадени продукти и услуги и потенциални нови продажби – които също бихме могли да добавим към CRM. Но в тази статия ще се съсредоточим върху това как SuiteCRM съхранява клиентски данни, обаждания и срещи.
Управление на клиенти
Клиентските организации се наричатсметки в SuiteCRM. Ето какво представлява Създаване на нов акаунт екранът изглежда така:
И ето как изглежда таблицата „акаунти“ в базата данни на SuiteCRM:
В рамките на accounts
таблица, атрибутите съхраняват информация, въведена в Създаване на нов акаунт екран:
- Основни клиентски данни:
name
,description
,industry
,annual revenue
,“rating
,ownership
,employees
,ticker symbol
- Данни за контакт:
phone_fax
, атрибути на адрес за фактуриране, атрибути на адрес за доставка,phone_office
,phone_alternate
,website
- Промени в клиентските данни в CRM:
created_by
,modified_user_id
,assigned_user_id
,date_entered
,date_modified
иdeleted
.
Повечето от тези атрибути са от типа varchar, тъй като CRM трябва да може да съхранява въведени от потребителя данни от всякакъв възможен тип.
accounts
таблицата е свързана с много други таблици в базата данни на SuiteCRM. Всички отношения са установени според предположенията, описани в част 2 от тази поредица.
Сметките в SuiteCRM са основно списък с клиенти. Те са свързани с много други таблици в системата:contacts
, opportunities
, bugs
, cases
.
В SuiteCRM-говори, контакти са действителни хора, с които говорим от името на тяхната организация (не забравяйте, че в CRM-говоренето тези организации се наричат „акаунти“). Можете да зададете нов контакт към акаунт, както е показано по-долу:
Данните на лицето се съхраняват в contacts
маса. account_contacts
таблица ни позволява да свържем много контакти с даден акаунт.
Възможности вътре в SuiteCRM са предвидени възможности за продажби. Те са обвързани с етапа на продажби. opportunities
и account_opportunities
таблиците се използват за съхраняване на данни за множество възможности, свързани с един акаунт.
Както може да се досетите от името им, bugs
и accounts_bugs
таблиците съхраняват данни за проблеми, свързани с определени акаунти. Модулът SuiteCRM също ни позволява да въвеждаме решения и да проследяваме хронологията на грешки. Грешките са свързани с calls
, contact
, cases
и други таблици.
Модулът „случаи“ се използва за въвеждане и проследяване на проблеми, свързани с услугата. След като добавим нов случай, можем да добавим грешки, свързани с този случай.
Обаждания
Всяка CRM система ще съхранява информация за обажданията до клиенти; SuiteCRM не е по-различен. За да добавите ново обаждане, щракваме върху Дейности --> Обаждания и попълнете необходимите данни. Ще добавим ново обаждане и ще го свържем със съществуващ акаунт и потребител в нашата система.
Ето какво е Обажданията раздел в базата данни изглежда така:
В calls
таблица, можем да видим някои от същите атрибути като в accounts
маса. Атрибутите created_by
, modified_user_id
и assigned_user_id
отнасят се до потребителя(ите), който(и) е влязъл(и) в това повикване, променил го е или е назначен към повикването. parent_type
и parent_id
двойка обозначава коя таблица е посочена и стойността на първичния ключ за тази таблица. Повечето от другите атрибути се разбират сами.
Същата структура, използваща релация много към много, се използва за свързване на обаждания с потребители, възможни клиенти и контакти.
След като кликнете върху Запазване бутон, можем да видим нов запис на разговори в нашите Обаждания списък. Сега ще надникнем в базата данни, по-специално в calls
и calls_users
таблици.
В calls
таблица можем да видим, че “parent_type” =Accounts и че идентификаторът в parent_id
полето е идентификационният номер на акаунта. В базата данни има няколко таблици, които използват същия атрибут, за да се свържат с една от няколко други таблици. Докато parent_id
ще съдържа стойността на първичния ключ в посочената таблица, parent_type
обозначава към коя таблица ще се свържем.
Разбира се, в calls_users
таблица ще свържем това извикване с назначен потребител.
Срещи
„Срещи и води ” е групата от таблици, използвани за съхраняване на данни, свързани със срещи и потенциални клиенти. Въпреки че е очевидно какви могат да бъдат данните от срещите, водещи отнасят се до потенциалния интерес на клиентите към нашите продукти и услуги. По-късно ще използваме тези възможни клиенти и ще ги свържем с възможности, обаждания и срещи.
Ще забележим, че някои общи правила за именуване на полета в meetings
таблица и за свързване на срещи с контакти, възможни клиенти и потребители се прилагат в този раздел.
Както при обажданията, срещите също могат да бъдат възложени на потребители и свързани с клиенти. Ще влезем в нова среща, като щракнем върху Дейности --> Срещи --> Насрочване на среща .
Данните за срещата, веднъж въведени, се съхраняват в SuiteCRM; можем да го видим в списъка със срещи. Както при обажданията, срещите могат да бъдат възложени на акаунти, контакти, задачи, възможности, грешки, случаи, възможни клиенти, проекти, задачи на проекти и цели.
В базата данни meeting
таблицата съдържа данни за новодобавената среща. parent_type
и parent_id
атрибутите се използват по същия начин и за същата цел като calls
данни.
meetings_users
таблицата съхранява информация за потребителите, които са назначени към определена среща.
Първичните ключове са произволно генерирани хеш стойности. Това ни позволява да имаме уникални стойности за всеки първичен ключ в цялата база данни, а не само във всяка таблица. Това е особено удобно, когато използваме същия атрибут като външен ключ за много различни таблици. Един атрибут съдържа стойността на ключа, докато друг съдържа името на посочената таблица. Това осигурява много по-голяма гъвкавост – повече от необходимостта на системите, покриващи няколко бизнес ситуации в реалния живот.
В част 4, която ще затвори тази серия, ще разгледаме по-отблизо останалата част от SuiteCRM, включително кампании, проекти, възможности и администриране на документи.