Database
 sql >> Base de données >  >> RDS >> Database

Partie 1 – Comment installer SuiteCRM et procéder à l'ingénierie inverse de sa base de données

Les applications de gestion de la relation client (CRM) existent depuis un certain temps. Nous pourrions discuter beaucoup de leurs avantages et inconvénients en les comparant les uns aux autres. Dans cette série, nous allons jeter un œil à la base de données derrière un CRM open source populaire :SuiteCRM. Nous montrerons également comment installer tout ce dont nous avons besoin. Dans les prochains articles, nous organiserons le modèle de données et verrons comment il réagit aux modifications apportées à l'interface utilisateur.

SuiteCRM :un CRM Open Source

Un CRM est un système qui aide à gérer les relations avec les clients. Les CRM sont utilisés pour automatiser les activités de vente, de marketing, d'assistance et de collaboration ; ils peuvent également être utilisés pour analyser des données. Nous pouvons utiliser des données précédemment stockées (données clients, historique des ventes) et des contacts (appels, e-mails, messages et chats) pour définir notre public cible et trouver la bonne manière de leur présenter nos produits et services. Outre les CRM opérationnels et analytiques, des CRM collaboratifs sont parfois utilisés. Ils peuvent servir de plate-forme de communication entre notre entreprise et nos fournisseurs et distributeurs.

SuiteCRM est la version open source de SugarCRM. Les deux sont des CRM modernes qui offrent des moyens d'améliorer considérablement notre activité. Nous allons maintenant passer par le processus d'installation de SuiteCRM, puis importer la base de données CRM dans Vertabelo pour voir ce qu'il y a dedans.

Comment installer SuiteCRM localement

Vous pouvez trouver tout ce dont vous avez besoin sur le site Web de SuiteCRM. Cependant, j'ai décidé d'opter pour la version Bitnami SuiteCRM car elle est conviviale et plus facile à installer. Personnellement, je recommanderais le site de Bitnami pour de nombreux autres packages open source.

Le processus d'installation est très simple. Le package Bitnami installera tout le nécessaire pour prendre en charge SuiteCRM, y compris ses instances MySQL et phpMyAdmin. La seule tâche manuelle consiste à sélectionner un port différent pour MySQL. (Bien sûr, cela n'est nécessaire que si MySQL est déjà installé localement.) Vous devrez également choisir un nom d'utilisateur et un mot de passe pour accéder à l'interface graphique et à phpMyAdmin.

Quelle est la prochaine ?

Après une installation réussie, vous pouvez accéder à SuiteCRM via l'URL http://localhost/suitecrm. Si tout s'est bien passé, vous verrez quelque chose comme le formulaire ci-dessous :

Entrez le nom d'utilisateur et le mot de passe que vous avez choisis lors du processus d'installation. Une fois connecté, vous verrez l'écran d'administration de SuiteCRM, qui ressemble à ceci :

On peut déjà voir "Ventes", "Marketing", "Support", "Activités" et "Collaboration" au menu. Nous avons donc vraiment installé le CRM !

C'est la partie utilisateur; nous y reviendrons plus tard. En ce moment, nous allons jeter un œil à la base de données. Tout d'abord, nous allons nous connecter à l'instance phpMyAdmin qui a été installée avec SuiteCRM. Nous pouvons y accéder à http://127.0.0.1/phpmyadmin/. Tapez "root" à l'invite du nom d'utilisateur et entrez le même mot de passe que vous avez choisi précédemment.

Nous allons exporter l'intégralité de la base de données sous forme de script SQL à l'aide de l'exportation phpMyAdmin option.

L'étape suivante consiste à utiliser Vertabelo pour importer notre modèle et l'examiner de plus près. Après avoir cliqué sur Créer un nouveau modèle dans Vertabelo, nous serons redirigés vers un écran comme celui ci-dessous.

Nous allons entrer le nom du modèle et choisir le moteur de base de données (MySQL). Après cela, nous utiliserons le Choisir un fichier bouton dans la section "Depuis SQL" pour sélectionner le fichier avec le script SQL à partir du disque. Cliquez sur Importer SQL et si tout s'est bien passé, nous verrons "Le modèle a été importé avec succès. ” :

Cliquez sur COMMENCER LA MODÉLISATION bouton pour commencer la modélisation dans Vertabelo.

Le modèle de base de données importée

Nous sommes maintenant dans l'écran de structure du modèle Vertabelo. Nous pouvons jeter un coup d'œil rapide au modèle :

La première chose que vous remarquerez probablement, ce sont les cinq (!) avertissements. Ils sont tous causés par le même problème :la clé primaire manquante dans 5 tables - le address_book , config , custom_fields , email_cache et users_feeds les tables. Ces clés manquantes ne poseront aucun problème à Vertabelo et nous pourrons continuer notre travail comme d'habitude. Comme dans d'autres systèmes, les avertissements ne sont pas des erreurs, mais ils sont utilisés pour signaler quelque chose qui pourrait être une erreur logique ou une incohérence.




Une autre chose évidente est que nous avons 201 tables dans notre modèle. Jusqu'à présent, ils sont juste placés autour de l'écran. Dans le prochain épisode, nous réorganiserons la disposition des tableaux pour rendre notre modèle Vertabelo plus convivial.

Notez que ce modèle manque de références. La raison en est que SuiteCRM utilise le moteur de stockage MyISAM, qui ne prend pas en charge les clés étrangères. Les relations sont définies au niveau de l'application dans le vardefs.php dossier.

Suivant :réorganiser notre modèle

Vertabelo propose 3 façons d'organiser notre modèle :

  1. Par domaine
  2. Par raccourcis de tableau et d'affichage
  3. Par raccourcis de référence

Les détails sont présentés dans cette vidéo YouTube. Dans le prochain article, nous utiliserons ces conseils pour organiser notre modèle en quelques domaines fonctionnels.

Les CRM sont complexes et doivent couvrir de nombreux objectifs différents. C'est la principale raison pour laquelle la base de données SuiteCRM compte plus de 200 tables. MyISAM est utilisé comme moteur de stockage car il offre de meilleures performances. Les auteurs ont choisi de perdre les contraintes de clé étrangère et de rendre cette performance possible. La prochaine fois, nous explorerons quelques fonctionnalités supplémentaires de Vertabelo conçues pour gérer des modèles de cette taille.