Dolibarr - Erreur à l'initialisation

Bonjour, j’ai un petit problème après l’installation de Dolibarr.

Mon serveur YunoHost

Matériel: Vieil ordinateur.
Version de YunoHost: 4.2.6.1 (stable)
J’ai accès à mon serveur : De toute les manières.
Êtes-vous dans un contexte particulier ? : Non.

Description du problème

L’installation de Dolibarr se passe bien, je me rends sur l’application et lorsque je rentre les informations de la société il y a un rafraichissement et le message d’erreur ci dessous. Après avoir séléctionné le pays je n’ai pas les propositions de forme d’entreprise.
J’ai installé une version local et j’ai bien les valeurs, donc je ne sais pas pourquoi elle sont différentes chez moi sachant que Dolibarr est à la même version 13.0.3

Dolibarr a détecté une erreur technique.
Voici les informations qui pourront aider au diagnostic (Vous pouvez fixer l'option $dolibarr_main_prod sur '1' pour supprimer quelques notifications):
**Date:** 20210708143229
**Dolibarr:** 13.0.3 - https://www.dolibarr.org
**Niveau de fonctionnalités:** 0
**PHP:** 7.3.29-1+0~20210701.86+debian10~1.gbp7ad6eb
**Serveur:** nginx/1.14.2
**OS:** Linux domaine.tld 4.19.0-17-amd64 #1 SMP Debian 4.19.194-2 (2021-06-21) x86_64
**UserAgent:** Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:89.0) Gecko/20100101 Firefox/89.0

**Url sollicitée:** /admin/company.php
**Referer:** https://gestion.domaine.tld/admin/company.php?mainmenu=home&action=edit
**Gestionnaire de menu:** eldy_menu.php

**Modules/Applications:** user, ldap
**Type gestionnaire de base de données:** mysqli
**Requête dernier accès en base en erreur:** SELECT d.rowid as id, d.code_departement as code, d.nom as name, d.active, c.label as country, c.code as country_code, r.code_region as region_code, r.nom as region_name FROM llx_c_departements as d, llx_c_regions as r,llx_c_country as c WHERE d.fk_region=r.code_region and r.fk_pays=c.rowid and d.rowid= AND d.active = 1 AND r.active = 1 AND c.active = 1 ORDER BY c.code, d.code_departement
**Code retour dernier accès en base en erreur:** DB_ERROR_SYNTAX
**Information sur le dernier accès en base en erreur:** You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'AND d.active = 1 AND r.active = 1 AND c.active = 1 ORDER BY c.code, d.code_de...' at line 1

Merci par avance pour votre aide.
Guillermo

Il faut vérifier qu’il y a bien des données dans la table llx_c_ regions et llx_c_departement.
Autre verif. Y a t il une erreur javascript sur la page avant de selectionner le pays ?

1 Like

Non, aucune erreur avant de sélectionner le pays. Lorsque je choisis France, la page se recharge et le message s’affiche. Si je choisis un autres pays, pas de bug ou retour vers le SSO parfois.

J’ai lu phpmyadmin comme logiciel pour vérifier ces choses là ? Donc ensuite quand je vais sur Dolibarr j’ai 50 tables, mais aucune llx_c_ regions et llx_c_departement même avec une Ctrl+F ou en tapant dans le champ de recherche de l’application.

Est-ce possible de trouver la liste et le contenu des tables sur le GitHub du projet pour que je fasse des copier/coller ou sa ne fonctionne pas comme cela ?

Sur une install Dolibarr standard en , il devrait y avoir environ 150 tables.
Si vous n’en voyez que 50 sur phpmyadmin, il y a clairement un problème lors de l’installation.

1 Like

J’ai importé la version des deux tables présentés sur le fichier GitHub, je n’ai plus de bug lorsque je choisis France, mais j’ai encore la liste vide sur les entités légales.

Je viens de trouver le problème.

