Bug #1435
ferméProblème de seeds pour les décimales
100%
Description
Lors de l'import des résultats les décimales n'ont pas été prises en comptes, les résultats sont tronqués.
Préciser le symbole utilisé pour les décimales dans /db/seeds;rb?
[473] results = CSV.read("#{Rails.root}/db/seeds/results.csv", headers: true, col_sep: ';')
Fichiers
Mis à jour par Jonathan Schaeffer il y a plus de 8 ans
- trouver la collection correspondant dans la base, à partir de son oldid
- trouver dans la base tous les résultats liés à cette collection qui correspondent aux paramètres du résultat de la table (NUM_VAL, etc.)
- si on trouve plusieurs résultats alors
- toutes ces valeurs sont interchangeables, puisque les autres champs sont identiques.
- il faut corriger tous ces résultats à partir de tous les résultats de la table CSV qui correspondent à cette collection.
- tester qu'il y a bien autant de résultats dans la table CSV que dans la base
- sinon (on a un seul résultat)
- mettre à jour la valeur
- si on trouve plusieurs résultats alors
Mis à jour par Jonathan Schaeffer il y a plus de 8 ans
- Fichier results_dec.csv results_dec.csv ajouté
Mis à jour par Jonathan Schaeffer il y a plus de 8 ans
- Statut changé de Nouveau à Résolu
Les décimales ont été corrigées automatiquement.
Marion, peux tu valider que cela correspond bien à ce que tu attendais ?
Mis à jour par Redmine Admin il y a plus de 8 ans
- % réalisé changé de 0 à 100
Appliqué par commit 7abb9338822a21458248671c2fa89863159b173b.
Mis à jour par Jonathan Schaeffer il y a plus de 8 ans
- Fichier correct_dec.out correct_dec.out ajouté
Mis à jour par Marion Maguer il y a plus de 8 ans
- Statut changé de Résolu à In Progress
Non, ça n'a pas trop bien fonctionné, il en manque.
Mis à jour par Marion Maguer il y a plus de 8 ans
Premier problème : cas des échantillons granulo où il y a 3 MO. Celles-ci ont les mêmes variables et mêmes méthode d'analyses, seule la valeur du résultat les différencie. Voir fichier "Err_results_dec_MO.csv"
Extrait de correct_dec.out :
Correction du résultat 68613
On a 18 résultats dans la base
On a 3 résultats concernant la variable % de matière organique
On a 3 résultats concernant la méthode analytique Perte au feu 450°C
Correction de la valeur 1.0 en 1,3608 pour le resultat 14659
Correction du résultat 68614
On a 18 résultats dans la base
On a 3 résultats concernant la variable % de matière organique
On a 3 résultats concernant la méthode analytique Perte au feu 450°C
Correction de la valeur 1.3608 en 1,5707 pour le resultat 14659
Correction du résultat 68615
On a 18 résultats dans la base
On a 3 résultats concernant la variable % de matière organique
On a 3 résultats concernant la méthode analytique Perte au feu 450°C
Correction de la valeur 1.5707 en 1,4741 pour le resultat 14659
En fait, cette partie du script modifie 3 fois la même valeur :
- S'il en reste toujours plusieurs, alors c'est qu'ils sont interchangeables avec un autre résultat.>
- On trie la liste par date de mise à jour et on prend celui qui est le plus ancien>
if saved_results.count > 1>
saved_results.sort { |a,b| a<=>b }>
end>
puts "Correction de la valeur #{saved_results.first.value} en #{r['NUM_VAL']} pour le resultat #{saved_results.first.id}">
saved_results.first.value = r['NUM_VAL'].gsub(/,/,'.').to_f>
saved_results.first.save
Mis à jour par Marion Maguer il y a plus de 8 ans
- Fichier Err_results_dec_MO.csv Err_results_dec_MO.csv ajouté
Mis à jour par Marion Maguer il y a plus de 8 ans
Deuxième problème : la présence d'un commentaire bloque le script, arrêt du script au résultat 70232.
Extrait de correct_dec.out :
Correction du résultat 70232
On a 17 résultats dans la base
On a 1 résultats concernant la variable % de matière organique
Correction de la valeur en pour le resultat 16227
Mis à jour par Jonathan Schaeffer il y a environ 8 ans
Marion Maguer a écrit :
Deuxième problème : la présence d'un commentaire bloque le script, arrêt du script au résultat 70232.
Extrait de correct_dec.out :Correction du résultat 70232
On a 17 résultats dans la base
On a 1 résultats concernant la variable % de matière organique
Correction de la valeur en pour le resultat 16227
Correction effectuée. Il y a eu un truc bizarre sur les 2 derniers résultats de la boucle :
Correction du résultat 561111 On a 64 résultats dans la base On a 1 résultats concernant la variable Biomasse des feuilles de Zostera marina (Herbier REBENT) Correction de la valeur 1.216 en 4,6820 pour le resultat 324094 Correction du résultat 561112 On a 64 résultats dans la base On a 1 résultats concernant la variable Biomasse des racines de Zostera marina Correction de la valeur 4.682 en 1,2160 pour le resultat 324095
https://wapps/marben/results?result[collection_id]=11751
https://wapps/marben/results/324095
https://wapps/marben/results/324094
Même si on n'a pas été exhaustif, on n'a pas vu d'autre cas bizarre.
Corrigé
Mis à jour par Jonathan Schaeffer il y a environ 8 ans
- Statut changé de In Progress à Résolu