L’ajout d’attributs supplémentaires dans les modules de base de Dolibarr sont presque inévitable quand on déploie un ERP pour un entreprise, que ce soit pour des paramètres lié directement à l’activité ou par ce qu’il est nécessaire de faire des calculs ou ajouter de la logique sur des champs calculés.
La documentation officielle est un peu pauvre, ce pouquoi nous vous proposons de vrais exemples !
Afficher le rowid dans un champ extra
($obj->id ? $obj->id : ($obj->rowid ? $obj->rowid : $object->id))
Petite explication: l’objet « $object » est utilisé /chargé quand on fait appel au script card.php pour afficher le contenu d’un objet, cependant quand on fait appel à une liste, c’est l’objet $obj qu’il faut utiliser
Concrètement, voici un exemple dans la configuration (tiers ou commande ou autre) :
Faire une query sur une table pour récupérer un champ
En utilisant une DB MySQL
mysqli_fetch_array($resql = $db->query('SELECT MA_COLONNE FROM llx_XXXXX WHERE c.fk_object = '.$object->id))["MA_COLONNE"];
L’exemple ci-dessus va récupérer la valeur d’une colonne « MA_COLONNE » de la table « llx_XXXXX » ou l’objet courant est celui consulté – comme vous pouvez le remarquer, cet exemple ne sera utilisable que sur la fiche de l’objet et non sur les listes (sinon il faudrait aussi utiliser « $obj« )
Concrètement voici un exemple de champ extra dans « commande » qui va chercher une information dans un autre extra field