Le fait est que yunohost créer la base de données en latin1, cela pose problème lors du remplissage de la base de données (\htdocs\install\mysql\data) avec des contraintes de caractère incompatible et donc des foreign key inconnues.

J’ai corrigé cela en forçant la création en utf8

Seul hic, les personnes ayant installé la V13 et commencées avec cette version se trouvent amputées d’une partie des données de base.
Je n’ai pas de solution à ce problème à part jouer à la main les fichiers sql du dossier ci-dessus, car je ne sais pas si ces tables sont remplies automatiquement avec les actions utilisateur.

1 Like

Bonsoir @mastereur et du coup comment je peux forcer l’installation en utf8 ? :slight_smile: dit comme cela ça à l’air facile ^^

Je suis en train de valider la version par le bot Yunohost avec la correction.

Elle devrait être disponible demain.

1 Like

D’accord donc en faite c’est en modifiant les fichiers sources ? j’avais lu en cherchant sur un moteur de recherche une histoire de latin, d’utf etc et avec phpmyadmin j’avais tenté de basculer les choses mais sans résultat.
Merci pour l’information, merci pour l’aide hâte de voir cela demain alors :slight_smile:

J’ai modifié uniquement les fichier d’installation côté Yunohost, aucun fichier du côté Dolibarr, c’est toujours un téléchargement du tar.gz depuis le repo officiel :slight_smile:

1 Like

Donc l’installer va changer de “language” pour mettre en place les fichiers de la base MySQL ?
En tout cas merci hâte de testé :slight_smile:

Je n’ai pas bien compris la question.

Mais le fait est qu’avant cette mise à jour côté Yunohost, les tables llx_c_ regions et llx_c_departement était vide. Maintenant, ce ne sera plus le cas, et les départements seront bien affichés lors de la sélection du pays à la configuration principale.

1 Like

Hello, je viens de faire une nouvelle installation (j’ai fais un apt autoremove avant pour être sur).
Puis donc yunohost app install dolibarr

Et j’obtiens encore le message d’erreur suivant :

Dolibarr a détecté une erreur technique.
Voici les informations qui pourront aider au diagnostic (Vous pouvez fixer l’option $dolibarr_main_prod sur ‘1’ pour supprimer quelques notifications):
Date: 20210713133916
Dolibarr: 13.0.3 - https://www.dolibarr.org
Niveau de fonctionnalités: 0
PHP: 7.3.29-1+0~20210701.86+debian10~1.gbp7ad6eb
Serveur: nginx/1.14.2
OS: Linux domaine.tld 4.19.0-17-amd64 #1 SMP Debian 4.19.194-2 (2021-06-21) x86_64
UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:89.0) Gecko/20100101 Firefox/89.0

Url sollicitée: /admin/company.php
Referer: https://gestion.domaine.tld/admin/company.php?mainmenu=home&action=edit
Gestionnaire de menu: eldy_menu.php

Modules/Applications: user, ldap
Type gestionnaire de base de données: mysqli
Requête dernier accès en base en erreur: SELECT d.rowid as id, d.code_departement as code, d.nom as name, d.active, c.label as country, c.code as country_code, r.code_region as region_code, r.nom as region_name FROM llx_c_departements as d, llx_c_regions as r,llx_c_country as c WHERE d.fk_region=r.code_region and r.fk_pays=c.rowid and d.rowid= AND d.active = 1 AND r.active = 1 AND c.active = 1 ORDER BY c.code, d.code_departement
Code retour dernier accès en base en erreur: DB_ERROR_SYNTAX
Information sur le dernier accès en base en erreur: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ‘AND d.active = 1 AND r.active = 1 AND c.active = 1 ORDER BY c.code, d.code_de…’ at line 1

Si je regarde dans PhpMyAdmin les tables sont encore en latin1 swedich ci
Le menu déroulant pays une fois France sélectionné ne propose pas le menu déroulant de Type d’entité légale

