J’ai récemment été confronté à un problème dans les rapports Magento pour une boutique  comportant plusieurs sites.
Pour le site Anglais utilisant la livre sterling (£) les montants des rapports étaient toujours égal à 0, comme vous pouvez le voir sur la capture suivante.
( Aucun problème pour les autres sites, car la monnaie par défaut est l’Euro (€) )

Erreur Export Magento Montant 0

Après pas mal de recherches j’ai trouvé que le problème était lié au fait que les taux de devises n’étaient pas définis dans « Système / Gestion des taux des devises », comme vous pouvez le voir sur la capture ci-dessous :

Gestion des taux de devises Magento

Pour que les données des prochaines commandes soient correctes, il faut renseigner un taux entre ces 2 devises.
Dans mon cas je vais partir du postulat 1€ = 1£ et renseigner les champs en conséquence.

A présent il va falloir régler le cas de toutes les commandes déjà passées.
Pour réaliser ses rapports, magento utilise le champ « base_to_global_rate » dans la table « sales_flat_order ».
Pour toutes nos anciennes commandes celui-ci a la valeur « 0.0000 » comme aucun taux n’était défini.

Ce champ n’est malheureusement pas éditable directement depuis l’administration.
Nous allons donc mettre à jour la table avec les bonnes valeurs via la requête SQL suivante :

(Remplacer les valeurs en italique par les valeurs de votre table)

UPDATE  prefix_sales_flat_order SET base_to_global_rate = ‘your RateValue‘  WHERE store_id= store_id

Dans mon cas la requête est donc la suivante :

UPDATE mag_sales_flat_order SET base_to_global_rate = '1.0000' WHERE store_id=2

 

Une fois la requête effectuée, il faut maintenant rafraichir les statistiques de magento :

Cocher l’ensemble des rapports et sélectionner l’action « Rafraîchir les statistiques depuis le début »

Rafraichier Statistiques Magento

 

Vous pouvez à présent relancer vos rapports et les données seront bien affichées !

Rapports Magento OK