Database
 sql >> Base de Dados >  >> RDS >> Database

Parte 1 – Como instalar o SuiteCRM e fazer engenharia reversa em seu banco de dados


Os aplicativos de gerenciamento de relacionamento com o cliente (CRMs) já existem há algum tempo. Poderíamos discutir muito sobre suas vantagens e desvantagens ao compará-los entre si. Nesta série, vamos dar uma olhada no banco de dados por trás de um CRM de código aberto popular:SuiteCRM. Também mostraremos como instalar tudo o que precisamos. Nos próximos artigos, organizaremos o modelo de dados e veremos como ele reage às alterações feitas na interface do usuário.

SuiteCRM:um CRM de código aberto


Um CRM é um sistema que ajuda a lidar com os relacionamentos com os clientes. Os CRMs são usados ​​para automatizar atividades de vendas, marketing, suporte e colaboração; eles também podem ser usados ​​para analisar dados. Podemos usar dados previamente armazenados (dados de clientes, histórico de vendas) e contatos (ligações, e-mails, mensagens e chats) para definir nosso público-alvo e encontrar a maneira certa de apresentar nossos produtos e serviços a eles. Além dos CRMs operacionais e analíticos, às vezes são usados ​​CRMs colaborativos. Eles podem servir como uma plataforma de comunicação entre nossa empresa e nossos fornecedores e distribuidores.

SuiteCRM é a versão de código aberto do SugarCRM. Ambos são CRMs modernos que fornecem maneiras de melhorar significativamente nossos negócios. Passaremos agora pelo processo de instalação do SuiteCRM e, em seguida, importaremos o banco de dados do CRM para o Vertabelo para ver o que está dentro.

Como instalar o SuiteCRM localmente


Você pode encontrar tudo o que precisa no site do SuiteCRM. No entanto, decidi ir com a versão Bitnami SuiteCRM porque é amigável e fácil de instalar. Pessoalmente, eu recomendaria o site da Bitnami para muitos outros pacotes de código aberto.

O processo de instalação é muito simples. O pacote Bitnami instalará tudo o que é necessário para dar suporte ao SuiteCRM, incluindo suas instâncias MySQL e phpMyAdmin. O único trabalho manual é selecionar uma porta diferente para o MySQL. (Claro, isso só é necessário se você já tiver o MySQL instalado localmente.) Você também precisará escolher um nome de usuário e senha para acessar a GUI e o phpMyAdmin.

O que vem a seguir?


Após uma instalação bem-sucedida, você pode acessar o SuiteCRM via URL http://localhost/suitecrm. Se tudo deu certo, você verá algo como o formulário abaixo:



Digite o nome de usuário e a senha que você escolheu durante o processo de instalação. Após o login, você verá a tela de administração do SuiteCRM, que se parece com isso:



Já podemos ver “Vendas”, “Marketing”, “Suporte”, “Atividades” e “Colaboração” no menu. Então nós realmente temos o CRM instalado!

Esta é a parte do usuário; voltaremos a ele mais tarde. Agora, vamos dar uma olhada no banco de dados. Antes de tudo, faremos login na instância do phpMyAdmin que foi instalada com o SuiteCRM. Podemos acessá-lo em http://127.0.0.1/phpmyadmin/. Digite “root” no prompt de nome de usuário e digite a mesma senha que você escolheu anteriormente.

Exportaremos todo o banco de dados como um script SQL usando o phpMyAdmin Export opção.



O próximo passo é usar o Vertabelo para importar nosso modelo e dar uma olhada melhor nele. Depois de clicarmos em Criar novo modelo no Vertabelo, seremos redirecionados para uma tela como a abaixo.



Vamos inserir o nome do modelo e escolher o mecanismo de banco de dados (MySQL). Depois disso, usaremos o Escolher arquivo botão na seção “From SQL” para selecionar o arquivo com o script SQL do disco. Clique em Importar SQL e se tudo correu bem, veremos "O modelo foi importado com sucesso. ”:



Clique no botão INICIAR MODELAGEM botão para começar a modelar no Vertabelo.

O modelo de banco de dados importado


Agora estamos na tela de estrutura do modelo Vertabelo. Podemos dar uma olhada rápida no modelo:



A primeira coisa que você provavelmente notará são os cinco (!) avisos. Todos eles são causados ​​pelo mesmo problema:a chave primária ausente em 5 tabelas – o address_book , config , custom_fields , email_cache e users_feeds mesas. Essas chaves ausentes não causarão problemas na Vertabelo e podemos continuar nosso trabalho normalmente. Como em outros sistemas, os avisos não são erros, mas são usados ​​para apontar algo que pode ser um erro lógico ou uma inconsistência.




Outra coisa óbvia é que temos 201 tabelas em nosso modelo. Até agora, eles são apenas colocados na tela. Na próxima edição, vamos reorganizar o layout da mesa para tornar nosso modelo Vertabelo mais fácil de usar.

Observe que este modelo não possui referências. A razão é que o SuiteCRM usa o mecanismo de armazenamento MyISAM, que não suporta chaves estrangeiras. As relações são definidas no nível do aplicativo no vardefs.php Arquivo.

A seguir:reorganizando nosso modelo


A Vertabelo oferece 3 formas de organizar nosso modelo:
  1. Por áreas temáticas
  2. Por atalhos de tabela e visualização
  3. Por atalhos de referência

Os detalhes são apresentados neste vídeo do YouTube. No próximo artigo, usaremos essas dicas para organizar nosso modelo em algumas áreas funcionais.

Os CRMs são complexos e precisam abranger muitos propósitos diferentes. Essa é a principal razão pela qual o banco de dados SuiteCRM possui mais de 200 tabelas. MyISAM é usado como mecanismo de armazenamento porque oferece melhor desempenho. Os autores optaram por perder as restrições de chave estrangeira e tornar esse desempenho possível. Da próxima vez, exploraremos mais alguns recursos do Vertabelo projetados para lidar com modelos desse tamanho.