0

フライト、ホテル、車などの予約に使用される旅行ウェブサイトを開発しています。これは製品ベースのソフトウェアです。クライアント (当社のソフトウェアを購入する人) が「主な代理店」になります。彼の総取引額は INR (インドルピー通貨) になります。また、フライト、ホテル、または車の予約はすべて「INR」でのみ行われます。

現在、彼は「サブエージェンシー」を作成する許可を得ています。サブエージェンシーの通貨は USD または INR などです。これは、「メイン エージェンシー」が世界中にサブエージェンシーを持つ可能性があることを意味します。これで、「サブエージェンシー」がログインするたびに、彼の取引レポートは彼の通貨で表示されるはずです。彼の通貨が「AUD」の場合、合計トランザクションは「AUD」のみである必要があります。サブエージェンシーを作成する際に、彼が USD、AUD、または AED などに属しているかどうかにかかわらず、彼の通貨を修正します。それは固定されています。

「サブエージェンシー」が (AUD で) チケットを生成すると、このトランザクションはメインのエージェンシートランザクションレポートにも表示されます。ここで、実際の問題が発生しています。「サブエージェンシー」のレポートは「AUD」で、メインエージェンシーのレポートは「INR」である必要があります。主な代理店は、通貨換算の利益/損失を負担する準備ができています。しかし、「サブエージェンシー」は損得してはいけません。

「サブエージェンシー」のデポジットを「メインエージェンシー」の通貨 (USD/AUD) で保存しています。彼がログインすると、運賃が USD/AUD で表示されます。予約後、その金額を彼の利用可能な残高から差し引いています。しかし、レポートに関しては、これらのトランザクションを 2 つの方法で表示する必要があります。主な代理店の場合は INR である必要があり、副代理店の場合は通貨 (USD/INR) である必要があります。

解決策はほとんどありませんが、それらは私の開発を複雑にします。より良い解決策を期待しています。

私の解決策の 1 つは、トランザクションを保存するときに、通貨換算レートも「INR」とともに保存することです。これを、その通貨換算レートで「INR」に変換します。それは良い解決策ですか?

: サブエージェンシーは「2.00 USD」の取引を行います。保存する際に、通貨換算レートも列としてテーブルに追加します。たとえば、「1 USD = 55 INR」です。表示中に 2*55 を計算し、主な代理店レポートで 110 INR として表示します。

これに対するより良い解決策を提案してください。

4

1 に答える 1

2

複数の通貨を使った計算はとても楽しいです。興味深い歴史的なメモが必要な場合は、お気に入りの検索エンジンで「ユーロ三角測量」を検索してください。

どこかで、使用する通貨換算レートを記録する必要があります。多くの異なる手法を選択できますが、それらはすべてわずかに異なる答えを生成します。

  • 取引時に利用可能な最良の為替レート。
  • その日の見積もり為替レート (トランザクションごとではなく、毎日の換算レートのテーブルに保存されます)。
  • ソースから収集された、または日次レートのソースから計算された月間平均為替レート。
  • 毎日新聞の情報から受付係が入力する為替レート。

代理店には売買レートがあることに注意してください。これらの差 (スプレッド) は取引のマージンを表します。

私の経験では (現在では 20 年ほど前のことです — ワールド ワイド ウェブよりも前のことです)、日次レポートでは日次レートが使用され、月次レポートで使用される平均月次レートを作成するために日次レートが変更されます。

ただし、必要に応じて、各取引で使用する為替レートをどこかに記録します。取引と一緒に、または使用するルールに従って相互参照できる別のテーブルに記録します。

于 2012-09-13T05:09:57.380 に答える