sql >> Base de Datos >  >> RDS >> Database

Parte 1:cómo instalar SuiteCRM y aplicar ingeniería inversa a su base de datos

Las aplicaciones de gestión de relaciones con los clientes (CRM) existen desde hace algún tiempo. Podríamos discutir mucho sobre sus ventajas y desventajas al compararlos entre sí. En esta serie, echaremos un vistazo a la base de datos detrás de un popular CRM de código abierto:SuiteCRM. También mostraremos cómo instalar todo lo que necesitamos. En próximos artículos, organizaremos el modelo de datos y veremos cómo reacciona a los cambios realizados en la interfaz de usuario.

SuiteCRM:un CRM de código abierto

Un CRM es un sistema que ayuda a manejar las relaciones con los clientes. Los CRM se utilizan para automatizar actividades de ventas, marketing, soporte y colaboración; también se pueden utilizar para analizar datos. Podemos utilizar datos previamente almacenados (datos de clientes, historial de ventas) y contactos (llamadas, correos electrónicos, mensajes y chats) para definir nuestro público objetivo y encontrar la forma correcta de presentarles nuestros productos y servicios. Además de los CRM operativos y analíticos, a veces se utilizan CRM colaborativos. Pueden servir como plataforma de comunicación entre nuestra empresa y nuestros proveedores y distribuidores.

SuiteCRM es la versión de código abierto de SugarCRM. Ambos son CRM modernos que brindan formas de mejorar significativamente nuestro negocio. Ahora pasaremos por el proceso de instalación de SuiteCRM y luego importaremos la base de datos de CRM a Vertabelo para ver qué hay dentro.

Cómo instalar SuiteCRM localmente

Puede encontrar todo lo que necesita en el sitio web de SuiteCRM. Sin embargo, decidí optar por la versión de Bitnami SuiteCRM porque es fácil de usar y más fácil de instalar. Personalmente, recomendaría el sitio de Bitnami para muchos otros paquetes de código abierto.

El proceso de instalación es muy sencillo. El paquete Bitnami instalará todo lo necesario para admitir SuiteCRM, incluidas sus instancias de MySQL y phpMyAdmin. El único trabajo manual es seleccionar un puerto diferente para MySQL. (Por supuesto, eso solo es necesario si ya tiene MySQL instalado localmente). También deberá elegir un nombre de usuario y una contraseña para acceder a la GUI y phpMyAdmin.

¿Qué sigue?

Después de una instalación exitosa, puede acceder a SuiteCRM a través de la URL http://localhost/suitecrm. Si todo salió bien, verá algo como el siguiente formulario:

Ingrese el nombre de usuario y la contraseña que eligió durante el proceso de instalación. Después de iniciar sesión, verá la pantalla de administración de SuiteCRM, que se ve así:

Ya podemos ver “Ventas”, “Marketing”, “Soporte”, “Actividades” y “Colaboración” en el menú. ¡Así que realmente tenemos el CRM instalado!

Esta es la parte del usuario; volveremos a eso más tarde. En este momento, vamos a echar un vistazo a la base de datos. En primer lugar, iniciaremos sesión en la instancia de phpMyAdmin que se instaló con SuiteCRM. Podemos acceder a él en http://127.0.0.1/phpmyadmin/. Escriba "root" en el indicador de nombre de usuario e ingrese la misma contraseña que eligió anteriormente.

Exportaremos toda la base de datos como un script SQL usando phpMyAdmin Export opción.

El siguiente paso es usar Vertabelo para importar nuestro modelo y verlo mejor. Después hacemos clic en Crear nuevo modelo en Vertabelo, seremos redirigidos a una pantalla como la siguiente.

Ingresaremos el nombre del modelo y elegiremos el motor de la base de datos (MySQL). Después de eso, usaremos la opción Elegir archivo en la sección "Desde SQL" para seleccionar el archivo con el script SQL del disco. Haga clic en Importar SQL y si todo salió bien, veremos “El modelo se importó correctamente. ”:

Haga clic en COMENZAR A MODELAR botón para comenzar a modelar en Vertabelo.

El modelo de base de datos importado

Ahora estamos en la pantalla de estructura del modelo Vertabelo. Podemos echar un vistazo rápido al modelo:

Lo primero que probablemente notará son las cinco (!) advertencias. Todos están causados ​​por el mismo problema:la clave principal que falta en 5 tablas:el address_book , config , custom_fields , email_cache y users_feeds mesas. Estas llaves que faltan no causarán ningún problema en Vertabelo y podremos continuar con nuestro trabajo como de costumbre. Como en otros sistemas, las advertencias no son errores, sino que se utilizan para señalar algo que podría ser un error lógico o una incoherencia.




Otra cosa obvia es que tenemos 201 tablas en nuestro modelo. Hasta ahora, solo se colocan en la pantalla. En la próxima entrega, reorganizaremos el diseño de la mesa para que nuestro modelo Vertabelo sea más fácil de usar.

Tenga en cuenta que este modelo carece de referencias. La razón es que SuiteCRM usa el motor de almacenamiento MyISAM, que no admite claves externas. Las relaciones se definen a nivel de aplicación en el vardefs.php expediente.

A continuación:Reorganizar nuestro modelo

Vertabelo ofrece 3 formas de organizar nuestro modelo:

  1. Por áreas temáticas
  2. Por tabla y ver accesos directos
  3. Por atajos de referencia

Los detalles se presentan en este video de YouTube. En el próximo artículo, usaremos estos consejos para organizar nuestro modelo en algunas áreas funcionales.

Los CRM son complejos y deben cubrir muchos propósitos diferentes. Esa es la razón principal por la que la base de datos de SuiteCRM tiene más de 200 tablas. MyISAM se utiliza como motor de almacenamiento porque ofrece un mejor rendimiento. Los autores optaron por perder las restricciones de clave externa y hacer posible esta actuación. La próxima vez, exploraremos algunas características más de Vertabelo diseñadas para manejar modelos de este tamaño.