Bug 282983 - multi-currency transactions not anchored to the exchange rate of the day of the transaction
Summary: multi-currency transactions not anchored to the exchange rate of the day of t...
Status: RESOLVED FIXED
Alias: None
Product: skrooge
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Unlisted Binaries Linux
: NOR normal
Target Milestone: ---
Assignee: Stephane MANKOWSKI
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-09-28 19:09 UTC by Fabio Puddu
Modified: 2011-10-01 10:11 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
example (278.02 KB, application/x-skgc)
2011-09-28 21:12 UTC, Fabio Puddu
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Fabio Puddu 2011-09-28 19:09:42 UTC
Version:           unspecified (using KDE 4.7.1) 
OS:                Linux

I have used the software a little and I think the multi currency support is still not very informative as the multi-currency transactions are not anchored with the exchange rate of the day of the transaction




Reproducible: Always

Steps to Reproduce:
One example

I have an account with 10€ and the exchange rate with the british pound is 1:1 

One day the exchange is 1£:2€. I buy a chocolate with costing 1£(2€) and remain with 8 €

The day after the rate is back to 1:1, I check my expenses and I see that I spent 1€ in the category chocolates but there is 1 euro missing because I have 8 euros and while I expected them to be 9.



Expected Results:  
to prevent this problem every transaction in two currencies should have the value in both the currencies and in the category view I will see the figures in my primary currency.
Comment 1 Stephane MANKOWSKI 2011-09-28 19:22:29 UTC
Hi,

I don't really understand because I don't know what is you primary unit, if you enter the operations in € or £.

So, to avoid misunderstanding, could you create a skrooge document with your example and attach it here.

Regards,
Stephane
Comment 2 Fabio Puddu 2011-09-28 21:12:23 UTC
Created attachment 64053 [details]
example
Comment 3 Fabio Puddu 2011-09-28 21:12:36 UTC
Hi, 
I probably did not express myself clearly.
In this way it should be clearer
In the attached file the account cash is in £. I pay out from that account on 27/9 1€ and on 28/9 another 1€. I did set the €/£ value to be 1:1 on 27/9 and 2:1 on 28/9.
In the operation view you see on both entries -0.50£, while it should be -1£ on 27/9 and -0.50£ on 28/9.
Comment 4 Stephane MANKOWSKI 2011-09-29 20:45:24 UTC
You created operations in € in an account in £.
This is not logical.

I will add a warning message.
Comment 5 Stephane MANKOWSKI 2011-09-29 20:50:17 UTC
Git commit b8169bdd0a5962bd72ad57fad599cee5dc68fdbb by Stephane Mankowski.
Committed on 29/09/2011 at 22:49.
Pushed by smankowski into branch 'master'.

BUG: 282983: Multi-currency transactions not anchored to the exchange rate of the day of the transaction

M  +1    -0    CHANGELOG
M  +16   -1    plugins/skrooge/skrooge_operation/skgoperationpluginwidget.cpp

http://commits.kde.org/skrooge/b8169bdd0a5962bd72ad57fad599cee5dc68fdbb
Comment 6 Fabio Puddu 2011-09-29 22:05:46 UTC
I agree, that should not be possible, but my point is different:
I'll try to explain better. think about this example [€ primary currency, $ secondary currency, two accounts one in $ and one in €]:
last month you went on holiday in the US and you spent 100$ (=100€ at the exchange rate 1:1).
Now you want to review your holiday expenses but the exchange rate has changed to 2:1
The program now tells you that in the category Holidays you have expenses for 200€ because the exchange rate has changed, but you actually spent only 100€.

To put it simple you cannot use today's exchange rate to calculate the conversions between currencies for transactions that happened in the past with a different exchange rate
Comment 7 Stephane MANKOWSKI 2011-10-01 10:11:59 UTC
(In reply to comment #6)
> I agree, that should not be possible, but my point is different:
> I'll try to explain better. think about this example [€ primary currency, $
> secondary currency, two accounts one in $ and one in €]:
> last month you went on holiday in the US and you spent 100$ (=100€ at the
> exchange rate 1:1).
> Now you want to review your holiday expenses but the exchange rate has changed
> to 2:1
> The program now tells you that in the category Holidays you have expenses for
> 200€ because the exchange rate has changed, but you actually spent only 100€.
> 
> To put it simple you cannot use today's exchange rate to calculate the
> conversions between currencies for transactions that happened in the past with
> a different exchange rate

You are right but only for expenditure.
If you have the 2 following accounts (rate: 1$=1€):
account1 in € with 100€   (€ is your primary account)
account2 in $ with 100$
TOTAL=200€

During your vacation (rate: 1$=1€), you buy something for 10$ (=10€) (in account2).
So, now your amounts for accounts are:
account1: 100€ (100€)
account2: 90$ (90€)
TOTAL=190€

The rate changes 1$=2€, so the new state is:
account1: 100€ (100€)
account2: 90$ (180€)
TOTAL=280€

So, if we are saying that 190€-10€=280€, this is not easy to understand.
This is why we decide to put all operations in current rate (you can decide in "operation" to see value as entered).

An other example:
If you buy 100 GOOGLE for 100€.
If today, 1 GOOGLE action = 10€
I think you would like to see that you have 1000€ and not 100€.
For us, this is the same for expenditure.

This is why, we don't want to change this.

You must know that you can apply a correction rate in report if you want.