Bug 207761 - Support tags/classes for transactions
Summary: Support tags/classes for transactions
Status: RESOLVED FIXED
Alias: None
Product: kmymoney
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: openSUSE Linux
: NOR wishlist
Target Milestone: ---
Assignee: KMyMoney Development Team
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-09-18 09:46 UTC by Thomas McGuire
Modified: 2012-11-17 06:18 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Thomas McGuire 2009-09-18 09:46:45 UTC
Version:           0.9.3 (using KDE 4.2.4)
OS:                Linux
Installed from:    SuSE RPMs

It would be nice if KMyMoney would support tags in addition to categories.

Categories are too limiting for me, since many transaction don't really fit into one single transaction.

Example: I have a category "food", where I track all food expenses, and a category "Akademy", where I track all expenses for the conference.

Now, when eating something at Akademy, in which category should I put it into? This is where tags would help, since you could stick an arbitrary number of tags to a transaction.

Have a look at how Digikam does this: Pictures are grouped by album first, and then the user can add additional tags.
Comment 1 Alessandro Russo 2012-01-29 18:23:11 UTC
Yes, tags would be extremely useful. Some examples: Wedding, trips, events and party, Christmas gifts, and so on.
I could add tags like: Venice2011, John-40th-Birthday, MyWedding, Christimas2011
Than I could track all of the transaction with a specific tag and see how much I spent on a special event and in which categories.
Comment 2 wimmer 2012-08-01 20:17:15 UTC
In particular, it's also what other financial softwares use, so one could just look how they do it. Both Quicken and MS Money have it, and there's even support for it in QIF. Money let's you assign several "classes" that you can name.
Comment 3 Alessandro Russo 2012-10-21 13:22:20 UTC
I'm writing a patch to add this functionality. You can find the working in progress diff here:
https://git.reviewboard.kde.org/r/106846/
Comment 4 Alessandro Russo 2012-10-21 13:26:39 UTC
(In reply to comment #3)
> I'm writing a patch to add this functionality. You can find the working in
> progress diff here:
> https://git.reviewboard.kde.org/r/106846/

Remember to make backup of your files as this patch modify the structure of save files.
Comment 5 Thomas Baumgart 2012-11-17 06:18:47 UTC
Git commit d07fbc9a83d98a0d2f13b5ccb84f08e63cabd5d6 by Thomas Baumgart.
Committed on 17/11/2012 at 07:12.
Pushed by tbaumgart into branch 'master'.

Added the long awaited 'tags' feature

Thanks to the implementation provided by Alessandro Russo, we now have
the long awaited tagging feature.

REVIEW: 106846
DIGEST:

M  +25   -23   kmymoney/dialogs/CMakeLists.txt
M  +67   -0    kmymoney/dialogs/kfindtransactiondlg.cpp
M  +12   -1    kmymoney/dialogs/kfindtransactiondlg.h
M  +89   -1    kmymoney/dialogs/kfindtransactiondlgdecl.ui
M  +23   -1    kmymoney/dialogs/kreportconfigurationfilterdlg.cpp
A  +81   -0    kmymoney/dialogs/ktagreassigndlg.cpp     [License: GPL (v2+)]
A  +74   -0    kmymoney/dialogs/ktagreassigndlg.h     [License: GPL (v2+)]
A  +191  -0    kmymoney/dialogs/ktagreassigndlgdecl.ui
M  +42   -0    kmymoney/dialogs/transactioneditor.cpp
M  +8    -0    kmymoney/dialogs/transactioneditor.h
M  +273  -0    kmymoney/kmymoney.cpp
M  +40   -0    kmymoney/kmymoney.h
M  +2    -2    kmymoney/kmymoney.kcfg
M  +6    -0    kmymoney/kmymoneyui.rc
M  +16   -7    kmymoney/mymoney/CMakeLists.txt
M  +77   -0    kmymoney/mymoney/mymoneyfile.cpp
M  +66   -1    kmymoney/mymoney/mymoneyfile.h
M  +8    -0    kmymoney/mymoney/mymoneyobjectcontainer.cpp
M  +5    -0    kmymoney/mymoney/mymoneyobjectcontainer.h
M  +29   -3    kmymoney/mymoney/mymoneyreport.cpp
M  +2    -2    kmymoney/mymoney/mymoneyreport.h
M  +21   -0    kmymoney/mymoney/mymoneysplit.cpp
M  +9    -0    kmymoney/mymoney/mymoneysplit.h
M  +29   -2    kmymoney/mymoney/mymoneysplittest.cpp
A  +110  -0    kmymoney/mymoney/mymoneytag.cpp     [License: GPL (v2+)]
A  +131  -0    kmymoney/mymoney/mymoneytag.h     [License: GPL (v2+)]
A  +40   -0    kmymoney/mymoney/mymoneytagtest.cpp     [License: GPL (v2+)]
A  +26   -0    kmymoney/mymoney/mymoneytagtest.h     [License: GPL (v2+)]
M  +63   -1    kmymoney/mymoney/mymoneytransactionfilter.cpp
M  +31   -0    kmymoney/mymoney/mymoneytransactionfilter.h
M  +11   -1    kmymoney/mymoney/mymoneytransactiontest.cpp
M  +2    -2    kmymoney/mymoney/storage/CMakeLists.txt
M  +12   -0    kmymoney/mymoney/storage/imymoneyserialize.h
M  +58   -0    kmymoney/mymoney/storage/imymoneystorage.h
M  +139  -1    kmymoney/mymoney/storage/mymoneydatabasemgr.cpp
M  +66   -0    kmymoney/mymoney/storage/mymoneydatabasemgr.h
M  +156  -0    kmymoney/mymoney/storage/mymoneydatabasemgrtest.cpp
M  +4    -0    kmymoney/mymoney/storage/mymoneydatabasemgrtest.h
M  +29   -1    kmymoney/mymoney/storage/mymoneydbdef.cpp
M  +2    -0    kmymoney/mymoney/storage/mymoneydbdef.h
M  +130  -0    kmymoney/mymoney/storage/mymoneyseqaccessmgr.cpp
M  +81   -0    kmymoney/mymoney/storage/mymoneyseqaccessmgr.h
M  +144  -0    kmymoney/mymoney/storage/mymoneyseqaccessmgrtest.cpp
M  +4    -0    kmymoney/mymoney/storage/mymoneyseqaccessmgrtest.h
M  +9    -0    kmymoney/mymoney/storage/mymoneystorageanon.cpp
M  +2    -0    kmymoney/mymoney/storage/mymoneystorageanon.h
M  +1    -0    kmymoney/mymoney/storage/mymoneystoragebin.h
M  +23   -0    kmymoney/mymoney/storage/mymoneystoragedump.cpp
M  +295  -4    kmymoney/mymoney/storage/mymoneystoragesql.cpp
M  +18   -0    kmymoney/mymoney/storage/mymoneystoragesql.h
M  +29   -0    kmymoney/mymoney/storage/mymoneystoragexml.cpp
M  +3    -0    kmymoney/mymoney/storage/mymoneystoragexml.h
M  +7    -2    kmymoney/reports/listtable.cpp
M  +58   -2    kmymoney/reports/querytable.cpp
M  +2    -0    kmymoney/views/CMakeLists.txt
M  +1    -0    kmymoney/views/kgloballedgerview.cpp
M  +29   -6    kmymoney/views/kmymoneyview.cpp
M  +13   -0    kmymoney/views/kmymoneyview.h
M  +17   -6    kmymoney/views/kpayeesview.cpp
M  +13   -5    kmymoney/views/kreportsview.cpp
A  +681  -0    kmymoney/views/ktagsview.cpp     [License: GPL (v2+)]
A  +203  -0    kmymoney/views/ktagsview.h     [License: GPL (v2+)]
A  +358  -0    kmymoney/views/ktagsviewdecl.ui
M  +4    -0    kmymoney/widgets/kmymoney.widgets
M  +144  -1    kmymoney/widgets/kmymoneymvccombo.cpp
M  +81   -0    kmymoney/widgets/kmymoneymvccombo.h
M  +27   -3    kmymoney/widgets/kmymoneyreportconfigtab3decl.ui
M  +90   -17   kmymoney/widgets/transaction.cpp
M  +6    -0    kmymoney/widgets/transaction.h

http://commits.kde.org/kmymoney/d07fbc9a83d98a0d2f13b5ccb84f08e63cabd5d6