[Kmymoney] Re: DATES INSTEAD OF PRICES

Cristian Oneţ onet.cristian at gmail.com
Thu Nov 18 18:27:40 CET 2010


On Thu, Nov 18, 2010 at 6:19 PM, timothy <timboyle at afrihost.co.za> wrote:
> It was installed for me when I upgraded from Lucid to Maverick. It is
> the default version for Ubuntu Maverick.
>
> Regards
>
> On Thu, 2010-11-18 at 17:51 +0200, Cristian Oneţ wrote:
>> On Thu, Nov 18, 2010 at 5:06 PM, timothy <timboyle at afrihost.co.za> wrote:
>> > I am not sure how I go on from here. Is it possible to revert back to
>> > KMyMoney 1.0.5 using KDE 3.5.10 for the time being?
>> >
>> > Regards
>> >
>> > On Thu, 2010-11-18 at 16:28 +0200, Cristian Oneţ wrote:
>> >> On Thu, Nov 18, 2010 at 4:23 PM, Thomas Baumgart <thb at net-bembel.de> wrote:
>> >> > Hi,
>> >> >
>> >> > on Thursday 18 November 2010 15:13:04 timothy wrote:
>> >> >
>> >> >> Sorry I am not too good at command line stuff. Here are various
>> >> >> combinations which I have tried. I have checked that the script
>> >> >> financequote.pl is there.
>> >> >
>> >> > Forget the quotes all together. Here's what I get on my openSUSE box:
>> >> >
>> >> > thb:~> /usr/share/kde4/apps/kmymoney/misc/financequote.pl za SLM > test.out
>> >> > Use of uninitialized value in transliteration (tr///) at
>> >> >        /usr/lib/perl5/vendor_perl/5.10.0/Finance/Quote/ZA.pm line 148 (#1)
>> >> >    (W uninitialized) An undefined value was used as if it were already
>> >> >    defined.  It was interpreted as a "" or a 0, but maybe it was a mistake.
>> >> >    To suppress this warning assign a defined value to your variables.
>> >> >
>> >> >    To help you figure out what was undefined, perl will try to tell you the
>> >> >    name of the variable (if any) that was undefined. In some cases it cannot
>> >> >    do this, so it also tells you what operation you used the undefined value
>> >> >    in.  Note, however, that perl optimizes your program and the operation
>> >> >    displayed in the warning may not necessarily appear literally in your
>> >> >    program.  For example, "that $foo" is usually optimized into "that "
>> >> >    . $foo, and the warning will refer to the concatenation (.) operator,
>> >> >    even though there is no . in your program.
>> >> >
>> >> > thb:~> od -c test.out
>> >> > 0000000   "   S   L   M   "   ,   "   2   0   1   0   -   1   1   -   1
>> >> > 0000020   7   "   ,   "   2   6   .   6   9   "
>> >> > 0000032
>> >> >
>> >> > I used od to dump the data because the final newline is missing from F::Q.
>> >>
>> >> The output looks fine (on your box) so I don't know how does the date
>> >> gets picked up as the price.
>>
>> I've checked the code and everything is fine in that area. In the
>> above scenario (Finance::Quote returning "SLM","2010-11-17","26.69")
>> the code correctly matches all elements symbol, date and price. From
>> your log a message like "Date found: ...." is missing that means that
>> the date was not matched. Where did you install KMyMoney from?

I finally figured out what went wrong. It seems that the
Finance::Quote perl module has some uninitialized variable and we were
running financequote.pl with "use diagnostics;" which caused the long
diagnostics message to be printed on the output before the price
entry. Which of course messed it up. Already fixed in SVN see
https://bugs.kde.org/show_bug.cgi?id=257260

To get this fix you just need to edit this file (don't forget to have
root privileges):
/usr/share/kde4/apps/kmymoney/misc/financequote.pl

and remove this line:
use diagnostics; # while testing

Now everything should work fine. Thanks for your perseverance with
this problem :).

Regards,
Cristian


More information about the KMyMoney mailing list