Voir les détails de l’anomalie

IdentifiantProjetCatégorieVisibilitéDernière mise à jour
0001082NOALYSSBugpublic2015-02-18 00:00
Rapporteurvdanjean Affecté àdanydb  
PrioriténormaleSévéritémajeurReproductibilitétoujours
État ferméRésolutioncorrigé 
Résolue dans la version6.8.0.0 
Résumé0001082: Sélection d'opération par montant impossible
DescriptionVersion 6.8.0.0 (numéro non dispo dans le bug tracker)

Quand on ouvre un popup sur une opération, qu'on sélection l'onglet (en bas) "Opérations liées", qu'on fait une recherche d'opération, je n'ai aucune opérations trouvées quand les montants min et max correspondent au montant que je cherche.
  Si je prends des bornes différentes (+/- 1 centimes généralement), alors les opérations cherchées sont trouvées.

J'ai contourné le bug avec ce patch (ie je vois maintenant les opérations cherchée avec min=max) mais je doute qu'il soit correct (je désactive du code qui doit bien servir à quelque chose) :
--- a/include/class_acc_ledger.php
+++ b/include/class_acc_ledger.php
@@ -2834,7 +2834,7 @@ class Acc_Ledger extends jrn_def_sql
                 * if both amount are the same then we need to search into the detail
                 * and we reset the fil_amount
                 * -------------------------------------------------------------------------- */
- if (isNumber($amount_min) &&
+ if (0 && isNumber($amount_min) &&
                                isNumber($amount_max) &&
                                $amount_min > 0 &&
                                bccomp($amount_min, $amount_max, 2) == 0)

BalisesAucune balise n’est attachée.
Extension Noalyss

Activités

danydb

2015-01-20 11:44

administrateur   ~0002723

Dernière modification : 2015-01-20 11:45

Ce qui m'ennuie, c'est que cela fonctionne : j'utilise tous les jours cette fonctionnalité.

Pourrais-tu chercher la cause réelle du problème : ce code fonctionne depuis des années et n'a pas été changé.

http://www.phpcompta.eu/doc/classAcc__Ledger.html#ac42cb47052501769526fdaffab4c2746

Cordialement

D

danydb

2015-01-20 11:53

administrateur   ~0002724

Dernière modification : 2015-01-20 11:54

Ok j'ai compris, parfois cela ne fonctionne pas quand on recherche sur des OD.

ceci ne cherche que dans les détail,

 $fil_amount = $and . 'jr_grpt_id in ( select distinct j_grpt from jrnx where j_montant = ' . $amount_min . ')';
$and = " and ";

Il aurait fallu

 $fil_amount = $and . ' ( ';
 
  // Look in detail
 $fil_amount .= jr_grpt_id in ( select distinct j_grpt from jrnx where j_montant = ' . $amount_min . ') ';

 
  //and the total operation
 $fil_amount .= ' or ';
 $fil_amount .= ' jr_montant = '.$amount_min;


$fil_amount .= ')';
$and = " and ";

Historique de l’anomalie

Date de modification Nom d’utilisateur Champ Changement
2015-01-19 23:49 vdanjean Nouvelle anomalie
2015-01-20 11:44 danydb Note ajoutée: 0002723
2015-01-20 11:45 danydb Note modifiée: 0002723
2015-01-20 11:53 danydb Note ajoutée: 0002724
2015-01-20 11:54 danydb Note modifiée: 0002724
2015-01-21 20:53 danydb
2015-01-21 20:59 danydb État nouveau => résolu
2015-01-21 20:59 danydb Résolue dans la version => 6.8.0.0
2015-01-21 20:59 danydb Résolution ouvert => corrigé
2015-01-21 20:59 danydb Affecté à => danydb
2015-02-18 00:00 danydb État résolu => fermé