[Top][All Lists]
[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
- [Dolibarr-dev] gestion des arrondis,
Tahiti Rimai (Jean) <=