Field 'morphy' doesn't have a default value

Dans Dolibarr v. 10.0.1 MariaDB;
La création d’un type d’adhérent affiche ne se termine pas correctement et affiche le message « Field ‹ morphy › doesn’t have a default value »
Je crois que l’erreur viendrait de la requête qui commence à la 123ème ligne du fichier « adherent_type.class.php » il n’intègre pas le champ « morphy » qui est déclaré NOT NULL dans la base de données.

$sql = "INSERT INTO ".MAIN_DB_PREFIX."adherent_type (";
$sql.= "libelle";
$sql.= ", entity";
$sql.= ") VALUES (";
$sql.= "'".$this->db->escape($this->label)."'";
$sql.= ", ".$conf->entity;
$sql.= ")";

Bonjour :happy:
Tu n’as aucun type d’adhérent de défini je crois

Bonjour,
Affirmatif. Il s’agit d’un nouvelle installation. seul le module d’adhérent est activé.
Il n’y a pas d’adhérent encore car je ne peux en créer que s’il y a un type d’adhérent à sélectionner (Champ obligatoire dans le formulaire de création d’adhérent).
Donc il faut commencer par créer un type d’adhérent et c’est dans ce formulaire là que le bug apparaît.

Bonjour
A tout hasard ce n’est pas dans : admin/dict.php ?

Bonjour,
Effectivement, il y a une erreur lorsqu’on crée un nouveau type d’adhérent dans la version 10.0.1.

Je constate qu’il y a eu une nouvelle variable ajoutée (morphy … pour personne morale ou personne physique) par rapport à la version 9.04.
Il semble que le formulaire de création ou d’ajout ne gère pas correctement cette nouvelle variable … d’où l’erreur relevée par Driss …

Pour ma part, cette erreur est bloquante, car je ne peux pas créer d’adhérent n’ayant pas de type d’adhérent !

Par avance merci si un des développeurs peut regarder ce bug de la version stable.

Bonjour,
Tout à fait mp15.
Ci-dessous ma proposition de correction du bug:
Remplacer les lignes 123 à 129 du fichier « adherent_type.class.php » par les lignes suivantes:

$sql = "INSERT INTO ".MAIN_DB_PREFIX."adherent_type ("; $sql.= " morphy"; $sql.= ", libelle"; $sql.= ", entity"; $sql.= ") VALUES ("; $sql.= "'".$this->db->escape($this->morphy)."'"; $sql.= ", '".$this->db->escape($this->label)."'"; $sql.= ", ".$conf->entity; $sql.= ")";

C’est une proposition… il faut attendre la validation de l’équipe Dolibarr :happy:

1 « J'aime »

Propose le sur https://github.com/Dolibarr/dolibarr/ !

Bonjour,
C’est fait sur https://github.com/Dolibarr/dolibarr/issues/11711
Merci!

1 « J'aime »