Some thoughts and questions about iso-4217-currencies.*

Frank H. Ellenberger f.ellenberger at online.de
Mon Oct 19 15:54:17 EDT 2009


Hi,

as I made the last patches for this - btw: could somebody review 
https://bugzilla.gnome.org/show_bug.cgi?id=582985 - some thoughts and 
questeions appeard, starting with the more simple things:

1. Are there any objections to resort the list ordered by the ISO code instead 
of the full name. This would allow crossreading with 
http://en.wikipedia.org/wiki/ISO_4217 and we had not allways to wait, until 
some user complains a missing currency?

2. I would like to complete the header as in iso-currencies-to-c 
   ((string? fullname))          // used
   ((string? unitname))  // ignored, but useful for cheque printing/reporting 
   ((string? partname))          // -"-
   ((string? namespace))         // used
   ((string? mnemonic))          // used
   ((string? exchange-code))     // used
   ((number? parts-per-unit))     // ignored
   ((number? smallest-fraction))) // used
The comment is the state as watched by me.

3.a) What is the meaning of column 7 or the difference to 8?  
iso-currencies-to-c ignores it in the current state. (probably related to a 
SCU bug I can not find in the momemt.)

3.b) If nobody is missing it, should we remove it or use it, where the 
smallest coin differs from the unit of calculation like IDR, where 
calculation is done in Sen = 1/100 IDR, but the smallest coin is somewhat 
about 100 IDR? If yes, format suggestions?


4. What are the official politics to handle expired currencies? There seems to 
be different approaches in the lists.

a) Hm. this seems also missing in the docs ...

b) Until now I added a comment to the replaced currency, but I think at least, 
I could add a flag expired or still_in_use, what fits better from the logic?
Later one could add an Option "Show only currencies in use" to the Commodity 
selection dialog, to get the list somewhat smaller for the user.

c) In theory there are 3 cases:
.1 revaluations: 1000 RUR -> 1 RUB
.2 joins: e.g. currency joins EUR at frozen rate
.3 split offs like in former Soviet Union and Yugoslavia

I do not really understand the current mechanics:
_ In src/engine/gnc-commodity.c is gnc_new_iso_codes[]. Am I right, this is a 
simple string replacement without any revaluation? And the outdated currency 
should be removed from the iso-... file.
In this table are 2 different cases: NIS->ILS looks OK for me, because we used 
a wrong abbreviation. All others look somewhat dirty for me, because the 
revaluation is forgotten.

- There was a Euro converter in 1.x, which until now was not ported. But, what 
is the meaning of src/app-utils/gnc-euro.c? Is it in use? If yes, where?
If I understood it right, currencies used there, must still be defined in 
iso-4217-currencies?

My suggestion at the moment: 
It should be easy to expand it by a column New_Currency and fetch also the 
other cases of .1 and .2. 
Then most entries from gnc_new_iso_codes should be moved here.

About .3 here is user interaction required, but I could prepare a list e.g. 
currency_splits with entries like:
YUM: BAM, DEM, MKD, HRK, RSD, SIT

or should they come in the expanded gnc-euro list after some rework?

Should there be a field currency_replaced_at_date?

Regards
Frank


More information about the gnucash-devel mailing list