DEV Community

Cover image for Déployer une solution de BI légère avec son premier dashboard en 5 étapes
Jean-Yves Pellé
Jean-Yves Pellé

Posted on • Originally published at pelle.link

Déployer une solution de BI légère avec son premier dashboard en 5 étapes

Cet article s'adresse à ceux qui connaissent le SQL et souhaitent mettre en place rapidement une solution de reporting minimaliste (sans passer par l'artillerie lourde comme PowerBI, Tableau, Looker Studio, et consorts).

Partons d'une base de données (de type Mysql, Mariadb ou Postgresql) comprenant une table monthly_sales contenant des montants mensuels de vente:

month sales_amount_eur
2024-01-01 8730
2024-02-01 9620
2024-03-01 4210
2024-04-01 6732
2024-05-01 9921
2024-06-01 8176
2024-07-01 7623

Notre but est de:

  • Générer un rapport reprenant ces informations dans un graphique.
  • Le rafraîchir tous les 1er du mois.

1 - Installation

Commençons par installer CTFreak.

Sous Ubuntu, ouvrez votre terminal et lancez:

sudo snap install ctfreak
Enter fullscreen mode Exit fullscreen mode

Pour les installations alternatives (Docker, Windows, Freebsd, ...), ça se passe ici.

2 - Connexion

Rendez vous sur http://localhost:6700 et connectez-vous via admin / ctfreak.

Login

3 - Ajout d'une base de données

Allez dans DatabasesNew Database, sélectionnez son type (par exemple Postgresql), puis renseignez ses paramètres de connexion:

Ajouter une base de données

Validez pour ajouter la base de données.

4 - Création d'un projet

Un projet va permettre de regrouper toutes nos tâches de reporting.

Allez dans ProjectsNew Project:

Création d'un projet

Validez pour créer le projet.

5 - Création d'une tâche SQL Report

Notre rapport sera généré via une tâche de type SQL Report associé à notre projet.

Pour ce faire, allez dans ProjectsReportingNew Task, sélectionnez SQL Report comme type de tâche puis renseignez les informations suivantes:

Création d'une tâche SQL Report

Dans la requête SQL, le suffixe _c_month permet d'indiquer que les valeurs de date doivent être formatées comme des mois dans le graphique.

Validez ce formulaire pour créer une tâche qui à partir d'une requête SQL générera un rapport des ventes mensuelles tous les 1er du mois à 9h, avec une rétention de 2 ans (730 jours) des rapports générés.

Exécutons cette tâche dès maintenant (via ProjectsReportingSales report -> Execute) pour obtenir le rapport attendu:

Exécution de la tâche

Conclusion

Comme vous pouvez le constater, ce rapport répond bien à notre besoin initial.

N'hésitez pas à exploiter les autres fonctionnalités de CTFreak pour y apporter quelques améliorations comme:

  • Ajouter d'autres graphiques.
  • Ajouter des paramètres de tâche pour définir la période des ventes à prendre en compte.
  • Ajouter un accès en lecture seule pour un utilisateur donné (via le rôle Viewer).
  • Envoyer à chaque génération du rapport un mail avec un lien pour l'ouvrir (via un Notifier).
  • Synchroniser la génération de plusieurs rapports (via les tâches de type Workflow).

Top comments (0)