Ajouter montant encours à la liste des tiers grace aux extrafield

Comme indiqué dans le titre je veux pouvoir ajouter une variable qui existe deja dans dolibarr qui est le montant encours ( CurrentOutstandingBill) dans ma liste de client grace aux extrafield, de cette façon je peux voir les impayé de chaque client directement depuis la liste des clients sans devoir allez check chaque client individuelement , et ça me permettrais aussi d’exporter la liste en format excel

Bonjour :slight_smile:

avec un recherche dans le forum, …

Bonne continuation

Et un petit Bonjour aussi

Bonjour
Merci beaucoup pour votre reponse , j’ai pu finir cette etape , un autre questionnement svp , c’est que maintenant je cherche à afficher ce montant en cours dans la facture et pouvoir crée un sous total qui feras en sorte de reduire le total de la facture du montant encours actuel si possible et merci beaucoup pour votre aide

Bonjour,

Créer le même extrafield pour les factures, comme cela, il va s’afficher dedans.
Pour la partie déduction, c’est possible, mais il faudrait créer votre propre modèle de facture.

et vous avez fait comment si c’est pas indiscret?

Pour le montant encours t’as juste à ajouter ce code dans le champs calculé :
(($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->rowid)) && ( $ret=$reloadedobj->getOutStandingBills())
) ? $ret[‹ opened ›]: 666

Aprés tu met comme nom OutStandingBills tu peux verifier dans l’onglet traduction pour avoir la clé de traduction exact , y’a un seul probleme c’est que le filtre pour regrouper les lignes dans le tableau ne marche pas sur cette attribut , peut etre y’a une erreur de ma part

J’ai essayé de creer l’extrafield dans la facture en suivant le tuto dans le wiki :
$extrafields = new ExtraFields($this->db);
$extralabels = $extrafields->fetch_name_optionals_label($object->table_element);
$object->fetch($rowid);
$object->fetch_optionals($rowid, $extralabels);
$pdf->writeHTMLCell(190, 3, $this->posxdesc-1, $tab_top-5, $outputlangs->convToOutputCharset($object->array_options[‹ currentoutstandingbill ›]), 0, 1);
J’ai bien la zone qui s’affiche mais la valeur ne charge pas , j’ai tjr 0 comme valeur

Bonjour,

je reviens sur ce message car j’essaye également sur ma V18 d’afficher ce champ calculé mais en utilisant le code cité j’ai toujours 0 en valeur.

Bonjour,

Il va falloir nous en dire un peu plus, votre extrafiled est crée ou et comment ?

Pour ma part je crée l’extrafield dans la fiche du tiers comme indiqué par cette méthode:

et comme indiqué également par le message de Xenima1 un peu plus haut le tout dans un champs calculé

Ok donc votre extrafiled est un extrafield tier et non facture.

Voir : Add Extrafields on PDF Models - Dolibarr ERP CRM Wiki

Dans le PDF votre formule devrait être un truc du genre : $pdf->writeHTMLCell (190,3, $this->posxdesc-1, $tab_top-5, $outputlangs->convToOutputCharset($object->thirdparty->array_options['options_my_third_party_extra']),0,1);

Merci Ksar, mais je ne veux pas l’intégrer dans un PDF, je parle de l’extrafield lui-même dans la fiche tiers qui n’affiche que « 0 » en utilisant :

(($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($obj->rowid)) && ( $ret=$reloadedobj->getOutStandingBills())
) ? $ret[‹ opened ›]: 666

ce code était préconisé dans les messages au dessus, mais je pense que ce n’est plus bon pour une 18

En V18 il faut utiliser $objectoffield

(($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($objectoffield->rowid)) && ( $ret=$reloadedobj->getOutStandingBills())
) ? $ret[‹ opened ›]: 666

Désolé mais toujours valeur à 0
d’autres ont réussi à faire marcher ce code?

personne n’a donc essayé de faire marcher ce code?

Hello,

perso, le code qui marche est le suivant :

(($reloadedobj = new Societe($db)) && ($reloadedobj->fetchNoCompute($objectoffield->id)) && ( $ret=$reloadedobj->getOutStandingBills())
) ? $ret['opened']: 666

Ca affiche bien l’encours sur la fiche du tiers, en tant qu’attribut supplémentaire, mais les valeurs sont à 0.00 dans la liste des clients, donc ca ne m’avance a rien…