Nous avons récemment installé OpenConcerto (https://www.openconcerto.org) dans notre entreprise et c’est votre serviteur qui s’y est collé.
OpenConcerto c’est quoi et pourquoi ce choix ?
OpenConcerto est un ERP sous environnement JAVA. Entendez par là, un logiciel qui vous permet de gérer votre entreprise. Il gère à la fois votre CRM (Customer Relation Manager = Gestionnaire de relations Clients), la comptabilité, la gestion commerciale, et pleins d’autres fonctions. Dans notre société, nous avions déjà mis en place notre propre ERP sous environnement WEB (LNMP = Linux + NGinx + MariaDb + PHP) permettant les fonctions de CRM et de suivis des stocks mais il nous manquait l’implémentation de la gestion commerciale et de la comptabilité. Auparavant, notre gestion commerciale ne nécessitait pas d’énorme ressource, nous faisions une gestion par documents avec un suivi simple par listing des fichiers. Cela prenait plus de temps pour la création des documents mais le volume de documents générés (Devis, Bon de commande, Factures, …) était encore compatible avec notre activité. Pour la comptabilité, nous la sous-traitions…
Oui mais voilà ! Les affaires commençaient à augmenter et notre gestion commerciale « à la papa » devenait assez fastidieuse à maintenir. De plus, notre expert-comptable nous avait laissé entendre que nous devions prochainement nous équiper d’un logiciel qui permette la certification des factures (selon une loi de finances 2016 Française qui a été simplifiée depuis). Comme il faut mieux anticiper un changement plutôt que de le subir, nous entreprîmes de nous moderniser via un logiciel. Ma volonté était d’avoir un logiciel open source mais très orienté « entreprises ».
Ayant dans une vie passée déjà utilisé des logiciels de gestions commerciales comme SAGE Gestion commerciale et CIEL et comment dire… avoir était pris pour une pompe à fric, nous avons donc fais le tour des logiciels pour TPE/PME en gardant à l’esprit de rester dans des coûts « raisonnables ». Ainsi, le choix économique était notre premier critère de sélection. Nous étions prêt à investir jusqu’à 1000 € une fois pour toute ! (pas de location déguisée avec des contrats SAV fantômes). Notre deuxième critère était la possibilité de travailler de n’importe où avec une connexion internet assez rapide (minimum ADSL) et en multi-utilisateurs. Et le tout avec une très grande fiabilité !
Comme nous avons uniquement un NAS Synology qui nous sert de serveur de fichier, je désirais, au préalable, installer cette solution logiciel sur un environnement Linux. Je n’ai rien contre Micro$oft mais généralement les solutions logicielles proposées pour ce système d’exploitation oblige à payer, encore et encore… Je savais donc qu’il allait falloir se retrousser les manches pour l’installation et l’utilisation. De plus, il nous fallait une communauté d’utilisateurs assez importante et active en cas de pépins ou de questions.
C’est ainsi que nous sommes tombés un peu par hasard sur la solution logicielle apportée par OpenConcerto. Un argument de poids : ce logiciel est complètement gratuit. De plus, comme il peut fonctionner sous Linux : tout est gratuit ! Cerise sur le gateau, le logiciel a été créé et est maintenu par des Français (société ILM Informatique, basée dans la Somme (80) à Abbeville). J’ai déjà eu besoins de leurs compétences et cela aide d’avoir un éditeur de logiciel qui possède la même langue maternelle que la sienne.
J’en resterai là pour la présentation du logiciel. Ce n’est pas le thème de cet article et je vous invite de l’installer en suivant le reste de ce tuto pour l’essayer.
Téléchargements d’OpenConcerto et des fichiers nécessaires
Rendez-vous sur la page de téléchargement d’OpenConcerto : https://www.openconcerto.org/fr/telechargement.html. La version présente, au moment de la rédaction de ce tuto est la version 1.5. Une version 1.5.1 doit sortir dans les jours qui viennent pour être compatible avec la fameuse loi de finances 2016. Ainsi, remplissez le formulaire d’ILM puis téléchargez les différents fichiers (ou cliquez sur les liens ci-dessous) :
- OpenConcerto pour Windows version 1.5 – version multi-postes ou OpenConcerto pour Linux (plusieurs choix possibles selon votre distribution) : ce logiciel est à installer sur les postes clients selon votre environnement (Windows ou Linux).
- Open Office ou Libre office (OpenConcerto ne fonctionne pas avec Microsoft Office – on est libre ou on ne l’est pas !)
- L’environnement Java 7 ou 8 pour les postes clients
- Le « dump » (base de données vierge) de la base de données openConcerto en version 1.5
Pour la suite, vous pouvez aussi télécharger les modèles de documents ainsi que le logiciel de gestion des bases de données postgreSQL, pgAdmin.
Installation sur NAS Synology et configurations du moteur.
Installation du moteur de la base de donnée
openConcerto utilise principalement le moteur postgreSQL. Même si vous pouvez aussi utiliser le moteur MySql (ou MariaDb) ou D2, le moteur postgreSQL est très rapide et est natif au NAS synology (il est déjà fonctionnel) : pas besoin de l’installer !
Accès au NAS Synology en ligne de code.
Pour accéder au NAS Synology, il vous faut l’interroger via un logiciel en mode SSH. Si vous savez déjà comment faire, vous pouvez suivre le reste de l’article. Sinon, j’ai publié récemment un article pour savoir comment faire : https://www.aureuswebfactory.fr/comment-acceder-a-un-nas-synology-en-ligne-de-code-en-ssh-via-putty/
Configuration du moteur postgreSQL
Après vous êtes connecté à votre NAS Synology, il vous faut basculer vers l’utilisateur root. Ainsi, tapez :
Rendez-vous dans le dossier /etc/postgresql/ en tapant :
Modification du fichier postgresql.conf
On fait une copie de sauvegarde du fichier que nous allons modifier via :
J’ai mis une date quelconque. Le but est de copier-coller le fichier avec un nom différent afin de corriger un problème éventuel. Peu importe le nom que vous choisissez.
On édite le fichier postgresql.conf :
On peut voir que le moteur postgresql est configuré par défaut pour n’écouter que le NAS Synology par l’adresse IP 127.0.0.1 Il n’attendra donc que des connexions que depuis le NAS.
Il faudra donc changer l’écoute en modifiant listen_adresses = ‘127.0.0.1’ en listen_adresses=’*’, l’étoile voulant dire « toutes les adresses IP ». Pour cela, appuyer sur la touche i qui vous permet d’entre en mode insertion puis modifier le fichier ainsi :
Tapez sur la touche « Echap » pour sortir du mode insertion puis tapez :w et :q pour enregistrer puis quitter vi.
Modification du fichier pg_hba.conf.
La seconde étape est la modification du fichier pg_hba.conf. Il est localisé dans le même dossier que le fichier précédent. On commence comme décrit auparavant à faire une copie de sauvegarde du fichier.
Puis on l’édite avec vi :
Le fichier s’apparente à une liste des bases de données, des adresses IP, des utilisateurs qui seront autorisés à utiliser l’environnement postgreSQL.
La documentation d’openConcerto demande à autoriser tous les utilisateurs sur toutes les bases de données via la méthode de hashage md5 ie. host all all 192.168.1.0/24 md5.
Ainsi après avoir appuyer sur i pour entrer dans le mode insertion de vi, vous obtiendrez (pensez à séparer les blocs d’instructions par une tabulation) :
Tapez sur la touche « Echap » pour sortir du mode insertion puis tapez :w et :q pour enregistrer puis quitter vi.
Création de la base de données OpenConcerto
Pour créer la base de données openConcerto, il vous faut :
- Mettre le « dump » de la base de données OpenConcerto-1.5.sql que vous avez téléchargé sur votre NAS Synology. L’idéal est de le mettre dans le dossier /etc/postgresql. Il faudra aussi mettre l’utilisateur postgres propriétaire de ce fichier
- Basculer en utilisateur postgres.
- Lancer les instructions de création de base de données avec l’utilisateur postgres.
- Redémarrer le moteur postgresql.
Copie du fichier OpenConcerto-1.5.sql dans le dossier /etc/postgresql.
Pour ma part, j’ai utilisé DSM FileStation du NAS Synology pour décompresser le fichier OpenConcerto-1.5.sql.zip que j’ai téléchargé dans le dossier /homes/home/user et copié-collé le fichier via putty dans le dossier /etc/postgresql.
Vous pouvez aussi le télécharger et le décompresser directement dans le dossier /etc/postgresql depuis putty via les commandes (téléchargement puis décompression) :
Par sécurité, on modifie les permissions des 2 fichiers précédemment générés pour qu’ils ne soient utilisables que par l’utilisateur propriétaire.
Ensuite on modifie le propriétaire et le groupe du fichier OpenConcerto-1.5.sql.
Basculement vers l’utilisateur postgres et début de création.
On bascule vers l’utilisateur postgres :
Les instructions suivantes se font selon la fonction psql, il vous suffit de taper :
L’affichage change et vous obtenez maintenant :
Création de l’utilisateur openconcerto.
Il faut maintenant créer un utilisateur appelé openconcerto qui possède le mot de passe openconcerto. Je sais, ce n’est pas très original, mais c’est la documentation d’OpenConcerto.org qui le demande…
Création de la base de données.
Dès que l’utilisateur openconcerto est créé, on créé la base de données « OpenConcerto » et on lui accorde les privilèges d’utilisations.
Remplissage de la base de données.
On sort d’abord de psql :
On se sert maintenant du fichier OpenConcerto-1.5.sql téléchargé et décompressé plus haut afin de remplir la base de données par une base de données vierge.
Redémarrage du moteur postgreSQL
Il faut redémarrer le moteur postgresql :
Néanmoins, lors d’une dernière mise à jour de Synology, cette commande a été remplacée et elle indiquait que le moteur ne pouvait pas être arrêté.De plus, à chaque mise à jour majeure de Synology, les fichiers postgresql.conf et pg_hba.conf seront écrasés et le dossier /etc/postgresql complètement remplacé. Ne stockez pas vos sauvegardes dans ce dossier, elles seront tout bonnement effacées !
Enfin, récemment, malgré la modification des deux fichiers précédent et le redémarrage du moteur postgreSQL, il m’était impossible d’utiliser les bases de données postgreSQL.
Les différents logiciels les utilisant, dont OpenConcerto, m’indiquait que l’adresse ou le port 5432 devaient indisponibles.
En regardant dans les fichiers LOG, localisé dans /var/log/synoservicecfg.log, je me suis aperçu que le processus gérant postgreSQL, appellé pgsql n’était pas chargé. Je l’ai donc lancé via la commande suivante : synoservicecfg –start pgsql.
Il vous faut maintenant sortir de putty :
Configuration du logiciel OpenConcerto
Dès lors que l’environnement postgreSQL est créé, il vous faut créer la liaison entre le logiciel OpenConcerto et votre serveur NAS Synology. Ainsi, entrez les valeurs suivantes dans la configuration d’OpenConcerto :
- Fichier de Configuration : Dépend de votre environnement (ici Ubuntu 17.10) mais laissez l’instruction par défaut
- Type : PostgreSQL
- Adresse du serveur : 192.168.1.1 (adresse de votre serveur NAS Synology)
- Port : 5432 (port par défaut du moteur postgreSQL)
- Base de données : OpenConcerto
Vous n’avez plus qu’à appuyer sur « Tester la connexion » et normalement cela devrait être terminé.