Qu’elles informations supplémentaires je peux fournir pour aider ?
Guillermo

Étrange car lors de mes tests, et là, sur mon serveur de Prod, avec une nouvelle installation, ma base et ses tables sont bien en utf8.

Désinstalle dolibarr à partir de la commande suivante
sudo yunohost app remove dolibarr

Vérifie dans PhpMyAdmin par exemple, que la base de données n’existe plus

Puis réinstalle l’application

1 Like

Oui, j’avais travaillé qu’en ligne de commande pour l’installation / désinstallation. Je viens d’aller voir dans PhpMyAdmin, est la catégorie Dolibarr est bien absente.
Je fais donc yunohost app install dolibarr
Je vais voir dans PhpMyAdmin, la base est en : latin swedich
Je tente de faire une modification en utf8 depuis le bouton : Opération

Résultat identique, même message d’erreur et même problème :confused: désolé

Est-ce que tu peux me dire la version de Dolibarr qui a été installée ? Est-ce bien la 13.0.4 ?

L’opération de changement ne réglera pas le problème car c’est lors de l’installation que les tables sont remplies.

Sinon, en vérification supplémentaire, peux tu installer Dolibarr à partir du tag :
sudo yunohost app install https://github.com/YunoHost-Apps/dolibarr_ynh/tree/13.0.4 --debug
et transfere le log d’installation ?

1 Like

Oui, je confirme que c’est bien la 13.0.4/
D’accord, voici donc le résultat avec l’utilisation de la commande demandée.

https://paste.yunohost.org/raw/oherelewer

EDIT : La ligne de commande que vous m’avez donné à quoi de différent du yunohost app install dolibarr ? Parce que là je viens d’aller sur le Dolibarr en me disant je vais regarder cette fois ci ce que cela donne, et bien cela marche. Je peux choisir la région, l’entreprise etc.

:raised_hands: je comprends pas ce qui s’est passé, mais milles mercis car il semblerait que cela marche correctement.

EDIT 02 : Par contre je viens de re tester avec la commande classique, je retombe sur la même version buggé

Parfais alors. Je penche donc pour un reliquat de téléchargement qui devait trainer dans un coin.
De mon côté, l’installation se fait bien en ligne de commande (avec et sans le tag) ou par l’interface.

A ce jour (13/07/2021), il n’y a aucune différence entre yunohost app install dolibarr et yunohost app install https://github.com/YunoHost-Apps/dolibarr_ynh/tree/13.0.4 d’un point de vue Github

Avec cette commande, cela a forcé l’installation de la version 13.0.4

Est-ce qu’avec un reboot de la machine, pour que linux efface ses fichier temporaire, il y a toujours le même problème ?

1 Like

Avec le tag cela marche, sans le tag cela ne marche pas.
Avec le tag, j’ai au début un formulaire qui me dit que cela ne fait pas partie du catalogue et que je dois écrire Yes, I understrand

D’accord, donc pour le fonctionnement, pour les prochaines mises à jours je ne serais pas embêté d’avoir utiliser l’option DEBUG ?

Je ne comprends pas depuis que j’ai le problème j’ai redémarrer X fois mon serveur à chaque désinstallation pourtant. Je viens même de refaire le test à l’instant. Sans le tag c’est un échec, même après un reboot.

En tout cas merci beaucoup d’avoir pris le temps de regarder et de comprendre

.

L’avertissement avec le tag est normal, YunoHost considère que cela ne fais pas partie d’une installation dite “normale” mais plus pour les personnes confirmée.

L’option DEBUG, n’est utile que pour voir précisément ce qu’il se passe lors du processus d’installation ou de mise à jour, ça ne sera pas appliqué pour les prochaine maj et autre installation.

Ce cas d’échec reste un mystère pour moi, mais au moins l’installation a pu être faite finalement :slight_smile:

1 Like