https://bugs.kde.org/show_bug.cgi?id=360129
allan <agande...@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Summary|CSV Importer doesn't |CSV Importer doesn't |recognize sell operation |recognize sell operation in | |Polish --- Comment #13 from allan <agande...@gmail.com> --- (In reply to NSLW from comment #11) > (In reply to allan from comment #10) > > (In reply to NSLW from comment #8) > > > Created attachment 97709 [details] > > > csvimporterrc snippet > > > > > > I looked in csvimporterrc and found that > > > 1) BuyParam=kup > > > > > > "kup" is an verb, while "kupno" is noun. Maybe KMyMoney detects "kupno" by > > > regular expression. > > > > It's just "type.contains(*it, Qt::CaseInsensitive", so fairly loose to > > improve matching chance. Do you see any problem with that? > > It works with my Buy operations, but I would like it to work also with my > Sell operations out of the box. I'm afraid that may be a tall order. It will only work out of the box if the file being imported actually uses the exact same translation as that of the translator of the KMyMoney file. Unfortunately, what tends to be found is that different financial institutions use different terms to describe their transaction type, in fact sometimes changing within the same file. This is the reason I allowed for alternative terms to be added to the parameter list in the resource file. If the file being imported contains an unrecognised type, the user will be informed and given the chance to substitute with the standard KMyMoney transaction type. If this should happen more than the odd time, the user may add that unrecognised type to the appropriate list in the resource file. What I'm not sure about just now is whether, once the user has chosen to make a substitution, that new term is added to the resource file automatically. It's a few ears since I wrote that code. > I think that "type.contains(*it, Qt::CaseInsensitive)" is harmless here. > > > > 2) SellParam= > > > > > > after setting this parameter to "Sprzedaż" my sell operations are > > > recognized > > > correctly, but why isn't that preset just like BuyParam? Maybe SellParam > > > isn't preset because of last letter in "Sprzedaż", which is diacritic > > > letter. I know no Polish financial terms. If the Buy list contains a correct Polish term, then that I presume was added by the translator. A possible explanation is that at line 161 (in my version) of investprocessing.cpp the following appears - "m_buyList += i18nc("verb", "buy"); // some basic entries in case rc file missing". It may be that that was when the translation for Buy was added. However, the next line is similar for the Sell operation, and that was not translated apparently. I would suggest that you include both noun and verb versions for Sell in your resource file. > > > > I would have to throw that one back to you, as I didn't edit that file. > > Might you not have been the translator then? > > "Sprzedaż" is meant too look like this so no need to edit it. What I meant > by above is: Could there be an sort of encoding problem in KMyMoney with > that Polish letter, which in the end prevents positive recognition? > > > > As another suggestion, i think it is good to expand context from "verb" > > > to "Action/Type as > > > recognized by CSV Importer" > > > > Perhaps that would make sense as you are a user as well as a translator? > > I'm not sure that a non-investment-wise translator might understand? > > As it is now was also misleading to me, to today although I'm an fresh > KMyMoney user :) and translator, so maybe another suggestion will sound > better to an layman: > "Type of operation as in financial statement" > That does sound more understandable, although it would have to be added to every transaction type. > > So, apart from the fee query, are you now in business? > > After manually editing csvimporterrc file, fee is imported just right for > all operations. What do you mean by me being in business? Apologies for that. I'm extremely impressed by the general level of knowledge of English shown by the users, and developers, and I forget myself sometimes and lapse into the vernacular. "being in business" is used to indicate that a problem has been solved and normal service may be resumed. I hope it didn't cause offence. So far as your suggested patch is concerned, I'm not sure of its purpose. The Subject is "[PATCH] Read operation's type explicitly as QStringList", and in it you add a number of QStringList definitions, which are already included in investprocessing.h, c. line 164. Oh, and just as a post script, I've added "in Polish" to the bug heading, as the import operation is otherwise as expected. Allan -- You are receiving this mail because: You are the assignee for the bug.