Bonjour,
J’ai fait pas mal de recherches sur cette merveilleuse fonctionnalité que constituent les attributs supplémentaires et j’ai pu obtenir certains résultats très satisfaisants. Mais il me manque quelques petites choses pour obtenir pleine satisfaction.
Je vais tâcher de décrire précisément ma problématique et mon besoin.
J’utilise Dolibarr pour gérer mon autoentreprise, dont une grande part de l’activité réside dans la formation. Comme je dois, chaque année, saisir mon Bilan Pédagogique et Financier, qui consiste à calculer des totaux : nombre de stagiaires, nombre d’heures de formation dispensées, nombre d’heures-stagiaires (heures de formation * nombre de stagiaires), j’ai eu l’idée, il y a plusieurs années de cela, de créer des attributs supplémentaire sur mes factures :
- un booléen intitulé Formation en tant qu’Attribut supplémentaire (factures) me permettant de filtrer facilement les factures de formation dans la liste de toutes les factures
- un numérique entier en tant qu’Attribut supplémentaire (lignes) pour consigner le nombre de stagiaire
- un décimal en tant qu’Attribut supplémentaire (lignes) pour saisir le nombre d’heures de formation
Comme je facture une fois par mois les différentes écoles pour lesquelles je sous-traite, j’ai ainsi plusieurs lignes par facture.
Lors du bilan pédagogique et financier, je n’ai plus qu’à filtrer et à ouvrir chaque facture pour procéder aux différents totaux.
Mais, évidemment, je suis certain que l’on peut faire beaucoup mieux que cela.
J’ai donc cherché à comprendre comment fonctionnaient les champs calculés.
Je suis parvenu à calculer, pour chaque ligne, le nombre d’heures-stagiaires, avec cette formule :
$objectoffield->array_options['options_nbheuresligne'] * $objectoffield->array_options['options_nbstagligne']
Mon rêve serait, maintenant, de parvenir à calculer, au niveau de la facture elle-même, la somme des stagiaires, celle du nombre d’heures de formation dispensées, ainsi que celle du nombre d’heures-stagiaires.
Comme tous ces attributs supplémentaires (lignes) sont sommables, et j’ai bien coché la case correspondante, je me dis que cela doit être possible.
J’ai tenté ceci :
$objectoffield->lines[$i]->array_options['options_nbheuresligne']
et ceci :
$objectoffield->ligne[$i]->array_options['options_nbheuresligne']
…sans résultat…