Je ne pouvais pas trouver toute discussion définitive, donc je poste mes résultats, j'espère que cela aide quelqu'un.
La table des devises devrait inclure le code de culture à utiliser de la Mondialisation des Classes.
Méthode
- Magasin en monnaie locale à la clientèle et de stocker plusieurs taux de conversion de la devise de la transaction qui s'appliquait au moment de la transaction.
- Exige de multiples taux de change pour chaque devise
- Paramètres du Site tableau de stocker l'entrée de devises
- D'entrée et de Sortie de valeurs au niveau du client aurait pas de frais généraux que l'on peut supposer que la valeur est dans la bonne devise
- Pour appliquer les taux de change, il serait nécessaire de connaître la devise de l'entré des valeurs (qui peut être différent pour traverser les rapports de clients), puis multipliez ce chiffre par son entité associée à des taux de change qui était en vigueur au cours de l'transactions période de temps.
Méthode Fonctionnelle
- Stocker dans une base de devise, tenir taux de conversion pour cette monnaie qui s'appliquent au fil du temps
- Doivent être pris en considération au point entre l'extrémité avant et à la base de données est le meilleur endroit pour convertir des valeurs
- D'entrée de performance est ressentie comme une conversion de la devise de base devraient avoir lieu. Le taux de change pourrait être mis en cache sur le client (veuillez noter que chaque entité peut utiliser un taux de change différent)
- Ce besoin d'un ensemble de taux de change (de la base à toutes les autres devises)
- Pour appliquer les taux de change, toutes les transactions doivent être convertis entre la base et le nécessaire monnaies
Composite
- Au moment de la transaction, de stocker la valeur et de la valeur fonctionnelle, ainsi, le taux de change de l'information devrait être stocké. (Ce ne pourrait pas être une solution efficace vous limite à deux monnaies pour toute valeur donnée)
Comparaison
De façon réaliste, vous avez à choisir entre la fonction et les méthodes transactionnelles. Les deux ont leurs avantages et inconvénients.
Méthode fonctionnelle n'a pas besoin de stocker de la monnaie locale à des fins de transaction, les besoins de convertir les db les valeurs de la devise de base, seulement besoin d'un ensemble de taux de change, est un peu plus difficile à mettre en œuvre et maintenir mais nécessite moins d'espace de stockage.
Les Transactions méthode est beaucoup plus souple, même si elle nécessite plus de taux de change de l'information et de chaque transaction doit être associée à une entrée de devises (bien que cela puisse être appliquée à un groupe de clients plutôt que chaque transaction). Il serait généralement pas d'incidence sur le code déjà en production comme les monnaies locales seraient encore utilisés au niveau local, rendant cette solution facile à mettre en œuvre et à maintenir. Bien évidemment, tous les rapports ou les valeurs qui ont besoin d'être convertis en une autre monnaie en serait affectée.
Dans les deux cas, chaque transaction aurait besoin de taux de change pour le moment de la transaction pour chaque devise elle a besoin de la conversion à ce qui est nécessaire au point de la transaction pour la méthode fonctionnelle, cependant, la méthode permet une plus grande flexibilité que les derniers taux de change des données peut être saisi à tout moment (permettant à toute monnaie utilisée),
c'est à dire que vous perdez la possibilité d'utiliser d'autres taux de change dans la méthode fonctionnelle.
Conclusion
Une méthode de gestion des devises serait de fournir une approche flexible, en évitant tout impact négatif sur les performances du client et client zéro modification de code. Un impact négatif sur les performances serait susceptible de se produire dans les rapports où tous auront besoin de retravailler si des monnaies différentes sont nécessaires.
Chaque site client aura besoin de stocker une monnaie de référence que les membres de leur entrée monnaie.
Il devrait être possible de s'en tirer avec le stockage des taux de change à un niveau élevé (par exemple, un groupe de sites de clients, etc), cela permettra de minimiser la quantité de données stockées. Des problèmes peuvent se produire si le taux de change de l'information est nécessaire à un niveau inférieur.