dolibarr-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Dolibarr-dev] gestion des arrondis


From: Tahiti Rimai (Jean)
Subject: [Dolibarr-dev] gestion des arrondis
Date: Tue, 30 Jan 2007 13:08:26 -1000
User-agent: Mozilla Thunderbird 1.0.6 (Windows/20050716)

J'avais pensé comme toi Yannik

Je crois que ça nécessite un choix lorsque l'on configure Dolibarr (tout
comme on choisit la devise dans laquelle on travaille). Je suggère que
l'on intègre ce choix dans la fonction price() qui sert à afficher tous
les prix dans Dolibarr, pour la version 2.2.0 de Dolibarr.

Yannick

PS: C'est bien qu'il soit pacifique, votre franc!  :-)
Voici comment je propose de patcher la fonction price :

création d'un variable NB_DECIMALES positionnée à 2 ajout de la propriété nbdecimals à l'objet Translate et une méthode function setDefaultDecimals($nbdec)
   {
       $this->nbdecimals = $nbdec;
   }

initialisation de l'objet global $langs dans master.inc.php $nbdec=dolibarr_get_const($db, 'NB_DECIMALES');
$langs->setDefaultDecimals($nbdec);

modification dans functions.inc.php fonction price()
// On pose par defaut 2 decimales
$decimal = $langs->nbdecimals;

ainsi en Polynésie on met la variable globale NB_DECIMALES à 0 et l'affichage devrait être bon.

Et c'est là qu'est le hic : On ne règle que l'affichage, dans la base de données on stocke toujours les valeurs avec décimales et on calcule avec les décimales donc on va tomber sur des cas comme l'exemple cité où l'arrondi de la somme est différent de la somme des arrondis. 3.25 + 4.32 = 7.57 et si tu arrondis à l'affichage (fonction price) : 3 + 4 = 8

Pourrait-on appeler la fonction price() avant l'insertion en base de données, ou une fonction équivalente qui n'est pas liée à l'affichage ?

Jean




reply via email to

[Prev in Thread] Current Thread [Next in Thread]