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 ![]()
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…




