1. Ticket change [5273d33101] (rid 4441) by nfrery on 2017-02-28 04:22:16:

    1. Change foundin to "0.7.6"
    2. Change icomment to:

      Lors d'un essai de report à nouveau automatique d'un exercice test, j'ai eu l'erreur suivante: *Le montant ne peut être égal ou inférieur à zéro*. L'erreur provient d'un compte qui a pour somme 0 (-0.00 dans le grand livre) ou d'après la requête SQL de la fonction doReports(), ligne 159 de Exercices.php, j'obtiens 5.6843418860808e-14. Les deux SUM de la requête retourne chacun la somme 316.11 ce qui est tout à fait correct.

      Ce n'est pas un problème pour moi qui fait le report manuellement, mais ça pourrait poser soucis à certains.

      Je propose de rajouter deux round() ROUND(COALESCE((SELECT SUM(montant) FROM compta_journal WHERE compte_debit = compta_comptes.id AND id_exercice = 1), 0)) - ROUND(COALESCE((SELECT SUM(montant) FROM compta_journal WHERE compte_credit = compta_comptes.id AND id_exercice = 1), 0))

    3. Change login to "nfrery"
    4. Change mimetype to "text/x-fossil-plain"
    5. Change private_contact to "28dfee47b43f4215ddf0dcc15dce81f8f53221b8"
    6. Change severity to "Critical"
    7. Change status to "Open"
    8. Change title to "Problème calcul SQL"
    9. Change type to "Code_Defect"
  2. Ticket change [814e0223ed] (rid 4442) by nfrery on 2017-02-28 04:24:08:

    1. Change icomment to:

      ROUND(COALESCE((SELECT SUM(montant) FROM compta_journal WHERE compte_debit = compta_comptes.id AND id_exercice = 1), 0),2) sera plus approprié !

    2. Change login to "nfrery"
    3. Change mimetype to "text/x-fossil-plain"
    4. Change priority to "Immediate"
    5. Change resolution to "Open"
  3. Ticket change [09b75c6931] (rid 4443) by bohwaz on 2017-02-28 05:00:54:

    1. Change icomment to:

      Ah oui c'est un problème de nombre flottant.

      J'ai fait une gaffe ici, les nombres devraient être stockés comme integers et non comme floats, ce qui génère ce genre de problème.

      SQLite ne supporte pas le type "DECIMAL" il faudrait donc stocker les nombres en tant que "INTEGER", chiffres après la virgule compris, ce qui serait plus exact.

      Par exemple 42,99 € serait stocké "4299", et 12 € serait stocké "1200". La conversion en décimal serait effectuée à l'affichage au niveau de PHP en ajoutant une virgule au bon endroit.

      Je renomme correctement le ticket et vais essayer de faire ça pour la 0.8.0, sinon j'appliquerais ton idée en attendant.

    2. Change login to "bohwaz"
    3. Change mimetype to "text/x-fossil-plain"
    4. Change priority to "High"
    5. Change severity to "Severe"
    6. Change title to "Changer le stockage de monnaie vers des INTEGER"
  4. Ticket change [a6de2e1de8] (rid 4990) by DaD on 2017-07-28 10:33:42:

    1. Change icomment to:

      Bonjour.

      Dans certains logiciels il y a un peu plus que 2 chiffres après la virgules qui sont stockés en base.

      J’ai regardé un peu Dolibarr et j’ai vu qu’ils utilisaient 5 chiffres après la virgule.

    2. Change login to "DaD"
    3. Change mimetype to "text/x-fossil-plain"
  5. Ticket change [ef338819af] (rid 4993) by bohwaz on 2017-08-01 01:09:20:

    1. Change icomment to:

      J'ai appliqué la modif. de nicolas dans la branche de dév. [d76c988ed81c8877a44a52f6780b10b50f4ef4ca]

      Je ne pourrais pas faire le changement de stockage pour la 0.8 il y a déjà trop de trucs prévus.

      @DaD: c'est parce qu'ils utilisent une plus grande précision à la base, par exemple tu peux avoir des produits en stock qui ont un prix de 0,009 € et tu applique une TVA etc. dessus, mais dans Garradin la précision est limitée à deux chiffres après la virgule.

    2. Change login to "bohwaz"
    3. Change mimetype to "text/x-fossil-plain"
  6. Ticket change [1d5888f99d] (rid 4994) by bohwaz on 2017-08-01 01:09:42:

    1. Change login to "bohwaz"
    2. Change mimetype to "text/x-fossil-plain"
    3. Change severity to "Important"
    4. Change type to "Feature_Request"