Errors when closing KMyMoney

Thomas Spuhler thomas.spuhler at btspuhler.com
Fri Feb 26 17:22:07 UTC 2016


On Friday, February 26, 2016 11:54:29 AM aga wrote:
> On 25/02/16 23:13, Thomas Spuhler wrote:
> > On Wednesday, February 24, 2016 07:23:15 PM Thomas Baumgart wrote:
> >> Hi Thomas,
> >> 
> >> On Tuesday 23 February 2016 14:58:24 Thomas Spuhler wrote:
> >>> I got again an error (crash) when exiting KMyMoney
> >>> 
> >>> Unknown account id 'A000101' in file
> >>> /home/iurt/rpmbuild/BUILD/kmymoney-4.7.2/kmymoney/mymoney/storage/mymone
> >>> ys
> >>> eq accessmgr.cpp line 146
> >> 
> >> Hmm, looks like the application is trying to access an account that is
> >> not
> >> present (anymore).
> >> 
> >> What did you do before?
> > 
> > Entered data
> > 
> >> Can you try to take a look at the file (it's
> >> compressed XML) and see where the pattern A000101 is referenced?
> 
> I'm pretty certain Thomas was referring to your data file, rather than
> the source code, as he wanted you to search for an account id 'A000101'
> which, it is hoped, will be found in your data file (xxx.kmy).

Allan, I don't think I have such a file, but found the information in the 
database file
This is the line in table  kmmAccounts

('A000100',NULL,'A000098',NULL,NULL,'2010-12-19',NULL,'12','Income','N','Short 
Term',NULL,'USD','0/1','0',0),('A000101',NULL,'AStd::Income',NULL,'2016-02-23
> 
> You'll need to save that file as xxx.XML, then open it in a text editor
> and search for A000101 (it may appear more than once), then copy the
> whole entry in your reply.
> 
> Allan
> 
> > This is the section of the cpp file:
> > /**
> > * This method is used to get a SQL reader for subsequent database access
> > 
> >   */
> > 
> > KSharedPtr <MyMoneyStorageSql> MyMoneySeqAccessMgr::connectToDatabase
> > (const KUrl& /*url*/)
> > {
> > 
> >    return KSharedPtr <MyMoneyStorageSql>();
> > 
> > }
> > 
> > bool MyMoneySeqAccessMgr::isStandardAccount(const QString& id) const
> > {
> > 
> >    return id == STD_ACC_LIABILITY
> >    
> >           || id == STD_ACC_ASSET
> >           || id == STD_ACC_EXPENSE
> >           || id == STD_ACC_INCOME
> >           || id == STD_ACC_EQUITY;
> > 
> > }
> > 
> > void MyMoneySeqAccessMgr::setAccountName(const QString& id, const QString&
> > name)
> > {
> > 
> >    if (!isStandardAccount(id))
> >    
> >      throw MYMONEYEXCEPTION("Only standard accounts can be modified using
> > 
> > setAccountName()");
> > 
> >    MyMoneyAccount acc = m_accountList[id];
> >    acc.setName(name);
> >    m_accountList.modify(acc.id(), acc);
> > 
> > }
> > 
> > const MyMoneyAccount MyMoneySeqAccessMgr::account(const QString& id) const
> > {
> > 
> >    // locate the account and if present, return it's data
> >    if (m_accountList.find(id) != m_accountList.end())
> >    
> >      return m_accountList[id];
> >    
> >    // throw an exception, if it does not exist
> >    QString msg = "Unknown account id '" + id + '\'';
> >    throw MYMONEYEXCEPTION(msg);
> > 
> > }
> > 
> >> This is very strange.



Best regards
Thomas Spuhler

All of my e-mails have a valid digital signature
ID 60114E63
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kmymoney/attachments/20160226/0f50ec3c/attachment.sig>


More information about the KMyMoney mailing list